
Subik do próbkowania mogę wystawić.
Kod: Zaznacz cały
o<touchoff> sub
(#1 pierce height, #2 pierce delay, #3 cut height)
F2000
G38.2 Z-5 (Probe to find the surface)
/G91
G1 Z5 (Raise up to Z0)
/G90
/G92 Z0 (Set Z0)
G1 Z5
M3 S1
/M66 P0 L1 Q1 (Wait for Arc OK from Torch)
G4 P3 (Pause for pierce delay)
/F1000
Z5 (goto cut height)
o<touchoff> endsub
M2
Kod: Zaznacz cały
( --------------------------------- )
( W Y P A L A N I E O T W O R U )
( )
( --------------------------------- )
( Kamar )
( Time-stamp: <2013-01-07 15:01> )
( --------------------------------- )
(info: Wypalanie otworu)
o<pl_otwor> sub
#<wys_przepalania> = #1 (=3 Wysokość przepalania)
#<czas_przepalania> = #2 (=3 Czas przepalania)
#<wys_palenia> = #3 (=3 Wysokość palenia)
#<sr_otworu> = #4 (=20 śr. otworu)
#<pr_wpalenia> =#5 (=4 promień wpalenia)
#<rodzaj> = #6 (=0 [] 0 - otwór, 1 - koło)
#<predkosc> = #7 (=200 Prędkość)
( ------------------------------ )
#<promien> = [#<sr_otworu> / 2] ( promien otworu )
g17 G21 G61
(g0 x0 y0)
o100 if[#<rodzaj> eq 0]
(otwór)
g0 X[[-1 * #<promien>] + #<pr_wpalenia>] Y[#<pr_wpalenia>]
o<touchoff> call [#<wys_przepalania>] [#<czas_przepalania>] [#<wys_przepalania>]
( G3 X0 Y0 I0 J[-1 * [#<pr_wpalenia>]])
G3 X[-1 * #<promien>] Y0 I0 J[-1 * #<pr_wpalenia>]
G3 X[-1 * #<promien>] Y0 I#<promien> J0 F#<predkosc>
G3 X[[-1 * #<promien>] + #<pr_wpalenia>] Y[-1 * #<pr_wpalenia>] I#<pr_wpalenia> J0
(G2 X0 Y0 I#<promien> J0 F#<predkosc>)
o100 else
(koło)
g0 X[-1 * [#<promien> + #<pr_wpalenia>]] Y[#<pr_wpalenia>]
o<touchoff> call [#<wys_przepalania>] [#<czas_przepalania>] [#<wys_przepalania>]
G2 X[-1 * #<promien>] Y0 I0 J[-1 * #<pr_wpalenia>]
G2 X[-1 * #<promien>] Y0 I#<promien> J0 F#<predkosc>
G2 X[-1 * [#<promien> + #<pr_wpalenia>]] Y[-1 * #<pr_wpalenia>] I[-1 * #<pr_wpalenia>] J0
(G2 X0 Y0 I0 J[-1 * [#<promien> / 4]])
(G3 X0 Y0 I#<promien> J0 F#<predkosc>)
o100 endif
m5
o<pl_otwor> endsub
Kod: Zaznacz cały
o<touchoff> sub
(#1 pierce height, #2 pierce delay, #3 cut height)
#<arc-fails> = 0
o100 do
M9
G38.2 Z-100 F2000 (Probe to find the surface)
G91
G1 Z7 (Raise up to Z0)
G90
G92 Z0 (Set Z0)
G1 Z#1
M3 S1 (Fire torch)
G4 P#2
G1 Z#3 (Raise to pierce height)
/ M66 P0 L1 Q2 (Q czas testu)
/ o200 if [#5399 EQ -1] (Check to see if torch failed to fire)
/ (MSG, Blad palnika)
/ M5
/ #<arc-fails> = [#<arc-fails> + 1]
/ o300 if [#<arc-fails> GT 3.0000] (Check if torch has failed 4 times in a row)
/ G38.2 Z100 F2000 (raise torch high enough to change consumables)
/ G91
/ G1 Z-10 (Raise up to Z0)
/ G90
/ #<arc-fails> = 0 (reset arc failure counter)
/ (MSG, Sprawdz palnik)
/ M1 (pause)
/ o300 endif
/ o200 endif
/o100 while [[#5399 EQ -1]]
G4 P#2 (Pause for pierce delay)
o<touchoff> endsub
M2
zakładając że pin krańcówki NC zwartej z masą jest wpięty w port 13?net probe parport.0.pin-13-in-not => motion.probe-input