Ero sivun ”G-koodi” versioiden välillä

Kohteesta Helsinki Hacklabin wiki
Loikkaa: valikkoon, hakuun
(Ak: Uusi sivu: G-koodisyntaksia noudattava CNC-ohjelma koostuu matalan tason toiminnoista joita kutsutaan lauseiksi (block). Lauseet puolestaan rakentuvat sanoista (code). Sanat ovat joko "valmis...)
 
Rivi 10: Rivi 10:
 
<br />
 
<br />
 
Esimerkki modaalisesta NC-lauseesta:<br />
 
Esimerkki modaalisesta NC-lauseesta:<br />
'''G01 X500. Y60. Z0. M03''''<br />
+
'''G01 X500. Y60. Z0. M03'''<br />
 
'''X510.'''<br />
 
'''X510.'''<br />
 
'''X520.'''<br />
 
'''X520.'''<br />
Koordinoitu liike työstönopeudella koordinaatteihin 500/60/0, sen jälkeen 510/60/0 ja 520/60/0
+
Koordinoitu liike työstönopeudella koordinaatteihin 500/60/0, sen jälkeen 510/60/0 ja 520/60/0 koska G01 on modaalinen.<br />
  
  
Rivi 19: Rivi 19:
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Otsikkoteksti !! Otsikkoteksti !! Otsikkoteksti
+
! G-koodi !! Modaaliryhmä !! Toiminto
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G01 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G02 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G03 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G04 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G05 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G09 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G11 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G15 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G16 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G17 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G18 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G19 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G20 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G21 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G22 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G23 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G27 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G28 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G29 || Esimerkki || Esimerkki
 
|-
 
|-
| Esimerkki || Esimerkki || Esimerkki
+
| G30 || Esimerkki || Esimerkki
 +
|-
 +
| G31 || Esimerkki || Esimerkki
 +
|-
 +
| G33 || Esimerkki || Esimerkki
 +
|-
 +
| G39 || Esimerkki || Esimerkki
 +
|-
 +
| G40 || Esimerkki || Esimerkki
 +
|-
 +
| G41 || Esimerkki || Esimerkki
 +
|-
 +
| G42 || Esimerkki || Esimerkki
 +
|-
 +
| G43 || Esimerkki || Esimerkki
 +
|-
 +
| G44 || Esimerkki || Esimerkki
 +
|-
 +
| G45 || Esimerkki || Esimerkki
 +
|-
 +
| G46 || Esimerkki || Esimerkki
 +
|-
 +
| G47 || Esimerkki || Esimerkki
 +
|-
 +
| G48 || Esimerkki || Esimerkki
 +
|-
 +
| G49 || Esimerkki || Esimerkki
 +
|-
 +
| G50 || Esimerkki || Esimerkki
 +
|-
 +
| G51 || Esimerkki || Esimerkki
 +
|-
 +
| G52 || Esimerkki || Esimerkki
 +
|-
 +
| G53 || Esimerkki || Esimerkki
 +
|-
 +
| G54 || Esimerkki || Esimerkki
 +
|-
 +
| G55 || Esimerkki || Esimerkki
 +
|-
 +
| G56 || Esimerkki || Esimerkki
 +
|-
 +
| G57 || Esimerkki || Esimerkki
 +
|-
 +
| G58 || Esimerkki || Esimerkki
 +
|-
 +
| G59 || Esimerkki || Esimerkki
 +
|-
 +
| G60 || Esimerkki || Esimerkki
 +
|-
 +
| G61 || Esimerkki || Esimerkki
 +
|-
 +
| G62 || Esimerkki || Esimerkki
 +
|-
 +
| G63 || Esimerkki || Esimerkki
 +
|-
 +
| G64 || Esimerkki || Esimerkki
 +
|-
 +
| G65 || Esimerkki || Esimerkki
 +
|-
 +
| G66 || Esimerkki || Esimerkki
 +
|-
 +
| G67 || Esimerkki || Esimerkki
 +
|-
 +
| G68 || Esimerkki || Esimerkki
 +
|-
 +
| G69 || Esimerkki || Esimerkki
 +
|-
 +
| G73 || Esimerkki || Esimerkki
 +
|-
 +
| G74 || Esimerkki || Esimerkki
 +
|-
 +
| G76 || Esimerkki || Esimerkki
 +
|-
 +
| G80 || Esimerkki || Esimerkki
 +
|-
 +
| G81 || Esimerkki || Esimerkki
 +
|-
 +
| G82 || Esimerkki || Esimerkki
 +
|-
 +
| G83 || Esimerkki || Esimerkki
 +
|-
 +
| G84 || Esimerkki || Esimerkki
 +
|-
 +
| G85 || Esimerkki || Esimerkki
 +
|-
 +
| G86 || Esimerkki || Esimerkki
 +
|-
 +
| G87 || Esimerkki || Esimerkki
 +
|-
 +
| G88 || Esimerkki || Esimerkki
 +
|-
 +
| G89 || Esimerkki || Esimerkki
 +
|-
 +
| G90 || Esimerkki || Esimerkki
 +
|-
 +
| G91 || Esimerkki || Esimerkki
 +
|-
 +
| G92 || Esimerkki || Esimerkki
 +
|-
 +
| G94 || Esimerkki || Esimerkki
 +
|-
 +
| G95 || Esimerkki || Esimerkki
 +
|-
 +
| G96 || Esimerkki || Esimerkki
 +
|-
 +
| G97 || Esimerkki || Esimerkki
 +
|-
 +
| G98 || Esimerkki || Esimerkki
 +
|-
 +
| G99 || Esimerkki || Esimerkki
 +
 
 
|}
 
|}

Versio 10. tammikuuta 2016 kello 21.45

G-koodisyntaksia noudattava CNC-ohjelma koostuu matalan tason toiminnoista joita kutsutaan lauseiksi (block). Lauseet puolestaan rakentuvat sanoista (code). Sanat ovat joko "valmistelevia" G-koodeja tai "sekalaisia" M-koodeja.
G-koodisyntaksi on lähes rakenteeton sillä mitään ohjelmakontrollin ohjausrakenteita kieleen ei kuulu. Aliohjelmakutsu on olemassa mutta ei juuri muuta.
G-koodi on tulkattua koodia siinä mielessä, että kooditulkki jäsentää aina yhden kokonaisen lauseen kerrallaan ja optimoi sisällön suorituksen ennen sen käynnistämistä. Lotan Fanuc-ohjain toimii siten, että lauseessa mahdollisesti olevista ristiriitaisista käskysanoista viimeksi kirjoitettu jää voimaan ja toteutetaan.
On erityisesti syytä tiedostaa, että hyvin monet G-koodit ovat modaalisia eli ne jäävät voimaan kunnes samaan modaaliryhmään kuuluva toinen koodi astuu niiden tilalle.


Esimerkki yksinkertaisesta NC-lauseesta:
N001 G01 X500.000 Y60.000 Z0.000 M03
Rivinumero 001; koordinoitu liike työstönopeudella koordinaatteihin XYZ samalla käynnistäen kara pyörimään myötäpäivään

Esimerkki modaalisesta NC-lauseesta:
G01 X500. Y60. Z0. M03
X510.
X520.
Koordinoitu liike työstönopeudella koordinaatteihin 500/60/0, sen jälkeen 510/60/0 ja 520/60/0 koska G01 on modaalinen.


Lotan tunnistamat G-koodisanat

G-koodi Modaaliryhmä Toiminto
G01 Esimerkki Esimerkki
G02 Esimerkki Esimerkki
G03 Esimerkki Esimerkki
G04 Esimerkki Esimerkki
G05 Esimerkki Esimerkki
G09 Esimerkki Esimerkki
G11 Esimerkki Esimerkki
G15 Esimerkki Esimerkki
G16 Esimerkki Esimerkki
G17 Esimerkki Esimerkki
G18 Esimerkki Esimerkki
G19 Esimerkki Esimerkki
G20 Esimerkki Esimerkki
G21 Esimerkki Esimerkki
G22 Esimerkki Esimerkki
G23 Esimerkki Esimerkki
G27 Esimerkki Esimerkki
G28 Esimerkki Esimerkki
G29 Esimerkki Esimerkki
G30 Esimerkki Esimerkki
G31 Esimerkki Esimerkki
G33 Esimerkki Esimerkki
G39 Esimerkki Esimerkki
G40 Esimerkki Esimerkki
G41 Esimerkki Esimerkki
G42 Esimerkki Esimerkki
G43 Esimerkki Esimerkki
G44 Esimerkki Esimerkki
G45 Esimerkki Esimerkki
G46 Esimerkki Esimerkki
G47 Esimerkki Esimerkki
G48 Esimerkki Esimerkki
G49 Esimerkki Esimerkki
G50 Esimerkki Esimerkki
G51 Esimerkki Esimerkki
G52 Esimerkki Esimerkki
G53 Esimerkki Esimerkki
G54 Esimerkki Esimerkki
G55 Esimerkki Esimerkki
G56 Esimerkki Esimerkki
G57 Esimerkki Esimerkki
G58 Esimerkki Esimerkki
G59 Esimerkki Esimerkki
G60 Esimerkki Esimerkki
G61 Esimerkki Esimerkki
G62 Esimerkki Esimerkki
G63 Esimerkki Esimerkki
G64 Esimerkki Esimerkki
G65 Esimerkki Esimerkki
G66 Esimerkki Esimerkki
G67 Esimerkki Esimerkki
G68 Esimerkki Esimerkki
G69 Esimerkki Esimerkki
G73 Esimerkki Esimerkki
G74 Esimerkki Esimerkki
G76 Esimerkki Esimerkki
G80 Esimerkki Esimerkki
G81 Esimerkki Esimerkki
G82 Esimerkki Esimerkki
G83 Esimerkki Esimerkki
G84 Esimerkki Esimerkki
G85 Esimerkki Esimerkki
G86 Esimerkki Esimerkki
G87 Esimerkki Esimerkki
G88 Esimerkki Esimerkki
G89 Esimerkki Esimerkki
G90 Esimerkki Esimerkki
G91 Esimerkki Esimerkki
G92 Esimerkki Esimerkki
G94 Esimerkki Esimerkki
G95 Esimerkki Esimerkki
G96 Esimerkki Esimerkki
G97 Esimerkki Esimerkki
G98 Esimerkki Esimerkki
G99 Esimerkki Esimerkki