Pb Capteurs de niveau d'eau

Impressionnant - faut le matériel qui va bien et le maîtriser. Vous avez ça chez vous ou c’est dans un fablab ?

Généralement il y a de la marge sur les condos quand ils servent à réguler les demandes de courant - moins vrai si le temps de charge et décharge fait partie du besoin mais je suis pas suffisamment pointu sur la partie hardware pour confirmer pour ce capteur. Vous savez à quoi ça sert ? (Si c’est anti rebond alors il y a de la marge)

Pour le matériel, rien de plus simple : tronçonneuse avec disque ep 1mm pour éviter au maximum la chauffe de l'inox qui le fait changer de couleur, perceuse dremel, ect rien de bien particulier quoi.

Je ne pense pas que ca soit anti-rebond (en fait j'en sait rien) peut-etre pour réguler le signal de présence d'eau ou pas car pour le moment mes capteurs constatent bien une présence d'eau mais le signal n'est pas stable du tout.
j'ai par exemple sur le moniteur série 10 fois vert, une fois orange, et 10 fois rouge et ca se répéte sans arrêt sans modifier le niveau de l'eau. Donc ca ne va pas. Des fois je mets le capteur dans l'eau et le signal change, ok et des fois rien il faut attendre et ca change ....

vous avez le capteur avec la carte associée et ses composants embarqués

image

ou juste le capteur nu et les fils ?

(sur la photo de la carte ci dessus on dirait qu'il y a 3 condensateurs et 2 résistances)

EDIT

j'ai vu un article où ils parlent seulement de 2 résistances

mais ils disent que ce n'est pas forcément suffisant non plus et qu'il faut adapter les résistances

Je n.ai que les capteurs avec 3 fils noir, blanc, rouge et dans la datasheet au post #12 sur le schéma pas de résistance juste des condensateurs
Ça se complique

OK donc si vous n''avez que 3 fils c'est alors ce schéma

et il n'y a pas besoin de résistance pour la led IR, elle doit être incluse dans l'appareillage.

Le condensateur sur Vcc serait pour stabiliser l'alimentation sans doute et celui sur la ligne de signal permet d'effacer la composante alternative et stabiliser le signal - un anti rebond.

sur ce genre de condensateur il y a de la marge à mon avis

Bonjour,
J'ai fait quelques tests mais les résultats ne sont pas concluants du tout.

Le code de test réduit au plus simple :

const int pinNiveauHaut = 8;  // entrée Niveau Haut
//const int pinNiveauBas = 9;   // entrée Niveau Bas

void setup() {
  Serial.begin(115200);
  pinMode(pinNiveauHaut, INPUT);
  //pinMode(pinNiveauBas, INPUT);
}

void loop() {

  //int etatNiveauBas = digitalRead(pinNiveauBas);
  //Serial.print("etatNiveauBas=");    Serial.println(etatNiveauBas);
  
  int etatNiveauHaut = digitalRead(pinNiveauHaut);
  Serial.print("etatNiveauHaut=");    Serial.println(etatNiveauHaut);

 /* if (etatNiveauBas == LOW && etatNiveauHaut == LOW) {
    Serial.println("VERT");  } 
    else if (etatNiveauBas != etatNiveauHaut) {
    Serial.println("ORANGE");
  } else {
    Serial.println("ROUGE");
  }*/

  delay(1000);
}

Le montage, je n'ai mis qu'un capteur pour les essais :

Les plus petits condensateurs que j'ai ce sont des 10uf donc j'ai remplacé le 100nf par un 10uf je sais c'est 100 fois plus mais bon pour l'instant je n'ai que ça.

La sortie sur le moniteur me donne une série de 0 puis de 1 que je trempe le capteur dans l'eau ou pas.
Si j'alimente le capteur par le 5v et le gnd de la uno, je n'ai que des 1. Pareil si j'alimente par l'alimentation de la breadbord et que je relie les GND de la breabord et de la uno, je nai que des 1 aussi

je ne comprends plus rien

je ne vois pas le GND aller sur la breadboard depuis l'arduino (vous avez 2 alims, il faut joindre les GNDs)

Si je joins les GND je n’ai que des 1 en sortie sur le moniteur série que le capteur soit dans l’eau ou pas
Je mesure la tension d.alim en continu pour voir mais pas de baisse 4,95v donc ce n.est pas l.alim qui est en cause

enlevez l'alim de la breadboard

Arduino GND ➜ Rail bleu de la breadboard
Arduino 5V ➜ Rail rouge de la breadboard

Rail bleu ➜ pin GND du capteur
Rail rouge ➜ pin Vcc du capteur

condensateur 10µF entre Rail bleu et pin Vcc du capteur
condensateur 100µF entre Rail bleu et pin Signal du capteur

Arduino pin 8 ➜ pin Signal du capteur

le code

const byte pinNiveauHaut = 8;  // entrée Niveau Haut

void setup() {
  pinMode(pinNiveauHaut, INPUT);
  Serial.begin(115200);
  Serial.println("Capteur Niveau Haut");
}

void loop() {
  Serial.println(digitalRead(pinNiveauHaut) == HIGH ? 100 : 0);
}

ouvrez le traceur série à 115200 bauds et regardez ce qu'il se passe au niveau de la courbe qui se dessine

(si vous n'avez pas 100µF mettez en trois ou quatre en parallèle pour avoir plus de capacité)

Bonjour EGT59

Fais cet essai:
Joindre le GND de l'Arduino à celui du breadboard et initialiser l'entrée du capteur:
pinMode(pinNiveauHaut, INPUT_PULLUP);

En effet, tu as un capteur "nu", surement sans aucun autre composant de polarisation.

Cordialement
jpbbricole

@J-M-L
Cela ne me sort que des 100.

@jpbbricole
Rien qui change , j'ai sur le moniteur série une suite de 1 puis des 0. rien en rapport avec la présence ou non d'eau

Je confirme bien que si je connecte les GND je n'ai que des 1

C'est normal que tu aies que des 1 puisque la sortie de ta sonde est directement à +5V, ôtes ce fil:
image

Mais non c'est l'alim de la sonde et le fil bleu/jaune c'est le signal

Bonsoir EGT59

C'est impératif que le GND de la sonde (du breadboard) soit connecté avec le GND de l'Arduino si non pas de mesures plausibles depuis l'Arduino.

D'où provient le + du breadboard?
image

Se serait bien d'y mettre le 5V de l'Arduino.

Cordialement
jpbbricole

La breadboard a sa propre alim 5v

J’avais déjà essayé en alimentant par la uno sans succès
Je retente demain
Merci pour ton aide

Vous avez vraiment essayé cela en virant l’alim de la breadboard ?

Éventuellement testez vos fils pour la continuité et court circuits et Connect sans la breadboard

Alors oui j.ai bien essayé cela sauf que pour le condensateur 100uf entre rail bleu et signal j.ai laissé un 10uf car sur le schéma de la datasheet c.est demandé 100nf pas 100uf
Je vais retenter demain avec un 100uf alors

Ah oui - j’avais pas mal lu - nano c’est plus petit que micro donc pas la peine de passer à 100 micro si ça ne fonctionne pas avec 10.

Et si on commençait par les basiques.
Le test du capteur seul.
Ce capteur fournit 0 ou 5V sur sa sortie d'après sa datasheet.
Il suffit de lui connecter une alimentation et de mesurer la tension entre le fil signal et GND.
Si cette mesure ne fonctionne pas ce n'est même pas la peine d'y connecter un Arduino.

Autrement, travailler avec 2 alim ce n'est pas une bonne idée. On peut assez facilement flinguer un circuit. Il peut y avoir un mode commun important entre 2 alimentations, surtout si on ne raccorde pas les GND.

Oui et c’est peut être déjà le cas… il faudrait tester si la pin de l’arduino n’a pas pris du plomb dans l’aile