Les bases de la programmation G-code pour machines CNC
Le G-code est le langage universel des machines à commande numérique. Maîtriser ses bases constitue une compétence fondamentale pour tout professionnel de l’usinage CNC.
Qu’est-ce que le G-code ?
Le G-code (ou code G) est un langage de programmation standardisé qui permet de communiquer des instructions à une machine CNC. Chaque ligne de code indique à la machine un mouvement, une vitesse ou une action spécifique à réaliser.
Développé dans les années 1960, ce langage reste la base de la programmation CNC malgré l’apparition de logiciels FAO sophistiqués. Comprendre le G-code permet de modifier, optimiser et dépanner les programmes d’usinage.
Structure d’un programme G-code
Un programme G-code suit une structure logique composée de blocs (lignes) exécutés séquentiellement.
Éléments de base
- N : numéro de bloc (ligne)
- G : fonctions préparatoires (mouvements, modes)
- M : fonctions auxiliaires (broche, arrosage, arrêt)
- X, Y, Z : coordonnées de position
- F : vitesse d’avance (mm/min)
- S : vitesse de broche (tr/min)
- T : numéro d’outil
Exemple de programme simple
O0001 (NOM DU PROGRAMME)
N10 G90 G21 (Mode absolu, unités métriques)
N20 G28 G91 Z0 (Retour origine machine en Z)
N30 T01 M06 (Changement outil T01)
N40 S1200 M03 (Broche 1200 tr/min, sens horaire)
N50 G00 X50.0 Y25.0 (Positionnement rapide)
N60 G00 Z5.0 (Approche en Z)
N70 G01 Z-3.0 F150 (Plongée, avance 150 mm/min)
N80 G01 X100.0 F300 (Usinage linéaire)
N90 G01 Y75.0 (Usinage linéaire)
N100 G00 Z50.0 (Dégagement en Z)
N110 M05 (Arrêt broche)
N120 G28 G91 Z0 (Retour origine)
N130 M30 (Fin de programme)
Les commandes G essentielles
Mouvements
| Code | Fonction | Usage |
|---|---|---|
| G00 | Déplacement rapide | Positionnement sans usinage |
| G01 | Interpolation linéaire | Usinage en ligne droite |
| G02 | Interpolation circulaire horaire | Arcs de cercle (sens horaire) |
| G03 | Interpolation circulaire anti-horaire | Arcs de cercle (sens anti-horaire) |
Modes de positionnement
| Code | Fonction | Description |
|---|---|---|
| G90 | Mode absolu | Coordonnées par rapport à l’origine |
| G91 | Mode incrémental | Coordonnées relatives à la position actuelle |
Cycles fixes (perçage)
| Code | Fonction | Usage |
|---|---|---|
| G81 | Cycle de perçage simple | Trous débouchants |
| G83 | Cycle de perçage avec débourrage | Trous profonds |
| G84 | Cycle de taraudage | Filetage intérieur |
| G73 | Cycle de perçage à grande vitesse | Trous avec bris de copeaux |
Les commandes M essentielles
| Code | Fonction |
|---|---|
| M03 | Broche sens horaire |
| M04 | Broche sens anti-horaire |
| M05 | Arrêt broche |
| M06 | Changement d’outil |
| M08 | Arrosage activé |
| M09 | Arrosage désactivé |
| M30 | Fin de programme et rembobinage |
La norme ISO 6983 définit les codes G et M standard, mais chaque constructeur de machines (Fanuc, Siemens, Heidenhain) peut ajouter des codes spécifiques. Il est essentiel de consulter la documentation de sa machine.
Du G-code à la FAO
Les logiciels de Fabrication Assistée par Ordinateur (FAO) génèrent automatiquement le G-code à partir de modèles 3D. Les plus utilisés dans l’industrie :
- Mastercam : leader mondial, interface intuitive
- Hypermill : spécialisé 5 axes, très performant
- Fusion 360 : solution intégrée CAO/FAO, accessible
- NX CAM (Siemens) : haut de gamme, grandes séries
- SolidCAM : intégré à SolidWorks
Même avec un logiciel FAO, la connaissance du G-code reste indispensable pour vérifier, modifier et optimiser les programmes générés.
Progresser en programmation CNC
Pour approfondir ses compétences en programmation :
- Pratiquer sur des simulateurs CNC gratuits (CNCSimulator, LinuxCNC)
- Étudier les manuels de programmation du constructeur de sa machine
- Suivre des formations certifiantes (Heidenhain, Fanuc, Siemens)
- Analyser et modifier des programmes existants en atelier
- Participer à des communautés en ligne spécialisées
La maîtrise du G-code distingue un opérateur capable de résoudre des problèmes de production de manière autonome et efficace.