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

Как вставить свой код в постпроцессируемую программу?


Pavel_WR

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

Здравствуйте, уважаемые форумчане.

 

Требуется реализовать такую задачу...
При нажатии кнопки "Постпроцессировать", NX выдаёт код программы в виде структуры "Заголовок программы - тело - окончание" (Я прям капитан очевидность  :biggrin: )
Мне же требуется всунуть в эту структуру свой кусок кода и получить "Заголовок - мой код - тело - мой код - окончание".

Подскажите пожалуйста, как сие реализовать?
Заранее примного благодарен  :drinks_drunk:

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


MOM_output_literal "MOY_KOD"

 

Не, не, не :) Я не в теме про всякие MOM переменные :) (Кстати, где они прописываются? Через постбилдер?)

 

Мне требуется реализовать следующее...

Имеется набор циклов обмера заготовки щупом (циклы взял с стойки станка).

Планируется постпроцессировать много программ обработки. 

Требуется автоматизировать процесс внедрения куска кода с циклами обмера в каждую поспроцессируемую программу.

Может как то можно через "События пользователя" или ещё как...

Вставлять кусок кода вручную в каждую программу через cimco не заманчиво  :biggrin:

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

Эти вопросы вот так с кондачка не решаются....
Измерение щупом - это такая же операция NX, сделанная при помощи шаблона probing, а соответствующий постпроцессор выведет требуемый кусок кода в программу.

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

Измерение щупом - это такая же операция NX, сделанная при помощи шаблона probing.

 

Я даже близкого представления не имею как в NX настроить 431 цикл heidenhain, по этому пытаюсь решить свою проблему, возможно, примитивным способом.

Т. е. настроенный и отлаженный на станке кусок кода с циклами просто вставлять в нужное место в постпроцессируемую программу.

Конечно, есть вариант вставлять часть кода как подпрограмму, но в таком случае всё равно придётся в каждой программе прописывать вручную вызов подпрограммы с циклами в нужном месте.

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

Можно вставлять какой угодно кусок кода (тем более если он заранее определен) в любое место в программе. Задача еще больше упрощается если его нужно вставлять в начале программы, в конце или между операциями. Правильней всего это действительно можно решить через событие пользователя. Как самому создать событие пользователя достаточно подробно описано в данном видео:

 

Создание события пользователя (UDE)

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

 

Дык этож шаблоны событий пользователя, или как это правильно называется, разработанные вашей компанией, насколько я понимаю. В стоковом NX такого нет :)

Возможно вы готовы их обменять на материальные блага, но контора у меня жадная  :biggrin:

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

 

Тогда стандартное событие пользователя "Insert" тебе в помощь

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

Тогда стандартное событие пользователя "Insert" тебе в помощь

 

Да-да-да!!! Этот способ прост и вполне подходит для решения моей проблемы. Огромное спасибо!

 

2 UG_user: я простой оператор. Изучаю NX и прочее для оптимизации своего рабочего процесса самостоятельно и исключительно по собственной инициативе. Просить деньги у начальства на приобретение плагинов и т.п. для NX пффф. Их устраивает чтоб я закалачивал программы со стойки. А тратить свои не готов, жена не поймёт :) По этому тусуюсь здесь, на ютубе и стараюсь доходить своими мозгами, с вашей помощью :)

Уж извините :)

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

Да-да-да!!! Этот способ прост и вполне подходит для решения моей проблемы. Огромное спасибо!

 

 

Посмотрите probing_cycles здесь: C:\Program Files\Siemens\NX 10.0\MACH\resource\postprocessor

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

Посмотрите probing_cycles здесь: C:\Program Files\Siemens\NX 10.0\MACH\resource\postprocessor

 

Посмотрел. Есть для фанука и сименса, для хеиденхайна нет.

Свою задачу решу через Insert, а вообще нужно учиться создавать свои события :)

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

Я прощу прощения, конечно, но на картинке машинная система координат MCS стоит внизу. Из богатого опыта всех предыдущих программистов и операторов, рекомендую по Z=0, брать верх детали. Зарезов не будет 100%. Пожалуйста. Можете не благодарить. Мы россияне! :biggrin:

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

А я то думал что зарезов и столкновений можно избегать за счет правильно написанных управляющих программ, желательно проверенных на верификаторах , а затем внимательно и аккуратно отработанных на реальном оборудовании. Оказывается весь секрет в установке системы координат!  Как же теперь мне легко будет жить! спасибо)))

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

@@urlerbro, тут, видимо, имеется ввиду что-то похожее на проблемы с HAAS, где он при быстрых ходах соединяет разные кадры отвода вверх и перемещения и из-за этого зарезает. При пересечении Z0 же этого не происходит.

 

Хотя тоже туманным кажется все написанное земляком.

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

Помогите пожалуйста с постпроцессором.

Задача с выводом коррекции на радиус.

Смысл в том, что необходимо выводить коррекцию D один раз в строке G43ZHD за инструмент. Если в инструменте в какой-либо операции есть G41/42, то G43ZHD иначе G43ZH. И если D есть, то ещё T1M6(HD), а если нет, то T1M6(H).

С остальным вроде разобрался, но с коррекцией никак(

NC_post.zip

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

Это вы сами так решили выводить? Что-то я на фануках не встречал таких требований. С включением коррекции на длину G43 хотите выводить адрес коррекции на радиус, это зачем такое? Станок то не заругается? Адрес D допустим только в G41/G42, но это на классике, а у Вас какая стойка конкретно?

А вот например при смене инструмента - T1M6(HD) или T1M6(D) вывести, в зависимости от того есть в операции коррекция или нет, это вообще невозможно сделать так просто "в лоб", т.к. событие смены инструмента стоит намного раньше события включения коррекции на радиус. Во всяком случае сделать можно все на что фантазии хватит, но у меня подозрения нужно ли именно так на станке?

Изменено пользователем Vladislav-dobrynin
Ссылка на сообщение
Поделиться на других сайтах
Это вы сами так решили выводить?

Да.

Что-то я на фануках не встречал таких требований.

Вот и встретили.

это зачем такое?

Надо.

Адрес D допустим только в G41/G42
 

Кто Вам такое сказал? У нас так не допустимо!

а у Вас какая стойка конкретно?

Разные модификации 0i.

это вообще невозможно сделать так просто "в лоб"

Было бы просто как в есприте тут не спрашивал бы.

т.к. событие смены инструмента стоит намного раньше события включения коррекции на радиус

Без разницы должно быть когда событие стоит, это же программирование на языке tcl.

но у меня подозрения нужно ли именно так на станке?

Если не решу этот вопрос, то придётся отказаться от nx и будем работать в есприте. 

Ссылка на сообщение
Поделиться на других сайтах
Без разницы должно быть когда событие стоит, это же программирование на языке tcl.
 

 

Причем тут tcl? переменные mom инициализируются в событиях, порядок этих событий определен жестко интерпретатором в NX. Есть команды чтения на одно событие вперед, но тут это не поможет.

Максимум можно перед включением коррекции вывести повторно строчку с T1M6HD, но это не красиво.

 

Так какая конкретная модификация FANUC 0i? Станок какой у вас? Фрезерный?

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

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

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

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

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

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

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

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

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

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

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




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