Programmation CN pour Machines-Outils
Programmation CN pour Machines-Outils
O0100
N10 … N20 …
N…
N
…
N
…
Introduction
La programmation consiste à décrire les opérations d’usinage dans un langage codé (appelé
code G) assimilable par le calculateur de la machine. C’est le langage de programmation des
MOCN. Ce langage est normalisé (norme ISO 1056) où certains codes utilisés ont les mêmes
fonctionnalités pour différents contrôleurs de machines-outils (NUM, FANUC, SIEMENS,...).
Les autres codes peuvent avoir une interprétation différente d’un contrôleur à un autre. Le
langage de programmation des MOCN possède les caractéristiques suivantes :
- La chronologie des actions,
- L’appel des outils,
- La sélection des vitesses de coupe et d’avance,
- La formulation des trajectoires,
- La définition des coordonnées de fin de trajectoire,
- Les mises en ou hors fonction d’organes de la machine.
I- Structure d’un programme
La programmation s'effectue suivant le code ISO. Un programme est constitué de lignes
appelées "blocs". Un bloc correspond aux instructions relatives à une séquence d'usinage.
Chaque bloc est constitué d'un groupe de mots. Un mot est un ensemble de caractères composé
d'une adresse suivie de chiffre constituant une information.
Programme
O0100 N10 …
N20 …
N…
N…
Bloc
N100 G01 X30F120 M08
N… N…
N… N340
M02
Mot
Bloc : groupe de mots correspondant aux instructions relatives à une séquence d’usinage. La
numérotation des blocs s'effectue de 5 en 5 ou de 10 en 10 pour permettre une insertion
éventuelle de blocs.
Exemples de blocs :
Ecriture d’un bloc définissant la mise en Ecriture d’un bloc définissant une
rotation de broche. trajectoire.
Mot : ensemble de caractères comportant une adresse suivie de chiffres constituant une
information. Exemple : X 10.850
Adresse : lettre débutant un mot d’un langage machine, qui précise la fonction générale
commandée.
Principale adresses :
N… : numéro de ligne : repérage chronologique en début de ligne.
G... : fonctions préparatoires définissant la forme et les conditions de déplacement.
M... : fonctions auxiliaires donnant les changements d’état de la machine.
X…, Y…, Z… : axes principaux désignant les coordonnées des points d’arrivée.
I…, J…, K… : paramètres définissant les trajectoires circulaires (rayons).
R… : paramètres définissant les trajectoires circulaires.
F... : précise l’avance ou la vitesse d'avance.
S... : précise la vitesse de coupe ou la vitesse de rotation de la broche.
T... : symbole du numéro d’outil.
Pour réaliser les différentes opérations nécessaires à l’usinage d’une pièce, un programme CN
peut être écrit de différentes manières.
Selon la nature de la pièce à usiner et sa complexité, les différentes structures de programme CN
peuvent être proposées :
- Un programme principal,
- Un programme principal contenant des appels de séquences internes,
- Un programme principal et des sous programmes.
Pour l’usinage d’une pièce simple ne nécessite pas de cycles d’ébauche, un programme CN peut
être structuré de la manière suivante :
Structure Exemple
O4723
Numéro du programme (Tour SMI)
(Ph 10)
Initialisation
N28 G40 G80
Opération précédente
(Opération : centrage)
Appel de l’outil
N30 T0505 M06 (Foret à centrer)
Opération suivante
Propriétés des fonctions : Les fonctions G90 et G91 sont modales. La fonction G90 est
initialisée à la mise sous tension.
Révocation : Les fonctions G90 et G91 se révoquent mutuellement.
Exemples de tournage :
Exemple 1
Veuillez indiquer l’itinéraire de mouvement de l’outil ci-dessous par des méthodes de
positionnement absolu et positionnement relatif.
Exemple 2 :
Soit la pièce définie par le dessin ci-dessous :
Remplir le tableau suivant :
Point Programmation absolue G90 Programmation relative G91
Coordonnées en X Coordonnées en Z Coordonnées en X Coordonnées en Z
A
B
C
D
E
Exemples de fraisage :
Exemple 1 : Usinages en programmation absolue (G90)
O0020
…
N30 S600 M03
N40 G00 X20 Y20 Z2 Point a, approche
N50 G01 Z-1.5 F50 Plongée sur Z
N60 X50 Y40 F120 Point b
N..
O0025
…
N30 S600 M40 M03
N40 G00 X20 Y20 Z2 Point a, approche
N50 G91 G01 Z-3.5 F50 Plongée sur Z
N60 X30 Y20 F120 Point b
N70 ...
Propriétés de la fonction
Syntaxe : LaX..
: N..G01 fonction
Y.. Z.. G01
[F..] est modale et initialisée à la mise sous
tension. G01 : Interpolation linéaire à vitesse d’avance programmée.
Révocation : La fonction
X..G01
Y.. est
Z.. révoquée
Point àpar l’une des
atteindre : fonctions G00, G02 ou G03.
c- Fonction pour le chanfrein F..
et pour
: l’angle de l’arc
Vitesse d’avance.
Cette fonction est utilisée pour simplifier le codage du programme pour une section à angle
o
droit de la pièce de travail ayant un chanfrein de 45 ou des angles d’arcs tangentiels dans le plan
X-Y. La commande pour le chanfrein et pour l’angle de l’arc nécessite la commande de
déplacement G01 avec une valeur de déplacement supérieure à l’angle du chanfrein ou à la
valeur du rayon en amont.
Syntaxe :
G01 X… Y… C… F… ; (chanfrein de 45°)
G01 X…. Y… R… F… ; (Rayon de l’arc)
Application :
………
N20 G00 X-22 Y30 Z1
N25 G01 Z-2 (Point 1)
N30 G41
N35 G01 X5 (Point 2)
N40 G01 Y55 R8 (Point 3)
N45 G01 X95 C10 (Point 4)
N50 G01 Y5 C10 (Point 5)
N55 G01 X5 R8 (Point 6)
N60 G01 Y32 (Point 7)
N65 G01 X-22 G40 (Point 8)
N70 G00 Z50
…………
d- Interpolation circulaire
G02 : Interpolation circulaire sens anti-trigonométrique à vitesse d’avance programmée.
Propriétés des fonctions : Les fonctions G40, G41 et G42 sont modales. La fonction G40 est
initialisée à la mise sous tension.
Révocation : Les fonctions G41 et G42 se révoquent mutuellement. La fonction G40 révoque
les fonctions G41 et G42.
Exemple en tournage : Correction de rayon suivant la position de la tourelle :
Application :
O0010
……
N10 G00 X-15 Y-15
N20 G41 G01 X0 Y0
F100 N30 Y40
N40 X30 Y80
N50 X60
N60 G02 X100 Y40 R40
N70 G01 Y30
N80 G03 X70 Y0 R30
N90 G01 X0
N100 X-15 Y-
15 N110 G40
………
Mouvement de coupe
Syntaxe :
N..G97 S…
[M03/M04]
N.. G96 [X.] S… [M03/M04]
G97 : Vitesse de broche exprimée en tr/mn.
G96 : Vitesse de coupe constante exprimée en m/mn.
S: Argument obligatoire lié à la fonction et définissant la vitesse programmée.
Propriétés :
La fonction G97 est une fonction modale initialisée à la mise sous tension.
La fonction G96 est une fonction modale.
Révocation :
La fonction G97 est révoquée par G96 S... .
La fonction G96 est révoquée par G97 S... .
Exemple :
N... Remarque :
N100 G97 S900
Concernant M04en(Rotation
l’usinage tournagede broche
avec à 900
vitesse de tr/mn).
coupe constante et pendant une opération de
N110 ... X50
dressage, Z70 tend vers(Positionnement
le diamètre du penser
zéro. Alors il faut nez de àl'outil surladiamètre
limiter vitesse de rotation maximale
50). la
avec N120 G96 S200
fonction G92. (Initialisation de la V.C.C sur X=50).
N... G97 S900 (Annulation de V.C.C).
Syntaxe : N… G92 S…;
Propriétés :
La fonction G92 est modale.
Révocation :
La limite de la vitesse est annulée par :
- La fonction d’annulation G92 S0.
- La fonction G92 S… affectée d’une vitesse limite différente.
- La fonction de fin de programme M02.
- Une remise à l'état initial (RAZ).
Mouvement d’avance
Le mouvement de l'outil à une vitesse spécifiée pour l'usinage d'une pièce est appelé avance. Les
vitesses d'avance peuvent être spécifiées à l'aide de chiffres réels. Par exemple pour déplacer
l'outil à une avance de 150 mm/mn il faut programmer ce qui suit: F150.0.
La fonction qui permet de définir l’avance est appelée fonction avance.
Syntaxe :
N.. G95 F.. G01/G02/G03 X..Z..
N.. G94 F.. G01/G02/G03 X..Y../X..Z..
Propriétés :
La fonction G94 est une fonction modale initialisée à la mise sous tension.
La fonction G95 est une fonction modale.
Révocation :
Les fonctions G94 et G95 se révoquent mutuellement.
Exemple 1 : (fraisage)
Syntaxe :
Exemple 1 :
G90 G28 X… Y… Z… ; (mode de coordonnées absolues)
La position actuelle de l’outil est à (50, 25). Retour au point d’origine de la machine par un point
G91 G28 X… Y… Z… ; (mode de coordonnées relatives)
intermédiaire (250, 25) pour éviter tout impact sur la pièce.
Exemple 2 :
G91 G28 Z0 ;........................Retour sur l’axe Z au point d’origine de la machine
G91 G28 X0 Y0 ;.................Retour sur l’axe X et sur l’axe Y au point d’origine de la machine.
Les principales fonctions préparatoires et auxiliaires (FANUC 21i tournage) sont classées dans le
tableau suivant :
Syntaxe : N..M03/M04/M05
Propriétés des fonctions : Les fonctions M03 et M04 sont des fonctions modales
«avant» décodées. La fonction M05 est une fonction modale «après» décodée initialisée à
la mise sous tension.
Révocation : Les fonctions M03, M04 et M05 se révoquent mutuellement. Les fonctions
M00, M19 et M01 (validé) révoquent les états M03 ou M04.
2- Appel de l’outil
Lorsque des perçages, des taraudages, des alésages, des fraisages et autres opérations
d'usinage doivent être effectuées, il est nécessaire de sélectionner un outil adéquat. Lorsqu'un
numéro est attribué à chaque outil et que le numéro est spécifié dans le programme, l’outil
correspondant est sélectionné.
T01
M06 : Appel ou changement d’outil. La fonction permet l’appel d’un outil et le positionnement
de celui-ci à son poste d’usinage.
Syntaxe
Propriété :
de la fonction : La fonction M06 est une fonction non modale «après».
N.. T.. M06 : T.. La fonction «T» affectée d’un numéro sélectionne l’outil.
Application
Ecrivez le programme CN (FANUC) pour l’usinage en finition de la pièce suivante.
L’outil utilisé : Outil à charioter dresser finition : T0101 ;
Les conditions de coupe : Vc = 150 m/min ; f = 0.1 mm/tr.
Exemple : Syntaxe :
G17 G16 X..Y.. ;
G18 G16 Z..X.. ; N75 G16
G19 G16 Y..Z.. ; N80 G17G01 X50 Y30 (Point B)
………………
N85 G15
… G15 ;
G16 : activation du mode de coordonnées polaires
G15 : Annulation du mode de coordonnées polaires.
Syntaxe :
G51 X… Y… Z…
P….; G50 ;
G51 ; Fonction de mise à l’échelle.
G50 ; Annuler la fonction de mise à l’échelle.
X… : Coordonnées de l’axe X du centre de la mise à
l’échelle. Y…: Coordonnées de l’axe Y du centre de la mise
à l’échelle. Z…: Coordonnées de l’axe Z du centre de la
mise à l’échelle.
P…: Proportion de mise à l’échelle avec une fourchette de 0,111 ~ 999,999
avec saisie minimale d’unité de 0,001.
P1200 indique qu’il faut augmenter de 120%. P800 qu’il faut réduire de 80%.
Dans le cas où les coordonnées (X… Y… Z…) sont contournées, le centre de la mise à l’échelle
est au point de commande du G51.
Exemple :
Codifier un programme avec la commande de mise à l’échelle pour augmenter l’échelle d’une
pièce d’usinage avec les axes X, Y à 200%, comme le montre la figure ci-dessous.
O6124
G40 G49 G80 G17 G21
N1 T01 M06 (Fraise à queue Ø10).
G91 G30 Z0
L’utilisation d’une image miroir avec un des axes dans un plan déterminé change les commandes
ci-dessous comme suit :
Commande Explication
Commandes Les commandes G02 et G03 sont inversées. G02 devient G03 et G03
circulaires devient G02.
Commandes de Les commandes G41 et G42 sont inversées. G41 devient G42 et G42
compensation devient G41.
Rotation des Le sens de rotation est inversé. SH devient SAH et SAH devient SH.
coordonnées
Exemple :
Corrections d'outils
Fanuc 21i - Tableau des corrections d'outil
Type Signification
G40 Annulation de la compensation de rayon d'outil
G41 Compensation de rayon d'outil à gauche
G42 Compensation de rayon d'outil à droite
G43 Compensation de la longueur d'outil dans le sens + (fraisage uniquement)
G44 Compensation de la longueur d'outil dans le sens - (fraisage uniquement)
G49 Annulation de la longueur d'outil (fraisage uniquement)
Syntaxe :
G43 G00/G01 Z... H...; (corriger la longueur d’outil dans un sens positif)
G44 G00/G01 Z… H… ; (corriger la longueur d’outil dans un sens négatif)
G49 ; (Annuler la correction de longueur d’outil)
Z… est la valeur des coordonnées de l’outil sur l’axe Z
H… est le numéro de registre (00 ~ 99) où est sauvegardée la valeur de correction. En
exécutant la correction de longueur d’outil, une commande G00 ou G01 est nécessaire pour
le mouvement sur l’axe Z de l’outil. G00 (positionnement rapide) est le meilleur choix dans
la plupart des cas.
Exemple :
Le programme, décrit ci-dessous, donne une illustration de l’utilisation de la commande de
correction de longueur G43. Voir le déplacement de l’outil sur l’axe Z, comme montré à la figure
suivante, avec une valeur de correction donnée H01 = 35,0.
Position de l’axe Z
N01 X0 Y0 Z0 ; 35,00
N02 G90 G00 X50. Y40. ; 35,00
N03 G43 Z5. H01 ; (H01= −35.) 5,00
N04 G01 Z-25. F100 ; 25,00
N05 G00 G49 Z0 ; 35,00
Exercice 1 :
Ecrire le programme d’usinage de la pièce ci-dessous afin que l’outil effectue la découpe le long du
contour fini.
Outil T0101
Vc= 180m/min ; f = 0,15 mm/tr. La vitesse limite de rotation de la broche est 2500 tr/min.
N90 G03 X60 Z-40 R8 Interpolation circulaire dans le sens horaire jusqu’au point de
Coordonnées (X60, Z-40).
N100 G01 Z-52
N110 X67
N120 G28 U0 W0 M05 Retour automatique au point de référence et arrêt broche.
N130 M30 Fin programme.
Exercice 2 :
On désire réaliser le contournage en finition de la pièce dont le dessin de définition est donné par la
figure suivante.
Contournage en finition : Outil T0101
Vc= 120m/min ; f = 0,15 mm/tr. La vitesse limite de la broche est 3000 tr/min.
1- Relever les coordonnées de tous les points à piloter dans le programme pour l’usinage de
cette pièce.
Point a b c d e f g h i
X
Z
Point j k l
X
Z
2- Proposer un programme en code FANUC permettant l’usinage cette pièce sur un tour à
commande numérique.
Exercice 3:
Proposer un programme en code FANUC permettant l’usinage cette pièce sur un tour à
commande numérique.