Programmation CNC démystifiée : Code G vs Code M
Une grande partie de l'usinage multitâche et multiaxes d'aujourd'hui ne fonctionnerait pas sans la programmation machine. Voici les fondamentaux des langages de programmation machine : code G, code M et FAO — avec un regard vers l'avenir au-delà du code G.
Pour comprendre le rôle de la programmation machine dans la fabrication CNC aujourd'hui, il faut une compréhension de base du code G et du code M.
« L'usinage CNC existe depuis 40 ou 50 ans, donc ce n'est pas un nouveau processus dans notre industrie », dit Kevin Finan, instructeur au Atlantic Technical College and Technical High School. Quand Finan enseigne la fabrication et l'usinage, il commence par s'assurer que les étudiants comprennent le plan d'une pièce. Après cela, ils apprennent un peu d'usinage manuel, puis l'usinage CNC en utilisant le code G et le code M, et après cela, le logiciel FAO (fabrication assistée par ordinateur).
Commandes Code G vs Codes M : Quelle est la différence ?
Les commandes code G sont un ensemble de combinaisons spécifiques de lettres et de chiffres qui dictent à la machine quelle partie déplacer, comment la déplacer et où aller. Les commandes code G génériques sont généralement les mêmes pour toute machine, par exemple :
- G0 est un déplacement rapide vers un autre emplacement
- G1 est une coupe en ligne droite
- G2 est un arc dans le sens horaire
- G3 est un arc dans le sens antihoraire
« Ces codes sont combinés avec des coordonnées XYZ, donc par exemple, la commande G0 déplacera la machine rapidement vers l'emplacement spécifié », dit Finan.
« Il y a des années, on demandait aux étudiants et stagiaires de mémoriser les codes, mais je ne le fais pas nécessairement car vous finirez par les mémoriser simplement en les utilisant, et on peut les trouver en ligne et dans le manuel du machiniste », dit-il.
Les codes G peuvent être lus et traités par le contrôleur de la machine pour déplacer soit la tête soit la table pour effectuer des opérations de coupe dans un plan de coupe. Ils fonctionnent aux côtés des codes M dans le même programme (M signifie divers).
Les codes M contrôlent les fonctions auxiliaires (non de coupe) de la machine telles que le flux de fluide de coupe ou un compresseur d'air pour souffler les copeaux. Sur des machines tour-fraiseuse plus complexes, un code M pourrait commander la contre-broche pour saisir la pièce sur la broche principale afin que l'arrière de la pièce puisse être usiné.
Des commandes Code G aux systèmes FAO
« Avant, on écrivait ces codes G à la main », dit Chris MacBain, responsable marketing technique chez 3D Systems. « Le programmeur visualisait ce que l'outil devait faire pour créer la pièce — comment bouger, où couper, à quelle vitesse couper, et convertissait ensuite ces mouvements en un fichier texte consistant en codes G et M. »
Selon MacBain, l'usinage CNC a historiquement commencé avec les commandes de mouvement entrées sur cartes perforées ou bande perforée qui était introduite dans la machine.
« Le contrôleur, qui est le cerveau de la machine CNC, lisait les trous dans les cartes ou dans la bande et effectuait ensuite le mouvement approprié », dit-il.
Mais les cartes en papier et la bande dans un environnement d'atelier de machines animé avaient tendance à se déchirer, se salir, se perdre ou être introduites dans la machine dans le désordre, causant des pièces rebutées et des machines crashées. Finalement, des contrôleurs électroniques ont été construits où l'opérateur pouvait entrer les codes directement en se tenant à la machine.
« Ensuite, à mesure que la fabrication devenait plus avancée, l'usinage 3 axes et 5 axes a rendu l'écriture du code G à la main quasi impossible — c'est là que les systèmes de fabrication assistée par ordinateur, ou FAO, sont nés », dit MacBain.
Création de commandes Code G avec la programmation de systèmes FAO
« Les systèmes FAO vous permettent de prendre un modèle CAO d'une pièce et de dicter où vous voulez que cet outil coupe, quel outil vous voulez utiliser, à quelle vitesse vous voulez qu'il bouge, où vous voulez qu'il commence, où vous voulez qu'il s'arrête, combien de matière enlever, et à quelle distance vous voulez que l'outil descende vers la pièce avant de commencer à couper », dit MacBain. « Cela accélère vraiment le processus de création du code G. »
Mais avant que le système FAO ne crée le code G, il permet au programmeur de construire une simulation de trajectoire d'outil de la façon dont la machine fonctionnera pour créer la pièce.
« Comme le vieux dicton, "garbage in, garbage out" et ces machines feront exactement ce que vous leur avez demandé de faire, peu importe quoi », dit MacBain. « Si vous dites à un outil de descendre de 8 pouces, le code ne reconnaît pas qu'il peut y avoir quelque chose en travers, comme un montage ou un morceau de la pièce, mais le système FAO vous permet de prévisualiser ce que l'outil va faire avant d'appuyer réellement sur le bouton. »
MacBain compare le logiciel FAO au pilote d'imprimante spécifique qu'un ordinateur nécessite pour imprimer une image. Le pilote s'appelle un post-processeur, qui crée le code G qui déplace la machine CNC.
« Tous les contrôleurs utilisent les mêmes commandes G et M génériques, mais l'ordre dans lequel ils sont, la façon dont ils sont espacés, la façon dont les nombres sont présentés avec ou sans zéros initiaux, sont spécifiques à la machine », dit MacBain. « Donc, tout comme chaque imprimante a besoin d'un pilote spécifique, chaque machine CNC a besoin d'un post-processeur différent qui crée du code G spécifiquement pour cette machine. »
L'action du post-traitement dans un système FAO est ce qui crée le code G, qui est ensuite envoyé au contrôleur de la machine, soit par réseau, soit avec une clé USB. Le fichier est envoyé à la machine et l'opérateur appelle le programme sur l'écran du contrôleur et examine le code G pour s'assurer qu'il exécute la bonne pièce avec les bons outils au bon décalage.
« À ce stade, l'opérateur peut apporter des modifications au code si nécessaire, et une fois la machine prête à exécuter le programme, il appuiera sur le bouton vert et exécutera le programme pour faire la pièce », dit MacBain.
Besoin de conseils d'autres machinistes et spécialistes de l'usinage expérimentés ? Rejoignez les conversations sur le forum usinage. [inscription requise]
Participez à notre sondage
Quels domaines de la programmation machine vous donnent le plus de difficultés au quotidien ?
Technologie industrielle
- Top 10 langages de programmation cloud que tout développeur devrait maîtriser
- Programmation systèmes embarqués : langages, architecture et applications
- Découvrez les 9 langages de programmation à apprendre absolument en 2021
- Générer du G-code CNC avec ArtCAM : Tutoriel pas-à-pas
- Machinistes à l'épreuve du futur : Maîtriser les compétences de programmation pour l'automatisation
- Programmation CNC : Compétences avancées recherchées pour la fabrication moderne
- Machines à Fraiser Polyvalentes : Fraisage, Perçage et Bien Plus
- Fondamentaux CNC : Maîtriser la commande numérique par ordinateur
- Comprendre le G-Code et le M-Code : Commandes essentielles de l'usinage CNC expliquées