Auteur Sujet: Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072  (Lu 49971 fois)

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #30 le: mars 23, 2021, 05:25:52 pm »
... pourquoi ne pas avoir utilisé IC1B en inverseur ...
Bonne question qui mérite d'être testée pour évaluer les interactions (on manipule 30 mV à coté de 5V).
Un projet avance par étape : on ajoute au fur et à mesure une fonction à quelque chose qui marche.
Cordialement

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3048
  • 100% Arduino et N
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #31 le: mars 26, 2021, 11:22:04 am »
Je suis d'accord : le transistor éloigne ces tensions très éloignées et ne coûte pas grand chose de plus.

Avec la version actuelle (améliorée en ce qui concerne la sérigraphie), chacun peut s'approvisionner avec cette solution qui couvre sans doute 90% des besoins des modélistes.

C'est mon point de vue. Est-il partagé ?
Cordialement,
Dominique

AmadeusHF

  • Full Member
  • ***
  • Messages: 205
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #32 le: mars 27, 2021, 06:34:29 pm »
Je viens de commencer mes tests avec la carte à base de LM358 + 6203
La carte fonctionne en génération de signaux : je vois bien le signal et le décodeur répond aux commandes.
Pour l'occasion elle est pilotée par un UNO pour valider mon code sur cette plate-forme aussi.

En revanche je n'ai rien qui fonctionne en lecture de CV. La loco génère la charge électrique et reçoit les commandes, mais la lecture est bidon. Je dois vérifier que la mesure de courant est bonne sur la carte et ensuite j'affinerai.

A suivre.
Sébastien.
La perfection est un chemin, non un but...

AmadeusHF

  • Full Member
  • ***
  • Messages: 205
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #33 le: mars 27, 2021, 06:56:07 pm »
@Tous, est-ce que vous pouvez me confirmer la valeur qu'on est sensé lire sur la broche I du module à base de LM358 ?

Le MAX471 sort 1V = 1A sur sa sortie mesure de courant.
L'ACS712 on a VCC/2 au repos puis 100mv / A en + ou -

Sur le montage Locoduino on doit lire quoi ? Idem à un MAX ? Autre chose ?

Avec une interprétation identique au MAX en lecture, j'ai 400 mA au repos (moteur éteint), très loin de la réalité de la consommation de la loco (moins de 30 mA)

Sébastien.
La perfection est un chemin, non un but...

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 3048
  • 100% Arduino et N
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #34 le: mars 27, 2021, 07:09:47 pm »
Oui c’est aussi 1V/A

Mais je ne me souviens plus s’il y a un offset à corriger par soft pour compenser la non linéarité du lm358 comme dans LaBox

Je vais monter une carte et regarder de mon côté si j’ai tous les composants.
« Modifié: mars 27, 2021, 07:11:52 pm par Dominique »
Cordialement,
Dominique

AmadeusHF

  • Full Member
  • ***
  • Messages: 205
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #35 le: mars 27, 2021, 07:11:12 pm »
Si mon montage n'est pas foireux (je peux aussi avoir soudé comme mes pieds ou grillé l'ampli op) y a un truc du genre :D
Sébastien.
La perfection est un chemin, non un but...

AmadeusHF

  • Full Member
  • ***
  • Messages: 205
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #36 le: mars 27, 2021, 07:39:46 pm »
En plaçant le max 471 dans la ligne d'alimentation de la carte j'arrive bien à nouveau à lire mes CV...
Sébastien.
La perfection est un chemin, non un but...

AmadeusHF

  • Full Member
  • ***
  • Messages: 205
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #37 le: mars 27, 2021, 09:01:16 pm »
Bon voici un résumé de mes test avec différentes combinaisons.

Je précise que la "charge" est une vieille loco LIMA à moteur RingField équipée d'un décodeur LaisDCC à 14 balles acheté sur eBay.

Les tests sont réalisé avec la lib DccToolkit + SystemToolkit (à jour de mes derniers correctifs), avec le programme de lecture en boucle des CV fourni par ailleurs.

Les tests ont été réalisés avec :
  • Un arduino MEGA2560
  • Un arduino UNI R3

Je vais compléter avec un NANO boosté clone chinois équipé d'un 328PB à 20 Mhz.

J'ai utilisé deux cartes moteur :
  • L9110S double sorties, un seul canal utilisé
  • 6203 sur montage Locoduino fourni par msport un peu avant dans ce fil

Pour le moment :
  • J'ai les memes résultats avec tous les Arduino : normal
  • J'ai les memes résultats avec les deux cartes moteur : normal aussi dans l'absolu

Et ce que j'obtiens :

  • Fonctionnement OK avec MAX 471
  • Fonctionnement OK avec MAX 472
  • Fonctionnement OK avec ACS712
  • Non fonctionnel avec le LM358 embarqué sur la carte moteur..il faut que je vérifie si le LM marche bien
Sébastien.
La perfection est un chemin, non un but...

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #38 le: mars 27, 2021, 09:14:26 pm »
Bravo pour ces résultats, donc à confirmer avec une petite loco N. (à voir éventuellement sur un moteur de CD désaffecté)

Pour le L6203, c’est le Isense qui est utilisé ?

A préciser aussi, l'alimentation.
Cordialement

AmadeusHF

  • Full Member
  • ***
  • Messages: 205
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #39 le: mars 27, 2021, 09:17:18 pm »
La carte est alimentée en 12V (maxi 5A) par une régulation simple : 7812 derriere un bon vieux transfo, lissage et découplage qui vont bien pour avoir une sortie propre.

J'ai branché mon entrée A0 sur la broche I du PCB, la seconde en partant du coin de la carte.

C'est bien cela ?

La valeur lue oscille sur quel intervale ?
Sébastien.
La perfection est un chemin, non un but...

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #40 le: mars 27, 2021, 10:36:37 pm »

J'ai branché mon entrée A0 sur la broche I du PCB, la seconde en partant du coin de la carte.


C'est bien cela !

La tension sur I est de 0,5V / A (*), elle peut théoriquement atteindre  ~5 V (VCC du LM358)

(*) avec R6 du schéma = 10K, il faudrait mettre 20K pour avoir 1V / A. (ou R11 =5K)
Cordialement

AmadeusHF

  • Full Member
  • ***
  • Messages: 205
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #41 le: mars 28, 2021, 09:57:33 am »
Ok donc dans tous les cas avec le schéma actuel on a pas la meme lecture de 1V/A qu'avec un Max, donc je dois faire une adaptation des 2 ou 3 lignes de lecture. Pas un probleme.

Par contre est-ce que tu as une idée d'un défaut qui pourrait expliquer une lecture erronnée permanente ? A part une soudure qui ferait court-circuit.

En fait, est-ce que tu peux me guider avec deux ou trois trucs à vérifier (genre tension à tel ou tel endroit) pour déterminer si le circuit fonctionne bien ?
Sébastien.
La perfection est un chemin, non un but...

AmadeusHF

  • Full Member
  • ***
  • Messages: 205
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #42 le: mars 28, 2021, 10:34:59 am »
Je viens de faire quelques tests en plus et j'ai réussi à obtenir un résultat avec le L6203 mais ça m'amène une question de compréhension.

Reprenons au début : sur le module,  6 broches, dans l'ordre de droite à gauche en regardant les picots :

G = GND au GND de l'arduino
U = VCC au +5V de l'Arduino
P = PWM, sur la broche que nous utilisons pour faire le ON/OFF du circuit habituellement
D = DIR, sur la broche qui sort le signal PWN sur l'arduino, modulé façon DCC
I = Mesure de courant de sortie
V = Mesure de tension de sortie

Nous sommes d'accord ? De sorte que j'ai le meme type de cablage qu'avec n'importe quel shield moteur ?

Donc en dehors de V qui ne m'interesse pas, je cable le reste.

Quand je cable comme cela, je n'ai pas d'activation de la sortie : les deux leds restent éteintes.
Par contre si je déconnecte le fil qui va sur P et que je viens le shunter via le pont a coté du LM (donc je relie U à P) j'ai bien la génération de signal ET j'ai la lecture de courant qui fonctionne : j'arrive à lire parfaitement mes CVs.

Si par contre je branche uniquement P à +5V j'ai la génération du signal DCC ok mais pas de lecture....ce qui s'explique puisqu'une partie du circuit n'est pas alimentée en fait (c'était ma situation hier).

Ce que je ne comprends pas c'est pourquoi l'ensemble ne marche pas lorsque je relie P sur, par exemple, la broche 3 de mon Arduino et que je pilote cette broche pour la mettre à 1....ça devrait marcher non ? Ou il n'y a pas assez de jus  ?
Sébastien.
La perfection est un chemin, non un but...

AmadeusHF

  • Full Member
  • ***
  • Messages: 205
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #43 le: mars 28, 2021, 10:43:42 am »
Bon laisses tomber : my bad....quand on est un ane et qu'on oublie la ligne : driver.powerOn();

Forcément ça marche moins bien ! :D
Sébastien.
La perfection est un chemin, non un but...

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : Mesure de courant MAX471, MAX472, MAX4070, MAX4071 et MAX4072
« Réponse #44 le: mars 28, 2021, 11:09:32 am »
Rien de tel que d'expliquer son problème pour le résoudre ...

Pour ton circuit : tel qu'il est, pour le rendre conforme au standard BaseStation (1V/A),  il suffit de mettre une 10 Kohm en parallèle avec R11 (qui devient 5K). La sensibilité en est améliorée.
Je corrigerai la version publiée.

Et merci pour les détails qui serviront comme explications à d'autres, c'est parfait.
Cordialement