まこと の ブログ

MaKoTo no burogu — Journal de bord…

Aller au contenu | Aller au menu | Aller à la recherche

Mot-clé - Arduino

Fil des billets - Fil des commentaires

vendredi, 27 décembre 2019

Surveiller l'état et la charge d'une batterie 12 Volts

  • Monitorer la vitesse du vent et la rotation de l'éolienne, c'est fait !!

Cependant quid de l'état de la batterie ?
Combien d'énergie la génératrice produit-elle ?
Cela est-il suffisant pour recharger la batterie ?

J'avais acheté un appareil pour mesurer ça en local, mais en définitive je ne m'en sert pas… Pas utile à moins d'aller au fond du jardin pour le consulter…

  • J'ai donc entrepris de construire un nouvel appareil de mesure, sur la même idée que l'Anémomètre Radio (Arduino + HC-12), avec transmission des données pour statistiques sur Grafana via InfluxDB (NodeMCU).

Attention cependant, Si on souhaite faire fonctionner l'Anémomètre et le Monitoring en même temps, il faudra prendre soin de différencier les canaux de fonctionnement des modules HC-12 (Voir la section Setup de chaque programmes)

Le monitoring Batterie, partie émetteur :

J'ai donc câblé un nouveau circuit :

dsc04270.jpg Matériel requis :

- 1 Arduino Pro Mini 5V.
- Un ordi avec port USB et le soft Arduino IDE.
- 1 plaquette HC-12 et son antenne.
- 1 diode 1N4007.
- 1 Régulateur Négatif 9V L7909CV.
- 1 condensateur électrochimique polarisé de 220µF.
- 1 condensateur électrochimique polarisé de 2,2µF.
- 1 condensateur électrochimique polarisé de 1µF.
- 1 module ACS712 (20A) (Attention cependant !! > Je sais que mon générateur ne dépassera pas 5A, à moins d'une tempête de vent de fin du monde…).

dsc04272.jpg dsc04273.jpg

Principe de fonctionnement :
- À intervalle régulier, l'Arduino va envoyer les valeurs lues sur les entrées analogiques A0 et A1, sur le port série du HC-12.
- A0 pour mesurer la valeur de la tension aux bornes de la batterie ( On a fabriqué un voltmètre très précis câblé en parallèle ).
- A1 pour mesurer le courant sortant du générateur ( Un Ampèremètre câblé en série ).

Lire la suite...

vendredi, 30 août 2019

Un anémomètre WiFi -3- … ha bah non, Radio !

Suite de l'étude précédente :

Retour sur l'usage de l'anémomètre à base de NodeMCUv3 LoLin (puce ESP8266).
Après quelques mois d'utilisation que peut-on conclure ?
Et bien il fonctionne bien, mais… Il présente plusieurs défauts :

- Problème de portée, de temps en temps on perd la connexion avec le routeur WiFi.
- Je n'ai pas beaucoup creusé, mais à priori le code que j'ai écrit finit par planter.
- Il consomme beaucoup d'énergie si on envisage de rendre son alimentation autonome (batterie).
- Une seule connexion est possible. C'est à dire que c'est soit le module récepteur qui affiche les données, soit la page web avec le manomètre.
- J'aurais voulu « grapher » des statistiques, et je me voyais embarqué dans du développement complexe et laborieux pour mes maigres compétences.

Sur une suggestion de Chrismart, j'ai donc décidé de revoir le projet dans une version plus fiable et proche de mes attentes.

Fonctionnalités revues et corrigées :

- Exit l'ESP8266 pour la transmission de data, ça va se passer en Radio 433Mhz grâce à un module HC-12 afin de gagner en portée.
- Sans le WiFi qui réclamait une connexion permanente, on va pouvoir mettre les appareils en économie d'énergie lorsqu’il n'y a pas de vent.
- La réception des data, va donc aussi se passer en Radio, pour se voir affichée sur le module d'affichage client avec un rafraîchissement temps réel.
- Dans le boîtier Client, on garde l'ESP8266, qui sera chargé d'envoyer les data à un serveur Web afin de « grapher » des statistiques à l'aide d'une BDD InfluxDB et du grapheur Grafana.
- Ce qui ne change pas, c'est la partie mécanique, vue dans le premier billet.

Anemo_synoptic.svg.png
Nous allons voir tout ça étape par étape.

L'anémomètre, partie émetteur :

J'ai donc câblé un nouveau circuit :
Anemometre02.png
20190802_211343.jpg Matériel requis :

- 1 Arduino Pro Mini 5V.
- 1 plaquette HC-12 et son antenne.
- 1 condensateur électrochimique polarisé de 220µF.
- 1 diode 1N4007.
- 1 résistance 10kΩ.
- 1 Capteur à effet Hall US1881.
- Un ordi avec port USB et le soft Arduino IDE.

Pour permettre au montage de s'intégrer en lieu et place du NodeMCUv3 LoLin , j'ai tout fixé sur un morceau d'époxy.

Lire la suite...

samedi, 5 janvier 2019

Un anémomètre WiFi -2-

Suite de l'étude précédente :

  • Avoir un affichage sur le web c'est bien…

Une petite vidéo :

  • Mais un module d'affichage physique c'est quand même plus pratique !

Une petite vidéo :

  • Une seconde démo en vidéo, avec le programme de l'anémomètre revu et corrigé. Le rafraîchissement des valeurs se fait toutes les demi-secondes :
  • J'ai donc passé quelques jours à concevoir ce boîtier client qui fonctionne à base lui aussi d'un NodeMCU connecté au réseau WiFi de la maison, et qui récupère les infos de vitesse transmise par l'anémomètre.

Principe :

Ce client se connecte à l'anémomètre et récupère le fichier JSON ( http://192.168.0.34:8080/mesures.json) afin de le parser toutes les secondes, reste alors à afficher l'information.

Ce sont donc des vieux afficheurs matriciel DLG7137 qui vont faire le travail.
Pour chaque afficheurs il aurait fallu employer un registre à décalage, afin de pouvoir adresser les données à afficher sur chaque matrices, comme cela à été fait sur le WebRadioReveilWiFi, mais ne disposant pas de suffisamment de 74HC595, j'ai dû procéder autrement.
Les DLG7137 disposent en effet d'une pin Write (WR/) qui n'autorise l'affichage de la donnée qu'au moment où elle passe à l'état bas.
Du coup en reliant tous les afficheurs entre eux et en faisant circuler l'information, il restait au programme de valider la pin Write du bon afficheur au bon moment pour afficher le caractère attendu sur chacun des afficheurs.
Et comme le NodeMCU ne dispose pas de suffisamment de papattes pour pouvoir brancher les 12 pins Write des 12 afficheurs, j'ai donné ce travail à faire à deux registres 74HC595, permettant ainsi d'adresser 16 pins Write.

ClientAfficheur_bb.png
Note : J'ai oublié de câbler les deux condensateurs de découplage utiles aux registres 74HC595 !!
Ne les oubliez-pas ! (100nF directement entres les pattes d'alimentation 8 et 16)

Lire la suite...

lundi, 19 novembre 2018

Un anémomètre WiFi -1-

dsc03927.jpg

Récemment on m'a indiqué l'existence d'une plaquette électronique du genre Arduino, mais qui a la particularité de pouvoir « faire du WiFi ».
D'abord dubitatif quant à l'utilité du truc, étant donné que je m'étais très bien passé de la chose jusqu'à présent, le truc est resté en idle dans un coin de mon esprit malade, jusqu'à ressurgir suite à mes derniers travaux sur l'Éolienne du jardin
Hé oui ! Je me suis dit que ce serait pas mal de savoir quelle vitesse de vent serait nécessaire pour pousser sur les ailes et la faire tourner, de savoir à quelle vitesse elle tournait aussi, et de pouvoir ainsi régler la tension du ressort de vitesse de rotation constante, un peu mieux qu'au… pif.

  • J'avais donc une plaquette NodeMCUv3 LoLin (à base de puce ESP8266) sous la main et après quelques tests j'ai constaté que bah c'est comme Arduino, rien de compliqué.
  • Et puis pour faire client ou serveur Web, bah c'était pas comme Arduino… et qu'il faudrait se sortir les doigts…

Oui car on peut servir des pages web, alors on pense assez vite à ordi-phone et une jauge de visualisation.
Enfin en vrai, réflexe électronicien, j'ai tout de suite pensé afficheur à leds, mais récupérer les données via du web… wé, je garde l'idée… Alors :

Pour mon projet final j'aurais besoin d'une plaquette NodeMCU en mode serveur web, perchée sur l'éolienne, pour remonter les mesures de rotation de l’anémomètre (vent) et de l'éolienne (rpm).
Les data seraient consultables via un navigateur sur un ordi ou un ordi-phone, sous forme de jauge de vitesse instantanée.
Elles seraient aussi récupérable pour former des graphiques de statistiques.
Un second NodeMCU avec des afficheurs à leds serait utilisé pour s'affranchir d'un ordi.

  • Bon c'est pas forcément facile à suivre, alors voici un dessin :

anemometre3.png

Simple anémomètre :

  • Bref, pour le moment on va juste fabriquer un anémomètre simple, avec une jauge sur ordi.

(voir même sur internet si on fait le nécessaire pour faire « sortir » les pages web).

Matériel requis :
dsc03947.jpg

- La mécanique imprimée en 3D disponible ici.
- 1 Capteur à effet Hall US1881 (absent de cette photo).
- 2 aimants permanents au néodyme ∅6 mm x 3 mm (absent de cette photo).
- 1 plaquette NodeMCUv3 LoLin.
- 1 résistance 10kΩ.
- 2 roulements à billes : ∅5 int x ∅10 ext x 4 mm.
- 1 tige filetées : ∅5 mm de 10 mm de long.
- 5 écrous de ∅5 mm.
- 3 vis : ∅3 mm de 10 mm de long (tête fraisée).
- 3 vis : ∅4 mm de 12-15 mm de long (tête poêlée).
- Un ordi avec port USB et le soft Arduino IDE.


Lire la suite...

- page 3 de 4 -