La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Une application avec un moteur pas-à-pas, un PIC et le langage C Par: André Théberge Le 2 Mai 2006.

Présentations similaires


Présentation au sujet: "Une application avec un moteur pas-à-pas, un PIC et le langage C Par: André Théberge Le 2 Mai 2006."— Transcription de la présentation:

1 Une application avec un moteur pas-à-pas, un PIC et le langage C Par: André Théberge Le 2 Mai 2006

2 Agenda Théorie du moteur pas-à-pas (stepper motor) Le circuit de drive, et linterface au PIC La sous-routine en langage C Une application concrète: la tête à diviser électronique Questions

3 Introduction au moteur Le moteur pas-à-pas se distingue du moteur conventionnel par: 4 ou 6 fils au lieu de 2. Une multitude denroulements et de pôles La capacité de motion angulaire avec précision. En appliquant la bonne séquence dimpulsion sur les enroulements, on peut faire tourner le moteur dans le sens-horaire ou anti-horaire et aussi contrôler sa vitesse de rotation.

4 Un exemple de moteur

5 La rotation du moteur Enroulement 1a Enroulement 1b Enroulement 2a Enroulement 2b

6 Unipolaire vs. Bipolaire Unipolaire utilise 5 ou 6 fils, un ou 2 commun Bipolaire utilise 4 fils

7 Autres types de moteurs Moteurs à réluctance variable Moteurs bi-filaires Moteur multiphase Pour plus dinformations:

8 Caractéristiques de notre moteur exemple: Unipolaire, 6 fils 200 pas, chacun de 1.8 degrés Chaque enroulement: 10 ohms, 8V DC Couple (Torque ) suffisant pour entraîner la charge (Tête à diviser)

9 Circuit de drive et interface au PIC 1er design: utiliser 4 x TIP-31 Ic=3A, Vce=1.2V et hfe=20

10 Circuit de drive et interface au PIC 1er design: utiliser 4 x TIP-31 Ic=3A, Vce=1.2V et hfe=20 2ième design: utiliser 4 x TIP-121 Ic=5A, Ib=12mA, hfe=1000 Ib=375mA !!!

11 La routine drive_stepper en C BYTE const POSITIONS[4] = {0b1000, 0b0010, 0b0100, 0b0001}; drive_stepper(BYTE speed, char dir, int32 steps) { static BYTE stepper_state = 0; int32 i; for(i=0; i

12 Application: la tête à diviser PIC utilisé: PIC16F876, 28 broches Moteur branché (via driver) sur PC0-PC3 LCD 16x1 sur port B, multiplexé avec clavier 6 touches 2 alimentations séparées, une pour le moteur (10-12VDC), une pour la carte avec PIC (9V)

13 Le PCB du contrôleur à PIC

14 Clavier de contrôle Avance manuelle et mise à zéro Facteur de division du cercle (# dents pour un engrenage) Avance par secteur: 360 deg. / facteur Anti-horaire / -Horaire / +Enter

15 La tête à diviser Utilisé sur une fraiseuse pour tailler des engrenages: 8 set de couteaux/pitch pour des profils de dents différents Le matériel à tailler est réduit au préalable au bon diamètre avec un tour à métal et tenu dans un chuck à trois mords. Le chuck tourne à 1/40 de tour, pour chaque tour de poignée En remplaçant la poignée par un moteur, on obtient 200*40 pas pour chaque tour complet. Pour un engrenage de 80 dents ou moins, lerreur angulaire est de 1% ou moins (erreur maximale: 1/25 de degré), si on ne tiens pas compte du back-lash

16 Une tête à diviser sur une fraiseuse

17 La fraiseuse en opération

18 Exemple dutilisation Touche Avance manuelle - ou + pour faire tourner le moteur et lenligner enter pour remettre le compteur de pas à zéro Touche Facteur de division - ou + pour choisir entre 1-255, ensuite enter Touche Avance par secteur - ou + pour avancer ou reculer dune dent

19 Exemple: Tailler un engrenage de 38 dents 1ère coupe 8000/38 = > 211 pas 2ième coupe 8000/38*2 = > 421 pas – 211 = 210 pas 3ième coupe 8000/38*3 = > 632 pas – = 211 pas 4ième coupe … Le processus se continue jusquà 38 coupes La somme de tous les pas = 8000

20 Revision du code en C Stepper.c

21 Conclusion Présentation des moteurs pas-à-pas Consulter les URLs suggérés Exemple de driver (hardware) avec des darlingtons. Exemple de sous-routine (software) en C Application pratique, qui permet de semi-automatiser la fabrication dengrenages


Télécharger ppt "Une application avec un moteur pas-à-pas, un PIC et le langage C Par: André Théberge Le 2 Mai 2006."

Présentations similaires


Annonces Google