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

FAQ/Unigraphics/POST


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

Привет.

Подскажите пожалуиста, сколько стоит постпроцессор для 5 осоваи фрези DMU 75 MONOBLOCK стоика HEIDENHAIN iTNC 530.
Или кто небут мозе поделити.
Спосиба.

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


05.10.2021 в 07:06, Denya101 сказал:

Здравствуйте. помогите, пожалуйста решить такую проблему. Нужно что бы при включении коррекции выводилась команда G13 и значения P, Q. Где P - предыдущее значение X, а Q - предыдущее значение Y. Выводить нужно только в том кадре, где выводится G41.

Скинь файлы поста сюда и  файл обработки.

Изменено пользователем dimsond88
Ссылка на сообщение
Поделиться на других сайтах
05.10.2021 в 07:06, Denya101 сказал:

Здравствуйте. помогите, пожалуйста решить такую проблему. Нужно что бы при включении коррекции выводилась команда G13 и значения P, Q. Где P - предыдущее значение X, а Q - предыдущее значение Y. Выводить нужно только в том кадре, где выводится G41.

 

переменные предыдущих значений: для X - mom_prev_pos(0), для Y - mom_prev_pos(1). Заводите адреса, ставьте в них переменные, адреса подставляйте в templet - lineral_move. В событии cutcom on управляйте выводом этих адресов - например командой MOM_enable_address,  а перед выводом остальных перемещений в before_motion MOM_disable_address

06.10.2021 в 12:49, Lauris.P сказал:

Подскажите пожалуиста, сколько стоит постпроцессор для 5 осоваи фрези DMU 75 MONOBLOCK стоика HEIDENHAIN iTNC 530.
Или кто небут мозе поделити.
Спосиба.

 

Есть на все эти станки и постпроцессоры и модели. Работаю как ИП. Могу выехать и отработать на месте на детали. Цены ниже чем у коллег, качество услуг выше и подход более индивидуален. Пишите мне в личку договоримся о цене вопроса

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

Здравствуйте. Подскажите как сделать чтобы код на TCL выдавал то что нужно.

 

set digit "04598007"

set digit [regexp -inline {[1-9][0-9]} $digit]

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

В таком виде код выдаёт значение переменной digit равным 45, на надо, что бы он начал с конца строки и выдал значение 87.

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

Здравствуйте. Подскажите как сделать чтобы код на TCL выдавал то что нужно.

 

set digit "04598007"

set digit [regexp -inline {[1-9][0-9]} $digit]

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

В таком виде код выдаёт значение переменной digit равным 45, на надо, что бы он начал с конца строки и выдал значение 87.

Вот прочитал вопрос, и что то до того тупым себя ощутил! Почему 45? Почему надо 87? Из любопытства, что за задача? для чего это?

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

Вот прочитал вопрос, и что то до того тупым себя ощутил! Почему 45? Почему надо 87? Из любопытства, что за задача? для чего это?

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

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

Задача, получить две "уникальные" цифры из переменной mom_output_file_basename, чтобы первая из них не была равна нулю.

Здравствуйте. Вторая цифра результата должна совпадать с последней цифрой исходной строки, а первая - быть не нулевой и ближайшей к последней?

set digit "04598007"
set res {}
set i [string length $digit]
while {$i > 0} {append res [string index $digit [incr i -1]]}
set first [regexp -inline -start 1 {[1-9]} $res]
set second [string index $res 0]
set digit "$first$second"

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

Здравствуйте. Вторая цифра результата должна совпадать с последней цифрой исходной строки, а первая - быть не нулевой и ближайшей к последней?

Спасибо. Всё верно. Код действительно работает так как надо.

Скажите, можно ли дополнить код, так что если между цифрами есть какой-либо разделитель(ли), то поиск цифр надо производить от последнего разделителя?

Например, если задать переменную set digit "045_98-007", то код должен выдать 98.

Ссылка на сообщение
Поделиться на других сайтах
09.10.2021 в 00:55, artem-nafanya сказал:

Скажите, можно ли дополнить код, так что если между цифрами есть какой-либо разделитель(ли), то поиск цифр надо производить от последнего разделителя?

Например, если задать переменную set digit "045_98-007", то код должен выдать 98.

set digit "045_98-007"
set n [string length $digit]
set res {}
set i $n
while {$i > 0} {append res [string index $digit [incr i -1]]}
set i 0
set r 0
while {$r == 0 && $i < $n} {
set s [string index $res $i]
if {$s=="-" || $s=="_"} {
set r [expr $i+1]
}
incr i
}
set first [regexp -inline -start [expr $r + 1] {[1-9]} $res]
set second [string index $res $r]
set digit "$first$second"
 

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

set digit "045_98-007"
set n [string length $digit]
set res {}
set i $n
while {$i > 0} {append res [string index $digit [incr i -1]]}
set i 0
set r 0
while {$r == 0 && $i < $n} {
set s [string index $res $i]
if {$s=="-" || $s=="_"} {
set r [expr $i+1]
}
incr i
}
set first [regexp -inline -start [expr $r + 1] {[1-9]} $res]
set second [string index $res $r]
set digit "$first$second"
 

Благодарю за помощь.

Ссылка на сообщение
Поделиться на других сайтах
08.10.2021 в 12:29, mr_Voden сказал:

Благодарю. То что нужно.

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

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

Может кто сталкивался:

NX10

добавил в 4х осевой постпроцессор pb_cmd_combine_rotary.tcl (из POSTBUILD\pblib\custom_command). Всё разместил как описано, но если назначить сверление радиальных отверстий в 4й оси, то появляется паразитный вывод поворота А. Т.е. первый вывод А не подавляется.  Не пойму, почему?

<a href="https://imgbb.com/"><img src="https://i.ibb.co/TkgDz5F/1.png" alt="1" border="0"></a>

 

Если кому не сложно, выложите пожалуйста pb_cmd_combine_rotary.tcl от NX12 для сравнения.

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

X-2. I-3. J0.
G40
G01 X0.
G00 Z10.
M05
M09
G91 G28 Z0.
M01
G00 G90 G54
X0. Y0. S5000 M03
Z10.
M08

Z-3.24
G41 G01 X-2. F250.
G03 X2.5 I2.25 J0.

 

Такой код выходит при постпроцессировании операций , где работает один и тот же инструмент, и они следуют друг за другом.

Парни, подскажите,что нужно сделать чтобы : убрать выделенный участок и вставить сюда название операции.

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

Спасибо большое!

pb_cmd_combine_rotary.tcl в NX10 и NX12 полностью одинаковые. 

drion 

В поспроцессировании ставьте галочку "вывод листинга", чуть ниже Инструмент просмотра "Вкл". Потом постпроцессируете. У вас автоматически запустится NX/Post review tool. В правом окошке (post output) находим интересующую строчку с кодом и кликаем по ней. В центральном окошке прямо сверху выводится что за событие и его параметры (например Event: Mom_tool_change - это блок Tool Change, который берёт событие из Operation Start Sequence - > Auto Tool Change)

 

 

 

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

Здравствуйте, на стойке есть проблемы с рекомпиляцией сверлильных циклов после вывода, не стал разбираться и просто перенес нужные значения в R-переменные, хотел спросить, каким образом в ПостБилдере можно реализовать сравнение значений и если они  совпадают то чтобы R-переменные выводились только раз а если разные то для каждого цикла свои, и еще каким образом реализуется сбор информации к примеру как в списке инструментов о инструменте который работает в программе? Спасибо.
Пример проги:

;D_model1_NC
;DATE : Fri Jan 14 19:13:36 2022
;T0  : DRILLING : DRILL_D5      : D=5.00      
;
N10 G18 G40 G54 G90
N20 G59 Z0 X0
N30 L710(1)  ;Move to tool change position, axes: X=>Z
;
N40 MSG("METHOD // DEEP_HOLE_DRILLING")
N50 L710(1)  ;Move to tool change position, axes: X=>Z
N60 T="DRILL_D5" ;Drilling Tool
N70 TC(1)  ;Tool change
N80 SETMS(1)
N90 M108
N100 G17
N110 DIAMOF  ;Radius dimensioning
N120 L707(0)  ;C4 - Switch on axis
N130 G00 C4=82.781
N140 G97 S1=600 M1=03 ;check rotation: M1=04-clockwise, M1=03-counterclockwise!!!
N150 G00 G94 X32. Z15.
N160 F25.
  ;CYCLE PARAMETERS!!!
   R1=15.00      ;Retraction plane
   R2=-23.00     ;Reference plane
   R3=3.00       ;Safe distance  
   R4=-33.50     ;Final drilling depth
   R5=3.50       ;Drilling step  
N170 MCALL CYCLE83(R1,R2,R3,R4,,,R5,0.,,,1.,1,,0.)

N180 X32.
N190 C4=67.781
N200 C4=52.781
N210 C4=37.781
N220 MCALL
N230 Z15.
  ;CYCLE PARAMETERS!!!
   R1=15.00      ;Retraction plane
   R2=-15.00     ;Reference plane
   R3=3.00       ;Safe distance  
   R4=-33.50     ;Final drilling depth
   R5=4.63       ;Drilling step  
N240 MCALL CYCLE83(R1,R2,R3,R4,,,R5,0.,,,1.,1,,0.)

N250 X28.5 C4=0.0
N260 C4=240.
N270 C4=120.
N280 MCALL
N290 DIAMON  ;Diameter dimensioning
N300 L708  ;C4 - Switch on spindle
;
N310 L710(1)  ;Move to tool change position, axes: X=>Z
N320 M1=05 M109
N330 M17

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • lem_on
      ну с дуру известно что сломать можно.
    • Viktor2004
      руку привязки так сломать легко
    • lem_on
      По моему вполне логично если станок вывалится в ошибку если рука не доехала до места. У меня так же если кулачки или деталь на пути, просто пихаеш ее до места и станок опять активен. Но нынешние пановья даже не могут написать модель станка.
    • Viktor2004
      Я согласен что скорее всего проблема механическая Но если логика прописана криво и возможно не предусмотрела остановку в промежуточном состоянии, разве не логично будет попробовать принудительно подав напряжение дернуть эту руку вверх-вниз? Возможно то что туда попало выпадет  
    • Guhl
      Если оставить за скобками вопрото том, что до м19 работает нормально, а после нет, то вы не считали сколько у него реально импульсов на оборот? с помощью стороннего плк, например  А если ориентацию м5 снимать, а не м20?
    • lem_on
      Что это за станок такой в котором сразу ладер ковырять надо, даже не смотря на возможность механической проблемы? Или профдеформация?
    • Viktor2004
      не сразу я понял в чем вопрос. Долго соображал что такое режим управления скоростью. При завершении ориентации PMC снимает сигнал G70.6 ? И если он после снятия сигнала продолжает удерживать шпиндель, при каких условиях эта ориентация все же снимается? После нажатия аварийного грибка или еще как?
    • Viktor2004
      Ладдер пришлите. Будем принудительно пробовать поднимать и опускать
    • streamdown
      Коллеги приветствую! IPS 8. Подскажите пожалуйста, кто какое серверное железо использует? Интересуют параметры при одновременной работе, ну например, 400 пользователей онлайн
    • gudstartup
      так он так и позиционируется по m19 pmc выдает g70.6 а чпу отвечает f45.7 но ориентацию и смещение в 4077 он отрабатывает нормально шпиндель встает ровно и смена происходит хорошо. вопрос почему после ввода команды управления скоростью он все еще продолжает контролировать число импульсов между нуль метками хотя в принципе уже должен отменить позиционный контроль и просто считать обороты по 0 метке как он это делает без М19? это все понятно но почему оно продолжает проверять это после завершения ориентации мне непонятно
×
×
  • Создать...