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

FAQ/Unigraphics/POST


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

29.03.2022 в 11:02, vicebear сказал:

Можно попробовать в начале прописать MOM_suppress always X (нужная ось). Не знаю, поможет ли - какое-то нестандандартное задание...:g:

Или можно MOM_disable_address X

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


Спасибо!
Смоделируем ситуацию. На токарном двух- осевом ЧПУ с приводным инструментом  растачиваю деталь. Следующая операция сверление под 90 градусов к оси вращения, к z то есть. Мне как отдать команду шпинделю остановиться в определённом положении (с углом определённым шпинделя), и как запустить привод инструмента? Где в стандартном посте lathe xz в постбилдере это прописать для 828 стойки siemens?

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

Нужно переключиться во фрезерный режим и задействовать ось С

Ваша правда,  золотые слова! 

Какие команды в постпроцессоре отвечают за включение оси С?

Ссылка на сообщение
Поделиться на других сайтах
39 минут назад, Dildo_Den_PLM сказал:

Какие команды в постпроцессоре отвечают за включение оси С?

Нет таких команд. Необходимо перейти в отдельный связанный постпроцессор отвечающий за фрезерную часть.

Самый простой способ это сделать - при помощи вкладки Linked Posts, указав там связанный фрезерный постпроцессор c определенным именем в строке head. Далее в проекте обработки следует разделить токарные и фрезерные операции на отдельные папки, на папку с фрезерными операциями назначить стандартное событие в начале Head c определенным ранее именем постпроцессора.

Таким образом, операции содержащиеся в отдельной папке будут выводится отдельной фрезерной частью постпроцессора.

В фрезерном постпроцессоре создаете кинематику соответствующую с осями  

Это конечно самый простой способ, сейчас делаю все автоматически по типу операции

 

Ссылка на сообщение
Поделиться на других сайтах
23 часа назад, Vladislav-dobrynin сказал:

Нет таких команд. Необходимо перейти в отдельный связанный постпроцессор отвечающий за фрезерную часть.

Самый простой способ это сделать - при помощи вкладки Linked Posts, указав там связанный фрезерный постпроцессор c определенным именем в строке head. Далее в проекте обработки следует разделить токарные и фрезерные операции на отдельные папки, на папку с фрезерными операциями назначить стандартное событие в начале Head c определенным ранее именем постпроцессора.

Таким образом, операции содержащиеся в отдельной папке будут выводится отдельной фрезерной частью постпроцессора.

В фрезерном постпроцессоре создаете кинематику соответствующую с осями  

Это конечно самый простой способ, сейчас делаю все автоматически по типу операции

 

Спасибо.  Да, я видел такое в ролике. А что означает событие Head, что оно делает?

Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, Dildo_Den_PLM сказал:

Спасибо.  Да, я видел такое в ролике. А что означает событие Head, что оно делает?

Данное событие Вы можете найти в списке стандартных событий из библиотеки событий NX. Назначение события - вызывать при процессе вывода УП - указанный связанный постпроцессор. Данное событие может быть использовано, не только для вызова фрезерной или токарной частей постпроцессора, но и также - в случае если на станке имеется несколько кинематических решений, например несколько головок с управляемыми осями - под каждый вариант кинематики можно написать отдельный постпроцессор и соединить их с основным постпроцессором. Вызывая, далее ту или иную головку (связанный постпроцессор) при помощи события при выводе УП.

Последний вариант лично я, в последнее время не приемлю - так как расширяется количество файлов постпроцессоров и кода, и реализую все варианты кинематических решений в одном постпроцессоре, однако использование события Head в данном случае - это стандартное решение 

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

Данное событие Вы можете найти в списке стандартных событий из библиотеки событий NX. Назначение события - вызывать при процессе вывода УП - указанный связанный постпроцессор. Данное событие может быть использовано, не только для вызова фрезерной или токарной частей постпроцессора, но и также - в случае если на станке имеется несколько кинематических решений, например несколько головок с управляемыми осями - под каждый вариант кинематики можно написать отдельный постпроцессор и соединить их с основным постпроцессором. Вызывая, далее ту или иную головку (связанный постпроцессор) при помощи события при выводе УП.

Последний вариант лично я, в последнее время не приемлю - так как расширяется количество файлов постпроцессоров и кода, и реализую все варианты кинематических решений в одном постпроцессоре, однако использование события Head в данном случае - это стандартное решение 

Благодарю Вас!

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

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

Постпроцессор выдаёт:

 N80 G95 S1800 M03
 N90 G97 G00 X160. Z30. D01

А должен наоборот, для шпинделя G97 а подачу G95. Как поправить такое в посбилдер?

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

Здравствуйте, как в постбилдере сделать автозажим/разжим 4й оси? Например если двигается 4я ось в следующем кадре то происходит команда на разжим,  если нет, выдаёт команду на зажим.

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

Здравствуйте, как в постбилдере сделать автозажим/разжим 4й оси? Например если двигается 4я ось в следующем кадре то происходит команда на разжим,  если нет, выдаёт команду на зажим.

Можно попробовать сделать через PB_CMD_MOM_rotate. Можно в ускоренных перемещениях сравнить $mom_out_angle_pos() и $mom_prev_out_angle_pos(). Много есть вариантов - всё зависит от ваших конкретных требований.

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

Можно попробовать сделать через PB_CMD_MOM_rotate. Можно в ускоренных перемещениях сравнить $mom_out_angle_pos() и $mom_prev_out_angle_pos(). Много есть вариантов - всё зависит от ваших конкретных требований.

Спасибо,  нашёл в интернете вот такую функцию, поставил вначале программы, а она почему то не работает у меня(


# Custom Command to clamp or unclamp rotary axis
# Written by Jim Wright EDS PLM Solutions 05/08/2002
#
# This procedure checks to see if 4th or 5th axis will be moving in the next block.
# If yes, it issues command to unclamp.  If no, it issues command to clamp.
# User must incorporate block template for appropriate action (M10/M11 in my case.
# This requires input from NC Programmer to turn on the roatary clamping mechanism in a UDE.
# If only 4th axis is valid, logic should be modified in "if" statement.
# The "clamp" and "unclamp" templates must be defined in the Post Builder.


 global mom_pos mom_prev_pos mom_rotary_clamp

 if { [info exists mom_rotary_clamp] } {
     if { $mom_rotary_clamp == "ACTIVE" } {
          if { $mom_pos(4) == $mom_prev_pos_(4)} {
          MOM_do_template clamp } else { MOM_do_template unclamp }
     }
 }

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

Спасибо,  нашёл в интернете вот такую функцию, поставил вначале программы, а она почему то не работает у меня(


# Custom Command to clamp or unclamp rotary axis
# Written by Jim Wright EDS PLM Solutions 05/08/2002
#
# This procedure checks to see if 4th or 5th axis will be moving in the next block.
# If yes, it issues command to unclamp.  If no, it issues command to clamp.
# User must incorporate block template for appropriate action (M10/M11 in my case.
# This requires input from NC Programmer to turn on the roatary clamping mechanism in a UDE.
# If only 4th axis is valid, logic should be modified in "if" statement.
# The "clamp" and "unclamp" templates must be defined in the Post Builder.


 global mom_pos mom_prev_pos mom_rotary_clamp

 if { [info exists mom_rotary_clamp] } {
     if { $mom_rotary_clamp == "ACTIVE" } {
          if { $mom_pos(4) == $mom_prev_pos_(4)} {
          MOM_do_template clamp } else { MOM_do_template unclamp }
     }
 }

 

new_post.def new_post.pui new_post.tcl

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

Спасибо,  нашёл в интернете вот такую функцию, поставил вначале программы, а она почему то не работает у меня(

 

А зачем в начало? логично же, что перед каждым перемещением надо было делать? теперь понятно почему не работает?

Вообще данная функция реализуется иным способом, в начале операции - если данная она относится к операциям с фиксированным вектором оси инструмента - выводятся коды зажима, если пять осей - то коды разжима 

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

Подскажите, как в NC210 реализовать сверлильный цикл

 

G81Z...R...R...F...

Первая  - R плоскость безопасности при подходе

Вторая - R отвод на безопасную высоту

С налета Постбилдер не дает вставить еще одну R.

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

Не могу избавиться от повторов параметров в G81 - Z R R

 

N40 G81 X-432. Y195. Z-27.504 R3. R12. F250
N50 X-374. Y250. Z-27.504 R3. R12.
N60 X-306. Y252. Z-27.504 R3. R12.
N70 X-272. Y255. Z-27.504 R3. R12.

NC110.rar

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

Не могу избавиться от повторов параметров в G81 - Z R R

Адреса модальны? Усиления вывода не назначено? - это возможно сделано интерфейсом постбилдера  - белые квадраты на значке адресов стоят - если да то его уберите

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

Подскажите пожалуйста как сделать 2 вещи.

1)Станки на фануке- но мозги древние, памяти не хватает им.

Нужно сократить программы до циклов M97 - для haas

или цикл Whille для Акиры

Программы только на фрезерку (Planar.ы и кавити одним проходом по дну)

2) Нужно в событие пользователя добавить GOTO 

что бы при выборе варианта- он ссылался на на отдельный кусок программы. я сделал это через insert Но уж больно много надо кликать.

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

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

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

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

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

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

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

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

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

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

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




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