Prog Mocn
Prog Mocn
Prog Mocn
Plan du cours
Programmation en code G
Le code G est un langage proche du langage machine
Toutes les MOCN se programment de manière similaire
Chaque directeur de commande numérique utilise un code G avec des variantes
Un programme pour la machine X ne fonctionne pas forcément sur la machine Y
Normalisation du code G
La norme 6983/1 décrit le format des programmes pour les machines à
commande numérique indépendamment du type de machines.
6983/1 remplace un ensemble de normes plus anciennes (ISO 840, 1056, 1057,
1058, 1059, 2539).
Cette norme est adaptée pour les systèmes de commande de type:
mise en position
mouvement linéaire (paraxial)
contournage
Le respect de cette norme ne garantie pas l’interchangeabilité des programmes
La norme 6983/1 fait référence à d’autres normes:
646: Jeu de caractères codés sur 7 éléments (ASCII)
841: Nomenclature des axes et des mouvements
2806: Commande numérique des machines: Vocabulaire
6983/2: Commande numérique des machines: format et définition des mots adresse
Jeux de caractères
Codage sur 7 bits
Pas de caractères en minuscule
Tous les caractères non imprimables sont ignorés, sauf <Fin De Bloc>
Contrôle de parité
Assurer l’intégrité du transfert dans un environnement d’atelier
Parité paire sur le 8ième bit pour la norme 6983/1 et ISO en général
Parité impaire sur le 8ième bit pour la norme EIA (plus rare aujourd’hui)
Mémoire CN réduite
Éviter les commentaires trop longs
Si nécessaire les espaces et tous les caractères inutiles seront supprimés
exemple:
Remarques:
Même dans les commentaires les autres caractères ne peuvent pas être utilisés
(en particulier les minuscules et la virgule)
Un commentaire ne doit pas contenir les caractères : et %
Généralités
Adresse: Le premier caractère est toujours une lettre majuscule et
donne la signification du mot
Valeur numérique: entière ou réelle signée
Le signe décimal est implicite (les valeurs sont en µm ou 1/10 000”)
Le signe décimal est supporté en option
Numéro de bloc
Adresse N suivi par un nombre entier
Facultatif
C ’est un label (l ’ordre croissant ne doit pas être respecté)
Utilisé : suivi d’un nombre pour les points d ’entrée dans le programme
École de technologie supérieure
Génie de la production automatisée GPA-664, Fabrication Assistée par Ordinateur 8
Roland Maranzana
Mots de programmation (suite)
Unités
Certains équipements supportent 2 systèmes d’unités
G71 Système International
G70 Système Impérial
Pour une même machine, les données introduites en mm permettent
une meilleure résolution (1/10000in. = 0,00254mm).
Vitesse d’avance
G93 Inverse du temps (vitesse/distance) (modal)
G94 Avance par minute (modal)
G95 Avance par tour (modal)
Si les vitesses de coupe et d’avance ne sont pas indépendantes, il est
recommandé d’utiliser G95
L’utilisation de G93 n’est recommandée que lors de déplacement en
interpolations linéaire et circulaire simultanées
L’adresse F suivi d’un entier ou un réel exprime la valeur de la vitesse
L’adresse E est utilisée pour un éventuel deuxième axe
Vitesse de coupe
G96 Vitesse de coupe constante (modal)
G97 Vitesse de rotation constante (modal)
La norme recommande le G97, en tournage G96 est souvent préférable
L’adresse S suivi d’un entier exprime la valeur de la vitesse
École de technologie supérieure
Génie de la production automatisée GPA-664, Fabrication Assistée par Ordinateur 10
Roland Maranzana
Interpolation
Principe
L’outil suit une courbe d’interpolation dont la description peut s’étendre
sur plusieurs blocs
Un code G définit le type de déplacement
Le point de départ est la position courante de l’outil (le point d’arrivée
précédent), seules les coordonnées du point d’arrivée sont données
Interpolation point à point
G00 Déplacement rapide jusqu’au point d’arrivée (modal)
La vitesse de déplacement n’est pas programmable
Utilisé pour la mise en position rapide de l’outil
Z Y
* Attention la trajectoire n’est pas contrôlée
Interpolation linéaire
G01 Interpolation linéaire à vitesse contrôlée (modal)
La vitesse d’avance doit être introduite avant ou dans le même bloc
Interpolation circulaire
G02 Interpolation circulaire dans le sens anti-trigonométrique (modal)
G03 Interpolation circulaire dans le sens trigonométrique (modal)
Déplacement suivant un arc de cercle dans un plan parallèle aux axes
G17 Plan XY (modal et par défaut en fraisage)
G18 Plan ZX (modal et par défaut en tournage)
G19 Plan YZ (modal)
Les déplacements se font à la vitesse programmée
En plus des coordonnées du point d’arrivée, il faut introduire les
coordonnées du centre du cercle avec les adresses I, J, K, relativement
au point de départ
Certaines CN utilisent le rayon avec l’adresse R (pour arc < 180°)
École de technologie supérieure
Génie de la production automatisée GPA-664, Fabrication Assistée par Ordinateur 12
Roland Maranzana
Interpolation (suite)
En fraisage En tournage
Z
G03
G03
G03
X Y Z
G03
Y X
Z
X Y
Sens trigo = G03
Sens trigo = G03
en absolue
jc y1
G02 X x1 Y y1 I ic J -jc
en relatif
G02 X (x1-x0) Y (y1-y0) I ic J -jc x0 ic x1 X
en absolue
ic x0
G03 X x1 Y y1 I ic K kc
en relatif x1
G02 X xa Y ya R r
r
xa, ya
X X=5 X
I=100 X=125
I=-20
Y Z Y=65 Y
Z
Y=70 J=-45
J=40
X X=5 X
X=125
I=100 I=-20
Interpolation parabolique
G06 Interpolation parabolique (modal)
Deux types de définitions sont prévues:
Coordonnées du sommet de la parabole (qui doit être sur la trajectoire) et
dans le bloc suivant les coordonnées du points d ’arrivée
Coordonnées du point d’arrivée et coordonnées du point d’intersection des
tangentes aux points de départ et d’arrivée
Exemple
….
G06 X xa Y ya Z za
Z Y xb, yb, yb
X xb Y yb Z zb ic, jc, kc
….
xa, ya, za
…. X
G06 X xb Y yb Z zb I ic J jc K kc
….
Repère normalisée
Axe Z:
Orientation: Axe de la broche
Direction: Positif (Z+) dans la direction qui éloigne la pièce ou l’outil de la
broche
Axe X:
Orientation: Normal à Z suivant l’orientation du plus grand déplacement de
la pièce ou de l’outil
Direction: Positif (X+) dans la direction qui éloigne la pièce de l’outil
Axe Y:
Orientation: Normal à X et Z
Direction: Positif (Y+) de manière à former un repère orthonormé direct
Axe A, B, C:
Axe de rotation respectivement autour de X, Y, Z.
Z Y
Sens positif dans le repère orthonormé
C+
X
École de technologie supérieure
Génie de la production automatisée GPA-664, Fabrication Assistée par Ordinateur 19
Roland Maranzana
Les repères
Y ZM
X
Xm Xp XP
XP Zm Zp ZP
…
ZP
G01 X1.23 Z12.2
Z-23.4
?
X1.5 Z-23.
Z12.2
….
ZM
DZi
Xm DXi
Zm
G41
à gauche de la trajectoire
programmée
G42
à droite de la trajectoire
programmée
Exemple en fraisage
….
30 60
N100 G41 G01 X60. Y50.
N110 X40. Y50.
N120 G02 X30. Y60. I0. J10.
N130 G01 Y100.
40
R10
….
y
50
x
Exemple en tournage
….
N100 G41 G01 X100. Z40.
N110 X60.
N120 G03 X40. Z50. I0 K10.
N130 G01 Z70. x
N140 X30. Z90.
40
N150 X-2. R10
20
15
N160 G40 Z100. z
40
…. 70
90
100
Outil 1: Fraise 2 tailles en bout ø40mm
correcteur associé 1 et 11 25
Outil 2: Fraise 2 tailles en bout ø8mm
correcteur associé 2 et 22 15
25
R20
75
40
R30
25
École de technologie supérieure
Génie de la production automatisée GPA-664, Fabrication Assistée par Ordinateur 27
Roland Maranzana
Programmation de la Fraiseuse Enshu / Fanuc OM (1)
Les axes
4 axes X, Y, Z, C
3 axes simultanés
X
800.
Compensation en longueur G44
Ne sera pas étudié ni utilisé dans le cadre de ce cours.
École de technologie supérieure
Génie de la production automatisée GPA-664, Fabrication Assistée par Ordinateur 29
Roland Maranzana
Programmation de la Fraiseuse Enshu / Fanuc OM (3)
G Code du cycle (73, 74, 76, 81, 82, 83, 84, 85, 86, 87, 88, 89)
X, Y Position du perçage (absolue/relative)
Z Cote du fond (absolue/relative)
R Cote du point de dégagement (Retract point)
Q Valeur de l’incrément pour le perçage par étapes
Valeur du dégagement latéral avant retrait avec arrêt indexé
P Valeur de l’arrêt temporisé en ms
F Vitesse d’avance en usinage
K Nombre total de perçages (maximum 6)
Remarque:
Dépendant du cycle sélectionné, seuls les mots nécessaires sont déclarés
Arrêt temporisé
Arrêt temporisé
Fond du perçage G82 P _
G82 P _ Fond du perçage
Z Z
Position courante
Q Q
(d)
(d)
Q Q
(d)
G74 G84
Broche Trigo
M04 (CCW) Broche Anti-trigo
M03 (CW)
Broche Anti-trigo
M03 (CW) Broche Trigo
M04 (CCW)
Avec G99
Fond de l ’alésage
Fond de l ’alésage
Z
Z
Autres codes M
M98 appel d ’un sous programme
Exemple:
….
M98 P1001 O1001;
…. ….
…. ….
M99
Remarques:
Un bloc peut contenir jusqu’à 9 codes G mais un seul code M et T
Le mot d’adresse N est facultatif
La vitesse de coupe est toujours exprimée en tours par minute (RPM)
Vc max 4800t/mn, Va/x et Va/y max 18m/mn, Va/z 12m/mn en rapide
Les registres de compensation de longueur et de rayon d’outil sont
exprimés avec le mot d’adresse H associé à G41, G42, G43
Les valeurs des mots d’adresse X,Y,Z,C doivent TOUJOURS avoir un
point décimal
Le mot d’adresse T présélectionne un outil dans le magasin, le
changement d’outil est réalisé avec M06
Le caractère de fin de bloc est le ;
Z
Usiner la pièce suivante la Enshu X
10,00
Outil : Fraise 2 tailles ø50, poste 1
10,00
25,00
Vc: 300m/mn
Va: 0,06mm/t Y
Opération 3: Ébauche de la poche (point B descente en rampe, sens antitrigo) X
2 passes Origine outil 100,00
outil: Fraise 2 tailles ø20, poste 2 50,00
Vc: 200m/mn
Va: 0,08 m/mn (la moitié lors des rampes)
50,00
surépaisseur pour finition des murs: 0,5mm
Opération 4: Finition des murs de la poche
100,00
Outil : Fraise 2 tailles ø20, poste 2
Vc: 300m/mn
Va: 0,06mm/t G
,00
Remarque: Toutes les opérations avec lubrification A R25
B
G
Les axes X
Z300. Z
Remarques:
Un bloc peut contenir plusieurs codes G (mais un seul code M et T ?)
Les coordonnées relatives et absolues peuvent être utilisées dans le
même bloc (X/U et Z/W)
Les valeurs suivant X sont programmées au diamètre (vrai pour U aussi!)
Le mot d’adresse N est facultatif
Les codes suivants sont actifs à la mise sous tension:
G00 G25 G40 G69 G97 G99
Le contrôleur possède 32 registres de compensation d’outils
Les valeurs des mots d’adresse X,Z doivent TOUJOURS avoir un point
décimal
Le mot d’adresse T réalise immédiatement un changement d’outil sans
attendre un M06 G00 X xa Z za
Le caractère de fin de bloc est le ;
Attention au G00 xa,za
G10 P _ X_ Z_ R_ Q_
P: Numéro du registre (1 à 32)
X, Z: Décalage de position en X et Z
R: Rayon de la pointe de l’outil
X
Q: Position de la pointe théorique de l’outil 8
4 3
G10 P _ U_ W_ C_ Q_
P: Numéro du registre (1 à 32) 0/9 7
U, W: Décalage de position en X et Z relatif 5 Z
C: Variation du Rayon de la pointe de l’outil
Q: Position de la pointe théorique de l’outil 2
1
6
École de technologie supérieure
Génie de la production automatisée GPA-664, Fabrication Assistée par Ordinateur 46
Roland Maranzana
Programmation du tour Hardinge / Fanuc OT (7)
Trajectoire du centre du
centre de pointe de l’outil
Z
Trajectoire programmée et réalisée
avec compensation de rayon
X G42
X, Z
F
β
Pas du filetage
G90 U _ W_ R_ F_
U, W: Coordonnées du point diagonalement
opposé au point de départ en relatif
G90
G92 U _ W_ R_ F_
U, W: Coordonnées du point diagonalement
opposé au point de départ en relatif
G92
R
F
X
G94 U _ W_ R_ F_ G94
U, W: Coordonnées du point diagonalement
opposé au point de départ en relatif
X R
P numéro du
bloc de début
U1
Q numéro du
Remarque: bloc de fin
Le profil doit être monotone croissant
Le cycle réalise la passe de demi-finition
U2
P numéro du
bloc de début
Q numéro du
U1
bloc de fin
Remarque:
Le profil doit être monotone croissant
Le cycle réalise la passe de demi-finition U2
P numéro du
bloc de début
Remarque:
Le profil doit être monotone croissant
U2