Table des matières:

Mesurer le niveau de carburant avec Arduino : 4 étapes (avec photos)
Mesurer le niveau de carburant avec Arduino : 4 étapes (avec photos)

Vidéo: Mesurer le niveau de carburant avec Arduino : 4 étapes (avec photos)

Vidéo: Mesurer le niveau de carburant avec Arduino : 4 étapes (avec photos)
Vidéo: Les Distributeurs Ne Veulent Pas Que Vous Sachiez Ça 2024, Juillet
Anonim
Image
Image
Mesurer le niveau de carburant avec Arduino
Mesurer le niveau de carburant avec Arduino

L'unité de détection utilise généralement un flotteur connecté à un potentiomètre, généralement une conception d'encre imprimée dans une automobile moderne. Lorsque le réservoir se vide, le flotteur tombe et glisse un contact mobile le long de la résistance, augmentant sa résistance.[2] De plus, lorsque la résistance atteint un certain point, il allumera également un voyant "bas niveau de carburant" sur certains véhicules.

Pendant ce temps, l'unité d'indicateur (généralement montée sur le tableau de bord) mesure et affiche la quantité de courant électrique circulant dans l'unité d'envoi. Lorsque le niveau du réservoir est élevé et que le courant maximum circule, l'aiguille pointe vers « F » indiquant un réservoir plein. Lorsque le réservoir est vide et que le moins de courant circule, l'aiguille pointe vers "E" indiquant un réservoir vide.

La jauge de carburant numérique dans une Hyundai Elantra 2012 montrant un réservoir plein ainsi qu'une distance jusqu'à l'affichage vide.

Le système peut être à sécurité intégrée. Si un défaut électrique s'ouvre, le circuit électrique fait que l'indicateur indique que le réservoir est vide (provoquant théoriquement le conducteur de remplir le réservoir) plutôt que plein (ce qui permettrait au conducteur de manquer de carburant sans notification préalable). La corrosion ou l'usure du potentiomètre fournira des lectures erronées du niveau de carburant. Cependant, ce système comporte un risque potentiel qui lui est associé. Un courant électrique est envoyé à travers la résistance variable à laquelle est connecté un flotteur, de sorte que la valeur de la résistance dépend du niveau de carburant. Dans la plupart des jauges de carburant automobile, ces résistances se trouvent du côté intérieur de la jauge, c'est-à-dire à l'intérieur du réservoir de carburant. L'envoi de courant à travers une telle résistance présente un risque d'incendie et un risque d'explosion qui lui est associé. Ces capteurs de résistance montrent également un taux de défaillance accru avec les ajouts progressifs d'alcool dans l'essence automobile. L'alcool augmente le taux de corrosion au potentiomètre, car il est capable de transporter du courant comme de l'eau. Les applications de potentiomètre pour carburant alcool utilisent une méthodologie d'impulsion et de maintien, avec un signal périodique envoyé pour déterminer le niveau de carburant diminuant le potentiel de corrosion. Par conséquent, la demande d'une autre méthode plus sûre et sans contact pour le niveau de carburant est souhaitée.

Wikipédia

Étape 1: Théorie

Théorie
Théorie
Théorie
Théorie
Théorie
Théorie

Il y a deux choses que vous devez comprendre:

Interrupteur magnétique:

Ce capteur a de nombreuses résistances de valeurs différentes (niveau bas 240 ohms niveau haut 30 ohms), qui passent à "GND" (pas nécessairement).

Loi d'Ohm:

si nous pouvons appliquer une tension fixe et une résistance fixe, nous pouvons appliquer la loi d'Ohm.

et mesurons la tension à n'importe quel niveau donné, nous transformons donc la commutation numérique en analogique.

Étape 2: Schémas-matériaux

Schémas-matériaux
Schémas-matériaux
Schémas-matériaux
Schémas-matériaux
Schémas-matériaux
Schémas-matériaux

-Arduino Nano

-Affichage Oled

-Planche à pain

-Capteur de niveau

-2 résistances 2.2K

-2 résistances 100ohm

tuppens.com/kus-wema-fuel-water-tank-level…

Étape 3: Programmer

Programme
Programme

Le programme prend essentiellement une valeur mesurée de 0-1023

nous remarquons d'abord quelle valeur nous obtenons au niveau bas et au niveau élevé

j'ai eu

min = 295

max = 785

puis mappez-le de 0 à 100

Comme ça.

TankValue0 = map(sensorTankValue0, 295, 785, 0, 100);

Conseillé: