Перейти к публикации

Помогите с программкой, sinumerik840d горизонтально-фрезерный


Aveovar

Рекомендованные сообщения

 

Помогите пожалуйста, проблема такая, вот программка,
$P_UIFR[1]=CFINE(X,10,Y,100)
В оффсет, G54, значения меняются на заданные, но так же меняются Z, B, W... на 0
Как мне прописать, чтоб менялись только X и Y, а остальные остались без изменения?

Ссылка на сообщение
Поделиться на других сайтах


UnPinned posts

Здравствуйте. Попробуйте так:

$P_UIFR[1, X, FI]=10

$P_UIFR[1, Y, FI]=100

6 часов назад, Aveovar сказал:

Как мне прописать, чтоб менялись только X и Y, а остальные остались без изменения?

 

Ссылка на сообщение
Поделиться на других сайтах
16 часов назад, A_1 сказал:

Здравствуйте. Попробуйте так:

$P_UIFR[1, X, FI]=10

$P_UIFR[1, Y, FI]=100

 

Спасибо, сработало, только почему то при сложении фреймов он последний не меняет

$P_UIFR[1,X,0]=$P_UIFR[1,X,0]+$P_UIFR[1,X,5]

$P_UIFR[1,X,5]=0

Складывает точное и грубое смещение правильно, записывает правильно, а второй кадр как будто не читает

Без сложения все работает

Ссылка на сообщение
Поделиться на других сайтах
  • 2 месяца спустя...

Какой странный синтаксис у системной переменной $P_UIFR[1, X, 0]... Что делает или за что отвечает 3-й параметр в вашей интерпретации? 

Хотелось бы увидеть весь код целиком... 

Ссылка на сообщение
Поделиться на других сайтах
06.04.2022 в 16:25, ShadoWofXaoS сказал:

Какой странный синтаксис у системной переменной $P_UIFR[1, X, 0]... Что делает или за что отвечает 3-й параметр в вашей интерпретации? 

 

0-грубое смещение = tr

5-точное смещение

1-поворот =rt

3-масштаб = sc

4-зеркало =mi

2 не помню что означает,  

Цифры заменяют символьные обозначения

Также g54=1 в первом параметре

G55=2, g56=3 и так далее

Изменено пользователем Aveovar
Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

Насчёт цифрового обозначения номера ENS я в курсе, но никогда и нигде не встречал цифрового замещения типа фрейма... Надо опробовать... Кстати а откуда данная инфа? Получена опытным путём или содержалась в каком-то руководстве? 

А что насчёт проблемы? Решена? 

Изменено пользователем ShadoWofXaoS
"полировка" текста и мысли
Ссылка на сообщение
Поделиться на других сайтах
21 час назад, ShadoWofXaoS сказал:

Кстати а откуда данная инфа? Получена опытным путём или содержалась в каком-то руководстве? 

А что насчёт проблемы? Решена? 

где то на форуме вычитал, в инструкции нигде не нашел, но это  работает, и такой вид записи мне больше нравится, да проблема решена, когда поставил stopre перед каждым определением фрейма

STOPRE

$P_UIFR[1,X,0]=$P_UIFR[1,X,0]+$P_UIFR[1,X,5]

STOPRE

$P_UIFR[1,X,5]=0

Ссылка на сообщение
Поделиться на других сайтах
19.01.2022 в 00:50, Aveovar сказал:

 

Помогите пожалуйста, проблема такая, вот программка,
$P_UIFR[1]=CFINE(X,10,Y,100)
В оффсет, G54, значения меняются на заданные, но так же меняются Z, B, W... на 0
Как мне прописать, чтоб менялись только X и Y, а остальные остались без изменения?

Вот решение (сам недавно подобное программировал в измерительном цикле) : $P_UIFR[1]=$P_UIFR[1]:CTRANS(X,1,Y,1). Данная команда прибавит к значению "грубо" осей X и Y системы ENS с идентификатором "G54" число "1". Иначе говоря, данный тип команды выполняет аддитивное наложение одного фрейма на другой. Если же использовать команду $P_UIFR[1]=CTRANS(X,1,Y,1), то произойдёт замещение одного фрейма другим. 

13 часов назад, Aveovar сказал:

P_UIFR[1,X,0]=$P_UIFR[1,X,0]+$P_UIFR[1,X,5]

STOPRE

$P_UIFR[1,X,5]=0

Вполне достаточно и такой компоновки. Если в программе одна и та же переменная принимает разные значения, то между кодами редактирования её значения рекомендуется использование команды STOPRE, либо, что более предпочтительно, сохраняйте предыдущее/"старое" значение этой переменной в другой переменной. 

Изменено пользователем ShadoWofXaoS
"полировка" текста и мысли
Ссылка на сообщение
Поделиться на других сайтах
10 часов назад, ShadoWofXaoS сказал:

P_UIFR[1,X,0]=$P_UIFR[1,X,0]+$P_UIFR[1,X,5]

STOPRE

$P_UIFR[1,X,5]=0

Вполне достаточно и такой компоновки.

Достаточно, если эта часть стоит в начале программы, но если присвоение значения фрейму стоит в середине программы, тогда нужно перед каждым [$P_UIFR] прописывать stopre, иначе он запишет смещение раньше времени

Изменено пользователем Aveovar
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...