Post Builder

NX CAM/Unigraphics

Autor tematu
jarekjarek
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 3
Posty: 6
Rejestracja: 05 maja 2015, 12:28
Lokalizacja: Olsztyn

Post Builder

#1

Post napisał: jarekjarek » 05 maja 2015, 12:34

Podczas gwintowania sztywnego post builder generuje mi następujący kod:
N0080 T16 M06
N0090 G00 G90 G55 X28.099 Y20.833 M03 S1000
N0100 G43 Z3. H16 M08
N0110 M29 S1000
N0120 G98 G84 Z-11. R3. F3200.

Wszystko jest ok, tylko chcę z linijki N0090 pozbyć się parametru S, macie jakiś pomysł?

Fanuc io-md.



Tagi:


lukaszcam
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 2
Posty: 14
Rejestracja: 24 lis 2014, 19:53
Lokalizacja: Rzeszów

#2

Post napisał: lukaszcam » 05 maja 2015, 16:24

Konieczna jest edycja postprocesora


Autor tematu
jarekjarek
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 3
Posty: 6
Rejestracja: 05 maja 2015, 12:28
Lokalizacja: Olsztyn

#3

Post napisał: jarekjarek » 06 maja 2015, 09:14

Nie opisałem mojego problemu dokładnie.
Wiem że trzeba edytować
tak wygląda funkcja w post builder:
funkcja Rapid move i fukncja rapid traverse która mnie najbardziej interesuje
http://zapodaj.net/5592a8974cf7c.jpg.html
Obrazek

Funkcja Tap

http://zapodaj.net/60b0f9c76eb4a.jpg.html

Funkcja w pliku .def

Kod: Zaznacz cały

 BLOCK_TEMPLATE rapid_traverse 
  {
       G_motion[$mom_sys_rapid_code]
       G_mode[$mom_sys_output_code($mom_output_mode)]\opt
       G[55]
       X[$mom_pos(0)]
       Y[$mom_pos(1)]
       Z[$mom_pos(2)]
       M_spindle[$mom_sys_spindle_direction_code($mom_spindle_direction)]\opt
       S[$mom_spindle_speed]\opt
  }

Dokładnie chcę żeby parametr S w tej funkcji nie był wywoływany gdy jest wywołana funkcja

Kod: Zaznacz cały

BLOCK_TEMPLATE cycle_tap 
  {
       G_return[$mom_sys_cycle_ret_code($mom_cycle_retract_mode)]
       G_motion[$mom_sys_cycle_tap_code]
       X[$mom_cycle_feed_to_pos(0)]
       Y[$mom_cycle_feed_to_pos(1)]
       Z[$mom_cycle_feed_to_pos(2)]
       R[$mom_cycle_rapid_to_pos($mom_cycle_spindle_axis)]
       F[$mom_tool_pitch*$mom_spindle_speed]
  }
myślałem żeby w funkcji rapid_travers wstawić funkcję
if [] {} (nie wiem czy struktura jest dobra)
nie wiem czy dobrze myślę, ale gdy zmienna $mom_operation_type ma wartość "Point to Point"
tylko nie wiem czy jest taka możliwośc wstawienia funkcji warunkowej, bądź stworzyć dwa BLOCK_TEMPLATE i zapomocą funkcji warunkowej wywołaś jeden bądź drugi blok.


lukaszcam
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 2
Posty: 14
Rejestracja: 24 lis 2014, 19:53
Lokalizacja: Rzeszów

#4

Post napisał: lukaszcam » 06 maja 2015, 18:46

Oczywiście, że można używać instrukcji warunkowej if.
Można np. zapisać warunek że gdy jest to operacja gwintowania to post nie wyrzuci kodu M03 S1000. Nie ma potrzeby robić tego na blokach.


Autor tematu
jarekjarek
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 3
Posty: 6
Rejestracja: 05 maja 2015, 12:28
Lokalizacja: Olsztyn

#5

Post napisał: jarekjarek » 06 maja 2015, 20:22

próbowałem tak:

Kod: Zaznacz cały

BLOCK_TEMPLATE rapid_traverse 
  { 
       G_motion[$mom_sys_rapid_code] 
       G_mode[$mom_sys_output_code($mom_output_mode)]\opt 
       G[55] 
       X[$mom_pos(0)] 
       Y[$mom_pos(1)] 
       Z[$mom_pos(2)] 
       M_spindle[$mom_sys_spindle_direction_code($mom_spindle_direction)]\opt 
       if [$mom_operation_type == "Point to Point"]{S[$mom_spindle_speed]\opt }
  } 
przy takiej konstrukcji otrzymywałem błąd, niestety nie mogę teraz pokazać jaki jest błąd, ale jak to pomoże to jutro jak będę w pracy to go przedstawię, może złą konstrukcję wywołuję ktoś może coś takiego robił?

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „NX CAM/Unigraphics”