title: Grbl
text: Grbl is open source firmware voor een cnc-machine of 3D-printer. Een voorbeeld van een cnc-machine waarin Grbl gebruikt wordt is de in China gemaakte 3018. Grbl draait op een microcontroller of Arduino. Grbl accepteert opdrachten die via een usb-poort (emulatie seriële poort) worden aangeboden vanuit een pc waarop een programma draait zoals Grblcontrol, Candle of UGS en stuurt de stappenmotoren van de machine aan. De opdrachten, ook wel genoemd G-code, betreffen o.a. het uitvoeren van een beweging in X, Y of Z-richting en het aan- of uitzetten van de spindel-motor. Grbl heeft een kleine buffer voor enkele opdrachten vooruit maar het gehele programma bevindt zich normaliter op de pc. Losse opdrachten kunnen ook door de gebruiker rechtstreeks worden ingevoerd. Grbl meldt voortdurend de actuele toestand (waaronder de actuele positie) terug aan de pc.
  
  Opdrachten die Grbl accepteert zijn:
  
   G0: Snelle beweging
   G1: Beweging met een gecontroleerde snelheid in een rechte lijn
   G2: Kloksgewijze beweging in een cirkelsegment
   G3: Beweging in een cirkelsegment tegen de klok in
   G4: Pauze
   G10 L2, G10 L20: Instellen werkcoördinaten
   G17: Werken in het x-y vlak
   G18: Werken in het x-z vlak
   G19: Werken in het y-z vlak
   G20: Werken in inch
   G21: Werken in mm
   G28, G30: Ga naar voorgedefinieerde positie
   G28.1, G30.1: Definieer een positie
   G38.2: Voelen waar het werkstuk zich bevindt (Probing)
   G38.3, G38.4, G38.5: Probing
   G40: Uitschakelen compensatie snijstraal
   G43.1, G49: Dynamische gereedschaplengteoffset
   G53: Werk in absolute coordinaten
   G54, G55, G56, G57, G58, G59: Werk-coordinaatsystemen
   G61: Padbesturingsmodus
   G80: Opheffen bewegingsmodus
   G90: Absolute modus
   G91: Incrementele modus
   G91.1: Incrementele modus voor parameters I, J en K
   G92 en G92.1: Instellen van de oorsprong van het coördinatensysteem
   G93, G94: Instellen van de snelheid van beweging
   M0, M2, M30: Programma pauzeren en beëindigen
   M3: Spindelmotor aan, beweging met de wijzers van de klok mee
   M4: Spindelmotor aan, beweging tegen de wijzers van de klok in
   M5: Spindelmotor uit
   M7: Koelnevel aan (opdracht alleen beschikbaar indien indien aangezet in de code)
   M8: Koelmiddel aan
   M9: Koelmiddel en -nevel uit
   M56: Parking Motion Override Control  (indien aangezet in de code)
  
  Grbl is tussen 2009 en 2019 geschreven in C door Simen Svale Skogsrud en Sungeun "Sonny" Jeon Ph.D.
  
  Externe links 
   De actuele versie van Grbl (1.1) is beschikbaar op Github.
   Zie ook de uitgebreide beschrijving van G-codes op: .
  
  Software geschreven in C
  Software in het publiek domein