Programmation CNC -g-code et m-code

Programmation en Code-G

Introduction

Dans l’univers de l’usinage numérique, la programmation CNC est le cœur battant de toute machine-outil. Que vous soyez machiniste, ingénieur, étudiant ou passionné de fabrication additive, comprendre les codes G et M est une compétence fondamentale. Ces deux langages, bien que souvent confondus, jouent des rôles distincts mais complémentaires dans le contrôle des machines CNC.

Sur cnc-machine.ma, nous nous engageons à démystifier ces concepts techniques pour les rendre accessibles à tous les niveaux. Dans cet article de 1500 mots, nous explorerons en profondeur la programmation en Code-G et Code-M, leurs différences, leurs usages pratiques, des exemples concrets, et les meilleures pratiques pour optimiser vos programmes CNC. Vous découvrirez également comment ces codes sont utilisés sur les machines disponibles au Maroc, notamment les CN Fanuc, Siemens, Heidenhain et Mazak.


1. Qu’est-ce que le Code-G ?

Le Code-G (ou G-code) est un langage de programmation utilisé pour contrôler les mouvements physiques de la machine. Il dicte et comment l’outil doit se déplacer dans l’espace 3D (ou 5D pour les machines multiaxes).

1.1. Structure d’un Code-G

Un bloc de G-code typique ressemble à ceci :

N10 G01 X50 Y25 Z-5 F200
  • N10 : Numéro de ligne
  • G01 : Interpolation linéaire
  • X50 Y25 Z-5 : Coordonnées de destination
  • F200 : Vitesse d’avance (mm/min)

1.2. Catégories de Code-G

CatégorieExemplesDescription
MouvementG00, G01, G02, G03Déplacement rapide, interpolation linéaire, circulaire
Plan de travailG17, G18, G19Sélection du plan XY, XZ ou YZ
CoordonnéesG90, G91Positionnement absolu ou relatif
Correction d’outilG41, G42, G40Compensation de rayon d’outil
Cycle fixesG81 à G89Percage, taraudage, alésage

2. Qu’est-ce que le Code-M ?

Le Code-M (ou M-code) contrôle les fonctions auxiliaires de la machine. Il ne gère pas le mouvement, mais active ou désactive des fonctions comme le refroidissement, le changement d’outil, ou l’arrêt du programme.

2.1. Exemples de Code-M

Code MFonction
M03Mise en rotation broche dans le sens horaire
M05Arrêt de la broche
M06Changement d’outil
M08Activation du refroidissement
M09Arrêt du refroidissement
M30Fin de programme avec retour au début

3. Différences entre Code-G et Code-M

CritèreCode-GCode-M
FonctionContrôle des mouvementsContrôle des fonctions machines
ExemplesG01, G02, G90M03, M06, M08
CompatibilitéStandardisé mais variable selon les marquesTrès variable selon les constructeurs
PrioritéExécuté en continuSouvent exécuté en fin de bloc

4. Exemple de Programme CNC Complet (Fanuc)

Voici un exemple simple de profilage d’une pièce rectangulaire en aluminium :

%
O1000 (PROGRAMME DE PROFILAGE)
G21 G17 G90 G40 G49 G80
T1 M06 (FRAISE 10MM)
G54
M03 S8000
G00 X0 Y0 Z5
M08
G01 Z-2 F200
G41 X10 Y10 D01
Y50
X90
Y10
X10
Y10
G40 X0 Y0
G00 Z5
M09
M05
M30
%

5. Programmation pour les differentes Machines

5.1. Fanuc (ex. Fanuc 0i-MF)

  • Très répandu dans les ateliers marocains.
  • Syntaxe stricte.
  • Support des cycles fixes (G81 à G89).
  • Exemple de cycle de percage :
G81 X30 Y20 Z-10 R2 F100

5.2. Siemens (ex. SINUMERIK 828D)

  • Utilise des cycles à haut niveau comme CYCLE82.
  • Syntaxe plus lisible :
CYCLE82(5, 0, 2, -10, 0, 100, 0)

5.3. Heidenhain

  • Utilise un langage convivial (ex. CYCL DEF 200)。
  • Très utilisé dans les CN 5 axes comme les DMG Mori disponibles à Casablanca.

6. Erreurs Courantes à Éviter

ErreurConséquenceSolution
Oublier G40 après G41/G42Sur usinage, casse d’outilToujours annuler la compensation
M03 sans M05Broche tourne après finToujours terminer par M05
G90 après G91Décalage de positionRéinitialiser le mode absolu
Mauvaise valeur de DTrop ou trop peu de matièreVérifier le rayon d’outil dans le registre

7. Outils de Simulation et Vérification

Avant d’envoyer votre programme à la machine, utilisez :

  • NC Viewer (gratuit)
  • CNC Simulator Pro
  • Fusion 360 (avec post-processeur Fanuc/Siemens)
  • VERICUT (pour les usines avancées)

8. Création de Post-processeur

Sur cnc-machine.ma, nous proposons des post-processeurs personnalisés pour :

  • Fanuc 0i/31i
  • Siemens 828D/840D
  • Heidenhain TNC 640
  • Mazatrol (Mazak)

Ces post-processeurs sont compatibles avec Fusion 360, SolidCAM, Mastercam, et UG NX.


9. Cas d’Étude : Usinage d’une Pièce Automobile

Contexte : Atelier de précision à Tanger, pièce en AL7075, tolérance ±0.02 mm.

Machine : DNM 5700 (Fanuc 0i-MF)

Programme extrait :

T2 M06 (FRAISE 6MM 2 FUTES)
G54
M03 S12000
G00 X15 Y15 Z5
G01 Z-3 F300
G42 X20 Y20 D02
G03 X30 Y30 I5 J0
G01 X40
G03 X50 Y20 I0 J-5
G01 Y10
G03 X40 Y0 I-5 J0
G01 X20
G03 X15 Y5 I0 J5
G40 X0 Y0
G00 Z5
M05
M30

Résultat : Temps de cycle réduit de 18 % grâce à l’optimisation des trajectoires.


10. FAQ – Questions Fréquentes

❓ Peut-on utiliser le même G-code sur Fanuc et Siemens ?

Non, il faut un post-processeur adapté. Par exemple, G91 est compatible, mais les cycles fixes diffèrent.

❓ Quelle est la différence entre G54 et G55 ?

Ce sont des origines pièces différentes. G54 est l’origine 1, G55 l’origine 2, etc.

❓ Comment faire un changement d’outil manuel ?

Utiliser M06 T0 ou désactiver le changeur dans les paramètres machine.


11. Conclusion

Maîtriser les codes G et M est la clé pour optimiser la productivité, réduire les temps d’arrêt, et garantir la qualité de vos pièces usinées. Que vous utilisiez une CN Fanuc à Casablanca, une Siemens à Rabat, ou une Mazak à Agadir, la bonne programmation fait toute la différence.

Chez cnc-machine.ma, nous croyons que l’expertise CNC doit être accessible à tous. C’est pourquoi nous continuons à publier des guides, des vidéos, et des outils pratiques pour vous accompagner dans votre parcours.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut