Les imprimantes 3D ont grandement profité des grandes avancées de la technologie de fabrication au cours des deux dernières décennies. Non seulement les imprimantes 3D sont incroyablement petites et très précises, mais elles sont presque entièrement automatisées. Ce passage à l’automatisation a assuré que les équipements de fabrication modernes sont moins sujets aux erreurs inhérentes aux opérations manuelles.
Au cœur de tout processus automatisé se trouve un langage de programmation standard. En impression 3D, ce langage de programmation est connu sous le nom de G-Code. Qu’est-ce que le G-Code et comment aide-t-il les gens à communiquer avec les imprimantes 3D?
Une brève histoire de G-Code
Le G-Code est assez facile à repérer, car ses commandes sont préfixées par la lettre «G.» De nombreuses références diraient que le «G» signifie géométrique, mais ce n’est plus une définition représentative des capacités du G-Code. Cela peut surprendre certains, mais G-Code n’est pas un langage de programmation exclusivement utilisé pour l’impression 3D.
Au lieu de cela, c’est un langage de programmation qui a été principalement développé pour tous les types de machines à commande numérique par ordinateur (CNC). Ceux-ci comprennent à la fois des découpeuses, des tours et des usines à l’échelle industrielle et des équipements de bureau tels que des imprimantes 3D.
La première utilisation d’un langage de programmation pour l’automatisation des processus industriels a coïncidé avec le développement de la technologie CNC dans les années 1950. À l’époque, différentes organisations utilisaient différents langages de programmation. Au fil des décennies, plusieurs pays ont entrepris des efforts de normalisation, aboutissant au développement du RS-247-D par l’Electronic Industries Alliance.
Le RS-247-D est devenu la première version du G-Code, s’étendant sous de nombreuses formes à travers des révisions répétées. Les extensions et variations du G-Code sont courantes jusqu’à présent, en particulier parmi les différents fabricants de machines-outils.
Dans ses anciennes versions, G-Code manquait de véritables relations logiques et ne pouvait pas intégrer de boucles et d’opérateurs conditionnels dans un programme. Au fil des ans, G-Code est devenu un langage presque similaire aux langages de programmation de haut niveau. Les problèmes de compatibilité provoqués par des différences subtiles dans la mise en œuvre du G-Code ont été surmontés par l’utilisation d’applications CAD ou CAM qui peuvent traduire le code développé par l’utilisateur en G-Code approprié.
Les meilleurs offres d’imprimantes 3D chez Amazon :
Est-il important de se renseigner sur G-Code?
Il n’est pas inhabituel que quelqu’un travaille déjà avec des imprimantes 3D depuis un certain temps et qu’il n’ait jamais rencontré de commande G-Code auparavant. En effet, la plupart des logiciels de découpage convertissent un modèle 3D en liste appropriée de commandes G-Code, qui seront ensuite envoyées à l’imprimante 3D. Tout cela se fait automatiquement et l’opérateur n’a jamais à voir les commandes G-Code générées par le logiciel.
Bien qu’un manque de connaissances sur les codes G ne soit pas handicapant pour un professionnel de l’impression 3D, vous pouvez mieux comprendre le fonctionnement de votre imprimante 3D en comprenant le fonctionnement des codes G. Bien que le processus de transformation d’un modèle en G-Code soit pratiquement rendu invisible par le logiciel Slicer, ils offrent également une option pour exporter le code que vous pouvez réviser et réviser manuellement. En consultant le code, vous pourrez modifier les performances de votre imprimante, repérer les erreurs ou les pannes et effectuer un dépannage intelligent.
La connaissance du G-Code vous sera utile si vous travaillez sur une conception particulièrement complexe. Les modèles avec des géométries complexes et des fonctionnalités en surplomb peuvent toujours échouer lors de l’impression lors de l’utilisation d’un script G-Code généré automatiquement. Connaître le G-Code vous permettra de plonger dans le code et de faire des ajustements mineurs ici et là. Si vous prévoyez de le faire, assurez-vous d’avoir également un visualiseur de code G et un outil de simulation à portée de main, car même les meilleurs codeurs font des erreurs.
La bonne nouvelle est qu’il ne faut pas de compétences avancées en codage pour apprendre le G-Code. Si vous avez fait toute sorte de programmation, vous trouverez peut-être que G-Code est assez facile. Il s’agit d’un langage de programmation presque exclusivement composé de commandes – il s’appuie rarement sur des boucles conditionnelles ou toute sorte de logique. L’imprimante 3D exécute simplement la ligne de commande ligne par ligne.
Les bases des commandes G-Code courantes
La meilleure façon de comprendre les commandes G-Code est de plonger dans la liste des commandes courantes utilisées dans l’impression 3D et de les analyser une par une. À ce stade, nous devons noter que toutes les commandes utilisées dans les imprimantes 3D ne sont pas des G-Codes.
Alors que les codes G contrôlent le positionnement de la buse dans l’espace 3D, il existe également des codes M qui contrôlent les diverses fonctions de l’imprimante 3D. Celles-ci incluent les commandes de chauffage de la buse et du lit d’impression, la vitesse du ventilateur et l’ouverture et la fermeture de l’enceinte du lit.
Chaque ligne de commande commence par une commande générique G-Code ou M-Code, suivie d’une série d’arguments. Les arguments requis dépendront du type de commande auquel ils sont attachés. Par exemple, la ligne de commande suivante va sembler très familière à tous ceux qui ont déjà consulté le G-Code pour un projet d’impression 3D standard:
G1 X10 Y10 F2000.0 E0.055
Il s’agit essentiellement d’une ligne de commande G1 suivie des arguments nécessaires sur le positionnement, la vitesse et l’extrusion. Nous allons essayer de donner un sens à cette ligne de commande dans les sections suivantes.
Mouvement linéaire
Plus de 90% d’une liste de commandes pour l’impression 3D commencera par G1, le code du mouvement linéaire. Cette ligne de commande dicte la position cible de la buse de l’imprimante, ainsi que la vitesse à laquelle la buse se déplacera.
L’argument de position de G1 est préfixé par les lettres X, Y et Z. Les valeurs ajoutées aux lettres déterminent la position de la buse en fonction des axes correspondants. Dans notre premier exemple ci-dessus, la commande déplace la buse en position X10 et Y10 tandis que sa position Z reste inchangée.
Notez que le mouvement de la buse peut être basé sur un axe absolu ou sa position relative. Définir le système de positionnement approprié pour un projet est quelque chose que nous aborderons plus tard.
L’argument de la vitesse dicte la vitesse à laquelle la buse se déplacera vers la position souhaitée, exprimée en unités de millimètres par minute. Il est préfixé par la lettre F. Dans notre exemple, la buse se déplacera à 2000 mm / min.
Enfin, vous pouvez commander à l’imprimante d’extruder une petite quantité de filament pour compenser le mouvement de la buse en utilisant la valeur E. Il s’agit souvent d’une très petite valeur. Dans notre exemple, la commande concerne l’extrusion de seulement 0,055 millimètre de filament.
Définir le mode de positionnement
Avant de pouvoir émettre des commandes pour le déplacement de la buse, vous devez informer l’imprimante si les commandes sont basées sur un système de positionnement absolu ou relatif. Dans un système absolu, la buse se déplacera par rapport à un axe fixe typiquement centré au milieu du lit d’impression. Dans un système de positionnement relatif, toutes les commandes de mouvement seront exécutées par rapport à la position actuelle de la buse.
Le mode de positionnement est établi au début du programme mais peut être modifié à mi-chemin. Les commandes sont G90 pour un positionnement absolu et G91 pour un positionnement relatif. Cette commande ne nécessite aucun argument.
Chauffage extrudeuse
Il existe deux types de commandes utilisées pour chauffer l’extrudeuse d’une imprimante 3D. L’un ou l’autre atteint l’objectif de chauffer l’extrudeuse à la température souhaitée. le M109 La commande empêche le programme de passer à l’étape suivante jusqu’à ce que la température cible soit atteinte. En revanche, le M104 La commande permet de programmer pour continuer pendant que le chauffage est en cours.
Les deux commandes nécessitent le même ensemble d’arguments. La valeur S spécifie la température cible de l’extrudeuse. Les valeurs T ne sont nécessaires que pour les systèmes multi-extrudeuses – choisir entre 1 et 0 vous permet de choisir à quelle extrudeuse envoyer la commande de chauffage.
Chauffage de lit
Les commandes pour le chauffage du lit sont très similaires à celles du chauffage par extrudeuse – M140 et M190. La distinction entre les deux sera également très familière. le M190 commande mettra le reste du programme en attente pendant que le lit chauffe, tandis que le M140 permet au programme de continuer à s’exécuter.
Une chose à retenir est qu’il faut beaucoup plus de temps pour chauffer un lit d’impression qu’une extrudeuse. Pour cette raison, la plupart des trancheuses placeront l’étape de chauffage du lit beaucoup plus tôt dans le programme. Même dans ce cas, il n’est pas rare qu’une imprimante suspende son programme en attendant que le lit d’impression atteigne la température cible.
Comme les imprimantes n’auront généralement qu’un seul lit chauffé, seule la valeur S est requise comme argument pour les commandes M190 et M140.
Vitesse du ventilateur
Si votre imprimante est livrée avec un ventilateur de refroidissement, vous pouvez régler sa vitesse à M106 commander. Le seul argument nécessaire pour M106 est la valeur S, qui détermine essentiellement la vitesse du ventilateur de refroidissement. Les valeurs S vont de 0 (désactivé) à 255 (pleine puissance). L’argument peut être défini sur n’importe quel entier dans cette plage.
Routine de homing des buses
L’une des commandes les plus importantes est G28, qui exécute une routine de référencement de buse. C’est quelque chose que vous voudrez faire à la fois au début et à la fin de chaque projet d’impression.
Lorsque cette commande est émise, la buse se déplace vers la position d’origine désignée, qui se trouve généralement dans un coin éloigné du lit d’impression. Ceci établit un point de départ fixe pour toutes les commandes de mouvement de buse suivantes.
La commande G29 peut être émise sans argument, ce que la machine supposera comme signifiant que la buse se déplacera vers la position d’origine dans les trois axes. Des axes particuliers peuvent être indiqués en les ajoutant comme arguments (c.-à-d. G28 X Y; pour loger la buse sur les axes X et Y).
Écraser les axes existants
En utilisant le G92 , vous pouvez remplacer les coordonnées absolues de l’un des axes, créant ainsi un nouveau point de référence pour toutes les commandes de mouvement suivantes. Cela peut être fait sur n’importe lequel des axes X, Y et Z, mais vous devrez les spécifier dans les arguments. Sinon, les axes non mentionnés resteront inchangés.
L’utilisation la plus courante de la commande G92 est de rétablir l’axe E ou la position du filament. En émettant la commande G92 E0, la position actuelle du filament est définie sur E = 0. Cela signifie que toutes les commandes d’extrusion suivantes mesureront la longueur du filament jusqu’à la position actuelle du filament. Ceci est particulièrement important lors du démarrage d’une nouvelle couche ou lors de la commande de l’extrudeuse pour rétracter une longueur spécifique du filament.
Comment pratiquer l’écriture de vos propres codes G
La meilleure façon de comprendre les codes G serait de les écrire vous-même et de voir comment l’imprimante répond à vos commandes. Cela peut sembler une proposition intimidante, car vous auriez naturellement peur de gâcher votre imprimante 3D. Heureusement, il existe des outils de simulation qui peuvent fournir un environnement d’apprentissage plus sûr.
Le logiciel Slicer comme Cura ou Simplify3D est livré avec un module de visualisation de code G. La visionneuse vous permet d’exécuter un script de code G et de visualiser le chemin que l’extrudeuse prendra si vous aviez exécuté le code sur une imprimante réelle. Si vous n’avez pas accès à ces plateformes logicielles, vous pouvez même utiliser cet outil en ligne gratuit, qui fonctionne de la même manière.
Lorsque vous en apprenez encore sur le G-code, un bon visualiseur de G-code et un bon outil de simulation peuvent vous éviter de perdre du temps et du filament sur les impressions ayant échoué.
Dernières pensées
Nous pouvons être en mesure de retracer les origines de G-Code aux gros équipements industriels utilisés dans les installations de fabrication. Pour ceux d’entre vous qui sont dans l’impression 3D, tout ce que vous devez savoir sur G-Code est que c’est le langage qu’un logiciel de découpage utilise pour communiquer avec l’imprimante 3D. Fondamentalement, la trancheuse convertit un modèle 3D en une série de commandes à suivre pour l’imprimante 3D.
Dans la plupart des cas, un professionnel de l’impression 3D n’aurait pas à se soucier du G-Code, laissant plutôt le logiciel de découpage faire tout le travail. Cependant, la connaissance du G-Code est essentielle pour réaliser des prouesses avancées de l’impression 3D, en particulier dans la reproduction de modèles complexes. G-Code peut également être utilisé comme outil de diagnostic si vous rencontrez des problèmes avec votre imprimante 3D.
Comparé à d’autres langages de programmation, G-Code est très simple. Il n’a ni variables ni boucles. Au lieu de cela, ce n’est qu’une longue liste de commandes. En pratiquant avec de vrais scripts G-Code et en simulant les résultats, vous pouvez être un expert en un rien de temps.

Je suis passionné par l’impression 3D et les nouvelles technologies qui transforment notre façon de concevoir et de fabriquer. À travers mes articles, je partage des tests d’imprimantes 3D, des conseils pratiques, des comparatifs et des retours d’expérience pour aider chacun à mieux comprendre cette technologie et à faire les bons choix, que l’on débute ou que l’on souhaite aller plus loin.

