All pastes #3092657 Raw Edit

Anonymous

public unlisted text v1 · immutable
#3092657 ·published 2015-08-07 17:36 UTC
rendered paste body
G-code (line numbers of O-words should match settings-seq)

   1 
   2 o<toolchange> sub
   3 
   4 M19 R0  ;align the spindle
   5 
   6 ; only unload the tool if there is a tool in the spindle
   7 ; This assumes that the carousel is already aligned correctly. 
   8 ; It is important to unload the tool before shutting down the machine. 
   9 
  10 O100 IF [#<tool_in_spindle> GT 0]
  11     G53 G0 Z -100
  12     
  13     M64 P2 ; move arm in
  14     M66 P2 L3 Q5 ; wait for arm-in = true
  15     O104 if [#5399 LT 0]
  16         (abort, failed to move arm in)
  17     O104 endif
  18 
  19     M64 P3 ; release tool
  20     M66 P3 L3 Q2 ; wait for tool-released = true
  21     O105 if [#5399 LT 0]
  22         (abort, failed to release tool)
  23     O105 endif
  24 
  25 O100 ENDIF
  26 
  27     G53 G0 Z0
  28 
  29 O200 IF [#<selected_tool> GT 0]
  30 
  31     M65 P1 ; unlock carousel
  32     M66 P1 L4 Q1 ; wait for locked=false
  33     O106 if [#5399 LT 0]
  34         (abort, failed to unlock carousel)
  35     O106 endif
  36 
  37     M68 E0 Q#<selected_pocket> ;set the carousel to move to the right pocket
  38 
  39     M64 P0 ; start carousel
  40     G4 P2
  41     M66 P0 L3 Q60 ; wait for carousel finished
  42     O107 if [#5399 LT 0]
  43         (abort, failed to align carousel)
  44     O107 endif
  45     M65 P0; stop carousel
  46     M64 P1 ; lock carousel
  47     M66 P1 L3 Q1 ; wait for locked=true
  48     O108 if [#5399 LT 0]
  49         (abort, failed to lock carousel)
  50     O108 endif
  51 
  52     M64 P2 ; move arm in (might already be in)
  53     M66 P2 L3 Q5 ; wait for arm-in = true
  54     O109 if [#5399 LT 0]
  55         (abort, failed to move arm in)
  56     O109 endif
  57 
  58     G53 G0 Z-100 ; pick up the tool
  59 
  60 O200 ENDIF 
  61 
  62 M65 P3 ; clamp tool
  63 M66 P3 L4 Q2 ; wait for tool-released = false
  64 O110 if [#5399 LT 0]
  65     (abort, failed to clamp tool)
  66 O110 endif
  67 
  68 M65 P2 ; move arm back out
  69 M66 P4 L3 Q5 ; wait for arm-out = true
  70 O111 if [#5399 LT 0]
  71     (abort, failed to move arm in)
  72 O111 endif
  73 
  74 
  75 o<toolchange> endsub [1]
  76 
  77 
  78 M2

Log with the fix

switch- toolchange O_call 
switch- toolchange O_sub 
settings->seq 2 looking for toolchange
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- toolchange O_none 
switch- toolchange#100 O_if 
settings->seq 10 looking for toolchange#100
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
settings->seq 10 looking for toolchange#100
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- toolchange#100 O_endif 
settings->seq 25 looking for toolchange#100
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 242 sequence - 9 repeat--1
switch- toolchange#100 O_none 
switch- toolchange#200 O_if 
settings->seq 29 looking for toolchange#200
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
settings->seq 29 looking for toolchange#200
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- (null) O_none 
switch- toolchange#106 O_if 
settings->seq 32 looking for toolchange#106
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
settings->seq 32 looking for toolchange#106
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- toolchange#106 O_endif 
settings->seq 34 looking for toolchange#106
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 731 sequence - 31 repeat--1
switch- toolchange#106 O_none 
switch- (null) O_none 
switch- toolchange#107 O_if 
settings->seq 41 looking for toolchange#107
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
settings->seq 41 looking for toolchange#107
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- toolchange#107 O_endif 
settings->seq 43 looking for toolchange#107
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 978 sequence - 40 repeat--1
switch- (null) O_none 
switch- toolchange#108 O_if 
settings->seq 47 looking for toolchange#108
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
settings->seq 47 looking for toolchange#108
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- toolchange#108 O_endif 
settings->seq 49 looking for toolchange#108
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1153 sequence - 46 repeat--1
switch- toolchange#108 O_none 
switch- (null) O_none 
switch- toolchange#109 O_if 
settings->seq 53 looking for toolchange#109
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
settings->seq 53 looking for toolchange#109
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- toolchange#109 O_endif 
settings->seq 55 looking for toolchange#109
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1324 sequence - 52 repeat--1
switch- toolchange#109 O_none 
switch- toolchange#200 O_endif 
settings->seq 59 looking for toolchange#200
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 629 sequence - 28 repeat--1
switch- toolchange#200 O_none 
switch- (null) O_none 
switch- toolchange#110 O_if 
settings->seq 63 looking for toolchange#110
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
settings->seq 63 looking for toolchange#110
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- toolchange#110 O_endif 
settings->seq 65 looking for toolchange#110
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1520 sequence - 62 repeat--1
switch- toolchange#110 O_none 
switch- (null) O_none 
switch- toolchange#111 O_if 
settings->seq 69 looking for toolchange#111
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
settings->seq 69 looking for toolchange#111
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- toolchange#111 O_endif 
settings->seq 71 looking for toolchange#111
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1653 sequence - 68 repeat--1
switch- toolchange#111 O_none 
switch- toolchange#111 O_none 
switch- toolchange O_endsub 
switch- toolchange O_call 
switch- toolchange O_sub 
switch- toolchange O_none 
switch- toolchange#100 O_if 
settings->seq 10 looking for toolchange#100
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 242 sequence - 9 repeat--1
switch- (null) O_none 
switch- toolchange#104 O_if 
settings->seq 15 looking for toolchange#104
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
settings->seq 15 looking for toolchange#104
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- toolchange#104 O_endif 
settings->seq 17 looking for toolchange#104
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 366 sequence - 14 repeat--1
switch- toolchange#104 O_none 
switch- (null) O_none 
switch- toolchange#105 O_if 
settings->seq 21 looking for toolchange#105
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
settings->seq 21 looking for toolchange#105
type - (null) file - (null) offset - 1073741824 sequence - 0 repeat-0
switch- toolchange#105 O_endif 
settings->seq 23 looking for toolchange#105
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 521 sequence - 20 repeat--1
switch- toolchange#105 O_none 
switch- toolchange#100 O_endif 
settings->seq 25 looking for toolchange#100
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 242 sequence - 9 repeat--1
switch- toolchange#100 O_none 
switch- toolchange#200 O_if 
settings->seq 29 looking for toolchange#200
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 629 sequence - 28 repeat--1
switch- (null) O_none 
switch- toolchange#106 O_if 
settings->seq 32 looking for toolchange#106
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 731 sequence - 31 repeat--1
switch- toolchange#106 O_endif 
settings->seq 34 looking for toolchange#106
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 731 sequence - 31 repeat--1
switch- toolchange#106 O_none 
switch- (null) O_none 
switch- toolchange#107 O_if 
settings->seq 41 looking for toolchange#107
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 978 sequence - 40 repeat--1
switch- toolchange#107 O_endif 
settings->seq 43 looking for toolchange#107
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 978 sequence - 40 repeat--1
switch- (null) O_none 
switch- toolchange#108 O_if 
settings->seq 47 looking for toolchange#108
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1153 sequence - 46 repeat--1
switch- toolchange#108 O_endif 
settings->seq 49 looking for toolchange#108
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1153 sequence - 46 repeat--1
switch- toolchange#108 O_none 
switch- (null) O_none 
switch- toolchange#109 O_if 
settings->seq 53 looking for toolchange#109
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1324 sequence - 52 repeat--1
switch- toolchange#109 O_endif 
settings->seq 55 looking for toolchange#109
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1324 sequence - 52 repeat--1
switch- toolchange#109 O_none 
switch- toolchange#200 O_endif 
settings->seq 59 looking for toolchange#200
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 629 sequence - 28 repeat--1
switch- toolchange#200 O_none 
switch- (null) O_none 
switch- toolchange#110 O_if 
settings->seq 63 looking for toolchange#110
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1520 sequence - 62 repeat--1
switch- toolchange#110 O_endif 
settings->seq 65 looking for toolchange#110
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1520 sequence - 62 repeat--1
switch- toolchange#110 O_none 
switch- (null) O_none 
switch- toolchange#111 O_if 
settings->seq 69 looking for toolchange#111
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1653 sequence - 68 repeat--1
switch- toolchange#111 O_endif 
settings->seq 71 looking for toolchange#111
type - O_if file - /home/andypugh/linuxcnc-dev/configs/sim/axis/vismach/VMC_toolchange/toolchange.ngc offset - 1653 sequence - 68 repeat--1
switch- toolchange#111 O_none 
switch- toolchange#111 O_none 
switch- toolchange O_endsub 
Shutting down and cleaning up LinuxCNC...