schneiderj

Commande de moteur pas à pas

Messages recommandés

c'est vrai que les Pic ont l'air séduisant pour une commande autonome programmable avec interface PC. Après une petite recherche , je suis tombé sur les picbasic de lextronic (site très détaillé et en français :http://www.lextronic.fr )
c'est programmable dans un basic simplifié . par exemple 63 euros le modèle avec 4Ko de mémoire EEPROM .je ne sais pas si c'est suffsant pour un PEC .qu'en pensez-vous?
une autre petite question : sur le site aude j'ai vu mentionnée une carte audecom qui a l'air intéressant mais impossible de trouver une description ...

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut

Je connais très mal le basic PIC, mais je te le déconseille pour une raison. La maîtrise du temps. En faite, c'est un compilateur qui transforme ton basic (Il existe en C aussi) en assembleur. En gros on sait pas combien de temps il prend pour faire certaine chose. Même si quasiment toutes les instructions prennent un cycle. C'est le quasiment qui est problématique.
L'assembleur des Pic est bizarre au début, mais avec des exemples, on y arrive toujours. Il faut avoir des bases en assembleur quand même. En ce qui concerne, le programmateur. Il existe des schémas gratuits (port //) sur le Web, avec logiciel. Mplab pour le logiciel de programmation des Pic (Gratuit). www.microship.com/
Concernant la taille mémoire, tout dépend de se que l'on veut faire.
J'ai choisi le PIC 16F877 (~15 Euros) Il n'y pas une grande différance de prix avec les autres un peu moins performant. Il a 8k. Pour le PEC, j'ai décomposé la vis en 75 parties (donc Vitesse) . Ce qui est sûrement un peu trop. Mais sa rentre dans 8K. En faite , j'ai 4 tables de PEC .(Voir Grapheset) . J'ai un Pb d'adressage puis que la mémoire est "coupé" en deux pages de 4K. J'ai des soucis quand je passe d'une page a une autre. Il faut que je relise le paragraphe sur la gestion des pages et ça ira.
Enfin, si vous étés un peu bricoleur (fer a souder, réalisation de circuit imprimer, programmation asm, réalisation de la raquette). Il n'y a pas de pb insurmontable.
Concernant l'interface Pc via Rs232 on peut le faire, mais personnellement, je me sens pas capable de programmer un Pic qui gère la RS232. Pour quoi faire ? . Moi je voulais un system autonome, et pas chère (50 Euros).

Je te donne le grapheset pour info:
C'est pas très parlant mais ça peut donner des idées.


A+


Introduction

Un tour de Vis AD = 10 Minutes
On a donc 10*60 = 600 Secondes
On a un TIMER à 0.053333 Secondes
On a donc 600/0.05333 = 11250
Il faut 11250 Top pour faire un tour
Si on divise la vis en 75
On a 11250 = 75 * 150
Il faut 150 Top pour faire un Pas et 75 Pas pour faire un tour. CQFD

Début
Init
Init_Var
Init_Mem
Init_Port
Init_TxRx
Init_Timer
Init interruptions

Si interruption
Quelle interruption ?
[Synchro_Timer]

Sauvegarde des registres de travail.
Changement d'état du bit de Synchro_AD
Stop :
On charge le timer avec Timer_H & L
Si le bouton stop est à zéro => Désactive UCN AD et on retourne à Stop

Si Pec=0 on continue sinon on va a PEC1
Si mode=0 => On change Timer_H & L pour mode Sideral
Si mode=1 => On change Timer_H & L pour mode King
Si mode=2 => On change Timer_H & L pour mode Lunaire
Si mode=3 => On change Timer_H & L pour mode Solaire
Goto Test_AD_P

PEC1
Si mode=0 => On change Pas dans W pour indexer la table Mode0, afin de récupérer la valeur Timer_H & L pour mode Sidéral & Change d'état la led mode 0
Si mode=1 On change Pas dans W pour indexer la table Mode1, afin de récupérer la valeur Timer_H & L pour mode King & Change d'état la led mode 1
Si mode=2 => On change Pas dans W pour indexer la table Mode2, afin de récupérer la valeur Timer_H & L pour mode Lunaire & Change d'état la led mode 2
Si mode=3 => On change Pas dans W pour indexer la table Mode3, afin de récupérer la valeur Timer_H & L pour mode Solaire & Change d'état la led mode 3
Incrémentation de Top
Si Top=151 ( Pas=Pas+1 et Top=0)
Si Pas=76 (Pas=0)

Test_AD_P

Si AD_P = 0 On donne le sens de rotation
Si x32 => On change le TIMER & Goto FIN
Si x8 => On change le TIMER & Goto FIN
Si x1.5 => On change le TIMER & Goto FIN


Si AD_M = 0 On donne le sens de rotation
Si x32 => On change le TIMER & Goto FIN
Si x8 => On change le TIMER & Goto FIN
Si x1.5 => On change le TIMER & Goto FIN

Restitution des registres de sauvegarde
Efface l'interruption TIMER
Retour Interruption

[Mode]

Mode=Mode+1
Si mode = 4 alors mode=0
Activation de la led correspondant au mode
Restitution des registres de sauvegarde
Efface l'interruption RB4
Retour Interruption


[Synchro_Vis]


Pas=0
Top=0
Synchro_vis=1
Restitution des registres de sauvegarde
Efface l'interruption RB0
Retour Interruption


Partager ce message


Lien à poster
Partager sur d’autres sites
ça a l'air intéressant ( petite question : c'est quoi le mode king ?)
il y a 5 ou 6 ans je m'étais fait un PEC autonome assez délirant pour mon vieux 2080B à moteur synchrone (période 8mn) , avec un découpage par seconde (!) .ça marchait mais j'ai fini par abandonner le système car j'ai constaté que la position de la vis doit être synchronisée à 2 ou 3 s près avec la commande . j'ai bien l'impression que pour être efficace (ou pour être réglé plus facilement) il faut un codeur sur la vis

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut

Le mode King, n'est pas un "vrai" King (sur ma raquette) . Mais en gros ça permet d'avoir un rattrapage toujours dans le même sens. Le vraie King tient compte de la hauteur de l'étoile de la température de l'air, la pression atmosphérique, des mouches qui petent, Etc.… Le but, est de connaître la réfraction de l'air pour connaître la position dans le ciel et non dans l'espace.
On doit pouvoir trouver des infos plus sérieuses sur le Web!
Pour ta commande en moteur synchrone, je pense qu'il faut obligatoirement un asservissement en vitesse et en position (donc codeur). Ce qui n'est pas le cas avec les moteurs pas à pas (qui sont des "moteurs-codeurs") . Courageux de s'être attaquer à un pilotage "analogique" en fréquence. En 220V, je suppose ? . Maintenant, c'est franchement plus simple avec un pas à pas en basse tension.

A+

Partager ce message


Lien à poster
Partager sur d’autres sites
oui , c'est bien sur + simple avec un moteur pas à pas mais j'étais par ailleurs satifait de mon scope avec moteur synchrone . de plus ça me faisait une alim 12v (un mini-disc attaquait un ampli audio 20W pour fournir du 220v en 48 , 49,50,51 ou 52Hz) et j'avais combiné pour effectuer un nombre entier de tours entre chaque changement de fréquence (calcul compliqué !!) .Ce n'était pas un moteur pas à pas mais un moteur tour à tour !!

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant