( Procedure for Find end swithcers & move in the middle )

( #5431...#5436 - Working Area in Machine coordinates )
( #5021...#5026 - Current Machine position registers  )
( #5451...#5459 - After-Home position )

M101


(debug #5424)
(debug #5425)
(debug #5454)
(debug #5455)


G10 L80 P5521 Q1
G10 L80 P5525 Q1

;#10= 9 ( -A axis sensor )
;#11= 1 ( +A axis sensor )
;#12= 6 ( -B axis sensor )
;#13= 7 ( +B axis sensor )


#10= 1 ( -A axis sensor )
#11= 9 ( +A axis sensor )

#12= 0 ( -B axis sensor )
#13= 10 ( +B axis sensor )

#20=120 ( A,B axes speed)
#21=5 (Slow speed)

(1st part A-)
M88 P#10 L0 ( smooth stop if sensor pressed )
G91 G0 A-200 F#20
G04 P0.1

M89 P#10 L1 ( exact stop if sensor released )
G91 G0 A10 F#21
G04 P0.5

G10 L81 P100 Q5024

(2nd part A+)
M88 P#11 L0 ( smooth stop if sensor pressed )
G91 G0 A200 F#20
G04 P0.1

M89 P#11 L1 ( exact stop if sensor released )
G91 G0 A-10 F#21
G04 P0.2


G10 L81 P101 Q5024

G10 L81 P102 Q100
G10 L190 P102 Q101 (L180 - add reg, L181 - sub reg   #100=#100+#101 )
G10 L183 P102 Q2   (L182 - mul value, L183 - div value   #102=#102/2    )

G28.9 A102 F60




(3rd part B-)
M88 P#12 L0 ( smooth stop if sensor pressed )
G91 G0 B-200 F#20
G04 P0.1

M89 P#12 L1 ( exact stop if sensor released )
G91 G0 B10 F#21
G04 P0.2

G10 L81 P100 Q5025

(4th part B+)
M88 P#13 L0 ( smooth stop if sensor pressed )
G91 G0 B200 F#20
G04 P0.1

M89 P#13 L1 ( exact stop if sensor released )
G91 G0 B-10 F#21
G04 P0.5

G10 L81 P101 Q5025

G10 L81 P102 Q100
G10 L190 P102 Q101 (L180 - add reg, L181 - sub reg   #100=#100+#101 )
G10 L183 P102 Q2   (L182 - mul value, L183 - div value   #102=#102/2    )

G28.9 B102 F60

G10 L80 P5521 Q0
G10 L80 P5525 Q0

(restore Home-After position for A&B)
G90 G10 L70 P0 A#5454 B#5455
G90 G10 L70 P1 A#5454 B#5455
G4P1.0 (pause for any case)

(move to final vertical position)
G90 G0 A0 B0 F10

M102

