Bienvenu(e)! Identification Créer un nouveau profil

Recherche avancée

Mon projet asservissement 6 moteurs avec l USB

Envoyé par kikisurface 
Re: Mon projet asservissement 6 moteurs avec l USB
mercredi 14 mars 2007 16:36:15
Salut,

Super! quelqu'un qui est parvenu a faire fonctionner mon programme sans probleme winking smiley

Vivement les photos winking smiley

A+

Re: Mon projet asservissement 6 moteurs avec l USB
mercredi 14 mars 2007 23:19:43
Bonsoir,

ce soir je suis arrive a faire fonctionner le port A en Input Analogique (j en ai besoin de 6 pour mes 6 capteurs de position) ca marche bien

et j arrive a comtroler le port B et D en outpout ( 12 output pour mes 6 moteurs)

Avant d aller plus loin je dois trouver le moyen de controler 2 moteurs pas a pas avec un PIC 16F628 (avec le quartz interne ..La classe) Je me demande si le programme n est deja pas tout fais sur le site de microchip.

Et juste apres je fais l interface de puissance avec des Transistor MOS (mes moteurs fonctionnent en 12V et ils leurs faut ... heu pour le courant j en sais trop rien je vais prier meme si je ne suis pas croyant lol... )

Bisous
Kiki
Re: Mon projet asservissement 6 moteurs avec l USB
jeudi 15 mars 2007 15:54:59
Salut,

Sinon tu as des composants tout fait pour controller des steppers, ou tu entres simplement une impulsion pour un pas, et une valeur logique indiquant la direction... Le probleme c'est que ce genre de puce sont souvent assez couteuse :s... Si tu veux des références dis moi la puissance de tes moteurs

A+
Re: Mon projet asservissement 6 moteurs avec l USB
jeudi 15 mars 2007 16:35:10
bonsoir,


je viens de m appercevoir avec effroid que C18 compile pour les 18F mais pas pour les 16F...

je dois trouver un compilateur C pour mplab 7.5 pour pogrammer mes pic16F628A...
j ai installe HI-TECH PICC-Lite
... j ai touver ce lien sur microchip.com et et je me suis fait avoir!!! j ai lu de travers il ne peut pas compiler les 16f628A mais les 16f627A WOINNNN.

Je veux bien savoir ce que vous utiliser pour compiler le C (pour 0£) des PIC 16F628A.(Bon je fonce sur le net pour lire l anglais de microchip)


Si non je compte utiliser des pic pour commander mes moteurs (ils sont gratuits avec microchip)) merci quand meme

Au passage pour la puissance des moteurs je ne suis pas tres sur, il est ecrit sur la plaque de la machine ou il y a les 6 moteurs "12V-4A" (ca doit etre pour l ensemble des 6 moteurs mais j en c est trop rien au passage chaque moteur a 6 fils)

Moteurs :
1 2 3
--xxxxx--xxxxx--

--xxxxx--xxxxx--
4 5 6

(j espere que c est assez explicite winking smiley )





Modifié 1 fois. Dernière modification le 15/03/07 16:37 par kikisurface.
Re: Mon projet asservissement 6 moteurs avec l USB
jeudi 15 mars 2007 20:35:40
Salut,

12V 4A signifie à mon avis 12V 4A par phase... Et 6 fils, ce sont des moteurs pas à pas bipolaire mais ou il est possible de les utiliser en unipolaire. Dans le cas ou tu les utilises en bipolaire, tu n'utilises que 4 fils et tu laisses les deux fils commun en l'air.

Si tu veux t'assurer que c'est bien ça, il te suffit de mesure la résistance entre deux fils, tu verras qu'elle vaut certainement 3ohms...

Pour les utiliser en bipolaire, tu prends les fils 1-3 pour la premiere phase et 4-6 pour la seconde... et tu mets 12 volts de tension dessus

Pour le compilo, j'utilise ce compilateur là, CC18, et l'assembleur, donc je ne sais pas t'aider désolé

Voilà de quoi faire tes essais

A+



Modifié 1 fois. Dernière modification le 15/03/07 20:46 par Benjamin.
Re: Mon projet asservissement 6 moteurs avec l USB
jeudi 15 mars 2007 21:17:08
Bonsoir,

Voila mes moteurs ressemblent a ca :


et je compte faire cette interface de puissance :


Sauf que l alimentation se fera en +12V et que les transitors seront des transistor MOS canal N sans la diode Zener sur la base (ou la grille pour mon cas). Pour les 1N4001 je ne c est pas si elles seront assez grosse sad smiley

Je pense me mettre a l assembleur pour le 16f628A. OBJECTIF piloter 2 moteurs pas a pas 2*4fils avec 2*2 fils pour la commande.

Je vais enfoncer des portes ouvertes :

Moteur 1
- un fils pour le sens --\input du pic/--
- un fils pour les pas (et donc la vitesse) --\input du pic/--
- 4 fils pour les bobines du moteurs --\outputdu pic/--

Bon je vais m enfiler la suite du cours de Mr Bigonoff sur l assembleur

si jamais je vois un programme asm ou hex pour 2 moteurs pas a pas c est la joie hihi... non faut mieux que je le fasse tout seul ca va me faire reflechir un coup c est bon pour ce que j ai.

Merci pour tes reponses si rapide.

kikisurface



Re: Mon projet asservissement 6 moteurs avec l USB
samedi 17 mars 2007 10:01:24
Salut,

Je ne sais pas si c'est toi qui a dessiné le schéma, mais je ne suis pas sur que la 1n4001 soit la plus adaptée à cette application, Il est préférable d'utiliser des diodes schottky car les 1n4001 sont des diodes de redressement qui ne sont pas spéciallement rapide et j'ai peur que l'effet qu'elles produisent soit l'inverse de ce que tu désires... Ceci dit, ton application fonctionnera, c'est juste que tes transistors vont bouffer... Risque de chauffer un peu plus... et si tu n'as pas de chance crameront... Enfin tu peux toujours essayé winking smiley

A+

Benjamin
Re: Mon projet asservissement 6 moteurs avec l USB
jeudi 22 mars 2007 15:45:02
Bonjour j ai effectuer mes 1er tests,

Pour plus de commodite je vais appeler :
"MASTER" le PIC18F4550 (pour l usb)
"SLAVE" le PIC18F4550 (pour le controle de moteurs)

*********
1er test,
*********

le slave fait tourner 1 moteur pas a pas avec une interruption du timer1.
je regle la vitesse du moteur pas a pas en changeant les prescaleres et TRMIH TMRIL (= sert a regler d ou a ou le timer doit compter avant de faire l interruption)

BREF je suis content le moteur tourne assez vite avec TMRIH=0xAB; TMRIH=0x00;

**********
2eme test,
**********

PC ->( USB )-> PIC18F4550 (pour l usb) -> PIC18F4550 (pour le controle de 1 seul moteur pas a pas) -> interface de puissance -> moteur

Le slave est programmer pour faire 100 pas dans un sens et 100 pas dans l autre il n attend que de voir des fronts sur RA1 (peu importe si il est montant ou descendant)

Je n ai plus qu a programmer mon MASTER et le logiciel (fait avec delphi) pour generer un signal carrer sur RA1 du slave.

mon 1er programme en delphi envoie toutes les 1ms l inverse de ce qu il avait envoyer avant :

Le master attend le buffer et regarde la case 2 du buffer (la case 2 et "relier" a RB7 du master qui est relier a RA1 du slave)

BREF avec ca ca fonctionne MAIS le moteur pas a pas ne tourne plus assez vite.... et oui le programme et trop simple dans le master je vais plustot envoyer le nombre de pas a faire au master et le master enverra des front bien plus vite que ma connection USB ...

Sinon vu que j ai 6 moteurs et que j ai envie d apprendre plein de chose, je vais me lancer dans cette configuration (sans compter les 7 capteurs):


PS ->( USB )->MASTER 18f4550<=====/2fils/=====>(les 2 fils pour l I2C SCL, SDA)
__________________________________||
__________________________________||<=======>Slave pour 3 moteur pas a pas 18fxxxx
__________________________________||
__________________________________||
__________________________________||<=======>Slave pour 3 moteur pas a pas 18fxxxx

VOILA l appartition de ma belle inconnu... l I2C (maintenant j envoie le nombre de pas que le moteur doit faire= rapidite maximum)

Je ne sais pas quoi prendre comme 18f il me faut 3*4=12 sortie digital 2 entree pour l i2c... apresle programme qui est dedans et tout petit.

Et pour lI2C je cherche a apprendre et je cherche surtout un exemple du type "allumer une led avec l I2C programmer en C"

Voili voilou pour les infos

Si y a des reactions pour l I2C ou pour le choix du pic 18f pour controler 3 moteur pas a pas -|j ecoute|-
Si non je repond aussi aux questions smiling smiley


Photo 2eme test



Bisous
Kikisurface

ps les diodes de roue libre que j utilise sont des 1N4007 (j en avais sous la main...)



Modifié 1 fois. Dernière modification le 22/03/07 15:50 par kikisurface.
Re: Mon projet asservissement 6 moteurs avec l USB
vendredi 23 mars 2007 09:18:33
Salut,

Regarde ceci : [fribotte.free.fr]

Je pense que ça devrais t'aider

A+

Benjamin


PS: super la photo
Re: Mon projet asservissement 6 moteurs avec l USB
vendredi 23 mars 2007 20:50:15
Bon j ai fait mes premiers pas dans l i2c entre deux 18f4550... j ai un de mes pic qui est devenu BOUILLANT mais il fonctoinne toujours smiling smiley la vie est belle.


J ai trouver un programme en C pour le master et le slave pour un 18f252 et je l ai adapter pour le 18f4550 (pour l instant ca fonctionne sans trop savoir mais je me penche sur la question)

j ai ensuite incorporer le programme pour l i2c dans le programme pour l USB.... Bonheur a priori ca fonctionne...

Si je m en sens capable je mettrais plus tard le code a disposition.

Donc bref pour l instant je clik sur un bouton creer avec delphi --( USB )-- l info arrive dans le "master" ---( I2C )---- "Slave" et hop la led s allume.

avec ca je vais bien reflechir et bientot je pourrai commander mon bras mecanique


apres viendrons les capteurs

Merci a tous les gens qui partagent leurs codes sur le net et qui les expliques

Kikisurface



Modifié 1 fois. Dernière modification le 23/03/07 20:54 par kikisurface.
Seuls les utilisateurs enregistrés peuvent poster des messages dans ce forum.

Cliquez ici pour vous connecter