Jump to content

FAQ/Unigraphics/POST


Fixidea

Recommended Posts

Привет.

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

Link to post
Share on other sites


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

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

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

Edited by dimsond88
Link to post
Share on other sites
Vladislav-dobrynin
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.
Или кто небут мозе поделити.
Спосиба.

 

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

Edited by Vladislav-dobrynin
Link to post
Share on other sites
artem-nafanya

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

 

set digit "04598007"

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

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

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

Link to post
Share on other sites
kosmonaft
1 час назад, artem-nafanya сказал:

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

 

set digit "04598007"

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

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

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

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

Link to post
Share on other sites
artem-nafanya
6 минут назад, kosmonaft сказал:

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

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

Link to post
Share on other sites
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"

Edited by A_1
Link to post
Share on other sites
artem-nafanya
10 часов назад, A_1 сказал:

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

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

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

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

Link to post
Share on other sites
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"
 

Link to post
Share on other sites
artem-nafanya
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"
 

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

Link to post
Share on other sites
  • 2 months later...
NX_User_1

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

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

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 для сравнения.

Link to post
Share on other sites

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.

 

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

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

Link to post
Share on other sites
NX_User_1
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)

 

 

 

Link to post
Share on other sites
_vlad_ng_

Здравствуйте, на стойке есть проблемы с рекомпиляцией сверлильных циклов после вывода, не стал разбираться и просто перенес нужные значения в 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

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   1 member

    • drion


×
×
  • Create New...