11 Langage ISO, Programmation
11 Langage ISO, Programmation
11 Langage ISO, Programmation
MEC10-10 : «MOCN»
Filière G. Mécanique Année 2020/2021
Niveau 4ème Année Session 1 – Automne 2020
Enseignant : M. ALI MAHOU, Professeur de Génie Mécanique
Généralités
Par extension, on appelle « commande numérique » l'armoire de commande recevant le programme
d'usinage sous forme d'un ruban perforé, d'une bande magnétique, ou de données issues d'un ordinateur.
On désigne parfois ainsi la machine complète équipée d'un tel dispositif. On parle d'un tour à commande
numérique, ou d'une fraiseuse à commande numérique, par opposition à un tour conventionnel ou une
fraiseuse conventionnelle, dont les mouvements sont commandés manuellement ou par un dispositif
automatisé d'une façon figée.
Exemples de machines-outils à commande numérique
Diagramme
FONCTIONS PREPARATOIRE G
Référence G Fonction
G00 Positionnement
G01 Interpolation linéaire
G02 Interpolation circulaire/hélicoïdale sens horaire
G03 Interpolation circulaire/hélicoïdale sens antihoraire
G04 Temporisation, arrêt précis
G05 Usinage à grande vitesse
G07 Interpolation d’axe hypothétique
G07.1 (G107) Interpolation cylindrique
G08 Contrôle de commande anticipée (look-ahead)
G09 Arrêt précis
G10 Entrée de données programmables
G11 Annulation du mode entrée de données programmables
G15 Annulation des commandes en coordonnées polaires
G16 Programmation en coordonnées polaires
G17 Sélection du plan XpYp Xp: Axe X ou son axe parallèle
G18 Sélection du plan ZpXp Yp: Axe Y ou son axe parallèle
G19 Sélection du plan YpZp Zp: Axe Z ou son axe parallèle
G20 Programmation en pouce
G21 Programmation en métrique
G22 Vérification des butées de fin de course active
G23 Vérification des butées de fin de course inactive
G25 Détection des fluctuations de la vitesse de broche
G26 Non détection des fluctuations de la vitesse de broche
G27 Contrôle du retour à la position de référence
G28 Retour à la position de référence
G29 Retour à partir de la position de référence
G30 Retour au second, 3ème, 4ème point de référence
G31 Fonction de saut
G33 Filetage
G37 Mesure automatique de la longueur d’outil
G39 Interpolation circulaire de correction d’arrondi d’angle
G40 Annulation compensation de rayon/annulation compensation tridimensionnelle
G41 Compensation de rayon à gauche/compensation tridimensionnelle
G42 Compensation de rayon de la fraise à droite de la pièce
G40.1 (G150) Annulation du mode contrôle de la normale à la trajectoire
G41.1 (G151) Contrôle de la normale à la trajectoire à gauche
G42.1 (G152) Contrôle de la normale à la trajectoire à droite
G43 Compensation de longueur d’outil dans le sens +
G44 Compensation de longueur d’outil dans le sens –
G45 Augmentation de la correction d’outil
G36 Diminution de la correction d’outil
G47 Double augmentation de la correction d’outil
G48 Double diminution de la correction d’outil
G49 Annulation de la compensation de longueur d’outil
G50 Annulation de la mise à l’échelle
G51 Mise à l’échelle
G50.1 Annulation de l’image miroir programmable
G51.1 Image miroir programmable
G52 Définition du système de coordonnées locales
G53 Sélection du système de coordonnées machine
G54 Sélection du système de coordonnées pièce nº 1
G54.1 Sélection de systèmes supplémentaires de coordonnées pièce
G55 Sélection du système de coordonnées pièce nº 2
G56 Sélection du système de coordonnées pièce nº 3
G57 Sélection du système de coordonnées pièce nº 4
G58 Sélection du système de coordonnées pièce nº 5
G59 Sélection du système de coordonnées pièce nº 6
G60 Positionnement unidirectionnel
2 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
Référence G Fonction
G61 Mode arrêt précis
G62 Correction automatique aux angles
G63 Mode taraudage rigide
G64 Mode usinage
G65 Appel de macro
G66 Appel modal de macro
G67 Annulation de l’appel modal de macro
G68 Rotation des coordonnées/conversion des coordonnées tridimensionnelles
G69 Annulation de la rotation des coordonnées/annulation de la conversion des coordonnées
tridimensionnelles
G73 Cycle de perçage avec débourrage
G74 Cycle de taraudage inverse
G76 Cycle d’alésage fin
G80 Annulation des cycles fixes/Annulation de la fonction opération extérieure
G81 Cycle de perçage, de lamage ou fonction opération externe
G82 Cycle de perçage ou d’alésage inverse
G83 Cycle de perçage avec débourrage
G84 Cycle de taraudage
G85 Cycle d’alésage
G86 Cycle d’alésage
G87 Cycle d’alésage en tirant
G88 Cycle d’alésage
G89 Cycle d’alésage
G90 Programmation en mode absolu
G91 Programmation en mode relatif
G92 Définition du système de coordonnées ou limitation de la vitesse maximum de la broche
G92.1 Préréglage du système de coordonnées pièce
G94 Avance en mm/mn
G95 Avance en mm/tour
G96 Contrôle de la vitesse de coupe constante
G97 Annulation du contrôle de la vitesse de coupe constante
G98 Retour à la position initiale en cycle fixe
G99 Retour au plan R en cycle fixe
L’adresse G dans un programme CN identifie une fonction préparatoire, généralement appelé code G.
_ Son unique objectif est de préparer le système de commande à un certain mode opératoire ou à un
certain type d’état.
_ Exemple
L’adresse G00 engage la machine sur le mode avance rapide.
L’adresse G73 engage un cycle de perçage.
Les codes G sont divisés en deux groupes:
codes non modaux: Le code n’a de valeur que dans le bloc où il apparaît.
codes modaux: Le code est valable à partir du bloc où il apparaît et dans tous les autres blocs suivants
jusqu’à la spécification d’un autre code G du même groupe.
3 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
FONCTIONS SPECIALES M
L’adresse M dans un programme CNC identifie une fonction spéciale à la machine.
Certaines fonctions sont reliées aux opérations machines (M05, M03…), tandis que d’autres sont
reliées au processus d’exécution du programme lui même (M00, M01…).
Uniquement une seule fonction M est permise dans un bloc.
CODE REVOCATION DESIGNATION
M00 Action sur DCY Arrêt programmé
M01 Action sur DCY Arrêt optionnel
M02 % ou EOR Fin de programme pièce
M03 M4 - M5 - M0 - M19 Rotation de broche sens anti-trigonométrique
M04 M3 - M5 - M0 - M19 Rotation de broche sens trigonométrique
M05* M3 - M4 Arrêt de broche
M06 Compte-rendu Changement d'outil
M07 M9 - M2 Arrosage n°2
M08 M9 - M2 Arrosage n° 1
M09* M7 - M8 Arrêt des arrosages
M10 M11 Blocage d'axe
M11 M10 Déblocage d'axe
M12 Fin d’ARUS Forçage du mode INTERV ; manipulateurs d’axes ou manivelle disponible. Pas de
changement de mode d’exécution du programme
M19 M3 – M4 – M5 Indexation broche
M40 à M45 6 gammes de broche
M48* M49 Validation des potentiomètres de broche et d’avance
M49 M48 Inhibition des potentiomètres de broche et d’avance
M64* M65 Commande broche 1
M65 M64 – M2 Commande broche 2
M66* M67 Utilisation mesure broche 1
M67 M66 – M2 Utilisation mesure broche 2
M997 M998-M999-M2 Forçage de l’enchaînement des blocs
M998* M999 Mode MODIF, IMD et appel de sous-programme par l'automate autorisé
M999 M998 M2 Masquage par programmation des modes MODIF, IMD et appel de sous-
programme par l'automate
* Fonctions initialisées à la mise sous tension ou à la suite d'une remise à zéro.
Structure d’une opération
Structure Exemple
Opération précédente FONCTIONS ISO
Correspondantes (OPERATION CENTRER)
M6 (appel position)
Positionner le bon outil T = (numéro outil)
D= (numéro correcteur)
N30 T5 D5 M6 (FORET A
CENTRER)
G0 (déplacement rapide)
Approcher X-Y-Z (coordonnées du point
L’outil en rapide d’arrivée) N40 G0 X0 Z52
M3 ou M4 (sens de rotation)
Adapter G96 S … (Vc en m/mn)
Ou G97 S … (N en tr/mn) N45 G 97 G95 S2500 F0.05
Les conditions de coupe G94 F … (Vf en mm/mn)
Ou G95 F … (f en mm/tr) M3 M8
Réaliser Trajectoire de l’outil ou
L’opération d’usinage cycle particulier (usinage) N50 G1 Z40
G0 (déplacement rapide)
Dégager l’outil en rapide X-Y-Z (coordonnées du point N60 G0 Z52
d’arrivée)
Opération suivante
4 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
5 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
(OPERATION CENTRER)
N30 T5 D5 M6 (FORET A CENTRER)
OPERATION 1 N40 G0 X0 Z52
N45 G95 G97 S2500 F0.05 M3 M8
N50 G1 Z40
N60 G0 Z52
N70 G0 G52 X0 Z0 M9
POSITION DEGAGEMENT
………………………..............................
…………………………………………..
(FINITION PROFIL)
N240 T3 D3 M6 (OUTIL DE FINITION)
N250 G92 S4000
N260 G0 X4 Z52 F0.05 M8
N270 G1 G42 X5 Z46
N280 G96 S250
OPERATION N N290 G1 X15.961 Z46
N300 X24 Z31
N310 Z26
N320 X26
N330 G3 X34 Z22 I26 K22
N340 G1 Z18
N350 X42
N360 G97 S1000
6 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
Début de programme
✓ la CN peut admettre plusieurs programmes en mémoire (un seul est exécuté), il faut donc donner
à chaque programme un numéro pour pouvoir les différentier.
✓ la CN ne peut admettre qu’un seul programme en mémoire, dans ce cas pas de numéro de
programme.
✓ Lorsqu’une CN possède un lecteur de bande, le programme doit commencer par le code %.
Cas de CN du hall Le % est omis (pas de lecteur de bande). La syntaxe est la suivante: O0001
Corps du programme
Celui-ci est composé des différents blocs qui décrivent la forme de la pièce à usiner ainsi que tous les
paramètres de coupe.
R: Pour la programmation sur une fraiseuse à CN on considère que c’est l’outil qui se déplace et non
la table.
Fin du programme
Il faut indiquer à la machine que le programme est terminé, le code employé est M02 ou M30.
Format d’un bloc
• Le format fixe
• Le format variable
Dans tout programme CN l’ordre des adresses est fixe. L’écriture des instructions se fait dans l’ordre :
NGXYZIJPQFSTM
N: Numéro de séquence, de N0 à N9999.
G: Fonction préparatoires (interp, cycles)
X, Y, Z: Coordonnées du point à atteindre
I, J: Paramètres pour l’interpolation circulaire
P, Q: Paramètres de cycles fixes machine
F: Vitesse d’avance
S: Vitesse de coupe
T: Numéro d’outil et de correcteur
M: Fonctions particulières (avance, arrosage…)
Format fixe
Tous les blocs ont le même nombre de mots. On passe d’un bloc à un autre en modifiant les blocs qui
changent et en répétant les blocs qui ne changent pas.
Exemple Format fixe
N001 G81 X2000 Y500 Z800 F620 S710 T01 M13
N002 G81 X2000 Y1500 Z800 F620 S710 T01 M13
Format variable
On passe d’un bloc à un autre en ne spécifiant que les mots qui ont changés, les autres ne sont pas
réécrits.
Exemple Format variable
N001 G81 X2000 Y500 Z800 F620 S710 T01 M13
N002 Y1500
N003 X0 Y0 M6
7 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
Illustration
10
25
40
8 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
Cas A Cas B
Avantage: Avantage:
Cotes directes Cotes directes
Inconvénient: Origine Y sur mors fixe
Origine Y sur le mors Inconvénient:
mobile Pièce se trouvant dans le
3ème quadrant.
Cas C
Avantage:
_ Cotes directes
_ Origine Y sur
mors fixe
_ Pièce se
trouvant dans le
1er quadrant
Cas du tournage
En tournage, la sélection du repère pièce est simple, deux axes sont à considérer (X, Z).
En conséquence du design des tours, l’origine programme selon X est toujours sur l’axe de la broche.
Pour l’axe Z trois cas de figures sont utilisés
Cas du tournage
illustration
9 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
illustration
Outil de tournage
Systèmes de coordonnées
Système de coordonnés pièce (G54- G59)
Système de coordonnées local G52
Systèmes de coordonnées pièce
Work offset est la nouvelle méthode (remplace les registres de positions), utilisée sur les CNC modernes,
pour coordonner la relation entre l’origine machine, l’origine pièce et le point de référence outil.
Six systèmes de coordonnées propres à la machine, sont préalablement définis et peuvent être choisis par
les instructions G54 à G59.
Ils sont déterminés par les distances de définition sur chaque axe, entre l’origine machine et leur origine
respective.
Un programme CN peut utiliser un ou plusieurs systèmes de coordonnés, pour cela il faut enregistrer
dans le système de commande les décalages de chaque système de coordonné.
Systèmes de coordonnées axe Z
Pour l’axe Z on prend généralement un décalage égal à zéro et la gestion des longueurs outils est laissée
aux fonctions de compensation de longueur. Mais dans le cas, où on a un ensemble de pièces qui n’ont
pas la même hauteur, les différences de longueurs sont introduites dans l’adresse Z des systèmes de
coordonnés
Cas de pièce de hauteurs différentes
G54 X… Y… Z 0
G55 X… Y… Z –0.408
G56 X…Y… Z 0.356
10 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
Exemple G54
X= -12.5543
Y= -7.4462
Solution G54
Le système de commande, détermine les
coordonnées réelles à atteindre par un simple
calcul. Généralement, il ajoute la valeur
programmée à la valeur enregistrée dans G54
pour chaque axe.
Le déplacement réel sera :
X= -12.5543 + 5.5 = -7.0543
Y= -7.4462 + 3.1 = -4.3462
Qu'est ce qui va se passer lorsque le bloc suivant sera
X= -12.5543
exécuté?
Y= -7.4462
N30 G00 G90 G54 X5.5 Y3.1 S150 M03
Formule : A= M+ P
A : déplacement réel
M : distance mesurée à partir du 0 machine
P : valeur programmée
11 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
Positionnement
➢ Positionnement rapide G00
➢ Retour automatique au point de référence (G28)
➢ Retour automatique du point de référence (G29)
Positionnement rapide G00
Permet le positionnement en vitesse rapide de l’outil en un point quelconque de l’espace.
Les vitesses d’avance pour chaque axe sont fixées par le constructeur.
Le point à atteindre peut être donné dans le repère lié à la pièce ou par rapport au point précédent (G90,
G91).
Exemple 1 G00
12 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
Exemple2 G01
Décrire cette trajectoire en vitesse travail ?
Méthodes
Il est possible de programmer suivant deux méthodes:
➢ La première spécifie le centre de l’arc du cercle par rapport au point de départ
➢ La deuxième méthode spécifie le rayon de l’outil.
Exemple G02 G03
Programme des deux arcs avec les
deux méthodes ↴
G01 X200Y40
G03 X Y I-60 F 300
G02 X Y I-50
Ou
G01 X200 Y40
G03 X140 Y100 R60 F300
G02 X120 Y60 R50
13 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
Fonctions d’avance
✓ Avance rapide
✓ Vitesse d’avance de coupe.
✓ Accélération et ralentissement.
✓ Modulation automatique dans les angles.
Avance rapide
Avec l’instruction de positionnement G00, il n’est pas nécessaire de programmer la vitesse d’avance
rapide car elle est fixée par des paramètres par axe. Elle peut être corrigée au moyen d’un sélecteur de
modulation situé sur le tableau de commande de la machine F0, 25%, 50%, 100%
Vitesse d’avance de coupe
En CNC la vitesse d’avance, c’est la vitesse à la quelle l’outil enlève de la matière lors de l’opération de
coupe. L’appel de la fonction avance au sein d’un programme se fait par l’adresse F suivi d’un nombre :
F200 F0.1Deux types de vitesse sont utilisés en programmation CNC
➢ Avance par minute (fraisage).
➢ Avance par tour (tournage).
Sélection vitesse d’avance
Avance Fraisage Tournage
Par mn G94 G98
Par tour G95 G99
Accélération et ralentissement
Particulièrement lors de la programmation de grandes vitesses en contournage, le système peut générer
aux coins une erreur appeler le overshoot (dépassement). Généralement sur les CNC modernes, cette
erreur est toujours incluse dans les intervalles de tolérance. Si cette erreur demande une correction, le
système de commande fournit deux fonctions préparatoires pour corriger le problème.
G09: Arrêt précis (non modale)
G61: mode Arrêt précis (modale)
Exemple G09 G61
O1100 O1111
… …
N13 G00 X15 Y12 N13 G00 X15 Y12
N14 G09 G01 X19 F90 N14 G61 G01 X19 F90
N15 G09 Y16 N15 Y16
N16 G09 X15 N16 X15
N17 Y12 N17 Y12
… N18 G64
…
Fonction de vitesse de Broche
La commande programme reliée à la vitesse de broche est identifiée par l’adresse S
Contrôle de vitesse de coupe constante G96 G97
Contrôle de vitesse de coupe constante
Le contrôle de vitesse de coupe constante est prévu pour calculer la vitesse de broche de façon que la
vitesse de coupe reste constante en fonction des déplacements de l’outil.
G96 S.... vitesse de coupe m/mn
G97 S.... vitesse de broche tours/mn
La vitesse de coupe (S) en mode G96 est considérée comme étant à S=0 jusqu'à ce que M03 ou M04
soit programmée
14 / 15
ECOLE POLYTHENIQUE LANGAGE ISO ET MEC10-10 : 4ème Année
PRIVEE D’AGADIR PROGRAMMATION «MOCN» G. Mécanique
Exemple de programme
;
N001 G92X0Y0Z0; Définition des coordonnées de la position de référence
N002 G90 G00 Z250.0 T11 M6; Changement d’outil
N003 G43 Z0 H11; Niveau initial, compensations de longueur d’outil
N004 S30 M3 Mise en rotation de la broche
N005 G99 G81X400.0 R Y–350.0
Z–153,0R–97.0 F120; Positionnement, puis perçage #1
N006 Y–550.0; Positionnement, puis perçage #2 et retour au niveau du point R
N007 G98Y–750.0; Positionnement, puis perçage #3 et retour au niveau initial
N008 G99X1200.0; Positionnement, puis perçage #4 et retour au niveau du point R
N009 Y–550.0; Positionnement, puis perçage #5 et retour au niveau du point R
N010 G98Y–350.0; Positionnement, puis perçage #6 et retour au niveau initial
N011 G00X0Y0M5; Retour à la position de référence, arrêt de la broche
N012 G49Z250.0T15M6; Annulation de la compensation de longueur d’outil, changement d’outil
N013 G43Z0H15; Niveau initial, compensations de longueur d’outil
N014 S20M3; Mise en rotation de la broche
N015 G99G82X550.0Y–450.0 Positionnement, puis perçage #7 et retour au niveau du point R
Z–130.0R–97.0P300F70;
N016 G98Y–650.0; Positionnement, puis perçage #8 et retour au niveau initial
N017 G99X1050.0; Positionnement, puis perçage #9 et retour au niveau du point R
N018 G98Y–450.0; Positionnement, puis perçage #10 et retour au niveau initial
N019 G00X0Y0M5; Retour à la position de référence, arrêt de la broche
N020 G49Z250.0T31M6; Annulation de la compensation de longueur d’outil, changement d’outil
N021 G43Z0H31; Niveau initial, compensations de longueur d’outil
N022 S10M3; Mise en rotation de la broche
N023 G85G99X800.0Y–350.0 Positionnement, puis perçage #11 et retour au niveau du point R
Z–153.0R47.0F50;
N024 G91Y–200.0K2; Positionnement, puis perçage #12, 13, et retour au niveau du point R
N025 G28X0Y0M5; Retour à la position de référence, arrêt de la broche
N026 G49Z0; Annulation de la compensation de longueur d’outil
N027 M0; Arrêt du programme
15 / 15