Moteurs CC encodeur effet hall et carte de type drv8833

Bonjour tout le monde,

J'essaye de faire fonctionner deux moteurs CC avec encodeur effet hall de ce genre Pololu - 75:1 Metal Gearmotor 25Dx66L mm HP 12V with 48 CPR Encoder (No End Cap)
le moteur a donc 6 branches, 2pour alim moteur,2 pour alim encodeur, et 2pour le signal que l'encodeur envoie.
J'utilise une arduino Uno pour en piloter 1 pour le moment avec une carte basée sur un drv8833.
Driver moteur pas-à-pas ADA3297 Adafruit - Commandes 2 moteurs cc | GO TRONIC

Alors, de ce que j'ai compris de la carte, j'alimente mes moteurs avec le domino central entre 2 et 10v environ je branche mes moteurs sur les pins A et B OUT et je branche mon arduino sur les pins Ain et Bin.
premier doute, je pense devoir branché l'arduino sur la carte sur le Vm et le gnd mais je ne sais pas si cela est nécessaire.(avec l alim 2 10v).

j'ai essayer de brancher sans codes le moteur direct sur l'arduino j'obtiens tout ce que je veux mais je ne pilote rien :wink: donc je branche l'alim de 9 ou 6 v sur le + et - de la carte (VMOTOR) je branche le + et le - du moteur sur AOUT et je branche de pins arduino sur le ain1 et 2.

Ensuite j'envoie un code tout simple (car si un simple code ne fonctionne pas ca ne sert a rien d'aller plus loin).

const int encodeur=A5;
int valencodeur;

void setup(){
serial.begin(9600);
pinMode(8, OUTPUT);
pinMode(12,OUTPUT);
}

void loop(){
valencodeur=analogRead(encodeur);
Serial.println(valencodeur);
//ici les valeurs reçus sont étranges car j'obtiens beaucoup de valeurs hautes mais peu de basses (15fois //en haut pour 2 en bas alors que le signal est carré (val hautes environ 650 et basses  10)
digitalWrite(12, HIGH);
digitalWrite(8,LOW);
}

mais le moteur ne tourne pas.
Merci d'avance pour vos conseils :wink:

Bonsoir

C'est un moteur brushed 12V à alimenter en 12V, monter avec un retour encodeur dessus.

et la carte sert à contrôler un moteur pas à pas

donc incompatible

@+

La carte peut commander deux moteurs CC dans les deux sens c est bien précisé.

Daffal:
La carte peut commander deux moteurs CC dans les deux sens c est bien précisé.

Bonsoir,

Vrai mais le DVR8833 a été conçu pour des moteurs pas-à-pas, l'utiliser pour des moteurs à cc fait appel à des pirouettes.

On peut couper du beurre avec une tronçonneuse mais est-ce que c'est le moyen le mieux adapter ?

//ici les valeurs reçus sont étranges car j'obtiens beaucoup de valeurs hautes mais peu de basses (15fois //en haut pour 2 en bas alors que le signal est carré (val hautes environ 650 et basses 10)

Un encodeur renvoie des impulsions en fonction du sens de rotation et proportionnellement à sa vitesse de rotation.

Avec la fonction analogRead tu mesures en quelque sorte la valeur moyenne du signal. Cela peut donner une idée sur la vitesse de rotation mais ce n'est pas propre comme méthode.

D'accord mais j'ai vu sur quelques sujets que des moteurs CC avec encodeurs peuvent etre pilotés avec des cartes comme celle ci

donc je me demande pourquoi je ne pourrais pas avec une carte (qui me semble meilleure)

Si tu à déjà le moteur regarde du coté du pont en H .

et ton moteur en action avec l'encodeur:
https://www.robot-maker.com/shop/blog/32_Utilisation-des-encodeurs.htmlhttps://www.robot-maker.com/shop/blog/32_Utilisation-des-encodeurs.html

@+

La solution du problème que je viens de trouver avec des tests était d'alimenter le sleep en 5V, ainsi le moteur peut etre correctement controlé par l'arduino.