Subroutine met L commando

Alle vragen die betrekking hebben over Mach cnc controllers

Moderator: Moderators

Plaats reactie
Gebruikersavatar
DjPablo
Berichten: 26
Lid geworden op: 11 okt 2017 21:04
Locatie: Waalwijk

Subroutine met L commando

Bericht door DjPablo » 21 mar 2018 15:00

Hallo forum leden,

Ik weet niet of ik in de goede topic zit hier, maar heb misschien voor anderen hier een leuk stukje code die herhaalt moet worden zonder macro.

Ik was bezig om een sleuf in een houten plaat te maken waarin een plexiplaat van 3mm dik past. Echter om in een keer in een houten plaat van 10mm dik te frezen brak mijn freesje....
Nu kon ik natuurlijk het proces herhalen en telkens de frees diepte (z-positie) aanpassen via edit, maar dat is best lastig en wederom kans dat het fout gaat.
Na lang zoeken heb ik iets gevonden waarbij ik nu de posities van x-, y- en z- waarde kan aanpassen.
Ik werk met parameters die je van te voren in kunt stellen voor stap diepte van de Z-positie, begin en eind positie van x en y positie.
T1 is bij mij een frees van 3mm doorsnede.
P1001 roept de subroutine o1001 aan.

Let op! Bij mij is een negatieve waarde voor de z-as naar boven en een positieve waarde voor z naar beneden. Als dit bij jou andersom is pas dit aan.

Mijn lastigste variabel was parameter 7, in eerste instantie deed ik de regel 'M98 P1001' het aantal maal kopieren om de juiste diepte , afhankelijk van parameter 6 te bepalen, maar ook dat kan net een regel teveel of te weinig opleveren.
Na lang zoeken en niet gevonden ben ik met de L-waarde gaan spelen. Maar ja in handleidingen en op internet niets gevonden maar uiteindelijk zelf gevonden door de L waarde achter de P waarde te geven en het werkt.
Ik gebruik Mach3 en deze code werkt bij mij op een CNC2015T machine.
Indien er vragen zijn of op of aanmerkingen hoor ik het graag, ik hoop in ieder geval anderen te kunnen helpen die ook bezig zijn/waren om een bepaalde cyclus te herhalen.

De code:
(Sleuf frezen)
G21 F600 G90 T1
(z-as 4 mm boven werkstuk)
G01 Z-4
(Parameter 5 )
(absoluut niet veranderen! Z-as start positie)
#5=0.0

(Vanaf hier parameters aanpassen)
(Verander parameter 1)
( beginpositie van de sleuf X-as)
#1=0
(Verander parameter 2)
( eind positie van de sleuf X-as)
#2=190
(Verander parameter 3)
( beginpositie van de sleuf Y-as)
#3=0
(Verander parameter 4)
( eind positie van de sleuf Y-as)
#4=0
(Verander parameter 6)
( Stap diepte in mm per run van de sleuf Z-as)
#6=1
(Verander parameter 7)
(Bepaal hoe vaak er gefreest moet worden)
(Per cyclus is het een #6 in mm dieper)
(Stel we moeten 10mm diep en #6 is 1mm, dan #7=10)
#7=5
M0 (Druk op cyclus start om te beginnen)

(Hieronder niets veranderen/aanpassen)
M98 P1001 L#7
Z-4
G00 X0 Y0
M30

(Begin subroutine)
O1001
#5=[#5+#6]
G01 X#1 Y#3
Z#5
X#2 Y#4
X#1 Y#3
(Eventueel na elke run even stoppen)
(Indien niet nodig zet de comment tekens)
( om het onderstaand commando 'M0')
M0
M99
(Eind Sub routine)
Een dag zonder Muziek is een verloren dag

Plaats reactie