République Tunisienne
Ministère de l’Enseignement Supérieur « Commande des systèmes industriels »
et de la Recherche Scientifique
Université de Carthage
Institut Supérieur des Sciences Appliquées et de Technologie
de Mateur N° d’ordre : MP-… **/18
Par
Bilel MECHICHI
J e dédie ce manuscrit
A mes parents Moncef MECHICHI et Nadia MECHICHI qui m’ont supporté pour
arriver à réaliser le rêve d’obtenir mon diplôme. Tous les mots du monde ne sauraient
exprimer l’immense amour et gratitude que je vous porte. Que ce modeste travail soit
l’exaucement de vos vœux, le fruit de vos innombrables sacrifices, bien que je ne vous en
acquitte jamais assez.
A ma chère tante Wassila, que son âme repose en paix.
A ma sœur Rihab, A mon frère Houssem, mes grands-parents et à tous les membres de la
famille.
A mon cher ami Aouini Safouen, qui n’a jamais cessé de m’encourager toutefois que j’ai
besoin d’aide et de conseils.
A ma plus spéciale fiancée Chirine JLIDI de m’avoir soutenu sans cesse et qui m’a
encouragé et m’a dirigé pour être non seulement fier de notre amitié mais plutôt de notre
relation.
Abréviations 9
Introduction générale 10
1 Présentation de société 12
1.1 Présentation du lieu de stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.1.1 Les marchées de FUBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.1.2 Les clients de FUBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.1.3 Les différentes directions de l’entreprise . . . . . . . . . . . . . . . . . . 15
1.1.4 Traitement des projets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2 Domaine de spécialisation de FUBA . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2.1 Définition des circuits imprimés . . . . . . . . . . . . . . . . . . . . . . . 16
1.2.2 Les procédés de fabrication des circuits imprimés . . . . . . . . . . . . . 17
1.2.2.1 Découpage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.2.2.2 Chan freinage . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.2.2.3 L’empilage goupillage . . . . . . . . . . . . . . . . . . . . . . . 18
1.2.2.4 Affutage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.2.2.5 Perçage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.2.2.6 Brossage-Ebavurage . . . . . . . . . . . . . . . . . . . . . . . . 19
1.2.2.7 La chaine chimique . . . . . . . . . . . . . . . . . . . . . . . . 19
1.2.2.8 Photogravure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.2.2.9 Chaine galvanique . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2.2.10 Le stripage résiste . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2.2.11 La gravure alcaline . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2.2.12 Le stripage étain /plomb . . . . . . . . . . . . . . . . . . . . . 21
1.2.2.13 La chaîne à rideaux . . . . . . . . . . . . . . . . . . . . . . . . 21
1.2.2.14 La finition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1
TABLE DES MATIÈRES
1.2.2.15 Emballage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.3 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.4 Cahier de charge : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.4.1 Les logiciels à utiliser : . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.4.2 Les matériels à utiliser : . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2
TABLE DES MATIÈRES
3
3.6 Organigramme de la commande de la machine CNC . . . . . . . . . . . . . . . . 78
5
TABLE DES FIGURES
6
4.10 Assemblage machine MOCN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
4.11 Machine-outil à commande numérique à 3 axes . . . . . . . . . . . . . . . . . . . 92
4.12 Les différents blocs de la machine . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.13 Programme G-code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.14 PCB d’un circuit imprimé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.15 Création d’un logo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.16 Interface usinage de la pièce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.17 Usinage de la pièce par la machine MOCN . . . . . . . . . . . . . . . . . . . . . 100
Liste des tableaux
tique).
Nous avons fixé comme objectif :
• La conception d’une machine-outil à commande numérique assisté par un ordinateur.
• La fabrication mécanique des structures avec des dimensions bien déterminée de la ma-
chine MOCN
• La réalisation d’un prototype.
• L’assemblage de la structure de la machine.
• L’essai de mise en marche et tests de performance du système.
• L’établissement d’un document technique détaillé et clairement expliqué du système.
Ce travail s’articule autour de quatre chapitres et présente une synthèse de l’ensemble des
travaux qui ont été effectués au cours de cette thématique.
— Le premier chapitre présente la société « Fuba Printed Circuit Tunisie SA » ainsi que
la problématique et la solution proposée.
— Le second chapitre s’intéressera à l’étude théorique sur la machine-outil à commande
numérique ainsi les caractéristiques et les modes de commande des moteurs pas à pas.
— Le troisième chapitre sera consacré sur l’étude de la programmation de la machine-
outil à commande numérique ainsi la carte de commande et les logiciels d’interfaçage.
— Le quatrième chapitre présente l’étude de la conception et fabrication de notre ma-
chine assisté par ordinateur (CFAO : Conception Fabrication Assisté par Ordinateur)
ainsi l’assemblage de la machine Finissant par mise en marche et test des performances.
Finalement, on termine notre rapport par une conclusion générale et une bibliographie.
11
Chapitre 1
Présentation de société
Introduction
Notre étude s’inscrit dans le cadre d’un stage au sein d’une société qui porte l’intitulé «
FUBA ». Ce chapitre est consacré à présenter le lieu de stage tout en projetant la lumière sur
son rôle fondamentale dans le domaine de fabrication des circuits imprimé dans le monde des
circuits électroniques.
12
1.1. PRÉSENTATION DU LIEU DE STAGE
— Satisfaction du client
— Amélioration continue de la performance
— Protection de l’environnement
— Recherche de la perfection qui se fait au niveau de chaque strate de l’entreprise dans un
esprit de gestion participative orientée vers :
• Le maintien d’une relation de confiance avec les clients.
• La maitrise des couts.
• La flexibilité vis-à-vis des clients.
• L’information, la formation et la motivation du personnel.
• La prévention de toute forme de pollution engendrées par les activités présentées ou future.
• L’amélioration de la gestion interne et externe des résidus solides.
Fuba Printed Circuits est l’une des plus grandes sociétés en Afrique dont la fabrication des
circuits imprimés, ainsi sur le niveau international grâce aux marchés qu’elle peut pénétrer
notamment :
France, Allemagne, Italie, Suisse, USA, Espagne, Brésil, Mexique, Chine, Portugal, Roumanie,
Irlande, Slovaquie, Pologne, Singapour, Hongrie, Bulgarie, Tchéquie, Argentine et Tunisie.
13
1.1. PRÉSENTATION DU LIEU DE STAGE
La figure ci-dessous nous montre les différents les différentes clientèles du Fuba printed
circuits Tunisie.
14
1.1. PRÉSENTATION DU LIEU DE STAGE
Nous avons procédé à une présentation simplifiée des différentes directions de la société à
l’aide du graphique ci joints.
15
1.2. DOMAINE DE SPÉCIALISATION DE FUBA
La réception d’un projet donné par le client se fait par la section de la vente. Le traitement
de la faisabilité du projet se fait selon l’organigramme suivant :
Chaque projet passe par ces étapes avant de le lancer en production et tout échec dans une
étape provoque le refus du projet.
Composant passif particulier qui sert de support et de liaison entre les différents compo-
sants passifs et actifs spécifiques aux applications et aux fonctions électroniques recherchées. Le
circuit imprimé est constitué de couches de cuivre gravées et métallisées représentant les pistes
de liaison. Les étapes de fabrication d’un circuit imprimé diffèrent selon qu’on a un circuit
simple face, doubles faces ou multicouches. On va décrire ci-dessous les étapes essentielles de
16
1.2. DOMAINE DE SPÉCIALISATION DE FUBA
On dit d’un circuit imprimé qu’il est simple face quand les pistes en cuivre sont présentées
sur un seul côté de support isolant et qu’il est double face quand les pistes se trouvent des deux
côtés du support.
1.2.2.1 Découpage
Cette étape consiste à découper les plaques de stratifie cuivrer (plaques de résine enveloppées
par une couche mince de cuivre) ainsi que les plaques d’aluminium et de bois en des flancs.
17
1.2. DOMAINE DE SPÉCIALISATION DE FUBA
Chanfreiner les flancs c’est-à-dire rendre les bords du flanc plus lisse. Alors pour réaliser
cette étape, on utilise une machine qui assure le bon fonctionnement et ceci par le passage guidé
du flanc pré découpage sur un convoyeur limité des deux coté par deux lames de chanfreineuses
comprises entre 680 à 150mm et 0.7à3.2.
Cette étape consiste à préparer des paquets de perçage. Chaque paquet est formé d’un flanc
cuivré avec une plaque d’entrée en aluminium et un paquet de sortie en bois.
Le nombre des plaques par paquet dépend de l’épaisseur du cuivre, du diamètre minimal de
perçage et aussi de l’épaisseur du stratifié.
1.2.2.4 Affutage
Lors du perçage et détourage des circuits imprimés, les forêts et les fraises sont encrassés
par les résines fondues. Un nettoyage à temps des outils augmente leur durée et améliore la
qualité de perçage et de fraisage. Ce nettoyage est suivi d’un affûtage pour remettre en état les
angles des pointes
1.2.2.5 Perçage
18
1.2. DOMAINE DE SPÉCIALISATION DE FUBA
1.2.2.6 Brossage-Ebavurage
Le cuivre chimique consiste à la métallisation des parois des trous percés, constituée initiale-
ment d’une variété de résine « époxy » et de fibre de verre à caractère isolant, cette disposition
chimique mince (0.3 à 0.5m) est renforcée par la suite par un cuivrage électrolytique.
1.2.2.8 Photogravure
Cette étape consiste à transformer l’image d’un circuit imprimés sur le flanc de fabrication
et ceci en couvrant les surfaces qui ne correspondent pas au circuit par le résiste. Dans cette
chaine les flancs subissent les traitements suivants :
• Brossage à ponce : qui élimine les graisses et tous les résidus chimiques
• Laminage des films secs : Avant d’entrer dans le lamineur, la couche de protection en polyester
doit être enlevée. Le résiste du lamineur est chauffé jusqu’au point de fusion 90C et appliqué sur
les substrats par des rouleaux en caoutchouc préchauffés. L’adhérence à la surface du substrat
est assurée par la pression et la chaleur.
• L’insolation : L’exposition de produit par les rayons ultraviolets qui polymérisent le film sec
et le rendent insoluble dans le développer tandis que la partie non insolée se dissout dans le
19
1.2. DOMAINE DE SPÉCIALISATION DE FUBA
développer.
• Développement : Le film sec photo résiste non insoler se dissout par pulvérisation d’une so-
lution de carbonate de sodium et de l’eau.
Après le traitement galvanique, le « film résiste » doit être strippé par une attaque alcaline
à 50 C et sous pression élevée au moyen d’une solution de potasse.
Les flancs des circuits imprimés subissent d’abord une gravure alcaline pour éliminer le
cuivre n’appartenant pas au circuit (cuivre de base et cuivre chimique) selon la réaction d’am-
photérisassions.
20
1.2. DOMAINE DE SPÉCIALISATION DE FUBA
Ils subissent ensuite un autre traitement pour éliminer le cuivre des zones mal gravées cau-
sées généralement par le retard de gravure sur la face supérieure des flancs. A la sortie du
module de gravure, les flans des circuits imprimés subissent un rinçage avant de passer par le
séchoir. Pour maintenir constante la concentration du cuivre durant cette étape on utilise le
procédé sigma qui se déroule en deux étapes :
• Une étape d’extraction du cuivre de la solution de gravure usée par chélation avec un ligand
organique noté HR selon :
• Une étape de dépôt du cuivre sur les plaques de titane par électrolyse du cuivre complexé
après dissolution dans l’acide sulfurique. Les transformations mises en jeux sont :
Après la gravure alcaline, « le résiste » métallique en étain doit être enlevé par une solution
d’acide nitrique. Le stripage de la couche intermétallique (Cu-Sn) est réalisé par les sels fer
(III).
Au cours de cette étape on procède au recouvrement des flancs par deux couches de vernis
photosensible qui protège les pistes en cuivre contre l’oxydation et les chocs électriques. Ainsi
après un brossage de la surface des flans, on applique le vernis sur les deux faces et on le
polymérise à 75C, ensuite le vernis déposé sur les emplacements en dehors des pistes sera
éliminé par un procédé d’exposition et de développement
1.2.2.14 La finition
Généralement dans l’industrie des circuits imprimés les clients demandent l’une des finitions
suivantes :
•Protection de la surface
Préparation de surface chimique créant une micro rugosité du cuivre afin de permettre une
21
1.2. DOMAINE DE SPÉCIALISATION DE FUBA
• Chaîne Entek
Ce processus permet d’avoir un revêtement des surfaces de cuivre par une matière organique
antioxydant appelée Entek. L’entek permet d’avoir une excellente protection de la soudabilité
du cuivre avec les composants électroniques lors de son chauffage. L’épaisseur de cette couver-
ture est de 0.2 à 0.5 m et elle est déterminée par spectrométrie d’absorption dans l’UV à 270 nm.
• Sérigraphie
La section sérigraphie reçoit des lots de production de plusieurs autres sections, selon les pro-
cédés à traiter. Avant l’impression, il faut s’assurer que la raclette de machine à sérigraphie
est affûtée et que les surfaces cuivrées sont nettoyées et séchées. Une fois l’impression est faite,
les flancs passent au séchage dans un four ultraviolet pour être enfin distribués aux différentes
22
1.2. DOMAINE DE SPÉCIALISATION DE FUBA
sections.
• Nettoyage final
Après le détourage, effectué à la section perçage, et avant le test électrique et le contrôle final,
les circuits imprimés doivent être nettoyés. Dans la première partie du module de nettoyage,
les circuits subissent un nettoyage à haute pression avec de l’eau déminéralisée chaude afin
d’éliminer les poussières et les graisses qui figurent dans les circuits. Dans la deuxième partie
s’effectue un nettoyage à basse pression. Une fois ceci est fait, les circuits subissent un séchage.
• Test électrique
Le circuit subit un test électrique afin de s’assurer de son bon fonctionnement en détectant
les coupures de pistes et court-circuit. Le test électrique est effectué par des testeurs program-
mables « circuit Line ».
• Contrôle final
Il s’agit de la dernière étape avant expédition au client. Ce contrôle permet de vérifier l’ensemble
du produit
23
1.3. PROBLÉMATIQUE
1.2.2.15 Emballage
Une fois le contrôle est terminé, les circuits passent directement à l’emballage, afin de trans-
porter au client.
1.3 Problématique
L’utilisation des machines-outils à commande numérique (MOCN) et des logiciels de concep-
tion et de fabrication assistées par ordinateur (CAO 1 FAO) est devenue omniprésente dans le
domaine de la fabrication.
Dans notre étude, on a essayé de rassembler les différents éléments qui constituent une machine
à commande numérique.
Nous avons la partie électronique qui constitue l’interface de commande entre l’utilisateur et
la machine, elle permet à l’utilisateur de transmettre des commandes simples à la machine et
ceci via une interface
La partie électronique, sur laquelle se base notre étude, transforme les commandes envoyées par
l’utilisateur en impulsion électrique dans le but de faire tourner des moteurs (dans notre cas,
des moteurs pas à pas) qui produiront à leurs tour des mouvements mécanique de translation
dans différentes directions.
Notre étude va se baser essentiellement sur la partie électronique. Il y a tout d’abord l’inter-
face Homme-Machine, celle-ci permet à l’utilisateur d’effectuer des commandes via un logiciel
qu’on est mis au point à l’aide d’un langage de programmation évolué (C et code-G) Ce logiciel
transmet des données à la carte de commande via l’interface.
La carte électronique est pilotée par une carte arduino qui assure la conversion des commandes
24
1.4. CAHIER DE CHARGE :
envoyées par l’utilisateur en signaux électriques permettant de faire tourner les moteurs pas à
pas des différents axes de la machine par intermédiaire d’une autre carte dite carte de puis-
sance(Tb6560) .
Pour la partie mécanique, on a essayé de la mettre au point du mieux qu’on a pu, et ceci afin de
montrer le fonctionnement d’une machine à commande numérique même si elle ne rentre pas
dans le domaine de notre spécialité et qu’elle relève du domaine des applications mécaniques.
Dans le cadre de l’usinage sur une machine-outil 3 axes, ce rapport a pour but de résoudre deux
problématiques présentées ci-après :
Comment passer du monde numérique à la réalisation physique sur une machine-
outil industrielle ? : c’est-à-dire comment nous allons traduire tout ce que à vue comme
théorique et pratique sur le plan réel de travail et pour tester pour la première fois le travail
professionnel dans un cadre de projet bien défini et au sein d’une équipe.
Comment fabriquer une machine MOCN LOW COAST complète ?
L’objectif du présent rapport est de développer les études nécessaires de base de la commande
numérique pour permettre l’amélioration du processus de fabrication des pièces usinées. Pour
tester notre approche on est mené à fabriquer une machine MOCN afin de valider notre carte
de commande.
• La conception de la structure de la machine (CAO) sur un pro logiciel tel que solidworks.
• La programmation de la carte de commande et carte de puissance pour contrôler 3
moteurs pas à pas.
• La fabrication de notre machine selon les matériels disponible et mise en marche ainsi
les essais et les réglages.
25
1.4. CAHIER DE CHARGE :
Dans l’atelier a la quelle ce fait la conception et la fabrication nous trouvons tous les matériels
nécessaires pour notre travail tel que :
• Une perceuse à colonne pour les trous de fixation
• Une scie circulaire pour les coupes en aluminium
• Un étau pour fixer les pièces et les profiles en aluminium
• Une poste de soudure
• Une polisseuse
• Une meule a disque
• Des guides linéaires
• Des vis à billes écrou
• Des moteurs pas à pas
• Une carte arduino pour la programmation de la partie commande
• Une carte de puissance de type Tb6560 pour l’alimentation et la manipulation des mo-
teurs
Conclusion :
Ce chapitre a été consacré à la présentation du cadre de PFE. En effet, notre problématique
a été annoncée de chapitre suivant détaillera notre démarche pour résoudre cette problématique.
26
Chapitre 2
Introduction
À la suite de l’élaboration du constat concernant la société au sein duquel nous avons effectué
le stage de fin d’étude ainsi que son domaine d’expertise, cette partie théorique se rapportant
à la conceptualisation des différents termes indispensables à l’assimilation et à l’exécution de
notre travail. Cette partie de l’étude s’articule autour de deux objectifs. Il s’agit de définir et
de déterminer les caractéristiques sur les machines-outils à commande, ainsi les caractéristiques
et les modes de commande des moteurs pas à pas
La commande numérique est une technique utilisant des données composées de codes al-
phanumériques pour représenter les instructions géométriques et technologiques nécessaires à
la conduite d’une machine ou d’un procédé.
C’est également une méthode d’automatisation des fonctions des machines ayant pour caracté-
ristiques principales une très grande facilité d’adaptation à des travaux différents. Exploitant
au maximum les possibilités de la micro-informatique, toutes les données sont traitées en temps
réel, c’est à dire au moment où elles sont générées, de manière à ce que les résultats du traite-
27
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
Les travaux menés par Flacon et Jacquard à la fin du 18ème siècle ont montré qu’il était
possible de commander les mouvements d’une machine à partir d’informations transmises par
un carton perforé. Leur métier à tisser de 1805 fut le premier équipement à être doté de cette
technique et, de ce point de vue, il peut être considéré comme l’ancêtre de la commande nu-
mérique.
Il faut cependant rattacher l’exploitation industrielle de la CN au développement des nouveaux
matériaux pour la conception de circuits électroniques trop performants.
Les différentes étapes de développement de la CN sont les suivantes :
•1954 : Bendix acuiert le brevet de Parsons et fabrique la première CN industrielle
•1955 : Le constructeur américain Giddins Lewis commercialise la première MOCN
•1959 : apparition de la CN en Europe (foire de Hanovre)
•1964 : Télémécanique Électrique en France lance la CN NUM 100, conçue à base de relais
Téléstatic
•1968 : La CN adopté les circuits intégrés ; elle devient plus compacte et plus puissante
•1972 : les mini calculateurs remplacent les logiques câblées ; la CN devient CNC
•1976 : Développement des CN à microprocesseurs
•1984 : Apparition des fonctions graphiques évoluées et du mode de programmation conversa-
tionnel.
•1986 : Les CN s’intègrent dans les réseaux de communication, début de l’ère de la fabrication
flexible (CIM)
•1990 : Développement des CN à microprocesseurs 32 bites
•Aujourd’hui : On assiste à un développement sans cesse des MOCN, grâce aux progrès de
l’informatique et l’apport des logiciels de CFAO et de prototypage rapide dans la fabrication
automatisée.
28
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
2.1.3.1 Automaticité :
Trois principaux objectifs peuvent être retenus pour l’automatisation des systèmes de pro-
duction :
•Visant le personnel : améliorer ses conditions de travail en :
— supprimant les tâches les plus pénibles (charges, travaux à risques, manipulations dan-
gereuses,. . . ),
— améliorant la sécurité (meilleure protection),
•Visant le produit :
— améliorer sa faisabilité en apportant des solutions techniques, mieux adaptées aux pro-
blèmes posés,
— améliorer sa qualité par rapport au cahier des charges (cahier des charges fonctionnel),
— améliorer sa fiabilité dans le temps par rapport à l’utilisateur,
•Visant l’entreprise :
— Améliorer sa productivité, sa compétitivité :
29
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
2.1.3.2 Flexibilité :
Les MOCN sont pilotées par un programme =>sinage de différentes pièces =>églages très
courts
La grande souplesse d’utilisation de la CN :
• Chargement aisé de programme d’usinage des pièces
• Réduction des encours de fabrication
• Réduction des outillages et suppression des gabarits
• Diminution du nombre des outils spéciaux et des outils de forme
• Réduction du temps de préparation et de réglage du poste de travail
• Prise en compte rapide des modifications d’usinage
• Définition rapide et plus fiable des conditions optimales d’usinage
• Réduction du nombre de prises de pièces, du fait de l’universalité de la machine
• Diminution du temps d’attente entre les diverses machines d’usinage dans un atelier
• Gain sur les surfaces au sol occupées dans l’atelier
30
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
• Possibilité de réaliser des pièces complexes en gérant des déplacements simultanés sur plusieurs
axes
• Contrôle automatique des outils et des dimensions de pièces avec prise en compte par la CN
des corrections à effectuer.
2.1.3.3 Sécurité
31
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
32
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
Le système de fabrication le plus rentable est celui qui engendre le coût d’une pièce le plus
bas. Ce coût est calculé par la formule suivante :
Où :
• C : le coût total de fabrication pour une pièce,
• Cu : le coût d’usinage d’une pièce (matière, main d’œuvre directe, coût machine),
• Cr : le coût de lancement de la série et des réglages des outils et de la machine,
• L : le nombre de pièces d’une série
• Cp : coût de préparation (gammes et programmes d’usinage) et des outillages,
• Z : le nombre de séries
• ZL : le nombre total de pièces fabriquées.
On constate que le coût total de fabrication par pièce varie en fonction de la quantité ZL d’une
manière hyperbolique.
Si l’on considère le nombre de pièces usinées, le domaine d’utilisation économique de la MOCN
se situe dans la petite et moyenne série. Les machines- outils conventionnelles restent rentables
pour des opérations simples où elles ont malgré tout tendance à être remplacées par des MOCN
d’entrée de gamme.
Pour les grandes séries, le recourt à des machines spéciales à automatisation rigide (machines
transfert, tours à cames, fraiseuses de copiage) se montre encore très avantageux. La représenta-
tion du coût d’une pièce en fonction du nombre d’exemplaires à fabriquer, permet de déterminer
les limites économiques d’utilisation de la CN.
Dans l’exemple de la figure, au-dessous de 5 pièces par série, l’usinage sur une MO à commande
manuelle est plus rentable que les MOCN ; de la même façon, une machine spéciale se sera
au-dessus de 5 000 pièces par série.
33
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
Figure 2.3 – Domaine d’utilisation des MOCN (Nombre prévu de séries : Z=5)
les rectifieuses, les affûteuses, les machines d’usinage à très grande vitesse...
• les électroérosions : les machines à enfonçages, les machines à fil.
• les machines de découpes : oxycoupage, laser, jet d’eau...
• les presses : métal, injection plastique.
• les machines à bois : à portique ou col de cygne.
• les machines spéciales : à panneaux, à têtes multiples, de conditionnement (pour l’agroa-
limentaire)...
34
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
35
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
36
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
commande numérique qui agit selon l’analyse des informations sur les condition de coupe pour
permettre une meilleur qualité de travail, une meilleur productivité et une plus grande sécurité.
La figure 2.6 illustre le fonctionnement de la commande adaptative
37
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
Chaque mouvement de translation ou de rotation est donc représenté par un axe défini une
lettre affectée de signe + ou - . La figure.2.7 et la montre l’ensemble des axes qu’un DCN peut
contrôler.
38
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
• Commande numérique point à point : c’est la mise position de l’outil ou de la pièce Par
déplacements non synchronises. Le mouvement de coupe (usinage) n’est possible que lorsque le
mouvement de positionnement.
- Exemples d’opération d’usinage : perçage, alésage, lamage taraudage, petit fraisage.
• Commande numérique par axiale : ce sont des déplacements parallèles aux axes avec les
vitesses d’avance programmée. Le mouvement de coupe et de positionnement sont synchronises
de façon à avoir un usinage selon des trajectoires parallèles aux axes de déplacement.
- Exemples d’opération d’usinage : tournage, fraisage, alésage.
• Commande numérique de contournage : ce sont des déplacements synchronise des divers axes
avec la vitesse d’avance programmée. Les trajectoires sont décomposées en éléments de droites
ou de cercles dons un ou plusieurs plans.
39
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
- Exemples d’opération d’usinage : toute opération possible sur un centre de tournage ou centre
d’usinage.
Le processeur CN calcule tous les déplacements par rapport au point d’origine mesure de la
machine. A la mise sous tension le système ne connaît pas l’origine mesure, les courses méca-
niques accessibles sur chacun des axes de la machine sont limitées par des butées fin de course
mini et maxi.
Remarque : Les origines dans les machines EMCO (voir tableau 2.3) sont présentées comme
suit : Origine machine (M), Origine mesure ou point de référence (R), et l’origine pièce (W).
40
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
41
2.1. TECHNOLOGIE ET PROGRAMMATION DES MOCN(S) :
Avec :
OmR : Connu par la CN à chaque instant après l’initialisation de la machine.
OmOo : Caractérise les courses maximales de la machine.
OoOp : caractérise les dimensions liées au montage d’usinage.
OpOp : caractérise des dimensions liées au contrat de phase.
OpP : caractérise le profil programmé.
PR : caractérise des dimensions liées au système outils et porte-outils.
La programmation des MOCN repose aussi sur des conventions, à savoir les langages de
programmation normalisés. Les normes [NF ISO 6983-1], [NF Z 68-036], [NF Z 68-037],
[NF ISO 4342] décrivent les langages de programmation. Il se trouve que ces normes ne sont pas
complètes. Les constructeurs de commande numérique les adaptent aux spécifications de leurs
machines. Ainsi, les programmations semi-automatiques du type CFAO, se font dans un autre
langage nommé APT ([NF ISO 3592], [NF ISO 4343]). Le programme est la description
structurée de l’opération d’usinage. Il comporte deux types d’informations : des ordres de
déplacements et des ordres auxiliaires. Pour donner un ordre de déplacement, il faut spécifier
un mode d’interpolation, un but et une vitesse de déplacement. Les types d’interpolation utilisés
sont :
— interpolation linéaire, trajectoire décrite par un segment
— interpolation circulaire, trajectoire décrite par un arc de cercle, souvent dégradée en
interpolation linéaire au niveau de l’asservissement,
— interpolation hélicoïdale, trajectoire décrite par une hélice,
On assiste au développement actuel de l’interpolation polynomiale, où la trajectoire est décrite
par une courbe polynomiale, ce qui permet d’assurer une meilleure dynamique de la trajectoire.
Les ordres auxiliaires, sont des ordres séquentiels qui permettent soit de rendre réalisable, soit
d’améliorer la réalisation de l’usinage. Programmer consiste à transposer la gamme d’usinage en
langage compris par la machine. Le langage alphanumérique précise le code. En programmation
manuelle, le langage utilise est décomposé comme suit :
— Le format qui caractérise les mots utilisés,
42
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
— Les adresses, ce sont les lettres débutant un mot d’un langage machine. Celle-ci précise
la fonction générale à commander (G, X, Y, Z, F, S, T, M).
— Les mots sont un ensemble de caractères comportant une adresse suivie de chiffres consti-
tuant une information (X25.236).
— Les blocs sont des groupes de mots correspondant aux instructions relatives à une sé-
quence d’usinage (N150 GOI X200. Y 125.235 F250).
— Les fonctions sont tous les mots d’un langage machine autres que ceux définissant les
cotes, et nécessaires pour assurer le fonctionnement d’une machine-outil.On trouve :
• les fonctions préparatoires G
• les fonctions vitesse d’avance F
• les fonctions vitesse de broche S
• les fonctions outil T
• es fonctions auxiliaires M (mise en route de l’arrosage, de la broche, blocage ou déblocage
de plateau ...).
Remarque : Certaines fonctions auxiliaires sont à prévoir dans le cahier des charges ou le plus
tard à préciser au moment de la commande.
Les moteurs pas à pas sont des transducteurs électromécaniques qui assurent la conversion
des signaux électriques digitaux ou impulsionnels en mouvement de rotation ou de translation
de type incrémental. Les moteurs pas à pas, utilisés pratiquement dans tous les composants
d’un système informatique, sont très mal connus, surtout en ce qui concerne leur mode de
commande. Ils sont utilisés aussi bien dans les lecteurs de disquettes, les disques durs, que
dans les scanners et les imprimantes 3D Dans le domaine de la robotique, ils sont la clef de
voûte du système. Ils permettent d’obtenir une précision extraordinaire grâce à leur conception
électrique et mécanique. Le moteur pas à pas a été conçu à partir de deux démarches logiques
très différentes :
— d’une part, on a cherché un moteur capable de développer un couple important à faible
vitesse, voire même à l’arrêt ;
— d’autre part, on a étudié un dispositif capable de convertir des informations de caractère
43
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
discret
Le convertisseur d’énergie à basse vitesse et le transmetteur de l’information sont devenu un mo-
teur pas à pas moderne vers les années 1970, grâce au développement conjugué de l’électronique
de puissance et, surtout, grâce à l’apparition de l’électronique numérique à forte intégration.
Le moteur pas à pas est actuellement le principal élément intermédiaire entre les dispositifs
de traitement d’information et le monde électromécanique extérieur. Par ailleurs, ses capacités
à contrôler la position et la vitesse, par un train d’impulsions de commande, assurent à ce
convertisseur des applications comme :
• la traction des robots mobiles,
• le fonctionnement en moteur couple de grande puissance,
• l’indexage rotatif ou linéaire.
Dans sa version classique, le moteur pas à pas est alimenté à partir d’une source (de courant
ou de tension) continue et le contrôle de la vitesse ou/et de la position s’effectue en boucle
ouverte. Le pilotage en boucle ouverte, qui constitue un des principaux avantages du moteur pas
à pas, aussi bien du point de vue économique (coût et fiabilité d’installation) que fonctionnel
(commande naturelle par "tout ou rien" à partir d’une horloge séparée ou intégrée dans un
microprocesseur), présente un certain nombre d’inconvénients comme :
• la limitation du couple de démarrage,
• des instabilités de fonctionnement à certaines fréquences,
• des accélérations relativement modestes,
Maintenant, ce type de moteurs est utilisé de plus en plus dans les machines à commande
numérique (CNC), leurs tailles ainsi que leur puissance ont augmenté. Dans cette deuxième
partie du chapitre nous aborderons les différents types de moteurs pas à pas, ainsi que leur
mode de commande.
2.2.2 Généralités :
Ils existent trois types de moteurs pas à pas : les moteurs à aimant permanent, les moteurs
à réluctance variable ainsi que les moteurs hybrides. Nous verrons plus tard que les moteurs
à aimants permanents se subdivisent en deux catégories. Malgré les différences existant entre
les moteurs, le résultat recherché est l’avance d’un seul pas, c’est-à-dire la rotation de leur axe
suivant un angle déterminé à chaque impulsion que l’une ou l’autre de leurs bobines recevra.
Cet angle qui varie selon la constitution interne du moteur, est en général compris entre 0.9 et
90. Les moteurs les plus couramment rencontrés présentent des pas de :
44
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
Les moteurs pas à pas existent entre différentes tailles qui varient entre 1 cm et plus d’une di-
zaine de centimètres. Tout dépendra des applications dans lesquelles ils seront utilisés. Le plus
petit moteur, par exemple, sera destiné au déplacement des têtes de lectures dans les disques
durs ou un couple très faible est requis. Par contre le déplacement du bras d’un robot ou un
chariot (machine CNC) demandera un couple nettement plus important, donc un moteur de
diamètre élevé. Signalons que le couple est exprimé en kilogramme par centimètre (kg.cm-1 ),
ce qui définit le poids en kilogrammes que pourra soulever l’axe d’un moteur pourvu d’un bras
de longueur exprimée en centimètre. La valeur de leur tension d’alimentation varie dans de
grandes proportions, elle peut être comprise entre 3V et plusieurs dizaine de volts. De même,
selon la résistance ohmique de leurs bobinages, le courant consommé s’étendra dans une gamme
allant de quelques dizaines de milliampères a plusieurs ampères. En simplifiant, nous pourrons
dire que plus le courant sera élevé, plus le couple sera important
45
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
Les moteurs pas à pas peuvent être classés en fonction du phénomène physique qui est à
l’origine de leur mouvement. On distingue principalement, deux catégories de moteurs pas à
pas :
•Les moteurs à reluctance variable
•Les moteurs polarisés.
A. Moteur pas à pas rotatif à reluctance variable :
La rotation d’un moteur à reluctance est engendrée par la réaction, entre un champ magnétique
statorique et un rotor saillant, qui conduit à une disposition alignée de la partie saillante avec
le pole créé par le champ magnétique. Dans ces conditions le flux est maximum et la réluctance
du circuit magnétique est minimum.
Ce type de moteur est caractérisé par une structure dentée au niveau du rotor et du stator. Le
rotor est fabriqué en acier doux non magnétique. Le nombre de bobines dans le stator et le type
de connexion déterminent le nombre de phases du moteur. Structure classique d’un moteur à
reluctance variable rotatif à double saillance
Figure 2.12 – Structure classique d’un moteur à reluctance variable rotatif à double saillance.
La figure 2.12 présente un moteur pas à pas réluctant comportant huit plots au stator et six
dents au rotor ce qui donne un moteur a quatre phases. Chaque couple de deux bobines stato-
riques diamétralement opposées et connectées en série, constitue une des quatre phases de la
machine considérée.
46
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
L’alimentation d’une phase crée un couple permettant le déplacement du rotor vers une position
d’équilibre qu’il garde tant que l’alimentation est maintenue. Cet état d’équilibre correspond
à une position alignée entre les dents statoriques porteuses de la phase alimentée et les dents
rotoriques. Chaque nouvelle séquence d’alimentation établit un nouvel équilibre.
Le moteur se déplace donc avec un pas angulaire de 15.
Le mode de commande peut dans ce cas, de la même façon que pour les autres moteurs, être
monophasé, biphasé ou demi-pas. Les séquences de commandes sont présentées dans le tableau
2.4.
Table 2.4 – Ordre des différentes commandes pour moteur à reluctance variable
Pour augmenter la résolution angulaire de ces moteurs, des constructions a circuits magnétiques
multiples, dites multistack, peuvent être envisagées. Ces moteurs se présentent principalement
sous deux formes :
•Un empilage de plusieurs machines monophasées identiques assemblées mécaniquement sur le
même arbre.
•Un stator unique, possédant plusieurs rotors magnétiquement indépendants, mais couplés mé-
caniquement.
Dans toutes ces machines, le rotor et les stators présentent le même nombre de dents, le mou-
vement étant obtenu par le décalage mécanique des rotors ou des stators, les uns par rapport
aux autres.
B. Moteur pas à pas rotatif à aimant permanent :
Les moteurs à aimant permanent sont constitués d’un stator supportant les bobinages et d’un
rotor magnétique (aimant bipolaire). Cette catégorie de moteurs se subdivise en deux types :
•le moteur unipolaire.
•le moteur bipolaire.
47
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
La figure 2.14 représente le schéma simplifié d’un moteur à aimant. Le premier dessin de la
figure le représente dans sa position de repos, lorsque les bobinages ne sont traversés par aucun
courant. Chacun des pôles du rotor se place devant une paire des plots du stator.
Les quatre dessins à droite de la figure illustrent ce qui se passe lorsque les bobinages sont
alimentés à tour de rôle : d’abord A, puis B, puis C et enfin D. Le pôle nord du rotor sera
attiré par le pôle sud du stator, pôle crée par la circulation d’un courant dans le bobinage. Cet
exemple permet de comprendre la progression pas à pas
48
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
bobinages à tour de rôle pour faire tourner l’axe d’un pas. Le schéma de la figure 2.15(à droite)
résume la séquence la plus simple
Comme pour chaque type de moteur, le modèle unipolaire peut être commandé en mode mo-
nophasé, biphasé ou demi-pas. Le tableau 2.5 donne l’ordre des différentes commandes.
Signalons que le moteur unipolaire présentera, à volume égal, un couple moins important que
le moteur bipolaire.
b. Les moteurs bipolaires :
La figure 2.16 représente la constitution interne d’un moteur de type bipolaire. Ce type de mo-
teur nécessite une commande plus complexe que celle du moteur unipolaire, le courant devant
changer de sens dans les enroulements à chaque pas effectué.
Comme pour le modèle précèdent, ce moteur peut être alimenté sous trois séquences différentes
tableau 2.6, représentées par ailleurs sur la figure 2.17.
49
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
50
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
C’est dans le mode biphasé que le moteur développera la plus grande puissance (couple élevé)
car les deux phases seront alimentées en même temps. Le mode demi-pas permet de doubler
le nombre de pas qu’un moteur peut effectuer par tour, mais cette précision supplémentaire
engendre un couple irrégulier. En effet, dans ce mode, la commande du moteur est un mélange
de mode biphasé et monophasé. Dans ce cas, si la charge est importante, des pas risquent de «
sauter », ce qui n’est pas le but recherché.
C. Moteur pas à pas rotatif hybrides :
Les moteurs pas à pas hybrides sont généralement constitués d’un rotor denté muni d’aimants
permanents. Le rotor possède généralement deux disques polaires décalés d’un angle électrique
PI
51
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
Ce type de moteur présente à la fois les avantages du moteur a aimant permanent qui
possède un couple élevé et ceux du moteur a reluctance variable qui permet d’obtenir un
nombre importants de pas par tour. Toutefois l’inertie d’un tel rotor ainsi que les pertes fer
sont relativement importantes et pénalisent donc cette structure.
Les moteurs pas à pas hybrides réunissent, au moins en partie, les avantages des moteurs pas
à pas à reluctance variable et a aimants permanents, à savoir :
• Un grand nombre de pas par tour.
• Une fréquence propre mécanique importante.
• Un couple massique élevé.
• Un amortissement interne important.
• Une mémoire de position.
Dans sa configuration de base le moteur pas à pas hybride comporte un stator en fer feuilleté
à plots saillants et deux couronnes rotoriques dentées en matériau ferromagnétique, géométri-
quement identiques et réunies par un aimant permanent cylindrique magnétisé axialement. Les
52
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
lignes de champs de l’aimant se ferment à travers les dents du rotor. Vu du stator, le rotor
présente autant de pôles magnétiques actifs qu’il possède de dents. Les dents sur une des cou-
ronnes sont décalées par rapport aux dents de l’autre d’un demi-pas dentaire 1/2tauxdr.
Le nombre de pôles vu au stator est lié au nombre de dents d’une couronne rotorique par la
relation. Le nombre de pas par tour prend donc la forme :
Avec
Tout comme pour les versions rotatives, les moteurs pas à pas linéaires se composent d’un
stator portant les bobinages et d’une partie mobile se déplaçant cette fois-ci linéairement. Cette
partie mobile peut être réalisée à partir d’une pièce ferromagnétique dentée, dans ce cas la struc-
ture est dite a reluctance ou passive ; ou alors la partie mobile est munie d’aimants permanents
53
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
Ce type de moteurs est caractérisé par une structure dentée au niveau du stator et de la
partie mobile. Le circuit magnétique est généralement assemblé a partie de tôles magnétiques
de forte perméabilité. Toutefois, les machines destinées au positionnement ou à une translation
lente, peuvent être réalisées avec des pièces massives. Les enroulements du circuit électrique
sont généralement concentrés autour des plots du stator et donc faciles à réaliser.
Ce sont des moteurs dont la partie mobile est généralement lisse et formée d’une succession
d’aimants permanents montés en surface.
2.2.4 Récapitulation
Dans ces tableau on donne une comparaison entre les divers types de moteurs pas à pas
ainsi ces avantages et ces inconvénients.
54
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
Conclusion :
Dans ce chapitre nous avons présenté une recherche bibliographique sur Les machines–outils
à commande numérique (MOCN), les commandes les plus utilisées et les Classifications des
55
2.2. LES CARACTÉRISTIQUES ET LES MODES DE COMMANDE DES MOTEURS PAS
À PAS
56
Chapitre 3
Introduction
Après avoir décrit le principe et la systématique des machines MOCN et du moteur pas à
pas, nous allons maintenant entamer la partie électronique qui va commander tout le système.
Commençons tout d’abord par une description théorique des différents cartes et logiciels qu’on
a utilisés pour pouvoir réaliser notre commande.
3.1 Arduino
3.1.1 Définition
Une carte Arduino est une petite (5,33 x 6,85 cm) carte électronique équipée d’un mi-
crocontrôleur. Il permet, à partir d’événements détectés par des capteurs, de programmer et
commander des actionneurs la carte Arduino est donc une interface programmable.
Plusieurs sont les types de Arduino ce qui nous intéresse dans notre étude est celle dite Arduino
UNO. La carte Arduino UNO est un microcontrôleur ATmega328 programmable permettant
de faire fonctionner des composants (moteur, LED. . . ). Elle possède des « ports » permettant
par exemple de se connecter à un ordinateur ou de s’alimenter. La carte Arduino UNO est la
57
3.1. ARDUINO
3.1.2 Historique
L’Arduino emprunte son nom au Bar di Re Arduino (en français « bar du roi Arduin »)
dans lequel se réunissaient les concepteurs de la carte, à Ivrée en Italie du Nord.
De nombreuses cartes additionnelles « Shields » a été créées afin d’enrichir les applications
potentielles, les seules limites sont notre imagination, le temps, et le budget.
58
3.1. ARDUINO
Chacun des connecteurs D0 à D13 peut être configuré par programmation en entrée
ou en sortie, nous pouvons donc avoir par exemple les connecteurs 2 et 3 configurés
comme des entrées et les connecteurs 7, 8 et 9 configurés comme des sorties. Il est
par conséquent possible de connecter côte à côte des capteurs logiques (interrupteurs
par exemple) aux connecteurs 2 et 3 et des actionneurs aux connecteurs 7, 8 et 9. Les
signaux véhiculés par ces connecteurs sont des signaux logiques, c’est-à-dire qu’ils ne
peuvent prendre que deux états : HAUT (5 Volts) ou BAS (0 Volt), par rapport au
connecteur de masse GND, qui lui est toujours, par définition, à 0 Volt.
Contrairement aux entrées/sorties numériques qui ne peuvent prendre que deux états
HAUT et BAS, ces six entrées peuvent admettre un millier de valeurs (1024 exacte-
ment) analogiques comprises entre 0 et 5 Volts. Nous pourrons donc avoir des valeurs
de tension précises à 5 mV près ( 5V/1024)
Plusieurs types de commandes peuvent être envisagés quand il s’agit d’un moteur pas à pas.
Parmi ces commandes nous citons :
— La commande directe avec un amplificateur de la famille L298.
— La commande dir/step avec le couple L297 et L298 ou EASY DRIVER.
Pour réaliser une commande numérique de trois moteurs pas à pas on étudie comment com-
mande un seul moteur. Nous avons divisé ce projet en divers unités :
— Une alimentation.
— Une unité principale.
— Un interfaçage entre l’unité principale et la partie opérative de moteur.
3.1.4.1 Alimentation :
Pour assurer le fonctionnement de nos cartes électroniques, nous avons besoin d’une alimen-
tation continue de 5VDC et 12VDC :
• 5V DC 200mA : alimentation pour la partie commande.
• 12V DC 2A : alimentation pour la partie puissance.
59
3.1. ARDUINO
Pour cette commande on utilise un circuit de commande qui donne un mode de commande
directe de moteur pas à pas (mode à pas entier). Mode à pas entier, deux phases alimentées en
même temps (Two Phase ON, Full Step) :1010/0110/0101/1001
Circuit L298
Le circuit intégré L298 est le circuit complémentaire du L297. Il permet la simplification ex-
trême de la construction d’une carte de commande pour moteur pas-à-pas. Le circuit L298
est un double pont de commande de puissance, il permet l’utilisation d’une élevée. Il peu être
utilisé aussi pour la commande de deux moteurs à courant continu. Le schéma interne du L298
contient deux ponts de 4 transistors de puissances commandées par les portes logiques, ainsi
que la connexion des résistances de mesure du courant consommée par la charge reliée aux
émetteurs de chaque paire de transistors. La technique de commande dans cette carte est basée
sur un arduino en configurant pour chaque moteur quatre broches en sortie afin d’envoyer les
séquences des impulsions générées par le ARDUINO sur les bornes du moteur pas à pas (figure
II.3). Chaque moteur reçoit une séquence indépendamment de l’autre à travers un amplificateur
L298 pouvant fournir un courant de sortie de 0,5A.
60
3.1. ARDUINO
Programmation :
Déclaration des constantes pour les broches utilisées dans le programme :
61
3.1. ARDUINO
La commande dir/step :
La commande dir/step dépend sur un circuit qui obtenir un commande direct soit Mode à pas
entier, une phase alimentée à la fois (One Phase ON, Full Step) ou Mode deux phases alimentées
en même temps (Two Phase ON, Full Step) .ce circuit commande par deux proche :
• Step : (STEP) qui est l’horloge pour la vitesse. A chaque front descendant le moteur
fera un pas.
• Dir : (DIRECTION) (ClockWise ou Counter ClockWise) qui décidera du sens de rotation
du moteur
Pour réaliser cette commande numérique on doit étudier l’un des deux circuits de commande.
• Le couple L297 et l298(pour l’essai de commande moteur).
• Le circuit DRIVER TB6560(notre carte de commande).
Le schéma théorique du montage :
L297 est un circuit qui contient toute la circuiterie de commande et de contrôle de moteurs pas
à pas unipolaire et bipolaire. Ce circuit est utilisé conjointement avec un driver double pont tel
que le L298 .L’ensemble forme une interface idéale pour le contrôle d’un moteur pas à pas par
arduino.
62
3.2. DRIVER DE MOTEUR PAS À PAS
63
3.2. DRIVER DE MOTEUR PAS À PAS
64
3.3. PROGRAMMATION GRBL
— Sortie de relais de broche, logiciel facile à utiliser tel que mach3 pour contrôler broche
démarrer et arrêter
— Interface avec un ventilateur, on peut ajouter un ventilateur selon le choix.
— 12v,36v alimentation à découpage unique, les cartes à utiliser comme 5V alimentation,
stable.
La communication série est indispensable pour dialoguer avec Arduino puisque c’est le mode
de transmission utilisé pour communiquer avec la carte. Les protocoles de communication série
le plus connus sont : Le protocole USB.
• Serial.begin(speed) (configuration de la vitesse de communication Série).
65
3.3. PROGRAMMATION GRBL
Cette partie est le coeur du programme, qui définit les actions à effectuer à partir le trai-
tement de code-G, qui contient plusieurs fonctions. L’arduino fait l’enregistrement dans la mé-
moire RAM, Apres la compilation nous obtenons l’opcode (code de l’opération) et évidement
ses paramètres s’ils existent. Chaque opcode du code-G a une fonction spécifique. La fonction
principale qui traduit le G code s’appelle : « processCommand() » qui contient l’opcode se la
forme suivent :
66
3.3. PROGRAMMATION GRBL
Notre but est de tracer le moins de pixels possibles. Pour cela nous traçons un nombre de pixels
égal à :
Si abs(Xi-Xf) < abs(Yi-Yf), nous traçons un pixel et un seul par ligne interceptant le segment,
sinon nous traçons un pixel et un seul par colonne interceptant le segment Nous posons comme
hypothèse simplificatrice :
Tous les autres cas peuvent s’y rapporter. Le coefficient directeur de la droite passant par les
67
3.3. PROGRAMMATION GRBL
deux sommets il est positif et inférieur ou égal à 1. Au cours de l’exécution, nous quantifions,
pour chaque pixel allumé, la différence entre ses cordonnées entières (utilisées pour ’affichage
raster) et réelles telles qu’elles sont calculées sur le segment continu. Nous allumons un pixel
en chaque abscisse entière x de Xi à Xf et nous utilisons une variable cumul pour stocker une
estimation de la différence entre l’ordonnée entière et l’ordonnée réelle. Le dernier pixel llumé
a pour coordonnées (Xf, Yf) car dx/2+dy*dx est la valeur totale de ce qui a été accumulé dans
cumul au cours de l’exécution.
Caractéristiques :
• Plus grande complexité algorithmique.
• Rapidité due à l’utilisation exclusive d’entiers courts (valeurs maximales de l’ordre de
la résolution de l’écran -> petites valeurs) et d’opérations arithmétiques simples sur ces
entiers (additions, soustractions et comparaisons).
68
3.3. PROGRAMMATION GRBL
Utilisation de deux variables Xinc et Yinc pour gérer des incréments de 1 ou -1 pour x
variant de Xi à Xf et y variant de Yi à Yf (Figure3.9).
69
3.3. PROGRAMMATION GRBL
70
3.3. PROGRAMMATION GRBL
Cet parte contient les fonctions qui transfère les calculs de l’interpolation de Bressenham
vers un signal de commande pour contrôle de la carte de commande. La fonction principale
utilise est la fonction accélération et la fonction stepper.
71
3.4. UNIVERSEL GCODE SENDER
3.4.1 1. Définition
Le Gcode est le langage de programmation des machines numériques est basé sur des
lignes de code. Chaque ligne (également appelée un bloc) peut inclure des commandes pour
faire produire diverses actions à la machine. Plusieurs lignes de code peuvent être regroupées
dans un fichier pour créer un programme Gcode. Une ligne de code typique commence par un
numéro de ligne optionnel suivi par un ou plusieurs mots. Un mot commence par une lettre
suivie d’un nombre (ou quelque chose qui permet d’évaluer un nombre). Un mot peut, soit
donner une commande, soit fournir un argument à une commande. Par exemple, G1 X3 est une
ligne de code valide avec deux mots. G1 est une commande qui signifie déplaces toi en ligne
droite à la vitesse programmée et X3 fournit la valeur d’argument (la valeur de X doit être 3 à
la fin du mouvement). La plupart des commandes Gcode commencent avec une lettre G ou M
(G pour Général et M pour Miscellaneous (auxiliaire)). Les termes pour ces commandes sont
Gcodes et M-codes. Le langage G-code n’a pas d’indicateur de début et de fin de programme.
L’interpréteur cependant traite les fichiers. Un programme simple peut être en un seul fichier,
mais il peut aussi être partagé sur plusieurs fichiers. Un fichier peut être délimité par le signe
pour-cent. La première ligne non vide d’un fichier peut contenir un signe d’espaces blancs,
ensuite, à la fin du fichier on doit trouver une li un M30 , mais est requis sinon. Une erreur
sera signalée si un fichier a une ligne pour-cent au début, mais pas à la fin. Le contenu utile
d’un fichier délimité par pour-cent s’arrête après la seconde ligne pour-cent. Tout le reste est
ignoré. Le langage Gcode prévoit les deux commandes (M2 ou M30) pour finir un programme.
Le programme peut se terminer avant la fin du fichier. Les lignes placées après la fin d’un
programme ne seront pas exécutées. L’interpréteur ne les lit pas similaire.
72
3.4. UNIVERSEL GCODE SENDER
Il y’a deux mode utilise dans ce programme soit mode manuel ou mode automatique pour
commander la machine CNC, Le programme fournit spéciale boutons dans l’interface de base
qui contrôle chaque moteur séparément, Ce qui fonctionne ces boutons après choisi le mode
manuel.
73
3.4. UNIVERSEL GCODE SENDER
Pour l’utilisation graphique : le mode automatique, Charge notre fichier Gcode : dans l’onglet
"file mode" faites "browse" et sélectionnez fichier Gcode (.ngc) précédemment créé. En faisant
"visualize" nous pourrons vérifier notre traçage et le chemin emprunté par l’outil : en rouge les
zone de travail (Z0).
74
3.4. UNIVERSEL GCODE SENDER
Faire le zéro (le "home") : dans l’onglet "machine control" on déplace l’outil avec les boutons
X, Y et Z. On peut modifier le pas de déplacement en modifiant le "step size". Une fois l’outil
positionner là où on souhaite établir le zéro (en contact avec notre support) on clique sur "reset
zéro". Pour lancer le travail : retourne dans l’onglet file mode et cliquez sur "Send".
En mode manuel, l’opérateur peut commander les moteurs directement par les boutons
(X+,X-,Y+,Y-,Z+,Z-,..) dans la programme de transfert G-code , si En cliquant sur ses boutons
nous générons un instruction de code G qui envoyé à la carte de commande pour commander
75
3.4. UNIVERSEL GCODE SENDER
• Mouvement continue : lors de déplacement des moteurs, si l’opérateur appui sur un bou-
ton de déplacement, la tête se déplace d’une manière continue avec une vitesse réglable.
• Incrémentation par pas : pour un réglage fin, plusieurs distances de déplacement sont
proposées. Dans ce mode, un seul appui génère un déplacement d’une seule unité choisie
par l’opérateur.
• Réglage de la vitesse : la vitesse de la tête en mode manuel est réglable. Le choix de cette
vitesse est limité par la vitesse minimale et maximale indiquées au manuel des moteurs
(Vmin ,Vmax).
• Retour à zéro : il s’agit de déplacer la tête à l’origine absolue. Ce qui diffère de la prise
d’origine décrite précédemment c’est que la tête retourne à l’origine sans passer par les
butées, donc il est basé sur l’estimation de la position calculé par l’arduino.
• Retour à l’origine programme : l’origine programme est par défaut l’origine absolue de
la table, en fait, c’est l’origine de la texte ou image. Cette origine peut être changée par
le code en G en mode automatique ou même manuellement. Une fois changé, l’arduino
le mémorise dans son EEPROM.
• Mémoriser l’origine programme : si l’opérateur veut changer cette origine, il doit déplacer
la tête manuellement à l’aide du déplacement continu et l’incrémentation par pas, puis
76
3.5. INKSCAPE
il exécute la mémorisation.
En mode automatique, la carte Arduino Uno reçoit les instructions en G-code et les exé-
cute l’une après l’autre. Il y a plusieurs étapes pour achever cette tâche. Commençant par la
réception de l’instruction jusqu’à la commande des moteurs et de la tête. Si l’opérateur clique
sur le bouton « send » après le chargement de fichier G-code (soit texte ou image) dans le
programme de transfert, l’arduino fonctionne en mode automatique, le arduino entre dans une
boucle et prêt pour recevoir les données. L’arduino fait l’enregistrement dans la mémoire RAM,
Puis fait la compilation pour savoir l’opcode (code de l’opération) et évidement ses paramètres
s’ils existent. Chaque opcode de code G a une fonction spécifique, s’il s’agit d’un paramétrage,
l’instruction affecte une variable en EEPROM tels que l’origine programme, origine pièce, vi-
tesse de déplacement. . . et s’il s’agit d’un déplacement, l’arduino fait appel à la fonction qui
contient l’interpolation de Bressenham liée à ce déplacement (interpolation linéaire et inter-
polation circulaire). Enfin, le arduino envoi le mot ‘ »’ pour indiquer au PC qu’il est prêt à
recevoir l’instruction suivante. L’appui sur le bouton ‘cancel’ termine le dialogue.
3.5 Inkscape
3.5.1 Définition
Inkscape est un puissant logiciel de dessin vectoriel à vocation "artistique", le dessin y est
enregistré sous forme d’équations de courbes (chemins) et non par des pixels comme les images
bitmap. Ce programme est vaste (mais très bien fait), permet d’ouvrir un nombre très important
de type d’image (DXF, PDF, SVG, PNG ,...) et qu’il est capable de transformer des images
bitmap en image vectorielle.
77
3.6. ORGANIGRAMME DE LA COMMANDE DE LA MACHINE CNC
"Gcode tools" est une extension d’Inkscape permettant de générer du Gcode à partir des
chemins d’une image vectorielle.
3.5.2 Historique
Le développement d’Inkscape a commencé en 2003, sur la base d’un fork du projet Sodipodi,
causé par des divergences au sujet de l’avancée future du développement. Sodipodi est luimême
un fork de Gill, un logiciel créé par Raph Levien pour le bureau GNOME.
Inkscape est, entre autres, passé du langage de programmation C au C++, et aux bindings
C++ de la bibliothèque graphique GTK+ (Gtkmm). Des changements ont aussi été effectués
au niveau de l’interface utilisateur et de nouvelles fonctions ont été ajoutées (le développement
est très actif).
78
3.6. ORGANIGRAMME DE LA COMMANDE DE LA MACHINE CNC
Une fois la machine CNC fonctionne, il existe trois différents modes majeurs pour entrer des
commandes. Les modes Manuel, Auto et Paramétrage. Passer d’un mode à une autre marque
une grande différence dans le comportement de la machine CNC. Des choses spécifiques à un
mode ne peuvent pas être faites dans un autre. L’opérateur peut faire une prise d’origine sur
un axe en mode manuel mais pas en mode auto. L’opérateur peut lancer l’exécution complète
d’un programme de G-codes en mode auto mais pas en mode manuel. En mode manuel, chaque
commande est entrée séparément. En termes humains une commande manuelle pourrait être
active un moteur pas à pas. Ces commandes sont normalement contrôlées en pressant un bouton
de l’interface graphique avec la souris ou en maintenant appuyée une touche du clavier. En mode
auto, un bouton similaire ou l’appui d’une touche peuvent être utilisés pour charger ou lancer
l’exécution complète d’un programme de G-codes stocké dans un fichier
Conclusion :
Ce chapitre est une étude générale du logiciel de commande graphique et le programme de
commande de la machine CNC.Le chapitre qui suit sera consacré à la réalisation pratique et
l’interface graphique
79
Chapitre 4
Introduction
Ce chapitre est consacré à la fabrication et l’application d’une machine-outil à commande
numérique Pour cette raison, plusieurs étapes ont été envisagées :
— Étudier la conception ainsi la fabrication de la machine par un pro-logiciel tel que solid-
works (CFAO).
— Réaliser un prototype pour tester tous les aspects électronique et de commande.
— Identifier les matériels utilisés lors de l’étude, et la méthodologie du travail par ordre
chronologique.
— L’assemblage de la structure de la machine.
— L’essai de mise en marche et tests de performance du système
80
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
81
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
4.1.2 SolidWorks
4.1.2.1 Définition
Solidworks est un outil de conception de modélisation volumique paramétrée basée sur des
fonctions, associatif.
• Modèle géométrique le plus complet utilisé dans les systèmes de CAO, utilisant les
informations qui relient les géométries du modèle entre elles (exemple : telle surface se
rencontre avec telle arête).
• Paramétrique, les cotes et les relations utilisées pour créer une fonction sont saisies
et stockées dans le modèle ; ce qui permet de les changer rapidement et sans difficulté,
(Changement de la cote 76 en 116 par exemple)
Basée sur des fonctions, en effet un modèle SolidWorks est formé d’éléments individuels appelés
fonctions. Ce sont des fonctions géométriques telles que les bossages, les enlèvements de matière,
les perçages, les congés, les chanfreins.
4.1.2.2 Fonctionnement
82
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
Un dossier complet contenant l’ensemble des relatifs à un même système constitue une ma-
quette numérique. De nombreux logiciels viennent compléter l’éditeur Solidworks. Des utilitaires
orientés métiers (tôlerie, bois, BTP...), mais aussi des applications de simulation mécanique ou
d’image de synthèse travaillent à partir des éléments de la maquette virtuelle.
La CAO permet de concevoir des systèmes dont la complexité dépasse la capacité de l’être
humain comme par exemple en micro-électronique». Dans notre cas, on s’intéresse à la concep-
tion des formes de deux dimensions. Un progiciel tel que inkscape ou blinder et Solide Works
génère un fichier qui simule la surface, et qui est compréhensible par d’autre progiciel de fabri-
cation assisté par ordinateur.
83
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
84
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
On obtient :
85
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
La conception de la surface à obtenir est donc réalisée à l’aide d’un progiciel de conception
assistée par ordinateur (CAO) : on nomme le fichier ainsi obtenu "DFN" pour Définition de
Formes Numérisées. Cette modélisation est ensuite « exportée » dans un fichier intermédiaire
en utilisant un standard d’échange comme IGES, STEP, DXF ou autre. Certains outils de FAO
sont capables de relire directement les fichiers des grands fournisseurs de CAO. Dans d’autres
cas, la CAO et la FAO sont complètement intégrées et ne nécessitent pas de transfert. Pour ces
86
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
Pour aboutir à construire la machine MOCN, on a bien évidement besoin des matériels bien
définis qui répond aux exigences et aux caractéristiques souhaitées de la machines. Le tableau
ci-joint résume les principales pièces utilisées.
On a besoin également des moteurs qui vont alimenter la machine. On a bien choisi deux types
87
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
88
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
les pièces et les matériels nécessaire pour commencer le travail. Nos principaux fournisseurs
sont : FUBA, ferraille, Boudrant, SIGMA aluminium, fournisseurs Sfax (vis mères), tourneur
Marrakchi, autres sources d’approvisionnement,
89
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
90
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
Après l’assemblage des différents pièces et axes on doit alimenter notre machine ainsi le
commander pour savoir le bon fonctionnement.
91
4.1. CONCEPTION ET FABRICATION ASSISTÉ PAR ODINATEUR DE LA MACHINE
MOCN :
92
4.2. PROGRAMMATION ET INTERFACE GRAPHIQUE (COMMANDES MOTEURS)
Le pilotage d’une MOCN se fait à l’aide de séquences d’instructions en G-code. GRBL est
un outil pratique qui permet d’interpréter le G-code et de piloter très simplement une MOCN
avec Arduino
93
4.2. PROGRAMMATION ET INTERFACE GRAPHIQUE (COMMANDES MOTEURS)
Pour implémenter GRBL sur l’Arduino, il suffit d’aller dans Fichier > Exemples > grbl >
grbl-upload
94
4.2. PROGRAMMATION ET INTERFACE GRAPHIQUE (COMMANDES MOTEURS)
On peut configurer GRBL afin qu’il s’adapte aux réglages de notre CNC grâce au moniteur
série. Pour cela, on ouvre le moniteur série (Outils > Moniteur série). Réglez la vitesse à
115200 baud.
95
4.2. PROGRAMMATION ET INTERFACE GRAPHIQUE (COMMANDES MOTEURS)
On sélectionne le port COM sur lequel est branché notre Arduino et cliquez sur Open pour
ouvrir la connexion. Trois onglets sont à votre disposition :
— Commandes afin d’envoyer directement du G Code à la machine ou pour configurer
GRBL comme avec le moniteur série .
— File Mode pour envoyer un fichier G Code à la CNC.
— Machine Control pour piloter manuellement notre CNC
96
4.2. PROGRAMMATION ET INTERFACE GRAPHIQUE (COMMANDES MOTEURS)
En cliquant sur les touches, on peut faire tourner notre moteur pas à pas, en indiquant avec
step size la distance parcourue pour un pas. C’est la manière la plus simple de vérifier que nos
moteurs fonctionnent correctement et de voir si nous avons bien configuré GRBL.
Une fois que tout fonctionne bien avec le pilotage manuel, on peut aller dans File Mode et
envoyer directement notre fichier G code. Différents logiciels existent pour générer un fichier en
G code à partir d’un dessin 2D ou 3D parmi lesquels Inkscape (2D) et NINOS CFAO (3D).
A l’aide d’un pro-logiciel tel que INSKAPE ou NINOS CFAO on peut crée le fichier d’usinage
et qu’il sera enregistrer en langage DXF ou G-code pour être usiner par notre machine outil à
commande numérique à 3 axes
Étape 1 : Choisir les dimensions du pièce à usiner ainsi l’outil d’usinage.
97
4.2. PROGRAMMATION ET INTERFACE GRAPHIQUE (COMMANDES MOTEURS)
Étape 2 : Créer le fichier d’usinage (PCB d’un circuit électrique ou un logo etc...)
Remarque : On peut créer ce fichier à l’aide de l’INSKAPE aussi
98
4.2. PROGRAMMATION ET INTERFACE GRAPHIQUE (COMMANDES MOTEURS)
99
4.3. ESSAI DE LA MACHINE ET TESTS DE PERFORMANCE
100
4.3. ESSAI DE LA MACHINE ET TESTS DE PERFORMANCE
Comme premier problème, on a bien remarqué d’un dysfonctionnement des moteurs. Ils font
de bruit sans mouvement, c’est ce qu’on appelle le phénomène de retour de zéro de la machine
« HOME 0 ».
Pour faire face à ce problème, on a pensé à différentes solutions et tester la plupart d’entre eux.
On est arrivé à optimiser une seule solution efficace : il s’agit d’une réinstallation du logiciel
GRBL, de réimplanter ce dernier sur l’Arduino et enfin de le téléviser.
Concernant le deuxième problème, il s’agit d’un mauvais contact entre les câbles et les moteurs
qu’on l’a résolus très rapidement.
Conclusion
Ce chapitre a été le fruit des études menées dans les deux chapitres précédents. Les résultats
obtenus prouvent l’efficacité de notre solution ainsi une machine MOCN LOW-COAST peut
être réalisée et les industriels peuvent compter sur notre solution pour la renaissance de leurs
machines non opérationnelles.
101
Conclusion générale
YANBOUTIN, intégration des cycles d’usinage avancés des machines-outils à commande nu-
mérique aux logiciels de FAO. Comme exigence partielle à l’obtention de la maîtrise en génie
mécanique, MONTRÉAL, le 22 JANVIER 2002
Takashi Kenjo and Akira Sugawara , «stepping motors and their microprocessor controls »
Oxford University Press , ISBN 0-19-859385-6.