Vous êtes sur la page 1sur 74

Module 14

PROGRAMMATION DES
MOCN

Filière :
Technicien Spécialisé en Usinage sur MOCN option :
USINAGE Outillage de presse et FAO
Niveau :
Technicien Spécialisé

Réalisé par :
M. ABDELHAK KHETTAB

Version : 2017

1
Document élaboré par :

Nom et prénom : EFP Direction régionale

- Mr. ABDELHAK KHETTAB ISTA TFZ NOII

Validation par :

- Mr. ABDELHAK KHETTAB ISTA TFZ NOII

ABDELHAK KHETTAB / OFPPT Page 2


Table des matières
I. Généralités........................................................................................................................ 6
1. Introduction ............................................................................................................................. 6
2. Historique ................................................................................................................................ 6
3. Définition de la commande numérique .................................................................................. 6
4. Terminologie............................................................................................................................ 6
5. Domaines d’utilisation............................................................................................................. 7

II. Présélection des M.O.C.N. ........................................................................................ 7


1. Mise en œuvre des MOCN ...................................................................................................... 7
III. Les commandes numériques (C.N.) ................................................................. 9
1. Choix du système de CN .......................................................................................................... 9
La commande numérique par calculateur intégré .......................................................................... 9
La commande numérique directe ................................................................................................... 9
IV. Mode de fonctionnement des MOCN ............................................................. 10
Déplacement par positionnement point à point........................................................................... 10
Déplacement en paraxial............................................................................................................... 10
Déplacement en continu (trajectoires de contournage) ............................................................... 11

V. Architecture d’un centre d’usinage CN............................................................ 12


1. Principe d’asservissement d’un organe mobile .................................................................... 14
2. Entraînement d’un organe mobile suivant un axe ................................................................ 15
Moteurs ......................................................................................................................................... 15
Avantages des moteurs pas à pas ................................................................................................. 16
Inconvénients des moteurs pas à pas ........................................................................................... 16
Avantages des servomoteurs ........................................................................................................ 16
Inconvénients des servomoteurs .................................................................................................. 16
Liaison moteur-table ..................................................................................................................... 16

VI. Axes et repères ........................................................................................................ 18


1. Définitions et implantations des axes ................................................................................... 19
Les translations primaires ............................................................................................................. 19
Les rotations primaires .................................................................................................................. 19
VII. Les différentes origines sur un centre d’usinage ................................... 20
1. Origine mesure(Om) : ............................................................................................................ 20
2. Origine Machine(OM) : .......................................................................................................... 20
3. Origine programme (OP) : ..................................................................................................... 20

ABDELHAK KHETTAB / OFPPT Page 3


4. Origine porte pièce (Opp) :.................................................................................................... 20
5. Origine pièce(Op) : ................................................................................................................ 20
6. Point Piloté par la Machine (PPM): ....................................................................................... 20
7. L’arrête tranchante (AT) : ...................................................................................................... 20

VIII. Programmation.......................................................................................................... 22

IX. Les différents modes de programmation .................................................... 22


Le langage ISO ............................................................................................................................... 22
Le langage conversationnel sur pupitre de la C.N. ........................................................................ 23
Les langages de haut niveau .......................................................................................................... 23
Programmation automatique par une F.A.O................................................................................. 23
X. Programmation en code G ...................................................................................... 24
Format d'un programme ............................................................................................................... 24
Composition maximum d’un bloc ................................................................................................. 25

I. Fonctions préparatoires........................................................................................... 25

10.1.1. Positionnement en rapide G00 ................................................................. 25

10.1.2. Interpolation linéaire G01 ........................................................................... 27

10.1.3. Interpolation circulaire ................................................................................. 28


Interpolation circulaire avec la valeur du rayon............................................................................ 29

10.1.4. Choixdu plan d'interpolation...................................................................... 30

10.1.5. Unités ..................................................................................................................... 30

10.1.6. Coordonnées absolues/ relatives ............................................................ 30

10.1.7. Autres fonctions ............................................................................................... 32

II. Fonction d’avance F ............................................................................................... 33

III. Fonction vitesse de broche S............................................................................ 33

IV. Fonction sélection outil T ................................................................................... 33

V. Fonction auxiliaire M ............................................................................................. 33

VI. Les sous-programmes .......................................................................................... 38

VII. Fonction Correction d’outil ................................................................................. 39

10.7.1. Fonctionsde compensationde rayon ......................................................... 40

10.7.2. CORRECTIONDELA LONGUEUR D’OUTIL ................................................ 42

10.7.3. JAUGES OUTILS ............................................................................................... 43

10.7.4. Corrections dynamiques d’outils ............................................................. 44

VIII. Fraisage circulaire des poches CW (sens horaire) G12 / fraisage


circulaire des poches CCW (sens anti-horaire) G13 ................................................. 49

ABDELHAK KHETTAB / OFPPT Page 4


IX. Les cycles fixes : ..................................................................................................... 52

X. Les codes G soutenus par HAAS ..................................................................... 71

ABDELHAK KHETTAB / OFPPT Page 5


I. Généralités

1. Introduction
Une Machine-outil à Commande Numérique (M.O.C.N.) est une machine d'usinage à
cycle automatique programmable.
Le terme "commande numérique" est générique et a été retenue parce que la
machine est commandée par des "consignes" numériques fournies par un
calculateur. En d'autres termes, on peut dire que les organes mobiles de la machine
sont motorisés et qu'un automatisme assure la commande et dans la plupart des cas
le contrôle de la position et/ou de la vitesse.
Ce type de machine se compose ainsi de deux parties complémentaires :
- la partie opérative (c'est la machine-outil : elle agit directement sur le produit à
réaliser);
- la partie commande (c'est la commande numérique : elle permet d'élaborer des
ordres en fonction des consignes et des comptes rendus).

2. Historique
La première MOCN daté de 1942.
La fabrication d’une came tridimensionnelle complexe avait obligé laBendix
Corporation (U.S.A.) de commander directement lesmouvements de la machine à
partir des définitions numériques des courbes produites par descalculateurs.
1955 : à Font du Lac (Wisconsin), le constructeur américain Giddins& Lewis
commercialise la première MOCN.
1959 : apparition de la CN en Europe (foire de Hanovre).
1964 : en France, la Télémécanique Electrique lance la CN NUM100 conçue à
base de relais Télésat.
1968 : la CN adopte les circuits intégrés ; elle devient plus compacte et plus
puissante.
1972 : les mini calculateurs remplacent les logiques câblées ; la CNdevient CNC.
1976 : développement des CN à microprocesseurs.
1984 : apparition de fonctions graphiques évoluées et du mode de
programmation conversationnel.
1986 : les CN s’intègrent dans les réseaux de communication, début de l’ère de
la fabrication flexible (CIM).
1990 : développement des CN à microprocesseurs 32 bits

3. Définition de la commande numérique


La commande numérique est une technique utilisant des données composées de
codes alphanumériques pour représenter les instructions géométriques et
technologiques nécessaires à la conduite d’une machine ou d’un procédé.

La CN est un ensemble d’automatismes dans lequel les ordres de mouvements ou


de déplacements, la vitesse de ces déplacements et leur précision sont donnés à
partir d’informations numériques.

4. Terminologie
CN: Commande Numérique.
CNC: Commande Numérique par Calculateur.
DCN: Directeur de Commande Numérique.

ABDELHAK KHETTAB / OFPPT Page 6


DNC: Direct Numerical Control (commande numérique directe)
MOCN: Machine-Outil à Commande Numérique.
MDI: Manual Data Input
CFAO : Conception et Fabrication Assistées par Ordinateur
CAD/CAM: Computer Aided Design /computer Aided Manufacturing (voir CFAO)
CCW : CounterClockWise (sens antihoraire)
CW : ClockWise (sens horaire)
PCMCIA : Personal Computer Memory Card International Association
RAM : Random Access Memory (mémoire vive, ou à accès direct)
ROM : Read Only Memory (mémoire morte, ou à lecture seule)

5. Domaines d’utilisation
Les M.O.C.N. conviennent surtout à la fabrication en petites et moyennes séries
renouvelables. Elles permettent la réalisation, sans démontage, de pièces complexes
comportant beaucoup d'opérations d'usinage.
Ce type de machine se situe à mi-chemin entre les machines conventionnelles très
"flexibles" (souple d'utilisation) réservées aux travaux unitaires (prototypes,
maintenance) et les machines transferts, très productives, réservées aux grandes
séries.
Les MOCN sont employées dans de nombreux secteurs industriels:
Métallurgie, Bois, Textile…

▪ La CN est aussi associée à de nouvelles technologies de façonnage:


• Laser
• Electroérosion
• Jet d’eau

▪ Les principaux procédés de fabrication sont concernés:


• Perçage, taraudage
• Tournage, alésage
• Fraisage
• Rectification
• Oxycoupage, soudure en continu, par points
• Poinçonnage, cisaillage
• Etc.

II. Présélection des M.O.C.N.


Les M.O.C.N. permettent l'usinage de pièces de formes diversifiées. Un classement
par famille de pièces permet d'effectuer une première sélection du type de
machine.
On recherche à faire un maximum d'usinage sans démontage de la pièce pour
éviter les dispersions dues à la mise en position des pièces sur les montages
d'usinage.
La sélection finale de la machine s'effectue en tenant compte des dimensions des
pièces à usiner, de la puissance nécessaire à la broche, des capacités de la
machine...

1. Mise en œuvre des MOCN

ABDELHAK KHETTAB / OFPPT Page 7


La mise en œuvre de la MOCN dans l’entreprise nécessite de respecter
certaines règles de façon à préparer, dans des conditions optimales, l’intégration
de cette technologie.
Cette phase de la mise en œuvre passe par trois grandes étapes :
— le choix de la machine;
— la préparation préalable de l’entreprise et de son environnement ;
— une analyse de rentabilité.

Choix de la machine

Le type de machine est sélectionné en fonction des données suivantes :


— morphologie des pièces à usiner ;
— dimensions et poids des pièces à usiner ;
— précisions d’usinage demandées ;
— quantités de pièces à usiner par lancement ;
— nature des matériaux usinés par l’entreprise ;
— diversité et complexité des usinages ;
— encombrement au sol, compte tenu de l’espace disponible dans l’atelier
Préparation de l’entreprise

L’utilisation optimale de la MOCN exige un aménagement profond des structures


de l’entreprise.
Sur le diagramme de la figure 32, on pourra estimer les délais potentiels
d’introduction de la CN dans l’entreprise.

Diagramme temporeld’introduction delaCN dansl’entreprise

Moyens humains

L’aspect humain est primordial pour obtenir une large adhésion de l’entreprise à
l’arrivée d’une MOCN. On veillera en particulier à expliquer clairement ce qu’est

ABDELHAK KHETTAB / OFPPT Page 8


et ce que peut apporter réellement la CN avant de choisir et de former, à divers
niveaux, le personnel concerné par l’utilisation du matériel (maîtrise, opérateur,
programmeur, personnel de maintenance, etc.).
Dans la majorité des cas, il faut également prévoir un travail en plusieurs
équipes.

Étude de rentabilité

L’investissement productif nécessite une analyse détaillée du choix et de la


rentabilité à l’aide de calculs comparatifs entre diverses solutions techniques

III. Les commandes numériques (C.N.)


A partir d'un programme d'usinage, le directeur de commande numérique (D.C.N.)
fournit des ordres aux servocommandes des axes de la machine. Le système
comprend un ou plusieurs microprocesseurs préprogrammés pour l’exécution des
fonctions de la C.N.
Le parcours de la trajectoire programmée s'effectue en déplaçant l'outil par rapport
à la pièce. Outre le calcul des trajectoires des outils, la plupart des D.C.N.
permettent de tenir compte des événements extérieurs (prise en charge de la
synchronisation d'un robot de chargement-déchargement des pièces, contrôle des
outils, contrôle des cotes...).

1. Choix du système de CN

Le choix de la CN et de ses options matérielles et logicielles est intimement lié à


son niveau de performances (et surtout à son adéquation à celui de la machine),
à son ergonomie, à son prix et à la qualité des prestations offertes par son
fournisseur.
Avant de prendre une décision définitive dans le choix d’une nouvelle MOCN, il
est vivement recommandé à l’utilisateur final de la machine de se renseigner
directement auprès du fabricant de la CN sur l’ensemble des possibilités
logicielles que peut offrir l’équipement.

La commande numérique par calculateur intégré


Les machines à commande numérique disposent d'un calculateur intégré. Ainsi le
programme peut y être chargé en mémoire. Après l'élaboration ou le
téléchargement du programme, la C.N travaille en autonomie.
Ce type de C.N. permet :
- l'élaboration et la modification des programmes sur site;
- la gestion de programmes chargés en mémoire;
- la mémorisation des données de la machine;
La commande numérique directe
La C.N. utilise une ligne de télécommunication pour échanger des données
(programmes, messages...) entre le calculateur intégré et un équipement
informatique externe (serveur ou ordinateur).
Son utilisation permet :
- de s'affranchir des capacités mémoire du calculateur intégré.
- de transmettre rapidement des données ou programmes.

ABDELHAK KHETTAB / OFPPT Page 9


- de gérer de manière centralisée les programmes.

IV. Mode de fonctionnement des MOCN


Déplacement par positionnement point à point.

Le passage d'un point à un autre s'effectue en programmant la position finale,


tandis que le trajet parcouru pour atteindre cette position n'est pas contrôlé par le
directeur de commande numérique.
Par exemple, les trajectoires planes d'un point A vers un point B peuvent s’exécuter
de manières différentes schématisées
On trouve des applications sur les pointeuses perceuses, poinçonneuses,
aléseuses…

Déplacement en paraxial
Les trajectoires sont parallèles aux axes de déplacement et la vitesse de
déplacement (programmable) est contrôlée. Ce type de déplacement permet par
exemple des fraisages précis à vitesses imposées.
On trouve des applications en (dressage) de faces, cylindrage, rainurage…).

ABDELHAK KHETTAB / OFPPT Page 10


Déplacement en continu (trajectoires de contournage)
Des interpolateurs linéaires et circulaires permettent de réaliser des trajectoires
linéaires et circulaires dans le plan ou dans l’espace. Les différents axes exécutant
la trajectoire sont contrôlés en vitesse et en position pour assurer une
synchronisation permanente des mouvements.

ABDELHAK KHETTAB / OFPPT Page 11


V. Architecture d’un centre d’usinage CN

ABDELHAK KHETTAB / OFPPT Page 12


Figure 1:Architecture matérielle d’une MOCN

La cinématique des machines-outils est liée au principe de générations des surfaces


(plan, cylindre...). Les machines à commande numérique de bases (tours, fraiseuses)
ont une cinématique identique aux machines conventionnelles (tours parallèles,
fraiseuses universelles).
Les centres d'usinages (centre de tournage ou centre de fraisage) possèdent au
moins un axe supplémentaire (broche ou table rotative commandée numériquement).
En d'autres termes :
• un tour est une machine deux axes. La broche n'est pas comptabilisée, elle donne le
mouvement de coupe;
• une fraiseuse est une machine trois axes. La broche n'est pas comptabilisée, elle
donne le mouvement de coupe;
• un centre de tournage possède au moins trois axes. La broche peut être asservie en
position et dans ce cas le mouvement de coupe est donné par un outil tournant;
• un centre de fraisage possède au moins quatre axes. Par exemple, un plateau rotatif
asservi en position ou une table indexable donne le quatrième axe. La broche n'est
pas comptabilisée, elle donne le mouvement de coupe.
• D'une manière générale, un centre possède un changeur d'outils.
Certains centres d'usinages permettent ainsi la réalisation complète de pièces sur la
même machine (une seule phase avec diverses opérations : tournage, fraisage,
perçage, taraudage, détourage, gravure...).
Remarque :
Les dénominations 2 axes 1/2 ou 2D1/2 sont utilisées parfois pour désigner une
machine trois axes ou une F.A.O. qui génère des trajectoires dans le plan par
interpolation linéaire et circulaire. La "troisième" dimension n'est utilisée que pour
changer de plan d'interpolation.
ABDELHAK KHETTAB / OFPPT Page 13
Malgré l'impossibilité d'exécuter des interpolations circulaires dans l'espace 3D par
des machines dites "2 axes 1/2", il est possible avec ce type de machines de générer
et de contrôler des trajectoires linéaires dans l'espace et par conséquent de réaliser
des surfaces gauches en utilisant pour la génération du code ISO une F.A.O. 3D
surfacique. L'usinage est dans ce cas obtenu par une fraise à bout hémisphérique et
la F.A.O. contrôle l'erreur de cordeet l'erreur de crête.

1. Principe d’asservissement d’un organe mobile


La fonction principale d’une CN est de contrôler en permanence les déplacements
des divers organes mobiles de la machine, en vitesse comme en position.
Chaque axe de déplacement est donc assujetti à un asservissement en boucle
fermée, dont le principe consiste à mesurer continuellement la position réelle du
mobile et à la comparer avec la grandeur d’entrée, ou position de consigne, que
délivre la CN pour atteindre la nouvelle position programmée . Dès que l’écart entre
les deux mesures s’annule, le mobile s’arrête.
Le déplacement de la table ou de l’outil d’un point à un autre implique la
connaissance :
— de l’axe (X, Y, Z,...) sur lequel le déplacement doit s’effectuer ;
— des coordonnées du point à atteindre ;
— du sens de déplacement (+ ou –) ;
— de la vitesse de déplacement de la table ou de l’outil.
Les CNmodernes permettent de contrôler simultanément plusieurs axes linéaires ou
rotatifs (en général de 2 à 5) et de les interpoler entre eux afin de suivre avec
précision une trajectoire quelconque dans l’espace.

ABDELHAK KHETTAB / OFPPT Page 14


2. Entraînement d’un organe mobile suivant un axe

Figure2: système d’entrainement

Moteurs
Pour l’activation des axes, quatre grands types de moteurs sont utilisés dans
les machines à Commande Numérique.
• Les moteurs hydrauliques ont été remplacés progressivement par des moteurs
électriques.
• Pour les petites machines à faible coût nécessitant peu de couple, les moteurs pas à
pas sont une solution intéressante. Le moteur pas à pas est un moteur du type tout ou
rien. Il donne un pas lors de l’envoi d’une impulsion. Il est possible de perdre des pas
si le train d’impulsions est trop rapide ou si le couple résistant est trop important.
• Pour les machines plus puissantes, devant garantir une bonne précision et un bon
état de surface en usinage, la solution retenue est le moteur à courant continu à aimant
permanent commandé par un variateur de vitesse.
• Les moteurs à courant continu à excitation shunt ou indépendante offrent une
grande souplesse de commande et une gamme de vitesse s étendue, mais ils nécessitent
un entretien fréquent des balais.
• Les moteurs asynchrones demandent la connaissance de la courbe couple-vitesse
de rotation.
• Moteurs linéaires : compte tenu des performances croissantes des
asservissements de machines, les vis à billes arrivent à leurs limites physiques, tant pour
leurs capacités d’accélération que pour leur tenue géométrique (flexion, flambage). C’est
pourquoi certains constructeurs entreprennent d’intégrer des moteurs linéaires pour
commander leurs mécaniques de machines
Cette nouvelle solution d’entraînement, qui consisteschématiquement à ouvrir un
moteur circulairepour le mettre à plat, présente les avantages suivants :
— très grandes vitesses de déplacement (plusieurs centaines de mètres par
minute);
— dynamique élevée ;
— grande raideur statique et dynamique ;
— construction simplifiée.

ABDELHAK KHETTAB / OFPPT Page 15


Avantages des moteurs pas à pas
• Faible coût
• Fonctionnement en boucle ouverte (contre-réaction inutile)
• Couple à l'arrêt très élevé (freins inutiles)
• Couple élevé à basse vitesse
• Maintenance aisée (pas de balais)
• Solidité et usage dans tout environnement
• Précision élevée dans la commande du positionnement

Inconvénients des moteurs pas à pas


• Faibles performances à basse vitesse, même en micro -pas
• Consommation de courant élevée quelle que soit la charge
• Tailles disponibles limitées
• Bruit important
• Diminution du couple avec la vitesse
• Risque de calage ou de perte de position en fonctionnement sans boucle de
contrôle

Avantages des servomoteurs


• Couple intermittent élevé
• Rapport couple/inertie élevé
• Vitesses élevées
• Excellent contrôle de la vitesse
• Nombreuses tailles disponibles
• Peu de bruit

Inconvénients des servomoteurs


• Prix élevé
• Impossibilité de fonctionner en boucle ouverte
• Nécessité d'une mise au point précise des paramètres de boucle
• Maintenance contraignante:
• (balais sur les moteurs à courant continu)

Liaison moteur-table
Les éléments utilisés doivent avoir le moins de jeu possible.
Vis à billes
Les filets de la vis sont remplacés par des gorges où circulent des billes d’acier.
Avantage :
• Jeux pratiquement nuls,
• Diminution des frottements,
• Vitesse de translation élevée (jusqu’à 15 m/mn).

ABDELHAK KHETTAB / OFPPT Page 16


Figure 3:vis à bille

Vérin
Avantage :
• Grande souplesse d’utilisation quel que soit la vitesse, transmission d’efforts
importants.
Inconvénients :
• Il reste des jeux de fonctionnement rattrapables par paramètres .

Glissières
Plusieurs cas peuvent se présenter :
• Traitées avec un revêtement auto lubrifiant (alliage de téflon et de bronze).
• Montées sur des patins à film d’huile.
• Montées sur des patins aérostatiques (surtout réservé aux machines à mesurer3D).

Capteurs

Types de capteurs :

La nature du signal mesurant l’écart entre la consigne de positionet la position


instantanée de l’organe mobile dépend de la nature du capteur de mesure
utilisé.
Celui-ci peut être :
— analogique, lorsque le déplacement demandé entraîne une variation
magnétique, électrique ou autre, qui est transformée en signal de sortie (capteurs
inductifs, résolveurs, règle Inductosyn ) ;
— numérique, lorsque le déplacement d’une règle ou d’un disque présentant des
zones alternativement sombres et claires devant un lecteur optique produit des
impulsions lumineuses qui sont transformées en signal de sortie (capteurs
photoélectriques, règles et disques optiques ou codés).

• Ils sont choisis en fonction de la précision requise et des contraintes mécaniques.


• La mesure est d’autant plus précise quand elle est prélevée directement sur le
mobile (mesure linéaire directe).
• Elle peut aussi être prélevée sur un élément intermédiaire (en extrémité de vis) par
un dispositif rotatif plus facile à mettre en œuvre. C’est la mesure indirecte.
• Le capteur de position peut être analogique et délivrer des signaux électriques
modulés. Il peut être aussi numérique et délivrer des impulsions électriques captées par
des cellules photoélectriques.

ABDELHAK KHETTAB / OFPPT Page 17


Système de mesure

Figure 4:disque codeur

• Mesure directe : capteur linéaire


2 parties : 1 fixée à l'organe mobile
1 fixée au bâti
• Mesure indirecte : capteur tournant ou impulseur rotatif calcul du déplacement.
• La mesure est influencée par la rigidité (par les jeux*)
• Mesure absolue : coordonnées mesurées par rapport à une origine fixe.
• Mesure incrémentale : déplacement mesuré en prenant la position précédente
comme origine.
• Mesure analogique : une tension ou un courant proportionnel au déplacement
0 -> 10 V 0 -> 20 mA
• Mesure numérique :
• Incrémental : compte ou décompte des impulsions.
• Absolu : règle codée d'où une valeur numérique.

VI. Axes et repères


On appelle axe tout mouvement asservi en position et en vitesse.
Un axe de machine est constitué de la façon suivante :
• Un chariot mobile sur glissières.
• Un système de transmission vis écrou (vis à billes).
• Un moteur et un réducteur.
• Un dispositif de mesure de vitesse.
• Un dispositif de mesure de position.
Lecodeur rotatifdeposition,montésurl’extrémité del’arbre desortieduréducteur,délivre
uneinformationnumériquesur laposition angulairedecetarbre,
unpasangulairecorrespondàunevariationde positiond’unmicromètrepour lechariot
Chaque axe est doncasservi enpositioneten vitessepar lacommandenumérique afin
de réaliserunprofil aveclameilleureprécision, d’obtenirunbonétat desurface,d’effectuer
l’usinageleplusrapidementpossible

ABDELHAK KHETTAB / OFPPT Page 18


1. Définitions et implantations des axes
Un axe est un degré de mobilité de la machine participant aux déplacements de la
pièce par rapport à l'outil ou l'inverse.
Les déplacements de l'outil ou du porte-pièce s'effectuent par combinaisons de
translations et/ou de rotations.
Chaque mouvement élémentaire (axe) est repéré par une lettre affectée du signe +
ou - indiquant le sens du déplacement.
Les translations primaires
S’effectuent suivant les axes X, Y, Z formant ainsi le trièdre de référence.
Les rotations primaires
Sont les trois rotations A, B, C autour de ces trois axes.

Figure5: axes

Les repères d’axes sont toujours placés sur les outils, pointe pour le tour,au bout et
au centre pour une fraise.
L’axe Z Correspond à l’axe de la broche, le sens positif correspond à un
accroissement de la distance entre la pièce et l’outil.
L’axe X Correspond à l’axe suivant ayant le plus grand déplacement, le sens positif
correspond à un accroissement de la distance entre la pièce et l’outil.
L’axe Y forme avec les deux autres un trièdre trirectangle de sens direct
(Règle des trois doigts de la main droite).
Les axes de rotations correspondent au sens trigonométrique.
▪ A autour de X, sens A+ de Y vers Z
▪ B autour de Y, sens B+ de Z vers X
▪ C autour de Z, sens C+ de X vers Y
Les axes de translations supplémentaires sont appelés :
▪ U parallèle à l’axe X
▪ V parallèle à l’axe Y
▪ W parallèle à l’axe Z

ABDELHAK KHETTAB / OFPPT Page 19


VII. Les différentes origines sur un centre
d’usinage
Avant toute mise en service, une machine-outil à commande numérique doit être
initialisée. Cette opération consiste à déplacer les chariots vers un point défini par
des butées électriques: c'est l'origine mesure (Om).

1. Origine mesure(Om) :

Il s’agit d’un point non modifiable fixé par le constructeur de la machine.


Cette origine est définie par des interrupteurs de fin de course (point R).

2. Origine Machine(OM) :

C'est l'origine absolue de la mesure (C’est le 0 des axes).


Le plus souvent, l'origine machine est confondue avec l'origine mesure (Om). Dans
le cas contraire, l'origine mesure est définie par un paramètre machine OM/Om
Lorsqu’une machine est en POM et les coordonnées X, Y, et Z sont toutes à 0.
Dans ce cas l’origine mesure et l’origine machine sont confondues (point M).

3. Origine programme (OP) :

Il s’agit du point de départ pour les indications de cotation indiquées dans le


programme
Cette origine est définie par le programmeur.

4. Origine porte pièce (Opp) :

Ce repère est lié au point de fixation de la pièce (point A).

5. Origine pièce(Op) :

Il s’agit d’un point « palpable » sur la pièce dont ses coordonnées X, Y et Z sont
définies par rapport à l’origine mesure (point W).
Dans beaucoup de cas, l’origine programme et l’origine pièce sont confondues.

6. Point Piloté par la Machine (PPM):

Il s’agit du point de départ pour la mesure des outils. Il se trouve en un point du


système de porte-outil. Il est défini par le fabricant de la machine (point T).

7. L’arrête tranchante (AT) :

C’est le point sur le quel s’effectue la coupe. Il est définit par rapport au PPM
(point P).
ABDELHAK KHETTAB / OFPPT Page 20
Les DCN autorisent généralement la mise en place de six repères pièces différents
appelés aussi coordonnées de travail : G54, G55, G56, G57, G58 et G59.
Par défaut la machine utilise G54.
Ces différentes origines peuvent être utilisées dans le même programme afin de
permettre une translation de l’origine programme sans changer les valeurs des
déplacements dans le programme.

ABDELHAK KHETTAB / OFPPT Page 21


VIII. Programmation
La programmation est le travail de préparation qui consiste à transposer, sous
forme de texte alphanumérique, la gamme d’usinage de la pièce en un ensemble
ordonné d’instructions comprises et exécutées par la CN en vue de réaliser son
usinage. Ce travail peut être effectué manuellement ou avec l’assistance d’un
ordinateur utilisant un langagede programmation évolué. À titre indicatif, la figure
ci-dessous classe différentes méthodes de programmation en fonction des
compétences du programmeur et de la complexité des machines à piloter.

Méthodes comparées de programmation

IX. Les différents modes de programmation

Quel que soit le langage de programmation utilisé pour le développement des


programmes pièces, le seul langage compréhensible par la machine est le
langage ISO. Le passage d'un langage de haut niveau au langage ISO est
possible en utilisant un logiciel de traduction.
Le langage ISO
Sur pupitre de la C.N. :
Cette solution mobilise la machine, la majorité des systèmes offrent par ailleurs
une interface peu conviviale.
ABDELHAK KHETTAB / OFPPT Page 22
Sur poste de programmation + téléchargement sur la C.N. :
Le poste de programmation peut être soit :
• Une console spécialisée reproduisant l'interface utilisateur de la C.N.
• Un ordinateur standard utilisant un logiciel spécialisé ou un éditeur de texte.
L'écriture du programme s'effectue en temps masqué, mais les tests syntaxiques
et la simulation graphique doivent se faire sur la M.O.C.N. ou nécessite alors
l'utilisation d'un logiciel de simulation.
Le langage conversationnel sur pupitre de la C.N.
Logiciel résident dans la CN qui permet la création, la modification, la visualisation,
la simulation d'un ou plusieurs programmes pièces écrits en conversationnel
pendant que la machine usine une pièce définie par un autre programme en
mémoire.
Aide à la programmation (fichiers divers) - Programmation en temps masqué mais
utilisation du pupitre de la machine (présence d'un programmeur sur le site en
cours de production).
Les langages de haut niveau
Ces langages normalisés facilitent la programmation, il présente l'avantage d'être
indépendants de la C.N qui sera utilisée pour l'usinage.
Un post-processeur (logiciel de traduction) spécifiquement développé pour chaque
directeur de commande numérique permet la traduction en langage ISO.
Ces langages sont également utilisés comme interface entre les systèmes de F.A.O
(voir point suivant) et le langage I.S.O utilisé par la C.N.
Programmation automatique par une F.A.O.
Les logiciels de F.A.O utilisent la géométrie de la pièce à usinée générée en C.A.O.
Sur ces logiciels une session d'usinage consiste pour l'essentiel en la sélection des
surfaces à usiner, le choix des outils, la définition de la méthode d'usinage et des
paramètres de coupe.
Les risques d'erreurs de report de données sont éliminés, le gain de temps est
important particulièrement pour les pièces complexes

ABDELHAK KHETTAB / OFPPT Page 23


X. Programmation en 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).
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

Le respect de cette norme ne garantit pas l'interchangeabilité des programmes.


Un programme établit pour la machine X ne fonctionne pas forcément pour la
machine Y
Format d'un programme

Adresse : lettre débutant un mot d’un langage machine, qui précise la fonction
généraleà commander : G, X, Y, Z, F, S, T, M.

Mot : ensemble de caractères comportant une adresse suivie de chiffres

Constituant une information. Ex : X100

Bloc : groupe de mots correspondant aux instructions relatives à une séquence


d’usinage.

Ex : N100 G01 X100 Z200 F0.2

ABDELHAK KHETTAB / OFPPT Page 24


Composition maximum d’un bloc

N Numéro de bloc
G Fonction préparatoire
X Mouvement suivant l’axe X
Y Mouvement suivant l’axe Y
Z Mouvement suivant l’axe Z
l Coordonnée de l’axe du rayon en X
J Coordonnée de l’axe du rayon en Y
K Coordonnée de l’axe du rayon en Z
F Fonction vitesse d'avance ("Feed" = avance)
S Fonction vitesse de broche ("Speed" = vitesse)
T Fonction outil (Tool = outil)
M Fonction auxiliaire ("Miscellaneous" = varié, divers)

Remarque:
Un bloc peut contenir plusieurs codes G (mais un seul code M et T)
Le mot d’adresse N est facultatif
Le mot d’adresse T réalise immédiatement un changement d’outil sans attendre un
M06
Le caractère de fin de bloc est le (;)

I. Fonctions préparatoires
Fonctions définies par l’adresse G et préparant la logique à un type de calcul ou à
une action déterminée.

Ex : G00, G01, G02, G03, G04, etc.

10.1.1. Positionnement en rapide G00


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.

ABDELHAK KHETTAB / OFPPT Page 25


G00
Déplacement rapide jusqu’au point d’arrivée (modal)
G00 est utilisé pour la mise en position rapide de l’outil
Attention
La trajectoire n’est pas contrôlée
La vitesse de déplacement n’est pas programmable

ABDELHAK KHETTAB / OFPPT Page 26


10.1.2. Interpolation linéaire G01

G01
Interpolation linéaire à vitesse contrôlée (modal)
La vitesse d’avance doit être introduite avant ou dans le même bloc

ABDELHAK KHETTAB / OFPPT Page 27


10.1.3. Interpolation circulaire

G02/G03
G02- Interpolation circulaire dans le sens horaire (modal).
G03- Interpolation circulaire dans le sens antihoraire (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 du point de départ au centre
de l’arc.

ABDELHAK KHETTAB / OFPPT Page 28


Interpolation circulaire avec la valeur du rayon

La machine exécute la trajectoire la plus courte.


Une valeur de rayon négative désigne parfois la trajectoire de plus de 180°

ABDELHAK KHETTAB / OFPPT Page 29


10.1.4. Choixdu plan d'interpolation

G17 - G18 - G19


G17 Plan XY (modal et par défaut en fraisage)
G18 Plan ZX (modal et par défaut en tournage)
G19 Plan YZ (modal)

10.1.5. Unités

Certains équipements supportent 2 systèmes d’unités


G21 Système International (mm)
G20 Système Impérial (po.)

10.1.6. Coordonnées absolues/ relatives


Il existe deux types de commandes de déplacements de l'outil : les commandes
absolues et les commandes incrémentielles (relatives).

ABDELHAK KHETTAB / OFPPT Page 30


Dans une commande absolue, les valeurs des coordonnées de la position d'arrivée
sontprogrammées, alors que dans une commande incrémentielle, c'est le
déplacement de la position elle-même qui est programmé

G90 Coordonnées absolues (modal) :


Toutes les coordonnées sont définies par rapport à une origine fixe (origine
programme).

G91 Coordonnées relatives (modal) :


Les coordonnées de chaque point sont définies par rapport au point précédent.

Dans le même programme, les deux modes peuvent être utilisés en alternance
Les programmes sont plus simples à éditer en mode absolu
Les sous-programmes sont plus simples à utiliser en mode relatif

G90 Cotations absolues

G91 Cotations relatives

ABDELHAK KHETTAB / OFPPT Page 31


10.1.7. Autres fonctions

G28 Retour au Repère machine (non modal)


Les coordonnées du bloc sont exprimés dans le repère machine.
Un point intermédiaire peut être donné.
G28 est surtout utilisé pour les changements d’outil.
À utiliser avec le mode d’instruction incrémentale (relative) G91

G30 Deuxième point de référence (non modal)

G92 Définition d’une nouvelle origine (modal)


Exemple: G92 X24.68 Y100. Z123.56;
La position courante de l’outil a les coordonnées (24.68,100,123.56) dans le
nouveau repère.

G52 permet de définir un système de coordonnées local.


En effet, on peut décaler l’origine pièce qui a été défini par G54 à G59.
Exemple : G52 X-30 Y30 ; l’origine pièce sera alors décalé de -30 sur l’axe X et
de30 sur l’axe Y. on peut annuler le décalage avec G52 X0 Y0 ;

G53 permet de définir les positions par rapport à l’origine machine.

G04 Arrêt temporisé (non modal)

En spécifiant une temporisation, l’exécution du bloc suivant est Retarder du temps


spécifie.
Temporisation G04 X-- ; ou G04 P-- ;
X spécifié un temps en second (point décimal autorisé)
P spécifie un temps en msec. (Point décimal non autorisé).

ABDELHAK KHETTAB / OFPPT Page 32


II. Fonction d’avance F

L’adresse F suivi d’un entier ou un réel exprime la valeur de la vitesse d’avance

G94 Avance par minute (modal) : la valeur spécifiée après le code F donne
l’avance en mm/min.

G95 Avance par tour (modal) : la valeur spécifiée après le code F donne l’avance
en mm/tr.

III. Fonction vitesse de broche S

L’adresse S suivie d’un entier exprime la valeur de la vitesse de broche en tr/min

La rotation de la broche s’effectue par la commande M3 ou M4


M3 Rotation de la broche, sens horaire.
M4 Rotation de la broche, sens trigonométrique.
Exemple : M3S1000 ; rotation de broche à 1000tr/mn dans le sens horaire.
M5 : arrêt de broche.

IV. Fonction sélection outil T

L’adresse T suivie d’un entier exprime La sélection d’outil


Le changement d’outil en fraisage s’effectue par la commande M6

Ex :
T01M06

V. Fonction auxiliaire M

Les codes M varient selon le constructeur de la machine-outil.


N.B : pour HAAS un seul code M peut être spécifié dans un bloc donné
Ci-dessous les codes M utilisés par HAAS.

ABDELHAK KHETTAB / OFPPT Page 33


ABDELHAK KHETTAB / OFPPT Page 34
Application:

ABDELHAK KHETTAB / OFPPT Page 35


ABDELHAK KHETTAB / OFPPT Page 36
O0002 ;
G90 G17 G21 G40G54 G80G49;
T1 M6 (fraise à surfacer Ø40);
S1000 M3;
G0 X17 Y-23;
G43 H1 Z5;
G1Z0 F100 M8;
Y71;
G0 X31 ;
G1 Y-23 ;
G0 Z2 ;
T2 M6 (fraise 2TØ16);
S1500 M3;

G43 H2Z50;
Z5;
G1Z-5 F150 M8;
G41D2 X0Y0;
Y40;
G2 X8 Y48 R8(R8 =I8J0 );
G1 X38 ;
G3 X48 Y38 R10 (R10 =I10 J0);
G1 Y10;
X38 Y0;
X-11 ;
G40Y-11 ;
G0 Z50 ;
T3 M6 (Foret Ø6);
S2000 M3;
G0 X14 Y8;
G43 H3 Z2;
ABDELHAK KHETTAB / OFPPT Page 37
G1 Z-7 F200 M8 ;
G0 Z2 ;
X8 Y25;
G1 Z-7 ;
G0 Z2 ;
X40 Y25;
G1 Z-7 ;
G0 Z2 ;
X36 Y8;
G1 Z-7 ;
G0 Z50 ;
T4 M6 (fraise 2T Ø6) ;
X19 Y19;
G43 H4 Z2 ;
G1 Z-5 F200 M8 ;
G91 X12 ;
Y12;
X-12 ;
Y-12 ;
Y4;
X8 ;
Y4;
X-8 ;
G90 Z50 ;
G91 G28 Z0;
M5;
M9;
M30;

VI. Les sous-programmes

Pour simplifier la programmation, si un programme comporte une séquence


fréquemment répétée, elle peut Être mémorisée comme un sous-programme.
Un sous-programme est appelé à partir du programme principal.
Un sous- programme peut également appeler un autre sous-programme

M97 appel sous-programme local


M98 appel d’un sous-programme
M99 fin de sous-programme
M97 Appel sous-programme local
Ce code est utilisé pour appeler une sous-routine référencée par un numéro de ligne (N)
du même programme. Un code est nécessaire qui doit correspondre à un numéro de ligne
du même programme. Cela est utile pour les sous-routines d'un programme ; un
programme séparé n'est pas nécessaire. La sous-routine doit se terminer avec un M99. Un
code Lnndu bloc M97 répétera l'appel de la sous-routine nnfois.

ABDELHAK KHETTAB / OFPPT Page 38


NOTE: La sous-routine fait corps avec le programme principal et est placéeaprès le M30.

M97 Exemple :
%
O00001 ;
M97 P100 L4 (APPELLE LA SOUS-ROUTINE N100) ;
M30 ;
N100 (SOUS-ROUTINE) ;
M00 ;
M99 (REVIENT AU PROGRAMME PRINCIPAL) ;
%

M98 Appel de sous-programme

Ce code est utilisé pour appeler un sous-programme ; le format est M98 Pnnnn(Pnnnn
est le numéro du programme appelé). Le sous-programme doit être sur la liste des
programmes et doit contenir un M99 pour le retour au programme principal. Un compte Lnn
peut être placé sur la ligne contenant le M98 et fera que le sous-programme sera appelé
nnfois avant de passer au bloc suivant.
Lorsqu'un sous-programme M98 est appelé, le contrôle recherche le sous-programme sur
le lecteur actif, puis dans la mémoire si le sous-programme ne peut pas être localisé. Le
lecteur actif peut être la mémoire. le lecteur USB ou le disque dur. Une alarme se
déclenche si la commande ne trouve pas le sous-programme dans le lecteur actif ou
la mémoire.
NOTE: Le sous-programme est un programme séparé (O00100) du
programme principal (O00002).
%
O00002 ;
Codes M (Fonctions diverses)
354
M98 P100 L4 (APPELLE SOUS O00100 4 FOIS) ;
M30 ;
%%
O00100 (SOUS-PROGRAMME) ;
M00 ;
M99 (REVENIR AU PROGRAMME PRINCIPAL) ;
%

M99 Retour ou boucle de sous-programme

Ce code a trois utilisations principales :


• Un M99 est utilisé à la fin d'un sous-programme, sous-programme local ou macro,
pour revenir dans le programme principal.
• Un M99 Pnnva faire sauter le programme sur le Nnncorrespondant dans
le programme.
• Un M99 dans le programme principal fera revenir le programme en arrière jusqu'au
démarrage et exécutera jusqu'à ce que [RESET] soit appuyé.

VII. Fonction Correction d’outil

Le programme d’usinage est écrit en faisant abstraction des dimensions des outils.
Toutefois, la trajectoire réelle des organes mobiles de la MOCN doit impérativement

ABDELHAK KHETTAB / OFPPT Page 39


en tenir compte pour respecter la précision du profil fini. C’est pourquoi la CN se
charge de transformeren permanence la trajectoire programmée en une trajectoire
parallèle ou translatée d’une valeur correspondant aux dimensions de l’outil.

10.7.1. Fonctionsde compensationde rayon

G41 G42 G40


L’outil utilisé peut-être décalé par rapport à la pièce de la valeur de son rayon. Cette
fonction est appelée compensation de rayon de fraise.

G40 Annulation de toutes les compensations (modale)


G41 Décalage de l’outil à gauche de la trajectoire (modale)
G42 Décalage de l’outil à droite de la trajectoire (modale)
Les valeurs de compensation de rayon sont mémorisées dans la mémoire des
correcteurs. Chaque correcteur a un numéro. Le numéro du correcteur est spécifié
par l'adresse D (code D) suivie de 1 à 3 chiffres.

ABDELHAK KHETTAB / OFPPT Page 40


ABDELHAK KHETTAB / OFPPT Page 41
10.7.2. CORRECTIONDELA LONGUEUR
D’OUTIL

G43 G44 G49


Les codes G43 et G44 sont utilisés pour indiquer le sens de la Compensation et le code H
spécifie le numéro du correcteur à utiliser
G43 ajoutelavaleur du correcteur H àlacoordonnéedupointà atteindre
G44 retranchelavaleurdu correcteur H àla coordonnéedupointà atteindre
G49 annulelacorrectionde longueurd’outil.
Exemple :
G43H1

ABDELHAK KHETTAB / OFPPT Page 42


10.7.3. JAUGES OUTILS
Pour définir les jauges d’un outil de fraisage, Il faut lui attribuer une jauge H qui est
sa longueur sur Z, et une jauge D qui est son rayon sur X et Y.

ABDELHAK KHETTAB / OFPPT Page 43


Définition des jauges :

Les jauges sont mesurées Statiquement sur un banc de préréglage ou effectuées


sur la machine.
La mesure du rayon de fraise peut s’effectuer à l’extérieur de la machine, ce qui
n’inclus pas un faux rond éventuel du au montage de l’outil dans le porte outil ou à
un affûtage défectueux.
La mesure de longueur doit toujours tenir compte de l’affûtage de la fraise, il faut
prendre la dent la plus longue.

Définition des jauges particulières:


Pour certains outils, il convient d’attribuer plusieurs jauges suivant le type de
travail.

10.7.4. Corrections dynamiques d’outils

L’opérateur a la possibilité à tout moment (y compris en cours d’usinage)


d’introduire des corrections dynamiques d’outils lorsqu’il constate sur une pièce
un écart entre les cotes programmées et les cotes réellement obtenues. Ces

ABDELHAK KHETTAB / OFPPT Page 44


corrections, positives ou négatives, ont pour objet de compenser de légères
variations de dimensions de l’outil ou de la pièce (usure, dilatation, etc.).
Applicables sur les longueurs ou sur les diamètres, elles modifient dans la CN les
valeurs initialement introduites dans les tables de dimensions d’outil.

Correction sur hauteur

ABDELHAK KHETTAB / OFPPT Page 45


Correction sur épaulements

ABDELHAK KHETTAB / OFPPT Page 46


Correction sur rainure ou poche

ABDELHAK KHETTAB / OFPPT Page 47


Correction surtenon ou contour

ABDELHAK KHETTAB / OFPPT Page 48


VIII. Fraisage circulaire des poches CW (sens
horaire) G12 / fraisage circulaire des
poches CCW (sens anti-horaire) G13

Ces deux codes G sont utilisés au fraisage des formes circulaires. Elles sont différentes
seulement en ce qui concerne la direction de rotation utilisée. Les deux codes G emploient
le plan circulaire XY prédéfinit (G17) et impliquent l'utilisation du G42 (compensation de
fraise) pour G12 et G41 pour G13. Ces deux codes G sont non-modaux.
*D Sélection de rayon ou diamètre d'outil
F - Vitesse d'avance
I - Rayon du premier cercle (ou du cercle fini s'il n'y a pas de K). I - La valeur I doit être
supérieure au rayon de l'outil, mais inférieure à la valeur K.
K - Rayon du cercle fini (si spécifié)
L - Compte de boucle pour répéter des coupes plus profondes
Q - Incrément du rayon ou sauter (doit s'utiliser avec K)
Z - Profondeur de la coupe ou incrément
*Pour obtenir le diamètre du cercle programmé, le système de commande utilise la
dimension d'outil du code D sélectionné. Pour programmer l'axe d'outil, sélectionner D0

Spécifier D00 si aucune compensation de fraise n'est voulue. Si aucun


D n'est spécifié dans le bloc G12/G13, on utilisera la dernière valeur D
commandée, même si elle a été annulée antérieurement avec un G40.
L'outil sera positionné au centre du cercle en utilisant X et Y. Pour enlever toute la matière
dans le cercle, utiliser des valeurs I et Q inférieures au diamètre de l'outil et une valeur K
égale au rayon du cercle. Pour n'usiner que le rayon du cercle, utiliser une valeur I réglée
sur le rayon et aucune valeur K ou Q.

ABDELHAK KHETTAB / OFPPT Page 49


O00098 (G12 ET G13) ;
(CORRECTION D01 RÉGLÉE SUR APPROX. TAILLE OUTIL) ;
(TOOL MUST BE MORE THAN Q IN DIAM.) ;
T1M06 ;
G54G00G90X0Y0(Déplacer vers le centre de G54)
G43Z0.1H01 ;
S2000M03 ;
G12I1.5F10.Z-1.2D01(Finition de la poche en sens
horaire) ;
G00Z0.1 ;
G55X0Y0(Déplacer vers le centre de G55) ;
G12I0.3K1.5Q0.3F10.Z-1.2D01(Dégrossissage et finition
en sens horaire) ;
G00Z0.1 ;
G56X0Y0(Déplacer vers le centre de G56) ;
G13I1.5F10.Z-1.2D01(Finition de la poche en sens
anti-horaire) ;
G00Z0.1 ;
G57X0Y0(Déplacer vers le centre de G57) ;
G13I0.3K1.5Q0.3F10.Z-1.2D01(Dégrossissage et finition
en sens anti-horaire) ;
G00Z0.1 ;
G28 ;
M30 ;
Fraisage circulaire en poche (G12-Sens horaire illustré) [1] I seulement, [2] I, K
et Q seulement.
Ces codes G supposent l'utilisation de la compensation de fraise, par conséquent un G41
ou un G42 ne sont pas nécessaires sur la ligne du programme. Toutefois, un numéro de
correction D est nécessaire, pour le rayon ou diamètre de fraise, afin d'ajuster le diamètre
du cercle.
Les exemples de programmation suivants illustrent le format G12 et G13, ainsi que les
différentes façons d'écrire ces programmes.
Passe unique : Utiliser uniquement I .
Applications : Contre-alésage en une passe ; dégrossissage et finition de petits trous,
usinage sur I.D. (diam. int.) des gorges de joints toriques.

Passe multiple : Utiliser I, K et Q.


Applications : Contre-alésage en passes multiples ; dégrossissage et finition des grands
trous avec chevauchement de fraise.
Passe multiple en profondeur sur Z : En n'utilisant que I , ou I, K, et Q (G91 et L peuvent
aussi être utilisés).
Applications : Dégrossissage profond et finition des poches.
Les figures précédentes montrent la trajectoire de l'outil pendant les codes G de fraisage
en poches.
Exemple G13 multiple passes utilisant I, K, Q, L, et G91:
Ce programme utilise G91 et un compte L de 4, ce cycle se répètera donc quatre fois.
L'incrément de profondeur sur Z est 0.500. Il faut le multiplier par le compte L, ce qui
donne

ABDELHAK KHETTAB / OFPPT Page 50


une profondeur totale de trou de 2.000.
G91 et le compte L peuvent être également utilisés sur une ligne I uniquement deG13

Si la colonne géométrie de l'affichage des corrections de la


commande contient une valeur, G12/G13 lira les données, qu'un D0
soit présent ou non. Pour annuler la compensation de fraise, insérer
un D00 sur la ligne du programme ; cela négligera la valeur de la
colonne géométrie des corrections.

Exemple de programme
O4000(0.500 entré dans la colonne de correction
Rayon/Diamètre) ;
T1 M06 (l'outil #1 est une fraise en bout de diamètre
0.500 pouce) ;
G00 G90 G54 X0 Y0 S4000 M03 ;
G43 H01 Z.1 M08 ;
G01 Z0 F30. ;
G13 G91 Z-.5 I.400 K2.0 Q.400 L4 D01 F20. ;
G00 G90 Z1.0 M09 ;
G28 G91 Y0 Z0 ;
M30 ;

ABDELHAK KHETTAB / OFPPT Page 51


IX. Les cycles fixes :

Les cycles fixes sont utilisés pour simplifier la programmation. Is sont utilisés
pour des opérations qui se répètent, telles que le perçage, le taraudage et l'alésage. Le
cycle pré-programmé est exécuté chaque fois qu'un mouvement sur l'axe X et/ou Y
est programmé.

G70, G71, G72, G73, G74, G76, G77, G81,


G82, G83, G84, G85, G86, G87, G88, G89
Format général:
G _ X _ Y _ Z _ R _ Q _ P _ F _L _
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
L Nombre total de perçages

Remarque:
Dépendant du cycle sélectionné, seuls les mots nécessaires sont déclarés

G70 Cercle de trous de boulons (Groupe 00)

I - Rayon (+SAH / -SH)


J - Angle de départ (0 à 360.0 degrés SAH à partir de l'horizontale ; ou la position 3
heures)
L - Nombre de trous uniformément espacés autour du cercle

Ce code G non-modal doit s'utiliser avec l'un des cycles pré-programmés G73, G74,
G76, G77, ou G81-G89. Un cycle pré-programmé doit être actif de manière que, sur
chaque position, on réalise une fonction de perçage ou de taraudage. Voir également la
section des cycles préprogrammés des codes G.

ABDELHAK KHETTAB / OFPPT Page 52


Exemple de programme :
%
O01974 (G70 Exemple) ;
M06 T1 ;
M03 S1500 ;
G54 G00 G90 X0. Y0. ;
G43 H01 Z2 ;
G81 G98 Z-25. R2 F300. L0 (L0 sur G81 ne perce pas un trou au centre du cercle de
trous de boulons) ;
G70 I52. J40. L9 (Perce 9 trous faisant un angle de 40 degrés entre 2 trous consécutifs
sur un diamètre de 104 mm le premier trou sur l’axe X).
G80 G00 Z1. ;
M05 ;
M30 ;
%

G71 Arc de trous de boulons (Groupe 00)

I - Rayon (+SAH / -SH)


J - Angle de départ (degrés SAH à partir de l'horizontale)
K - Espacement angulaire des trous (+ or -)
L - Nombre de trous
Ce code G non-modal est similaire à G70 sauf qu'il n'est pas limité à un cercle complet. G71

ABDELHAK KHETTAB / OFPPT Page 53


appartient au Groupe 00 et il est donc non-modal. Un cycle pré-programmé doit être actif
de manière que, sur chaque position, une fonction de perçage ou de taraudage
est effectuée.

Exemple de programme :
%
O01975 (G71 Exemple) ;
M06 T1 ;
M03 S1500 ;
G54 G00 G90 X0. Y0. ;
G43 H01 Z2 ;
G81 G98 Z-25. R2 F300. L0 (L0 sur G81 ne perce pas un trou au centre du cercle de
trous de boulons) ;
G71 I52. J30.K40. L9 (Perce 9 trous faisant un angle de 40 degrés entre 2 trous
consécutifs sur un diamètre de 104mm, le 1er trou fait un angle de 30 degrés avec X)
G80 G00 Z1. ;
M05 ;
M30 ;
%

ABDELHAK KHETTAB / OFPPT Page 54


G72 Trous de boulons suivant un angle (Groupe 00)

I - Distance entre trous (+SAH/ -SH)


J - Angle de la ligne (degrés SAH à partir de l'horizontale)
L - Nombre de trous
Ce code G non-modal percera un nombre L de trous sur une ligne droite à l'angle spécifié.
Il fonctionne de manière similaire à G70. Pour qu'un G72 agisse correctement, un cycle
pré-programmé doit être actif de manière que, sur chaque position, une fonction de
perçage ou de taraudage soit exécutée.
F6.18: G70, G71, and G72 Trous de boulons : [I] Rayon du cercle de boulons (G70,
G71), ou distance entre les trous (G72), [J] Angle de départ à partir de la
position 3 heures, [K] Espacement angulaire entre trous, [L] Nombre de trous.
Règles pour les cycles pré-programmés à modèles de trous de boulons :
1. L'outil doit être placé au centre du modèle de trous de boulon avant l'exécution du
cycle pré-programmé.
2. Le code J est une position de démarrage angulaire et est toujours entre 0 et 360
degrés en sens anti-horaire par rapport à la position 3 heures.
3. Le placement d'un L0 sur la ligne initiale d'un cycle pré-programmé avant un L0
utilisé avec un cycle de modèle de trous de boulons, sautera la position initiale XY (il
n'y a pas de perçage sur cette position). La désactivation du réglage 28 (Cycle
préprogrammé agissant sans X/Y) est une autre méthode de ne pas percer un trou
sur la position initiale XY.

ABDELHAK KHETTAB / OFPPT Page 55


Exemple de programme :
%
O01976 (G72 Exemple) ;
M06 T1 ;
M03 S1500 ;
G54 G00 G90 X0. Y0. ;
G43 H01 Z2 ;
G81 G98 Z-25. R2 F300. L0 (L0 sur G81 ne perce pas un trou au centre du cercle de
trous de boulons) ;
G72 I52. J40. L7 (Perce 7 trous espacés de 52mm et faisant un angle de 40 degrés avec
l’axe X).
G80 G00 Z1. ;
M05 ;
M30 ;
%

G73 Cycle de perçage à dégagement multiple à grande vitesse.

F - Vitesse d'avance
I - Profondeur du premier perçage avant dégagement
J - Valeur de réduction de profondeur de perçage à chaque passe
K - Profondeur de perçage minimale (le contrôle calcule le nombre de perçage)
L - Nombre de répétitions (Nombre de trous à percer) si l'on utilise G91 (Mode incrémentiel)
P - Pause au fond du trou (en secondes)
Q - Profondeur de perçage (à chaque dégagement), toujours incrémentiel
R - Position du plan R (Distance au-dessus de la surface de pièce)
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou

G73 Perçage à dégagement multiple. Gauche Utilisation des adresses I, J, et


K. Droite Utilisation de la seule adresse Q. [#22] Réglage 22.

ABDELHAK KHETTAB / OFPPT Page 56


G74 Cycle de taraudage à gauche

F - Vitesse d'avance Utiliser la formule décrite dans l'introduction du cycle pré-programmé


pour calculer la vitesse d'avance et la vitesse de broche.
J - Multiple retrait (Rapidité de retrait - voir Réglage 130)
L - Nombre de répétitions (Nombre de trous à tarauder) si l'on utilise G91 (Mode
incrémentiel)
R - Position du plan R (position au-dessus de la pièce) où commence le taraudage
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou

G76 Cycle d'alésage fin

F - Vitesse d'avance
I - La valeur de déplacement sur l'axe X avant le retrait, si Q n'est pas spécifié
J - La valeur de déplacement sur l'axe Y avant le retrait, si Q n'est pas spécifié
L - Nombre de trous à percer si l'on utilise G91 (Mode incrémentiel)
P - Temps de pause au fond du trou
Q - Valeur du décalage, toujours incrémentielle
R - Position du plan R (position en dessus de la pièce)
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou

ABDELHAK KHETTAB / OFPPT Page 57


G77 Cycle d'alésage arrière

F - Vitesse d'avance
I - La valeur de déplacement sur l'axe X avant le retrait, si Q n'est pas spécifié
J - La valeur de déplacement sur l'axe Y avant le retrait, si Q n'est pas spécifié
L - Nombre de trous à percer si l'on utilise G91 (Mode incrémentiel)
Q - Valeur du décalage, toujours incrémentielle
R - Position du plan R (position en dessus de la pièce)
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou
En plus de l'alésage du trou, ce cycle déplacera l'axe X et/ou Y avant et après la coupe
pour dégager l'outil pendant l'entrée et la sortie de la pièce (voir G76 pour un exemple du
mouvement de déplacement). Le Réglage 27 détermine la direction de déplacement. Si Q
n'est pas spécifié, les valeurs optionnelles I et J sont utilisées pour déterminer la direction
et la distance du décalage.

G80 Annulation cycle pré-programmé

Ce code G désactivera tous les cycles pré-programmés jusqu'à ce qu'un autre soit

ABDELHAK KHETTAB / OFPPT Page 58


sélectionné.
NOTE: L'utilisation de G00 ou de G01 annulera également un
cycle pré-programmé.

G81 Cycle pré-programmé perçage

F - Vitesse d'avance
L - Nombre de trous à percer si l'on utilise G91 (Mode incrémentiel)
R - Position du plan R (position en dessus de la pièce)
X - Commande de déplacement d'axe X
Y - Commande de déplacement d'axe Y
Z - Position d'axe Z au fond du trou

G82 Cycle pré-programmé perçage avant-trou

F - Vitesse d'avance
L - Nombre de trous si l'on utilise G91 (Mode incrémentiel)
P - Temps de retard au fond du trou
R - Position du plan R (position en dessus de la pièce)
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position au fond du trou

ABDELHAK KHETTAB / OFPPT Page 59


G98Retour au point initial (cycles de perçage) (modal)
G99Retour au point de dégagement (cycle de perçage) (modal)

ABDELHAK KHETTAB / OFPPT Page 60


G83 Cycle de perçage à dégagement multiple normal

ABDELHAK KHETTAB / OFPPT Page 61


F - Vitesse d'avance
I - Profondeur de perçage jusqu'au premier dégagement
J - Valeur de réduction de profondeur de perçage à chaque passe
K - Profondeur minimale de perçage
L - Nombre de trous si G91 (Mode incrément) est utilisé, également G81 à G89.
P - Pause à la fin du dernier perçage (en dégagement multiple), en secondes
Q - Profondeur de perçage (à chaque dégagement), toujours incrémentiel
R - Position du plan R (position en dessus de la pièce)
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou
Si I, J, et K sont spécifiés, la valeur de la première passe sera I, chaque passe suivante
sera réduite de J et la passe minimale sera K. Ne pas utiliser une valeur Q lors de la
programmation avec I, J, et K.
Si l'on a spécifié P, l'outil pausera au fond du trou pendant le temps choisi. L'exemple
suivant consiste à percer (dégagement multiple) plusieurs fois et pauser pendant 1.5
secondes :

G84 Cycle de taraudage à droite

F - Vitesse d'avance
J - Retrait multiple (Exemple : J2 se retirera deux fois plus vite que la vitesse de coupe,
voir aussi Réglage 130)
L - Nombre de trous si l'on utilise G91 (Mode incrémentiel)
R - Position du plan R (position en dessus de la pièce)
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou
S - Vitesse de broche optionnelle
NOTE: Il n'est pas nécessaire de commande un démarrage de broche (M03 /

ABDELHAK KHETTAB / OFPPT Page 62


M04) avant G84. Le cycle pré-programmé démarre et arrête la broche
si nécessaire.

G85 Cycle pré-programmé alésage

F - Vitesse d'avance
L - Nombre de trous si l'on utilise G91 (Mode incrémentiel)
R - Position du plan R (position en dessus de la pièce)
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou

G86 Cycle pré-programmé alésage et arrêt

F - Vitesse d'avance
L - Nombre de trous si l'on utilise G91 (Mode incrémentiel)
R - Position du plan R (position en dessus de la pièce)
X - Position du trou sur axe X

ABDELHAK KHETTAB / OFPPT Page 63


Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou
Le code G arrêtera la broche lorsque l'outil atteindra le fond du trou. L'outil sera rétracté
une fois la broche arrêtée

G87 Cycle pré-programmé d'alésage et retrait manuels

F - Vitesse d'avance
L - Nombre de trous si l'on utilise G91 (Mode incrémentiel)
R - Position du plan R (position en dessus de la pièce)
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou
Le code G arrêtera la broche lorsque l'outil au fond du trou. A ce point l'outil est
progressivement avancé manuellement hors du trou. Le programme continue lorsqu'on
appuie sur [CYCLE START].

ABDELHAK KHETTAB / OFPPT Page 64


G88 Cycle pré-programmé alésage, retard, retrait manuel
(Groupe 09)
F - Vitesse d'avance
L - Nombre de trous si l'on utilise G91 (Mode incrémentiel)
P - Temps de pause au fond du trou
R - Position du plan R (position en dessus de la pièce)
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou
Ce code G arrête l'outil au fond du trou et pausera, avec l'outil en rotation, pendant
la durée
désignée par la valeur P. A ce point l'outil est progressivement avancé
manuellement hors
du trou. Le programme continuera lorsqu'on appuie sur [CYCLE START]

G89 Cycle pré-programmé alésage, retard, alésage (Groupe


09)
F - Vitesse d'avance
L - Nombre de trous si l'on utilise G91 (Mode incrémentiel)
P - Temps de pause au fond du trou
R - Position du plan R (position en dessus de la pièce)
X - Position du trou sur axe X
Y - Position du trou sur axe Y
Z - Position d'axe Z au fond du trou

ABDELHAK KHETTAB / OFPPT Page 65


ABDELHAK KHETTAB / OFPPT Page 66
ABDELHAK KHETTAB / OFPPT Page 67
ABDELHAK KHETTAB / OFPPT Page 68
Applications

ABDELHAK KHETTAB / OFPPT Page 69


O0003; G43H3Z5M8;
G90G80G54 G49G40G21G17; G83G98Z-22Q3R3;
T1M6(fraise à surfacer Ø40) ; M98P0042;
S1000 M3; G0X38Y5;
G0X-22Y15; G83G99Z-22Q3R-8;
G43H1Z5; M98P0043;
G1 Z0 F100 G28G91Z0;
M8; G28X0Y0;
X90; M30;
G0Z3;
X50Y-22;
G1 Z0;
M98P0041L5;
G0Z30;
T2M6(Foret à centrer);
S1500F150M3;
G0X10Y10;
G43H2Z5M8;
G81G98Z-1.5 R2;
M98P0042;
G0X38Y5;
G81G99Z-11.5R-8;
M98P0043;
G0Z30;
T3M6(ForetØ5);
S2000F200M3;
G0X10Y10;
ABDELHAK KHETTAB / OFPPT Page 70
O0043; O0042; O0041;
X48 Y15; Y20; G91 G1 Z-1;
X58 Y25; X20; G90 Y52;
G80; Y10; G91 Z-1;
M99; G80; G90 Y-22;
M99; M99;

X. Les codes G soutenus par HAAS

ABDELHAK KHETTAB / OFPPT Page 71


ABDELHAK KHETTAB / OFPPT Page 72
ABDELHAK KHETTAB / OFPPT Page 73
ABDELHAK KHETTAB / OFPPT Page 74