o sub (TOOL CHANGE MACRO) (VERSION 1) M65 P8 (RESET iocontrol.0.tool-changed) G49 (TOOL COMPENSATION OFF) M9 (COOLING OFF) G0 G53 Z0 (GO UP IN Z AXIS) M5 (SPINDLE OFF) G0 G53 Y607.809 (GO TO TOOL CHANGE POSSITION IN Y AXIS) (WAIT UNTIL CAROUSEL SET PROPPER TOOL POCKET ) (------------------------) (vstup motion digital 8 - pokud je tento bit v 0 karusel se otáčí => ladder nastavuje kapsu musime pockat) ( - pokud je tenro bit v 1 karusel se neotaci => muzeme vymenit nastroj) M66 P8 L3 Q31536000 (cekame jeden rok) (karusel se neotaci kapsa je pripravena na vymenu) (nastavime bit aby ladder nezacal otacet zasobnikem dokud neukoncime vymenu) M64 P9 (SET TOOL ARM MIDDLE POSITION) (------------------------) M65 P1 (vypne vyjeti ruky) M65 p3 (vypne zajeti do zasobniku) M64 P4 (nastavit zajeti doprostred) M64 P2 (zajet doprostred) (IS TOOL ARM IN MIDDLE POSITION?) (------------------------) M66 P3 L3 Q5 (cekat na polohu uprostred) o16 IF [#5399 EQ -1] M65 P9 (konec vymeny nastroje) (msg,Chyba vymeny nastroje 1 - ruka nezajela doprostred) o16 ENDIF M65 P2 (vypne zajeti ruky) (SET TOOL ARM FOR NEW TOOL) (---------------------------------------------) M65 P6 (otocit s rukou na 0 stupnu) M64 P5 M66 P4 L3 Q5 (cekat na otoceni s rukou na 0) o15 IF [#5399 eq -1] M65 P5 M65 P9 (konec vymeny nastroje) (abort,Chyba vymeny nastroje 2 - nelze otocit ruku na 0 stupnu) o15 ENDIF M65 P6 (vypnout otaceni) (TAKE TOOL INTO ARM) (--------------------------------) M65 P1 (vypnout vyjeti ruky) M65 P4 (vypnout zajeti doprostred) M64 P3 (nastavit zajeti az do zasobniku) M64 P2 (zasunout ruku do zasobniku a nabrat novy nastroj) M66 P1 L3 Q5 (cekat na zasunuti) o9 IF [#5399 eq -1] M65 P9 (konec vymeny nastroje) (abort,Chyba vymeny nastroje 3 - nelze nabrat nastroj ze zasobniku) o9 ENDIF M65 P2 (vypnout zajeti) (INDEX SPINDLE) (------------------------------------) M64 P0 (indexovat vreteno) M66 P0 L3 Q15 (cekat na indexaci) o1 IF [#5399 eq -1] M65 P9 (konec vymeny nastroje) (abort,Chyba vymeny nastroje 4 - nelze indexovat vreteno) o1 endif G0 G53 Z-114.687 (zajet s nastrojem na misto vymeny) (TOOL ARM UP POSSITION) (----------------------------) M65 P3 (vypnout zajeti do zasobniku) M65 P2 (vypnout zasouvani ruky) M64 P1 (vysunout ruku) M66 P5 L3 Q10 (cekat na vysunuti) o2 IF [#5399 eq -1] M65 P1 (vypne vyjeti ruky) M65 P3 (vypne zajeti do zasobniku) M64 P4 (nastavit zajeti doprostred) M64 P2 (zajet doprostred) M65 P9 (konec vymeny nastroje) (abort,Chyba vymeny nastroje 5 - nelze nabrat stary nastroj) o2 ENDIF (RELEASE TOOL IN SPINDLE) (--------------------------) M64 P7 (uvolnit nastroj) M66 P7 L3 Q10 (cekat na uvolneni) o3 IF [#5399 eq -1] M65 P9 (konec vymeny nastroje) (abort,Chyba vymeny nastroje 6 - nelze uvolnit nastroj ve vretenu) o3 ENDIF G0 G53 Z0 (vyjet nahoru) (CHANGE TOOLS) (-------------------) M65 P5 M64 P6 (natocit ruku na 180 stupnu) M66 P2 L3 Q10 (cekat na otoceni) o4 IF [#5399 eq -1] M65 P9 (konec vymeny nastroje) (abort,Chyba vymeny nastroje 7 - nelze otocit s rukou) o4 ENDIF (INSERT NEW TOOL INTO SPINDLE) (-------------------) G0 G53 Z-114.687 (zajet se vretenem na nastroj) M65 P7 (upnout nastroj) M66 P6 L3 Q10 (cekat na upnuti) o5 IF [#5399 eq -1] M65 P9 (konec vymeny nastroje) (abort,Chyba vymeny nastroje 8 - nelze upnout nastroj) o5 ENDIF (OLD TOOL MOVE INTO CAROUSEL) (-----------------------------) M65 P1 (uvolnit ruku) M65 P6 (uvolnit otaceni s rukou) M64 P3 (nastavit zajeti az do zasobniku) M64 P2 (zasunout ruku do zasobniku) M66 P1 L3 Q15 (cekat na zasunuti) o6 IF [#5399 eq -1] M65 P9 (konec vymeny nastroje) (abort,Chyba vymeny nastroje 9 - nelze zajet s rukou do zasobniku) o6 ENDIF (SPINDLE UP AT Z AXIS) (------------------------------------------) G0 G53 Z0 (vyjet nahodu) M65 P0 (vypnout indexovani) (SET TOOL ARM INTO MIDDLE POSSITION) (------------------------) M65 P3 (vypnout zajeti do zasobniku) M64 P4 (zajet s rukou doprostred) M66 P3 L3 Q15 (cekat na polohu uprostred) o7 IF [#5399 eq -1] M65 P9 (konec vymeny nastroje) (abort,Chyba vymeny nastroje 10 - nelze zajet s rukou doprostred) o7 ENDIF M65 P4 (vypnout stredni polohu) (pripravit ruku na nove nabrani nastroje) (---------------------------------------) M65 P6 (otocit s rukou na 0 stupnu) M64 P5 M66 P4 L3 Q60 (cekat na otoceni s rukou na 0) o8 IF [#5399 eq -1] M65 P5 M65 P9 (konec vymeny nastroje) (abort,Chyba vymeny nastroje 11 - nelze otocit ruku do vychozi polohy) o8 ENDIF M65 P6 (vypnout otaceni) (ALL IS OK NEW TOOL IN SPINDLE SET SIGNAL TO LINUXCNC) (-----------------------------------------------) M64 P8 ;potvrdit vymenu nastroje do iocontrol M6 ; potvrdit vymenu nastroje LINUXCNC aby prepsal tabulku nastroju M65 P9 (uvolnit bit aby ladder mohl otacet zasobnikem) o endsub M2