Madi Fateh
Madi Fateh
Madi Fateh
Département : Electronique
Mémoire
Présenté pour l’obtention du diplôme de : Master
Thème :
Réalisation & manipulation d'une machine à
commande numérique à base d'un microcontrôleur.
Devant le jury :
Président :Azzouz_Mokhnache MCB
:ملخص
في الفصل األول نعطي لمحة عامة عن,يتحدث هذا التقرير عن آلة التحكم الرقمي بالحاسوب وينقسم إلى خمسة فصول
.( وأخيرا بعض منتجات هذه اآللة, أنواعها,مبدأ عملها, تاريخها,اآللة(تعريفها
في الفصل الثاني نمر إلى مرحلة التصميم وتجميع اآللة
المحرك خطوة,أما الفصل الثالث فهو مخصص للتعريف بالمعدات االلكترونية المستعملة نذكر منها بطاقة االردوينو
.مصدر الطاقة الخ,موجه المحرك, خطوة
الفصل الرابع فيه شرح للبرامج المستعملة في برمجة اآللة وهي
Arduino ( يتم استخدامه لكتابة وتنزيل البرامج على بطاقات متوافقة معArduino IDE)
و التحكم فيهاCNC ( يستخدم هذا البرنامج لتشغيل آلةUniversal G-Code Sender )
هو برنامج مصمم إلرسال.(Grbl), ( وهو عبارة عن برنامج تصميمinskcape) و برنامج ,
. مثل آالت الطحن ثالثية األبعاد، CNC إلى آالتGCode
.في الفصل األخير نقوم بتجريب اآللة و إعطاء النتيجة المتحصل عليها
Abstract :
In this report, we give an overview of the CNC machine (its definition, its history, its
structure, its types and finally some products of this machine).
In the second chapter, we move to the design phase and assembly of the machine.
The third chapter is devoted to the definition of the electronic equipment used, including
the arduino card, the stepper motors, the driver motor, the power supply, and so on.
Chapter 4 explains the software used in programming the machine:
(Arduino IDE) It is used to write and download software on cards compatible with
Arduino, (Universal G-Code Sender) used to run and control a CNC machine, Software
inskcape is a free vector drawing software, (Grbl Controller) is a program designed to
send GCode to CNC machines.
In the last chapter, we test the machine and give the result.
Dédicace
Je dédie ce travail à :
Tous les enseignants qui m'ont enseigné tout au long de l'année scolaire, de
l'école primaire à la fin des études universitaires, et j'espère ajouter ce que
j'ai appris au service de la communauté et de mon pays.
Je remercie également tous mes amis et collègues qui ont partagé cette
étape de ma vie.
I .4.4 . M-code…………………………………………………………………………..... 8
V .2.1.mode manuel…………………………………………………………………………..46
V .2.1.1.Exemple de commande en mode Manuel ………………………………………………….………..47
Conclusion générale…………………………………………………………………….…… 56
Bibliographié………………………………………………………………………………… 57
Annexes……………………………………………………………………………………….58
Liste de figures :
Figure I.1 : Décomposition d’une machine numérique……………………………….….....5
Figure I.1 :sens de déplacements du la machine CNC……………………………….……..2
Figure I.2 : Décomposition d’une machine numérique…………………………….….…….4
Figure I.3: Système de coordonnées………………………………………………….……..5
Figure I.4 : L'origine du système………………………………………………….……….. 6
Figure I.5 :exemple d’un programme G code………………………………………………9
Figure I. 6 :Routeur CNC 3 axes………………………………………………………..….9
Figure I. 7 : coupeuses plasma CNC de marque samson……………………………….......10
Figure I. 8 : CNC 3018 Engraving Machine 5500 mw laser…………………….…….…...10
Figure I.9 : Imprimante 3D Zortrax M200……………………………………………...… 11
Figure I.10 : machines CNC Pick and Place…………………………………………....….11
Figure II .1 : l’équipement de cnc(1)……………………………………………………....12
Figure II .2 : l’équipement de cnc(2)……………………………………………………....13
Figure II .3 : Assemblage de l'axe x…………………………………………………….…17
Figure II .4 : Assemblage de La vis sans fin-écrouavec Axes de guidage…………….…19
Figure II .5 : Assemblage de l'axe de la face avant…………………………………….….20
Figure II .6 : Assemblage de l'axe de la face arrière ……………………………………...20
Figure II. 7: Assemblage de l'axe Z(1) …………………………………………………....22
Figure II .8 : Assemblage de l'axe Z(2)……………………………………………………22
Figure II .9 : assemblage des 3 axes(1)…………………………………………………... 23
Figure II .10 : assemblage des 3 axes(2) ………………………………………………….23
Figure III.1 : les domaines d’utilisations de la carte arduino………………………….…..25
Figure III.2 : image réel de la carte arduino……………………………………………….25
Figure III.3 : Brochage de la carte Uno……………………………………………………26
Figure III.4 : image réel de moteur pas a pas ……………………………………………..27
Figure III.5 : boucle d’un moteur à courant continu……………………………………....28
Figure III.6 : boucle d’un moteur pas à pas………………………………………………..28
Figure III.7 : Illustration du moteur de l'intérieur………………………………………….28
Figure III.8 : fonctionnement d’une pas complet………………………………………….29
Figure III.9 : Circuit électronique montré le contrôle de moteur pas a pas……………….29
Figure III.10 :le principe du Pont en H …………………………………………………….30
Figure III.11: moteur Nema 23 ……………………………………………………………30
Figure III.12 : Schéma du pont en H ………………………………………………………31
Figure III.13: câblage de contrôleur de moteur avec la carte arduino et le moteur………..32
Figure III.14 : source d'alimentation: +12V ,10A………………………………………….32
Figure III.15 : mini broyeur (CROWN CT 13428)………………………………….…..…33
Figure III.16 : Interrupteur de fin de course …………………………………………….34
Figure III.17 : Armoire électrique……………………………………………………….34
Figure IV. 1 :L'écran de démarrage Arduino………………………………………….…36
Figure IV.2 :L'interface de l'IDE Arduino………………………………………….……37
Figure IV.3 : L'interface de l'IDE Arduino en détail…………………………………….37
Figure IV.4 :Le menu Fichier………………………………………………………….…38
Figure IV.1.5 :La barre d'outils…………………………………………………………..39
Figure IV.6 : Fenêtre principale UGS Classic……………………………………………40
Figure IV.7 : UGS Classic avec visualiser………………………………………………..40
Figure IV.8 : Fenêtre principale(1)………………………………………………………..43
Figure IV.9 : Fenêtre principale(2)………………………………………………………..43
Figure IV.10 : Capture d’ecran de logiciel Xloader ……………………………………..44
Figure V.1: les équipements de la machine CNC…………………………………………45
Figure V.2 :organigramme mode manuel………………………………………………….46
Figure V.7 : Initialiser les axes au point zéro manuellement sur logiciel G code ………..49
Figure V.12 : Initialiser les axes au point zéro manuellement sur logiciel G
code …………………………………………………………………………………………………………………..……..…..…53
Donc le but de ce projet est de présenter les étapes clés pour réaliser cette
machine qui est capable de Dessin et découpe sur bois, sur aluminium, ainsi
que sur plastique.
1
Chapitre I : Description générale de la machine a commande
numérique(CNC) :
I.1. introduction:
La machine CNC (Computer Numerical Control) ou bien La machine à commande
numérique est une machine contrôlée par ordinateur qui peut être utilisée pour fabriquer
des pièces très précises.
Pour ce faire, la machine guide l’outil dans les trois directions du système de coordonnées
cartésiennes, c’est-à-dire le long des axes X, Y et Z.
Les flèches dans la figure ci-dessous illustrent les trois directions dans lesquelles la fraiseuse
CNC peut se déplacer.
La fraiseuse CNC peut usiner de nombreux matériaux différents, tels que l'acier, l'aluminium,
le laiton, le cuivre et le plastique. Un moulin n'est pas conçu pour couper du bois et ne
devrait pas être utilisé pour cela.
Des exemples d'opérations pouvant être effectuées dans une fraiseuse à commande
numérique consiste à découper une forme de profil, à graver du texte, à percer des trous et
à créer des alvéoles de roulement.
2
I.2. historique du CNC :
Les premières machines commerciales à commande numérique ont été construites dans les
années 1950 et ont évolué à travers plusieurs étapes :
1953 - À l'aide d'un système de lecture sur bande magnétique, un système de commande
numérique nommé Numericord a été mis au point en avril 1953 par les efforts conjoints de G
& L, du MIT et de General Electric Co. (Cuttingtoolengineering 2005
1960 - Le contrôle numérique direct (DNC) élimine les programmes de perforation de la bande
de papier et permet aux programmeurs d’envoyer des fichiers directement de l’ordinateur au
contrôleur de la machine-outil.
1997- Introduction de systèmes OMAC (Open Modular Architecture Control) basés sur une
fenêtre PC pour remplacer les contrôleurs «firmware».
Plus récemment, les microprocesseurs ont rendu les commandes CNC encore moins chères,
avec comme point culminant la disponibilité de la commande numérique pour le marché des
loisirs personnels et de la commande numérique par ordinateur. Le projet de contrôleur de
machine amélioré, ou EMC2, était un projet visant à mettre en œuvre un contrôleur Open
Source à commande numérique lancé par le NIST, l'Institut national de la normalisation et de
la technologie, à titre de démonstration. Quelque temps en 2000, le projet est passé dans le
domaine public et Open Source, et EMC2 est apparu peu de temps plus tard en 2003.
Le fondateur d’Arts Finnerty, fondateur d’Art soft, a développé Mach3 comme un dérivé des
premières versions d’EMC, qui fonctionnait sous Windows au lieu de Linux, le rendant ainsi
encore plus accessible au marché des commandes numériques personnelles. La société Art,
Art Soft, a été fondée en 2001.Les logiciels EMC2 et Mach3 sont tous deux vivants et en
plein essor, de même que de nombreuses autres technologies CNC.
3
I.3.Principe de fonctionnement d’une machine numérique :
Les machines à commande numérique (CNC) remplacent progressivement les machines
traditionnelles. La Conception et Fabrication assistée par Ordinateur (CFAO) est surtout
utilisée dans les productions en moyennes et grandes séries (quantité de pièces
identiques), car le coût de mise en œuvre est élevé (personnel qualifié, programmation
parfois longue). Un poste de CFAO est un système automatisé. La position de l'outil
est connue à tout moment grâce à des "moteurs pas à pas" sur les axes Ox, Oy et Oz ,Ce type
de machine se compose donc de deux parties complémentaires (figure I.1):
La partie opérative.
La partie commande.
4
- définir les paramètres d’usinage : diamètre des outils, vitesse de coupe, origine de la
pièce, ...
- transférer ces informations sur la machine.
- fixer la pièce sur la table de la machine .
- vérifier le respect de toutes les consignes de sécurité et lancer l’usinage de la pièce.
A la fin de l’usinage, on doit contrôler la pièce. On peut, alors, fabriquer un grand nombre de
pièces identiques.
5
contrôleur via le programme G-Code va effectuer certains mouvements relativement à ce
système de coordonnées. Les limites switches, en tant que capteurs de fin de courses, sont
également repérés par rapport à ce système de coordonnées.
I.3.3. Système de coordonnées de travail :
Lors de la programmation de la fraiseuse CNC, il est utile de définir un système de
coordonnées personnalisé pouvant être défini n'importe où sur la pièce à fraiser.
Un système de coordonnées de travail peut être configuré en déplaçant la machine de sorte
que le massicot se trouve à l'emplacement approprié qui s’appelle souvent l'origine du
système de coordonnées de travail.
L'origine du système de coordonnées de travail sera généralement définie au centre de la pièce
et avec la pointe de la fraise directement au-dessus de la pièce.
6
I .4.1 . Structure d’un programme pièce :
Un programme pièce en commande numérique se compose d’un ensemble de blocs ou
instructions, ces blocs ou instructions sont constitués de mots composés de lettres majuscules
et d’un format numérique
s
Adresse Signe algébrique Donnée numérique
7
I .4.2 . Les instructions de G code :
(G-code signifie «code géométrique» et suit certaines variations du modèle alphanumérique).
N, G, X, Y, Z, F, S, T, M :
Groupe 1 (motion): G00, G01, G02, G03, G80, G81, G82, G84, G85, G86, G87, G88, G89
Groupe 2 (sélection des plans - XY, YZ, ZX): G17, G18, G19
Groupe 3 (mode absolu / incrémental): G90, G91
Groupe 4 (mode d'avance): G93, G94
Groupe 5 (unités - pouces / millimètres): G20, G21
Groupe6 (compensation du rayon de fraise - CRC): G40, G41, G42
Groupe 7 (correction de longueur d'outil - TLO): G43, G49
Groupe 8 (mode de retour dans les cycles fixes): G98, G99
Groupe 9 (sélection du système de coordonnées de travail ): G54, G55, G56, G57, G58, G59)
I .4.4 . M-code :
La ligne d'un programme peut également inclure des m-codes, qui sont généralement des
codes indiquant à une machine comment effectuer une action. Bien que la garantie ne soit pas
identique sur toutes les machines, voici quelques-uns des codes m standard les plus courants:
8
I .4.5 . Structure d’un programme :
Un programme pièce débute par le symbole % plus commentaire et finit par M30(fin de
programme)
% 01
N10 T1D1
N20 G96 S150 M4
N30 G92 S1000
N40 G0 X60 Z10
N50 G1 X52 Y0 F0.2
N60 G68 X17 Y0 C0.5 D0.2 L0.1 M0.1 F0.2 H0.1 S80
N70 G0 X28 Y100 M30
9
I.5. 2 .Plasma :
Les coupeuses plasma CNC sont utilisées pour couper le métal et le bois (2 dimensions) et
ne nécessitent pas autant de puissance qu'un routeur CNC. Ces machines utilisent une torche à
plasma pour pénétrer dans le bois ou la tôle.
10
I.5. 4. Imprimante 3D :
- Les imprimantes 3D utilisent la technologie CNC et utilisent une technologie similaire à
celle des lasers à commande numérique, mais utilisent une extrudeuse pour déposer lentement
le plastique dans un mouvement cohérent jusqu'à ce que le produit souhaité soit complet.
11
Chapitre II : Conception et fabrication de notre machine :
II.1.Introduction :
Apres avoir donné un aperçu détaillé sur le principe de la commande numérique, maintenant
nous allons nous focaliser sur la phase de la conception de notre machine, ce processus passe
par plusieurs étapes :l'étape de Conception et fabrication de notre machine , l'étape décrivant
le matériel électronique nécessaire pour mener à bien notre réalisation, la phase visant a
mettre en exergue les logiciels qui nous allons utiliser, et enfin le test opérationnel de la
machine avant d’évoquer la conclusion et les perspectives.
On va tout d’abord, commencer par la partie de la conception et la fabrication de notre
machine. Dans cette partie-là un rapport holistique concerne la conception sera développé et
détaillé, les problématiques du sujet et leurs solutions seront également abordés, ainsi que
toutes les étapes essentielles concernant la fabrication des éléments de base de la machine à
trois axes (axe X, axe Y, axe Z).
En réalité, un Axe d’une machine CNC est composé de la façon suivante :
Un chariot mobile assisté par des guides mécaniques.
Un système de transmission vis-écrou (vis à billes).
Un moteur adéquat d’entraînement.
Pièces de fixations
12
Figure II.2 :l’équipement original de la CNC (2).
13
II.3.L’axe X :
Cet axe il est utilisé pour le déplacement en avant et en arrière, Ce tableau ci-
dessous(tableau II.1) Montre le matériels utilisé.
Composants Description
14
La vis sans fin-écrou
La vis sans fin-écrou est une tige
filetée qui permet à l’aide d’unécrou
de transformer la vitesse de rotation
Du moteur en unmouvement de
translation, et aussielle assure
desdéplacements de grande précision,
langeur de 65 cm.
Diamètre : 1.6cm
Accouplement
Axes de guidage
Ecrou
15
Vis de fixation
Plaque en plastique
Cette plaque il est utilisé pour
Assurez-vous de ne pas secouer
l’Axes de guidage.
16
II.3.1.Assemblage de l'axe x:
Après avoir décrit tous les équipements de cet axe, nous rassemblons maintenant ces pièces
Et voila le résultat :
17
II.4.L’axe Y :
Cet axe il est utilisé pour déplacer gauche et droit, Ce tableau ci-
dessous(tableau II.2) montreles matériels utilisés.
Composants Description
Les pièces en bois de l'axe Y(les deux façades)
Deux pièces afin de porter les deux
tubes de guidage et le Vis sans fin-écrou
Les dimensions de chacun sont:
35 x 13 cm. pour chaque une.
pièce latérale
une pièce latérale pour relier les deux
premières pièces en bois et réduire les
vibrations, avec dimensions:
48 x 20 cm.
18
cornière en aluminium Cette cornière utilisé pour fixer les
deux pièces en bois d’axe Y.
19
Figure II.5 :Assemblage de l'axe de la face avant.
20
II.5.L’axe Z :
Cette axe il est utilisé pour déplacer Monter et descendre, Ce tableau ci-dessous(tableau II.3)
montreles matériels utilisés.
Composants Description
Deux pièces en métal
Deux pièces afin de porter les deux
tubes de guidage et le Vis sans fin-
écrou
Les dimensions de chacun sont:
8 x 7 cm. pour chaque une.
21
Une vue comment place les deux
tubes de guidage et le Vis sans fin-
écrou.
II.5.1.Assemblage de l'axe Z:
Après avoir décrit tous les équipements de cet axe, nous rassemblons maintenant ces pièces
Et voilà le résultat :
22
Figure II.8 :Assemblage de l'axe Z(2).
Une fois que chaque axe est installé, nous l'assemblons pour obtenir la forme finale de la
machine.
Figure II.9 :assemblage des 3 axes(1) . Figure II.10 :assemblage des 3 axes(2) .
II.7.Conclusion :
Dans ce chapitre, nous avons abordé le côté mécanique où nous avons préparé l’installation de
la machine CNC, composée de trois axes,
Nous avons installé chaque axe individuellement, qui a sa propre spécificité, puis nous les
combinons ensemble.
23
Chapitre III :Description du Matériels électroniques :
III.1.Introduction :
Apres avoir décrit la partie mécanique, 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 matériels qu’on a utilisés.
Arduino, et son synonyme Genuino2, est une marque qui couvre des cartes électroniques
matériellement libres sur lesquelles se trouve un microcontrôleur
Il existe de nombreux panneaux Arduino avec des propriétés plus ou moins riches, Nous les
mentionnons la carte ArduinoUno, Arduino Nano, ArduinoMega…..etc.
La caractéristique principale de la carte Arduino est un type de MCU ou microcontrôleur
intégré. Actuellement, peut-être depuis longtemps, on utilise deux jeux de microcontrôleurs:
les bras ATMEL 8 bits et les bras 32 bits Cortex-M, conçus par Advanced RISC Machines et
fabriqués par différents fabricants, cartes ATMEL, mais également compatibles Freescale ou
STMicro. À propos de la galaxie Arduino.
Pour résumer rapidement, les panneaux basés sur AVR d’Arduino sont plus simples et ont
moins de mémoire que les panneaux basés sur ARM. Sa capacité informatique est faible mais
généralement moins chère.
La carte la plus couramment utilisée est ArduinoUno. C'est une carte avec un petit contrôleur
AVR 8 bits: ATMega328.
24
Figure III.1 : les domaines d’utilisations de la carte arduino.
La carte ArduinoUno est une carte à microcontrôleur Pour pouvoir l'utiliser, il suffit
simplement de la connecter à un ordinateur à l'aide d'un câble USB, l'alimentation étant
fournie par le port USB (on peut aussi l'alimenter avec un adaptateur secteur ou un jeu de
piles via le connecteur jack).
25
III.2.2.2.Synthèse des caractéristiques :
III.2.2.4.Utilusation de la carte:
La carte arduino se programme avec le langage arduino créé à partir des langages C et C++.
On ne programme pas au collège sur l’IDE arduino avec des lignes de code, mais nous le
ferons en EPI ...
26
----------------------------------------------------
En mode découverte, on les fait fonctionner à partir du logiciel SCRATCH que vous
connaissez déjà : Principe : la carte arduino est déjà programmée par le professeur. Une
application appelée S2A (Scratch to Arduino) utilise ce programme appelé « firmware » pour
établir une communication entre l’ordinateur et la carte via SCRATCH. La carte devient une
simple interface entre l’ordinateur, et les composants branchés sur la carte. Ce système est
agréable, car on teste « en direct » le programme sur la carte. Mais ce système est limité, car il
ne permet pas la programmation réelle de la carte : on faut toujours rester connecté à
l'ordinateur.
----------------------------------------------------
Autres possibilités : on utilise un logiciel de programmation visuelle (de type scratch) qui va
traduire le programme réalisé, en lignes de code arduino. Il ne reste plus qu’à télé verser les
lignes de code dans la carte via l’IDE arduino. Avantage : plus besoin d’ordinateur, la carte
est autonome et devient ‘‘l’ordinateur’’ qui pilote. Inconvénient : si le programme ne
fonctionne pas, il faut le reprendre à l’ordinateur, puis à nouveau traduire et télé verser, c’est
plus long ...
27
III.3.2. Principe de commande en position d’un moteur à courant continu :
Rq :dans notre projet nous avez utilisé des moteurs hybrides (Moteur bipolaire) .
Ce type de moteurs a été choisi car il nous permet de contrôler la vitesse ou la position en
boucle ouverte. il composé par deux bobines(bobine A, bobine B), chaqu'une Contient deux
pôles( A+,A-/B+,B-) ,Ces figures en bas montre le principe de pilotage des bobines :
28
Pas no 1 Pas no 2 Pas no 3 Pas no 4
C'est le principe du Pont en H, si on commande T1 et T4, alors on alimente dans un sens, soit
on alimente en T2 et T3, on change le sens de l'alimentation, donc le sens du courant
29
Figure III.10 :le principe du Pont en H .
FigureIII.11:moteur Nema 23 .
III.3.4.2. Caractéristiques :
Taille: 56,4 mm × 76 mm, arbre non compris (NEMA 23)
Poids: 1 kg (35 oz)
Diamètre de l'arbre: 6,35 mm (0,25 ″) “D”
Pas par tour: 200
Courant nominal: 2,8 A par bobine
Tension nominale: 3,2 V
Résistance: 1,13 Ω par bobine
30
Couple de maintien: 19 kg-cm (270 oz-in)
Inductance: 3,6 mH par bobine
Longueur du fil: 30 cm (12 ″)
Arbre de sortie supporté par deux roulements à billes
Dimensions :4 ,75 ×4,75.
Le contrôleur de moteur C'est un ensemble qui entre le moteur et l’utilisateur qui permet de
convertir des signaux électriques pour que le moteur puisse les interpréter, Il contrôle la
vitesse et la rotation du moteur, composée par deux partie la partie séquencer qui responsable
a le contact avec le microcontrôleur (la carte arduino) ,et les deux ponts H(Un pont en H permet
d'alimenter un bobinage du moteur (une phase) en permettant de changer le sens du courant. Voici
(figure –III .12-) le schéma de principe d'un pont en H :
31
III.4.1.Contrôleurs de Moteurs Pas-à-Pas tb6600 :
III.4.1.1. Caractéristiques:
Alimentation CC 9V-42V, entraînement à flux constant bipolaire à pont en H. Le maximum
de 4,0 A des huit types de courant de sortie.
Contrôleur de moteur: fonction de verrouillage de courant semi-automatique à économie
d'énergie, protection de température intégrée et protection contre les surintensités.
III.5. L’alimentation :
Une source d'alimentation est un appareil pouvant fournir ou décharger de l'électricité.
Cette électricité peut prendre la forme d'alternance, continue, polarité, polygonale,
triangulaire, spécialisée, à impulsions ... ou même excentrique (harmoniques complexes).
Dans notre projet, nous allons l'utiliser comme source d'alimentation pour Alimentée les
Contrôleurs de Moteurs Pas-à-Pas (tb6600).
Qui incluent les caractéristiques suivantes :
AC entrée : 110 /220V , Fréquence : 50 /60HZ, DC sortie : +12V ,10A
32
III.6. la mini broyeur :
cet machine de marque (CROWN CT 13428) est utilisé pour le design et le coupage.
III .6.1.Caractéristiques:
Voltage/fréquence :Entrée: AC 220V/230V, 50Hz
Energie : 150w,Chuck: 0.8-3.2mm
Torsion: 530g / cm,Vitesse de rotation: 8000-35000rpm
Poids: 750g.,1× mini broyeur.,1× manuel.
Un outil universel, équipé d'un foret en acier remplaçable à haute vitesse de précision (0,8 à
3,2 mm).
Produits de haute qualité, appropriés pour le perçage, le meulage, le polissage, la coupe, etc.
Design exquis, prise confortable.
En plastique ABS, poids léger, convient aux travaux de longue durée.
Il peut changer de mandrin rapidement, sans aucun outil.
Peut changer le perçage et le mandrin différents, peut percer des trous de différentes
ouvertures. Petit volume, poids léger, facile à transporter.
33
mécaniquement à un ensemble de contacts. Lorsqu'un objet entre en contact avec l'actionneur,
l'appareil actionne les contacts pour établir ou rompre une connexion électrique.
Les commutateurs de fin de course sont utilisés dans une variété d'applications et
d'environnements en raison de leur robustesse, de leur facilité d'installation et de leur
fiabilité. Ils peuvent déterminer la présence ou l'absence, le passage, le positionnement et la
fin du voyage d'un objet. Ils ont d'abord été utilisés pour définir la limite de déplacement d'un
objet; d'où le nom "Limit Switch".
34
III.9. Conclusion :
Dans ce chapitre, nous avons présenté les différents appareils électroniques utilisés dans la
machine à commande numérique, qu’il s’agisse de la partie commande ou de la partie
opérative.
35
Chapitre IV :Les logiciels de gestion de la machine cnc :
IV.1.introduction :
Comme nous l'avons mentionné dans le premier chapitre, la machine à commande numérique
comprend deux parties, la partie opéretive et la partie commande, dans les deux chapitres
précédents nous allez montre la partie pratique (PO)et nous passons maintenant à la partie
contrôle(PC), qui est un ensemble de logiciels permit de contrôlés la machine CNC.
IV.2.arduino IDE :
IV.2.1.introduction :
L’environnement de développement intégré (IDE) Arduino est une application multiplate-
forme (pour Windows, macOS, Linux) écrite en langage de programmation Java. Il est utilisé
pour écrire et télécharger des programmes sur des cartes compatibles Arduino, mais aussi,
avec l'aide de cœurs tiers, de cartes de développement d'autres fournisseurs.
Le code source de l'EDI est publié sous licence GNU General Public, version 2L'IDE Arduino
supporte les langages C et C ++ en utilisant des règles spéciales de structuration du
code.L'IDE Arduino fournit une bibliothèque de logiciels du projet Wiring, qui fournit de
nombreuses procédures d'entrée et de sortie communes. Le code écrit par l'utilisateur
nécessite seulement deux fonctions de base, pour le démarrage de l'esquisse et de la boucle du
programme principal, qui sont compilées et liées à un talon de programme main () dans un
programme exécutable cyclique avec la chaîne d'outils GNU, également incluse dans la
distribution IDE. L'IDE Arduino utilise le programme avrdude pour convertir le code
exécutable en un fichier texte au codage hexadécimal qui est chargé dans la carte Arduino par
un programme de chargement dans le microprogramme de la carte.
IV.2.2.Lancement du logiciel :
Lançons le logiciel en double-cliquant sur l’icône avec le symbole "infinie" en vert. C’est
l’exécutable du logiciel. Après un léger temps de réflexion, une image s’affiche :
36
Figure IV.2 :L'interface de l'IDE Arduino
Ce qui saute aux yeux en premier, c’est la clarté de présentation du logiciel. On voit tout de
suite son interface intuitive. Voyons comment se compose cette interface
IV.2.3.Présentation du logiciel:
Correspondance
Le cadre numéro 1 : ce sont les options de configuration du logiciel
Le cadre numéro 2 : il contient les boutons qui vont nous servir lorsque l’on va programmer
nos cartes
Le cadre numéro 3 : ce bloc va contenir le programme que nous allons créer
Le cadre numéro 4 : celui-ci est important, car il va nous aider à corriger les fautes dans notre
programme. C’est le débogueur
37
IV.2.4.Approche et utilisation du logiciel :
La barre des menus est entourée en rouge et numérotée par le chiffre 1
IV.2.4.1.Le menu File :
C’est principalement ce menu que l’on va utiliser le plus. Il dispose d’un certain nombre de
choses qui vont nous être très utiles. Il a été traduit en français progressivement, nous allons
donc voir les quelques options qui sortent de l’ordinaire :
Carnet de croquis : Ce menu regroupe les fichiers que vous avez pu faire jusqu’à maintenant
(et s’ils sont enregistrés dans le dossier par défaut du logiciel).
Exemples (exemples) : Ceci est important, toute une liste se déroule pour afficher les noms
d’exemples de programmes existants ; avec ça, vous pourrez vous aider/inspirer pour créer
vos propres programmes ou tester de nouveaux composants.
Télé verser : Permet d’envoyer le programme sur la carte Arduino. Nous y reviendrons ;) .
Télé verser avec un programmateur : Idem que ci-dessus, mais avec l’utilisation d’un
programmateur (vous n’en n’aurez que très rarement besoin).
Préférences : Vous pourrez régler ici quelques paramètres du logiciel. Le reste des menus
n’est pas intéressant pour l’instant.
38
IV.2.4.2.Les boutons :
Voyons à présent à quoi servent les boutons, encadrés en rouge et numérotés par le chiffre 2.
Universel G-Code Sender est un expéditeur multiplateformes basé sur Java et compatible
avec GRBL et TinyG / g2core . Utilisez ce programme pour exécuter (piloter) une machine
CNC contrôlée par GRBL ou TinyG / g2core.
Version La description
39
IV.3.1.Fonctionnement
Pour UGS Classic, double-cliquez simplement sur le fichier jar. Sur certaines plates-
formes, vous devrez peut-être exécuter le script de démarrage inclus.
Pour UGS Platform, exécutez le script de démarrage:bin/ugsplatform
IV.3.2.UGS Classic :
40
IV.3. 3.Des commandes permettent de causer avec le logiciel et la carte :
$$ : Voir les paramètres de la machines et permet de les modifier (par exemple je tape.
$110=1490 : qui va changer la valeur $110 (vitesse max en x).
$H homing : la machine va chercher son zéro machine (capteur de fin de course X et Y).
Il faut préférer faire deux commandes Gcode G90 X0 Y0; puis G90 Z0;
Vous pouvez créer des macros avec ces deux commandes pour éviter de les taper à chaque
fois !
IV.3.4.Utilisation basique :
Allumer la machine, ouvrir universel G code Sender
Commencer par un “homing” pour aller chercher le 0 machine (capteur fin de course)
Ensuite faites le 0 logiciel en plaçant la broche à l'endroit ou vous souhaitez commencer 0,0
Ouvrir un fichier G code.
Visualiser le fichier
Lancer (Send).
IV.4.InKscape :
IV.4.1. introduction :
Inkscape est un logiciel libre de dessin vectoriel, multiplateforme : il s'utilise aussi bien sur
Windows, Mac OS X et Gnu/Linux. Inkscape est intuitif et ses utilisateurs s'amusent
rapidement dès la première prise en main. Logiciel vectoriel performant, entièrement dédié à
la création et aux modifications des chemins, il ravira toutes les personnes ayant un besoin
d'illustration sur divers supports et de taille variable. En effet, Inkscape s'utilise aussi bien
pour créer des flyers, logos, affiches, cartes de visites, illustrations, interfaces de logiciels,
d'applications ou de site web. Il est également utile au dessin technique ou à la création de
fonte (en SVG), même si cet usage n'est pas son objectif premier.
41
Son format d'enregistrement est le SVG, format préconisé par le W3C et s'allie aisément avec
le HTML5, CSS3 et JavaScript. Ce qui favorisera, peut-être, l'augmentation d'illustrations au
format SVG dans les pages webs.
IV.4.2. interface :
Inkscape se présente en une seule fenêtre. La part belle est laissée au canevas, l'espace blanc
où se déroule la création de l'image.
1. Le premier menu déroulant horizontal contient les commandes essentielles du logiciel
communes à de nombreux autres (copier, enregistrer...) et spécifiques à Inkscape (Chemin,
Texte., Extensions...).
2. La deuxième barre horizontale affichent les options de l'outil sélectionné. Ce menu est
donc contextuel : il s'adapte aux spécificités de l'outil.
3. La barre verticale située à gauche présente tous les outils principaux du logiciel.
4. Le grand espace blanc est le canevas, là où l'image se créer. Un cadre noir représente, par
défaut, une page au format A4.
5. La barre à droite du canevas contient des boutons vers des commandes utiles, autrement
accessible via les menus déroulants du premier menu horizontal.
6. La dernière barre de droite concerne le magnétisme.
7. En haut et à gauche du canevas, des règles, pour rendre compte de l'échelle de l'image et
pour placer des guides précisément.
8. À droite et en bas du canevas, des ascenseurs sont visibles pour se déplacer sur lcanevas.
9. L'avant dernière barre horizontale située au bas de la fenêtre présente des raccourcis vers la
palette des couleurs.
10. La dernière barre horizontale contient des informations diverses, comme les couleurs de
l'objet sélectionné, les calques, une barre d'état contenant des informations sur les opérations
en cours, les coordonnées du pointeur, le zoom. D'autres commandes sont disponibles au
travers de dialogues qui s'attachent à droite du canevas pour ne pas gêner la visibilité.
42
Figure IV.8 :Fenêtre principale(1) .
Dans notre projet, nous allons utiliser ce logiciel pour concevoir les formes que nous voulons
dessiner avec une machine à commande numérique(CNC) .
I.5.grbl :
Grbl est un logiciel “firmware”, exécuté sur un Arduino, qui analyse le G-Code reçu, construit
un modèle mathématique des actions à effectuer, et exécute ces mouvements en envoyant un
flot continu de pulsions haute fréquences aux moteurs pas à pas. Le seul petit détail, c’est que
Grbl n’a aucune interface utilisateur, Il faut donc disposer d’un autre logiciel, exécuté sur une
autre machine, en liaison avec Arduino, pour pouvoir interagir avec la machine. Il existe
plusieurs de ces logiciels, par exempleGrblContrôleur ,X loader.
IV.6.Xloader :
XLoader est un chargeur de classes Java. Il est conçu pour chiffrer les classes Java, décoder
les classes Java chiffrées au moment de l'exécution, charger les classes et rechiffrer les classes
après l'exécution du programme.
43
Comment utiliser Xloader pour charger une nouvelle version de grbl dans le contrôleur
Arduino / X.
La capture d'écran de gauche montre la fenêtre affichée par Xloader au démarrage.
Entrez le chemin du fichier ou naviguez jusqu'au fichier .hex que vous souhaitez charger dans
le contrôleur Arduino / X.
Sélectionnez le type de périphérique dans lequel vous allez charger (Uno / ATmega328 pour
le contrôleur Arduino / X).
Sélectionnez le port COM auquel votre contrôleur Arduino / X est connecté.
Le débit en bauds devrait être de 115200.
Appuyez sur le bouton "Upload".
Une fois le fichier .hex chargé dans le contrôleur Arduino / X, la capture d'écran de droite
indique la taille du fichier chargé ou un message d'erreur en cas d'échec du téléchargement.
IV.7.conclusion :
Dans ce chapitre, nous avons mentionné les différents logicies utilisés par la machine
numérique pour fonctionner correctement.
44
Chapitre V : Test de la machine:
V .1.Introduction :
Après avoir passé la définition de CNC et sa conception et la collection de tous les logiciels et
fournitures électroniques, nous commençons maintenant à fonctionner, Au début nous lions
tous les équipements et images ci-dessous montrant comment câblé la carte Arduino avec les
contrôleurs du moteurs(drivers) et les moteurs des 3axes( X,Y,Z).
45
V .2.Mode de fonctionnement :
Il est existé deux modes de fonctionnement :
Mode manuel
Mode automatique
V .2.1.mode manuel:
En mode manuel, l’opérateur peut commander les moteurs directement par les boutons
(X+,X-,Y+,Y-,Z+,Z-,..) au niveau de logiciel G-code Sender, l’organigramme en bas
exprimer les étapes de travail du cet mode :
v
v
Configurer et télé verser le programme GrblUpload dans
l’Arduino via port USB.
46
V .2.1.1.Exemple de commande en mode Manuel :
Sans cette exemple nous avez désigné un carrée aves les dimension suivant ( 80*80)mm.
47
Figure V.4:programme arduino(2).
Figure V.7 : Initialiser les axes au point zéro manuellement sur logiciel G code
49
Figure V.8 : Commander les moteurs directement.
50
V .2.2.Mode automatique :
51
1) Brancher L’arduino à l’ordinateur via un port USB.
Une fois que le fichier est importé ou bien la forme à découper est tracée, on va dans le menu
" Extensions → GcodeTools→chemin vers G_code.
52
5) Initialiser les axes au point zéro manuellement sur logiciel G code :
Figure V.12 : Initialiser les axes au point zéro manuellement sur logiciel G code
53
Conception d’un Forme géométrique (carrée) avec les dimensions suivantes (4cm*4 cm) :
% // début de programme
G90 G17 G 21 //déplacement en coordonnée absolue, plan( x, y ),programmation en
(mm).
M03 // déplacement en sens horaire
F500 // vitesse de déplacement
G00 Y40 // déplacement rapide (40mm sur l’axe y)
G00 X40 // déplacement rapide (40mm sur l’axe x)
G00 Y-40 // déplacement rapide (40mm sur l’axe y dans le sens inverse)
G00 X-40 // déplacement rapide (40mm sur l’axe x dans le sens inverse))
G00 G43 H1 Z-30 //
G91 G28 Z0 // déplacement relatives(incrémental) vers les points d’origine
G91 G28 X0 //
G91 G28 Y0 //
G90 // déplacement en coordonnée absolue
M30 // Fin du programme, réinitialisation, rembobinage
% // fin de programme
54
Figure V.15 :test réel.
V.3 . Conclusion :
Dans ce chapitre nous avons testé notre machine CNC qui passe a plusieurs étapes et ensuit
obtenir le résultat
55
Conclusion générale :
Ce travail a été développé dans le cadre du projet de fin d’étude, qui nous a permis d’acquérir
des connaissances précieuses dans plusieurs domaines (domaine électronique en fabriquant
nos propres circuits, en étudiant divers matériels électroniques, et le câblage entre eux , ainsi
qu’en domaine de la mécanique et des mesures en étudiant les moteurs pas a pas, et en
concevant la machine. Le contrôle numérique, la zone de programmation à travers laquelle
nous contrôlons la machine.
Ce projet a également été une occasion précieuse de relier le domaine théorique que nous
avons étudié tout au long de la période universitaire au domaine appliqué qui Nous allons à
lui, et d’acquérir une bonne expérience au niveau de la perception pratique.
Après tout ce que nous avons fait, cette machine doit encore être développée soit dans la
partie contrôle, soit dans la partie pratique
Je vais donc continuer dans ce domaine pour atteindre un meilleur résultat obtenu.
56
Bibliographié :
1/SINUTRAIN 828D ShopMill) Rapport de Projet de Fin d’Études
2/Build Your Own CNC Machine(livre)
3/Fundamentals of CNC Machining livre)
4/James Floyd Kelly, Patrick Hood-Daniel - Build Your Own CNC Machine (Technology
in Action)-Apress (2009)
5/Make - Design for CNC - Furniture Projects and Fabrication Technique(livre).
6/Mr. MAHDJOUBI Abdelfettah (Etude et réalisation d’une machine outil à commande
7/numérique (fraiseuse 3 axes)). Rapport de Projet de Fin d’Études
8/www ,technologuepro ,com
9/http://www.evxonline.com
10/ https://forum.pololu.com
11/www .robotshop .com
12/https://www.dfrobot.com
13/https://www.amazon.fr
14/http://www.arduino.cc
1/5http://arduino.blaisepascal.fr
16/https://fr.wikipedia.org
17/https://docplayer.fr
18/https://wiki.mdl29.net
19/https://zestedesavoir.com
20/https://github.com
21/https://docplayer.fr
22/http://www.qhunt.com
23/https://www.quora.com
24/Bentalebmokhtargasmielhadi (Réalisation et commande d’une machine cnc à base
25/des moteurs pas à pas) Rapport de Projet de Fin d’Études
57
30/( Jean Wasilewski et Pierre Letousey Filière Informatique Microélectronique
Automatique 2015 ‐ 2016)
Annexes :
1ere étape : Apporter le circuit électronique qui composé par un séquenceur (la parie qui
communiqué avec le microcontrôleur et deux
Pont H (A, B).
2éme étape : simulation du circuit par logiciel proteus (logiciel de conception de circuits
imprimés et outils de simulation intégrés pour le développement EDA moderne. Proteus
Design Suite associe facilité d’utilisation et fonctionnalités puissantes pour permettre la
conception, le test et la mise en page rapides de circuits imprimés professionnels)
58
interface de logiciel proteus .
1) Nous avons divisé le circuit en trois parties, partie(1) le séquenceur, parie(2) le pont
H(A), partie(3) le pont H(B).
2) Le principe de fonctionnement de pont H(A) lui-même de pont H(B), Nous allons
donc créer deux versions du partie pont H (A).
3éme étape : Faire le circuit par logiciel eagle (Easily Applicable GraphicsLayout Editor) est
un logiciel fourni par la société CADSOFT, qui permet la réalisation de typons en vue de
construire une carte électronique.
59
organigramme montre les étapes de circuit par logiciel eagle.
Le schematique du séquenceur.
60
.Le schematique duPont H(A) Le schematiquePont H(B) .
61
Placements des défirent composants
les composants utilisé : le tableau en bas au montrée les composants qui on utilisé
Diode schottky 4
Condensateurs 1 0.1 uf
Resistances 4 12kΩ
Resistances 4 2k2Ω
62
Resistances 4 150Ω
Resistances 4 330Ω
Resistances 2 10KΩ
Resistances 2 1KΩ
Borné 3 pates 3 /
Borné 6pates 3 /
Ledscoleurs 4 3V
Note : Nous n'avons pas utilisé ce circuit Par manque de quelques composents.
63
Annexe 2 :Tableau des fonctions préparatoires G code :
Codes M:
M03, M04, M05 Broche sens horaire, sens antihoraire, arrêt de broche
M21 Activation pression broche /M121 à M127 Palier pression selon outils
M07,M08, M09 Mise en route arrosage/ arrêt arrosage
M02 Arrêt du programme
64
M30 Fin du programme, réinitialisation,rembobinage
M99 Fin du sous-programme
M00, M01 Arrêt du programme, arrêt optionnel ou avec condition
M06 Changement d'outil.
autre code :
Les codes
• Fonctions préparatoires (G), fonctions d'appel de mode d'interpolation (G 0), cycles machine
• Coordonnées de points (X, Y, Z, I, J, K)
• Vitesses, avances… (S, F)
• Fonctions auxiliaires (M) qui permettent d'enclencher la lubrification, de changer d'outil, ou
de déclencher des
accessoires.
X : position absolue
Y : position absolue
Z : position absolue
A : position (rotation autour de l'axe X)
B :position (rotation autour de l'axe Y)
Programmation de commande numérique 2
C : position (rotation autour de l'axe Z)
U : position Relative OU axe secondaire
V : position Relative OU axe secondaire
W : position Relative OU axe secondaire
M : code Fonction "Machine" ou "Modale"(un autre type d'action ou de code
machine(*))(parfois référencé
comme fonction 'diverse' ("Miscellaneous" en anglais)
Permet aussi de contrôler des entités externes à la machine proprement dit (magasin
auxiliaire, refroidisseur,
compteur ETC)
D : association d'un correcteur de jauge outil
F :vitesse de déplacement
S : vitesse de rotation
C : s'il est intégré dans un bloc de cycle fixe ébauche ou finition, C désigne un chanfrein
65
N :numéro de ligne
Le numéro de bloc n'est pas obligatoire à chaque ligne avec les commandes ISO Fanuc, il
désigne juste un endroit du
programme où l'on peut ordonner un saut d'opération ou un départ d'opération, le plus souvent
avant un changement
d'outil
V : permet de contrôler une vitesse de rotation dans une machine avec diverses configurations
R :Rayon d'arc ou option passée à un sous programme
P :Temps de pause ou option passée à un sous programme ou appel de sous programme
(Précédé de M98 par
ex)
T Sélection d'outil
I :Axe X des données d'un arc
J : Axe Y des données d'un arc
K : Axe Z des données d'un arc
D :diamètre de coupe/décalage pour l'épaisseur d'outil
H : décalage pour la hauteur de l'outil
Origines :
• Origine programme (OP) : c'est le point origine du programme à partir duquel les
mouvements de la machine
sont programmés.
• Origine Machine (OM): Cette expression existe dans des manuels de constructeurs de
machines-outils sans pour
autant apporter de réponse, voire sans fondement. L'origine machine est une coordonnée mesure
particulière.
Lors de l’initialisation de l’axe ( dans le cas de capteurs relatifs) au passage du top zéro de la
règle, le processus
d’initialisation permet de forcer la valeur du registre du point courant par la valeur de l’axe dans
le registre P16
(cas d’un DCN NUM). Cette valeur est souvent non nulle qui remet en cause la notion d’ «
origine » d’une part, et
66
« machine » d’autre part puis que c’est une coordonnée mesure particulière. Cette expression
est sans fondement
dans le cas de technologie de règle absolue, et sans fondement tout court.
• Origine mesure (Om) : L'origine mesure est propre à chaque axe asservi. Dans le cas d'une
structure articulaire
de type RRPPP ( rotoïde, rotoïde, prismatique, prismatique, prismatique) il existe 5 origines
mesures. Chaque axe
mesure est constitué d'une origine et d'une dimension. La dimension de l'espace vectoriel de
cette structure est de
dimension 5. Suivant le type de technologie des capteurs permettant l'asservissement des axes,
il est nécessaire de
procédé à l'initialisation de la partie opérative avec la partie commande. Dans le cas de capteur
relatif, les POM
(Prise d'origines mesure) servent à établir les références de la mesure sur chaque axes des
machines outils ne
possédant pas de règles avec des capteurs absolus (détection du zéro du capteur de mesure).
Les origines mesures appartiennent à l'espace articulaire (espace de la structure cinématique de
la machine en
robotique). L'espace travail, ou de la tâche est celui où se trouve les autres éléments de la cellule
élémentaire de
production. La dimension vectorielle est 3. Il y a donc une endomorphisme d'espaces vectoriels
entre l'espace
articulaire de la machine et l'espace travail. Il est donc totalement inutile de représenter le zéro
mesure comme un
point concourant de tous les axes dans l'espace travail. C'est un sophisme.
• Origine porte pièce (Opp) : C'est le point caractéristique de la liaison encastrement supposée
parfaite entre la
machine et le porte-pièce. En tournage on le place souvent à l'intersection de la face avant du
mandrin et de l'axe
de la broche (axe Z, pour les mandrins qui ne sont pas changés régulièrement). En fraisage pour
des raisons de
standardisation on alèse des centreurs sur les tables des machines outils pour le situer plus
facilement.
Programmation de commande numérique 6
67
• Origine pièce (Op) :( appélé G... 54 par exemple, G55,etc. ) C'est le point d'intersection de
l'isostatisme. Ce point
situe la pièce par rapport au porte-pièce.
• Distance origine programme (OP) - origine machine (OM) : c'est la distance que la machine
doit additionner pour
passer de son origine (OM) à l'origine du programme (OP).
• "DECALAGE" (dec) : distance vectorielle de l'origine porte-pièce (Opp) à l'origine
programme (OP).
• "PREF" (pref) : distance vectorielle de l'intersection des origines mesure de chaque axe qu'on
appelle souvent
Origine mesure pour simplifier (Om) à l'origine porte-pièce.
(POM ou OM) + PREF = OPP OPP + DECALAGE = OP
68