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

FAQ/Unigraphics/POST


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

 

Я бы вместо || поставил &&. И ещё >= и <= проверил бы.

 

Я пробовал разные варианты. Остановился на варианте  if {$mom_out_angle_pos(1) <=-35} {. Пока работает только на фрезерных операциях.

 

Вот и я про это. У вас посте №55 было прописано: если угол больше или равен -35 ИЛИ(||) меньше или равно -90. Я просто не озвучил, а попытался на ошибку указать. Я бы написал:

global mom_out_angle_pos
 
    if {$mom_out_angle_pos(1) <=-35 && $mom_out_angle_pos(1) >=-90 } {
   MOM_output_literal "M52"
   }
А если хотите через MOM_do_template, то создайте либо свою М или возьмите какую-либо ненужную из вашего поста. Сделайте её модальной и выводите в своей PB_CMD в начале всех перемещений и циклов. Хотя, я бы впихнул в эту команду флаг и дополнительную проверку, и выводил бы всё-таки через MOM_output_literal. Кстати, а что это за странная М52 и именно в промежутке -35 - -90? Что-то как-то не могу геометрию станка в голове прикинуть.

 

Огромное спасибо за разъяснения. На самом деле всё просто, просто я путано спрашиваю. В деле написания постов я новичок, не судите строго. 

Кинематика станка : Голова - стол. DMU80 MonoBlock. Лимиты по "В" от 0 до -90. Команда М52 нужна для того, чтобы станок повернул голову "В" на угол меньше -35 градусов. Ограничение до -90 я ставил от незнания, оно здесь не обязательно. 

Ещё раз спасибо за совет. Буду пробовать.

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


 

Вы хотите чтобы эта команда была модельной? Если да, что лучше сделать вывод через MOM_do_template с соответствующим блоком и вордами.

 

Я хочу, чтобы эта команда выводилась  при условии если ось "B"  больше меньше -35 градусов в каждой операции. 

Во фрезерных операциях выводит нормально. Я вставил эту команду в начало операции, первое перемещение, начальное перемещение.

Как побороть операции сверления? MOM_do_template вместо MOM_output_literal  поможет?

 

 

0_1195b0_cf7757a8_L.png

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

беда с постом.нужна такая строчка G90 G10 L12 P23  R25.  перед сменой интрумента.

 P=номер инта  R=радиус инста

всё делает пост хорошо кроме радиуса..выводит непонятные значения.файли в прицепе

делается в pb_cmd_tool_name

 

со значениями я разобрался но вот ни как при первом инструменте он не выводит радис правильно..пост берёт радиус с последнего инстрамента..

 

со всеми последующими инструментами всё отлично

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

Возможно ли изменить циклы постпроцессора так что бы при изменении высоты отвода постпроцессор не начинал новый цыкл а просто менял высоту отвода? (смотреть скрин)

post-43426-0-66890300-1403104658_thumb.png

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

пАмАгитИ, спасиТИ - срочно нужен пост!!!!! Вы же тут все добры - все все знаИТИ, у фсех фсе есть!!!! Пост нужен простенький - на станочек токано-фрезерненький, и всего лишь двухканальненький - ну ... скажем на СТХ2000 со стоечкой 840Д, ну или Mazak Integrex 200 ST со стоечкой Mazatrol Matrix. Срочно жду здесь пост!!! Если никто не ответит - убьюсь об стенку!!!! (вот приблизительно для чего была создана ветка по мнению многих...)

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

Возможно ли изменить циклы постпроцессора так что бы при изменении высоты отвода постпроцессор не начинал новый цыкл а просто менял высоту отвода? (смотреть скрин)

Возможно. У меня на прошлой работе постпроцессор, который мой начальник написал, выводил именно так. Как именно у него там всё было прописано, я не смотрел, но думаю надо посмотреть в выводе цикла режимы force output, optional. Я бы для начала убрал с них force output, если он там есть.

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

Здравствуйте.


Подскажите пожалуйста, какая МОМ переменная отвечает в токарном инструменте за регистр настройки (Резец токарный – трассировка - регистр настройки).


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

 

Возможно ли изменить циклы постпроцессора так что бы при изменении высоты отвода постпроцессор не начинал новый цыкл а просто менял высоту отвода? (смотреть скрин)

Возможно. У меня на прошлой работе постпроцессор, который мой начальник написал, выводил именно так. Как именно у него там всё было прописано, я не смотрел, но думаю надо посмотреть в выводе цикла режимы force output, optional. Я бы для начала убрал с них force output, если он там есть.

 

 

Все имеющиеся у меня ПП пересмотрел и не нашел нигде упоминания о force output, optional

Эта переменная должна находится во встроенных циклах в общих параметрах? Или это не имеет значения?

 

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

 

Все имеющиеся у меня ПП пересмотрел и не нашел нигде упоминания о force output, optional

Эта переменная должна находится во встроенных циклах в общих параметрах? Или это не имеет значения?

 

Force output это Обязательный вывод. Правой кнопкой мыши вызывается. Попробуйте, может поможет.

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

 

 

Все имеющиеся у меня ПП пересмотрел и не нашел нигде упоминания о force output, optional

Эта переменная должна находится во встроенных циклах в общих параметрах? Или это не имеет значения?

 

Force output это Обязательный вывод. Правой кнопкой мыши вызывается. Попробуйте, может поможет.

 

А разве дополнительный вывод поможет убрать из цыкла все ненужное?

Дело в том что при изменении высоты отвода в NX, любой из виденных мной ПП прерывает цыкл выводя G80, делает нужный мне отвод через G0 и начинает новый цыкл через G81. То есть в место одного G81 получается еще один только из за того что изменилась высота отскока.

Этот измененный отскок можно было  бы передать просто добавив как в примере значение K. Но если я выведу это значение там где мне нужно это не помешает ПП начать новый цыкл. Проблема не в выводе а в том что начинается новый цыкл из за измененного отвода.

post-43426-0-66890300-1403104658_thumb.png

 

 

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

А разве дополнительный вывод поможет убрать из цыкла все ненужное?

 

 

Дело в том что при изменении высоты отвода в NX, любой из виденных мной ПП прерывает цыкл выводя G80, делает нужный мне отвод через G0 и начинает новый цыкл через G81. То есть в место одного G81 получается еще один только из за того что изменилась высота отскока.

Этот измененный отскок можно было  бы передать просто добавив как в примере значение K. Но если я выведу это значение там где мне нужно это не помешает ПП начать новый цыкл. Проблема не в выводе а в том что начинается новый цыкл из за измененного отвода.

 

Грубо говоря, постпроцессор переделывает файл *.cls. Вы в операции сверления запрограммировали дополнительное перемещение, вот NX вам его и выводит (посмотрите у себя cls этой операции). Чтобы пост это перемещение совсем не выводил, нужно писать свою процедуру обработки этого события. Вам нужно чтобы все основные данные цикла, такие как подача, глубина и шаг, прописывались только в одной строке и нигде больше. Если вы снимете флаг "Обязательный вывод" с параметров цикла, то, по идее, должны получить примерно следующее:

N10 G81 X0 Y0 R2 F40 K50

N20 X10 Y10

N30 G80

N40 G0 Z100

N50 X20 Y20

N60 G81 K100

N70 G80

В этом виде вы сможете спокойно менять основные параметры цикла в верхнем кадре и это будет распрастранятся дальше. G80 выключает цикл, но не сбрасывает его параметры.

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

 

Грубо говоря, постпроцессор переделывает файл *.cls. Вы в операции сверления запрограммировали дополнительное перемещение, вот NX вам его и выводит (посмотрите у себя cls этой операции). Чтобы пост это перемещение совсем не выводил, нужно писать свою процедуру обработки этого события. Вам нужно чтобы все основные данные цикла, такие как подача, глубина и шаг, прописывались только в одной строке и нигде больше. Если вы снимете флаг "Обязательный вывод" с параметров цикла, то, по идее, должны получить примерно следующее:

N10 G81 X0 Y0 R2 F40 K50

N20 X10 Y10

N30 G80

N40 G0 Z100

N50 X20 Y20

N60 G81 K100

N70 G80

В этом виде вы сможете спокойно менять основные параметры цикла в верхнем кадре и это будет распрастранятся дальше. G80 выключает цикл, но не сбрасывает его параметры.

 

 

Все ясно.

Спасибо за разъяснения.

 

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

беда с постом.нужна такая строчка G90 G10 L12 P23  R25.  перед сменой интрумента.

 P=номер инта  R=радиус инста

всё делает пост хорошо кроме радиуса..выводит непонятные значения.файли в прицепе

делается в pb_cmd_tool_name

 

со значениями я разобрался но вот ни как при первом инструменте он не выводит радис правильно..пост берёт радиус с последнего инстрамента..

 

со всеми последующими инструментами всё отлично

Мне удалось только выяснить, что это из-за команд, которые создают список инструмента в начале программы. Пока сложно сказать как это побороть

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

 

Здравствуйте.

Подскажите пожалуйста, какая МОМ переменная отвечает в токарном инструменте за регистр настройки (Резец токарный – трассировка - регистр настройки).

 

Попробуйте mom_tool_left_adjust_reg и mom_tool_right_adjust_reg. Для уточнения нужна версия NX

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

я тоже понял что это из-за списка инструмента.

Сделал я костыль для этого случая, но мне кажется он может и проще решаться (типа какой нибудь перезагрузкой). Но я пока другого варианта не нашел

Haas_3Axis_WTL.rar

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

Я всё ещё не поборол вывод M52.

Последний рабочий вариант, в котором удалось добиться вывода М52 и в операциях сверления и в операциях фрезерования

global mom_out_angle_pos


    if {$mom_out_angle_pos(1) <=-35 && $mom_out_angle_pos(1) <=-90} {
     MOM_do_template M52
}
   if {$mom_out_angle_pos(1) >=35 && $mom_out_angle_pos(1) <=90} {
    MOM_do_template M52

   }

в этом варианте М52 не выводится если угол "В" = 0 (это верно), и когда "В" <-35 (это правильно).  Но выводится и если  "B" >-35 (это неверно). 

Почему так? Где логика? 

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

Я всё ещё не поборол вывод M52.

Последний рабочий вариант, в котором удалось добиться вывода М52 и в операциях сверления и в операциях фрезерования

global mom_out_angle_pos


    if {$mom_out_angle_pos(1) >=-35 && $mom_out_angle_pos(1) <=-90} {
     MOM_do_template M52
}
   if {$mom_out_angle_pos(1) >=35 && $mom_out_angle_pos(1) <=90} {
    MOM_do_template M52

   }

Я бы так сделал, чтобы проверять диапазоны углов от 35 до 90 град и от -35 до -90 град

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

 

я тоже понял что это из-за списка инструмента.

Сделал я костыль для этого случая, но мне кажется он может и проще решаться (типа какой нибудь перезагрузкой). Но я пока другого варианта не нашел

 

 

работает отлично..как замудренно в униграфиксе с постами..хотя и удобно так как есть уже готовые шаблонки

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

Подскажите, пожалуйста, почему может не выводится в УП коррекция на радиус инструмента. В операции коррекция указана, в посте в линейных перемещениях G41 D01 стоит.

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

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

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

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

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

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

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

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

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

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

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



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