Apprendre à programmer

Programmation ISO (ou G-code) : Guide

La programmation ISO (ou G-code) est un langage standard utilisé pour contrôler les machines-outils à commande numérique (CNC). Il permet de définir les mouvements et opérations à réaliser sur une pièce, en spécifiant les trajectoires des outils, les vitesses de coupe, les avances, ainsi que les cycles d’usinage. Ce type de programmation est couramment utilisé dans le tournage et le fraisage, et fonctionne via une série de commandes organisées sous forme de code.

Voici une vue d’ensemble du fonctionnement de la programmation ISO :


1. Structure du G-code

Un programme ISO se compose d’une série de blocs (lignes de code), chacun représentant une étape ou une instruction que la machine doit suivre. Chaque bloc commence généralement par une commande G ou M, suivie de paramètres spécifiques à l’opération (coordonnées, vitesse, etc.).

Exemple d’un bloc simple :

G1 X50 Z-100 F0.3  ; Mouvement linéaire jusqu'à X=50 et Z=-100 avec une avance de 0,3 mm/tour

Commandes principales dans le G-code :

  • G-codes : Ce sont les commandes qui dictent les types de mouvements ou de cycles d’usinage.
  • G0 : Mouvement rapide (non coupant).
  • G1 : Mouvement linéaire (coupant).
  • G2 et G3 : Mouvements circulaires (G2 pour le sens horaire, G3 pour le sens antihoraire).
  • G96 : Vitesse de coupe constante.
  • G71 : Cycle de dégrossissage.
  • M-codes : Commandes auxiliaires pour les fonctions machine, telles que l’arrêt et le démarrage de la broche, le changement d’outil.
  • M3 : Démarrage de la broche dans le sens horaire.
  • M6 : Changement d’outil.
  • M30 : Fin de programme et retour à zéro.

2. Programmation en coordonnées

La programmation ISO repose sur des systèmes de coordonnées pour indiquer la position de l’outil sur la pièce. Il existe deux modes principaux de programmation :

  • G90 (Coordonnées absolues) : Les positions sont définies par rapport à un point d’origine fixe (généralement le point zéro de la pièce).
  • Par exemple, G1 X50 Z-100 déplace l’outil à la position ( X = 50 \, mm ), ( Z = -100 \, mm ) par rapport à l’origine.
  • G91 (Coordonnées incrémentales) : Les positions sont définies par rapport à la position actuelle de l’outil.
  • Par exemple, G1 X10 Z-20 déplace l’outil de 10 mm vers la droite et de 20 mm vers le bas à partir de sa position actuelle.

3. Définition des mouvements d’outil

Les mouvements d’outil sont principalement définis par les commandes G0, G1, G2, et G3 :

  • G0 : Mouvement rapide non coupant. Il est utilisé pour amener rapidement l’outil à une position de départ sans enlever de matière.
  • Exemple : G0 X100 Z50 place rapidement l’outil à ( X = 100 ) et ( Z = 50 ).
  • G1 : Mouvement linéaire coupant. Ce mouvement est utilisé pour l’usinage.
  • Exemple : G1 X50 Z-100 F0.2 déplace l’outil de manière linéaire à une avance de 0,2 mm/tour.
  • G2 et G3 : Mouvements circulaires, respectivement dans le sens horaire et antihoraire. Utilisés pour usiner des arcs ou des contours circulaires.
  • Exemple : G2 X60 Z-30 R20 déplace l’outil de manière circulaire avec un rayon de 20 mm en sens horaire.

4. Cycles fixes d’usinage

La programmation ISO offre des cycles fixes qui automatisent certaines opérations répétitives, comme le perçage, le filetage, ou les cycles de dégrossissage. Cela simplifie la programmation des tâches courantes en permettant l’exécution de plusieurs étapes avec une seule commande.

Exemples de cycles fixes :

  • G71 : Cycle de dégrossissage utilisé pour l’usinage en plusieurs passes pour retirer progressivement de la matière.
  • Exemple : G71 U2 R1 indique des passes de 2 mm avec un retrait de l’outil de 1 mm à chaque passe.
  • G76 : Cycle de filetage multiple.
  • Exemple : G76 X18 Z-30 P1.5 réalise un filetage avec un pas de 1,5 mm sur une longueur de 30 mm, avec un diamètre final de 18 mm.
  • G83 : Cycle de perçage avec débourrage (utilisé pour retirer les copeaux pendant le perçage profond).
  • Exemple : G83 Z-50 R5 Q5 signifie un perçage jusqu’à 50 mm de profondeur, avec un retour de l’outil à 5 mm au-dessus de la pièce après chaque incrément de 5 mm.

5. Commandes de vitesse et d’avance

La vitesse de la broche et l’avance de l’outil sont définies pour garantir un usinage de qualité et sécurisé.

  • G96 (Vitesse de coupe constante) : La vitesse de rotation de la broche est ajustée en fonction du diamètre de la pièce pour maintenir une vitesse de coupe constante.
  • Exemple : G96 S150 définit une vitesse de coupe constante de 150 m/min.
  • G97 (Vitesse de broche fixe) : Définit une vitesse de rotation fixe de la broche en tours par minute (tr/min).
  • Exemple : G97 S500 fixe la vitesse de la broche à 500 tr/min.
  • F (Avance) : Définit l’avance de l’outil par tour (ou par minute dans certains cas).
  • Exemple : F0.2 signifie que l’outil avance de 0,2 mm par tour de broche.

6. Correction d’outil

Chaque outil a une géométrie unique (longueur, diamètre) et la machine doit prendre en compte ces paramètres pour un usinage précis. La correction d’outil permet d’ajuster la position de l’outil selon sa géométrie.

  • T (Changement d’outil) : Sélectionne l’outil avec son correcteur de géométrie.
  • Exemple : T0101 M6 sélectionne l’outil n°1 avec le correcteur associé, et change l’outil.
  • Les corrections d’outils sont stockées dans un tableau de corrections en mémoire de la machine, et chaque outil est associé à un numéro de correcteur spécifique.

7. Sécurité dans la programmation ISO

Pour éviter les collisions et assurer la sécurité, la programmation ISO inclut des mesures de précaution :

  • Positionnement en sécurité : Les mouvements rapides avec G0 permettent de positionner l’outil à une distance sûre de la pièce avant d’entamer une opération d’usinage.
  • Mise en arrêt automatique : Le code M30 à la fin du programme remet la machine à zéro et arrête la broche.

Exemple complet de programme ISO pour tournage

Voici un exemple de programme ISO qui réalise le dressage, le tournage d’un diamètre extérieur, et le filetage d’une pièce cylindrique :

O0001             ; Numéro du programme
G21               ; Unités en millimètres
G90               ; Programmation en coordonnées absolues

T0101 M6          ; Sélection de l'outil de dressage
G96 S200 M3       ; Vitesse de coupe constante (200 m/min) et démarrage de la broche
G0 X110 Z5        ; Positionnement de sécurité
G1 Z0 F0.2        ; Descente de l'outil à la face de la pièce
G1 X-2 F0.2       ; Dressage de la face
G0 X110           ; Retrait de l'outil

T0202 M6          ; Sélection de l'outil de tournage extérieur
G96 S150 M3       ; Vitesse de coupe constante pour le tournage
G0 X60 Z0         ; Positionnement au départ de l'usinage
G1 X50 F0.3       ; Usinage du diamètre extérieur à 50 mm
G1 Z-100 F0.3     ; Usinage sur une longueur de 100 mm
G0 X60            ; Retrait de l'outil

T0303 M6          ; Sélection de l'outil à fileter
G97 S200 M3       ; Vitesse fixe à 200 tr/min
G0 X20 Z2         ; Position de sécurité avant filetage
G76 P020060 Q100 R1   ; Cycle de filetage ISO 
G76 P020060 Q100 R1   ; Cycle de filetage ISO (pas de 2 mm, profondeur initiale de 0,06 mm)
G76 X18 Z-30 P500 Q200 F2  ; Filetage M20x2 avec diamètre final de 18 mm, longueur de 30 mm
G0 X100 Z50         ; Remonter l'outil en position de sécurité
M30                 ; Fin du programme et retour à zéro

Explication de la partie filetage :

  • G76 P020060 Q100 R1 : Commande pour cycle de filetage multiple :
    • P020060 : Pas de 2 mm, profondeur de coupe initiale de 0,06 mm.
    • Q100 : Incrément minimal pour chaque passe (en µm).
    • R1 : Retrait au fond du filetage.
  • G76 X18 Z-30 P500 Q200 F2 : Commande de filetage ISO :
    • X18 : Diamètre final du filetage à 18 mm.
    • Z-30 : Longueur du filetage de 30 mm.
    • P500 : Profondeur totale de coupe (500 µm).
    • Q200 : Réduction de la profondeur pour chaque passe (200 µm).
    • F2 : Pas de filetage de 2 mm.
  • G0 X100 Z50 : Retrait rapide de l’outil en X et Z pour se placer en position de sécurité.
  • M30 : Commande de fin de programme qui retourne la machine à sa position d’origine.

Conclusion : Comment fonctionne la programmation ISO ?

La programmation ISO est une méthode standardisée qui permet de contrôler les machines-outils CNC pour effectuer des opérations d’usinage précises. Le programme ISO utilise des commandes comme les G-codes et M-codes pour définir :

  1. Les mouvements de l’outil (linéaires ou circulaires),
  2. Les cycles d’usinage (perçage, filetage, dégrossissage),
  3. Les vitesses de coupe et avances de l’outil,
  4. Les fonctions auxiliaires (démarrage de la broche, changement d’outil, arrêt de programme).

Un programme ISO typique se compose d’une série de blocs (lignes de code) qui indiquent à la machine comment déplacer l’outil et usiner la pièce. Il fonctionne en interprétant chaque commande dans l’ordre, depuis le positionnement initial de l’outil, l’usinage proprement dit, jusqu’au retour en position de sécurité et à l’arrêt du programme.

L’ISO est donc une méthode de communication précise et efficace entre le programmeur et la machine CNC, permettant un contrôle total des opérations de tournage ou de fraisage.

Quelles sont les différences entre le tournage et le fraisage en programmation ISO ?

Le tournage et le fraisage sont deux types d’usinage largement utilisés dans l’industrie pour façonner des pièces à partir de matériaux bruts. Bien qu’ils partagent certains principes communs en programmation ISO (ou G-code), il existe des différences notables dans la manière dont chaque procédé est programmé en fonction des spécificités de chaque machine et opération.

Voici les principales différences entre le tournage et le fraisage en programmation ISO :


1. Nature du mouvement des outils et des pièces

Tournage :

  • Mouvement de la pièce : En tournage, c’est généralement la pièce qui tourne autour de son axe (l’axe Z dans une machine CNC de tournage). Le matériau est fixé sur un mandrin, et la broche entraîne sa rotation.
  • Mouvement de l’outil : L’outil de coupe est fixe par rapport à la rotation de la pièce et se déplace linéairement dans les axes X et Z pour réaliser l’usinage extérieur ou intérieur de la pièce.
  • L’axe X contrôle les diamètres (radialement), et l’axe Z contrôle la longueur (axialement).

Fraisage :

  • Mouvement de la pièce : Dans le fraisage, c’est principalement l’outil qui tourne sur lui-même (la fraise) à grande vitesse. La pièce peut rester fixe ou être déplacée sous l’outil.
  • Mouvement de l’outil : L’outil (la fraise) tourne sur lui-même et peut se déplacer linéairement dans plusieurs directions (X, Y et Z) pour réaliser les coupes.
  • L’axe X et Y contrôlent les mouvements horizontaux (sur le plan) et l’axe Z contrôle la profondeur de coupe.

2. Axes de commande et configuration

Tournage :

  • Les machines de tournage fonctionnent généralement avec deux axes principaux :
  • Axe Z : Le long de la longueur de la pièce (parallèle à l’axe de rotation).
  • Axe X : Le long du rayon (perpendiculaire à l’axe de rotation) pour définir le diamètre.
  • Certains tours CNC plus avancés peuvent avoir un troisième axe (axe C) permettant des opérations plus complexes (comme le fraisage de faces).

Fraisage :

  • Les machines de fraisage fonctionnent typiquement avec trois axes ou plus :
  • Axes X et Y : Contrôlent les mouvements dans le plan horizontal.
  • Axe Z : Contrôle la montée et la descente de l’outil (profondeur de coupe).
  • Les centres d’usinage CNC peuvent aussi avoir des axes supplémentaires (axe A, B, C) pour des rotations supplémentaires de la pièce ou de l’outil, permettant des usinages sur plusieurs faces sans repositionner la pièce.

3. Types d’outils utilisés

Tournage :

  • Les outils utilisés en tournage sont généralement des outils monoblocs ou des plaquettes de coupe destinées à usiner des surfaces cylindriques.
  • Outil de dressage pour les faces,
  • Outil de chariotage pour les diamètres extérieurs,
  • Outil d’alésage pour les diamètres intérieurs,
  • Outil à fileter pour les filetages.

Fraisage :

  • Les outils utilisés en fraisage sont principalement des fraises rotatives.
  • Fraises cylindriques pour les surfaces planes,
  • Fraises à bout sphérique pour les formes 3D ou contours complexes,
  • Fraises à rainurer pour les opérations de rainurage,
  • Forets pour les opérations de perçage et alésage.

4. Cycles fixes et commandes spécifiques

Tournage :

En tournage, plusieurs cycles fixes sont utilisés pour simplifier certaines opérations répétitives :

  • G71 : Cycle de dégrossissage qui permet de réaliser des passes successives pour enlever de la matière sur un profil défini.
  • G76 : Cycle de filetage pour réaliser des filetages de manière automatisée.
  • G70 : Cycle de finition, utilisé pour finir un profil après dégrossissage.

Exemple de cycle G76 pour le filetage en tournage :

G76 P020060 Q100 R1 ; Commande de filetage
G76 X18 Z-30 P500 Q200 F2 ; Filetage avec des passes successives

Fraisage :

Dans le fraisage, les cycles fixes couvrent d’autres types d’opérations spécifiques :

  • G81 : Cycle de perçage simple.
  • G83 : Cycle de perçage avec débourrage, utilisé pour retirer les copeaux lors de perçages profonds.
  • G73 : Cycle de perçage à haute vitesse sans débourrage, pour des trous peu profonds.

Exemple de cycle G83 pour le perçage avec débourrage en fraisage :

G83 X0 Y0 Z-50 R2 Q5 F0.2 ; Cycle de perçage profond

5. Définition des vitesses

Tournage :

  • En tournage, la vitesse de broche est souvent régulée par la commande G96 qui permet de maintenir une vitesse de coupe constante. La vitesse de rotation varie donc en fonction du diamètre de la pièce.
  • G96 ajuste automatiquement la vitesse de la broche en fonction du diamètre courant de la pièce pour garder une vitesse de coupe en mètre par minute (SFM ou m/min) constante.
  • Exemple : G96 S180 pour maintenir une vitesse de coupe constante de 180 m/min.

Fraisage :

  • Dans le fraisage, la vitesse de coupe est généralement fixée à une valeur constante à travers la commande G97 qui maintient la broche à une vitesse fixe en tours par minute.
  • G97 n’ajuste pas la vitesse en fonction du diamètre de l’outil, contrairement au tournage.
  • Exemple : G97 S1000 pour fixer la vitesse de la broche à 1000 tr/min.

6. Types de pièces usinées

Tournage :

  • Les pièces usinées en tournage sont généralement cylindriques ou disques. Le tournage est idéal pour réaliser des pièces qui nécessitent des formes symétriques autour d’un axe, comme des arbres, des cylindres, des axes, ou des cônes.

Fraisage :

  • Le fraisage permet d’usiner des pièces prismatiques ou irrégulières. Le fraisage est plus adapté aux pièces plates ou complexes, où des formes tridimensionnelles doivent être usinées, telles que des rainures, des poches, des trous, des formes à plusieurs faces.

7. Positionnement de l’outil et de la pièce

Tournage :

  • En tournage, l’outil se déplace généralement le long d’un axe pour réaliser l’usinage (longitudinal ou radial), tandis que la pièce tourne autour de son axe de rotation.

Fraisage :

  • En fraisage, l’outil est généralement rotatif et la pièce peut être déplacée dans les trois dimensions (X, Y, Z) ou rester fixe, avec l’outil qui se déplace pour usiner différentes zones de la pièce.

8. Machines spécifiques

  • Tour CNC : En tournage, les machines sont des tours CNC. La pièce tourne sur elle-même, tandis que l’outil de coupe est fixe et se déplace le long des axes X et Z.
  • Fraiseuse CNC : En fraisage, les machines sont des centres d’usinage CNC ou fraiseuses CNC, où l’outil de coupe rotatif enlève la matière sur une pièce fixe ou mobile.

Résumé des différences

CaractéristiquesTournageFraisage
Mouvement principalLa pièce tourne, l’outil se déplace linéairementL’outil tourne, la pièce se déplace
Axes utilisésPrincipalement X, ZX, Y, Z (+ axes supplémentaires possibles)
Type de piècesPièces cylindriques (arbres, axes)Pièces prismatiques ou complexes
Outils utilisésOutils monoblocs, plaquettesFraises rotatives, forets
Cycles fixesG71 (dégrossissage), G76 (filetage), G70G81 (perçage), G83 (perçage avec débourrage)
Vitesse de brocheG96 (vitesse de coupe constante, en m/min)G97 (vitesse de broche fixe, en tr/min)
Types de mouvementsMouvements radiaux (X) et axiaux (Z)Mouvements dans les plans X, Y et Z
Pièces typiquesCylindres, cônes, arbresPièces planes, rainurées, à poches, complexes
Machines spécifiquesTours CNCFraiseuses CNC ou centres d’usinage
Outils correctionUtilisation de correcteurs d’outil (Txxxx)Utilisation de correcteurs d’outil (Dxxxx)
Cycles de finitionG70 (finition après dégrossissage)G73 (perçage rapide), G74 (rainurage)
Opérations spécialesFiletage (G76), alésageContournage, perçage profond, rainurage

Conclusion

Le tournage et le fraisage sont deux procédés d’usinage complémentaires, mais différents dans leur fonctionnement. La programmation ISO pour ces deux procédés repose sur des principes similaires, avec des commandes G-code standardisées, mais chaque méthode possède ses particularités.

  • En tournage, la pièce tourne et l’outil se déplace sur deux axes principaux (X et Z), avec des cycles spécifiques pour le filetage et le dégrossissage. C’est l’usinage idéal pour les pièces cylindriques ou symétriques.
  • En fraisage, l’outil tourne et se déplace sur plusieurs axes (X, Y, Z), permettant des opérations plus complexes et tridimensionnelles, adaptées aux pièces planes, prismatiques, ou de formes irrégulières.

Dans les deux cas, les G-codes comme G0 (positionnement rapide), G1 (usinage linéaire), et G2/G3 (mouvement circulaire) sont communs, mais les cycles et les outils varient en fonction de la nature du procédé. Le fraisage utilise souvent plusieurs axes et différents cycles pour le perçage et le contournage, tandis que le tournage se concentre sur les surfaces cylindriques et les opérations comme le filetage ou l’alésage.

Autres articles

Exercices de Programmation Corrigés sur le Microprocesseur...
Le microprocesseur Motorola 6809 est un processeur 8 bits très...
Read more
Exercices Corrigés Programmation ISO en tournage CNC
Voici une série d'exercices corrigés sur la programmation ISO en...
Read more
Exercices corrigés sur la programmation en assembleur...
Voici une série d'exercices corrigés sur la programmation en assembleur...
Read more

Laisser un commentaire

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