Probleme de lecture, parasitage du 12v

Bonjour à tous,

Je suis débutant en electronqiue et pour mon 1er projet j'ai decide de fabriquer un regulateur de ph/ec pour mon aquarium. J'ai reussi a mettre en place la lecture du ph et une pompe perilstatique ( fonctionne avec un moteur 12v 80ma) pour injecter du produit ph en fonction de celui-ci. Le probleme vient de la lecture du ph, la pompe etant obtionellle.

Tout cela marchait fort bien avant que j'installe la partie de la pompe. L'arduino était alimenté en usb, les mesures etaient niquelles. Du coup j'ai installé la pompe, qui est allimenté en 12v via un transformateur (12v 2A) branché sur le 220v, et activée par un mosfet. Le truc c'est que le fait d'alimenter une partie du circuit en 12v influe sur la lecture des mesures ph, et celles ci se mettent a varier considerablement ( environ 0.5, ce qui semble correspondre à environ 100mv de variation sur l'analog A10, pour vous donner une echelle le PH7 est mesuré a 2500mv et le PH4 a 3080mv).

Du coup je me suis dit, tiens je vais mettre un regulateur 5v pour alimenter l'arduino par Vin, et apres j'ai vu que l'on pouvait l'alimenter directement en 12v via le jack d'alim. J'ai testé les 2 solutions et il se produit les memes variations de mesures, les mesures redeviennent stable des que je branche l'arduino en usb. Est ce que l'ubs fait office de meilleur ground que le transfo et du coup je n'ai plus d'electricité "en trop" qui vient perturbé mes mesures, ou bien l'arduino switch son alimentation automatiquement sur l'usb plutot que le jack ? J'ai mesuré la valeur de tension à la sortie du shield ph, et à ma grande surprise il n'y avait pas de variations de tension, il semblerait que les pertubations se passent sur la carte arduino ....

Etant donné que c'est mon 1er projet, je n'ai absolument aucune idée de comment regler ca, j'ai testé plein de choses les plus farfelues, meme alimenter l'arduino avec une pile 9v, mais le resultat est toujours le meme, des que je branche le 12v pour la pompe , les mesures de ph fluctuent !

Je vous met les 2 schémas que j'ai tester pour alimenter l'arduino, par Vin ou le jack.

et une belle photo du montage sur double breadboard !

Merci par avance !

cibine:
...
Etant donné que c'est mon 1er projet, je n'ai absolument aucune idée de comment regler ca, j'ai testé plein de choses les plus farfelues, meme alimenter l'arduino avec une pile 9v, mais le resultat est toujours le meme, des que je branche le 12v pour la pompe , les mesures de ph fluctuent !

...

Bonsoir
probleme courant et reccurent
la reference de tension en mode standard est derivée de la tension d'alim de l'arduino
cette reference peut etre fluctuante en fonction du "tirage" sur le 5V
la solution est de passer par une reference de tension externe à appliquer sur le pin AREF
et modifier le programme avec cette ligne
analogReference(EXTERNAL)

En cherchant j'avais trouvé cette réponse dans d'autres posts, j'ai donc relié la sortie du regulateur 5v au pin aref, ajouté la ligne de code dans le setup, et c'est pire j'ai des fluctuations de plus de 200mv

ci joint un schema du branchement

cibine:
En cherchant j'avais trouvé cette réponse dans d'autres posts, j'ai donc relié la sortie du regulateur 5v au pin aref, ajouté la ligne de code dans le setup, et c'est pire j'ai des fluctuations de plus de 200mv

ci joint un schema du branchement

Ne pas confondre comme déjà expliqué dans d'autres post :grin:

regulateur de tension avec reference de tension 8)

ouai comme ca Arduino Tutorials – Chapter 22 – the AREF pin | tronixstuff.com , mais je comprend pas plus, et surtout ca me dit zero quoi brancher sur le aref ....

cibine:
ouai comme ca Arduino Tutorials – Chapter 22 – the AREF pin | tronixstuff.com , mais je comprend pas plus, et surtout ca me dit zero quoi brancher sur le aref ....

bien :grin:
au moins déjà tu sauras maintenant faire la difference entre une faire de la regulation de tension , et disposer d'une reference de tension.

les objectifs ne sont pas les memes

retour "à ton probleme à toi que tu a là" :grin:
il te faut un "5V" propre pour AREF (et meme mieux un 5.12V 8) )
les references de tension ( en sachant que l'arduino en embarque une , mais limitée)
sont des composants dediés à cette fonction , mais rien n'empeche de te creer ta propre AREF "propre" qui ne servira qu'à ça :
une petite alim 5V debitant sur une petite charge constante sera de toutes façons mieux que de l'AREF de base

oula j'ai beau avoir lu et compris ce qu'il disait, c'est vraiment pas plus clair pour moi.... enfin bon je vais acheter un "reference de tension" dans ce gout la http://fr.rs-online.com/web/p/references-de-tension/5337903A/

Je vais pas rajouter une batterie de 5v ou un autre transfo juste pour ca, c'est vraiment pas pratique et pas viable a long terme

enfin bon merci qd mm !

Sur ton schéma je vois un fil de masse commun entre l'alim 12 V et le capteur.
Si c'est le cas réel c'est probablement la raison de la perturbation.
Quand on utilise un capteur, surtout analogique, il ne faut jamais relier d'autres "choses" sur le fil de masse du capteur. La raison : un fil de cuivre c'est toujours un tout petit peu résistif (sauf dans l'azote liquide) et les variations de consommation de la pompe induisent des perturbations : quelques mV ce n'est pas beaucoup mais ils sont suffisants pour fausser la mesure.

La solution : tu relie le capteur à la Mega avec deux fils torsadés . Le point commun de la masse du capteur et de celle de l'alim de la pompe sera au niveau des GND de la carte.

PS : cela n'enlève en rien a ce que t'as conseillé Artouste : il faut absolument une référence de tension stable et propre, c'est complémentaire.

L'ADC de l'Atmega qui fait donc la conversion analogique-numérique travaille en relatif par rapport à une référence. Chaque bit du résultat est alors une graduation d'une échelle de 0V à Vref. Par défaut on utiliser le 5V sur les platine Arduino qui est aussi celui de l'alimentation. Donc si ta référence varie, inévitablement cette variation est reportée sur le résultat, un peu comme si tu essayais de mesurer un cap alors que tu es sur un manège, beaucoup plus compliqué que si tu es sur un point parfaitement fixe.

Donc pour palier il faut soit utiliser une référence de tension externe, soit utiliser une référence interne de l'Atmega, soit stabiliser le 5V AREF avec un circuit RC

C'est sur mais cela ne suffit pas à expliquer pourquoi sans la pompe il n'y avait pas de perturbation.
La référence n'était ni plus stable, ni moins stable, à moins d'admettre que l'alim 12 V est particulièrement pourrie et que même sans débiter elle pollue complètement mais cela je n'y crois pas.

Dans tout ces messages de pollutions des mesures ADC il y a quasiment tout le temps deux problèmes simmultanés :

  • une référence qui bouge et pas seulement parce que la source de tension fluctue mais aussi parce que la piste de la carte est bruitée.
  • un mauvais câblage des masses.
    On ne peut pas insister lourdement sur le premier et ignorer le second.

68tjs:
Dans tout ces messages de pollutions des mesures ADC il y a quasiment tout le temps deux problèmes simmultanés :

  • une référence qui bouge et pas seulement parce que la source de tension fluctue mais aussi parce que la piste de la carte est bruitée.
  • un mauvais câblage des masses.
    On ne peut pas insister lourdement sur le premier et ignorer le second.

bonjour
toutafé :grin:

et se fabriquer une pseudo/acceptable reference de tension 5V si l'on ne dispose pas d'une "vraie" ref de tension externe ou que l'AREF interne est tres bas,
et d'utiliser un petit 78L05 debitant sur une simple led+R et C precédé d'un ou deux etages chuteur à diode + C
Ce sera toujours mieux que l'AREF =V

Sur ton schéma je vois un fil de masse commun entre l'alim 12 V et le capteur.
Si c'est le cas réel c'est probablement la raison de la perturbation.

Il n'y était pas au début, je l'ai rajouter lors de mes test, je l'ai enlever mais les variations sont tjrs la. ci joint l enouveau schéma sans le cable.

Petite rectif, le regulateur n'est pas un LS7805 mais un L7805CV

j'utilise ca comme alim, j'ai juste couper le cable et branche sur un des rails d'alim de la breadboard.
http://www.ebay.fr/itm/AC-110-240V-12V-2A-Convertor-led-Power-Charger-Supply-AC-DC-Adapter-EU-plug-cord-/261025082541?ssPageName=ADME:L:OC:FR:3160

J'ai beaucoup de mal avec les fiches techniques des composants, si j'achete ca http://fr.rs-online.com/web/p/regulateurs-de-tension-a-faible-chute-ldo/7968105/ est ce que ca fera le boulot ?

@Artouste: j'ai essayer de rajouter un autre regulateur L7805CV spécialement dédié au aref , mais comme je l'attendais ce la ne marche pas :0

et d'utiliser un petit 78L05 debitant sur une simple led+R et C precédé d'un ou deux etages chuteur à diode + C

Euh ... tu peux me montrer un schéma avec les composants, parcque la je suis trop un newbie :slight_smile:

Peut tu re-préciser l'ordre et les conditions d'apparition des dégradations de mesure, c'est important pour mieux t'aider.

Perso j'ai compris ceci :

  1. Avec seulement le capteur de PH tu avais des mesures "correctes".
  2. Après avoir ajouter la pompe et son alim les mesures sont devenues "mauvaises".

Ce qui serait intéressant c'est que tu trace un histogramme dans chaque cas comme j'en joins en exemple.
Pour les réaliser j'avais affiché 100 mesures dans le serial monitor.
Coupé/collé dans une feuille de tableur (Excel, OpenOffice, ...).
Utilisation de la fonction "fréquence" et appel du graphique.
Cela nous permettra de mieux juger les dégradation de la mesures.

NB : pour la petite histoire j'ai ressorti des histogrammes que j'avais tracé quand je m'étais intéressé au LM35 et à ses conditions d'utilisation optimales.

Ce qui serait intéressant c'est que tu trace un histogramme dans chaque cas comme j'en joins en exemple.
Pour les réaliser j'avais affiché 100 mesures dans le serial monitor.

Je ne peux pas, puisque lorsque je branche le cable usb les valeurs se stabilisent, c'est lorsque j'alimente l'arduino uniquement par le 12v que cela se produit.

lorsque le cable usb est branché, avec ou sans 12v les valeurs varient entre 2453mv et 2458mv et je suis large :), des qu'il n'y a que le 12v pour alimenter l'arduino cela varie de 2300mv-2800mv, si ej fait un log de tete de ce que je vois sur l'ecran du circuit ca donnerait un truc du genre

USB (mV calculé à partir de l'analogread, pendant 3secs environ)
2453
2453
2454
2454
2455
2456
2455
2455
2454
2453

12V (pendant 3secs aussi)
2533
2491
2705
2560
2680
2444
2699
2526
2503

Et si tu alimente la carte arduino avec une autre alim : soit 5V appliqué sur la broche "5V", soit entre 7 et 9V appliqué sur l'entrée alim extérieure.. Tu doit bien avoir un chargeur quelque part : il faut juste vérifier qu'il délivre du continu (symbole "=") et non pas de l'alternatif (symbole "~" ), est ce que cela fait pareil ?

Autre action possible : Pour le filtrage de l'alim 12V tu met une résistance entre le 12V et l'entrée alim externe de la carte arduino.
Pour déterminer la valeur il d'abord mesurer avec un multimètre le courant maximum(Imax) consommé par la carte.
Coté entrée carte il faut entre 7 et 9volts, prenons 9V et appliquons la loi d'ohms à la résistance U= RI -> R= (12-9)/Imax.
Le filtre sera constitué par la résistance associée au condensateur d'entrée du régulateur.

soit 5V appliqué sur la broche "5V"

j'ai deja tester, pas d'une autre alim, mais depuis le regulateur 5v et ca change rien.

soit entre 7 et 9V appliqué sur l'entrée alim extérieure

bon j'ai teste en alimentant avec la pile, en essayaynt au mieux d'isoler les 2 circuits 5 et 12v, ci joint le schema. donc tjrs pareil, juste la pile, variation de 5mV max, des que je branche le 12v, variation d'environ 150mV, variations un peu moins prononcées mais qui restent innexploitables.J'ai meme teste en reliant le ground du phsensor au 2eme ground de la carte, mais de tte facon la tension mesuré en sortie du shield est correcte et stable.

Le filtre sera constitué par la résistance associée au condensateur d'entrée du régulateur.

j'ai rien compris, newbie powa :slight_smile: mais je suppose qu'avec la pile 9v, j'ai vérifié le cas d'une alim externe 9v.

Je viens de relire depuis le début et je n'ai pas trouvé de donnée sur le capteur de PH.
Peut tu nous donner un lien vers sa datasheet, merci.

A mon avis ton problème sens la grosse conn*rie, et plus elles sont grosses plus elles sont dures à trouver.

cibine:
USB (mV calculé à partir de l'analogread, pendant 3secs environ)
...
12V (pendant 3secs aussi)
...

Tu peux faire la meme manip (de changement d'alim)
simplement en appliquant le 3.3V issu de l'arduino sur A0 (ou Ax) ?

68tjs:
A mon avis ton problème sens la grosse conn*rie, et plus elles sont grosses plus elles sont dures à trouver.

:grin:

reflexion de vieux singe , à laquelle je m'associe 8)

Bonjour

68tjs:
A mon avis ton problème sens la grosse conn*rie, et plus elles sont grosses plus elles sont dures à trouver.

Je dit ça, je dit rien, mais peutetre qu'avec les condos qui vont bien autour du regulateur, ça fonctionnerais mieux.

A+

Tout à fait mais c'est pour faire fonctionner la solution bis. Cela n'explique pas la cause du défaut initial.