Accueil > Forum > > > > Actionner un moteur pas à pas avec un PIC
Actionner un moteur pas à pas avec un PIC
mardi 10 novembre 2009 à 20:56:53 |
Actionner un moteur pas à pas avec un PIC

pont
|
Bonjour,
C'est curieux qu'il n'y a pas de rubrique de PIC, alors qu'il y en a de microprocesseurs inconnus, et que toutes les écoles des lycées aux classes d'ingénieurs utilisent des PIC et exclusivement. Enfin bon...
Je prends le PIC16F88, qui est quasi le même que le PIC16F84, car il peut être débugué, c'est à dire corriger les erreurs plus facilement.
Le moteur pas à pas a deux bobinages décalés magnétiquement de 90°, la bobine 1-3 et la bobine 2-4 donc il faut une séquence pour l'alimenter.
Il y a donc du +, du - et du zéro o. Chaque ligne représente une étape.
A) 1+ 2o 3- 4o
B) 1o 2+ 3o 4-
C) 1- 2o 3+ 4o
D) 1o 2- 3o 4+ et on recommence en A.
Mais si à partir de D on change de sens, il faut repartir en sens inverse, c'est à dire remonter à C, B, A, comme cela:
E) 1- 2o 3+ 4o =C
F) 1o 2+ 3o 4- =B
G) 1+ 2o 3- 4o =A
H) 1o 2- 3o 4+ =D
I) 1- 2o 3+ 4o =C
J) 1o 2+ 3o 4- =B
K) 1+ 2o 3- 4o =A etc...
Il faut réserver des broches pour la programmation et le débugage, donc elles restent connectées au connecteur, ce sont la 4 pour la programmation, la 12 pour la "clock" et la 13 pour les données du dialogue in situ (ICSP) Que reste-t-il?
Il faut 4 diodes rouges pour représenter les 4 états +, ce seront RB0, RB1, RB2, RB3, donc les broches 6,7,8,9, et 4 vertes pour représenter les - : RA0, RA1, RA2, RA3, les broches 17,18,1,2.
Total 8 broches alimenteront 8 diodes, par précaution il ne faut pas alimenter 8 diodes de 10mA sur le PIC, aussi on intercale un ULN2803A, juste un ampli à 8 voies qui peut supporter pas mal, des diodes bicolores à 3 broches sont idéales, mais en accolant une verte et une rouge on s'en sortira, à condition de mettre les 4 petits couples en rond. avec des résistances, ou un réseau de 8 résistances de 470 ohms.
Il ne reste plus alors qu'à programmer, et j'attends vos réflexions...
Amicalement
pont
|
|
mercredi 11 novembre 2009 à 15:16:50 |
Re : Actionner un moteur pas à pas avec un PIC

edfed
|
trop facile
il faut une table de 2^n etapes et un compteur 8bits.
les 2 enroulements sont en fait:
PR & QS
ça fait un cercle PQRS
là, pour tourner, il faut 4 signaux binaires comme tu dis. cette partie ne pose pas de probleme.
par contre, il faut etre clair quand aux etats:
quand c'est de P vers R, on dit +, quand les deux sont au meme potentiel (depreference 0), on dit, 0
quand c'est de R vers P, ça veut dire -.
pour tourner dans un sens, incrementer le compteur qui sert a pointer dans le tableau de 8 pas (par exemple).
un tableau qui ressemble
à ça:
P Q R S
0000
1001
0000
1100
0000
0110
0000
0011
pour tourner dans l'autre sens, il faut decrementer.
avec une sorte de compteur 32bits, on peu faire aussi un comptage tres precis de l'angle du moteur sur un tres grand nombre de tours.
avec une broche CLK et une autre, Sens, on peu
piloter
ou alors, avec une broche pour envoyer un mot de consigne, on pire selon les delires du codeur.
etc etc.
allez, au boulot, tu veu pas qu'on, le fasse pour toi non plus?
en attendant, tu peu aussi essayer en asm X86 pour piloter les 8 sorties du port paralelle sous dos, c'est assez sympa à faire ça aussi.
me:
nop
ret
|
|
mercredi 11 novembre 2009 à 15:20:23 |
Re : Actionner un moteur pas à pas avec un PIC

edfed
|
et ce forum est trop craignos car on peu meme pas editer les messages.
decidement, il est temps que je crée un forum asm français plus convivial.
me:
nop
ret
|
|
mercredi 11 novembre 2009 à 19:25:12 |
Re : Actionner un moteur pas à pas avec un PIC

pont
|
Bonjour edfed,
Merci de ta participation, c'est vrai que l'éditeur de ce forum n'est pas prévu pour de la programmation, mais je doute que tu trouves mieux car c'est tout copié sur le même système. Mais au cas où tu trouverais préviens-moi, car un vrai forum en français en asm, ça manque vraiment.
Concernant le contenu de ton message, je n'ai pas tout compris, donc je risque de mal interprèter certains points qui sont peut-être parfaits parce que je n'ai pas tout vu. A ce jour j'ai pu faire tourner un moteur pas à pas unipolaire, et effectivement cela ressemble à ce que tu dis. Mais en bipolaire, c'est tout différent car il n'y a pas que deux états zéro et un, mais trois: plus, moins et zéro, un état doit donc se coder sur deux bits et non un seul.
J'ai fait un dessin de tous les branchements, pour une carte d'essai; ce n'est pas un circuit imprimé, c'est intermédiaire, l'avantage est que chacun peut s'en servir comme ça en câblage à la main, ou faire un circuit imprimé, car tout est "précâblé", il n'y a d'ailleurs pas grand chose, le moteur est représenté par 4 leds rouges et 4 vertes, il n'y a que 2 circuits intégrés, le PIC16F88, et le buffer ULN2803A et quelques petites pièces.
J'aimerais mettre ce dessin sur le forum, mais comment faire, c'est du jpeg d'environ 60ko, c'est + facile de discuter sur la base d'un dessin, que l'on peut donc critiquer en connaissance de cause. J'ai déjà expliqué le branchement mais le voir c'est mieux.
Dans la prochaine étape, j'essaierai de présenter le programme. Si tu veux une copie du dessin à ton mail je peux te l'envoyer.
Cordialement
pont
|
|
jeudi 12 novembre 2009 à 21:59:39 |
Re : Actionner un moteur pas à pas avec un PIC

pont
|
Bonjour,
J'ai regardé cela, il n'y a pas besoin de table ni de compteur 8 bits.
En fait il n'y a que 4 états, chacun codé sur 8 bits, la difficulté étant le changement de sens de parcours des états, car il faut que le programme puisse se parcourir en descendant, ce qui est habituel et facile, mais aussi en remontant, ce qui est moins évident.
Mais j'ai réussi ce tour de force, et je l'ai essayé sur une plaque d'essai de MiKroelektronica, qui est criticable mais a le mérite d'exister en attendant mieux et elle montre que le programme va très bien, la seule critique que je ferais c'est qu'il n'y a pas mémorisation visible de la dernière position, par contre on voit qu'elle redémarre bien de la position précédente, soit en avant, soit en arrière,et sans perte de pas ce qui est très important; c'est la fonction effacement qu'il faudrait certainement mettre ailleurs.
C'est assez difficile de modifier un truc qui marche bien, on risque de tout casser, surtout que la logique que j'ai trouvée est assez tordue et si je ne l'avais pas vue tourner aussi bien, je n'aurais pas cru qu'elle tienne la route, c'est la 1e fois que je suis confronté à une lecture de programme en avant et en arrière, à première vue cela paraît impossible, et pourtant je vous assure que ça marche sans jamais d'erreurs; il faudrait une vidéo pour voir cela tourner.
Je fais de l'autosatisfaction car c'était un problème qui me turlupinait, je me demandais si j'allais le résoudre. Et l'avantage de cet effacement c'est qu'en arrêt le moteur pas à pas ne consomme rien, ce qui est intéressant aussi.
Cordialement
pont
|
|
Cette discussion est classée dans : pic, 1o, 2o, 4o, 3o
Répondre à ce message
Sujets en rapport avec ce message
Rubrique PIC :) [ par pitap0 ]
Serait il possible de rajouter une catégorie pour les PIC car ce sera qd meme plus simple a retrouver ?a++
liaison rs232 avec pic16f84a [ par Lastar ]
Bonjour à tous, voila je voudrais allumer et éteindre une led à partir du clavier d'un PC. J'ai donc pour cela mis un MAX232CPE avec le pic. Le prob
besoin d'aide tres urgent!!! [ par lefrans ]
voila mon probleme je recherche le code en PBP (pic basic pro) pour programer un pic 16f877 d'une calculatrice (simple)je dispose d'un clavier 4x4 et
servo de modelisme pilote par pic [ par RC516F84 ]
Dans le N°4 de micros et robots le robot bipéde est piloté par un pic16f628 Peut on le remplacer par un 16f84a?Ou est t'il possoble de piloter un ser
pic 16f628 [ par theyoupione ]
je suis un débutant dans la programmation de PIC et je voudrai savoir comment réaliser avec le 16f628:la réception de 2 signaux analog (d'un inclinomè
transmission rc 5 vers un pic 16f84 [ par raimu ]
je ne sais pas trop comment je pourrais faire pour effectuer une transmission depuis une telecommande rc5 vers un pic si quelqu'un pouvai m'aider...
question sur les pic [ par majoreea ]
Je souhauterai avoir le schema d'une telecommande infra rouge pour pc avec PIC
Assembleur PIC [ par goa_jr ]
Bonjour,Je suis en train de faire un assembleur pour PIC 16F84 et j'ai repéré une chose qui me semble bizarre dans MPLAB : l'instruction qui suit un o
communication entre 2 PIC [ par snoopyweb68 ]
Dans le cadre d'un stage, je suis ammené à faire communiquer deux PIC (un PIC16F627 et un PIC18F4220). étant donné le peu de pins d'entrées-sorties du
programmation d'un PIC 16c84 [ par jergelcol ]
Bonjour,Quelqu'un pourrait-il m'aider à écrire un petit programme assembleur permettant à un PIC 16c84 d'envoyer une chaine de caracteres qui sera aff
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|