Vous êtes sur la page 1sur 13

Cours production par CN A.

U : 2019-2020

Programmation par CN

I. Définition d’un programme


Un programme est une suite d’instructions écrites dans un langage codé propre à la
commande numérique (le plus utilisé est le code ISO : International Organization for
Standardization).
La commande numérique interprète le programme pour commander un usinage sur la
machine-outil.
II. Elaboration d’un programme
Le programme pièce peut être créé par programmation traditionnelle ou par
l’intermédiaire d’un système CFAO.

M.P. CFOP 1
Cours production par CN A.U : 2019-2020

III. Structure d'un programme


Un programme pièce CNC est une liste d’instructions et données à transmettre au
système de commande.
La création d’un programme composé de blocs et de mots est soumise à des règles de
structure, syntaxe ou format.
La programmation est à format variable et adresses suivant les codes et normes ISO et
EIA.
La programmation est possible dans les deux codes :
- ISO (International Organization for Standardization). Normes ISO 6983-1
(NF Z 68-035), 6983-2 (NF Z 68-036) et 6983-3 (NF Z 68-037).
- EIA (Electronic Industries Association). Normes RS 244 A et 273 A.

1. Format général des mots

M.P. CFOP 2
Cours production par CN A.U : 2019-2020

2. Format des blocs


Un bloc (ou séquence) définit une ligne d’instructions composée de mots codés à
transmettre au système de commande.
Le format de bloc définit la syntaxe des mots de fonction et de dimension composant
chaque bloc de programmation.

 Exemples de blocs
 Ecriture d’un bloc définissant un changement d’outil et l’appel de son correcteur.

 Ecriture d’un bloc définissant la mise en rotation de broche

 Ecriture d’un bloc définissant une trajectoire

M.P. CFOP 3
Cours production par CN A.U : 2019-2020

3. Structure générale d’un programme


a) Généralités
Un programme CN comporte des caractères obligatoires de début et fin.
Un programme est exécuté dans l’ordre d’écriture des blocs situés entre les caractères
de début et de fin de programme.
La numérotation des blocs n’intervient pas dans l’ordre de déroulement du programme.
Il est malgré tout conseillé de numéroter les blocs dans l’ordre d’écriture (de dix en dix par
exemple).
REMARQUE : L’écriture d’un programme peut être effectuée suivant les codes ISO
ou EIA. La reconnaissance des codes ISO ou EIA est effectuée par le système à la lecture d’un
caractère définissant le début du programme.
Structure d’un programme ISO :
Début de programme : caractère %
Fin de programme : code M02
Fin de chargement de programme : caractère XOFF

Structure d’un programme EIA


La structure d’un programme en EIA est identique à celle d’un programme en ISO, seuls
les caractères de début et de fin de programme sont différents.
Début de programme : caractère EOR (End Off Record)
Fin de programme : caractère BS (Back Space)

M.P. CFOP 4
Cours production par CN A.U : 2019-2020

b) Sauts et appels de sous programmes


Des instructions particulières (sauts et appels sous programmes) permettent de modifier
l’ordre d’exécution d’un programme.
Un programme peut être structuré de la façon suivante :

c) Numérotation des programmes


Numéro de programme : le format toléré est %051
Le caractère % est suivi d’un numéro de programme et éventuellement d’un
commentaire entre parenthèses.
Par exemple : %324 (PIECE N° 72 - PROG 3)
Un numéro de programme peut être indicé (indices .1 à .8 en programmation
multigroupes d’axes).
Par exemple : %425.2 (PROG GROUPE 2)

SIGNIFICATION ISO EIA


10 chiffres de 0 à 9 de 0 à 9
Lettres de l'alphabet AàZ AàZ
Début de programme % EOR
Début de commentaire ( ,
Fin de commentaire ) %
Signe + + +
Signe - - -
Point décimal . .
Supérieur >
Inférieur <
Multiplié *
Egal =
Division /
A Commercial @
Fin de bloc LF CR
Saut de bloc / /
Subdivision de programme : lettre O
Fin de bande X OFF BS

M.P. CFOP 5
Cours production par CN A.U : 2019-2020

4. Classification des fonctions préparatoires G et auxiliaires M


4.1 Classification des fonctions préparatoires G :
Types de fonctions G :
- fonctions G modales,
- fonctions G non modales.
Certaines fonctions G doivent être programmées avec leurs arguments associés.
La programmation de certaines fonctions G peut être incompatible avec l’état du
programme en cours.

a) Fonctions G modales

Fonctions appartenant à une famille de fonctions G se révoquant mutuellement.


Certaines familles de fonctions G comportent une fonction initialisée à la mise sous
tension du système.
La validité de ces fonctions est maintenue jusqu’à ce qu’une fonction de même famille
révoque leur validité.
Par exemple :
N.. G00 X.. Y.. Interpolation linéaire à vitesse rapide
N.. G01 Z.. L’interpolation linéaire à vitesse d’usinage révoque G00
b) Fonctions G non modales
Fonctions uniquement valides dans le bloc ou elles sont programmées (révoquée en fin
de bloc).
Par exemple :
N.. G09 X.. Fonction d’arrêt précis en fin de bloc révoquée en fin de bloc

c) Fonctions G incompatibles avec l’état du programme


Fonctions dont la programmation est autorisée ou non selon l’état du programme en
cours.
Par exemple :
N.. G18 G41 X.. Y.. Syntaxe correcte, choix du plan ZX (G18), puis
correction de rayon (G41)

N.. Syntaxe incorrecte, changement de plan interdit en


N.. G41 G18 X.. Y.. correction de rayon

M.P. CFOP 6
Cours production par CN A.U : 2019-2020

4.2 Classification des fonctions auxiliaires M


Types de fonctions M :
- fonctions M modales,
- fonctions M non modales,
Les fonctions M peuvent être :
- des fonctions «avant» ou «après»,
- des fonctions codées ou décodées.

M.P. CFOP 7
Cours production par CN A.U : 2019-2020

5. Applications des fonctions préparatoires G :


1) G00 - Interpolation linéaire à vitesse rapide : Valable en tournage et fraisage
Description :
Le point programmé est atteint en effectuant une
trajectoire linéaire à vitesse rapide.
La trajectoire est la résultante de tous les
déplacements d’axes programmés dans le bloc.
Axes programmables :
– axes primaires X, Y, Z
– axes secondaires U, V, W,
– axes rotatifs A, B, C.
Syntaxe :
N... [G90/G91] G00 [R-/R+] X... Y... Z...
• G90/G91 Programmation absolue ou relative.
• G00 Positionnement rapide.
• R-/R+ Le positionnement s’effectue avant ou après le
point programmé. La distance est égale à la valeur du
rayon d’outil déclaré.
• X... Y... Z... Point à atteindre :
– Coordonnées du point en G90.
– Valeur du déplacement en G91.
Révocation :
La fonction G00 est une fonction modale révoquée
par l’une des fonctions G01, G02 ou G03.
Exemple :
Positionnement rapide avant exécution d’un usinage.

N...
N... ... Appel de l’outil
N30 G97 S600 M40 M04
N40 G00 Xa Za
N50 Xb
N…

M.P. CFOP 8
Cours production par CN A.U : 2019-2020

2) G01 - Interpolation linéaire à vitesse d’avance programmée : Valable en


tournage et fraisage

Description :
Le point programmé est atteint en effectuant une trajectoire
linéaire à vitesse d’avance programmée.
La trajectoire est la résultante de tous les déplacements des axes
programmés dans le bloc.
Axes programmables :
– axes primaires X, Y, Z.
– axes secondaires U, V, W.
– axes rotatifs A, B, C.
Syntaxe :
N... [G90/G91] G01 [R+/R-] X... Y... Z... [F...]
• G90/G91 Programmation absolue ou relative.
• G01 Interpolation linéaire à vitesse d’avance programmée.
• R-/R+ Le positionnement s’effectue avant ou après le point
programmé. La distance est égale à la valeur du rayon d’outil
déclaré.
• X... Y... Z... Point à atteindre :
– Coordonnées du point en G90.
– Valeur du déplacement en G91.
• F... Vitesse d’avance.
Révocation :
La fonction G01 est une fonction modale et initialisée à la
mise sous tension. Cette fonction est révoquée par l’une des
fonctions G00, G02 ou G03.
Exemple :

%20
N10 G00 G52 Z... Position de mise en broche outil
N20 ... Appel de l’outil
N30 S600 M40 M03
N40 X20 Y20 Z2 Point a, approche
N50 G01 Z-1.5 F50 Plongée sur Z
N60 X50 Y40 F120 Point b
N..

M.P. CFOP 9
Cours production par CN A.U : 2019-2020

3) G02/G03 - Interpolation circulaire à vitesse d’avance programmée :


Valable en tournage et fraisage

Description :
La position du point programmé est atteinte en décrivant une
trajectoire circulaire.
Syntaxe :
N... [G17] [G90/G91] G02/G03 X... Y... I... J... / R... [F...]
 G17 Choix du plan XY.
 G90/G91 Programmation absolue ou relative.
 G02 Interpolation circulaire sens anti-trigonométrique.
 G03 Interpolation circulaire sens trigonométrique.
 X... Y... Point à atteindre.
– Coordonnées du point à atteindre en G90.
– Valeur du déplacement en G91.
 I... J... Position du centre de l’interpolation dans le plan
XY (I suivant X, J suivant Y).
– Par rapport à l’origine programme en G90.
– Par rapport au point de départ de l’interpolation en G91.
 R... Rayon du cercle à interpoler.
 F... Vitesse d’avance.
Révocation :
La fonction G02 est une fonction modale et initialisée à la
mise sous tension. Cette fonction est révoquée par l’une des
fonctions G00, G01 ou G03.

Exemple :
Interpolations circulaires suivant les trajectoires a, b, a’, par
programmation absolue (G90) et dans le plan XY (G17)
L’interpolation circulaire G02 est exécutée par
programmation du rayon (R), l’interpolation circulaire G03 par
programmation du centre du cercle (avec I et J)
%23
N10 G00 G52 Z... Position de mise en broche outil
N20 .... Appel de l’outil
N30 S300 M40 M03
N40 X50 Y30 Z2 Point a, approche
N50 G01 Z-2 F50 Plongée sur Z
N60 G02 X100 Y70 R40 F150 Point b
N70 G03 X50 Y30 I60.02 J68.726 Point a’
N80 G00 G52 Z... M05
N90 M02

M.P. CFOP 10
Cours production par CN A.U : 2019-2020

4) G23 - Interpolation circulaire définie par trois points : Valable en tournage et


fraisage

Description :
Une interpolation circulaire peut être exécutée par
programmation :
- de son point de départ (défini dans le bloc précédent la fonction
G23),
- du point d’arrivée et du point intermédiaire (définis dans le bloc
avec la fonction G23).
Syntaxe :
N... [G17] [G90/G91] G23 X... Y... I... J... [F...]
 G17 Choix du plan.
 G90/G91 Programmation absolue ou relative.
 G23 Interpolation circulaire sens trigonométrique ou
anti-trigonométrique.
 X... Y... Point d’arrivée.
 I... J… Point intermédiaire.
 F... Vitesse d’avance
Révocation :
La fonction G23 est non modale.
Cette fonction est révoquée en fin de bloc.
Syntaxes selon le plan choisi G17/G18/G19 :
Plan principal Fonction Point Intermédiaire Syntaxe
d’interpolation
XY G17 IJ G23 X… Y... I... J...
ZX G18 KI G23 Z... X... K... I...
YZ G19 JK G23 Y... Z... J... K...

Exemple :
Interpolation circulaire suivant les trajectoires a, b et c dans le plan XY
(G17)
N...
N130 Z... Positionnement sur Z
N140 G01 Xa Ya F150 Point a, approche
N150 G23 Xc Yc Ib Jb F100 Interpolation circulaire
N160 G01 X... Y... F150
N...

M.P. CFOP 11
Cours production par CN A.U : 2019-2020

5) G33 -Cycle de filetage à pas constant : Valable en tournage


Description :
La fonction permet l’exécution de filetages cylindrique, conique et
frontal.
Les filetages peuvent être monofilet ou multifilets et exécutés par
pénétration droite ou angulaire.
Les passes successives sont exécutées suivant des profondeurs
dégressives.

Syntaxe :
N.. G33 X.. Z.. K.. [EA..] [EB..] P.. [Q..] [R..] [F..] [S..] / [ES..]
 G33 Cycle de filetage à pas constant.
 X.. Z.. Position de l’outil en fin de filetage par rapport à l’origine programme.
 K.. Pas suivant l’axe de filetage (X ou Z), valeur exprimée en mm.
 EA.. Demi-angle au sommet d’un filetage conique
– Par défaut EA = 0 : filetage cylindrique.
– EA90 : filetage frontal.
 EB.. Valeur de l’angle de pénétration d’outil
– Par défaut EB = 0 : pénétration droite.
– EB > à 0 : pénétration à flanc de filet suivant le sens d’usinage.
– EB < à 0 : pénétration à flanc de filet opposée au sens d’usinage.
 P.. Profondeur totale du filet (Q inclus).
 Q.. Profondeur de la dernière passe (inclus dans P).
– Par défaut pas de finition.
– Q = 0 : passe à vide.
 R.. Longueur de la pente de dégagement d’outil en fin de passe (sur l’axe de filetage)
– Par défaut R = 0 : dégagement perpendiculaire à l’axe de filetage.
 F.. Nombre de filets (format F01)
– Par défaut 1 filet.
 S../ES.. Nombre de passes (format S02 ou ES02) (passe Q exclue), par défaut 1 passe :
– S.. : passes de valeurs dégressives,
– ES.. : passes de valeurs constantes.

Révocation :
La fonction G33 est non modale.
Cette fonction est révoquée en fin de bloc.
Rappels :
Détermination de la profondeur de passe (P), filet profil ISO.
- Filetage extérieur : 0,613 x Pas
- Filetage intérieur : 0,577 x Pas
Détermination du nombre de passes approché (S)
- S=P x 7

M.P. CFOP 12
Cours production par CN A.U : 2019-2020

Exemple :
Exécution d’un filetage conique extérieur (5°)

N.. ...
N140 T09 D09 M06 (OUTIL A FILETER PAS=1 A DROITE)
N150 G97 S1000 M40 M03
N160 G00 Xa Za Départ du filetage
N170 G33 Xb Zb K1 EA175 EB30 P0.61 Q0.02 R4 S5
N.. ...

6) G17, G18, G19 - Choix du plan en interpolation circulaire et correction


de rayon : Valable en fraisage
Description :
La programmation d’une des fonctions permet de définir le
plan dans lequel s’effectue la correction de rayon et
l’interpolation circulaire.
Syntaxe :
N... [G17/G18/G19]
 G17 Choix du plan XY.
 G18 Choix du plan ZX.
 G19 Choix du plan YZ.
Révocation :
Les fonctions G17, G18 et G19 sont modales ils se révoquent
mutuellement.
La fonction G17 est initialisée à la mise sous tension.

Exemple :
N.. ...
N50 G17... Choix du plan XY
N..
N160 G18 ... Choix du plan ZX
N..
N250 G17 ... Choix du plan XY
N..

M.P. CFOP 13

Vous aimerez peut-être aussi