Go Down

Topic: CCPWM avec arduino et capteur de courant (Read 2401 times) previous topic - next topic

JP33

Bonjour tout le monde !
Alors voilà, j'aimerais faire un CCPWM (Current Constant Pulse Width Modulation) avec mon Arduino,
pour cela j'ai acheté un capteur de courant basé sur un circuit à effet Hall ACS709 qui me permet de détecter l'intensité et la tension. Mais le problème c'est que je n'ai absolument aucune idée de comment faire réagir mon arduino pour qu'elle fasse varié une sortie PMW qui pilotera un MOSFET, en effet, j'aimerais selectionner une intensité (exemple : 15A) et que mon arduino fasse en sorte de me garder toujours 15A.
Pourriez s'il vous plaît m'aider ?? Je n'ai aucune idée de quel code utilisé ...
Merci par avance !!   

hazerty565

15A, ok,

 mais pour quel tension??

1V, 10V, 100V...?

JP33

Pour une tension de maxi 30V
merci de cette réponse si rapide !!

hazerty565

elle vient d'ou ta tension?

car l'arduino n'est pas capable de généré une tension, encore moins de courant, mais par contre
il peut tres bien faire de la supervision de courant/tension...

aligote

#4
Aug 09, 2017, 01:13 pm Last Edit: Aug 09, 2017, 01:14 pm by aligote
Bonjour tout le monde !
Alors voilà, j'aimerais faire un CCPWM (Current Constant Pulse Width Modulation) avec mon Arduino,
pour cela j'ai acheté un capteur de courant basé sur un circuit à effet Hall ACS709 qui me permet de détecter l'intensité et la tension. Mais le problème c'est que je n'ai absolument aucune idée de comment faire réagir mon arduino pour qu'elle fasse varié une sortie PMW qui pilotera un MOSFET, en effet, j'aimerais selectionner une intensité (exemple : 15A) et que mon arduino fasse en sorte de me garder toujours 15A.
Pourriez s'il vous plaît m'aider ?? Je n'ai aucune idée de quel code utilisé ...
Merci par avance !!    
Bonjour,

Avant d'envisager des détails d'organisation du type mosfet etc.... définissons précisément l'objectif.

Si je ne me trompe pas, l'idée serait de piloter par arduino un PWM en tension. (Assez facile, si les contraintes de fréquence rentrent dans le cadre prévu pour les sortie PWM arduino.)
- Ensuite créer un convertisseur tension/courant pour obtenir un PWM en courant.
Pour la deuxiéme partie, à mon avis la conversion tension/courant pourrait être purement analogique.
- Enfin faire une lecture de l'intensité PWM pour renvoyer l'information "courant" sur l'arduino afin que le programme maintienne constant l'intensité.

Un renseignement complémentaire pour définir la nature du courant obtenu en sortie: L'intensité souhaitée -par ex 15A- doit-elle être du courant continu constant ou bien du courant haché mais d'intensité moyenne constante ?

Serge .D

JP33

Ma tension et mon courant proviennent d'une batterie de camion, voilà ce que j'aimerais c'est que l'Arduino supervise la tension et le courant mais surtout le courant grâce au PWM,  enfaite j'aimerais vraiment que ce soit comme un CCPWM mais avec une Arduino. Mais je ne sait pas comment je peux faire pour que l'arduino "réagissent" c'est à dire pour qu'elle augmentent ou abaissent le PWM si le courant n'est pas celui sélectionné.
Merci !

JP33

Oui c'est exactement cela mais quel est la différence entre du courant continu constant et le courant haché mais d'intensité moyenne constante ?
Merci !

JP33

Pour vous donner une idée de l'application c'est pour contrôler l'électrolyseur de ma piscine, et c'est vrai que je ne sait pas quel type de courant est le plus approprié entre le courant continu constant et le courant haché mais d'intensité moyenne constante.

aligote

Oui c'est exactement cela mais quel est la différence entre du courant continu constant et le courant haché mais d'intensité moyenne constante ?
Merci !
Exemple de courant haché mais d'intensité moyenne constante :

L'intensité varie rapidement de 0 à Imax (par exemple chaque 1ms elle passe à Imax, y reste 0,2ms et ensuite passe et reste à 0 pendant 0,8 ms) mais sur une durée beaucoup +longue (par exemple 1s) la moyenne de l'intensité reste constante. (dans ce cas en moyenne 20% de Imax)

En ce qui concerne l'électrolyseur de piscine, qu'est-ce qui lui convient ?

Faire un courant haché mais d'intensité moyenne constante est plus facile.

Serge .D

JP33

Si je comprend bien c'est une sorte de rapport cyclique ?
On module donc la largeur d'impulsion ?
Si c'est cela oui ca conviendra parfaitement !
Merci de cette explication !

aligote


Pour illustrer et avancer :

http://www.locoduino.org/spip.php?article47

Ce signal produit de la tension PWM, il faut donc créer un module capable de recevoir ce signal, d'en fabriquer un identique mais avec des intensités de sortie proportionnelles aux tensions reçues;

Maintenant, comme l'arduino est capable de produire une tension PWM bien définie, il sera peut-être suffisant de créer un convertisseur "Tension/Intensité"  simple, purement analogique sans faire d'asservissement pour renvoyer une information "valeur de courant" en direction de l'arduino.

Quel est la contrainte de variation d'intensité acceptable ? (perso je pense que pour une telle électrolyse la contrainte n'est pas si sévère)

Serge .D

JP33

Oui en effet on peut avoir une variation de +/- 1A, cela reste acceptable,
comment je pourrais faire le fameux convertisseur tension/intensité ?

3Sigma

Bonjour,

En régime permanent, le courant qui passe dans un circuit donné dépend de la résistance de ce circuit et de la tension appliquée à ses bornes (I=U/R).

C'est facile avec un Arduino de faire varier une tension en utilisant un PWM et ton MOSFET. Ensuite, en fonction de cette tension, l'impédance du circuit conduira à obtenir un courant donné. Ce courant sera mesuré par le capteur de courant. Ensuite, à mon avis il faut faire un asservissement pour que le courant mesuré suive la consigne.

Toujours est-il que c'est comme ça que l'on pilote un moteur avec un courant constant. Maintenant, sur un électrolyte de piscine, c'est peut-être différent.

68tjs

#13
Aug 09, 2017, 02:34 pm Last Edit: Aug 09, 2017, 02:37 pm by 68tjs
En ce qui concerne strictement les sources à courant constant, pour faciliter les échanges techniques, je te conseille de te documenter sur :
"Source de courant constant"
et de regarder comment on peut faire cela avec un transistor.
Sûr que pour 15 ampères il faudra un MOSFET mais le principe est le même que le transistor soit de type bipolaire ou XFet.

Pour le reste je ne comprends pas.
Quote
j'aimerais c'est que l'Arduino supervise la tension et le courant
Impossible de superviser les deux simultanément.
Si la tension est imposée alors le courant ne dépend que de la charge.
Si le courant est imposé alors la tension ne dépend que de la charge.

Quote
j'ai acheté un capteur de courant basé sur un circuit à effet Hall ACS709 qui me permet de détecter l'intensité et la tension.
Impossible, le circuit Alegro ne pourra te donner que des indications sur la valeur du courant.

Je pense que tes idées ne sont pas claires entre le fait que la source de courant délivre un courant constant et le fait que la source de courant peut se commander en tension.

Ensuite avant d'ameuter la collectivité au préalable il serait raisonnable de donner une réponse à :
Quote
Pour vous donner une idée de l'application c'est pour contrôler l'électrolyseur de ma piscine,
et c'est vrai que je ne sait pas quel type de courant est le plus approprié entre le courant continu constant et le courant haché mais d'intensité moyenne constante.
Pour moi dans tous les cas il y aura un effet de moyennage qui ne dit pas son nom.
Envoyer des impulsions de 15 ampères avec un rapport cyclique RC (0<= RC <=1) revient à envoyer en permanence un courant égal à 15A* RC.

Si ton but est de faire varier la valeur du courant en fonction du taux de chlore il est tout à fait faisable de commander une source de courant constant avec de la PWM flitrée (d'où mon premier conseil de te documenter sur le fonctionnement d'une source de courant) ou un DAC.
Il faut bien te rendre compte qu'une source de courant pulsé de 15 A ce n'est pas trivial à faire.

aligote

.............
En régime permanent, le courant qui passe dans un circuit donné dépend de la résistance de ce circuit et de la tension appliquée à ses bornes (I=U/R).
...........
Tout à fait d'accord, mais à condition que "le circuit donné" soit purement résistif dans son domaine d'utilisation ( cad que la valeur de U/I soit totalement indépendante de U)

Pour un électrolyseur je ne parierai pas. Même pour une simple ampoule 12V de voiture le rapport U/I dépends très fortement de U et peut varier facilement du simple au triple pour u variant de 0 à 12V.

Serge .D

Go Up