Efficiënt Custom Macro's Aanroepen via G65 Modale Commando's

Als u heeft geprogrammeerd met Custom Macro, weet u waarschijnlijk dat één manier om een Custom Macro-programma aan te roepen is om een G65-opdracht te gebruiken. Gebruikers voeren deze opdracht doorgaans in een hoofdprogramma in, specificerend het programmnummer voor de Custom Macro (met een P-woord) en een reeks letter-adres-argumenten (variabelen) om door te geven aan de Custom Macro.
Overweeg de volgende opdracht voor het aanroepen van een ronde zak-vreeskundige Custom Macro:
- N050 G65 P1000 X5.0 Y5.0 Z0 D0.5 R0.75 F5.0
X en Y specificeren de zak-middenlocatie. Z geeft het oppervlak aan waar de machine de zak zal maken. D is de diepte en R is de zak-straal. F specificeert de bewerkingsvoedsnelheid.
G65 is niet modaal. Om een andere ronde zak op een andere locatie te frezen, moet de gebruiker een andere volledige G65-opdracht opgeven (de gerelateerde argumenten wijzigend, natuurlijk). FANUC CNC's hebben echter twee G-codes voor het modaal aanroepen van een Custom Macro: G66 en G66.1. Na het instellen van een van beide, moet de programmeur G67 gebruiken om ze te annuleren.
G66
G66 roept de Custom Macro niet zelf aan; het zal alleen de lokale variabelen toewijzen die overeenkomen met de gespecificeerde letter-adres-argumenten. Overweeg deze opdrachten:
- .
- N050 G66 P1000 Z0 D0.5 R0.75 T0.5 F5.0
- N055 G00 X5.0 Y5.0
- N060 X10.0
- N065 Y10.0
- N070 X5.0
- N075 G67
- .
Regel N050 stelt lokale variabele #26 in op de waarde van Z, #7 op de waarde van D, #18 op R, #20 op T en #9 op F. Maar, opnieuw, deze regel roept niet Custom Macro O1000 aan.
In de volgende opdracht (N055), die een beweegopdracht moet zijn (meestal G00 of G01), zal de CNC naar de gecommandeerde positie bewegen en dan Custom Macro O1000 aanroepen. Lokale variabelen toegewezen in de G66-opdracht zullen beschikbaar zijn voor gebruik in de Custom Macro, maar er is geen manier om ze bij te werken na het uitvoeren van de G66-opdracht. De CNC zal doorgaan met bewegen in positie en de Custom Macro aanroepen in opvolgende beweegopdrachten totdat het de G67 (N075) opdracht bereikt.
Hier is een voorbeeld van de ronde zak Custom Macro bij gebruik van G66:
- O1001 (Custom Macro aangeroepen door G66)
- #32=#5001 (Bereik huidige X absolute positie)
- Z[#26+0.1] (Beweeg naar aanlooppositie)
- G01 Z[#26-#7] F[#9/2] (Duik in zak)
- G02 X[#32+#18-#20/2] R[[#18-#20/2]/2] F#9
- I-[#18-#20/2]
- X#32 R[[##18-#20/2]/2]
- G00 Z[#26+0.1]
- M99
G66.1
Als G66, zal een G66.1-opdracht het Custom Macro-nummer specificeren en lokale variabelen instellen op de waarde van letter-adres-argumenten. Ook als G66, moet een G67-opdracht uiteindelijk gespecificeerd worden om de modale aanroep te annuleren. Maar in tegenstelling tot G66, zal G66.1 wel de Custom Macro aanroepen. Overweeg deze opdrachten:
- .
- N050 G66.1 P1001 X5.0 Y5.0 Z0 D0.5 R0.75 T0.5 F5.0
- N055 X10.0
- N060 Y10.0
- N065 X5.0
- N070 G67
- .
Nu zal regel N050 de eerste zak machine. In elk opvolgend commando dat geen beweegopdracht is, zal de CNC de lokale variabelen resetten en de Custom Macro opnieuw aanroepen. In regel N055 wordt de waarde van lokale variabele #24 (X) 10.0. Aannemend dat de programmeur de Custom Macro correct schreef, zal een beweegopdracht in de Custom Macro het gereedschap naar deze positie verplaatsen voordat de machine begint met het maken van de zak.
Het voordeel van G66.1 over G66 is dat elk van de letter-adres-argumenten kan veranderen tijdens elk van de keren dat de gebruiker de Custom Macro aanroept. Als de diepte van de zak verandert voor de zak die N060 machineert, kan de programmeur bijvoorbeeld het letter-adres D in regel N060 opnemen.
Het maken van Custom Macro's met G66.1 is meer betrokken dan G66. Omdat de waarden van alle lokale variabelen terugkeren naar leeg bij de M99-opdracht die de Custom Macro beëindigt, moeten gebruikers deze waarden opslaan in gemeenschappelijke variabelen die niet verloren gaan totdat de stroom wordt uitgezet.
Overweeg dit Custom Macro-programma met G66.1:
- O1001 (Custom Macro aangeroepen door G66.1)
- (Waarden wijzigen voor argumenten opgenomen in de aanroep-opdracht)
- IF [#24 NE #0] THEN #100 = #24
- IF [#25 NE #0] THEN #101 = #25
- IF [#26 NE #0] THEN #102 = #26
- IF [#7 NE #0] THEN #103 = #7
- IF [#18 NE #0] THEN #104 = #18
- IF [#20 NE #0] THEN #105 = #20
- IF [#9 NE #0] THEN #106 = #9
- G00 X#100 Y#101 (Beweeg naar zak-midden)
- Z[#102+0.1] (Beweeg naar aanlooppositie)
- G01 Z[#102-#103] F[#106/2] (Duik in zak)
- G02 X[#100+#104-#105/2] R[[#104-#105/2]/2] F#106
- I-[#104-#105/2]
- X#100 R[[#104-#105/2]/2]
- G00 Z[#102+0.1]
- M99
Welke Custom Macro-opdracht Is Beter? G66 of G66.1?
Hoewel het meer programmeerwerk vereist, biedt G66.1 meer flexibiliteit dan G66. Namelijk, de programmeur kan elk argument in elk van de opdrachten tussen de G66.1 en de G67-opdracht wijzigen. In ons voorbeeld betekent dit de X/Y-positie, straal, diepte, Z-oppervlak-locatie of voedsnelheid van de zak. In deze zin gedraagt een Custom Macro aangeroepen met G66.1 zich bijna precies als elk gat-bewerkings-gecanned-cycli, zoals G81.
Aan de andere kant, als u zeker bent dat er geen behoefte zal zijn om dingen te wijzigen na het specificeren van de initiële set argumenten, kan G66 meer geschikt zijn voor uw toepassing, aangezien G66 zo veel gemakkelijker te gebruiken is.
Industrieel materiaal
- Leiden door luisteren: Hoe 'Vertel me meer' vertrouwen en inzicht bouwt
- Precisie CNC-bewerking voor Maatwerkonderdelen – Snel, Nauwkeurig, Op Maat
- Versterk uw merk met custom gelaser-graveerde cadeaus
- Eigen G81 Boorcyclus Maken met Fanuc Macro en G66 Modale Roep
- Nieuwe Alpha X-serie draaibanken met aangepaste besturing voor superieure prestaties
- Top 5 Voordelen van Maatmetaal Fabricage
- Precisie en Winst Ontgrendelen met Maatwerk Freesoplossingen
- Maatgewerkte bewerking uitgelegd: wanneer en waarom u erbij moet zijn
- MarquipWardUnited Koopt Custom, Zware Summit Draaibank
- Essentiële MATLAB Commando's voor Efficiënte Berekening
- Python-custom exceptions: een praktische gids