Wie może krórys z kolegów jak napisać uniwersalna procedurę do cięcia okręgu z wejściem dla narzedzia (palnika)
w sumie to 2 procedury by mnie interesowały, jedna na wycinanie kółka, druga otworu

Gotowe.kamar pisze:Zamówiłem![]()
Do fajrantu ma być.
Kod: Zaznacz cały
( --------------------------------- )
( W Y P A L A N I E O T W O R U )
( )
( --------------------------------- )
( Kamar )
( Time-stamp: <2012-08-29 13:26> )
( --------------------------------- )
(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)
#<rodzaj> = #5 (=0 0 - otwór, 1 - koło)
#<predkosc> = #6 (=200 Prędkość)
( ------------------------------ )
#<promien> = [#<sr_otworu> / 2] ( promien otworu )
g17 G21 G61
g0 x0 y0
o100 if[#<rodzaj> eq 0]
(otwór)
g0 X[#<promien> / 4] Y[#<promien> / 4]
o<touchoff> call [#<wys_przepalania>] [#<czas_przepalania>] [#<wys_przepalania>]
G3 X0 Y0 I0 J[-1 * [#<promien> / 4]]
G2 X0 Y0 I#<promien> J0 F#<predkosc>
o100 else
(koło)
g0 X[-1 * [#<promien> / 4]] Y[#<promien> / 4]
o<touchoff> call [#<wys_przepalania>] [#<czas_przepalania>] [#<wys_przepalania>]
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<kolo> 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ść)
#<srednica_dyszy> = #8 (=1.1 Srednica dyszy)
( ------------------------------ )
#<promien> = [#<sr_otworu> / 2] ( promien otworu )
#<promien_dyszy> = [#<srednica_dyszy> / 2]
g17 G21 G61 G40
G10 L1 P1 R#<promien_dyszy>
T1M6 (Tool change to T1)
g0 x0 y0
o100 if[#<rodzaj> eq 0]
(otwór)
g0 X[#<pr_wpalenia>] Y[#<pr_wpalenia>+#<promien>]
o<touchoff> call [#<wys_przepalania>] [#<czas_przepalania>] [#<wys_przepalania>]
G41
G3 X0 Y#<promien> I0 J[-1 * #<pr_wpalenia>]
G3 X0 Y#<promien> I#<promien> J0 F#<predkosc>
G3 X#<pr_wpalenia> Y[#<promien>-#<pr_wpalenia>] I #<pr_wpalenia> J0
G40
o100 else
(koło)
g0 X[-1 * [#<pr_wpalenia>]] Y[#<promien>-#<pr_wpalenia>]
o<touchoff> call [#<wys_przepalania>] [#<czas_przepalania>] [#<wys_przepalania>]
G41
G3 X0 Y#<promien> I0 J#<pr_wpalenia>
G2 X0 Y#<promien> I#<promien> J0 F#<predkosc>
G3 X[-1 * #<pr_wpalenia>] Y[#<promien>+#<pr_wpalenia>] I-[#<pr_wpalenia>] J0
G40
o100 endif
m5
o<kolo> endsub
oba błędziarzejarenio pisze:Kod: Zaznacz cały
o<touchoff> call [#<wys_przepalania>] [#<czas_przepalania>][#<wys_przepalania>]