Programmeergids g-codes type a. G-code. Opbouw van een besturingsprogramma voor een CNC-machine

Bij het nastreven van krachtige postprocessors - CAM-toepassingen, merken machine-operators geen goedkoop, toegankelijk en gemakkelijk te gebruiken en te leren softwareproduct op. Op alle forums zijn er veel vragen voor slimme goeroes: hoe ze de instellingen kunnen begrijpen universele programma's, het internet afspeurend naar gehackte kopieën dure programma's, om de een of andere reden denken we niet dat het gemakkelijker is om een ​​goedkoop softwareproduct aan te schaffen en het eerlijk en legaal, en wat belangrijk is – en zeer effectief, te gebruiken op uw apparatuur.

Thuishobby en zelfgemaakte of retrofit CNC-machines of bouwmachines worden nu steeds wijdverspreider. Met het besturingsprogramma is meestal alles duidelijk - het is MACH, er zijn vrijwel geen alternatieven. En met de keuze voor een postprocessor heeft de thuismaster doorgaans problemen.

Overweeg om een ​​CNC-machine te gebruiken om een ​​eenvoudig bas-reliëf te maken.

Voordelige G-code-oplossing voor dit doel - eenvoudig en handig programma Bmp2Cnc.

Bmp2Cnc creëert een G-code besturingsprogramma (G-code programmeur) van een halftoonbeeld. Je kunt ook uploaden naar het programma kleurenfoto: het is mogelijk om een ​​kleurenafbeelding om te zetten in een halftoonafbeelding, maar hier gebruiken we een kant-en-klare zwart-witafbeelding als voorbeeld:

Laten we stap voor stap bekijken hoe u met het programma kunt werken.

Dus, upload de afbeelding naar het programma. Verander de grootte van de afbeelding naar een grootte die overeenkomt met de grootte van het toekomstige bas-reliëf. Voer de waarde 100 mm in het vak “Breedte” in en als er een vogel in het onderstaande selectievakje staat, verandert de hoogte van de afbeelding met dezelfde schaal:

Kies vervolgens nul. De eenvoudigste manier is om de linkerbenedenhoek van de afbeelding te nemen als de oorsprong van de UE-coördinaten. Waarom? Het gemak ligt in het feit dat de afmetingen van het bas-reliëf in de toekomst duidelijker zullen worden weergegeven in het Mach3-besturingsprogramma, en dat het gemakkelijker zal zijn om het besturingsprogramma verder te manipuleren - het onderdeel te schalen, in een lus te plaatsen, d.w.z. meerdere identieke behandelingen uitvoeren met één besturingsprogramma op één werkstuk, enzovoort:

Het meest interessant punt. Nu zullen we de details in volume zien. In het gedeelte "Diepte" stellen we de diepte in voor de witte en zwarte kleuren van de afbeelding. Voor ons bas-reliëf van 100 bij 100 stelt u eerst de diepte voor de donkerste zwarttint in op 10 mm en klikt u op de knop 'Toepassen'. Een seconde later zien we het resulterende reliëf in het grafische visualisatievenster:

Meer volume nodig? Stel de diepte in 15 mm. Nu ziet het onderdeel er behoorlijk volumineus uit:

Selecteer in het volgende bmp2cnc-dialoogvenster de postprocessor die geschikt is voor ons systeem - Mach2-3 in millimeters en p Laten we verder gaan met het kiezen van een hulpmiddel:

Een geschikte snijder selecteren met een scherpe neus, die ons onderdeel heel netjes zal verwerken:

Gereedschapsdiameter kiezen- frezen en parallelle passages, laat u niet meeslepen en stel te hoge parameters in - anders duurt de verwerking uren of zelfs dagen! Hier is het beter om een ​​compromis te sluiten, laat het onderdeel uiteindelijk een beetje ruw blijken te zijn, je zult het hoe dan ook moeten schuren (aangezien de originele foto van lage kwaliteit was), maar de machine zal de verwerking veel sneller uitvoeren; :

Het aantal dieptepassages kan op elk gewenst getal worden ingesteld, afhankelijk van de hardheid van het materiaal, de kwaliteit van het gereedschap, enz.

Hier in de zesde dialoog van het programma is er een heel nuttige functie, dat overigens “met moeite” wordt geïmplementeerd in andere eerbiedwaardige programma’s. Met één druk op de knop kunt u de vlakken afsnijden die niet nodig zijn voor de verwerking, waardoor de verwerkingstijd aanzienlijk wordt verkort. We hebben het lagere vlak afgesneden - en dat van ons het model neemt zijn definitieve vorm aan:

Klik op de knop "Berekenen".- en we zien de resulterende verwerkingstrajecten. In een apart venster staat een kant-en-klaar besturingsprogramma:

Vervolgens kunt u voer een simulatie van de verwerking uit. Een geanimeerd snijgereedschap op het programmascherm beweegt langs de trajecten die in Bmp2Cnc zijn gemaakt, waardoor we een uitstekende visualisatie krijgen van de werking van de machine:

Dat is het. Het G-code NC-bestand kan naar de machine worden verzonden en de resultaten van het werk kunnen worden opgeslagen als een Bmp2Cnc-project voor latere toegang en wijzigingen, of als een Stl- of Dxf-model.

Het voltooide G-codeprogramma wordt in Mach3 geladen:

Goedemiddag, beste lezers!

Nadat ik het vorige artikel had geschreven, kreeg ik vragen over G-CODE.
Ik besloot een bericht te schrijven over de basisprincipes van G-CODE.

En dus laten we beginnen...

Het is geen geheim dat onze 3D-printer een eenvoudige CNC-machine is die eenvoudigweg operatoropdrachten uitvoert.

Zodat de drukker en ik elkaar kunnen begrijpen, slimme mensen begin jaren zestig werd een speciale taal uitgevonden, genaamd "G-CODE" (G-code).

Een programma geschreven met G-code heeft een rigide structuur.
Alle besturingsopdrachten worden gecombineerd in personeel- bestaande uit een of meer commando's.
Het frame eindigt met een regelinvoerteken (CR/LF).
De volgorde van de commando's in het frame is niet strikt gespecificeerd, maar traditioneel wordt aangenomen dat eerst de voorbereidende commando's worden aangegeven, daarna de bewegingscommando's en vervolgens de selectie van verwerkingsmodi en procescommando's.

Kortom, onze pc stuurt via USB eenvoudigweg opdrachten naar de printerpoort (microcontroller), en de printer voert ze zonder aarzeling uit.

Als ik wat vooruitkijk, zal ik zeggen dat de G-code voor een printer op sommige plaatsen verschilt van de gebruikelijke G-code. Sommige commando's zijn aangepast aan de behoeften van de printer, sommige zijn verwijderd, sommige worden helemaal niet gebruikt, maar over het algemeen lijkt alles erg op elkaar.

De beschrijving van de opdrachten wordt gemaakt voor de MARLIN-firmware en werkt mogelijk ook op andere firmwares.
Het meest alleen de meest elementaire commando's (minimaal werkend), op zoek naar exotische commando's, kun je de link volgen.

De teams zelf zijn verdeeld in groepen:
G- Voorbereidende (hoofd)teams;
M- Hulp(technologische) teams.

Deze opdrachten hebben parameters.
X- Coördinaat van het trajectpunt langs de X-as [ G0 X100 Y0 Z0]
Y- Coördinaat van het trajectpunt langs de Y-as [ G0 X0 Y100 Z0]
Z- Coördinaat van het trajectpunt langs de Z-as [ G0 X0 Y0 Z100]
E- Coördinaat van het kunststof extrusiepunt [ G1 E100 F100]
P- Commandoparameter [ M300 S5000 P280]
S- Commandoparameter [ G04 S15]
F- Commandoparameter, voeding (snelheid) [ G1 Y10 X10 F1000]

G - opdrachten
G0 - Stationair, zonder gereedschapbediening [ G0X10]
G1- Gecoördineerde beweging langs de X Y Z E-assen [ G1 X 10]
G4- Pauze in seconden [ G4 S15]
G28- Home-commando - parkeer het hoofd [ G28 Y0 X0 Z0]
G90- Gebruik absolute coördinaten [ G90]
G91- Gebruik relatieve coördinaten [ G91]
G92- Stroom instellen gegeven positie [G92]

Uitleg:
Relatieve coördinaten- dit zijn de coördinaten ten opzichte van huidige situatie hoofden.
Als de kop zich bijvoorbeeld in positie X10 Y10 bevindt, dan wanneer het commando wordt gegeven G91
G1 X10 F1000
, zal de kop 10 mm langs de X-as verschuiven met een snelheid van 1000.
Deze opdracht kan worden uitgevoerd veel keer, totdat de “software”-limiet in de firmware is bereikt.

Absolute coördinaten- dit zijn coördinaten die strikt verband houden met het werkgebied.
Bij het uitvoeren van de opdracht G90 G1 X10 F1000- de kop beweegt naar coördinaat X10 met een snelheid van 1000.
De opdracht wordt alleen uitgevoerd een eenmaal.

Regelmatige commando's
M0- Pauzeer en wacht tot de knop wordt ingedrukt LCD-schermen(werkt als de parameter ULTRA_LCD is ingesteld in de firmware) [ G0 X10 Y10 Z10 M0]
M17- Breng stroom aan op de motoren (de motoren draaien niet met de hand)
M18- Stroom van de motoren verwijderen (motoren kunnen met de hand worden gedraaid, vergelijkbaar met M84)
M42- ARDUINO MEGA 2560 contactbeheer [ M42 P4 S255]
M80- Schakel de stroom in, alleen ATX - voeding
M81- Schakel de stroom uit, alleen voor ATX-voeding
M84- Schakel alle assen uit (motoren na inactiviteit) [ M84 S10]
M112- Noodstop
M114- Ontvang huidige coördinaten
M115- Haal de firmwareversie op
M117- Schrijf een bericht op het scherm [ M117 Hallo wereld]
M119- Krijg de status van eindschakelaars
M300- Speel geluid af [ M300 S5000 P280]

SD-kaartopdrachten
M20- Lees SD-kaart (lees lijst met bestanden)
M21- Initialiseer de SD-kaart
M22- Gebruik SD-kaart
M23- Selecteer een bestand van de SD-kaart [ M23 bestandsnaam.gcode]
M24- Start/hervat het afdrukken vanaf de SD-kaart
M25- Pauzeer het afdrukken vanaf de SD-kaart
M26- Stel de positie van de SD-kaart in bytes in [ M 26 S 12345]
M27- Ontdek de afdrukstatus van de SD-kaart
M28- Schrijf bestand naar SD-kaart [ M 28 bestandsnaam. gcode]
M29- Voltooi het schrijven van het bestand naar de SD-kaart
M30- Verwijder bestand van SD-kaart [ M30 bestandsnaam. gcode]
M31- Krijg de waarde van hoeveel tijd er is verstreken sinds de laatste M109
M32- Selecteer een bestand op de SD-kaart en begin met afdrukken [ M32/pad/bestandsnaam#]
M928- Inloggen op SD-kaart [ M 928 bestandsnaam. gcode]

Extruder
M82- Stel de extruder in op een absoluut coördinatensysteem
M83- Stel de extruder in op een relatief coördinatensysteem
M104- Wachten tot de extruder is opgewarmd tot een bepaalde temperatuur [ M104 S190]
M105- Krijg de huidige extrudertemperatuur [ M105 S2]
M106- Schakel de onderdeelblaasventilator in [ M106 S127] - vermogen 50%
M107- De ventilator uitschakelen die het onderdeel blaast [ M 107]
M109- Verwarm de extruder en houd de temperatuur vast [ M109 S215]

Tafel
M140- Tafeltemperatuur instellen [ M140 S65]
M190- Verwarm de tafel en handhaaf de temperatuur [ M190 S60]

In Pronterface kunt u de antwoordmodus in het menu inschakelen Instellingen/foutopsporingscommunicatie, schrijft het programma alle antwoorden van de printer.


U kunt aan het begin en einde G-code aan het bestand toevoegen in slicers (Slic3r en Cura).

Of open het G-codebestand in Kladblok en schrijf alles met de hand. =)

M190 S60- zet de verwarming van de tafel aan en wacht tot deze opwarmt tot een temperatuur van 60 graden
M109 S210- zet de sproeierverwarming aan en wacht tot deze opwarmt tot een temperatuur van 210 graden

G21- stelt het metrische coördinatensysteem in
G90- stelt het absolute coördinatensysteem in
M82- stelt het absolute coördinatensysteem voor de extruder in
M107- schakel het blazen van het onderdeel uit
M300 S5000 P280piep
G28 X0 Y0- Home X Y-opdracht
G28 Z0- Thuis Z-team
G1 X100 Y100 Z5 F1000- Centreer het mondstuk ten opzichte van de tafel
G92 E0- reset de hoeveelheid geëxtrudeerd plastic
G1 F300 E4- 4 mm kunststof extruderen met een snelheid van 300 mm

M117 Afdrukken- geeft een bericht weer op het scherm

M106 S125- schakel het blazen van het onderdeel in met een snelheid van 50%

G1 Z0- laat het mondstuk zakken tot 0 mm
G1 X96.11 Y110.92 E87.55
G1 Z0,2- breng het mondstuk 0,2 mm omhoog
G1 X96.11 Y111.00 E89.60- ga naar de coördinaten en knijp het plastic eruit
M140 S50- wijzig de tafeltemperatuur
.....
G1 Z4.8- verhoog het mondstuk met 4,8 mm
G1 X96.11 Y110.92 E87.55- ga naar de coördinaten en knijp het plastic eruit
G1 Z5- breng het mondstuk 5 mm omhoog
G1 X96.11 Y111.00 E89.60- ga naar de coördinaten en knijp het plastic eruit

G91- stelt het relatieve coördinatensysteem in
G1 E-5 F200- zuiging door extruder van 5 mm staaf

M104 S0- het uitschakelen van de verwarming van de extruder
M140 S0- tafelverwarming uitschakelen
M107- schakel het blazen van het onderdeel uit
M84- schakel de stappenmotoren uit
M300 S5000 P280– geluidssignaal

Bedankt voor uw aandacht!

G-code- naam van de programmeertaal voor computernumerieke besturingssystemen (CNC).

Het besturingsprogramma is conventioneel tekstbestand en bestaat uit een reeks blokken en begint meestal met het symbool programmastart (%) en eindigt met M02 of M30.

Elk programmablok vertegenwoordigt één verwerkingsstap en kan (afhankelijk van de CNC) beginnen met een bloknummer (N1...N10, enz.) en eindigen met het blokeinde-symbool (;).

Kader controle programma bestaat uit uitspraken in woordvorm (G91, M30, X10., etc.). Een woord bestaat uit een symbool (adres) en een getal dat een rekenkundige waarde vertegenwoordigt.

Adressen X, Y, Z, U, V, W, P, Q, R, A, B, C, D, E zijn dimensionale bewegingen, gebruikt om de coördinaatassen aan te duiden waarlangs bewegingen worden uitgevoerd.

Woorden die beweging beschrijven kunnen een (+) of (-) teken hebben. Als er geen teken is, wordt de verplaatsing als positief beschouwd.

Adressen I, J, K betekenen interpolatieparameters.

G - voorbereidende functie.

M - hulpfunctie.

S - hoofdbewegingsfunctie.

F - invoerfunctie.

T, D, H - gereedschapsfuncties.

Afhankelijk van de specifieke CNC kunnen symbolen andere betekenissen aannemen.

Voorbereidende functies (G-codes)

G00- snelle positionering.

De G00-functie wordt gebruikt om een ​​snelle beweging van het snijgereedschap naar een bewerkingspositie of naar een veilige positie uit te voeren. Er wordt nooit ijlgang gebruikt om bewerkingen uit te voeren vanwege de bewegingssnelheid uitvoerend orgaan de machine is erg hoog. Code G00 wordt geannuleerd door codes: G01, G02, G03.

G01- lineaire interpolatie.

Functie G01 wordt gebruikt om lineaire bewegingen uit te voeren met een bepaalde snelheid (F). Bij het programmeren worden de coördinaten van het eindpunt opgegeven in absolute waarden(G90) of stappen (G91) met bijbehorende bewegingsadressen (bijvoorbeeld X, Y, Z). Code G01 wordt geannuleerd door codes: G00, G02, G03.

G02- circulaire interpolatie met de klok mee.

De GO2-functie is ontworpen om het gereedschap met een bepaalde snelheid (F) met de klok mee langs een boog (cirkel) te bewegen. Tijdens het programmeren worden de coördinaten van het eindpunt in absolute waarden (G90) of incrementele waarden (G91) met de bijbehorende bewegingsadressen (bijvoorbeeld X, Y, Z) vastgelegd.

Code G02 wordt geannuleerd door codes: G00, G01, G03.

G03- circulaire interpolatie tegen de klok in.

De GO3-functie is ontworpen om het gereedschap langs een boog (cirkel) tegen de klok in te bewegen met een gespecificeerde snelheid (F). Tijdens het programmeren worden de coördinaten van het eindpunt in absolute waarden (G90) of incrementele waarden (G91) met de bijbehorende bewegingsadressen (bijvoorbeeld X, Y, Z) vastgelegd.

De interpolatieparameters I, J, K, die de coördinaten van het middelpunt van de cirkelboog in het geselecteerde vlak bepalen, worden in stappen geprogrammeerd vanaf het startpunt naar het middelpunt van de cirkel, in richtingen evenwijdig aan de X, Y, Z assen, respectievelijk.

Code G03 wordt geannuleerd door codes: G00, G01, G02.

G04- pauzeer.

Functie G04 - commando om houdtijd mee uit te voeren gegeven tijd. Deze code wordt samen met een X- of P-adres geprogrammeerd, dat de lengte van de verblijftijd specificeert. Normaal gesproken bedraagt ​​deze tijd 0,001 tot 99999,999 seconden. Bijvoorbeeld G04 X2.5 - pauze 2,5 seconden, G04 P1000 - pauze 1 seconde.

G17- selectie van het XY-vlak.

De G17-code is bedoeld om het XY-vlak als werkvlak te selecteren. Het XY-vlak wordt dominant bij gebruik van circulaire interpolatie, coördinatensysteemrotatie en ingeplande boorcycli.

G18- selectie van het XZ-vlak.

De G18-code is bedoeld om het XZ-vlak als werkvlak te selecteren. Het XZ-vlak wordt dominant bij gebruik van circulaire interpolatie, coördinatensysteemrotatie en ingeplande boorcycli.

G19- selectie van het YZ-vlak.

De G19-code is bedoeld om het YZ-vlak als werkvlak te selecteren. Het YZ-vlak wordt dominant bij gebruik van circulaire interpolatie, coördinatensysteemrotatie en ingeplande boorcycli.

G20- invoer van inch-gegevens.

Functie G20 activeert de inch-gegevensmodus.

G21- invoer van metrische gegevens.

Functie G21 activeert de metrische gegevensmodus.

G40- Gereedschapsradiuscompensatie annuleren.

Functie G40 annuleert actie automatische correctie op gereedschapsradius G41 en G42.

G41- linker gereedschapsradiuscompensatie.

De G41-functie wordt gebruikt om automatische compensatie mogelijk te maken voor de straal van het gereedschap dat zich links van het bewerkte oppervlak bevindt (gezien vanaf het gereedschap in de bewegingsrichting ten opzichte van het werkstuk). Programmeerbaar samen met de gereedschapsfunctie (D).

G42- rechter gereedschapsradiuscompensatie.

De G42-functie wordt gebruikt om automatische compensatie mogelijk te maken voor de straal van een gereedschap dat zich rechts van het te bewerken oppervlak bevindt (gezien vanaf het gereedschap in de bewegingsrichting ten opzichte van het werkstuk). Programmeerbaar samen met de gereedschapsfunctie (D).

G43- correctie voor gereedschapspositie.

Functie G43 wordt gebruikt voor de gereedschapslengtecompensatie. Programmeerbaar samen met de gereedschapsfunctie (H).

G52 - lokaal systeem coördinaten

Met het besturingssysteem kunt u naast de standaard werkcoördinatensystemen (G54-G59) ook lokale coördinatensystemen instellen. Wanneer het machinebesturingssysteem het G52-commando uitvoert, begint de stroom werkend systeem coördinaten wordt verschoven met de waarde die is opgegeven door de X-, Y- en Z-datawoorden. De G52-code wordt automatisch geannuleerd door het G52 XO YO Z0-commando.

G54 - G59- gespecificeerde offset.

Offset van het werkcoördinatensysteem van het onderdeel ten opzichte van het machinecoördinatensysteem.

G68- rotatie van coördinaten.

Met de G68-code kunt u het coördinatensysteem over een bepaalde hoek roteren. Om een ​​rotatie uit te voeren, moet u het rotatievlak, het rotatiecentrum en de rotatiehoek opgeven. Het rotatievlak wordt ingesteld met de codes G17, G18 en G19. Het rotatiecentrum wordt ingesteld ten opzichte van het nulpunt van het actieve werkstukcoördinatensysteem (G54 - G59). De rotatiehoek wordt opgegeven met R. Bijvoorbeeld: G17 G68 X0. J0. R120.

G69- Annuleer rotatie van coördinaten.

De G69-code heeft voorrang op de G68-coördinatenrotatiemodus.

G73- snelle intermitterende boorcyclus.

De G73-cyclus is ontworpen voor het boren van gaten. De beweging tijdens de verwerking vindt plaats bij de werktoevoer met periodieke terugtrekking van het gereedschap. Beweging binnen uitgangspositie na verwerking gaat het met een versnelde voeding.

G74- linkse draadsnijcyclus.

De G74-cyclus is ontworpen voor het snijden van linkshandige schroefdraad met tap. De beweging tijdens de bewerking vindt plaats bij de werkvoeding, de spil draait in een bepaalde richting. De beweging naar de startpositie na verwerking vindt plaats op de werktoevoer met omgekeerde rotatie van de spil.

G80- het annuleren van de constante cyclus.

Een functie die elke standaardlus annuleert.

G81- standaard boorcyclus.

De G81-cyclus is ontworpen voor het centreren en boren van gaten. Beweging tijdens de verwerking vindt plaats bij het werkvoer. De beweging naar de startpositie na verwerking vindt plaats met een versnelde voeding.

G82- het vasthouden van boren.

De G82-cyclus is ontworpen voor het boren en verzinken van gaten. Beweging tijdens de bewerking vindt plaats aan de werktoevoer met een pauze aan het einde. De beweging naar de startpositie na verwerking vindt plaats met een versnelde voeding.

G83- intermitterende boorcyclus.

De G83-cyclus is ontworpen voor diepgatboren. Beweging tijdens het bewerkingsproces vindt plaats bij de werktoevoer met periodieke terugtrekking van het gereedschap in het terugtrekvlak. De beweging naar de startpositie na verwerking vindt plaats met een versnelde voeding.

G84- Draadsnijcyclus.

De G84-cyclus is ontworpen voor het tappen van schroefdraad. De beweging tijdens de bewerking vindt plaats bij de werkvoeding, de spil draait in een bepaalde richting. De beweging naar de startpositie na verwerking vindt plaats op de werktoevoer met omgekeerde rotatie van de spil.

G85- standaard boorcyclus.

De G85-cyclus is ontworpen voor het ruimen en boren van gaten. Beweging tijdens de verwerking vindt plaats bij het werkvoer. De beweging naar de startpositie na verwerking vindt plaats bij het werkvoer.

G86- boorcyclus met rotatiestop van de spil.

De G86-cyclus is ontworpen voor het boren van gaten. Beweging tijdens de verwerking vindt plaats bij het werkvoer. Aan het einde van de verwerking stopt de spil. De beweging naar de startpositie na verwerking vindt plaats met een versnelde voeding.

G87- boorcyclus met handmatige terugtrekking.

De G87-cyclus is ontworpen voor het boren van gaten. Beweging tijdens de verwerking vindt plaats bij het werkvoer. Aan het einde van de verwerking stopt de spil. De verplaatsing naar de startpositie na verwerking gebeurt handmatig.

G90- modus absolute positionering.

In de absolute positioneringsmodus G90 worden de bewegingen van de actuatoren gemaakt ten opzichte van het nulpunt van het werkcoördinatensysteem G54-G59 (er wordt geprogrammeerd waar het gereedschap moet bewegen). G90-code wordt geannuleerd met behulp van code relatieve positionering G91.

G91- relatieve positioneringsmodus.

In de relatieve (incrementele) positioneringsmodus G91 wordt de nulpositie telkens genomen als de positie van de actuator, die deze innam voordat hij naar het volgende referentiepunt ging (er wordt geprogrammeerd hoeveel het gereedschap moet bewegen). De G91-code wordt geannuleerd door de G90 absolute positioneringscode.

G94- voedingssnelheid in inches/millimeters per minuut.

Met de G94-functie wordt de opgegeven voedingssnelheid ingesteld in inches per 1 minuut (als de G20-functie actief is) of in millimeters per 1 minuut (als de G21-functie actief is). Programmeerbaar samen met de voerfunctie (F). Code G94 wordt opgeheven door code G95.

G95- voedingssnelheid in inches/millimeters per omwenteling.

Met de G95-functie wordt de opgegeven voedingssnelheid ingesteld in inches per 1 spilomwenteling (als de G20-functie actief is) of in millimeters per 1 spilomwenteling (als de G21-functie actief is). Die. Voeding F wordt gesynchroniseerd met spiltoerental S. Code G95 vervalt door code G94.

G98- terugkeren naar het oorspronkelijke vlak in een cyclus.

Wanneer een voorgeprogrammeerde machinecyclus wordt uitgevoerd in combinatie met de G98-functie, keert het gereedschap aan het einde van elke cyclus en tussen alle gaten die worden bewerkt terug naar het basisvlak. Met G99 wordt de G98-functie geannuleerd.

G99- cyclussgewijs terugkeren naar het terugtrekvlak.

Als de voorgeprogrammeerde cyclus van de machine wordt uitgevoerd in combinatie met de G99-functie, keert het gereedschap terug naar het terugtrekvlak tussen alle gaten die worden bewerkt. Met G98 wordt functie G99 geannuleerd

Voor machines met software numerieke controle er is een speciale taal. Deze taal wordt ISO 7 bit genoemd. Het G-codesysteem voor CNC is speciale elftallen voor de bediening van frezen en draaibanken met PU worden speciale parameters ingesteld in commando's. CNC-programmeren wordt onderwezen op technische hogescholen of in aanvullende opleidingen.

Wat is G-code

Het codesysteem voor draaien is a speciale groep opdrachten die worden herkend door machines met functies programma controle. Het codesysteem werd in 1960 ontwikkeld door Electronic Industries Allience en verfijnd in 1980. Sinds 1982 begon het actief te zijn in Rusland. De codetaal is opgenomen in de basisstructuur van programmeren; deze wordt voortdurend verbeterd en gewijzigd.

Wat zijn G-codes?

G-codeprogramma's worden in de vorm geschreven tekst formaat, wordt elke lijn een frame genoemd. Het frame bestaat uit een alfabetisch symbool - dit is het adres en een getal waarin de numerieke waarde wordt uitgedrukt. Codes zijn hoofd- en hulpcodes. Op basis van zo’n programma werkt een CNC-draai- en freesmachine.

Teams in groep G worden voorbereidingsteams genoemd. Ze stellen de beweging van werkelementen op de machine op een bepaalde snelheid in. Snelheid kan circulair of lineair zijn. G-code wordt ook gebruikt voor het bewerken van gaten en schroefdraad. Een andere functie is het beheren van de parameters en het coördineren van systemen van de apparatuur.

De hoofdopdrachten van het programma zijn gericht op het uitvoeren van de volgende functies:

  • G00 – G04 positioneringsfunctie;
  • G17 – G19 schakel bedrijfsparameters;
  • G40 – G44 lengte- en diametercompensatie verschillende elementen inrichting;
  • G54 – G59 schakelende coördinatensystemen;
  • G71 – functie voor het bewerken van gaten;
  • G80 – G84 draad- en boorfunctie;
  • G90 – G92 schakelt tussen absolute en relatieve coördinatensystemen.

De symbolen zijn verschillend: M voert hulpfuncties uit, een dergelijk commando is nodig om een ​​gereedschap te wisselen, een subroutine aan te roepen en de voltooiing ervan, S is een functie van de hoofdbeweging, F is een voeding, T, D, H zijn een uitdrukking van de functies van het hulpmiddel.

De betekenis van het symbool is afhankelijk van het type CNC-machine. Het programmeren gebeurt op basis van deze codes.

Voorbereidende functies

Voorbereidende functies in het codesysteem worden uitgedrukt door het symbool G. Elke code heeft een speciale betekenis. Alle voorbereidende opdrachten, bijvoorbeeld het selecteren van een werkvlak of het selecteren van een bewegingssnelheid, worden als eerste in het programma gespecificeerd. In de code is een specifieke functie versleuteld. Numerieke waarden parameters zijn ingesteld.

Het decoderen van de belangrijkste G-codes voor CNC

Laten we verder kijken hoe de belangrijkste G-codes voor werktuigmachines met PU worden ontcijferd.

G00

Stelt de snelheidspositionering in. Het wordt gebruikt wanneer u het snijgereedschap snel gereed moet maken om met het werk te beginnen of het in een veilige positie moet plaatsen. De versnelde versie wordt niet gebruikt bij het verwerken van onderdelen, omdat de snelheid zich ontwikkelt in dit geval, heel hoog. Deze opdracht kan worden geannuleerd met de opdracht G01, G02, G03.

G01

Vertegenwoordigt lineaire interpolatie. Een dergelijk commando is nodig om het gereedschap in een rechte lijn te verplaatsen, de snelheid wordt ingesteld door het F-symbool. De functie kan worden geannuleerd met behulp van de codes G00, G02, G03. Voorbeeld van opdrachtinvoer: G01 X20 Y150 F60.

G02

Stelt de beweging met de klok mee in, het snijgereedschap begint langs een boogvormig pad te bewegen, de snelheid wordt ingesteld door het F-symbool. Parameters in het coördinatenvlak worden ook ingesteld. Symbolen I, J, K zijn de bepalende coördinaten van de boog in het vlak. Annulering vindt plaats met de codes G00, G01, G03.

G03

Dit is een beweging tegen de klok in in een boog met een bepaalde snelheid.

G04

Stel een pauze in op het werk. De duur van de pauze wordt aangegeven door het X- of P-symbool. Normaal gesproken duurt de pauze ongeveer één seconde.

G17

Specificeert het vlak. Met behulp van de G17-code worden de XY-coördinaten geselecteerd. Deze functie is nodig voor roterende bewegingen en het boorproces.

G18

Definieert een vlak in XZ-coördinaten; dit vlak wordt het werkvlak tijdens cirkelinterpolatie, rotatiebewegingen en het boorproces.

G19

Hiermee kunt u het werkgebied in YZ-coördinaten selecteren. Deze functie is nodig voor gereedschapsbeweging bij circulaire interpolatie en een constante boorcyclus.

G20

Hiermee kunt u gegevens in inch-metingen invoeren. De functie is ontworpen om te werken met inch-metingen.

G21

Hiermee kunt u met metrische indicatoren werken. Dit is noodzakelijk bij het werken met gegevens uitgedrukt in meters.

G40

Annuleert de automatische gegespecificeerd door G41 en G42.

G41

Maakt automatische correctie mogelijk voor de straal van het gereedschap, die zich links van het werkstuk bevindt ten opzichte van de beweging ervan. Het programma bevat ook functie D.

G42

Net als code G41 is deze ontworpen om automatisch te corrigeren voor de straal rechts van het werkstuk. Het programma wordt ook ingesteld met functie D.

G43

Noodzakelijk voor het compenseren van de lengte van het gereedschap, corrigeert de positie ervan en wordt samen met de gereedschapsfunctie H ingesteld.

G52

Stelt lokale coördinaatparameters in naast de standaardparameters.

G53

Hiermee kunt u overschakelen naar het coördinatensysteem van de werkende machine.

G54–G59

Een gespecificeerde verplaatsing van het werkelement wordt uitgevoerd ten opzichte van de coördinaatparameters van de machine. Met de codes G54, G55, G56, G57, G58, G59 kunt u bepalen in welk coördinatensysteem de werkzaamheden worden uitgevoerd. Door de codes te wijzigen krijgt de programmeur de mogelijkheid om allerlei details te verwerken.

Als een coördinatensysteem is gespecificeerd met de codes G54 - G59, blijft dit van kracht totdat het wordt geannuleerd en andere parameters worden ingevoerd.

G64

Dit is een snijmodus die andere functies automatisch annuleert.

G68

Coördinaatrotatie is gespecificeerd; met deze opdracht kunt u het coördinatensysteem onder een bepaalde hoek verschuiven. Het rotatievlak, het middelpunt en de rotatiehoek worden gespecificeerd door de commando's G17, G18, G19, R. Het commando G69 annuleert deze functie.

G71

Hiermee kunt u gaten in producten maken.

G73

Dit is een functie voor het boren van gaten op hoge snelheid.

G74

Wordt gebruikt voor het snijden van linkshandige schroefdraad.

G81, G82, G83

Gebruikt voor de boorcyclus: standaard, vasthouden en intermitterend.

G85–G87

Maakt verschillende boorcycli mogelijk.

G92

Hiermee kunt u absolute positieaccumulatoren instellen.

G97

Stelt de parameters in van het geproduceerde aantal omwentelingen per minuut.

Alle codes interageren met elkaar en vormen zich aparte groep. In het programmasysteem wordt de ene functie vervangen door een andere. Een voorbeeldcodeprogramma is te vinden op internet. Codetabel moet zichtbaar zijn tijdens het programmeren.

Vereisten voor het schrijven van een programma

Programma's die op basis van G-codes voor een CNC-machine zijn geschreven, hebben een bepaalde, zeer duidelijke structuur, die uit verschillende commando's bestaat. Alle opdrachten voor het werken met de machine worden gecombineerd in groepen - frames. Het einde van een blok wordt gemarkeerd met het CR/LF-symbool, het programma eindigt helpercode M02 of M30.

Als er commentaar op een programma moet worden geplaatst, wordt dit tussen haakjes geplaatst. Bijvoorbeeld (naar het freesstartpunt gaan). Het commentaar kan direct na de code worden geplaatst, maar je kunt het ook op een aparte regel zetten.

Hetzelfde commando kan herhaaldelijk worden herhaald, een bepaald aantal keren in een bepaalde volgorde. Het programma is geschreven met basis- en hulpfuncties. Het wordt gelezen door draaibanken en freesmachines.

Het genereren van codes voor het werken aan de machine in de productie wordt uitgevoerd speciale programma's. Bij elke onderneming werkt een dergelijk systeem soepel en wordt het beheerd door de operator. Indien nodig kan elk programma onafhankelijk worden gegenereerd met behulp van speciale software die op internet kan worden gedownload.

Hiervoor is geen speciale kennis vereist; het is voldoende om er inzicht in te hebben Cartesisch systeem coördinaten, weet het fysieke hoeveelheden en definities uit de cursus geometrie. U kunt bijvoorbeeld al gebruiken kant-en-klaar programma. Om te werken heb je tabellen nodig met het decoderen van de codes.

Om de code te maken, moet je over de volgende kennis beschikken:

  • introductie van geometrische parameters en afmetingen van het werkstuk;
  • ken de parameters van de gereedschappen en apparaten die worden gebruikt om het werk uit te voeren;
  • dikte van de laag die moet worden verwijderd;
  • diepte van inbrenging van het gereedschap voor het maken van sleuven.

In de praktijk zijn dergelijke acties niet moeilijk uit te voeren. Om te begrijpen hoe het systeem werkt, kunt u een voorbeeld van schrijfopdrachten bekijken; u hebt ook een hulptabel met codes nodig.

Er zijn speciale diensten, waarmee u online programma's voor werktuigmachines kunt maken, waarop deze kunnen worden gegenereerd afgewerkt voorbeeld. Geen extraatjes software u hoeft het niet op uw computer te installeren. Het enige wat u nodig heeft is een internetverbinding. Bij het programmeren is speciale zorg vereist; als u een fout maakt bij het invoeren van een numerieke waarde, kunt u het onderdeel beschadigen of de machines kapot maken. Op deze manier gemaakte programma's kunnen worden gebruikt op draai-, frees- en plasmamachines en kunnen een grote verscheidenheid aan materialen verwerken.