Code: Selecteer alles
M6 T2
;M3 S1000
#1000=25 ; Veilige Hoogte ijlgang
#1001=1 ; Start bewerkings hoogte
#1010=600 ; F in mm per Minuut
#100=50 ; X coordinaat van Spiraal
#101=50 ; Y coordinaat van Spiraal
#102 = 1.8 ; R Radius van Spiraal
#104=0 ; Hoogte vanaf
#105=-3.5 ; Hoogte naar
#106=0.5 ; Stap grote
#107 = 45
#108 = 21
#109 = 3.9
#110 = 36
gosub Verzink
M30
Sub Verzink
;=============================================================================
; Maak een rond gat of kamer doormiddel van een spiraal vormige beweging
;
; Gebruikte Variabele
;# 100 ; X coordinaat van Spiraal
;# 101 ; Y coordinaat van Spiraal
;# 102 ; R Begin Radius van Verzink kegel
;# 104 ; Hoogte vanaf
;# 105 ; Hoogte naar
;# 106 ; Stap grote
;# 107 ; Hoek van verzink kegel
;# 108 ; Aantal Stappen
;# 109 ; Eind Radius Van Verzink kegel
;# 110 ; Cirkel hoek verdeling
;=============================================
; Bereken lokale waardes
;=============================================
#260 = [[#109 - #102]/#108] ; Per stap wordt de spiraal #260 groter
#261 = tan[#107] ; De tangens van de kegel hoek
;=============================================
;G00 x 50 y 61 Z 0
;g02 x 50 y 39 R 11
;g02 x 50 y 61 R 11
;G00 x 50 y 60 Z 0
;G2 x 61 y 50 Z 0 R 10.5
;G2 x 50 y 38 Z 0 R 11
G00 x [50+#102-#5009] y 50 Z 0
; R = 2 groter per omwenteling delen door 12 geeft 30 graden en R wordt 2 / 12 groter
#252 = [360 / #110] ; Hoek Stap grote
#202 = [[#260/#110]*1]
#251 = [#202]
#253 = #108 ; Stap teller
While [#253>0]
#250 = [360-#252] ; Hoek teller
while [#250>=0]
#200 = [cos[#250]*[#102+#251-#5009]] ; reken X coordinaat uit
#201 = [sin[#250]*[#102+#251-#5009]] ; reken Y coordinaat uit
G02 X [50 + #200] Y [50 + #201] Z [#251 * #261] R [#102+#251-#5009]
#251 = [#251 + #202]
#250 = [#250 - #252]
endwhile
#253 = [#253 - 1]
endwhile
;#202 = [[4/24]*1]
;#200 = [cos[75]*[10+#202]] ; reken X coordinaat uit
;#201 = [sin[75]*[10+#202]] ; reken Y coordinaat uit
;
;G02 X [50 + #200] Y [50 + #201] R [10+#202]
Endsub
M30
Jack.