logo Arobas project

Chercher
Dernière page modifiée : PouPoule le 21/04/06 22:42:56

MoteurCc

Introduction
Cette carte sait gérer 4 demi-ponts en H. A base de L298 (limité à 2A en continu et 3A max).

Une limitation de courant existe sur la carte et est réglable par potentiomètre.

4 demi ponts permettent de gérer 1 moteur pas à pas ou 2 moteurs à courant continu tournant dans les 2 sens, ou 4 moteurs courant continu tournant dans un seul sens.

Sur le port A il existe des entrées qui peuvent être reliées à des potentiomètres ou à des capteurs de fin de course.

Voir la carte dans http://tcremel.free.fr/doc/2004/power_motorV2.0.zip

Gestion de moteurs CC PRESENTATION :

Ce programme gère un esclave I2C dont la tache principale est de s'occuper de 4 demi ponts en H

On peut donc gérer deux moteurs courant continu dans deux sens ou 4 moteurs dans un seul sens ou un moteur pas à pas. Dans le programme décrit ici, on commande 2 moteurs courant continu dans les deux sens.

Il possède en outre la faculté de lire le portA

Principe électronique :

Les commandes des demi-ponts sont connectées sur les pattes B0 à B3 du PIC. Ces sorties sont branchées sur un optocoupleur qui inverse le signal. Le signal pour commande des moteurs est donc émis inversé par rapport aux bornes du PIC

Au-delà de l'optocoupleur, on utilise un L298.

Sur les pattes Rsense, on a placé une résistance très faible 0,5Ohm pour mesurer le courant circulant dans le moteur. A l'aide d'un comparateur de tension on va neutraliser le pont en H en cas de courant trop important (utilisation de la patte Enable)

X1-1 est relié à RB0, X1-2 est relié à RB1, X1-3 est relié à RB2, X1-4 est relié à RB3.

X1-1 et X1-2 font partie du pont B. Le retour est sur RB4 en cas de dépassement du courant maximal du pont B.

X1-3 et X1-4 font partie du pont A. Le retour est sur RB5 en cas de dépassement du courant maximal du pont A.

FONCTIONNEMENT

Le système va générer de sortie MLI (PWM) pour contrôler la vitesse de moteurs.

Soit on utilise une rampe d'accélération progressive de 128*4*delai en microsecondes (paramètre 03), soit on applique directement un rapport cyclique.

On peut également connaître l'état de fonctionnement des moteurs.

Protocole de communication

Les ordres que l'on peut envoyer sont les suivants :

0x01: sélection des paramètres du moteur gauche
après sélection du moteur une écriture a l'adresse de l'esclave correspond a l'envoi de la vitesse pour le moteur gauche
0x02: sélection des paramètres du moteur droit
après sélection du moteur une écriture a l'adresse de l'esclave correspond a l'envoi de la vitesse pour le moteur droit
0x40: retourne la vitesse actuelle du moteur gauche
0x41: retourne la vitesse actuelle du moteur droit
0xF0: sortie directe du rapport cyclique ( rap_G , rap_D ).
0xF1: sortie du rapport cyclique ( rap_G , rap_D ) avec en plus variation linéaire pour passer du rapport cyclique actuel à celui désiré */
0xF2: sortie directe du rapport cyclique ( 0x80, 0x80 ) stop immédiat */
0xF3: sortie du rapport cyclique( 0x80, 0x80 ) l'arrêt est progressif */
0xFF: renvoi de l'adresse de l'esclave. Indique si la carte est présente */


Page non modifiable

Retour à AccueilArobas WikiListe des pages

Chercher