Kopieer en plak onderstaande code in het bestand macro.cnc in je USBCNC directory.
Start USBCNC.
F2 (of knop reset).
F6 (of knop MDI) en toets; gosub cirkel en toets ENTER
Er gebeurt niets! dacht je.
Toets F1 (of knop Run/Pauze).
Tada, een invulschermpje.
Nu goed opletten, dit stukje code gaat ervan uit dat de bovenkant materiaal = Z0. Toets de gewenste gegevens in. De hartcoordinaten van je cirkel, de radius van je cirkel etc. Het freesje gaat lopen aan de binnenkant van de cirkel, als het freesje groot genoeg is t.o.v. de cirkel ontstaat er dus een kamertje. Ik heb dit speciaal geschreven om boutkoppen of moeren te laten verzinken. Dit komt bij mij vrij veel voor, een macro is dan handiger dan telkens een tekening te maken.
Als alle gegevens zijn ingevuld toets ENTER of o.k., de frees begint nu onmiddellijk te bewegen, eerst naar Z1 en vervolgens naar het hart van de cirkel.
Nu weer een invulschermpje ter controle van de hartcoordinaten van de cirkel, 0 = niet o.k, 1 = o.k.. Als 1 is ingetoetst begint onmiddellijk het frezen.
Code: Selecteer alles
sub cirkel
DlgMsg "Voer gegevens in bovenkant werkstuk = Z0" Xhartcirkel 50 Yhartcirkel 51 Cirkelradius 52 Freesdiameter 53 Diepte 54 Zstap 55 Feed 56
msg "Beweeg naar veilige hoogte"
G17
G61
G01 Z1
msg "Beweeg naar hart cirkel"
G01 x[#50] Y[#51] F[#56]
DlgMsg "Coordinaten o.k.? Toets 0 of 1" Jaofnee 57
If [#57 == 0]
gosub cirkel
endif
msg "Beweeg naar indaalpunt"
#58 = [#53 / 2]
#59 = [#50 + #52 - #58]
#60 = [0 - #55]
#61 = [#50 - #52 + #58]
#62 = [0 - #61]
#63 = [0 - #52 + #58]
#64 = [0 - #54]
#65 = [#52 - #58]
while [#60 >= #64]
G01 X[#59] Y[#51] F[#56]
G01 Z[#60] F20
msg "Frezen van cirkel"
G2 X[#61] Y[#51] I[#63] F[#56]
G2 X[#59] Y[#51] I[#65] F[#56]
#60 = [#60 - #55]
endwhile
G01 Z1
G01 x[#50] Y[#51] F[#56]
gosub uit
endsub
sub uit
msg "Bewerkingen klaar"
M5
M2
endsub
Het gebruik van de voorbeeldcode is voor eigen risico. Veel plezier ermee. Als je zelf al dergelijke macro's hebt staan zet ze dan in dit topic neer, dan hebben anderen er ook wat aan.