Problème driver DRV8871

Bonjour !
j'essaie de piloter une électrovanne 24V avec un driver DRV8871 mais aucune tension ne sort côté moteur. Les pins IN1 et IN2 semblent fonctionner correctement avec le programme ci-dessous et lorsque je branche l'alimentation côté power, aucun courant ne passe.
Je met aussi mon montage en photo.

Auriez-vous une idée du problème ?

#define IN1 22
#define IN2 23

void setup() {
  
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, HIGH);  
}

void loop() {

}

Bonjour,

Tel que c'est décrit, je ne vois pas d'erreur!

C'est sans doute pour cela d'ailleurs que tu as si peu de réponse?

Il faut sortir le multimétre pour vérifier de plus prés qu'il y ait pas de bug, genre un fils coupé, une alim HS, une sortie HS ..

À part vérifier les soudures et les fils, on ne peut pas donner beaucoup d'autres conseils.

ce qu'on ne peut pas voir , c'est la polarité de l'alim

Merci, je vais rechecker mes soudures.
Je dois avoir une boucle de masse dans mon circuit ou un autre problème du genre, ça a mis mon pc en shutdown hier. L'alim est réglable courant et tension et mont a 30 V -3A donc il y a une masse dessus en plus des bornes + et -, on l'a toujours plus ou moins ignorée en tp et ça doit venir de là : comment est-ce que vous relieriez la masse de l'alim au gnd de l'Arduino ??

Bonjour,

Est ce que la borne de "MASSE" de ton alim est relié à la terre de sa fiche secteur?

Toute seule, est ce que l'alim fonctionne si tu relié le "-" à sa borne de masse?

Si l’alim a une ”masse” séparée des sorties V+ et V- ce n’est pas une masse mais une ”Terre”.

Le choix de relier la Terre, qui est le potentiel du sol à la masse qui est un point arbtraire choisi pour être le point 0 V se discute et dépend des circonstances.
AMHA, sauf si on ne peut pas faire autrement il faut éviter.

Dans le domaine de l’électronique des microcontroleurs, pour des raisons technologiques, le choix a été fait de désigner le pole négatif de l’alimentation comme point 0 V.
Il faut impérativement relier entre eux tous les pôles ”-” .

Bonjour,

Le fond de mon propos est juste de vérifier si il n'y a pas une incompatibilité "cachée" plutôt que de dialoguer sur "TERRE", "MASSE" et "0V" et "-".

Expérience faite, il est probable (voir sens de probable) que le "0V" de l'Arduino soit relié à la "TERRE" du réseau électrique.

Il est probable aussi que le "-" de l'alimentation ne doive pas être relié à la "TERRE" sinon cela risquerait de provoquer un dysfonctionnement +/- grave.

Et si le "0V" de l'Arduino est relié à la "TERRE" et au "-" de l'alim, nous serions probablement dans ce cas à éviter.

C'est ce que je proposais tout simplement de vérifier.

Oui normalement c'est bien la 'terre' et je vais essayer ce branchement demain pour voir

Ici le pôle 0V sur l'Arduino est le ground "gnd" si j'ai bien compris et tout est relié au pôle '-' de mon circuit ce qui signifie que je me serai placé dans le cas à éviter ?
En fait sur mon driver, d'un côté la borne "power" a un + et un - et il existe aussi une broche "gnd" dessus. Je pensais que le "-" était relié au "gnd" ??

Bonsoir,

Une photo de la face avant de l'alim serait intéressante je pense.


D'ailleurs même en cherchant dans la fiche technique et en demandant à chatgpt, je pense ne pas avoir trop compris l'utilité de la broche "VM". J'ai cru comprendre qu'il fallait la brancher au 5V de l'arduino, mais je ne vois pas la différence (remarque mon circuit ne marche pas...).
Merci pour les précisions sur la "terre" !

Bien sûr!

VM est reliée au + du bornier POWER. De même que GND est reliée au - du bornier POWER.
Un coup de multimètre t'en convaincra.


La borne jaune est une borne de terre.

J'y vois plus clair avec vos photos.

La broche VM selon moi est la pour un "confort" d'usage, elle vous permet, si vous avez par exemple un moteur de faible puissance, d'utiliser cette broche en alimentant le driver sans utiliser le connecteur d'alimentation externe.

Comme dans l'exemple ci dessous (emprunté à Internet).

Sur le connecteur 2 bornes à viser, théoriquement le "+" est relié à "VM" et le "-" à "GND".

Si tu utilise ton alim BASEtech pour alimenter le moteur, tu dois mettre le fil qui est sur la borne noire de ton alim sur la borne "-" du driver.
Le fil sur la borne rouge sur la borne "+" du driver.

En principe si tu a relié ce "GND"


Au GND de la carte Arduino, c'est bon, le GND sont bien en commun, il n'y a rien de plus à faire au niveau câblage.

Par contre, si cela ne marche pas, tu peux essayer de voir si ton alim TECH seule est perturbée si tu relie sa borne noire à la borne de terre, comme cela

En principe elle doit pouvoir fonctionner NOIR relié à la terre, si elle ne fonctionne pas, le pb est là.

Justement ce qu'il ne faut pas faire. Il faut faire attention à qui on emprunte ;-)
Le VMmin est donné pour 6.5V dans la datasheet du DRV8871. Il y a un régulateur de tension dans le DRV qui fabrique l'alimentation logique et manifestement 5V sur son entrée n'est pas prévu. Après, ça peut tomber en marche jusqu'au jour où le truc déconne et on passe des heures à chercher pourquoi.

Je n'ai pas verifié, j'ai copié/collé un montage où VM est connecté à VIN (qui généralement est entre 7V et 12V si on respecte les directives Arduino et selon les modéles).

Exemple d'utilisation

Ah, j'avais pas vu que c'était Vin.

:woozy_face:A vrais dire, initialement, moi non plus :sweat_smile:

L'alim fonctionne bien, puisque qu'il n'y a pas d'autres problèmes apparents, je vais essayer de trouver des alternatives. Merci de votre aide !