Vous êtes sur la page 1sur 89

UNIVERSITE DE TUNIS I

INSTITUT SUPERIEUR DE L'EDUCATION ET DE LA FORMATION CONTINUE


Département des Sciences Physiques et Techniques

FABRICATION ASSISTÉE PAR ORDINATEUR

Notes de Cours

BEN YOUNES Jalel

UV : GM 213-1
(Version : Septembre 2004)

Ces notes comprennent les chapitres suivants :


I - Introduction
II - Contrôle Numérique des Machines Outils
III - Fonctions d'un Système de FAO
IV - Intégration des Systèmes CAO / FAO / MOCN
V - Introduction à la Gamme Automatique
VI - Programmation des MOCN
VII - Travaux Dirigés
Table des Matières

I. GÉNÉRALITÉ SUR LA CFAO .......................................................................................................... I-2


I.1 INTRODUCTION .............................................................................................................................I-2
I.2 NÉCESSITÉ DE L'AUTOMATISATION............................................................................................I-4
I.2.1 FLEXIBILITÉ DES MACHINES DE PRODUCTION ...............................................................................I-4
I.2.2 DÉCLOISONNEMENT DE L'ENTREPRISE ..........................................................................................I-4
I.3 HISTORIQUE DE LA CFAO...........................................................................................................I-5
I.3.1 EVOLUTION DE LA CAO ................................................................................................................I-5
I.3.2 EVOLUTION DES MACHINES OUTILS À COMMANDE NUMÉRIQUE .................................................I-6
I.3.3 EVOLUTION DE LA FAO.................................................................................................................I-6

II. PROGRAMMATION DES MOCN................................................................................................... II-9


II.1 INTRODUCTION ........................................................................................................................... II-9
II.2 MÉTHODES DE PROGRAMMATION DES MOCN ....................................................................... II-9
II.2.1 PROGRAMMATION MANUELLE ............................................................................................... II-9
II.2.2 PROGRAMMATION ASSISTÉE ................................................................................................... II-9
II.2.3 PROGRAMMATION AUTOMATIQUE ....................................................................................... II-10

III. PROGRAMMATION CN ASSISTÉE PAR ORDINATEUR ...................................................... III-13


III.1 INTRODUCTION ....................................................................................................................... III-13
III.2 LE SYSTÈME APT................................................................................................................... III-13
III.2.1 LE PROCESSEUR APT ........................................................................................................... III-13
III.2.2 LE POSTPROCESSEUR APT ................................................................................................... III-14
III.3 ELÉMENTS DU LANGAGE APT .............................................................................................. III-14
III.3.1 PONCTUATION ...................................................................................................................... III-15
III.3.2 MOTS DU LANGAGE APT ..................................................................................................... III-15
III.3.3 NOMBRES ............................................................................................................................. III-16
III.3.4 SYMBOLES............................................................................................................................ III-16
III.3.5 ETIQUETTES (LABEL) ........................................................................................................... III-16
III.4 INSTRUCTIONS D’UN PROGRAMME APT............................................................................... III-17
III.4.1 INTRODUCTION..................................................................................................................... III-17
III.4.2 STRUCTURE D’UN PROGRAMME APT................................................................................... III-17
III.5 DÉFINITION DE LA GÉOMÉTRIE ............................................................................................. III-17
III.5.1 DÉFINITION DE POINTS ......................................................................................................... III-18
III.5.2 DÉFINITION DES LIGNES ....................................................................................................... III-19
III.5.3 DÉFINITION DES CERCLES .................................................................................................... III-21
III.5.4 DÉFINITION DES ELLIPSES .................................................................................................... III-24
III.5.5 DÉFINITION DES VECTEURS .................................................................................................. III-24
III.5.6 DÉFINITION DES PLANS ........................................................................................................ III-25
III.6 COMMANDE DE DÉFINITION DE L'OUTIL .............................................................................. III-26
III.7 DÉFINITION DES DÉPLACEMENTS .......................................................................................... III-28
III.7.1 MOUVEMENT DU TYPE POINT À POINT ................................................................................. III-28
III.7.2 MOUVEMENT DU TYPE CONTOURNAGE ............................................................................... III-29
III.8 COMMANDE DU POSTPROCESSEUR ........................................................................................III-34
III.8.1 INITIALISATION ET TERMINAISON ........................................................................................ III-35
III.8.2 COMMANDE DE DÉFINITION DES CONDITIONS TECHNOLOGIQUES ....................................... III-35
III.8.3 COMMANDE DE DÉFINITION DES CYCLES ............................................................................. III-36
III.8.4 INSTRUCTIONS DIVERSES DU POSTPROCESSEUR .................................................................. III-36
III.9 LE CALCUL DANS APT ............................................................................................................III-37
III.10 LES BOUCLES ET LES MACROS ...............................................................................................III-38
III.10.1 LES BOUCLES ....................................................................................................................... III-38
III.10.2 LES MACROS ........................................................................................................................ III-39
III.11 EXEMPLE .................................................................................................................................III-40
III.12 TABLEAUX RÉCAPITULATIFS DES MOTS CLEFS DU LANGAGE APT .....................................III-42

IV. FONCTIONS D'UN SYSTÈME DE FAO ..................................................................................... IV-46


IV.1 INTRODUCTION........................................................................................................................IV-46
IV.2 RÔLE DE LA FAO ....................................................................................................................IV-46
IV.3 SYSTÈMES FAO .......................................................................................................................IV-47
IV.3.1 PRÉPROCESSEUR .................................................................................................................. IV-47
IV.3.2 PROCESSEUR ........................................................................................................................ IV-48
IV.3.3 POSTPROCESSEUR ................................................................................................................ IV-52

V. INTRODUCTION À LA GAMME AUTOMATIQUE ..................................................................V-54


V.1 GAMME DE FABRICATION ....................................................................................................... V-54
V.2 AUTOMATISATION DE LA GAMME DE FABRICATION............................................................. V-55
V.2.1 APPROCHE GÉNÉRATIVE ....................................................................................................... V-56
V.2.2 ARBRE DE DÉCISION ............................................................................................................. V-57
V.2.3 APPROCHE PAR VARIANTE.................................................................................................... V-59
V.2.4 TECHNOLOGIE DE GROUPE .................................................................................................... V-60
V.3 INTÉGRATION DE LA GAMME ASSISTÉE DANS UN SYSTÈME DE FAO .................................. V-63
V.3.1 INTRODUCTION ..................................................................................................................... V-63
V.3.2 RÔLE DE LA CAO DANS L'INTÉGRATION .............................................................................. V-64

VI. TRAVAUX DIRIGÉS ...................................................................................................................... VI-67

VII. ANNEXE ..........................................................................................................................................VII-79

VIII. RÉFÉRENCES BIBLIOGRAPHIQUES ......................................................................... VIII-85


Liste des Figures

Figure I-1 :Evolution des systèmes de CFAO [Saxena 1994]..........................................................................I-5


Figure I-2 : Historique de la CAO-FAO-MOCN .............................................................................................I-7
Figure III-3 : Structure du système APT ..................................................................................................... III-14
Figure III-4 : Surfaces de contrôle du mouvement d'outil........................................................................... III-29
Figure III-5 : Effet des modificateurs sur la commande GO ....................................................................... III-30
Figure III-6 : Illustration des relations Outil-Surface en contournage ........................................................ III-33
Figure III-7 : Exemple de programme APT ................................................................................................ III-41
Figure IV-1 : Champs d'application de la CFAO dans les industries manufacturières [Kochan 85] .........IV-46
Figure IV-2 : Fonction FAO........................................................................................................................IV-47
Figure IV-3 : Préprocesseur.........................................................................................................................IV-48
Figure IV-4 : Processeur..............................................................................................................................IV-49
Figure IV-5 : Génération automatique des trajectoires d'outil.....................................................................IV-50
Figure IV-6 : Vérification dynamique des trajectoires en 3D [Computervision Corp.] ..............................IV-51
Figure IV-7 : Simulation en temps réel avec rendu réaliste ........................................................................IV-51
Figure IV-8 : Postprocesseur .......................................................................................................................IV-52
Figure V-1 : Fonctions de la gamme de fabrication ..................................................................................... V-54
Figure V-2 : Arbre de décision ..................................................................................................................... V-57
Figure V-3 : Table de décision pour le choix des machines en tournage ..................................................... V-58
Figure V-4 : Quelques systèmes de génération assistée de gamme de fabrication....................................... V-59
Figure V-5 : Phase préparatoire.................................................................................................................... V-60
Figure V-6 : Phase productive ...................................................................................................................... V-60
Figure V-7 : Point de vue Conception - Point de vue Fabrication......................................................... V-61
Figure V-8 : Système OPITZ pour les pièces de révolution......................................................................... V-62
Figure V-9 : Système CODE ........................................................................................................................ V-63
Figure V-10 : Etapes de la génération des gammes de fabrication............................................................... V-64
Figure V-11 : Exemples d'Entités................................................................................................................. V-65
INTRODUCTION

I-1
I. GÉNÉRALITÉ SUR LA CFAO

I.1 Introduction
Longtemps, les techniques liées à l'informatique sont restées du domaine du spécialiste.
Ces dernières années, au contraire, nous assistons à une véritable "démocratisation", non pas
simplement d'un nouvel outil qui se contente d'accroître la productivité ou de nous libérer de
certaines tâches ingrates, mais d'une technique nouvelle et porteuse d'avenir, qui bien
souvent remet en cause nos méthodes de travail et demande l'acquisition de nouvelles
compétences. La conception et la fabrication assistée par ordinateur (CFAO) ne sont plus
cantonnées dans les grandes entreprises et les laboratoires de recherche, mais entrent
désormais dans le monde des PME, plus que tout autres soumises aux dures lois du marché.
La CFAO n'est pas une juxtaposition d'aides informatiques, mais un nouveau mode
d'organisation de la production. Le rapprochement des termes conception et fabrication a le
mérite de souligner que la CFAO constitue, selon l'un de ses pionniers, Daniel Vernet,
collaborateur de Pierre Bézier, "un amplificateur intellectuel", non seulement pour
l'opérateur individuel, ingénieur ou projeteur, mais aussi pour l'entreprise dans son
ensemble. En cela, la CFAO est instrument de compétitivité.
Face à la concurrence internationale et l'accélération du progrès technique, les entreprises
doivent continuellement améliorer leur productivité et plus encore la qualité de leurs
produits. Les techniques de conception et de fabrication assistées par ordinateur deviennent
indispensable dès lors que délais d'étude et de fabrication diminuent, que les formes des
objets sont complexes ou doivent être optimisées pour augmenter leur performances et
diminuer leur coût. Cela peut tout simplement être une question de survie pour des
entreprises sous-traitantes dont les donneurs d'ordre utilisent la CFAO (aéronautique,
armement ou automobile) et qui ne transmettent leur informations que sous forme
numérique.
Certes, l'informatisation de la phase conception d'un ensemble mécanique n'est pas
simple. L'étude cinématique et le choix des liaisons d'un mécanisme reposent sur une
démarche empirique, car les solutions équivalentes sont multiples. La conception demande
la mise en œuvre de modèles géométriques volumiques devant permettre non seulement la
définition précise des formes de chaque objet, mais aussi la prise en compte de contrainte
géométriques et fonctionnelles entre les différentes pièces.
Les méthodes de calcul par éléments finis existent déjà depuis de nombreuses années et
autorisent l'étude du comportement des structures et l'optimisation des formes et des
matériaux.
Les pièces de formes complexe peuvent être conçues à l'aide de logiciels surfaciques et
servir de maître-modèle pour une étude esthétique, pour l'analyse de leur comportement
mécanique ou thermique, ainsi que pour leur fabrication.

I-2
Les logiciels de production de plans ne sont plus simplement des outils efficaces de tracé
mais permettent la création automatique de familles d'objets grâce aux techniques
d'apprentissage, la prise en compte de bases de données d'éléments standardisés et un
habillage intelligent de plan, notamment pour la cotation ou l'établissement de
nomenclatures.
La programmation des machines à commande numérique capable d'usiner des formes
gauches reste une des applications principales des techniques de CFAO en mécanique. Le
modèle géométrique de la pièce permet de générer automatiquement des trajectoires d'outils,
d'évaluer les défauts de forme et d'état de surface, de détecter les collisions éventuelles.
Beaucoup de développement restent à réaliser pour que l'informatique soit un outil
efficace aux différentes étapes de la vie industrielle d'un produit. La normalisation des
standards d'échange entre ordinateurs ainsi qu'entre logiciels; l'intégration des différentes
applications dans une base de données unique; l'adaptation des fonctionnalités des logiciels
aux différents corps de métiers sont les principales préoccupations des constructeurs de
matériels et de logiciels pour que la modernisation des outils de production se poursuive.
L'insuffisance actuelle de certains maillons de la chaîne des logiciels de CFAO ne doit pas
être un frein à l'équipement des entreprises. Il ne faut surtout pas attendre d'être dans
l'obligation de s'équiper pour appréhender les conséquences non seulement financière, mais
surtout humaines qu'entraînera l'introduction de la CFAO dans le bureau d'études ou le
bureau des méthodes. Le choix du système et la qualité de la formation des personnels seront
des éléments décisifs pour la réussite de ce virage stratégique de l'entreprise.
Pour le choix d'un système on peut suivre une démarche logique qui commence par cette
question : que peut-on attendre de la CFAO ? La réponse suppose une formation préalable
de la personne qui mènera le projet d'investissement et une analyse interne de l'entreprise où
seront décomposées les différentes tâches et les ressources qu'elle demandent. Cette
première approche doit permettre de sélectionner les applications dans lesquelles les
techniques de CFAO seront soit les plus facile à maîtriser, soit les plus rentables à court
terme. Elle ne doit cependant pas écarter certains secteurs de l'entreprise: il convient de
garder l'esprit que l'informatique est avant tout un outil de communication évolutifs. Une
commission de réflexion pourra être formée avec des représentants des différents secteurs
concernés et, si besoin, d'une personne extérieure ayant une solide expérience en CFAO.
Viendra ensuite une période de prospection auprès des constructeurs où seront appréhender,
non seulement les fonctionnalités de chaque système et leur prix, mais aussi les aspects
matériels, les conditions de maintenance et plus généralement la qualité du support après-
vente, les possibilités de développement d'applications spécifiques, les interfaces avec
d'autres systèmes informatiques et d'autres logiciels, la formation, et, peut être plus encore,
la clarté de la documentation.
Il est en général assez facile de sélectionner sur quelques critères fondamentaux les deux
ou trois produits répondant à priori le mieux aux applications principales envisagées. Il s'agit
ensuite de vérifier que la réalité correspond bien à l'attente en confiant au constructeur des
études significatives du travail effectué dans l'entreprise et cela sur des configuration de

I-3
matériels et de logiciels identique à celles qui seront éventuellement acquises. Souplesse,
convivialité du logiciel, temps de réalisation seront les principaux critères d'appréciation.
Avant le choix définitif, certains pièges sont à éviter : configuration matérielle
informatique insuffisante au vu des performances attendues et qui impose rapidement des
extensions onéreuses ou même parfois impossibles, manque d'ouverture du logiciel pour le
développement d'applications, possibilités de création alléchantes mais qui s'avèrent d'un
emploi très restrictif, conditions d'acquisition de nouveaux modules ou d'extension du
nombre de postes de travail, évolution très lente du logiciel au regard de la concurrence ou
même incertitude quant à la pérennité du fabricant. En tout état de cause, il ne faut pas
oublier qu'un logiciel de CFAO n'est pas figé : il doit répondre aux besoins de toute une
équipe de développement en continuelle progression et il doit mériter la confiance qui lui est
accordée.

I.2 Nécessité de l'Automatisation


L'objectif d'une entreprise manufacturière est d'augmenter son profit. Ceci ne peut se faire
que par une augmentation de la productivité, c'est à dire, réduire le coût de revient et le
temps de fabrication d'un produit.
Durant la première moitié de ce siècle, pour répondre à la forte demande du marché, les
entreprises manufacturières ont eu comme principale tâche l'augmentation de leur
production par l'utilisation de machines spéciales. Ces machines ont l'avantage d'être très
performantes sur des opérations spécifiques.
Durant la deuxième moitié de ce siècle, la demande du marché a changé de tendance. La
quantité d'un même produit consommé se trouvant réduite (produits plus variés) et la
complexité de ces produits est de plus en plus élevée.
Les objectifs visés par l'entreprise, dans les conditions actuelles du marché, ne peuvent
être assurés que si on prend en compte les aspects suivants :

I.2.1 Flexibilité des machines de production


La flexibilité est la rapidité avec laquelle une machine peut passer d'un produit à un autre.
Elle consiste à réduire les temps de préparation, de réglage et de lancement de la machine.
Ces actions ne peuvent se réaliser qu'avec une automatisation des machines.

I.2.2 Décloisonnement de l'entreprise


Décloisonner une entreprise, c'est enlever toutes les barrières existantes entre ses
différentes fonctions (étude, méthode, atelier, gestion...). Le décloisonnement a pour but de
rendre fluide le flux d'informations durant tout le cycle de vie d'un produit. Les systèmes
d'aide par ordinateurs y contribuent largement.

I-4
I.3 Historique de la CFAO
Le terme CFAO (Conception et Fabrication Assistées par Ordinateur) est utilisé dans le
langage d'ingénierie depuis le début des années soixante-dix. C'est un terme général qui
couvre tous les domaines où l'ordinateur peut être utilisé pour fournir une aide à la
conception, la réalisation et la vente des produits. Plus spécifiquement, la CFAO est
intimement liée à l'automatisation de tous ces processus.

I.3.1 Evolution de la CAO


La conception et la fabrication sont le cœur des activités contribuant à la réalisation des
produits qui peuvent être écoulés sur le marché et qui peuvent rapporter un profit.
De nombreux changements se sont produits ces trois dernières décennies dans le domaine
de la conception et de la fabrication. Il y a eu, tout d'abord, le développement de la CAO
(Conception Assistée par Ordinateur) ensuite la FAO (Fabrication Assistée par Ordinateur).
La figure suivante montre l'évolution des systèmes CFAO dans le domaine de la mécanique
dans les trois dernières décennies.

Figure I-1 :Evolution des systèmes de CFAO [Saxena 1994]


Les systèmes de CAO des années soixante supportent le dessin bidimensionnel (2D).
Ensuite, l'extension des systèmes 2D aux systèmes tridimensionnels (3D) a aboutit au
développement du modèle filaire. Cependant, ce modèle ne peut représenter des géométries
de niveau plus haut tels que les surfaces. Et ce n'est qu'au début des années soixante-dix que
les modèles surfaciques sont apparus. C'est une représentation de niveau plus élevé que le
filaire mais pas assez pour représenter les volumes ou les solides.
Le besoin des modèles solides a été ressenti avec l'évolution de la commande numérique
et de la méthode des éléments finis.

I-5
Au début des années soixante-dix la modélisation solide a commencé à se répandre.
Maintenant, les systèmes CFAO supportent l'ensemble des trois modèles (filaire, surfacique
et volumique) et intègrent plusieurs fonctionnalités (multi-utilisateur, gestion des accès,
gestion des versions...). Parmi les systèmes existants on peut citer CATIA (de Dassault
System), Euclid (de Matradatavision), Ideas (de SDRC), Proengineer (de Parametric
technology)...

I.3.2 Evolution des Machines Outils à Commande Numérique


Les premières machines-outils à commande numérique (MOCN) sont apparues dans les
années cinquante. Elles furent développées aux USA pour satisfaire le besoin de l'industrie
aéronautique. En effet, certaines pièces telles que les pales d'un hélicoptère ou d'un réacteur
nécessitent des mouvements complexes de l'outil par rapport à la pièce. Dans ce cas seul les
MOCN peuvent réaliser de telles pièces.
Initialement ces équipements disposaient d'organes de commande en logique câblée avec
l'introduction des données par rubans ou cartes perforées. Avec l'apparition des
microprocesseurs et le progrès de l'électronique à transistors, le coût de ces équipements
décroît depuis 1970 tout en offrant des capacités sans cesse plus importantes. La
transmission des données entre les CN des machines-outils et ordinateurs a elle aussi évolué
et elle est assurée par téléchargement directe dans un sens ou dans l'autre ou dans les deux
sens ("half duplex" et "full duplex"). Cette évolution qui assure le traitement temps réel, a
permis d'accroître les potentialités offertes par les MOCN et favorise leur intégration dans
l'ensemble d'un système de production automatisée.

I.3.3 Evolution de la FAO


La FAO peut être définie comme "l'application de l'ordinateur dans la fabrication". De ce
fait, l'introduction de la FAO dans les systèmes de production a été intimement liée au
développement de la CAO des CN des machines et surtout des ordinateurs.
Peu de temps après la deuxième guerre mondiale, avec l'augmentation de la demande sur
des produits de plus en plus complexes, les MOCN ont été inventé. La CN a remplacé
l'habilité des opérateurs pour contrôler la machine. Dans la deuxième moitié de ce siècle la
demande s'est transformée. Le besoin de produit varié sur une période courte a pris la place
de produit de grande quantité (fabrication de masse → fabrication de petite série).
Parallèlement, de nombreux développements ont eu lieu dans le domaine scientifique et
technologique. L'un des plus importants développements est l'invention des ordinateurs.
Dans le cas de la fabrication des produits discrets, les ordinateurs ont été essentiels pour le
développement de la CAO, de la FAO, de la CN, des robots et des systèmes flexibles.
Toutes ces technologies supportées par des ordinateurs ont permis de produire en petite série
à de faible coût de revient. Les ordinateurs ont permis d'apporter une aide à la décision et ont
pu ainsi accroître la productivité.
Dans les années 80, la concurrence internationale intense, a conduit à une réduction des
temps de fabrication et des inventaires au minimum. Dans une entreprise moderne, la

I-6
solution pour survivre est l'automatisation des systèmes de production tout en gardant leur
flexibilité. L'automatisation fournit une bonne qualité avec un faible coût, et la flexibilité est
nécessaire pour s'adapter au changement des produits et de la demande. La fonction étude
(CAO) et atelier (MOCN) ont été les précurseurs de l'automatisation dans les entreprises
manufacturières. La fonction méthode reste le maillon faible dans le cycle de vie d'un
produit. Dans ces conditions, la solution évidente est l'implication de la FAO dans la
production et l'intégration de l'ensemble de ses fonctions dans le cycle Conception-
Préparation-Fabrication.

Figure I-2 : Historique de la CAO-FAO-MOCN

I-7
METHODES DE PROGRAMMATION DES MACHINES
OUTILS A COMMANDE NUMERIQUE

I-8
II. Programmation des MOCN

II.1 Introduction
La fabrication d’une pièce sur une machine outil à commande numérique nécessite
l’écriture d’un programme appelé programme CN. Ce programme peut rédiger directement
par le programmeur (programmation manuelle). Il peut être, également, réaliser à l’aide de
l’ordinateur (programmation assistée et programmation automatique).

II.2 Méthodes de Programmation des MOCN

II.2.1 Programmation Manuelle


La première étape de la programmation consiste à déterminer et organiser, à partir de la
gamme d'usinage, les données nécessaires au programme CN. Ces données sont soit
technologiques soit géométriques. Les données technologiques concernent le choix de la
machine, des processus d'usinage, des outils et des conditions de coupe. Les données
géométriques sont plutôt liées au choix des paramètres définissant la trajectoire de l'outil
pour obtenir la forme désirée.
Le programmeur doit présenter de manière chronologique toutes les opérations
élémentaires. Ensuite, pour chaque séquence d'opérations il doit préciser les données
technologiques correspondantes (vitesse de coupe, arrosage...) ainsi que les coordonnées des
points caractéristiques de la trajectoire de l'outil. Une fois ce travail terminé, le programmeur
est en mesure de rédiger le programme CN.

II.2.2 Programmation Assistée


Certaines étapes de la programmation manuelle nécessitent un effort important pour
aboutir à la rédaction du programme CN. Une des étapes la plus délicate est le calcul des
points caractéristiques de la trajectoire des outils. En effet, pour des géométries de pièces où
figurent des formes telles que les raccordements, les arcs de cercle, voire même des surfaces
complexes, le calcul des points caractéristiques devient un travail fastidieux.
D'autre part, il est difficile de vérifier un programme CN et de trouver toutes les erreurs
de syntaxe ou de calcul. Cette tâche devient absurde quand le programme CN a une taille
importante. Dans ce cas il est inévitable de corriger le programme au pied de la machine.
Ceci va causer une immobilisation de la machine et une perte d'un temps précieux qui
pourrait être exploité pour la production. De plus, un atelier de fabrication peut être équipé
de plusieurs machines ayant des contrôleurs différents. Le programmeur doit, par
conséquent, maîtriser toutes les fonctions de chacune des MOCN.
Il est clair que l'aide de l'ordinateur peut apporter énormément en gain de temps de
préparation de la fabrication pour mieux exploiter la MOCN. De nombreux systèmes d'aide
à la programmation CN (programmation CN assistée par ordinateur) ont été développés.

II-9
Dans la majorité de ces systèmes un langage évolué (niveau sémantique élevé) plutôt que le
code G est utilisé pour indiquer à l'ordinateur comment la pièce va être usiner. Cette
implication de l'ordinateur dans l'aide à la programmation présente de nombreux avantages :
• Réduction du calcul manuel pour la détermination des points caractéristiques de la
trajectoire, ainsi de nombreuses erreurs sont éliminées.
• Un ensemble d'actions peut être programmé avec moins de commandes donc un
programme plus court et plus facile à gérer.
• Un langage évolué est certes plus facile à apprendre et à programmer. Ceci est
particulièrement important quand l'atelier est équipé de CN différentes parce que la
majorité des programmes sont portables d'une machine à une autre.

II.2.3 Programmation Automatique


Traditionnellement, le programme CN est créé en utilisant l'une des méthodes décrites ci-
dessus : programmation manuelle ou assistée. Les programmes CN simples sont souvent
créés manuellement, éventuellement, avec l'aide d'une calculatrice. Les programmes CN un
peu plus complexes sont généralement créés en utilisant un ordinateur et un langage d'aide à
la programmation CN tel que APT.
La méthode manuelle, quoique adéquate pour réaliser des pièces en mode PàP, oblige le
programmeur à faire les calculs nécessaires pour définir la trajectoire des outils et peut donc
être relativement lente. Et souvent, les erreurs de programmation ne peuvent être corrigées
que sur la machine-outil. Aussi la plupart des MOCN possèdent un langage de
programmation spécifique, ce qui oblige le programmeur à travailler avec un ensemble
d'instructions différentes d'une machine à l'autre.
La programmation assistée simplifie ce processus puisque le programmeur utilise le
même langage pour toutes les pièces indépendamment de la machine utilisée. Un processeur
tel que APT traduit le langage source en un programme CN et fait la plupart des calculs
nécessaires pour décrire la trajectoire des outils. Cependant, des erreurs peuvent subsister
jusqu'à ce que le programme CN soit corrigé sur la machine.
Malgré les avantages qu'offre la programmation assistée par rapport à la programmation
manuelle, dans les deux approches, le programmeur doit convertir les informations
géométriques d'une forme (dessin de définition) à une autre (langage APT), ce qui est une
source d'erreurs non négligeable.
Dans un système de programmation automatique, l'opérateur peut exploiter directement
les possibilités offertes par l'ordinateur à travers l'interface graphique. Il peut ainsi décrire la
géométrie sous forme de points, de lignes, d'arcs de cercle, etc. comme dans un dessin de
définition, plutôt que de la traduire en une représentation textuelle. L'utilisation de l'interface
graphique permet aussi de visualiser la trajectoire des outils et donc une vérification rapide
du programme évitant ainsi des corrections coûteuses au pied de la machine.

II-10
Les fonctionnalités de programmation automatique sont fournies par les systèmes de
fabrication assistée par ordinateur (FAO). Généralement, les systèmes FAO offrent un gain
de productivité important. Ils permettent à l'utilisateur de définir rapidement la géométrie de
la pièce. Un autre avantage de la FAO est la visualisation de la trajectoire des outils sur un
écran graphique et la correction des erreurs avant exécution sur la machine.
La visualisation des trajectoires d'outils peut être utilisée, non seulement, pour vérifier les
collisions possibles entre l'outil et la pièce, mais aussi entre l'outil et les éléments de bridage
si ces éléments sont intégrés dans le système FAO. Même si la représentation des trajectoires
d'outil est disponible dans les langages de programmation traditionnels, le contrôle de
collision dans les systèmes FAO offre une fonctionnalité qui n'existait pas avant. De plus,
l'utilisation des données géométriques de la pièce issues d'un système de dessin ou de
conception assistés par ordinateur (DAO ou CAO) permet d'éviter toute retranscription de
ces données, d'en assurer la consistance et de faciliter la prise en compte de tout changement
dans la conception de la pièce.

II-11
PROGRAMMATION CN ASSISTEE PAR
ORDINATEUR

II-12
III. Programmation CN Assistée par Ordinateur

III.1 Introduction
On a vu dans le chapitre précédent les trois méthodes de programmation des MOCN à
savoir la programmation manuelle la programmation assistée et la programmation
automatique. Dans ce qui suit on va s’intéresser à la programmation assistée. Le
programmeur, au lieu d’écrire le programme CN directement, il va écrire un programme
APT qui sera interprété par un système APT. L’interpréteur ou le logiciel APT génère alors
un fichier CLFile qui sera ensuite converti en un programme CN. Ainsi, la tache du
programmeur sera facilité et un travail fastidieux de calcul des coordonnées des points
caractéristiques de la trajectoire de l’outil sera économisé.
Dans ce chapitre, on va présenter le système APT (Automatic Programmed Tool) qui
utilise un langage (APT) plus évolué que le langage de programmation des MOCN (langage
CN ou code G).

III.2 Le Système APT


APT est le premier langage d'aide à la programmation CN. Il est développé au MIT en
1955. C'est l'un des langages les plus utilisés dans l'industrie. Plusieurs autres langages
dérivés de APT ont été développés comme NELAPT, EXAPT, UNIAPT, ADAPT et IFAPT.
Des langages non dérivés de APT ont été aussi développés. Ils sont pourvus de
fonctionnalités similaires à celle de APT. Parmi ces langages, ont peut citer, GNC développé
en Angleterre; ELAN développé en France; GTL développé en Italie; et COMPACT II
développé au USA. Les concepts utilisés dans ces systèmes sont généralement similaires à
ceux de APT. Dans ce qui suit on portera notre intérêt sur le langage APT standard.
Deux composantes constituent le système APT : le processeur qui est le langage de base
et le post-processeur.

III.2.1 Le processeur APT


Le processeur prend comme entrée le programme source écrit par l'utilisateur et par une
série de traitement vérifie les erreurs de syntaxe, de géométrie et de mouvement d'outil. Une
fois le programme source corrigé par l'utilisateur, le processeur génère un fichier contenant
toutes les données relatives à la position de l'outil (Cutter Location Data : CLdata) ainsi que
les données technologiques telles la définition des outils coupants, les vitesses de coupe et
d’avance et la lubrification. Ce ficher est appelé fichier de position d'outil (Cutter Location
File : CLfile).
Le CLfile est écrit dans le même langage que le fichier source à savoir le langage APT
mais il ne comprend pas les données géométriques initialement présentes dans le fichier
source APT. Le CLfile n’est pas directement exploitable par le contrôleur de la machine.
Une deuxième étape est donc nécessaire pour traduire le CLfile en un fichier spécifique à la

III-13
CN de la machine (programme CN). La traduction est effectuée à l'aide du post-processeur,
la deuxième composante du système APT. La figure suivante illustre les différentes
composante d’un système APT ainsi que les différentes étapes nécessaires à la génération du
fichier CN :
SYSTEME APT

Utilisateur Processeur APT PostProcesseur APT


Géométrie de la Rédaction du fichier Vérification Syntaxique Selon le directeur CN :
forme à usiner Vérification des erreurs de calcul CLfile Programme
source APT Fichier Vérification des limites machine
Génerétion du listing des erreurs CN
------------------------ Source Génération fichier diagnostique
Correction des erreurs Génération du programme CN
Génération du CLfile

Erreurs de syntaxe
Erreur de calcul

Figure III-3 : Structure du système APT


Comme les contrôleurs sont différents d'une machine à une autre, il faut avoir autant de
postprocesseurs que de contrôleurs différents.

III.2.2 Le postprocesseur APT


Le postprocesseur joue un rôle important dans le système APT d'aide à la programmation
CN. Le processeur génère un fichier CLfile qui définit les positions de l'outil nécessaires aux
opérations d'usinage. le CLfile contient également des informations relatives aux outils
utilisés et les conditions technologiques.
Les données générées du CLfile doivent être ensuite converties par le postprocesseur dans
un format spécifique à la machine. Les différentes fonctions du postprocesseur sont entre
autres :
• Conversion du CLdata dans le système de coordonnée de la machine outil.
• Vérification de la violation des limites de déplacement de la machine.
• Vérifications de la violation de la vitesse limite d'avance et de rotation de la broche.
• Choix des commandes appropriées en utilisant les instructions disponibles en code G.
• Exploitation des fonctions spécifiques à la machine.
• Génération de fichiers de diagnostique, d'instructions opératoires et du programme CN.
• ...

III.3 Eléments du Langage APT


Un programme d'une pièce en APT est constitué d'instructions permettant de définir la
géométrie à usiner, l'outil à utiliser et les conditions technologiques (vitesse de coupe et
d’avance) ainsi les déplacements ou mouvements de l’outil dans chaque opération à

III-14
exécuter. Chaque instruction est composée d’éléments respectant un certain nombre de
règles de syntaxe. Ces éléments sont :
• la ponctuation,
• les mots réservés du vocabulaire APT (mots clefs),
• les nombres,
• les symboles
• et les étiquettes.

III.3.1 Ponctuation
Pour supporter le calcul, APT possède des opérateurs arithmétiques comme l'addition (+),
la multiplication (*), la division (/) et la puissance (**). Une instruction APT comprend
également des caractères spéciaux pouvant être utilisés comme opérateur spécifique tels que :

/ La barre oblique est utilisée pour séparer une instruction en mots mineurs et mots
majeurs. Le mot majeur est situé à gauche et le mot mineur à droite.
, La virgule est utilisée pour séparer les éléments dans une instruction.
. Le point indique la partie décimale d'un nombre réel.
= Le signe égal est utilisé pour assigner une valeur à un paramètre.
) La parenthèse est utilisée pour terminer une étiquette.
() La paire de parenthèse est utiliser pour imbriquer une définition.
; Le point virgule est utilisé pour séparer les instructions sur une même ligne.
$ Le signe dollar indique la suite d'une ligne sur la ligne suivante.
$$ Le double dollar est utilisé pour indiquer un commentaire.

III.3.2 Mots du langage APT


Chaque instruction dans un programme APT consiste en un ou deux mots majeurs. Le
mot majeur détermine le type de l'instruction, tel que la définition de la géométrie ou les
commandes de mouvement. Selon les instructions le mot majeur est généralement suivi par
une barre oblique (/) et un ou plusieurs mots mineurs suivis par des paramètres.
Un mot du langage APT est constitué de un à six caractères alphanumériques. Certains
mots sont réservés au système (mots clefs).
Les mots clefs d’une instruction APT sont de différents types :
• mots de définition de la géométrie : POINT, PLANE, SPHERE, etc.
• mots utilisés pour les calculs : IF, SINF, COSF, SQRTF, etc.
• mots utilisés pour les instructions du postprocesseur : STOP, END, etc.
III-15
• mots utilisés comme modificateurs : XLARGE, LEFT, SMALL, etc.
• mots utilisés pour définir les déplacements : GO, GODLTA, GOTO, etc.
• mots utilisés pour spécifier les modes opératoires : NOPOST, CLPRINT, etc.

III.3.3 Nombres
Tous les nombres utilisés dans un programme APT sont des nombre réels. La forme
exponentielle peut être utilisée. Un nombre peut être présenté de l’une des manières
suivantes :
125 .563236E2
12.365 +269
-2.025E-1 -189.3244

III.3.4 Symboles
Les mots utilisés pour définir les entités géométriques sont appelés symboles. Les
symboles peuvent aussi être utilisés comme paramètres de valeurs numériques. Ainsi, un
symbole est utilisé pour définir une entité (géométrique ou scalaire) qui va être référencé
ultérieurement dans le programme APT (c’est l’équivalent d’une variable dans un langage de
programmation tels que Pascal ou Basic).
Les symboles sont constitue de un à six caractères alphanumériques, commençant
obligatoirement par un caractère. L’exemple suivant montre comment un symbole peut être
utilisé :
RAYON = 25.325
X1 = 123
Y1 = 96
CENTR1 = POINT / X1 , Y1
CERCL1 = CIRCLE / CENTER , CENTR1 , RADIUS , RAYON
TAB(1) = 10 $$ 10 EST AFFECTEE AU PREMIER ELEMENT DU TABLEAU TAB
TAB(I) = J $$ J EST AFFECTEE AU I ième ELEMENT DU TABLEAU TAB

III.3.5 Etiquettes (Label)


Une instruction d’un programme APT peut avoir une étiquette de sorte que une autre
instruction du programme peut la référencer. Les étiquettes sont constituées de un à six
caractères numériques ou alphanumériques commençant par un caractère ou un nombre. Les
exemples suivants montrent comment un symbole peut être utilisé :

III-16
™ Exemples :
•••
IF(M) NEG , 111 , 41E •••
NEG) I = 5 $$ Si M < 0 Alors I = 5 DEBUT) I = I + 1
••• •••
111) J = 9 $$ Si M = 0 Alors J = 9 •••
••• JUMPTO DEBUT $$ Saut inconditionnel
41E) K = 0 $$ Si M > 0 Alors K = 0 •••
•••

III.4 Instructions d’un programme APT

III.4.1 Introduction
Un programme de pièce en APT est constitué d'un ensemble d'instructions qui peuvent
être de l'un des types suivants :
• Instructions de définition de la géométrie,
• Instructions de définition de l’outil
• Instructions de définition des mouvements de l'outil
• Instruction du post processeur
• Instructions diverses (calcul, macro, etc.)

III.4.2 Structure d’un programme APT

III.5 Définition de la géométrie


Les instructions de définition de la géométrie sont utilisées pour décrire la forme de la
pièce à réaliser et les trajectoires de l'outil pour générer la forme voulue. APT supporte
jusqu'à 16 types d'entités géométriques. Parmi ces entités, les plus couramment utilisées sont
le point (POINT), la ligne (LINE), le cercle (CIRCLE), le plan (PLANE), la sphère
(SPHERE) et le cône (CONE).
Chaque entité peut être définie de différentes manières. En générale, une instruction de
définition de la géométrie commence par un symbole représentant le nom de l'élément à
définir suivi du type et de la définition de l'entité. Le type de l'entité représente le mot
majeur. La définition est complétée par les données numériques et les mots mineurs. La
syntaxe d'une instruction de définition de la géométrie se présente comme suit :
Symbole = Type_Entité / Définition_Entité

III-17
Les symboles définis auparavant peuvent être utilisés dans une définition courante. Ainsi,
il est possible d'emboîter une définition dans une autre. Une définition emboîtée doit être
entre parenthèses. La liste suivante donne quelques exemples de définition de la géométrie :
P10 = POINT/ 12 , 5 , 10
Définie le symbole P10 comme étant un point de coordonnées (12,5,10).
L10 = LINE / P10 , (POINT / (0 , 32 , 10))
Définie une ligne L10 qui passe par le point P10 et le point de coordonnées (0 , 32 , 10).
CERCL1 = CIRCLE / TANTO , L10 , YLARGE , P10 , 15
Définie un cercle CERCL1 tangent à la ligne L10 et passe par le point P10. L'ordonnée de
son centre est plus grand que celui du point P10 et son rayon est égale à 15.
P20 = POINT / CENTER , (CERCL2 = CIRCLE / P2 , P3 , P6)
Définie un point P20 comme étant le centre du cercle CERCL2. La définition du cercle
est emboîtée dans celui du point.
PLN1 = PLANE / P6 , PERPTO , V1
Définie un plan PLN1 qui passe par le point P6 et perpendiculaire au vecteur V1.
VECT1 = VECTOR / P1 , P2
Définie un vecteur du point P1 vers le point P2.

III.5.1 Définition de Points


Un point peut être défini de plusieurs manières. Selon la cotation du dessin on peut
utiliser l’une des définitions suivantes :

Par ses coordonnées :


POINT / x , y [ , z ]
P1 = POINT / 31 , 28
P3 = POINT / 20 , 38 , 10

Par intersection de deux lignes


POINT / INTOF , ligne1 , ligne2
P1 = POINT / INTOF , L1 , L2

Par le centre d’un cercle


POINT / CENTER , cercle
P1 = POINT / CENTER , C1

III-18
Par intersection d’une ligne et d’un cercle
 XLARGE 
 YLARGE 
 
POINT /   , INTOF, ligne, cercle
 XSMALL 
 YSMALL 

Comme l’intersection d’une ligne et d’un cercle peut donner deux solutions, on utilise
alors l’un des quatre modificateurs suivants : XLARGE , YLARGE , XSMALL , YSMALL
pour pouvoir choisir une solution. Le modificateur XLARGE par exemple permet de choisir
la solution qui a la valeur sur X la plus élevée.
P1 = POINT / YLARGE , INTOF , L1 , C1

Par intersection de deux cercles


 XLARGE 
 YLARGE 
 
POINT /   , INTOF , cercle1 , cercle2
 XSMALL 
 YSMALL 

P1 = POINT / YLARGE , INTOF , C1 , C2


P2 = POINT / XSMALL , INTOF , C1 , C2

Par rapport à un point à un rayon et à un angle


POINT / point , RADIUS , rayon , ATANGL , θ
P1 = POINT / P0 , RADIUS , 15 , ATANGL , 43

III.5.2 Définition des lignes


Différentes solutions sont possible pour définir une ligne. En voici quelques exemples :

Comme axe ou ligne parallèle


LINE / {XAXIS ou YAXIS} [ , décalage]
LX = LINE / XAXIS
LY = LINE / YAXIS
L1 = LINE / XAXIS , 4

Entre deux points


LINE / point1 , point2
L1 = LINE / P1 , P2

III-19
Par un angle et une valeur sur l’axe X ou Y
LINE / ATANGL , θ , INTERC , {XAXIS ou YAXIS} , valeur
L1 = LINE / ATANGL , 30 , INTERC , XAXIS , 2
L2 = LINE / ATANGL , 45 , INTERC , YAXIS , 10

Par un point et une ligne parallèle ou perpendiculaire


 PARLEL 
LINE / point ,   , ligne
 PERPTO 

L1 = LINE / P1, PARLEL , L0


L2 = LINE / P2, PERPTO , L0

Par un point et un angle par rapport à l’un des axes


 [ XAXIS ] 
LINE / point , ATANGL , θ ,  
 YAXIS 

L1 = LINE / P1 , ATANGL , -50 , YAXIS ou


L1 = LINE / P1 , ATANGL , 40
L2 = LINE / P2 , ATANGL , 30 , XAXIS

Par un point et un angle par rapport à une ligne


LINE / point , ATANGL , θ , ligne
L2 = LINE / P1 , ATANGL , -43 , L1

Par une ligne parallèle à une distance


 XLARGE 
 YLARGE 
 
LINE / PARLEL , ligne,   , distance
 XSMALL 
 YSMALL 

L2 = LINE / PARLEL , L1 , YSMALL, 5

Par un point et tangente à un cercle


 LEFT 
LINE / point ,   , TANTO , cercle
 RIGHT 

L1 = LINE / P1 , RIGHT , TANTO , C1


L2 = LINE / P1 , LEFT , TANTO , C1

III-20
Tangente à un cercle et à un angle par rapport à l’axe X
 XLARGE 
 YLARGE 
 
LINE /   , TANTO , cercle , ATANGL , θ
 XSMALL 
 YSMALL 

L1 = LINE / YSMALL , TANTO , C1 , ATANGL , 30

Tangente à un cercle et à un angle par rapport à une ligne


 XLARGE 
 YLARGE 
 
LINE / ATANGL , θ , ligne , TANTO , cercle ,  
 XSMALL 
 YSMALL 

L2 = LINE / ATANGL , 40 , L1 , TANTO , C1 , YSMALL

Tangente à deux cercles


 LEFT   LEFT 
LINE /   , TANTO , cercle1 ,   , TANTO , cercle2
 RIGHT   RIGHT 

L1 = LINE / LEFT, TANTO, C1, RIGHT, TANTO, C2

III.5.3 Définition des cercles

Par son centre et son rayon


CIRCLE / CENTER , point , RADIUS , rayon
C1 = CIRCLE / CENTER , P1 , RADIUS , 10

Par son centre et un point de la circonférence


CIRCLE / CENTER , point1 , point2
C1 = CIRCLE / CENTER , P1 , P2

Par trois points de la circonférence


CIRCLE / point1 , point2 , point3
C1 = CIRCLE / P1 , P2 , P3

III-21
Par son rayon et deux points de la circonférence
 XLARGE 
 YLARGE 
 
CIRCLE /   , point1 , point2 , RADIUS, rayon
 XSMALL 
 YSMALL 

C1 = CIRCLE / XLARGE, P1, P2, RADIUS, 8


C2 = CIRCLE / YLARGE, P1, P2, RADIUS, 8

Par son rayon et deux lignes tangentes


 XLARGE   XLARGE 
 YLARGE   YLARGE 
   
CIRCLE /   , ligne1,   , ligne2, RADIUS, rayon
 XSMALL   XSMALL 
 YSMALL   YSMALL 

C1 = CIRCLE / YSMALL, L1, YLARGE, L2, RADIUS, 5


C2 = CIRCLE / XSMALL, L1, XLARGE, L2, RADIUS, 15

Comme tangent à trois lignes


 XLARGE   XLARGE   XLARGE 
 YLARGE   YLARGE   YLARGE 
     
CIRCLE /   , ligne1 ,   , ligne2,   , ligne3
 XSMALL   XSMALL   XSMALL 
 YSMALL   YSMALL   YSMALL 

C1 = CIRCLE / YLARGE, L1, YSMALL, L2, YLARGE, L3

Par son rayon et tangent à deux cercles


 XLARGE 
 YLARGE 
   IN   IN 
CIRCLE /   ,   , cercle1 ,   , cercle2 , RADIUS , rayon
 XSMALL  OUT  OUT 
 YSMALL 

C3 = CIRCLE / XLARGE , IN , C1 , OUT , C2 , RADIUS , 25

Par son centre et tangent à un cercle


 LARGE 
CIRCLE / CENTER, point,   , TANTO, cercle
 SMALL 

C2 = CIRCLE / CENTER, P1, SMALL, TANTO, C1

III-22
Par son centre et une ligne tangente
CIRCLE / CENTER , point , TANTO , ligne
C1 = CIRCLE / CENTER , P1, TANTO , L1

Par son rayon, une ligne tangente et un point de la circonférence


 XLARGE 
 YLARGE 
 
CIRCLE / TANTO, ligne,   , point, RADIUS, rayon
 XSMALL 
 YSMALL 

C1 = CIRCLE / TANTO, L1, YLARGE, P1, RADIUS, 8


C2 = CIRCLE / TANTO, L2, XLARGE, P3, RADIUS, 33

Par son rayon, un point de la circonférence et tangent à un cercle


 XLARGE 
 YLARGE 
   RIGHT 
CIRCLE /   ,   , TANTO, cercle, THRU, point, RADIUS , rayon
 XSMALL   LEFT 
 YSMALL 

C2 = CIRCLE / XSMALL, RIGHT, TANTO, C1, THRU, P1, RADIUS, 5


C3 = CIRCLE / XLARGE, LEFT, TANTO, C1, THRU, P1, RADIUS, 15
• LEFT, RIGHT spécifient que le centre du cercle par rapport à une droite joignant P1
au centre du cercle C1 dans le sens P1 vers le centre C1 est à gauche ou à droite.
• XLARGE, XSMALL, YLARGE, YSMALL spécifient la position du point tangent
avec le cercle C1 : (position de la solution choisie par rapport à l’autre solution)
• Si une seule possibilité existe XLARGE, XSMALL, YLARGE, YSMALL ne seront
plus considérés.

Par son rayon, une ligne tangente et un cercle tangent


 XLARGE   XLARGE 
 YLARGE   YLARGE 
     IN 
CIRCLE /   , ligne ,   ,   , cercle, RADIUS, rayon
 XSMALL   XSMALL  OUT 
 YSMALL   YSMALL 

C2 = CIRCLE / YLARGE, L1, XLARGE, OUT, C1, RADIUS, 22


C4 = CIRCLE / XLARGE, L1, XSMALL, IN, C3, RADIUS, 16

III-23
III.5.4 Définition des ellipses
Une ellipse peut être définie par la formulation suivante :
ELLIPS / CENTER , point , Rayon_X , Rayon_Y , θ
ELLIPS / CENTER , Origin , 40 , 50 , 45

III.5.5 Définition des vecteurs


Un vecteur est caractérisé par une direction, un sens et une norme. Dans le cas où la
norme n’est pas précisée, la norme du vecteur est égale à un (vecteur unitaire). La liste
suivante présente quelques exemples de définition de vecteurs :

Par ses coordonnées


VECTOR / xv , yv , zv
VECTA = VECTOR / 1 , 1 , 0

Par deux points


VECTOR / point1 , point2
V12 = VECTOR / P1 , P2 ou
V12 = VECTOR / 0 , 0 , 0 , 1 , 0 , 1

Normal à un plan
 POSX 
 POSY 
 
 POSZ 
VECTOR / PERPTO , plan ,  
 NEGX 
 NEGY 
 
 NEGZ 

VECB = VECTOR / PERPTO , PLN1 , POSX


POSX indique que le vecteur est positif sur la direction de l’axe X

Par un produit vectoriel entre deux vecteur


VECTOR / vecteur1 , CROSS , vecteur2
V3 = VECTOR / V1 , CROSS , V2

III-24
Défini dans un plan par sa norme et un angle
 XYPLAN 
 
VECTOR / LENGTH , norme , ATANGL , angle ,  YZPLAN 
 ZXPLAN 
 

V3 = VECTOR / LENGTH , 1 , ATANGL , 45 , XYPLAN

Comme étant parallèle à l’intersection de deux plans


 POSX 
 POSY 
 
 POSZ 
VECTOR / PARLEL , INTOF , plan1 , plan2 ,  
 NEGX 
 NEGY 
 
 NEGZ 

V3 = VECTOR / PARLEL , INTOF , PLN1 , PLN2 , POSX

III.5.6 Définition des plans

Par trois points


PLANE / point1 , point2 , point3
PLN1 = PLANE / P1 , P2 , P3

Par les coefficients de l’équation de plan a.x + b.y + c.z – d = 0


PLANE / a , b , c , d
PLN2 = PLANE / 5 , 2 , 3 , -4

Passant par un point et parallèle à un plan


PLANE / point , PARLEL , plan
PLN3 = PLANE / P1 , PARLEL , PL3

Passant par un point et normal à un vecteur


PLANE / point , PERPTO , vecteur

PLN5 = PLANE / P1 , PERPTO , VECT3

III-25
Parallèle à un plan et à une distance
 XSMALL 
 YSMALL 
 
 ZSMALL 
PLANE / PARLEL , plan ,   , distance
 XLARGE 
 YLARGE 
 
 ZLARGE 

PLN4 = PLANE / PARLEL , PLXY , ZLARGE , 30

III.6 Commande de définition de l'outil


La forme à réaliser sur une pièce est directement liée à la géométrie de l'outil et à ses
mouvements par rapport à la pièce. Les commandes de définition et de mouvement de l'outil
spécifient au système l'outil à utiliser pour chaque opération d'usinage et comment l'outil
doit se déplacer suivant la géométrie définie pour générer la forme voulue.
Avant de générer les instructions d'usinage, l'outil à utiliser doit être défini. Les
commandes de définition de l'outil donne au système les informations nécessaires à la coupe.
Des commandes supplémentaires définissent comment l'outil est utilisé et lui affectent les
paramètres de coupe. Dans les exemples suivants les données entre crochets sont
optionnelles.
L'outil est défini par l'instruction CUTTER. L'information minimale requise est celle
définissant le diamètre de l'outil. Si seul le diamètre est donné, l'outil est supposé avoir un
bout plat. En option, le rayon du bout de l'outil peut être donné. Le format d'une telle
définition est le suivant :

CUTTER / d [ , r ]
CUTTER / 16 , 8
CUTTER / 63

CUTTER / d CUTTER / d , r CUTTER / d , r


d=r/2 d>r/2
Pour charger l'outil, la commande LOADTL spécifie le numéro de l'outil à utiliser. Si
l'outil à charger n'est pas le premier dans le programme, le processeur ajoute une instruction

III-26
de changement d'outil. En option, la longueur de l'outil ou son numéro de correcteur peut
être donnée.
LOADTL / n°_outil [ , LENGTH , l ] ou
LOADTL / n°_outil [ , OSETNO , n°_Correcteur ]
Exemples : LOADTL / 5 , OSETNO , 5
LOADTL / 2 , LENGTH , 11.287
En tournage, quand les outils sont placés sur une tourelle, l’instruction TURRET est
utilisée pour charger un outil.
TURRET / n°_outil [ , OSETNO , n°_Correcteur ]
Exemple : TURRET / 3 , OSETNO , 3
Lorsque la trajectoire de l’outil n’est ni linéaire ni circulaire, le processeur APT a recours
à la segmentation de la courbe. C’est à dire, transformer la courbe en polylignes. En effet, les
langages des machines outils à commande numérique ne dispose pas d’interpolations autres
que les interpolations linéaires et circulaires. Pour approximer une courbe quelconque à une
polyligne, une tolérance sur l’erreur entre la trajectoire réelle de l’outil et la trajectoire
théorique doit être donnée au processeur APT. Les instructions INTOL et OUTTOL
permette de préciser la tolérance sur les déplacements de l’outil par rapport à la surface de la
pièce.
INTOL / valeur
OUTTOL / valeur
L’instruction INTOL permet d’approximer les trajectoires par des déplacements à
l’intérieur de la surface théorique. L’instruction OUTTOL génère des déplacements à
l’extérieur de la surface théorique. Si ces deux instructions sont utilisées conjointement, les
déplacements de l’outil sont de part et d’autre de la surface théorique.

OUTTOL / tolérance INTOL / tolérance

III-27
III.7 Définition des déplacements
Les déplacements de l’outil se font de deux manières différentes. Les déplacements de
type point à point, utilisés lors des approches rapides ou dans le cas des procédé travaillant
de manière axiale tels que le perçage, l’alésage ou le poinçonnage, etc. Le deuxième type de
déplacement est celui du contournage, lors d’usinage en tournage ou en fraisage. Dans le
mode contournage on distingue les déplacements d’approche ou début de l’usinage et les
déplacement d’usinage. Les mouvements d’approche sont nécessaires parce qu’il permettent
le positionnement de l’outil par rapport aux différentes surfaces de la pièce. Une fois que
l’outil est positionné par rapport à la pièce les déplacement de type contournage peuvent être
utilisés pour réaliser l’usinage.

III.7.1 Mouvement du type point à point


En général, le point final d'un mouvement d'outil est pris comme point de départ du
mouvement suivant. Mais, au premier mouvement de l'outil le point de départ doit être
spécifié. L'instruction FROM indique le point initial des mouvements de l'outil.
FROM / point_de_départ
Exemples : FROM / P0 ou FROM / 100 , 100 , 200
L'instruction FROM ne provoque aucun mouvement d'outil, mais, le mouvement suivant
généré suppose que l'outil est en ce point. La position réelle de l'outil peut ne pas être en ce
même point. Dans plusieurs cas, la position de départ de l'outil indiqué par l'instruction
FROM coïncide avec la position de changement de l'outil sur la machine.
Les commandes en mode point à point (PàP) sont utilisées pour positionner l'outil en un
point donné sans se préoccuper du chemin suivi. Ceci est analogue à l'instruction G00 en
code G. Ce mode est généralement utilisé pour des opérations de perçage ou pour un
positionnement rapide de l'outil. Les deux commandes utilisées en mode PàP sont GOTO et
GODLTA :
GOTO / point GODLTA / [∆x , ∆y ,] ∆z
Exemples : GOTO / P0 GOTO / 124 , 32 , 0
GODLTA / 10 , 10 , 0 GODLTA / -30
En fait, plusieurs points peuvent être définis dans l'instruction GOTO. Dans ce cas l'outil
passe par ces points successivement. La différence entre l’instruction GOTO et GODLTA
est que cette dernière provoque un mouvement en relatif c’est à dire par rapport au point
courant.
Souvent, les instructions GOTO et GODLTA sont précédées par l'instruction RAPID.
L'instruction GOTO produit un mouvement vers des coordonnées en absolu. Par contre,
GODLTA produit un mouvement en relatif. Si un seul paramètre est donné, le mouvement
se fait selon l'axe Z.

III-28
III.7.2 Mouvement du type contournage
La trajectoire de l'outil dans le cas de mouvements de type contournage doit être précise.
Pour contrôler le mouvement de l'outil, APT utilise trois surfaces de contrôle appelées
surface guide (drive surface : DS), surface pièce (part surface : PS) et surface de butée
(check surface : CS). Pendant le contournage, les trois surfaces doivent être définies
explicitement ou implicitement. L'outil coupant doit maintenir continuellement le contact
avec la surface guide et la surface pièce. La surface guide est utilisée pour guider l'outil
autour de la pièce à usiner, dans un plan perpendiculaire à l'axe de l'outil. La périphérie de
l'outil doit suivre la surface guide. La surface pièce contrôle le mouvement le long de l'axe
de l'outil et le bout de l'outil doit maintenir le contact avec la surface pièce.
Ainsi la surface pièce détermine la profondeur de la pénétration de l'outil dans la pièce. La
surface de butée est utilisée pour indiquer où le mouvement de l'outil doit s'arrêter. La
surface guide doit être exprimée explicitement pendant un mouvement de contournage, alors
que les autres surfaces peuvent être données implicitement. La relation entre les trois
surfaces de contrôle est illustrée par la figure suivante.

Figure III-4 : Surfaces de contrôle du mouvement d'outil

III.7.2.1 Début des déplacements : mouvement d’approche


Pour réaliser un mouvement du type contournage, la commande GO est utilisée. Elle
précise la position initiale de l'outil par rapport à une deux ou trois surfaces. Cette
commande est différente de la commande GOTO utilisée en mode PàP. Le format général
d'une commande GO est le suivant :
GO / Rel , DS [ , [ Rel , PS ] , Rel , CS]
III-29
DS, PS et CS spécifient les surfaces de contrôle et Rel est modificateur qui spécifie la
relation entre l'outil et la surface de contrôle correspondante. Les valeurs possibles de Rel
avec les trois surfaces de contrôle sont TO, ON et PAST. Une autre valeur de Rel valable
uniquement avec CS est TANTO. Ainsi, la commande GO engendre un mouvement de façon
que l'outil respecte les relations avec les surfaces de contrôle.
La position de l'outil par rapport à une surface de contrôle spécifiée par un des
modificateurs TO, ON et PAST est présentée dans la figure 3.3. Les modificateurs PAST,
ON et TO permet de préciser la position de l’outil respectivement «après» la surface, «sur»
la surface et «jusqu’à» la surface. Quand aucun modificateur n’est donné le modificateur TO
est pris par défaut.

Figure III-5 : Effet des modificateurs sur la commande GO

™ Approche sur une seule surface


Quand la commande GO est utilisée avec une seule surface, l’outil se déplace sur le plus
court chemin pour atteindre la surface DS. Si la surface PS n’a pas eté definie, le plan XY
est pris comme surface PS. Pour préciser la surface PS l’instruction PSIS peut être utilisée.
PSIS / Surface_Pièce
L’instruction INDIRV peut être également utilisée dans les mouvements d’approche. elle
précise que la direction du mouvement est la même que celle du vecteur.
INDIRV / vecteur

GO / TO , C0 INDIR / V1
GO / TO , C0

III-30
Quand l’instruction INDIRV est utilisée, le mouvement de l’outil ne suit pas
nécessairement la direction exacte du vecteur.

FROM / PA
PSIS / PS
INDIR / V1
GO / TO , S1

™ Approche sur deux surfaces


Quand la commande GO est utilisée avec deux surfaces, l’outil se déplace sur le plus
court chemin pour atteindre les surfaces. La deuxième surface devient automatiquement la
surface PS pour les mouvements ultérieurs.
L’instruction INDIRV permet de spécifier la direction approximative du mouvement de
l’outil puisque la position de l’outil doit satisfaire les relations définies dans l’instruction
GO.

FROM / PA
INDIRV / V
GO / C1 , C2
GO / ON , C2 , PAST , C1

GO / TO , C2 , PAST , C1

™ Approche sur trois surfaces


Quand la commande GO est utilisée avec trois surfaces, l’outil se déplace sur le plus court
chemin pour atteindre les surfaces. La deuxième surface devient automatiquement la surface
PS pour les mouvements ultérieurs.

III-31
Comme pour les mouvements d’approche sur deux surfaces, l’instruction INDIRV permet
de spécifier la direction approximative du mouvement de l’outil puisque la position de l’outil
doit satisfaire les relations définies dans l’instruction GO.

FROM / PA
INDIRV / V
GO / PAST , DS , PS , CS

III.7.2.2 Mouvement d’usinage


Une fois la relation entre l'outil et les surfaces de contrôle établie, le mouvement de l'outil
est précisé en le guidant tout au long de la surface guide. La direction que l'outil doit prendre
est indiquée par six commandes possibles : GOFWD (avant), GOBACK (arrière), GOLFT
(gauche), GORGT (droite), GOUP (haut), GODOWN (bas). La direction spécifiée par une
de ces commandes est relative par rapport à la direction qui précède le mouvement. Le
format de telles commandes est le suivant :
[Options ,] Commande / DS , [ Rel , CS ]
où option établie la position de l'outil par rapport à la surface guide, et commande est une
des six commandes citées ci-dessus, DS est la surface guide, CS est la surface de butée et Rel
est la relation entre l'outil et la surface CS.
Les relations possibles entre l'outil et la surface guide en mouvement de contournage sont
TLLFT (outil à gauche de la surface), TLON (outil sur la surface) et TLRGT (outil à droite
de la surface). Ceci indique de quel coté de la surface guide l'outil se trouve pendant le
mouvement. La relation entre l'outil et la surface guide en mouvement de contournage est
différente de celle entre l'outil et la surface guide durant le positionnement initial. Par contre,

III-32
les relations possibles entre l'outil et la surface CS pendant un mouvement de contournage
est similaire à celles durant le positionnement initial.
Dans plusieurs cas, la surface CS devient la surface DS pour le mouvement suivant. Dans
ce cas, il n'est pas nécessaire de donner la surface CS explicitement parce que le système
peut la déduire en regardant l'instruction suivante.

RAPID ; GO / TO , L1
TLRGT , GORGT / L1 , TO , C1
GORGT / C1 , PAST , C2
GOLFT / TANTO , C3
GOFWD / TO , L2

La relation entre l'outil et la surface de la pièce PS est généralement spécifiée séparément


des commandes de mouvement. Les valeurs possibles sont TLONPS (outil sur PS), TLOFPS
(outil sous PS). Les différentes relations que nous venons de voir sont résumées et illustrées
par la Figure III-6.

ps ds cs
TLONPS TLON TO
TLOFPS TLLFT ON
TLRGT PAST
TANTO
Relations possibles entre
l'outil et la surface en
contournage

Figure III-6 : Illustration des relations Outil-Surface en contournage

III-33
Quand la surface DS et la surface CS génère une intersection multiple l’instruction du
mouvement de l’outil intègre une option qui permet de choisir le numéro de l’intersection
concernée. Dans le cas général une de commande du mouvement de l’outil prend la forme
suivante :
 GOFWD    TO  
TLRGT    GORGT     
   TLONPS      ON 
 , [ n , INTOF , ] CS 
 
TLLFT , TLOFPS ,  
GOLFT
 / DS  , 
PAST
 TLON           
GOBACK   TANTO 
 

THICK / 1
GO / TO , C0

FROM / PA
INDIRV / V1
RAPID ; GO / C1
TLRGT , GORGT / C1 , PAST, 2 , INTOF , C2

Le langage APT permet de préciser une surépaisseur sur toutes les trois surfaces : (surface
guide, surface pièce et surface d’arête). La commande THICK permet de réaliser cette
fonction.
THICK / épaisseur_sur_PS [, épaisseur_sur_DS , épaisseur_sur_CS ]

Exemples : THICK / 0 , 0.8 , 0 $$ surépaisseur de 0.8 sur DS


THICK / 1 $$ surépaisseur de 1 sur PS, sur DS et sur CS

III.8 Commande du postprocesseur


Comme chaque type de contrôleur de machine nécessite son propre postprocesseur, la
manière dont ces fonctions sont implémentées est très variable. De nombreuses commandes
nécessaires au postprocesseur peuvent être écrites dans le programme source APT. De telles
commandes n'ont pas d'effet sur le processeur qui les transmet simplement vers le
postprocesseur. Comme exemple de ces commandes on peut citer SPINDL, COOLNT, FINI,
INSERT, etc.

III-34
III.8.1 Initialisation et terminaison
La première instruction dans une séquence d'initialisation d'un programme pièce en APT
est définie par le mot majeur PARTNO, suivi d'un texte pour l'identification du programme.
La deuxième instruction spécifie, par le mot MACHIN, le nom du postprocesseur nécessaire
à la génération du programme CN. Le mot NOPOST est une instruction optionnelle qui
indique que le traitement du postprocesseur n'est pas demandé. Une autre instruction UNITS
peut être également présente au début du programme APT. Elle est traduite en langage CN
pour préciser que les données sont en millimètre ou en pouce.
PARTNO référence_pièce
MACHIN / référence_postprocesseur , numéro
UNITS / unité
Exemples : PARTNO COLLECTEUR
UNITS / MM
UNITS / INCH
MACHIN / MILL , 1
Les instructions de terminaison du programme sont définies par les mots END et FINI. Le
mot END indique au postprocesseur que la fin des opérations d'usinage est atteinte. Ceci est
suivi par le mot FINI qui est la dernière instruction du programme APT. Elle indique au
processeur que le programme est terminé.

III.8.2 Commande de définition des conditions technologiques


Pour mettre la broche en marche il faut utiliser la commande SPINDL. Cette commande
indique aussi la vitesse de coupe ou la vitesse de rotation et le sens de rotation de la broche.
En utilisant des paramètres différents, cette commande peut arrêter la broche ou la remettre
en marche.
 RPM   CLW 
SPINDL / vitesse ,   ,   ou
SMM  CCLW 

 ON 
SPINDL /  
OFF 

Exemples : SPINDL / 800 , RPM , CLW $$ rotation broche à 800 tr/min sens horaire
SPINDL / 28 , SMM , CLW $$ vitesse de coupe de 28 m/min , sens horaire
SPINDL / OFF $$ arrêt de la broche
SPINDL / ON $$ rotation de la broche

III-35
La commande COOLNT est utilisée pour la lubrification. Les options ON et OFF
permettent d'activer ou de désactiver l'arrosage.
COOLNT / ON ou COOLNT / OFF
La vitesse d'avance est spécifiée par la commande FEDRAT. Les paramètres utilisés dans
cette commande spécifient la vitesse et les unités utilisées. Quand la commande RAPID est
utilisée, les déplacements se font à la vitesse maximale de la machine.
FEDRAT / valeur, unités
Exemples : FEDRAT / 0.1 , MMPR $$ avance de 0.1 mm/tr
FEDRAT / 120 , MMPM $$ vitesse d’avance de 120 mm/min

III.8.3 Commande de définition des cycles


Dans certains cas tels que le perçage, l'alésage ou le taraudage, plusieurs mouvements
peuvent être groupés ensemble par l'instruction CYCLE.
La commande CYCLE peut, elle aussi, être transmis directement au postprocesseur pour
choisir en fonction de la machine le cycle pré programmé adéquat.
CYCLE / type, paramètres
Les types de cycles possibles sont les cycles de perçage (DRILL) , perçage (DEEP),
alésage (REAM), alésage à l’alésoir (BORE) et taraudage (TAP). Les paramètres qui suivent
le mot cycle sont spécifiques à chaque type de cycle. L'utilisation de l'instruction CYCLE
dépend des particularités du postprocesseur. L’exemple suivant illustre quelques exemples
de définition des cycles :
Exemples :
 MMPR 
CYCLE / DRILL , DEPTH , profondeur ,   , avance , CLEAR , garde
MMPM 
 MMPR 
CYCLE / DEEP , profondeur , INCR , pas ,   , avance , garde
MMPM 
 MMPR 
CYCLE / BORE , profondeur ,   , avance , garde , DWELLV , secondes
MMPM 
 MMPR 
CYCLE / TAP , profondeur ,   , avance , garde , DWELLV , secondes
MMPM 

III.8.4 Instructions diverses du postprocesseur


Parfois, le programmeur veut spécifier une commande en langage CN au moment de
l'exécution du postprocesseur. Ceci peut être réalisé par la commande INSERT. Les données

III-36
spécifiées par la commande INSERT sont insérées directement par le postprocesseur dans le
programme CN.
INSERT / Commande en langage CN
Parmi les nombreuses commandes qui sont transmises directement au postprocesseur, on
peut citer celles relatives au commentaire, à l’arrêt optionnel, à la temporisation, etc. :
REMARK commentaire $$ pour commenter le programme source
PPRINT commentaire $$ pour commenter le programme CN
OPSTOP $$ arrêt optionnel
DELAY / temps $$ temporisation

III.9 Le calcul dans APT


Le langage APT permet de faire des calcul arithmétiques et trigonométriques. Les
opération de calcul peuvent être réalisées au moyen d’opérateurs arithmétiques et des
fonction trigonométriques sur des scalaires (appelés également variables scalaires) ou des
tableaux.
Les opérateurs arithmétiques sont :
+ : addition / : division
- : soustraction ** : puissance
* : multiplication

Les fonctions trigonométriques sont illustrées par le tableau suivant :


Fonction Nom Format Explication
Sinus SINF SINF(arg) arg = θ en degré
Cosinus COSF COSF(arg) arg = θ en degré
Tangente TANF TANF(arg) arg = θ en degré
ATANF ATANF(arg) arg scalaire, résultat = θ en degré tel
que tan(θ) = arg
Arc Tangent ATAN2F ATAN2F(arg1,arg2) arg1, arg2 scalaire, résultat = θ en
degré tel que tan(θ) = arg1/arg2

III-37
Les fonctions arithmétiques sont illustrées par le tableau suivant :
Fonction Nom Format Explication
Valeur Absolue ABSF ABSF(arg) |Arg|
Racine Carrée SQRTF SQRTF(arg) √arg
Logarithme LOGF LOGF(arg) Ln(arg)
Logarithme 10 LOG10F LOG10F(arg) Log10(arg)
Exponentiel EXPF EXPF(arg) earg
Exemples :
BETA = BETA + 1
A = R * (1 - SINF(THETA))
F = A * B + (C + D) / (A**4 – 3) $$ EQUIVALENT A : F = (A*B) + (C+D) / (A4 - 3)
X(2) = 0
ALPHA(I) = ATANF(I)
TAB1(I) = TAB2(J) / 2
RAY = SQRTF(X**2 + Y**2) $$ EQUIVALENT A : RAY = √(X2 + Y2)

III.10 Les boucles et les macros


Au fur et à mesure de l'évolution de APT de nombreuses fonctionnalités ont été ajoutées.
Parmi celles-ci l'utilisation des opérateurs logiques pour les tests, les boucles et les macros.
Ces fonctionnalités donnent au langage APT des caractéristiques similaires à un langage de
programmation de haut niveau tel que le langage Fortran. L'utilisation des étiquettes est
essentielle pour les tests et les boucles. Une étiquette est un mot de six caractères
numériques finissant par une parenthèse droite.

III.10.1 Les boucles


Les boucles dans le langage APT permettent de définir des entités géométriques et des
variables scalaires de manière itératives. Pour réaliser une boucle les instructions IF et
JUMPTO sont nécessaires.
IF(condition) label1 , label2 , label3
La condition peut être une variable ou une expression arithmétique. Selon la condition le
déroulement du programme se poursuit après un saut à :
label1 si la condition est négative
label2 si la condition est égale à zéro
label3 si la condition est positive

III-38
JUMPTO / label
Quand l’instruction JUMPTO est rencontrée le programme fait un saut inconditionnel à la
ligne contenant label
Exemples :
APLPHA = 0 $$ INITIALISATION
DB) X(ALPHA) = R * COSF(ALPHA) $$ CALCUL
Y(ALPHA) = R * SINF(ALAPHA)
IF (180 - 2*ALPHA) BO , FI , FI $$ TEST
BO) ALPHA = ALPHA + 1 $$ INREMENTER SI (180 – 2.ALPHA) < 0
POINTS(ALPHA) = POINT / X(ALPHA) , Y(ALPHA) $$ TABLEAU DE POINTS
JUMPTO / DB $$ CONTINUER BOUCLE
FI) ••• $$ FIN BOUCLE

III.10.2 Les macros


Une autre fonctionnalité qui augmente les possibilités du langage APT est l'utilisation des
macros. Une macro est un sous programme qui une fois définie peut être utilisée plusieurs
fois dans le programme principal. L’instruction MACRO permet de définir une macro et
pour la terminer il faut utiliser l'instruction TERMAC. Pour appeler une macro il faut utiliser
l'instruction CALL.
MACRO / paramètres
TERMAC
Exemple :
CC = MACRO / V , F , D , A
N = 1000 * V / (3.14 * D)
SPINDL / N , RPM , CLW
FEDRAT / F , MMPR
COOLNT / A
TERMAC
•••
CALL / CC , 25 , 0.1 , 63 , ON
•••

III-39
III.11 Exemple

Ecrivez le programme APT pour l’usinage en demi finition et en finition du contour


extérieur de la pièce suivante ainsi que le centrage et le perçage des deux trou de diamètre
10 mm.

Données :
• Surépaisseur pour la finition est égale à 1mm.
• Le point de départ PTDEPA a pour coordonnées (-150 -20 17)
• Fraise de diamètre 20 mm , Vc = 28 m/min , Va = 90 mm/min.
• Foret à centre de diamètre 4 mm , Vc = 22 m/min , f = 0.1 mm/tr.
• Foret de diamètre 9.5 mm , Vc = 18 m/min , f = 0.08 mm/tr.
• Alésoir de diamètre 10 mm , Vc = 24 m/min , f = 0.06 mm/tr.
• Les distances d’approche et de dégagement sont de :
10 mm pour le contournage
5 mm pour le perçage des trous

III-40
PARTNO EXEMPLE FROM/P0
MACHIN/ MILL , 1 THICK/0 $$ Usinage en finition
NOPOST GO/TO,L1,TO,L3
UNITS/ MM TLLFT , GOFWD/L3,TANTO,C1
INTOL / 0.01 GOFWD/C1,TANTO,C2
GOFWD/C2,TANTO,L5
REMARK Définition de la géométrie
GOFWD/L5,PAST,L4
$$ Coordonnées des points
GORGT/L4,PAST,L2
P0 = POINT/-150,-20,-1
RAPID ; GODLTA/20
P1 = POINT/-135,0,0
RAPID ; GOTO/-150,-20,17
P2 = POINT/0,150,0
SPINDL / OFF
P3 = POINT/-105,15,0
P4 = POINT/-105,90,0 REMARK Centrage des deux trous
P5 = POINT/-30,30,15 LOADTL/2 $$ Forêt à centrer
P6 = POINT/-44.7,59.7,15 CUTTER/4
$$ L1 est l'axe des X SPINDL / 1752 , RPM , CLW
L1 = LINE/XAXIS CYCLE/DRILL , 5 , MMPM , 175 , 5
$$ L2 est l'axe des Y GOTO/P5
L2 = LINE/YAXIS GOTO/P6
L3 = LINE/P1,ATANGL,90 CYCLE/OFF
L4 = LINE/P2,ATANGL,0 RAPID ; GOTO/-150,-20,17
L5 = LINE/YAXIS,-60 SPINDL / OFF
C1 = CIRCLE/CENTER,P3,RADIUS,30
C2 = CIRCLE/CENTER,P4,RADIUS,45 REMARK Perçage des deux trous
LOADTL/3
$$ chargement et définition de l'outil 1 CUTTER/9.5 $$Forêt diam. 9.5mm
LOADTL/1 SPINDL / 603 , RPM , CLW
CUTTER/20 CYCLE/DRILL , 20 , MMPM , 48 , 5
FEDRATE/ 90 ; MMPM GOTO/P5
SPINDL / 446 , RPM , CLW GOTO/P6
REMARK début des déplacements CYCLE/OFF
RAPID ; GOTO/-150,-20,17 RAPID ; GOTO/-150,-20,17
RAPID ; GOTO/P0 SPINDL / OFF
$$ Usinage ébauche du contour REMARK Alésage des deux trous
FROM/ P0 LOADTL/4
THICK/1 $$ 1mm de surép. en finition CUTTER/10 $$Alésoir diam 10 mm
GO/TO,L1,TO,L3 SPINDL / 764 , RPM , CLW
COOLNT/ ON CYCLE/DRILL , 20 , MMPM , 46 , 5
TLLFT , GOFWD/L3,TANTO,C1 GOTO/P5
GOFWD/C1,TANTO,C2 GOTO/P6
GOFWD/C2,TANTO,L5 CYCLE/OFF
GOFWD/L5,PAST,L4 RAPID ; GOTO/-150,-20,17
GORGT/L4,PAST,L2 SPINDL/OFF $$ Arrêt broche
RAPID ; GODLTA/20 COOLNT/OFF $$ Arrêt arrosage
RAPID;GOTO/-150,-20,17 END
RAPID;GOTO/P0 FINI
Figure III-7 : Exemple de programme APT

III-41
III.12 Tableaux récapitulatifs des mots clefs du langage APT

Instruction de définition de la géométrie


Mot Description
POINT Définition de point
LINE Définition de ligne
CIRCLE Définition de cercle
ELLIPS Définition d’ellipse
VECTOR Définition de vecteur
SPHERE Définition de sphère
PLANE Définition de plan
ATANGL Modificateur : à un angle
INTERC Modificateur : intercepte
CENTER Modificateur : Centre
XAXIS Modificateur : Axe X
YAXIS Modificateur : Axe Y
RADIUS Modificateur : Rayon
TANTO Modificateur : Tangent à
THRU Modificateur : A travers
INTOF Modificateur : Intersection avec
PARLEL Modificateur : Pour la définition d’une ligne parallèle ou perpendiculaire à
PERPTO une autre ligne
XSMALL Modificateur : X petit
YSMALL Y petit
ZSMALL Z petit
XLARGE X grand
YLARGE Y grand
ZLARGE Z grand
RIGHT Modificateur : (à droite, à gauche)
LEFT
IN Modificateur : (à l’intérieur, à l’extérieur)
OUT
LARGE Modificateur : (grand, petit)
SMALL
POSX Modificateur : Positif sur X
POSY Positif sur Y
POSZ Positif sur Z
NEGX Négatif sur X
NEGY Négatif sur Y
NEGZ Négatif sur Z
XYPLAN Modificateur : Plan XY
YZPLAN Plan YZ
ZXPLAN Plan ZX

III-42
Instructions de définition des déplacements
Mot Description
GOTO Déplacement en mode point à point en absolu
GODLTA Déplacement en mode point à point en relatif
GO Déplacement d’approche
GORGT
GOLFT Déplacement en mode contournage selon la direction par rapport au
GOFWD mouvement précèdent : (à droite , à gauche, vers l’avant , vers l’arrière,
GOBACK vers le haut ou vers le bas)
GOUP
GODOWN
TLLFT Spécifie la position de l’outil par rapport au prifl à realiser : (à doite du
TLRGT profil, à gauche du profil ou sur le profil)
TLON
RAPID Le mouvement suivant sera réaliser à vitesse rapide
TO Modificateur de position de l’outil par rapport à la surface d’arrêt :
ON (jusqu’à la surface, sur la surface, après la surface ou tangent à la surface)
PAST
TANTO
TLONPS Modificateur de position de l’outil par rapport à la surface pièce : (sur la
TLOFPS surface ou tangent à la surface)
THICK
INDIRV
INDIRP
PSIS

Instructions diverses (Calcul, Boucle, Macro)


Mot Description
MACRO Définition de macro
TERMAC Fin de macro
CALL Appel de macro
IF Test «SI»
JUMPTO Saut
SINF Sinus
COSF Cosinus
TANF Tangente
ATANF Arc tangente
ATAN2F Arc tangente
ABSF Valeur absolue
SQRTF Racine carrée
LOGF Logarithme népérien
LOG10F Logarithme base 10
EXPF Exponentiel

III-43
Instructions de définition de l’outil
Mot Description
CUTTER Spécifie les dimensions de l’outil
INTOL Tolérance outil / surface (tolérance à l’intérieur ou à l’extérieur de la
OUTTOL surface)
LENGTH Correcteur de longueur de l’outil
LOADTL Changement d’outil en fraisage ou en tournage (tourelle)
TURRET
OSETNO Numéro de correcteur de l’outil

Instructions du postprocesseur
Mot Description
PARTNO Spécifie la référence de la pièce à fabriquer
UNITS Spécifie l’unité utilisé
MACHIN Spécifie la référence du postprocesseur
NOPOST Traitement du postprocesseur n’est pas demandé
END Fin du programme CN
FINI Fin du programme source APT
SPINDL Vitesse de broche en tr/min ou en m/min selon l’unité
FEDRAT Vitesse d’avance en mm/tr ou en mm/min selon l’unité
COOLNT Activer ou désactiver l’arrosage
MMPR Spécifie que l’unité de la vitesse d’avance est en mm/tr
MMPM Spécifie que l’unité de la vitesse d’avance est en mm/min
IPM Spécifie que l’unité de la vitesse d’avance est en inch/min
IPR Spécifie que l’unité de la vitesse d’avance est en inch/tr
RPM Spécifie que l’unité de la vitesse de la broche est en tr/min
SMM ou SFM Spécifie que l’unité de la vitesse de la broche est en m/min
CLW Spécifie le sens de la rotation de la broche (sens horaire ou
CCLW trigonométrique)
CYCLE Définition de cycle d’usinage
DRILL Cycle de perçage centrage
DEEP Cycle de perçage profond
BORE Cycle d’alésage
TAP Cycle de taraudage
REAM Cycle d’alésage
DEPTH Profondeur
DELAY Temporisation en seconde
OPSTOP Arrêt optionnel
REMARK Commentaire
PPRINT
INSERT Insert une commande du programme CN

III-44
FONCTIONS D'UN SYSTEME DE FAO

III-45
IV. Fonctions d'un Système de FAO

IV.1 Introduction
Comme on l'a mentionné au chapitre 1, le terme FAO (Fabrication Assistée par
Ordinateur) ou d'une manière générale la CFAO (Conception et Fabrication Assistées par
Ordinateur) peut être interprété de différentes manières selon les pays et le type d'industrie.
Indépendamment de cette interprétation générale, dans des branches variées de l'industrie et
selon les pays, différentes explications de ce terme sont acceptées. La figure suivante montre
les différents champs d'application de la CFAO dans le cas des industries manufacturières.

Figure IV-1 : Champs d'application de la CFAO dans les industries manufacturières [Kochan 85]
Dans la suite, le terme FAO désignera tout les aspects où l'ordinateur peut apporter une
aide à la préparation de la fabrication. Le contrôle, la supervision ou le suivi des machines
(MOCN, cellules ou systèmes flexibles) ainsi que les autres activités intimement liées à la
production telles que la planification, l'ordonnancement et le lancement de la fabrication ou
la manutention ne feront pas partie des objectifs de ce document.

IV.2 Rôle de la FAO


Dans plusieurs ouvrages la fonction Méthode et fonction FAO désigne l'ensemble des
activités nécessaires à la préparation de la fabrication. Une nuance existe entre ces deux
fonctions dans la mesure où la FAO désigne les activités de la fonction Méthode qui sont
assistées par ordinateur. Or, les activités liées à la génération de gamme de fabrication ne
font partie des fonctionnalités de la FAO. En effet, la génération automatique de gamme de
fabrication connue sous le nom de CAPP ("Computer Aided Process Planning") n'est pas
suffisamment développée et peu de systèmes FAO (aspect logiciel) l'intègrent parmi leurs
fonctionnalités.
Le rôle de la fonction FAO est de générer le programme CN à partir de la géométrie de la
pièce fournie par la fonction CAO (BE). La géométrie de la pièce ne peut être exploitée
directement par la FAO. Des étapes préalables sont indispensables avant que la FAO puisse
intervenir. En effet, le choix de la machine, des outils, des processus et des montages

IV-46
d'usinage doit se faire pour servir, en plus de la géométrie de la pièce, comme données
d'entrée à la FAO. Ceci fait partie intégrante du travail du gammiste au sein du BM.

Etude Méthode Atelier

Géométrie Génération Géométrie MOCN 1


et Gamme
CAO de Gammes FAO Prog. CN
CND / CNC ...
de fabrication
MOCN n

Figure IV-2 : Fonction FAO


Une fois la gamme de fabrication faite, la FAO peut générer les trajectoires d'outils en
fonction de la forme à réaliser, des reprises de pièce, des montages d'usinage. Elle prendra
aussi en compte les paramètres de coupe (vitesse de coupe et d'avance, profondeur de passe,
etc.) et les particularités de la machine-outil. Les mouvements d'outil peuvent être simulés
pour une éventuelle correction dans le cas où il y a risque de collision entre l'outil et la pièce
ou entre l'outil et les éléments de bridage (montage d'usinage).
Tout ce travail se concrétise par la génération du programme CN. Ce dernier peut être
téléchargé soit dans la CND ou directement dans la mémoire de la CNC de la machine.
De nombreux systèmes CFAO existent actuellement sur le marché. Généralement, ces
logiciels étaient à la base des logiciels de CAO et qui ont évolué pour intégrer la FAO. Par
contre, les logiciels dédiés uniquement à la FAO sont moins nombreux. Parmi l'ensemble de
ces logiciels, ont peut citer CATIA (Dassault Systèmes), EUCLID (Matra Datavision),
IDEAS (SDRC), STRIM100 (Matra Datavision), ProEngineer (Parametric Technology),
CADAM (Cadam Inc.), SMS (Spatial Technology), SMARTCAM (Camax Manufacturing
Technologies => SDRC), CADKEY (Cadkey Inc.), etc.

IV.3 Systèmes FAO


Les systèmes FAO sont concernés, non seulement, par les procédés d'usinage classiques
comme le tournage, le fraisage ou le perçage mais aussi par d'autres procédés tels que
l'électroérosion, la découpe (laser, plasma, oxycoupage), le poinçonnage, le soudage, etc.
Généralement, un système FAO se compose de trois modules : le préprocesseur, le
processeur et le postprocesseur. Le préprocesseur permet de modéliser les formes à réaliser
d'une pièce ou de la récupérer directement d'un système CAO. Le processeur a comme
fonction d'aider l'utilisateur à déterminer tous les paramètres nécessaires à la génération du
CLfile. Enfin, le postprocesseur convertit, selon les machines à utiliser, le CLfile en un
programme CN.

IV.3.1 Préprocesseur
Le préprocesseur joue le rôle d'un système CAO au sein du système FAO. Seulement, du
point de vue fonctionnalité, le préprocesseur est loin d'avoir les mêmes performances qu'un

IV-47
système CAO, puisqu'il est destiné à réaliser que la géométrie qui va être traité par la suite
par le processeur. Donc, pour les formes peu complexes, l'utilisateur peut modéliser la
géométrie à l'aide du préprocesseur. Dans le cas contraire ou lorsque la géométrie existe
déjà, l'utilisateur doit passer par un système de CAO. Le transfert de données se fait au
moyen des standards existants tels que IGES, SET, STEP, etc.

CAO PréProcesseur Processeur

Génération de
la Géométrie
Accés direct à la BD Géométrie

Accés par interface


Conversion
(IGES, DXF,...)

Utilisateur

Figure IV-3 : Préprocesseur


Quand on dispose d'un système CFAO, c'est à dire, un système qui intègre à la fois les
fonctionnalités de la CAO et de la FAO, il n'est pas nécessaire de faire des transferts de
données. En effet, la base de données sur laquelle travaille le système CFAO est la même
pour la CAO et la FAO. Dans ce cas, une fois que le design de la pièce est réalisé (par le
concepteur) l'utilisateur (le fabricant) peut accéder directement à la géométrie pour la traiter
à l'aide du processeur.

IV.3.2 Processeur
Le traitement au sein du processeur ne se fait pas d'une manière automatique et même si
cela existe dans certains systèmes FAO, il n'est pas tout à fait développé ou c'est développé
pour une application très particulière. Généralement, le fonctionnement d'un processeur
FAO se fait d'une manière interactive avec l'utilisateur.
La majorité des fournisseurs de systèmes FAO offre des modules ayants comme objectif
de générer un CLfile ou un programme APT. Ces modules sont différents d'un fournisseur à
l'autre mais ils opèrent d'une manière similaire. Une fois que l'utilisateur récupère la
géométrie sur l'écran graphique, il marque les différentes surfaces et éléments de la
géométrie. Le processeur peut par la suite générer le programme APT correspondant. A part
la facilité avec laquelle a été généré le programme APT, plusieurs autres avantages sont
offerts à l'utilisateur au moyen de l'interface graphique. La pièce peut être représentée sous
différents angles, échelles et sections pour permettre d'examiner les zones à risque en
usinage. La visualisation de la géométrie sur l'écran graphique permet aussi d'examiner les
différentes alternatives pour le bridage de la pièce.
L'étape suivante concerne la validation du choix des outils coupants. Certains systèmes
FAO possèdent une base de données d'outils. L'utilisateur peut alors valider les outils définis
IV-48
dans la gamme de fabrication. Il peut aussi en créer à partir d'une librairie d'outils génériques
en spécifiant les paramètres du nouvel outil (diamètre, longueur, rayon de pointe, etc.).
A ce niveau l'utilisateur dispose du modèle géométrique de la forme à réaliser et l'outil
correspondant. L'étape qui suit consiste à créer la trajectoire que doit suivre cet outil. La
méthode pour accomplir cette tâche, en utilisant d'une manière interactive l'écran graphique,
dépend du type d'opération (fraisage de profil, fraisage en bout, perçage, tournage) et la
complexité de la pièce. Les systèmes FAO disponibles actuellement utilisent une approche
interactive avec une génération automatique de certains types de séquences. Ces séquences
automatiques peuvent être du surfaçage, fraisage en bout d'une poche, perçage PàP ou du
contournage.

PréProcesseur Processeur PostProcesseur

Trajectoires

Géométrie Programme APT


Séquences ou CLfile

Simulation

Utilisateur

Figure IV-4 : Processeur


L'approche interactive donne la possibilité à l'utilisateur de générer les trajectoires d'outil
d'une manière progressive avec vérification visuelle sur l'écran graphique. Au départ,
l'utilisateur doit préciser la position de départ de l'outil. Ensuite, il indique au système la
surface de la pièce que l'outil doit générer. Quand l'outil se déplace sur l'écran graphique, le
système crée automatiquement le programme APT correspondant. Cette approche permet à
l'utilisateur d'insérer des commandes postprocesseur à l'endroit approprié pendant la création
du programme APT. Ces commandes postprocesseur peuvent être des instructions pour
commander l'avance, la vitesse de coupe ou la lubrification.
Les séquences automatiques sont utilisées quand il s'agit de situations similaires et
fréquentes. Les séquences automatiques appelées aussi MACRO font parties des
fonctionnalités d'un système FAO. Les arguments de la macro sont les paramètres définis
par les données géométriques de la forme à réaliser. Ainsi, les séquences automatiques
peuvent être exploitées avec un minimum d'interactions avec l'utilisateur.

IV-49
Figure IV-5 : Génération automatique des trajectoires d'outil
Le fraisage d'un contour ou d'une poche sont des exemples de séquences automatiques
fournies par la plupart des systèmes FAO. Le fraisage de contour est utilisé pour générer des
trajectoires d'outil autour d'une série d'éléments géométriques identifiés par l'utilisateur. Ces
éléments peuvent définir, par exemple, le contour extérieur d'une pièce.
Le fraisage de poche fonctionne d'une manière similaire au fraisage de contour sauf que la
matière à enlever se trouve à l'intérieur d'un contour fermé. Ce contour défini une poche ou
une cavité qui va être usinée dans la pièce. L'utilisateur doit identifier les côtés et le fond de
la poche. Le système génère alors automatiquement les trajectoires de l'outil.
Dans certains cas de pièce la modélisation filaire est suffisante pour générer les
trajectoires d'outil. Cependant, la visualisation de ces trajectoires ne permet pas,
généralement, de détecter les interférences et valider l'opération d'usinage. L'utilisation du
modèle solide permet de générer des trajectoires avec détection des collisions entre la pièce
et l'outil ou le porte-outil. Il est également possible d'utiliser des règles basées sur la
géométrie. Ainsi, des connaissances d'usinage (trajectoires, outils, séquences d'usinage,
mode d'approche et de dégagement, etc.) peuvent être appliquées à chaque entité d'usinage
(manufacturing features). De telles fonctionnalités sont disponibles dans le système
STRATA (Spatial Technology). STRATA est un système FAO qui utilise les entités
d'usinage pour la génération automatique des trajectoires d'outil. Il possède aussi des
algorithmes d'optimisation des trajectoires d'outil pour plusieurs entités d'usinage.
La visualisation sur l'écran graphique de différentes couleurs représentant l'outil, la
géométrie de la forme à réaliser et les trajectoires de l'outil peut être très utile à l'utilisateur.
Par exemple, l'utilisation d'une couleur pour la géométrie et une autre pour la trajectoire de
l'outil permet à l'utilisateur de voir les interférences possibles. Une autre fonctionnalité
disponible sur certains systèmes FAO est la simulation dynamique des séquences d'usinage.

IV-50
Figure IV-6 : Vérification dynamique des trajectoires en 3D [Computervision Corp.]
La visualisation des trajectoires de l'outil ne permet pas toujours de voir la forme finale
usinée surtout dans le cas des géométries complexes (cf. Figure IV-7). Sur certains systèmes
FAO, un modèle solide peut être utilisé pour générer un rendu réaliste de la pièce brute, de
l'outil et de la pièce finie. Une simulation en temps réel du processus d'usinage peut être
visualisée sur l'écran graphique. Un exemple de telle fonctionnalité est montré dans la figure
suivante.

Figure IV-7 : Simulation en temps réel avec rendu réaliste


Une fois toutes les séquences créées, l'utilisateur doit relier ces séquences. Cette opération
consiste à ajouter des mouvements pour avoir un processus continu. Ces mouvements sont

IV-51
nécessaires pour que l'outil puisse se déplacer d'une séquence à l'autre de sorte que l'on
obtienne le processus complet pour la réalisation de l'ensemble des formes définies de la
pièce.
A ce niveau l'utilisateur peut générer la totalité du CLfile ou du programme APT. La
dernière étape consiste à générer le programme CN au moyen du postprocesseur.

IV.3.3 Postprocesseur
Le rôle du postprocesseur consiste à traduire, en fonction du type du contrôleur de la
machine-outil à commande numérique, le CLfile ou le programme APT pour générer le
programme CN. Ce programme est ensuite téléchargé dans la mémoire de la CND ou de la
CNC de la machine-outil.
Dans un atelier équipé de plusieurs machines-outils à commande numérique, il n'est pas
rare d'avoir des contrôleurs de MOCN différents. Pour cela un système FAO doit disposer
d'autant de postprocesseurs que de contrôleurs différents.

Processeur
PostProcesseur MOCN

PostProcesseur 1

PostProcesseur . . .

Programme APT PostProcesseur n Programme CN


ou CLfile Générer le
programme CN
pour le contrôleur n

Utilisateur

Figure IV-8 : Postprocesseur

IV-52
INTRODUCTION À LA GAMME AUTOMATIQUE

IV-53
V. Introduction à la Gamme Automatique

V.1 Gamme de Fabrication


Actuellement, la plupart des étapes de la génération de la gamme de fabrication dans les
industries manufacturières sont soit manuel soit semi-automatique. Dans ce qui suit, nous
allons décrire les activités dans la génération des gamme de fabrication. Générer une gamme
de fabrication consiste à traduire les données du dessin de définition en un ensemble
d'instruction pour réaliser le produit. Le gammiste utilise les informations présentées par le
bureau d'étude (BE) et les nomenclature comme données d'entrée "Input" en vue de générer
la gamme de fabrication. La gamme peut contenir des informations plus ou moins détaillées.
Dans certaines conditions et quand l'opérateur de la machine possède une grande expérience,
la gamme peut ne contenir que des informations relativement simples et peu détaillées. Et
c'est à l'opérateur de la machine de développer en détail la gamme de fabrication. Dans
d'autres conditions, la gamme de fabrication est développée en détail, étape par étape avant
d'être envoyé à l'opérateur. Ces deux exemples sont des cas extrêmes. Le deuxième cas
représente la manière normale de travail.
Pour élaborer une gamme de fabrication, les connaissances suivantes doivent être
maîtrisées par le gammiste :
• Habilité à interpréter les dessin de
définition issu du BE.
• Connaissance des processus et des
pratiques de fabrication.
• Connaissance des outils et des bridages.
• Connaissance de la manière de
déterminer les paramètres de coupe.
• Connaissance de la manière de calculer
les temps et les coûts.
• Connaissance du brut.
• Connaissances des coûts relatifs des
processus, des outillages et de la matière
première.
Avec tous ces prérequis, le gammiste
peut déterminer les différentes étapes de la Figure V-1 : Fonctions de la gamme de
gamme de fabrication. Ces étapes sont fabrication
illustrées dans la figure suivante :

V-54
Pour avoir et maîtriser l'ensemble des connaissances nécessaires à la génération de la
gamme de fabrication, le gammiste doit avoir une longue expérience dans l'entreprise et une
certaine dextérité.
La gamme de fabrication préparée manuellement reflète les préférences et l'expérience du
gammiste et donc elle ne peut être que subjective. Par conséquent, pour une même pièce, les
gammes de fabrication solutions peuvent varier d'un gammiste à un autre. Aussi, une pièce
qui a été réalisée auparavant peut avoir une gamme différente si le gammiste ne s'aperçois
pas qu'il a déjà réaliser la pièce ou s'il ne trouve pas l'ancienne gamme. D'autre part, la
génération manuelle de la gamme de fabrication complète avec la rédaction de tous les
documents peut être une tâche longue et fastidieuse qui consomme beaucoup de temps et
d'énergie et donc très coûteuse.
A part ces inconvénients, la préparation manuelle de la gamme de fabrication pose un
problème majeur à l'entreprise puisque les connaissances ou l'expérience acquise durant de
longue années ne sont pas formalisées au seins de l'entreprise, mais elle sont propres aux
personnes qui les détiennent.
Ainsi, ce type de solution ne peut être appliqué que dans de petite entreprise où le nombre
de gamme de fabrication à préparer est faible. Par contre, quand le volume des gammes à
préparer augmente, l'entreprise doit s'orienter vers une solution assistée. L'ordinateur peut
alors donner une aide au gammiste dans certaines étapes de la génération de la gamme de
fabrication.

V.2 Automatisation de la Gamme de Fabrication


Les premiers essais d'automatisation de la gamme de fabrication consistaient à fournir, au
moyen de l'ordinateur, une aide à la gestion des gammes (rédaction de rapport, stockage,
retrait). Il s'agit d'une base de données avec un éditeur de gamme. L'utilisateur introduit les
données nécessaires et le système formate les gammes automatiquement. Le stockage et le
retrait des gammes sont basés sur le numéro de la pièce, son nom ou un identificateur du
projet. Ce système d'assistance à la génération de la gamme de fabrication, quand il est
exploité efficacement peut économiser jusqu'à 40% du temps de génération de la gamme. Ce
type de système ne permet pas d'effectuer des tâches propres à la gamme de fabrication
("intelligente") mais plutôt des opérations de recherche de calcul ou d'écriture.
Les développements récents dans le domaine de la gamme de fabrication automatique ont
eu pour objectifs d'éliminer l'intervention du gammiste dans toutes les étapes de la
génération de la gamme de fabrication. Aujourd'hui, ceci n'est pas encore le cas, et on se
contentera de parler de gamme assistée plutôt que gamme automatique. Dans le cas le
système de génération assistée de gamme de fabrication peut aider le gammiste à la prise de
décision lors de l'élaboration de la gamme. Parmi les avantages d'un tel système on peut citer
les suivants :
• Réduction du temps d'élaboration de la gammes et du temps de la fabrication.
• Réduction des coûts de la gamme et de la fabrication.

V-55
• Génération de gammes plus précises et relativement standards.
• Augmentation de la productivité.
• Réduction de la qualification et de l'expertise du gammiste.

La génération assistée de gamme de fabrication peut se faire selon deux approches : par
variante et générative. Dans l'approche par variante, on utilise une librairie de procédures qui
permettent de trouver une gamme standard pour des pièces similaires. La gamme standard
est créée manuellement par le gammiste. L'approche générative est considérée comme plus
avancée et plus difficile à développer. Dans un système de génération automatique de
gamme de fabrication utilisant l'approche générative, les gammes solutions sont générées
automatiquement pour une nouvelle pièce et sans faire référence aux gammes existantes.

V.2.1 Approche Générative


L'approche générative consiste à synthétiser les informations relatives aux gammes dans
le but de générer automatiquement une gamme de fabrication pour une nouvelle pièce. Le
système utilisant l'approche générative crée une gamme à partir des informations dans la
base de données de fabrication sans intervention humaine. A la réception du modèle de
pièce, le système peut générer les opérations et les séquences d'opérations nécessaires pour
cette pièce. Les connaissances relatives à la fabrication doivent être formalisées et codées.
Par application d'une logique de décision, le comportement de prise de décision du gammiste
peut être imité.
D'autres fonctionnalités liées à la gamme de fabrication telles que le choix de la machine,
des outils et l'optimisation des processus de fabrication peuvent être automatisés par
l'utilisation des techniques génératives. Ces techniques possèdent de nombreux avantages
parmi lesquelles :
• Possibilité de générer des gammes de fabrication rapidement
• Une nouvelle pièce peut être traitée aussi facilement qu'une pièce existante.
• Peut être interfacé avec un système de FAO pour exploiter les données générées.

Les décisions concernant le choix des processus de fabrication, leur ordonnancement, etc.
doivent être fait par le système. Cependant, transformer les données relatives à la fabrication
des pièces dans un format exploitable par l'ordinateur reste un obstacle majeur à franchir
avant que l'approche générative puisse être opérationnelle. Le succès de l'implantation de
cette approche nécessite le développement des points suivants :
• Les connaissance relatives à la fabrication doivent être identifiées.
• La pièce à réaliser doit être définie clairement dans le système informatique (modèle
volumique par exemple).
• Les connaissances relatives à la fabrication et la description de la pièce doivent être
définies dans une base de données unifiée.

V-56
Dans l'approche générative, la logique de décision est le coeur du système logiciel. C'est
elle qui contrôle le déroulement du programme. La logique de décision détermine comment
un processus est choisi. Sa fonction principale consiste à relier les fonctionnalités de la
gamme avec les spécifications de la pièce. Les fonctionnalités de la gamme sont décrites par
des expressions du type "Si … alors …". Ce type d'expression est traduit en instructions
logicielles.
Plusieurs méthodes peuvent être utilisées pour décrire la structure de décision d'une
gamme de fabrication. La méthode de représentation des connaissances est reliée
directement à la logique de décision au sein des systèmes logiciels. Les données statiques
constituent la représentation des connaissances et l'utilisation dynamique de ces données
constitue la logique de décision. Parmi les logiques de décision utilisées dans la génération
assistée des gammes de fabrication on peut citer les suivant :
• Arbres de décision.
• Table de décision.
• Intelligence Artificielle ou Base de Connaissance.

V.2.2 Arbre de Décision


L'arbre de décision est une manière naturelle pour représenter les informations de la
gamme de fabrication. Les conditions (Si) sont placées sur les branches de l'arbre et les
actions prédéterminées peuvent se trouver sur les jonctions de chaque branche. La racine
"Root" correspond au nœud de départ et chaque branche correspond au nœud décision.
Quand un arbre de décision est implémenté sous forme de programme informatique, l'arbre
peut être directement traduit en un algorithme. Des langages tels que Fortran, Pascal ou C
peuvent être utilisés pour ce type de logique de décision.

Figure V-2 : Arbre de décision

V-57
V.2.2.1 Table de Décision
Les tables de décision étaient pendant longtemps utilisées pour représenter des données
d'ingénierie complexes. Elles peuvent aussi être implémentées facilement sous forme de
programmes informatiques. Cependant, elles nécessitent le développement d'un programme
supplémentaire qui joue le rôle d'un préprocesseur pour implémenter les tables et contrôler
les opérations de ces tables. Ce programme est généralement appelé langage de table de
décision.

Figure V-3 : Table de décision pour le choix des machines en tournage

V.2.2.2 Intelligence Artificielle et Base de Connaissances


L'approche par intelligence artificielle (IA) consiste à extraire les connaissances d'un
"gammiste expérimenté", les classer, les raffiner et les formaliser. Dans un système de
génération assistée de gamme de fabrication à base de connaissances, l'ordinateur est utilisé
pour simuler le processus de décision du gammiste. Ce dernier utilise ses connaissances, son
expérience et son inférence pour développer une gamme de fabrication. L'ordinateur fait, en
quelque sorte, les mêmes fonctions par l'utilisation de la base de connaissances. Dans un
système à base de connaissances deux problèmes majeurs doivent être résolus : la
représentation des connaissances et le mécanisme d'inférence. La représentation des
connaissances est le schéma par lequel le problème peut être représenté de sorte que
l'ordinateur puisse manipuler les informations. Le mécanisme d'inférence est la manière avec
laquelle l'ordinateur peut trouver la solution. Le tableau suivant présente quelques systèmes
de génération assistée de gamme de fabrication.

V-58
Figure V-4 : Quelques systèmes de génération assistée de gamme de fabrication

V.2.3 Approche par Variante


L'approche par variante utilise les similarités des pièces pour extraire une gamme
existante. La gamme qui peut être utilisée par une famille de pièce est appelée gamme
standard. La gamme standard est stocké dans la base de données et identifiée par un numéro
de famille. Quand une gamme standard est extraite, un certain nombre de modifications doit
être fait pour pouvoir utiliser la gamme ainsi modifiée pour une nouvelle pièce. La méthode
d'extraction et la logique de l'approche par variante sont établies lors de la classification des
pièces en famille. Des méthodes de fabrication communes sont identifiées pour chaque
famille. De telles méthodes sont représentées par des gammes standards. Généralement,
l'approche par variante a deux phases : la phase préparatoire et la phase productive.

V.2.3.1 Phase Préparatoire


Cette phase est nécessaire seulement quand l'entreprise veut implémenter l'approche par
variante pour la première fois. Durant cette phase, les pièces déjà réalisées dans l'entreprise
doivent être codées, classifiées et groupées en famille. Ensuite, un codage approprié doit être
choisi. Le système de codage doit être non ambigu et doit couvrir l'ensemble des pièces
fabriquées dans l'entreprise. Ainsi, si plusieurs personnes sont impliquées dans le codage, ils
doivent générer un code identique pour la même pièce.
Une fois le codage terminé, les familles de pièces peuvent être formées. Ce travail peut
être réalisé en utilisant les techniques de la technologie de groupe (TG). Elles consistent à
grouper des pièces en famille. Une matrice est alors construite pour chaque famille de pièce.
Vu le nombre important de pièces, l'ordinateur doit être utilisé à ce niveau. L'étape qui suit
consiste à préparer une gamme standard pour chaque famille.
La phase préparatoire dans l'approche par variante est très laborieuse et requiert beaucoup
de temps et d'effort. Le système logiciel utilisé pour aider le gammiste à faire ce travail peut

V-59
être utilisé dans plusieurs entreprises. Cependant, tout le travail préparatoire ne pourra pas
être exploité pour une autre entreprise.

Figure V-5 : Phase préparatoire

V.2.3.2 Phase Productive


La phase productive peut être opérationnelle quand la phase préparatoire a abouti. Une
nouvelle pièce peut alors être traitée. Elle est tout d'abord codée, ensuite, ce code peut être
utilisé pour trouver la famille auquel la pièce appartient. L'identification de la famille permet
d'extraire la gamme standard de cette pièce. Le gammiste peut alors la modifier pour qu'elle
soit exploitée pour réaliser la nouvelle pièce.

Figure V-6 : Phase productive

V.2.4 Technologie de groupe


La technologie de groupe (TG) est une technique avec laquelle des pièces qui se
ressemble sont identifiées et groupées pour tirer profit de leur similarité en conception et en
fabrication. Les pièces similaires sont arrangées en famille. Chaque famille possède des

V-60
caractéristiques similaires en conception et en fabrication. De cette manière le processus de
fabrication d'une pièce est similaire, ce qui résulte en une meilleure efficacité en fabrication.
Les avantages du groupement des pièces en familles peuvent être aussi exploitable dans la
conception lors du développement d'un nouveau produit. Le concepteur peut le concevoir en
retirant un design existant et en effectuant le changement requis par le nouveau produit.
Les problèmes majeurs de la méthode de la technologie de groupe consistent à trouver
rapidement le produit similaire à celui qu'on veut concevoir ou fabriquer. Si dans une
entreprise le nombre de pièces traitées est important et on ne dispose pas d'une manière
systématique pour trouver la pièce similaire, on ne pourra pas tirer profit de la TG. Dans ce
cas, il est nécessaire d'avoir une manière systématique de classer et de coder les pièces. Cet
aspect d'identification de la pièce similaire constitue une des fonctionnalités de la TG. La
classification et la codification des pièces est basé sur le concept de famille de pièces.

V.2.4.1 Famille de pièce


Une famille de pièce est un ensemble de pièces ayant des similarités du point de vue
géométrique et dimensionnelle ou des similarités dans le processus de fabrication. Au seins
d'une même famille les pièces sont différentes mais leurs similarités sont suffisamment
proches pour être identifiées comme membre de la même famille de pièces.
Les deux figures suivantes montre deux familles de pièces. Dans la première figure les
deux pièces sont similaires du point de vue design mais différentes du point de vue
fabrication. Dans la deuxième figure les pièces peuvent constituer une même famille du
point de vue fabrication mais leurs caractéristiques géométriques ne les permettent pas de
former une même famille de pièces du point de vue design.

Figure V-7 : Point de vue Conception Point de vue Fabrication

V.2.4.2 Classification et Codification


La méthode de groupement des pièces en famille nécessite un examen des attributs de
conception et de fabrication de chaque pièce. Les attributs d'une pièce sont identifiés d'une

V-61
manière unique au moyen d'un code. La classification et le codage peuvent être établis sur
toute la liste des pièces de l'entreprise ou sur un échantillon seulement. Dans ce dernier cas,
l'échantillon de pièces peut ne pas être représentatif de toute la population. Cependant, ce
risque peut être admissible vu l'ampleur de la tâche de codification de toutes les pièces de
l'entreprise.
De nombreux systèmes de classification et de codage ont été développés, et plusieurs
solutions commercialisées ont été vendues aux industries concernées. Cependant, aucune de
ces solutions n'a été adoptée universellement. Une des raisons est que la solution doit être
spécifique à une entreprise. Un système peut être bien adapté à une entreprise mais pas à une
autre. Parmi les systèmes de classification et de codification les plus connus sont : OPITZ,
MICLASS et CODE.
Les deux figures suivantes illustrent la structure de classification et de codification des
systèmes Opitz et Code.

Figure V-8 : Système OPITZ pour les pièces de révolution

V-62
Figure V-9 : Système CODE

V.3 Intégration de la Gamme Assistée dans un Système de FAO

V.3.1 Introduction
La préparation de la fabrication comporte plusieurs étapes. Une partie seulement de ces
étapes (étapes : H, I, J) est assistée et pris en compte dans des systèmes de FAO. D'autres
étapes (A, B, C, D,...) sont pris en compte dans des systèmes de génération assistée de
gamme de fabrication.

V-63
A B C D

Identification des Choix de la Choix des Ordonnancement


formes à fabriquer machine paramètres de coupe des séquences
• Géométrie pièce
• Brut E F G
Choix de la mise
Choix des processus Choix du bridage et le maintien
en position

• Programme CN H I J
• Dossier fabrication
Choix des séquences Génération des Génération du
...
et des opérations trajectoires d’outil programme CN

Figure V-10 : Etapes de la génération des gammes de fabrication


Comme on l'a précisé auparavant, un système de FAO est concerné par toutes les étapes
de la préparation de la fabrication. Donc, toutes les fonctionnalités d'un système de
génération assistée de gamme de fabrication peuvent faire une partie intégrante d'un système
de FAO. Seulement, l'automatisation des étapes A, B, E, D, F... n'est pas encore mise au
point et beaucoup de développement reste à faire. De nombreux travaux de recherche sont en
cours. Ils s'inscrivent dans le cadre de la Gamme de Fabrication Automatique ou Gamme de
Fabrication Assistée par Ordinateur (CAPP : Computer Aided Process Planning).

V.3.2 Rôle de la CAO dans l'intégration


La plupart des systèmes de gamme de fabrication automatique utilise l'approche par
variante. Parmi les quelques systèmes de génération automatique de gammes de fabrication,
on trouve peu d'entre eux utilisant un système de CAO comme base pour générer les
gammes de fabrication. Le problème qui se pose dans la génération automatique des gammes
de fabrication est la reconnaissance géométrique des formes et la traduction de ces formes en
fonctions capable d'identifier des opérations de fabrication. Le développement future des
systèmes de CAO doit mener à une représentation qui supporte d'autres informations en plus
de la géométrie. Elle doit supporter le point de vue ("intention") du concepteur dans
conception et la fabrication de la pièce. Seulement, la compréhension de la géométrie des
pièces à fabriquer ou à assembler est une tâche très complexe. Il est évident que les
caractéristiques ou entités d'une pièce (Features) sont les éléments essentiels dans la
fabrication ou l'assemblage.
Une entité peut être définie comme un ensemble de surfaces avec des spécifications sur
les liens qui existent entre ces surfaces.
Il existe deux approches pour la représentation d'une pièce sous forme d'un ensemble
d'entités. La première consiste à concevoir la pièce d'une manière classique, c'est à dire sans
se préoccuper de ses caractéristiques relatives à la fabrication ou à l'assemblage, etc.,
ensuite, extraire les entités de la pièce. L'extraction des entités peut se faire à l'aide
d'algorithme de calcul géométrique ou par l'utilisation des techniques de l'IA. La deuxième
approche nécessite une représentation symbolique de l'entité dans la pièce de sorte que la

V-64
pièce reconnaît les entités qu'elle supporte. Cette approche est généralement appelée :
Conception par Entité. La première approche est connue sous le nom de Reconnaissance
d'Entité ou Extraction d'Entité.

Figure V-11 : Exemples d'Entités

V-65
TRAVAUX DIRIGÉS

V-66
VI. Travaux Dirigés

Sujet N° 1 (Usinage 2D)

Soit à usiner la pièce suivante (opération de finition du contour extérieur sur une
surépaisseur de 1 mm). Ecrire le programme APT pour réaliser cette pièce sachant que :
• l’outil utilisé est une fraise de diamètre 16 mm et ayant 4 dents,
Vc = 22 m/min et fz = 0.05 mm/tour.dent,
• distance d’engagement et de dégagement de l’outil par rapport au profil fini est de 8 mm.
N.B. : Pour décrire la géométrie de la pièce utiliser uniquement les formulations données ci-
dessous :
POINT / x, y [,z]
LINE / {XAXIS ou YAXIS} [, décalage]
LINE / ATANGL, θ, INTERC, {XAXIS ou YAXIS}, valeur
LINE / {LEFT ou RIGHT}, TANTO, cercle1,{LEFT ou RIGHT} TANTO, cercle2
CIRCLE / CENTER, point, RADIUS, rayon
CIRCLE / { }, ligne1, { }, ligne2, { }, ligne3
CIRCLE / { }, {LEFT ou RIGHT}, TANTO, cercle, THRU, point, RADIUS, rayon

VI-67
Sujet N° 2 (Usinage 2D)

Soit à usiner la pièce de la figure 1. (finition du contour extérieur sur une surépaisseur de
1 mm). Ecrire le programme APT pour réaliser cette pièce sachant que :
• l’outil utilisé est une fraise deux tailles de diamètre 16 mm et ayant 4 dents,
Vc = 30 m/min et fz = 0.04 mm/tour.dent,
• le point de départ de l'usinage est PtDepa (-40, 85).
N.B. : - Respecter le sens d'usinage indiqué sur la figure.
- Pour décrire la géométrie de la pièce utiliser uniquement les formulations données
ci-dessous :
POINT / x, y [,z]
LINE / {XAXIS ou YAXIS} [, décalage]
LINE / ATANGL, θ, INTERC, {XAXIS ou YAXIS}, valeur
LINE / {LEFT ou RIGHT}, TANTO, cercle1,{LEFT ou RIGHT} TANTO, cercle2
CIRCLE / CENTER, point, RADIUS, rayon
CIRCLE / { }, ligne1, { }, ligne2, { }, ligne3
CIRCLE / { }, ligne1, { }, ligne2, RADIUS, rayon
CIRCLE / { }, {LEFT ou RIGHT}, TANTO, cercle, THRU, point, RADIUS, rayon

57 10

30° R24
1
R1
46
5
R1

64°
30°

94

VI-68
Sujet N° 3 (Usinage 2½ D)

Ecrire le programme APT pour réaliser la finition du contour extérieur de la pièce


suivante (Collecteur). Donner un nom à toutes les entités utilisées dans le programme APT
et représenter ces noms sur le dessin de la pièce. Le point de départ PtDepa a pour
coordonnées (60, 150, 10).
Données :

• Fraise 2T ∅ 16 mm (T2 D2).


Conditions de coupe : Vc = 21 m/min ; f = 0.2 mm/tr.
• Les points d’approche (P App) et de dégagement (P Dég) sont à 18 mm de la pièce.

VI-69
Sujet N° 4 (Usinage 2½ D)

1)
La réalisation d'une came (cf. figure suivante) nécessite une opération d'usinage en
finition du contour et alésage en finition du trou.
On donne les valeurs de la vitesse de coupe et la vitesse d’avance des outils :
- Fraise de diamètre 18 mm (T1 D1) - Alésoir de diamètre 24 mm (T2 D2)
Vc1 = 82 m/min f1 = 0.1 mm/tr. Vc2 = 45 m/min f2 = 0.08 mm/tr.

OP

Ecrivez le programme APT pour réaliser cette pièce. Donner un nom à toutes les entités
utilisées dans le programme APT et représenter ces noms sur le dessin de la pièce. Le point
de départ PtDepa a pour coordonnées (60, 150, 10).

2°)
Répondre brièvement aux questions suivantes :
a) Quel rôle peut jouer un système de FAO dans une entreprise manufacturière ?
b) Quel est le rôle d’un post processeur FAO ?
c) Y a t il une différence entre un postprocesseur FAO et un postprocesseur APT ?

VI-70
Sujet N° 5 (Usinage 2½ D)

Soit à usiner la pièce suivante (opération de finition du contour extérieur sur une
surépaisseur de 0.5 mm et opération d’usinage de la rainure).
Ecrire le programme APT pour réaliser cette pièce sachant que :
• L’outil utilisé pour le contour est une fraise de diamètre 20 mm et ayant 8 dents,
T1D1 : Vc = 25 m/min et fz = 0.02 mm/tour.dent,
• L’outil utilisé pour la rainure est une fraise de diamètre 16 mm et ayant 4 dents,
T2D2 : Vc = 22 m/min et fz = 0.03 mm/tour.dent, profondeur de passe = 3 mm.
• La distance d’engagement et de dégagement par rapport au profil fini est de 5 mm.
• Le point de départ PTDEPA a pour cordonnées (80 150 30).

OP
OP

VI-71
Sujet N° 5 (Usinage 2½ D – Calcul et paramétrage)

Soit à usiner trois variantes de pièces de la figure suivante (opération de finition sur une
surépaisseur de 0.5 mm et centrage-perçage du trou).
Données :
• Fraise 2T de diamètre 12 mm : (T5D5) Vc = 25 m/min Va = 88 mm/min.
• Forêt à centrer de diamètre 5 mm : (T6D6) Vc = 18 m/min f = 0.1 mm/tr.
• Forêt de diamètre 10 mm : (T8 D8) Vc = 22 m/min f = 0.12 mm/tr.
• Le point d’approche (Pt App) est à 4 mm du contour fini de la pièce.
• Le point de dégagement (Pt Dég) est à 3 mm du contour fini de la pièce.
• Le point de départ PTDEPA a pour cordonnées (-20 150 50).
Ecrivez le programme APT pour réaliser le contour (outil à droite du profil) et le
centrage-perçage.

Famille L2 L3 L4
I 8 20 25
II 10 22 24
III 12 20 26

OP OP

VI-72
Sujet N° 6 (Usinage 2D - Test et Macro)

a) Donner le nombre de possibilités pour représenter un cercle de rayon connu et tangent à


deux autres cercles. Illustrer votre réponse par un schéma.
b) Ecrire le programme APT pour la demi finition et la finition du contour extérieur de la
pièce figure 1, sachant que :
• Le point de départ de l'usinage est PtDepa (100 , 150).
• Surépaisseur pour la finition est égal à 1mm.
• L’outil utilisé est une fraise deux tailles de diamètre 16 mm.
Vc = 24 m/min et f = 0.3 mm/tour.
• Distance d’approche et de dégagement égal à 8 mm.

OP

Figure 1 :

N.B. Respecter le sens d'usinage indiqué sur la figure 1.


Pour décrire la géométrie de la pièce utiliser uniquement les formulations ci-dessous :
POINT / x, y [,z]
LINE / {XAXIS ou YAXIS} [, décalage]
CIRCLE / CENTER, point, RADIUS, rayon
CIRCLE / CENTER, point, {LARGE ou SMALL}, TANTO, cercle
CIRCLE / { } , {IN ou OUT} , cercle1 , {IN ou OUT} , cercle2 , RADIUS , rayon

VI-73
Sujet N° 7 (Usinage 2½ D - CLfile)

a)
Ecrivez le programme APT pour la finition du contour extérieur d’un poinçon pour clefs à
molette, sachant que :
• Le point de départ de l'usinage est PtDepa (60 , 150 , 30).
• L’outil utilisé est une fraise de diamètre 20 mm et ayant 8 dents,
Vc = 24 m/min et fz = 0.03 mm/tour.dent,
• Les distances d’approche et de dégagement sont de 28 mm.

b)
Complétez sur la feuille les mots mineurs des lignes 6, 8, 9, 11, 13, 15, 16, 17 et 19 du
fichier CLFile de la pièce figure 1 :

1 $$* Pro/CLfile Version 20.0 - 9937


2 PARTNO / Clef à Molette
3 $$ → FEATNO / 47
4 MACHIN / UNCX01 , 05
5 UNITS / MM
6 CUTTER / ..............................

VI-74
7 LOADTL / 1 $$ → FRAISE-CONTOUR-D20
8 SPINDL / …………………… $$ ………………….
9 COOLNT / …………………..
10 RAPID
11 GOTO / .......………………… $$ Point de départ
12 RAPID
13 GOTO / .......………………… $$ Verticale Point d’approche
14 RAPID
15 ................................................ $$ Point d’approche
16 FEDRAT / ……………………. $$ ....................................
17 GOTO / ……………………… $$ Début d’usinage Point 1
18 CIRCLE / 0 , 0 , -5 , 0 , 0 , 1 , 30
19 GOTO / .................................... $$ Point 2
• • •

-----------------------------------------------------------------------------------------------------------------------
N.B. :
- Respecter le sens d'usinage indiqué sur la figure 1.
- Pour décrire la géométrie de la pièce utiliser uniquement les formulations données ci-
dessous :
POINT / x, y [,z]
LINE / {XAXIS ou YAXIS} [, décalage]
LINE / point, ATANGL, θ , {[XAXIS] ou YAXIS}
LINE / {LEFT ou RIGHT}, TANTO, cercle1,{LEFT ou RIGHT} TANTO, cercle2
LINE / { }, TANTO, cercle, ATANGL, θ
CIRCLE / CENTER, point, RADIUS, rayon
CIRCLE / { }, ligne, { }, {IN ou OUT}, cercle, RADIUS, rayon
CIRCLE / CENTER, point, {LARGE ou SMALL}, TANTO, cercle
CIRCLE / { }, ligne1, { }, ligne2, RADIUS, rayon

VI-75
UNIVERSITE DE TUNIS I EXAMEN
INSTITUT SUPERIEUR DE L’EDUCATION
ET DE LA FORMATION CONTINUE
Mars 2003 Epreuve : FAO – Commande Numérique
Module : GM 213 Durée : 2H
Proposée par : BEN YOUNES J. Documents autorisés
Il sera tenu compte de la présentation Bon courage

1°) { 10 points }
On veut usiner en finition le contour extérieur du poinçon de la figure suivante, sachant que :
• Le point de départ de l'usinage est PtDepa (180 , 60 , 40).
• L’outil utilisé est une fraise de diamètre 16 mm et ayant 4 dents,
• Vc = 24 m/min et fz = 0.03 mm/dent
Ecrivez le programme APT pour l’usinage en finition du poinçon

2°) { 10 points }
a) Complétez le programme APT suivant.
b) Représentez sur un papier millimétré les entités géométriques et le contour usiné.
c) Précisez le mode d’usinage (avalant ou opposition).
d) Ecrivez la partie relative aux déplacements du programme APT pour l’usinage du
même contour mais en mode opposé à celui du programme initiale.

VI-76
$$ DEBUT DU PROGRAMME SOURCE
…………/……….
…………/……….
…………/……….
…………/……….
…………/……….
$$ DEFINITION DE LA GEOMETRIE
PTDEPA = POINT / 200 , 230
P0 = POINT / 0 , 0
P1 = POINT / -75 , -40
P2 = POINT / -214 , 0
LX = LINE / XAXIS
LY = LINE / YAXIS
L0 = LINE / YAXIS , 148
L1 = LINE / XAXIS , -23
L3 = LINE / P0 , ATANGL , 106
C2 = CIRCLE / CENTER , P1 , RADIUS , 101
C3 = CIRCLE / CENTER , P0 , LARGE , TANTO , C2
C1 = CIRCLE / YSMALL , L1 , XLARGE , OUT , C2 , RADIUS , 30
L2 = LINE / P2 , LEFT , TANTO , C3
C5 = CIRCLE / CENTER , P0 ,RADIUS , 148
C4 = CIRCLE / XLARGE , L2 , XSMALL , L3 , RADIUS , 24
L4 = LINE / LEFT , TANTO , C4 , LEFT , TANTO , C5
$$ OUTIL ET CONDITIONS DE COUPE
CUTTER / 18
………… / 2 , OSETNO , 2
………… / 0.32 , MMPR
………… / 495 , RPM , CLW
………… / ON
$$ DEPLACEMENTS
RAPID ; GOTO / PTDEPA
RAPID ; GO / TO , L0 , PAST , L1
GORGT / L1 , TANTO , C1
GOFWD / C1 , TANTO , C2
GOFWD / C2 , TANTO , C3
GOFWD / C3 , TANTO , L2
GOFWD / L2 , TANTO , C4
GOFWD / C4 , TANTO , L4
GOFWD / L4 , TANTO , C5
GOFWD / C5 , TANTO , L0
GOFWD / L0 , PAST , L1
RAPID ; GOTO / PTDEPA
…………/……….
…………/……….
………………….
………………….

VI-77
ANNEXE

VI-78
VII. Annexe
DEFINITION DE LA GEOMETRIE
Définition des Points
Par ses coordonnées y
P2

POINT / x, y [,z]
x
P1 = POINT / 3, 2
P2 = POINT / 0, 0, 1 z P2

Par intersection de deux lignes y


P1 L2

POINT / INTOF, ligne1, ligne2

P1 = POINT / INTOF, L1, L2 L1

Par intersection d’une ligne et d’un cercle y


L1 P1
C1
POINT / { }, INTOF, ligne, cercle

P1 = POINT / YLARGE, INTOF, L1, C1

Par le centre d’un cercle y


C1

POINT / CENTER, cercle P1

P1 = POINT / CENTER, C1

Par intersection de deux cercles y

POINT / { }, INTOF, cercle1, cercle2 C2 P1

P1 = POINT / YLARGE, INTOF, C1, C2


P2 C1
P2 = POINT / XSMALL, INTOF, C1, C2

Par rapport à un point à un rayon et à un angle y P1


15
POINT / point, RADIUS, rayon, ATANGL, θ 43°

P0
P1 = POINT / P0, RADIUS, 15, ATANGL, 43

VII-79
Définition des lignes

Comme axe ou ligne parallèle LY

LINE / {XAXIS ou YAXIS} [, décalage] 4 L1

LX = LINE / XAXIS
LY = LINE / YAXIS LX
L1 = LINE / XAXIS, 4
Entre deux points y

LINE / point1, point2 P1

L1 = LINE / P1, P2 P2 L1

Par un angle et une valeur sur l’axe X ou Y y


L1
10
LINE / ATANGL, θ, INTERC, {XAXIS ou YAXIS}, valeur

L1 = LINE / ATANGL, 30, INTERC, XAXIS, 2


30°
L2 = LINE / ATANGL, 45, INTERC, YAXIS, 10 45°

Par un point et une ligne parallèle ou perpendiculaire y


L2
P1
L1 P2
LINE / point, {PARLEL ou PERPTO}, ligne

L1 = LINE / P1, PARLEL, L0


L0
L2 = LINE / P2, PERPTO, L0
x

Par un point et un angle par rapport à l’un des axes y

L1
LINE / point, ATANGL, θ,{[XAXIS] ou YAXIS} -50°
L2
P1
L1 = LINE / P1, ATANGL, -50, YAXIS ou P2
L1 = LINE / P1, ATANGL, 40 30° 40°
L2 = LINE / P2, ATANGL, 30, XAXIS
x

VII-80
Par un point et un angle par rapport à une ligne y
L1
-43°
LINE / point, ATANGL, θ, ligne
L2
L2 = LINE / P1, ATANGL, -43, L1 P1

Par une ligne parallèle à une distance y

LINE / PARLEL, ligne, { }, distance L1


5

L2 = LINE / PARLEL, L1, YSMALL, 5


L2

Par un point et tangente à un cercle y


L2
LINE / point, {LEFT ou RIGHT}, TANTO, cercle
P1 C1
L1 = LINE / P1, RIGHT, TANTO, C1
L2 = LINE / P1, LEFT, TANTO, C1 L1
x

Tangente à un cercle et à un angle par rapport à l’axe X y

LINE / { }, TANTO, cercle, ATANGL, θ C1 L1

L1 = LINE / YSMALL, TANTO, C1, ATANGL, 30


30°

Tangente à un cercle et à un angle par rapport à une ligne y L2

LINE / ATANGL, θ, ligne, TANTO, cercle, { }


C1
L2 = LINE / ATANGL, 40, L1, TANTO, C1, YSMALL
40°
L1
x

VII-81
Tangente à deux cercles
y C2
 LEFT   LEFT  L1
LINE /   , TANTO, cercle1,   , TANTO, cercle2
 RIGHT   RIGHT 
L2
L1 = LINE / LEFT, TANTO, C1, LEFT, TANTO, C2
L2 = LINE / LEFT, TANTO, C1, RIGHT, TANTO, C2 L3
C1
L3 = LINE / RIGHT, TANTO, C1, LEFT, TANTO, C2 x

Définition des Cercles

Par son centre et son rayon y

10
CIRCLE / CENTER, point, RADIUS, rayon
P1
C1 = CIRCLE / CENTER, P1, RADIUS, 10 C1

Par son centre et un point de la circonférence y


C1
CIRCLE / CENTER, point1, point2
P2
P1
C1 = CIRCLE / CENTER, P1, P2

Par trois points de la circonférence y


P3
CIRCLE / point1, point2, point3
P1
C1 = CIRCLE / P1, P2, P3
C1 P2

VII-82
Par son rayon et deux points de la circonférence y
8
CIRCLE / { }, point1, point2, RADIUS, rayon C2 P1

8
C1 = CIRCLE / XLARGE, P1, P2, RADIUS, 8
P2
C2 = CIRCLE / YLARGE, P1, P2, RADIUS, 8

C1

Par son centre et une ligne tangente y


C1
CIRCLE / CENTER, point, TANTO, ligne L1
P1
C1 = CIRCLE / CENTER, P1, TANTO, L1

Par son rayon et deux lignes tangentes


L2
L1
CIRCLE / { }, ligne1, { }, ligne2, RADIUS, rayon
10
5
C1 = CIRCLE / YSMALL, L1, YLARGE, L2, RADIUS, 5
C1 C2
C2 = CIRCLE / YLARGE, L1, XLARGE, L2, RADIUS, 10

Comme tangent à trois lignes L2


y

CIRCLE / { }, ligne1, { }, ligne2, { }, ligne3 L3 C1

C1 = CIRCLE / YLARGE, L1, YSMALL, L2, YLARGE, L3 C2


C2 = CIRCLE / YSMALL, L1, YSMALL, L2, YLARGE, L3

L1

VII-83
Par son rayon, une ligne tangente et un point de la y
C2
circonférence
11

CIRCLE / TANTO, ligne, { }, point, RADIUS, rayon C1


L1
P2
8
C1 = CIRCLE / TANTO, L1, YLARGE, P1, RADIUS, 8
C2 = CIRCLE / TANTO, L1, XLARGE, P2, RADIUS, 11 P1

Par son centre et tangent à un cercle y C1

 LARGE 
CIRCLE / CENTER , point ,   , TANTO , cercle
 SMALL  C3
P1
C2 = CIRCLE / CENTER, P1, SMALL, TANTO, C1 C2 P2
C4 = CIRCLE / CENTER, P2, LARGE, TANTO, C3
C4

Par son rayon, un point de la circonférence et tangent à un y


R5
cercle C2
C3
P1
 LEFT 
CIRCLE / { },   , TANTO, cercle, THRU, point,
 RIGHT 
RADIUS, rayon
C1
C2 = CIRCLE / XSMALL, RIGHT, TANTO, C1, THRU, P1,
RADIUS, 5 x
C3 = CIRCLE / XLARGE, LEFT, TANTO, C1, THRU, P1,
RADIUS, 15
Par son rayon, une ligne tangente et un cercle tangent y
C1 C2
 IN 
CIRCLE / { }, ligne, { },   , cercle, RADIUS, rayon C4
OUT 
C3
C2 = CIRCLE / YLARGE, L1, XLARGE, OUT, C1, RADIUS,
22
C4 = CIRCLE / XLARGE, L1, XSMALL, IN, C3, RADIUS, 7 L1

VII-84
VIII. Références bibliographiques

[U. Rembold 1993] Computer Integrated Manufacturing and Engineering


Addison Wesley, 1993
[Y. Gardon 1991] La CFAO Introduction, Techniques et Mise en Oeuvre
Hermès, 1991
[B. Smith 1988] Initial Graphics Exchange Specifications (IGES)
IGES Version 4.0, 1988
[S. NANUA 1996] Systems Approch to Computer-Integrated Design and Manufacturing
John Wiley, 1996
[R Cameron 1996] Technologie et usinage à commande numérique
Editions Saint-Martin, 1996
[D. Kochan 1985] IFIP : state of the art report
CAM Development in Computer Integrated Manufactruring
Springer-Verlag, 1985
[D. Bedworth 1991] Computer Integrated Design and Manufacturing
McGraw-Hill, 1991
[T. Chang 1998] Compuer Aided Manufacturing
Prentice Hall, 1998
[J. Pusztai 1983] Computer Numerical Control
Reston Publishing Company, 1983
[W. B. Holtz 1991] The CAD Rating Guide
OnWord Press, 1991
[C. Marty 1993] La Pratique de la Commande Numérique des Machines-Outils
Technique et Documentation - Lavoisier, 1993
[C. MacMahon 1993] CADCAM From Principles to Practice
Addison-Wesley 1993
[P. Gely 1997] Cours : Fabrication Assistée par Ordinateur
Ecole de Technologie Supérieure – Université du Québec
[I. Zeid 1991] CAD/CAM Theory and Practice
Mc Graw Hill 1991

VIII-85