Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Industriële technologie

Wat is G-code-programmering?

Programmeren is een fundamentele vaardigheid voor alle soorten CNC-bewerkingen, zelfs als automatisering en nieuwe technologie programmeertaken lijken te vervangen. Elke machinist moet nog steeds begrijpen hoe zijn programma's en gereedschappen werken. Of u nu nieuw bent met CNC-programmeren en de meest voorkomende taal, G-code, of u al jaren code schrijft, CNC-codes kunnen nog steeds als een vreemde taal aanvoelen. En om het nog erger te maken, elke machine spreekt een ander dialect dat je moet begrijpen. Begrijp je wat ze zeggen? Dit zijn de basisprincipes van G-code-programmering die u moet kennen om efficiënt programma's te begrijpen en te schrijven die producten van hoge kwaliteit produceren.

Wat is G-code?

G-code is een programmeertaal voor CNC die machines instrueert waar en hoe ze zich moeten verplaatsen. De meeste machines spreken een ander "dialect" van de G-code, dus de codes variëren afhankelijk van type, merk en model. Elke machine wordt geleverd met een instructiehandleiding die de code van die specifieke machine voor een specifieke functie laat zien.

G-code staat voor "geometrische code" en volgt een variatie op het alfanumerieke patroon:

N## G## X## Y## Z## F## S## T## M##

N:Lijnnummer
G:Beweging
X:Horizontale positie
Y:Verticale positie
Z:Diepte
F:Aanvoersnelheid
S:Spilsnelheid
T:Gereedschapsselectie
M:Diverse functies
I en J:incrementeel middelpunt van een boog
R:Straal van een boog

Alfanumerieke codes worden gebruikt voor het programmeren van G-codes omdat ze een eenvoudige manier zijn om:

  1. Beweging en functie definiëren (G##)
  2. Een positie declareren (X## Y## Z##)
  3. Stel een waarde in (F## en/of S##)
  4. Selecteer een item (T##)
  5. Schakel iets aan en uit (M##), zoals koelvloeistof, spindels, indexeringsbeweging, asvergrendelingen, enz.

Bijvoorbeeld,

G01 X1 Y1 F20 T01 M03 S500

geeft over het algemeen een lineaire voedingsbeweging (G01) aan naar de gegeven XY-positie met een voedingssnelheid van 20. Het gebruikt gereedschap 1 en de spilsnelheid is 500. Diverse functies variëren van machine tot machine, dus om te weten wat de m-code betekent dat de handleiding van de machine moet worden geraadpleegd.

Machinebeweging

Alles wat een machine kan doen, is gebaseerd op drie basistypen beweging:

  1. Snelle beweging:een zo snel mogelijke lineaire beweging naar een XYZ-positie
  2. Aanvoerbeweging:een lineaire verplaatsing naar een XYZ-positie met een gedefinieerde voedingssnelheid
  3. Cirkelbeweging:een cirkelbeweging met een gedefinieerde voedingssnelheid

Elke G-code vertelt de machine welke variatie van deze basisbewegingen moet worden uitgevoerd en hoe deze moet worden uitgevoerd.

X en Y zijn cartesiaanse coördinaten voor horizontale en verticale positie, en Z staat voor de diepte van de machine. Deze alfacijfers volgen het bewegings-/functiecommando (G) om de positie van de machine aan te geven.

Vervolgens bepaalt F de voedingssnelheid (voor voedingsbewegingen of cirkelbewegingen), terwijl S de spilsnelheid bepaalt. T wordt gebruikt om een ​​gereedschap te selecteren. Andere alfacijfers die bij het programmeren worden gebruikt, zijn onder meer I, J en R, die te maken hebben met boogcentra en stralen.

Diverse codes

De regel van een programma kan ook m-codes bevatten, dit zijn over het algemeen codes die een machine vertellen hoe een actie moet worden uitgevoerd. Hoewel niet gegarandeerd hetzelfde voor alle machines, zijn enkele veelvoorkomende, standaard m-codes:

  • M00:Programmastop
  • M01:optionele programmastop
  • M02:Einde programma
  • M03:Spindel rechtsom
  • M04:Spindel tegen de klok in
  • M05:spilstop
  • M06:gereedschapswissel
  • M08:Overstromingskoelvloeistof aan
  • M09:Overstromingskoelvloeistof uit
  • M30:Einde programma/terug naar start
  • M41:Asbereik lage versnelling
  • M42:hoge versnellingsbereik spil

Modaliteit

Net zoals een lampje blijft branden totdat het wordt uitgeschakeld, blijven G-code-functies (op controllers die modaliteit ondersteunen) actief totdat ze worden gedeactiveerd door een andere code. Met andere woorden, er kan slechts één functie tegelijk actief zijn. Om een ​​functie te deactiveren, selecteert u gewoon een nieuwe functie.

Stel bijvoorbeeld dat een code begint met een lineaire snelle beweging op X1 Y1 (G00 X1 Y1). Als de volgende functie weer een lineaire snelle zet is, is het niet nodig om G00 opnieuw te schrijven. Het enige dat nodig is op de volgende regel code is de nieuwe positie (zeg, X2 Y2) omdat de modale voorwaarde hetzelfde is. Om vervolgens de functie te wijzigen in een lineaire voeding (G01), zou het programmeren van G01 op de volgende regel de lineaire snelle beweging deactiveren en de lineaire voeding activeren.

Als een voorwaarde eenmaal is ingesteld, blijft deze actief totdat deze wordt uitgeschakeld of totdat een andere voorwaarde deze overschrijft.

Voorgeprogrammeerde cycli

Voorgeprogrammeerde cycli zijn een soort modale toestand waarin alle bewegingen om een ​​gemeenschappelijke taak te voltooien in één code zijn opgenomen.

Vaak is G81 bijvoorbeeld de code voor een basisboorfunctie. In het geval van basisboren zou het gereedschap 1) naar het startpunt van de locatie van het gat moeten worden verplaatst, 2) snel naar het vrijloopvlak, 3) naar de diepte worden gevoerd en 4) snel naar buiten worden gebracht. Dat zouden vier regels code in het programma zijn die voor elke nieuwe boorpositie herhaald zouden moeten worden! Bij de voorgeprogrammeerde cyclus G81 hoeven alleen de gatenlocaties te worden opgegeven na activering. Voorgeprogrammeerde cycli zoals G81 verminderen de hoeveelheid code aanzienlijk door meerdere bewegingen in één code op te nemen.

In de G-code bestaan ​​enkele andere veelvoorkomende ingeblikte cycli voor pikboren, tegenkotteren en tappen.

Modale codegroepen staan ​​toe dat er meerdere codes op een enkele regel staan, maar er kan slechts één code van elke groep op een regel zijn. Dit komt omdat codes binnen een groep elkaar overschrijven.

De modale groepen voor G-codes zijn:

  • Groep 1 (beweging):G00, G01, G02, G03, G80, G81, G82, G84, G85, G86, G87, G88, G89
  • Groep 2 (vlakselectie – XY, YZ, ZX):G17, G18, G19
  • Groep 3 (absolute/incrementele modus):G90, G91
  • Groep 5 (aanvoermodus):G93, G94
  • Groep 6 (eenheden – inches/millimeters):G20, G21
  • Groep 7 (freesradiuscompensatie – CRC):G40, G41, G42
  • Groep 8 (offset gereedschapslengte – TLO):G43, G49
  • Groep 10 (retourmodus in voorgeprogrammeerde cycli):G98, G99
  • Groep 12 (selectie werkcoördinatensysteem – WCSS):G54, G55, G56, G57, G58, G59)

Naverwerkers

Een postprocessor is een vertaler die het berekende beeld van een toolpath op uw computerscherm vertaalt naar de taal voor machinebesturing. U kunt een postprocessor maken door te zoeken naar een voorbeeldprogramma dat nauw aansluit bij uw machine en vervolgens het programma aan te passen zodat het precies bij uw machine past.

G-code programmeertips

  • Sommige machines en controllers negeren spaties. G01 X1 Y1 Z1 kan hetzelfde betekenen als G01 X1Y1Z1.
  • De Z-as is positief in de opwaartse richting. Z1 brengt het gereedschap naar boven, terwijl Z-1 het gereedschap naar beneden brengt.
  • Het dialect van de G-code van uw machine geeft aan of een voorloopnul nodig is (zoals in G01, in tegenstelling tot G1).
  • Het dialect bepaalt ook of decimale punten altijd nodig zijn (bijv. G01 X1. Y1. Z0.5)
  • Het is een goed idee om de voorbeeldprogramma's in uw machinehandleiding uit te voeren voordat u een groot programma probeert uit te voeren. Vaak werken de voorbeeldprogramma's niet en moet u de problemen opmerken en uw eigen benchmarks instellen.

Aan de slag met G-Code

Klaar om G-code te gaan gebruiken om uw machines te programmeren? Begin met het bekijken van de unieke codeerkaart van uw machine. Onthoud dat elke machine een beetje anders is. Een Haas-code voor een functie is mogelijk niet hetzelfde als een Anilam-code voor die functie. U moet weten welke codes uw specifieke machine gebruikt voor de taken die u wilt uitvoeren.

Het programma begint vaak met een initialisatiecode (%), gevolgd door een programmanummer. Dan zal er een regel met veiligheidscodes zijn. Het volgende is een regel voor gereedschapswisseling. Dit plaatst het juiste gereedschap in de machine en stelt de te gebruiken snelheid in. Het grootste deel van het programma bestaat dan uit de bewegingen en positionering van de machine.

Als u regelnummering gebruikt, is het een goed idee om elke regel een naam te geven in stappen van minimaal vijf. Op deze manier, als u later regels code moet toevoegen, worden de regels nog steeds op volgorde gelabeld.

Wanneer u klaar bent met het programmeren van uw G-code, beëindigt u het programma meestal met een reeks functies die de machine stoppen en resetten, zodat deze klaar is voor de volgende keer.

Bij correct gebruik zijn G-codes van onschatbare waarde voor CNC-machinisten, zodat u optimaal kunt profiteren van de mogelijkheden van uw machine. Geïntegreerde CAD/CAM-oplossingen zoals Fusion 360 blijven het CNC-coderingsproces stroomlijnen, zodat u onderdelen niet met de hand hoeft te programmeren met behulp van G-codes. Het produceren van hoogwaardige onderdelen was nog nooit zo snel met G-code-programmering.


Industriële technologie

  1. Wat is CNC?
  2. Wat is machinaal draaien?
  3. Machineprogrammeertalen:G-code-opdrachten versus M-codes
  4. Mijn koelvloeistof is slecht, wat nu?
  5. Wat is een melkautomaat?
  6. Wat is een horizontale boormachine?
  7. Wat is een automatische persmachine?
  8. Wat is een noedelautomaat?
  9. Wat is een precisiefreesmachine?
  10. Wat is een spuitgietmachine?
  11. Wat is een elektrolasmachine?