Table des matières:

Compteur de niveau de réservoir à ultrasons : 5 étapes (avec photos)
Compteur de niveau de réservoir à ultrasons : 5 étapes (avec photos)

Vidéo: Compteur de niveau de réservoir à ultrasons : 5 étapes (avec photos)

Vidéo: Compteur de niveau de réservoir à ultrasons : 5 étapes (avec photos)
Vidéo: Proteus EcoMeter. Jauge de niveau à ultrasons pour cuves de fioul a : Configuration étape par étape 2024, Novembre
Anonim
Compteur de niveau de réservoir à ultrasons
Compteur de niveau de réservoir à ultrasons
Compteur de niveau de réservoir à ultrasons
Compteur de niveau de réservoir à ultrasons

Besoin de surveiller le niveau de liquide dans un puits de grand diamètre, un réservoir ou un conteneur ouvert ? Ce guide vous montrera comment fabriquer un sonar de niveau de fluide sans contact à l'aide d'une électronique bon marché !

Le croquis ci-dessus montre un aperçu de ce que nous visions avec ce projet. Notre chalet d'été dispose d'un puits de grand diamètre pour fournir de l'eau potable à utiliser dans la maison. Un jour, mon frère et moi avons parlé de la façon dont notre grand-père mesurait le niveau d'eau manuellement afin de suivre la consommation et l'afflux d'eau tout au long de l'été pour éviter les découverts. Nous pensions qu'avec l'électronique moderne, nous devrions pouvoir faire revivre la tradition, mais avec moins de travail manuel. Avec quelques astuces de programmation, nous avons réussi à utiliser un Arduino avec un module sonar pour mesurer la distance jusqu'à la surface de l'eau (l) avec une fiabilité raisonnable et une précision de ± quelques millimètres. Cela signifiait que nous pouvions estimer le volume restant V, en utilisant le diamètre D et la profondeur L connus, avec une précision d'environ ± 1 litre.

Parce que le puits est situé à environ 25 m de la maison et que nous voulions l'affichage à l'intérieur, nous avons opté pour l'utilisation de deux Arduinos avec une liaison de données entre les deux. Vous pouvez facilement modifier le projet pour n'utiliser qu'un seul Arduino si ce n'est pas le cas pour vous. Pourquoi ne pas utiliser le transfert de données sans fil ? En partie à cause de la simplicité et de la robustesse (le fil est moins susceptible d'être endommagé par l'humidité) et en partie parce que nous voulions éviter d'utiliser des piles du côté du capteur. Avec un fil, nous pourrions acheminer à la fois le transfert de données et l'alimentation via le même câble.

1) Module Arduino dans la maisonC'est le module Arduino principal. Il enverra un signal de déclenchement à l'Arduino dans le puits, recevra la distance mesurée et affichera le volume d'eau restant calculé sur un écran.

2) Arduino côté puits et module sonarLe but de cet Arduino est simplement de recevoir un signal de déclenchement de la maison, d'effectuer une mesure et de renvoyer la distance du module sonar au niveau de l'eau. L'électronique est intégrée dans un boîtier (relativement étanche), avec un tuyau en plastique fixé du côté récepteur du module sonar. Le but du tuyau est de réduire les erreurs de mesure en réduisant le champ de vision afin que seule la surface de l'eau soit « vue » par le récepteur.

Étape 1: Pièces, test et programmation

Pièces, tests et programmation
Pièces, tests et programmation
Pièces, tests et programmation
Pièces, tests et programmation
Pièces, tests et programmation
Pièces, tests et programmation

Nous avons utilisé les pièces suivantes dans ce projet:

  • 2 x Arduino (un pour mesurer le niveau de liquide, un pour afficher les résultats sur un écran)
  • Une alimentation basique 12V
  • Module à ultrasons (sonar) HC-SR04
  • Module d'affichage LED MAX7219
  • Câble téléphonique de 25 m (4 fils: alimentation, terre et 2 signaux de données)
  • Boîte de montage
  • Colle chaude
  • Souder

Coût des pièces: Environ 70 €

Pour nous assurer que tout fonctionnait comme il se doit, nous avons d'abord effectué toutes les soudures, le câblage et les tests au banc simples. Il existe de nombreux exemples de programmes pour le capteur à ultrasons et le module LED en ligne, nous les avons donc simplement utilisés pour nous assurer que la distance mesurée avait un sens (image 1) et que nous pouvions capter la réflexion ultrasonore de la surface de l'eau sur- site (photo 2). Nous avons également effectué des tests approfondis de la liaison de données pour nous assurer qu'elle fonctionne toujours sur de longues distances, ce qui n'a posé aucun problème.

Ne sous-estimez pas le temps consacré à cette étape, car il est essentiel de savoir que le système fonctionne avant de s'efforcer de tout monter correctement dans des boîtiers, de déterrer les câbles, etc.

Au cours des tests, nous nous sommes rendu compte que le module sonar capte parfois une réflexion sonore provenant d'autres parties du puits, telles que les parois latérales et le tube d'alimentation en eau, et non la surface de l'eau. Cela signifiait que la distance mesurée serait soudainement beaucoup plus courte que la distance réelle jusqu'au niveau de l'eau. Étant donné que nous ne pouvons pas simplement utiliser la moyenne pour lisser ce type d'erreur de mesure, nous avons décidé de rejeter toute nouvelle distance mesurée qui était trop différente de l'estimation de distance actuelle. Ce n'est pas problématique puisque nous nous attendons à ce que le niveau d'eau change assez lentement de toute façon. Au démarrage, ce module effectuera une série de mesures et sélectionnera la plus grande valeur reçue (c'est-à-dire le niveau d'eau le plus bas) comme point de départ le plus probable. Après cela, en plus de la décision « conserver/rejeter », une mise à jour partielle du niveau estimé est utilisée pour lisser les erreurs de mesure aléatoires. Il est également important de laisser s'éteindre tous les échos avant de procéder à une nouvelle mesure - du moins dans notre cas où les murs sont en béton et donc très écho-y.

La version finale du code que nous avons utilisé pour les deux Arduinos se trouve ici:

github.com/kelindqv/arduinoUltrasonicTank

Étape 2: Travaux de génie civil

Travaux civils
Travaux civils

Comme notre puits était situé à distance de la maison, nous avons dû créer une petite tranchée dans la pelouse pour y mettre le câble.

Étape 3: connexion et montage de tous les composants

Connexion et montage de tous les composants
Connexion et montage de tous les composants
Connexion et montage de tous les composants
Connexion et montage de tous les composants
Connexion et montage de tous les composants
Connexion et montage de tous les composants

Connectez tout comme c'était le cas lors des tests, et espérons que cela fonctionne toujours ! N'oubliez pas de vérifier que la broche TX sur un Arduino va au RX de l'autre, et vice versa. Comme le montre l'image 1, nous avons utilisé le câble téléphonique pour alimenter l'Arduino dans le puits, pour éviter d'utiliser des piles.

La deuxième et la troisième photo montrent la disposition du tuyau en plastique, avec l'émetteur placé à l'extérieur du tuyau et le récepteur placé à l'intérieur (oui, c'était une position de prise de vue inconfortable…)

Étape 4: Étalonnage

Après s'être assuré que la distance entre le capteur et le niveau d'eau est calculée correctement, l'étalonnage consistait simplement à mesurer le diamètre du puits et la profondeur totale afin que le volume de fluide puisse être calculé. Nous avons également ajusté les paramètres de l'algorithme (temps entre les mesures, les paramètres de mise à jour partielle, nombre de mesures initiales) pour donner une mesure robuste et précise.

Alors, dans quelle mesure le capteur a-t-il suivi le niveau de liquide ?

Nous pouvions facilement voir un effet de la chasse d'eau du robinet pendant quelques minutes ou de la chasse d'eau des toilettes, ce que nous voulions. Nous pouvions même voir que le puits se remplissait à un rythme relativement prévisible pendant la nuit - le tout d'un simple coup d'œil sur l'écran. Succès!

Remarque: La conversion temps-distance ne corrige actuellement pas les changements de vitesse du son dus aux variations de température. Cela pourrait être un bel ajout futur, car les températures dans le puits varieront un peu !

Étape 5: Utilisation à long terme

Mise à jour 1 an: Le capteur fonctionne parfaitement sans signe de corrosion ni de dommage malgré l'environnement humide ! Le seul problème au cours de l'année a été que la condensation s'accumule sur le capteur par temps froid (en hiver), ce qui évidemment bloque le capteur. Ce n'est pas un problème dans notre cas puisque nous n'avons besoin de lectures que pendant l'été, mais d'autres utilisateurs devront peut-être faire preuve de créativité !:) L'isolation ou la ventilation sont probablement des solutions envisageables. Bonne invention !

Conseillé: