Mesurer une distance avec ESP Easy
Suite à notre dernier article sur la création de capteurs pas cher, sans programmation, je vais vous présenter ici comment faire pour mesurer une distance avec ESP Easy.
Pourquoi mesurer une distance ? Plusieurs applications sont possibles : mesurer la hauteur de vide dans une cuve à récupération d’eau de pluie, savoir si la boite aux lettres est ouverte et donc détecter la livraison d’un colis, savoir si la voiture est présente dans le garage et même savoir si votre porte de garage est ouverte.
Voilà quelques idées ! Tout cela pour quelques euros de matériel, sans aucune connaissance particulière en programmation 🙂
Matériel nécessaire
Il sera nécessaire d’avoir :
- un microcontrôleur ESP8266. Dans notre cas, j’ai pris le Wemos D1 mini. Acheter sur Aliexpress ou Amazon
- le capteur à ultra son HC-SR04 : Aliexpress / Amazon,
- des câbles de type Dupont :Femelle-Femelle ou male-femelle etc…
Raccordement
Sachez que par défaut, les connecteurs du Wemos D1 mini sont fournis non soudés. Vous aurez donc quelques soudures à faire, mais rien de méchant. Soudez les bons connecteurs en fonction des câbles Dupont que vous avez achetés.
Le capteur ultrason HC-SR04 est un capteur qui doit être alimenté en 5v.
Raccordez donc le capteur au Wemos de cette manière :
Branchez le sur les pattes D3, D4 ou toutes autres, D6 et D7 par exemple. A vous de brancher comme bon vous semble.
L’avantage de ce contrôleur Wemos est que l’on peut mettre beaucoup de capteur dessus, en 3.3v ou 5v !
Voilà, le plus dur est fait ! 😉
Configuration dans ESP Easy
Votre Wemos doit avoir le firmware ESP Easy.
Sur l’interface web d’ESP Easy, il faut configurer ce capteur dans l’onglet « Devices »:
- Sélection du type de capteur
- PIN utilisés
- Choisissez le type de capteur, ici le HC-SR04,
- Donnez un nom,
- Renseignez les PIN utilisés : D3, D4 ou D6, D7 etc…
- La fréquence de rafraichissement de la valeur,
- Le nom de la valeur,
- Une éventuelle formule mathématique au besoin,
- Submit.
Voilà, c’est fait !
Vous pouvez repartir sur l’onglet « Device », est vous verrez la valeur apparaître.
Félicitations, vous avez fabriqué votre premier capteur pour pas cher 🙂
Conclusion
Votre capteur est fonctionnel. Reste à le positionner à l’endroit souhaité.
Le Wemos D1 mini doit être alimenté en mini USB, comme un raspberry Pi. Récupérez une vieille alimentation d’un téléphone portable.
Au besoin, vous pouvez rallonger les câbles Dupont pour éloigner le capteur du Wemos avec du câble téléphonique ou RJ45.
Pour ma part, j’utilise ce capteur pour ma cuve à eau de pluie ( installation temporaire ) :
Le prochain article expliquera la procédure pour rajouter vos capteurs ESP Easy dans Jeedom.
Article super intéressant, merci ! J’attend la suite dans Jeedom avec impatience 😀 Les cas d’utilisation peuvent en effet être nombreux. Le plus dur va par contre être pour l’alimentation, la plupart de ces cas d’utilisation (boite aux lettres, cuve, etc…) étant éloignés d’une arrivée électrique :/
Effectivement.dans mon cas, la cuve et la boîte aux lettres sont dans le garage, donc près d’une prise. Sinon il faut tirer un câble téléphonique pour rallonger le capteur. En plus, la fibre arrive, le rj11 pourra reservir 🙂
Sinon une 18650 et le mode Deep Sleep de l’ESP (utilisable aussi via ESPEasy) avec un allumage plusieurs fois par jour devrait pouvoir le faire tenir pas mal de temps sans être branché à un fil.
ESPEasy c’est tip top pour gérer rapidement un tas de modules sans se prendre la tête, par contre il faudrait le HC-SR04 par son cousin JSR SR04T qui est étanche sinon il va pas durer longtemps avec l’oxydation mais faut vérifier s’il existe le plugin pour ce module dans la liste supportée par ESPEasy sinon faut modifier un peu le source pour l’adapter.
Pour ce qui est du 5V je ne sais pas si le Wemos D1 mini est spécialement étudié pour (faut vérifier le PCB et voir s’il y a une résistance 1K sur chaque Digital I/O) sinon il vaut mieux mettre une résistance 1K sur la pin « trigger » pour pas risquer d’abîmer l’ESP.
Justement c’est ce que je voulais faire!!!
Niveau de cuve avec ESp et Jeedom !!!
Merci
Bonjour,
Super ce montage et cet article !
Par contre , pour un capteur de température, comment savoir comment le brancher ? Seul ou avec ce capteur de distance par exemple ?
Merci
Il est possible de brancher les deux. Il faut regarder sur le site https://www.letscontrolit.com/wiki/index.php/ESP_Hardware pour savoir comment le brancher
tout dépend du capteur soit c’est un 1-wire DS18B20 soit c’est du capteur en interface I2C, ESPEasy est compatible avec plusieurs modèles
Bonjour,
J’ai voulu brancher 2 sr04 sur un wemos, +5v commun, gnd commun , Trigger sur D3 et l’autre D6, Echo D3 et D7.
J’en ai qui grille au bout de 2/3 jours.
Ou est l’erreur ?.
Merci
Bonjour, je vais me renseigner car je viens de recevoir aujourd’hui le deuxième sr04 pour faire pareil ! Si vous trouvez avant moi je suis preneur 🙂
Bonjour,
Pour ma part, je viens de brancher, en plus du sr04, un sr01(détecteur de mouvement). Cela tourne depuis 2 jours la. Pas de souci particulier. J’attends de voir l’évolution et si tout va bien, je vais ajouter un sr04. Je vous tiendrai informé de la suite
Bonjour,
sur le site : https://www.letscontrolit.com/wiki/index.php/HC-SR04
le D6 est « echo » et D7 « trigger » alors que moi j’ai fais l’inverse, est-ce l’explication?
c’est même une très bonne explication même si je ne comprends même pas comment ça a pu marcher une seule fois correctement car le pin TRIGGER su SR04 est supposé recevoir un signal (une tension) et son port ECHO en émettre, hors si les pins ont été branchées à l’envers l’ESP a balancé une tension sur la pin ECHO du SR04 au lieu de TRIGGER donc le SR04 aurait jamais du fonctionner
Pour moi non. Peu importe le pin utilisé. Il faut juste bien le paramétrer dans espeasy pour remonter la bonne info. Pour moi le souci ne vient pas de la
Tuto au top merci, réussi du 1er coup. Par contre le SR04 a une portée de 4m, je ne trouve aucun capteur de portée 8m, avez vous un conseil svp ? J’ai essayé un TF-mini mais je ne sais pas quels pin déclarer sur le portail en ligne (je ne vois que des gpio, et rien du genre Tx et Rx).
Merci !
Je ne pourrais pas vous dire pour le capteur. Concernant le cablage, c’est comme le sr04: le fil en tx du capteur vous le branchez sur un pin gpio, idem pour le rx et vous les déclarez sur le portail
Merci François, dsl pour la réponse tardive je n’ai pas été notifié de cet ajout. J’essaierai et reviendrai en parler
François, J’ai essayé Tx et Rx sur les pin D5 et D8 (GPIO14 et 15), puis inversement, puis avec les pin D6 et D7, puis inversement, sans résultat. Je désespère, et je crois avoir lu un probleme d’incompatibilité du TF mini sur cette carte à cause de son interface, en Uart. Est il possible de trouver 10mn ensemble via partage d’écran pour un petit check? merci d’avance
François, je lis sur https://arduino.stackexchange.com/questions/29938/how-to-i-make-the-tx-and-rx-pins-on-an-esp-8266-01-into-gpio-pins que :
Tx = GPIO 1
Rx = GPIO 3
sauf que quand j’édite le device, les lignes GPIO 1, 3, 4 et 5, sont grisés. Si vous avez une piste, je suis preneur, merci!
Bonjour,
Le HC-SR04 étant alimenté en 5V, il va renvoyer son écho en 5V. Hors je lis que les IO digitales du Wemos n’encaissent que 3,3V ici https://shop.mchobby.be/fr/wemos-esp8266/1221-wemos-d1-mini-esp-8266ex-4mb-flash-3232100012219.html par ex.
Normal, puisqu’il y a un réducteur de tension d’alim intégré au circuit pour alimenter le Wemos en 3,3V. Je ne comprends donc pas comment tu peux affirmer sans sourciller « L’avantage de ce contrôleur Wemos est que l’on peut mettre beaucoup de capteur dessus, en 3.3v ou 5v » ??
Merci à toi.
Le schéma est malheureusement faux