Pour le fun, tout simplement 😉

Configuration de GRBL 1.1

Préparation de GRBL 1.1

Avant de « tĂ©lĂ©verser » GRBL dans votre Arduino, certains paramĂ©trages s’imposent.

Le fichier « grbl.h »

Ce fichier est situĂ© dans « /libraries/grbl » de votre dossier d’installation de l’IDE Arduino.

« grbl.h » est le fichier qui synthĂ©tise tous les appels aux autres fichiers en procĂ©dant Ă  des « include ». On y touche pas !

Le fichier « config.h »

Ce fichier est situĂ© dans « /libraries/grbl » de votre dossier d’installation de l’IDE Arduino.

C’est ici que le paramĂ©trage de GRBL en accord avec votre machine va avoir lieu. Il est donc important d’ĂȘtre trĂšs attentif Ă  cette partie de l’installation.

C’est un fichier de 413 lignes mais avec beaucoup de commentaires. Les lignes commençant par deux barres obliques (slasches) sont commentĂ©es et donc invalidĂ©es. il suffit d’ĂŽter les Â«Â slashes » pour qu’elles deviennent valides.

Par exemple, vers la ligne 105 on peut modifier le cycle de homing.

Pour un homing sur les axes X et Y seulement et les deux en mĂȘme temps :

On commente les deux lignes suivantes :

// #define HOMING_CYCLE_0 (1<<Z_AXIS) // REQUIRED: First move Z to clear workspace.
// #define HOMING_CYCLE_1 ((1<<X_AXIS)|(1<<Y_AXIS)) // OPTIONAL: Then move X,Y at the same time.

Et on décommente celle-ci :

#define HOMING_CYCLE_0 ((1<<X_AXIS)|(1<<Y_AXIS)) // NOT COMPATIBLE WITH COREXY: Homes both X-Y in one cycle.

Attention Ă  bien vĂ©rifiĂ© et surtout a sauvegarder votre fichier avant toute modification…

Le fichier « report.c »

Ce fichier est situĂ© dans « /libraries/grbl » de votre dossier d’installation de l’IDE Arduino.

Ici c’est juste pour le fun ! Mais attention aux erreurs suite à l’enlùvement inopportun d’un caractùre obligatoire
 Un point-virgule, des guillemets, une parenthùse
 Et hop une erreur à la compilation ! Bref sauver le fichier d’origine avant toute manipulation.

Vous pouvez par exemple remplacer la ligne N° 151 :printPgmString(PSTR(« \r\nGrbl  » GRBL_VERSION  » [‘$’ for help]\r\n »)); 

Par celle-ci :printPgmString(PSTR(« \r\nMa CNC sous grbl  » GRBL_VERSION  » \r\n »)); 

Ce qui affichera en message d’accueil : « Ma CNC sous Grbl 1.1f« .

Mais bon, cela ne sert pas Ă  grand-chose
 Par contre la modification de ce fichier vous permet de « franciser » tous les messages de la console. les messages sont en gĂ©nĂ©ral les mots ou pharses entre quotes (« Home », « Pgm End »…). Attention toutefois Ă  ne pas faire d’erreurs de syntaxe et de ne pas utiliser de caractĂšres spĂ©ciaux…

Installation de GRBL

Une fois les fichiers modifiés par vos soins, il faut bien entendu recompiler tout ce petit monde. Pour cela, rien de bien compliqué :

  • Connectez votre Arduino Ă  votre PC via l’USB.
  • Configurez le dans l’IDE Arduino (Type de carte et N° de port).
  • Ouvrir « Fichiers/exemples/grbl/grblUpload ».
  • Cliquez sur la coche verte de vĂ©rification de code (En haut Ă  gauche).
  • Si tout se passe bien, la barre du bas sera verte et vous aurez un message favorable. Toutefois, une partie en rouge vous alerteras sur le fait que la mĂ©moire est quasi pleine… C’est normal, GRBL 1.1 utilise la mĂ©moire au maximum de ses possibilitĂ©s sur les UNO et NANO.

Il ne reste plus qu’à tĂ©lĂ©verser GRBL dans l’Arduino.

Paramétrage de GRBL

Maintenant que GRBL est chargĂ© dans l’Arduino avec la bonne configuration, il reste Ă  faire le paramĂ©trage.

Dans GRBL, toutes les dimensions sont en millimĂštres. Si vous comptez en pouces, pensez Ă  la conversion…

Le changement des valeurs des paramĂštres peut se faire de plusieurs maniĂšres.

Via UGS ou un autre programme d’interface avec GRBL

Connecter vous Ă  l’Arduino, et cliquez sur « ParamĂštres/ParamĂštres Firmware/GRBL ». Vous obtenez la fenĂȘtre suivante :

Double cliquez sur la valeur Ă  changer, modifier la et faite enregistrer. Une fois terminĂ©, fermer cette fenĂȘtre, GRBL est paramĂštrĂ©.

Via l’IDE Arduino

La commande « $$ » lancĂ©e depuis le terminal sĂ©rie affiche les donnĂ©es par dĂ©faut :

Taper sur la ligne de commande en haut de la fĂ©nĂȘtre, le paramĂštre Ă  changer et sa valeur. Par exemple : « $1=30 ». Puis cliquez sur le bouton « envoyer », le paramĂštres est changĂ©. faites de mĂȘme avec chaque paramĂštres Ă  changer. A chaque fois taper « $$ » afin de vĂ©rifier la prise en compte de la nouvelle valeur du paramĂštre.

Les diffĂ©rents paramĂštres Ă  modifier ou pas

ParamĂštreDĂ©fautExplication
$010Durée du signal de pas en ”SA paramétrer éventuellement en fonction de vos drivers pas-à-pas. Avec des impulsions trop longues, des erreurs peuvent survenir à vitesse élevée. 10 est une bonne valeur par défaut.
$125Retard de la dĂ©sactivation des moteurs aprĂ©s une instruction en mS.C’est le temps que GRBL gardera les moteurs verouillĂ©s, avant de les dĂ©sactiver. Pour certains moteurs, cela peut engendrer des pertes de pas. Si c’est votre cas, il suffit de passer ce paramĂštre Ă  255 et vos moteurs ne seront jamais dĂ©sactivĂ©s.
$20Inversion du signal de pas (Masque binaire).Par dĂ©faut, l’impulsion du signal de pas dĂ©bute sur un front montant. Puis aprĂ©s la durĂ©e dĂ©finie par le paramĂštre $0, on repasse en niveau bas. En rĂšgle gĂ©nĂ©rale, il n’y a pas Ă  changer la valeur par dĂ©faut de ce paramĂštre.Valeurs du paramĂštre de 0 Ă  7, entre parenthĂšses est reprĂ©sentĂ©e la valeur binaire du paramĂštre0 (00000000) – Aucune inversion1 (00000001) – Inversion de l’axe X2 (00000010) – Inversion de l’axe Y3 (00000011) – Inversion des axes X et Y4 (00000100) – Inversion de l’axe Z5 (00000101) – Inversion des axes X et Z6 (00000110) – Inversion des axes Y et Z7 (00000111) – Inversion des 3 axes
$30Inversion du signal de direction (Masque binaire).Par dĂ©faut, GRBL considĂšre que les axes de dĂ©placent dans la direction positive lorsque la broche « direction » est au niveau bas et inversement.Sur certaines machines il est nĂ©cessaire d’inverser la direction d’un ou plusieurs axes. Par exemple, pour une table translatĂ©e on devra inverser l’axe Y. Pour ce faire, on passera le paramĂštres Ă  2Valeurs du paramĂštre allant de 0 Ă  7. Pour choisir la valeur, se reporter au paramĂštre $2.
$40Inversion du signal d’activation « Enable » (BoolĂ©en).Par dĂ©faut, la broche d’activation est au niveau haut pour dĂ©sactiver et au niveau bas pour activer.Au besoin, on pourra inverser cela en passant le paramĂštre Ă  1. NĂ©cĂ©ssitĂ© de redĂ©marrer pour la prise en compte de ce changement.
$50Inversion du type de contact des fin de courses (BoolĂ©en).Par dĂ©faut, les broches de limites sont au niveau haut via une rĂ©sistance « pull-up » interne Ă  l’Arduino. Les contacts de fin de course Ă©tant normalement ouverts « NO »; lorsqu’ils sont actionnĂ©s la broche limites correspondante passe au niveau bas.Pour installer des fins de courses NF (normalement fermĂ©), il faut passer ce paramĂštre Ă  1. Attention, il est nĂ©cessaire dans ce cas de rajouter des rĂ©sistances de « pull-down » externe pour chaque broche de limite. NĂ©cĂ©ssitĂ© de redĂ©marrer pour la prise en compte de ce changement.
$60Inversion de la broche de sonde (BoolĂ©en).Par dĂ©faut, la broche de sonde est au niveau haut via une rĂ©sistance « pull-up » interne Ă  l’Arduino. Quand le capteur indique un niveau bas, par mise Ă  la masse de la sonde, GRBL l’interprĂšte comme dĂ©clenchĂ©e.Pour inverser cela, il faut passer ce paramĂštre Ă  1. Attention, il est nĂ©cessaire dans ce cas de rajouter une rĂ©sistance de « pull-down » externe. NĂ©cĂ©ssitĂ© de redĂ©marrer pour la prise en compte de ce changement.
$1025Rapport de situation en temps rĂ©el (Masque binaire).DĂ©termine ce que doit rĂ©pondre GRBL en temps rĂ©el lors de l’envoi de la commande « ? ».Par dĂ©faut GRBL renvoie : Son Ă©tat, la position « machine » et la position « travail ». trois autres informations sont disponibles et peuvent ĂȘtre utilisĂ©es dans le cadre d’un interfaçage avec GRBL.Tampon du planificateurTampon de la liaison sĂ©rie RxEtat des limites (Ordre : ZYX).Valeurs du paramĂštre en fonction du choix des rĂ©ponses demandĂ©es. les valeurs sont Ă  additionner, par exemple pour obtenir les positions « machine » (1), « travail » (2) et le tampon sĂ©rie (8), le paramĂštre prendra la valeur : 111 – Position « machine ».2 – Position « travail ».4 – Tampon du planificateur.8 – Tampon liaison sĂ©rie.16 – Etat des limites.
$110.010Ecart de jonction en mm.Cet Ă©cart est utilisĂ© par le gestionnaire d’accĂ©lĂ©ration. En diminuant cette valeur on diminue l’accĂ©lĂ©ration dans les courbes et inversement. Avec une valeur trop Ă©levĂ©e on risque la perte de pas. 10 est une valeur optimale.
$120.002TolĂ©rance des arcs en mm.Les commandes G2/G3 de GRBL subdivise les arcs en de multiples petits segments. Probablement n’aurez vous jamais Ă  changer cette valeur trĂ©s faible et en dessous de la prĂ©cision de la plupart des machines.
$130UnitĂ©s des rapports d’Ă©tat (BoolĂ©en).Par dĂ©faut, GRBL utilise les mm pour gĂ©nĂ©rer ces rapports en temps rĂ©els (ParamĂštre $ 10). Pour qu’il les livre en inches il suffit de passer ce paramĂštre Ă  1.
$200Activation des limites logicielles (BoolĂ©en).Ce paramĂštre est un dispositif de sĂ©curitĂ© Ă©vitant Ă  votre machine de dĂ©passer les valeurs physiques de vos axes de travaul (ParamĂštres $130 Ă  $132).A chaque rĂ©ception d’une information Gcode, GRBL vĂ©rifie si ces limites sont dĂ©passĂ©es ou non. Si elles sont dĂ©passĂ©es, il stoppera tout (Y compris la broche et le lubrifiant) et gĂ©nĂšrera une alarme. la position de la machine est conservĂ©e et aprĂ©s dĂ©verrouillage de l’alarme le programme peut continuer.Afin que cela fonctionne il est impĂ©ratif que le « homing » soit activĂ©s (ParamĂštre $22) et les dimensions d’axes correctement remplies (ParamĂštres $130 Ă  $132).
$210Activation des limites physiques (BoolĂ©en).Ce paramĂštre fonctionne sensiblement comme le paramĂštre $20 mais utilise des contacts fin de course.Lorsqu’un contact est actionnĂ©, GRBL stoppe tout immĂ©diatement et passe en mode alarme vous abligeant Ă  vĂ©rifier la machine et Ă  tout rĂ©initialiser.Il est plus que conseillĂ© d’utiliser des procĂ©dĂ©s de prĂ©vention contre le parasitage Ă©lectrique.Si on positionne un fin de course Ă  chaque bout des axes, il conviendra de les relier en parallĂšle si ce sont des contacts normalement ouverts « NO » ou en sĂ©rie si ce sont des contacts normalement fermĂ©s « NF ».Un dĂ©clenchement de limite physique est considĂ©rĂ© comme un Ă©vĂšnement critique ou les moteurs pas-Ă -pas sont arrĂȘtĂ©s immĂ©diatement et auront probablement perdus des pas. GRBL ne peut alors plus garantir sa position et rentre dans une boucle d’alarme infinie vous obligeant Ă  vĂ©rifier la machine et le rĂ©initialiser.
$220Cycle de homing (BoolĂ©en).Ce cycle est utilisĂ© pour connaitre avec exactitude la position de la machine a chaque nouvelle session GRBL. Avec le homing, vous avez toujours le point 0 de rĂ©fĂ©rence machine.Pour mettre en oeuvre le homing, il est nĂ©cessaire de disposer de fin de courses positionnĂ©s par dĂ©faut au point les plus « haut » de chaque axes.Par defaut le cycle dĂ©place en premier l’axe Z afin de dĂ©gager l’espace de travail puis simultanĂ©ment les axes X et Y. Le premier axe en butĂ©e attend le second. Avant de pouvoir bouger un axe, GRBL vous oblige Ă  effectuer un cycle de homing « $H ».
$230Inversion de directiobn de homing (Masque binaire).Par dĂ©faut, GRBL voit les fins de courses dans le sens positif pour les trois axes. Si vous preferez une autre postion de homing, il suffit de modifier ce paramĂštre et bien entendu d’avoir des fins de courses positionnĂ©s en consĂ©quence…Pour changer, de maniĂšre avancĂ©e, le paramĂštrage du homing il est nĂ©cessaire de modifier le fichie « config.h » puis de compiler GRBL et de le tĂ©lĂ©verser de nouveau dans l’ArduinoValeurs du paramĂštre de 0 Ă  7, entre parenthĂšses est reprĂ©sentĂ©e la valeur binaire du paramĂštre0 (00000000) – Aucune inversion (En haut de l’axe Y Ă  droite et broche haute).1 (00000001) – Inversion de l’axe X (En haut de l’axe Y Ă  gauche et broche haute).2 (00000010) – Inversion de l’axe Y (En bas de l’axe Y Ă  droite et broche haute).3 (00000011) – Inversion des axes X et Y (En bas de l’axe Y Ă  gauche et broche haute).4 (00000100) – Inversion de l’axe Z (En haut de l’axe Y Ă  droite et broche basse).5 (00000101) – Inversion des axes X et Z (En haut de l’axe Y Ă  gauche et broche basse).6 (00000110) – Inversion des axes Y et Z (En bas de l’axe Y Ă  droite et broche basse).7 (00000111) – Inversion des 3 axes (En haut de l’axe Y Ă  gauche et broche bassee).
$2425Vitesse de rĂ©fĂ©rencement du homing (mm/mn).C’est la vitesse de dĂ©placement utilisĂ©e pour la recherche prĂ©cise du zĂ©ro de chaque axe.Ce paramĂštre est Ă  25 par dĂ©faut. On peut en augmenter la valeur, mais en vĂ©rifiant Ă  chaque changement que la dĂ©tection du zĂ©ro est bien assurĂ©e. Une valeur de 50 semble ĂȘtre optimale.
$25500Vitesse de recherche du homing (mm/mn).C’est la vitesse de dĂ©placement utilisĂ©e pour la recherche des fins de courses de chaque axe.Ce paramĂštre est Ă  500 par dĂ©faut, cela semble ĂȘtre optimale.
$26250Anti-rebond contact (mS).GRBL introduit un dĂ©lai dans l’Ă©tablissement des contacts Ă©lectrique appelĂ© « anti-rebond ». Cela permet de palier au parasitage Ă©lectrique et Ă  des dĂ©clenchements intempestifs des limites.Il est toutefois conseillĂ© de garder ce paramĂštre a environ 15mS et d’ajouter des systĂšmes « anti-rebonds » sur chaque fin de course (Et sur le bouton d’arrĂȘt d’urgence). Cela peut aller d’un simple condensateur de 0.1”F en parallĂšle sur le contact Ă  une isolation galvanique par opto-coupleurs.
$271Retrait de sĂ©curitĂ© (mm).Distance de retrait aprĂ©s dĂ©tection du zĂ©ro de l’axe. Cela permet d’Ă©viter des dĂ©clenchement intempestifs des limites physique. Les bonnes valeurs semblent ĂȘtre de 1 ou 2mm.
$30255Vitesse maximum de la broche (tr/mm).C’est la vitesse maximum Ă  laquelle votre broche peut tourner. Ce paramĂštre sert Ă  GRBL pour rĂ©gler le cycle PWM de rĂ©glage de la vitesse variable de la broche. La valeur par dĂ©faut est 255.
$310Vitesse minimum de la broche (tr/mm).A priori c’est 0.
$320Mode laser (BoolĂ©en).Dans ce mode on utilise un laser et les commandes G1, G2 ou G3 sont envoyĂ©es en continu lorsqu’elle sont programmĂ©es avec une vitesse de broche, dans ce cas la puissance du laser. Lorsqu’elle est dĂ©sactivĂ©e, mode CNC, GRBL arr^te le mouvement Ă  chaque changement de vitesse de broche.
$100250Pas/mm de l’axe X (pas/mm).Cette valeur est propre Ă  cahque axe de la machine, elle est dĂ©finie par las caractĂ©ristiques de l’entrainement des axes. C’est le nombre de millimĂštres parcourus Ă  chaque rĂ©volution du moteur.La formule de calcul est la suivante : (Pas par rĂ©volution du moteur x nombre de micropas) / millimĂštres parcourus par rĂ©volution.Typiquement le « pas par rĂ©volution du moteur » est de 200, le micropas de 1,2,4,8,16,32… les millimĂštres parcourus par rĂ©volution sont en fonction du pas de votre vis sans fin par exemple.
$101250Pas/mm de l’axe Y (pas/mm).Cette valeur est propre Ă  cahque axe de la machine, elle est dĂ©finie par las caractĂ©ristiques de l’entrainement des axes. C’est le nombre de millimĂštres parcourus Ă  chaque rĂ©volution du moteur.La formule de calcul est la suivante : (Pas par rĂ©volution du moteur x nombre de micropas) / millimĂštres parcourus par rĂ©volution.Typiquement le « pas par rĂ©volution du moteur » est de 200, le micropas de 1,2,4,8,16,32… les millimĂštres parcourus par rĂ©volution sont en fonction du pas de votre vis sans fin par exemple.
$102250Pas/mm de l’axe Z (pas/mm).Cette valeur est propre Ă  cahque axe de la machine, elle est dĂ©finie par las caractĂ©ristiques de l’entrainement des axes. C’est le nombre de millimĂštres parcourus Ă  chaque rĂ©volution du moteur.La formule de calcul est la suivante : (Pas par rĂ©volution du moteur x nombre de micropas) / millimĂštres parcourus par rĂ©volution.Typiquement le « pas par rĂ©volution du moteur » est de 200, le micropas de 1,2,4,8,16,32… les millimĂštres parcourus par rĂ©volution sont en fonction du pas de votre vis sans fin par exemple.
$110500DĂ©placement maximal possible axe X (mm/mn).Le moyen le plus simple pour rĂ©gler ce paramĂštre est d’envoyer une commande G0 X100 (Ou autre) et de tester en augmentant le paramĂštre par petit pas. Lorsque vous atteindrez le seuil admissible de votre moteur, celui-ci se bloquera. Ensuite diminuer la valeur de 15% environ et c’est rĂ©glĂ©.
$111500DĂ©placement maximal possible axe Y (mm/mn).Le moyen le plus simple pour rĂ©gler ce paramĂštre est d’envoyer une commande G0 X100 (Ou autre) et de tester en augmentant le paramĂštre par petit pas. Lorsque vous atteindrez le seuil admissible de votre moteur, celui-ci se bloquera. Ensuite diminuer la valeur de 15% environ et c’est rĂ©glĂ©.
$112500DĂ©placement maximal possible axe Z (mm/mn).Le moyen le plus simple pour rĂ©gler ce paramĂštre est d’envoyer une commande G0 X100 (Ou autre) et de tester en augmentant le paramĂštre par petit pas. Lorsque vous atteindrez le seuil admissible de votre moteur, celui-ci se bloquera. Ensuite diminuer la valeur de 15% environ et c’est rĂ©glĂ©.
$12010Taux d’accĂ©lĂ©ration de l’axe X (mm/mn).De maniĂšre simple, une valeur faible se traduit par un mouvement lent et une valeur Ă©levĂ©e accĂ©lĂšre le mouvement. pour le rĂ©glage, on procĂ©dera de maniĂšre similaire au paramĂštre 110.
$12110Taux d’accĂ©lĂ©ration de l’axe Y (mm/mn).De maniĂšre simple, une valeur faible se traduit par un mouvement lent et une valeur Ă©levĂ©e accĂ©lĂšre le mouvement. pour le rĂ©glage, on procĂ©dera de maniĂšre similaire au paramĂštre 111.
$12210Taux d’accĂ©lĂ©ration de l’axe Z (mm/mn).De maniĂšre simple, une valeur faible se traduit par un mouvement lent et une valeur Ă©levĂ©e accĂ©lĂšre le mouvement. pour le rĂ©glage, on procĂ©dera de maniĂšre similaire au paramĂštre 112.
$130200DĂ©placement maximum sur l’axe X (mm).C’est la course maximum de bout Ă  bout pour l’axe X, qui est bien sur spĂ©cifique Ă  chaque machine. C’est utilisĂ© par la vĂ©rification des limites logigicielles du $20
$131200DĂ©placement maximum sur l’axe Y (mm).C’est la course maximum de bout Ă  bout pour l’axe Y, qui est bien sur spĂ©cifique Ă  chaque machine. C’est utilisĂ© par la vĂ©rification des limites logigicielles du $20
$132200DĂ©placement maximum sur l’axe Z (mm).C’est la course maximum de bout Ă  bout pour l’axe Z, qui est bien sur spĂ©cifique Ă  chaque machine. C’est utilisĂ© par la vĂ©rification des limites logigicielles du $20
NotaPour les paramÚtres $110,$111,$112,$120,$121 et $122il est conseillé de faire des tests en envoyant du Gcode à « blanc » avant tout usinage. Bien vérifier le fonctionnement avec des déplacements simultanés des trois axes.

Les commandes de GRBL

Les commandes « $ » fournissent des contrĂŽles supplĂ©mentaires pour l’utilisateur,comme l’affichage de l’Ă©tat de l’analyseur G-code, la vĂ©rification du mode Gcode ou bien encore l’exĂ©cution du cycle de homing.

$# – Afficher les paramĂštres du Gcode

Ces paramĂštres stockent les valeurs de dĂ©calage pour les coordonnĂ©es G54 Ă  G59, pour les positions prĂ©-dĂ©finies G28 & G30, le dĂ©calage G92, G43.1 longueur d’outil et G38.2 sonde.

Ils sont pour la plupart Ă©crits sur l’EEPROM et sont donc persistants. Ceux qui ne sont pas persistants sont : G92, G43.1 et G38.2, ils sont donc rĂ©initialisĂ©s Ă  chaque redĂ©marrage.

Pour les persistants, ils sont donc conservĂ©s mĂȘme en cas de reflashage de l’Arduino. Pour les modifier, il conviebnt donc de le faire explicitement.

  • G54 Ă  G59 sont modifiables via les commandes G10 L2 et G10 L20. L2 par rapport au zĂ©ro machine et L20 en fonction de la position machine.
  • G28 est modifiable via la commande G28.1.
  • G30 est modifiable via la commande G30.1.

En tapant la commande « $# », GRBL renverra un tableau du genre :

 
[G54:10.000,10.000,5.000]
[G55:100.000,100.000,65.000]
[G56:100.000,100.000,0.000]
[G57:220.000,410.000,0.000]
[G58:0.000,0.000,0.000]
[G59:0.000,0.000,0.000]
[G28:0.000,0.000,0.000]
[G30:10.000,10.000,0.000]
[G92:0.000,0.000,0.000]
[TLO:0.000]
[PRB:0.000,0.000,0.000:0]
ok

« TLO » reprĂ©sentela longueur d’outil et « PRB » les derniĂšres coordonnĂ©es de sondage.

$G – Voir l’Ă©tat de l’analyseur de Gcode

Cette commande renvoie les modes actifs de l’analyseur G-Code. Grbl y rĂ©pond par :

 
GC:G0 G54 G17 G21 G90 G94 M5 M9 T0 F250 S0]
ok

Ce sont ces modes actifs qui détermine la façon dont sera interprétée le prochain envoi de Gcode.

$I – Informations sur la version

A cette commande GRBL renvoie, par exemple :

 
VER:1.1f.20170801:]
[OPT:V,15,128]
ok

$N – Afficher les blocs de dĂ©marrage

Les blocs de démarrage sont des lignes de Gcode que GRBL exécute automatiquement à chaque démarrage ou réinitialisdation. Par défaut, GRBL stocke deux blocs vide que voici :

 
$N0=
$N1=
ok

Il est rĂšs important de faire extrĂšmement attention aux commandes de mouvements (G0, G1, G2, G3, G28 ou G30) que vous allez stocker dans les blocs de dĂ©marrage. En effet ces commandes se dĂ©rouleront Ă  chaque dĂ©marrage ou reset (ArrĂȘt d’urgence, fins de course…), attention donc aux effets « pervers ».

Il ne faut pas y placer les commandes comme G10, G28.1 ou G30.1 car elles sont persistantes et cela forcerait GRBL Ă  rĂ©Ă©crire l’EEPROM de l’Arduino Ă  chaque redĂ©marrage ou reset… L’EEPROM n’est pas prĂ©vue pour des cycles rĂ©pĂ©titifs d’Ă©criture.

Un bloc de démarrage se définit en tapant : »$N0= » suivi du Gcode. Par exemple : $N0=G21 G17 G55, ce qui définiera par défaut des unités en mm, la sélection du plan X/Y et le systÚme de coordonnées de travail pré-défini G55.

Si c’est bon GRBL y rĂ©pond simplement par « Ok ». Au prochain dĂ©marrage il enverra le prompt suivant :

 
Grbl 1.1f [‘$’ for help]
>G21G17G55:ok

Pour effacer ce bloc de démarrage il suffit de taper la commande « $N0= ».

$C – VĂ©rifier le mode gcode

Cette commande demande Ă  GRBL de traiter la totalitĂ© des blocs Gcode entrant mais sans bouger les axes et ne s’occupant ni de broche ni du refroidissement.

On peut ainsi tester son Gcode grĂ ce Ă  l’analyseur et vĂ©rifier si d’Ă©ventuelles erreurs sont dĂ©tectĂ©es comme des dĂ©passements de limites par exemple.

$ X – Supprimer le verrouillage de l’alarme

Le mode alarme de GRBL signale en principe un problĂšme critique, comme le dĂ©clenchement de fins de course, un arrĂȘt d’urgence…

Si le homing au dĂ©marrage est activĂ©, GRBL bloque alors toutes les commandes jusqu’a l’Ă©xĂ©cution d’un cycle de homing.

$H – Lancer un homing

Le homing est une commande à part gérée par GRBL conformément aux normes Gcode.

Une fois le homing effectuĂ©, vous pouvez dĂ©placer les axes avec les boutons de « JOG » pour approcher vos coordonnĂ©es de travail ou utiliser les positions prĂ©dĂ©finies. Par principe de sĂ©curitĂ©, l’axe Z sera maintenu en position haute pour Ă©viter tout accrochage durant les dĂ©placements de positionnement.

$RST

Ces commandes permettent Ă  l’utilisateur de restaurer tout ou partie de l’EEPROM par dĂ©faut de l’Arduino. AprĂ©s chacune de ces commandes, GRBL procĂ©dera Ă  une rĂ©initialisation.

$RST=$

Cette commande efface et restaure les paramÚtres par défaut « $$ ». cela peut permettre de facilement effacer les données spécifiquesentrées par un fabricant et de repartir de zéro.

$RST=#

Ici on efface et on remet Ă  zĂ©ro, les diverses coordonnĂ©es stockĂ©es dans l’EEPROM comme G54 Ă  G59, G28.1 et G30.1. cela permet de gagner du temps si on veut reprendre Ă  zĂ©ro les divers dĂ©calages et positions.

$RST=*-

Cette commande supprime et restaure toutes les données utilisées par GRBL : $$, $#, $N et $I.

Par contre cela n’efface rien de ce qui n’est pas GRBL. Pour cela il faut « nettoyer » l’EEPROM via l’IDE Arduino avec un croquis comme celui-ci :

 
#include <EEPROM.h>
void setup() {
   pinMode(13, OUTPUT);
   for (int i = 0 ; i < EEPROM.length() ; i++) {EEPROM.write(i, 0);}
   digitalWrite(13, HIGH);
}
void loop() {}

Les commandes en temps réel: ~,!,? Et Ctrl-X

GRBL comporte quatre commandes en « temps rĂ©el » qui peuvent ĂȘtre envoyĂ©es Ă  tout moment et peu importe les tĂąches en cours, GRBL y rĂ©pondra immĂ©diatement. Elles commencent par des caractĂšres spĂšciaux lus dans la liaison sĂ©rie et interprĂ©tĂ©es en moins de 5mS.

~ – Cycle start

Cela permet de démarrer un cycle ou de reprendre une commande. Pour que cette commande soit efficace, le tampon de GRBL devra contenir des ordres en attentes.

Cette commande est peu utile car par défaut l »auto cycle » est activé.

! – Feed hold

Cette commande de pause provoque un arrĂȘt du cycle actif via une dĂ©cĂ©lĂ©ration contrĂŽlĂ©e de maniĂšre a ne pas perdre la position en cours. le processus pourra ĂȘtre reprit via une commande « ~-cycle start ».

? – Current status

Cette commande retourne immĂ©diatement l’Ă©tat actif de GRBL avec la position en temps rĂ©el dans les coordonnĂ©es de travail et dans celles machine.

Ctrl-x – Reset Grbl

C’est la rĂ©initialisation logicielle de GRBL. Elle rĂ©initialise GRBL en temps rĂ©el mais en conservant la position machine et sans Ă©teindre l’Arduino.

Il est recommandĂ© d’Ă©xĂ©cuter cette commande avant de commencer tout travail. La machine partira ainsi sur des bases saines et fera exactement ce qu’on lui demande.


Ajouter un commentaire

* Champ requis

Votre email ne sera pas publiée.

*