Go Down

Topic: Jauge essence Arduino pour bateau (Read 662 times) previous topic - next topic

hbachetti

Ensuite utiliser la fonction map :

Code: [Select]
int litres = map(adcValue, 78, 475, 20, 0);

adcValue : la valeur lue sur l'ADC
475 : la valeur ADC pour 2.32V
78 : la valeur ADC pour 0.38V
20 : la contenance du réservoir plein
0 : la contenance du réservoir vide

Code: [Select]

void setup() {
  Serial.begin(115200);
}

void printLiters(int adc)
{
  Serial.print("ADC=");
  Serial.print(adc);
  Serial.print(": ");
  Serial.print(map(adc, 78, 475, 20, 0));
  Serial.println(" litres");

}

void loop() {
  printLiters(78);
  printLiters(200);
  printLiters(475);
  delay(4000);
}


ADC=78: 20 litres
ADC=200: 14 litres
ADC=475: 0 litres

Le courant maximal avec 1KΩ sera de presque 12mA sous 12V, mais il est possible de le diminuer.
Je ne connais pas les normes en matière de courant maximal en milieu explosif.
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

hbachetti

Tout ce que je sais est que cela s'appelle ATEX.

Le flotteur doit être aux normes, je suppose, vu qu'il baigne dans l'essence.
La donnée qui manque est la résistance de la jauge à aiguille existante.

Le plus simple serait de la mesurer et d'adopter une résistance d'au moins la même valeur.
C'est juste pour éviter que notre ami clemraym se fasse roussir les poils.
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

clemraym

Merci pour votre aide. Donc si je récapitule:

- Je pars de mon flotteur
- Je mesure la résistance de mon compteur
- Je place 2 résistance : 1 de 1000ohms et 1 qui correspond à la valeur du compteur
- Je place mon arduino avec mon ecran LCD, etc...

Et hop?

Je fais le cablage sur Tinkercad pour tester cela de suis! :) merci beaucoup

hbachetti

Quote
- Je place 2 résistance : 1 de 1000ohms et 1 qui correspond à la valeur du compteur
Non, une seule qui correspond à la valeur du compteur. La deuxième résistance est le flotteur lui-même.

La tension est mesurée par l'ARDUINO entre le point milieu et GND.
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

clemraym

J'ai essayé de le simuler sur tinkercad mais j'obtiens toujours en sortie une tension de 12V.. comment cela se fait? Désolé pour toutes ces question mais j'essaye de comprendre ;)

Lien vers l'image Tinkercad

hbachetti

Un petit dessin :



En haut la résistance, en bas le flotteur.
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

clemraym

J'ai du mal à comprendre, il faut que le place la résistance plus loin dans le circuit?

clemraym

Et plutôt que de faire tout ca, je ne pourrais pas simplement envoyer du 5V dans la jauge par l'arduino et récupérer l'info de la tension de sortie en A0? Je n'aurais meme pas à manipuler le 12V

hbachetti

Pour l'instant elle est branchée entre le flotteur et l'entrée A0. Autant dire qu'elle ne sert à rien.

Elle doit être branchée entre le 12V (noté 5V sur le schéma #20) et le flotteur.

Un schéma plus généraliste :



Ve : le 12V
R2 : la résistance
R1 : le flotteur

Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

clemraym

Je vais simuler tout ca, et ca ne fonctionne pas donc en 5V?

" Et plutôt que de faire tout ca, je ne pourrais pas simplement envoyer du 5V dans la jauge par l'arduino et récupérer l'info de la tension de sortie en A0? Je n'aurais meme pas à manipuler le 12V"

hbachetti

On connaît :
Ve : 12V
Vs : 5V maxi
R1 : 240Ω maxi

R2 = R1 x (Ve / Vs) - R1

R2 = 240 x (12-5) - 240 = 336

336 est la valeur minimale de la résistance pour ne pas dépasser la tension d'entrée de l'ADC.
Rien ne t'empêche d'utiliser une résistance de plus forte valeur.

Avec 336Ω cela donne un courant maxi de :

I = 12 / (336 +33) = 32mA.

33 étant la résistance mini du flotteur.

Rappel : il faudrait mesurer la résistance de la jauge.

Quote
" Et plutôt que de faire tout ca, je ne pourrais pas simplement envoyer du 5V dans la jauge par l'arduino et récupérer l'info de la tension de sortie en A0? Je n'aurais meme pas à manipuler le 12V"
Parfaitement.

Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

hbachetti

Je nuance :

Il faut absolument mesurer la résistance de la jauge.
Cela donnera la résistance minimale à mettre en place pour limiter le courant.

Avec du 5V sur le flotteur cela donnera un courant de 5/33 = 150mA

Cela me paraît beaucoup ... à cause de l'essence.
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

fdufnews

Si le 12V est utilisé sur le capteur, il faut placer une zener pour protéger l'entrée analogique en cas de coupure de la connexion entre la résistance de polarisation et le capteur de niveau.

hbachetti


C'est vrai que si le flotteur se coupe (un défaut), le 12V se retrouve sur l'entrée analogique.
Donc, 5V est un meilleur choix.
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

Go Up