Table des matières:
- Étape 1: liste du matériel
- Étape 2: Outils
- Étape 3: Assembler le matériel
- Étape 4: Réglez le timing
- Étape 5: Le logiciel
- Étape 6: Configurer le logiciel
- Étape 7: Comment fonctionne le logiciel
- Étape 8: Exécutez-le
- Étape 9: Orientations futures
Vidéo: Horloge des marées et météo : 9 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Bien que vous puissiez acheter des horloges de marée analogiques qui ont une seule aiguille indiquant si la marée est haute ou basse ou quelque part entre les deux, ce que je voulais, c'était quelque chose qui me dirait à quelle heure sera la marée basse. Je voulais quelque chose sur lequel je pouvais jeter un coup d'œil rapidement sans avoir à l'allumer, à appuyer sur un bouton ou à attendre. Et je voulais quelque chose avec une longue durée de vie de la batterie. J'ai donc utilisé une carte TTGO T5, qui est une carte basée sur ESP32 avec un écran e-paper de 2,13 , connectée à une puce TTL5110. Le TPL5110 allume le T5 toutes les 2,5 heures, et une fois par jour le T5 télécharge les données de marée de NOAA et les données météorologiques d'OpenWeatherMap, affichent les données sur le papier électronique, puis indiquent au TPL5110 d'éteindre le T5.
MISE À JOUR (25 février 2020) L'horloge de marée fonctionne depuis un an maintenant et la batterie est à 4,00 volts, donc l'horloge pourrait fonctionner pendant de nombreuses années.
Étape 1: liste du matériel
Tableau TTGO T5 17 $
Carte Adafruit TPL5110 5 $
Planche Adafruit Perma-Proto Quarter-size (facultatif) 0,71 $ (commande minimum 8,50 $)
Batterie Li-Poly 1200 mAh $10 (ou autre source d'alimentation appropriée)
Câble JST PH à 2 broches – Embase mâle 0,75 $
Condensateur 220 uF
Étape 2: Outils
Fer à souder
Pince à dénuder
Chargeur de batterie Li-Po, comme celui-ci.
Étape 3: Assembler le matériel
L'assemblage du matériel est assez simple comme le montre le schéma. J'ai utilisé une carte Adafruit Perma-proto qui ressemble à une carte proto normale, sauf qu'elle est agencée comme une planche à pain, avec les mêmes connexions électriques qu'une planche à pain, ce qui est bien. Comme je n'avais besoin que de quelques connexions et que je voulais ranger l'ensemble dans une petite boîte, j'ai coupé l'une des planches en quatre avec une meule à tronçonner Dremel.
Le condensateur de 220 uF est très important. Sans lui, le TPL5110 n'allumera jamais le T5. On ne sait pas très bien pourquoi, mais d'autres personnes utilisant le TPL5110 ont eu le même problème. Peut-être que l'ESP32 consomme plus de courant au démarrage que le TTL5110 ne peut en fournir ?
Ne câblez pas la batterie. Utilisez le câble JST-PH afin de pouvoir déconnecter la batterie pour la charger. Il peut y avoir un moyen de recharger la batterie du T5 via le TPL5110 si le TPL5110 est "allumé", mais je ne peux pas garantir cette technique.
J'ai fait une boîte en bois comme enceinte, mais tout ce qui a des dimensions intérieures minimales de 1,5" x 2,75" x 1" fonctionnerait.
Étape 4: Réglez le timing
La carte TPL5110 dispose d'un potentiomètre trim qui définit l'intervalle de temps auquel le TPL5110 se réveille. Utilisez un petit tournevis pour le tourner complètement dans le sens inverse des aiguilles d'une montre. Sur ma carte, cela a défini l'intervalle à 145 minutes, ce qui est en fait plus que le maximum spécifié de 120 minutes, mais cela fonctionne et est cohérent et permettra d'économiser encore plus d'énergie que de se réveiller toutes les 120 minutes, alors je l'ai utilisé. Vous n'avez pas besoin de connaître précisément l'intervalle, car le but est simplement de télécharger des données environ une fois par jour vers 4 heures du matin. Vous pouvez spécifier l'intervalle (par exemple, 145 minutes) et l'heure de réveil (par exemple, 4 heures du matin) dans env_config.h.
(Si vous voulez un meilleur contrôle du timing pour un autre projet, la carte TPL5110 a une trace à l'arrière que vous pouvez couper pour désactiver le potentiomètre. Ensuite, vous attachez une résistance à la broche Delay, et la résistance détermine l'intervalle, selon ce tableau.)
Étape 5: Le logiciel
Vous aurez besoin de l'IDE Arduino avec le package ESP32. Dans l'IDE, réglez votre carte sur "ESP32 Dev Module".
L'esquisse est disponible sur https://github.com/jasonful/Tides et nécessite 3 bibliothèques:
- "ESP8266 Weather Station", disponible depuis le gestionnaire de bibliothèque Arduino (ou ici). Vous n'aurez besoin que de ces 6 fichiers: ESPHTTPClient.h, ESPWiFi.h, OpenWeatherMapCurrent.cpp, OpenWeatherMapCurrent.h, OpenWeatherMapForecast.cpp, OpenWeatherMapForecast.h et pouvez supprimer le reste.
- "Json Streaming Parser" disponible depuis le gestionnaire de bibliothèque Arduino (ou ici)
- https://github.com/LilyGO/TTGO-Epape-T5-V1.8/tree/master/epa2in13-demo Même si le code n'est pas emballé comme une véritable bibliothèque, vous pouvez simplement le copier dans votre répertoire de bibliothèques et inclure ce.
Étape 6: Configurer le logiciel
Vous devrez définir plusieurs paramètres (et quelques-uns que vous voudrez peut-être définir) dans le fichier env_config.h, notamment:
- Wi-Fi SSID et mot de passe
- Identifiant de la station NOAA (en d'autres termes, où êtes-vous)
- OpenWeatherMap AppID, auquel vous devrez vous inscrire (c'est facile et gratuit)
- OpenWeatherMap LocationID (encore une fois, où êtes-vous)
- CONFIG_USE_TPL5110, qui permet d'utiliser un T5 sans TPL5110. Au lieu de cela, le logiciel entrera en mode veille profonde. La carte T5 consomme environ 8 mA en sommeil profond, donc je m'attendrais à ce que la batterie ne dure que quelques jours.
Étape 7: Comment fonctionne le logiciel
(Vous pouvez sauter cette partie si vous ne vous en souciez pas.)
L'objectif est de se réveiller une fois par jour, mais comme l'intervalle maximum du TPL5110 n'est que de 2 heures environ, le T5 doit se réveiller plus souvent. Ainsi, après avoir téléchargé les données de marée et de météo, il calcule combien de ces intervalles de 2 heures il y a entre maintenant et 4 h demain matin. C'est un peu compliqué par le fait que le TPL5110 coupe totalement l'alimentation du T5, ce qui est bon pour la batterie, mais cela fait perdre de la RAM et de l'horloge temps réel. C'est comme se réveiller chaque matin avec une amnésie. Donc, pour déterminer l'heure qu'il est maintenant, il l'extrait de l'en-tête HTTP de la NOAA. Et pour se souvenir du nombre d'intervalles de 2 heures restants, il écrit ce compteur pour le stockage non volatile (flash). A chaque réveil, il vérifie ce compteur, le décrémente, le mémorise, et s'il est supérieur à zéro, il envoie immédiatement un signal au TPL51110 ("Done") lui demandant de le mettre en veille. Lorsque le compteur atteint zéro, le code télécharge de nouvelles données, recalcule et réinitialise le compteur.
Étape 8: Exécutez-le
Assurez-vous que l'interrupteur sur le côté gauche du T5 est en position haute (marche), téléchargez le croquis sur le T5, et en quelques secondes, l'écran devrait se mettre à jour avec les informations sur la marée et la météo.
Si vous devez déboguer le logiciel, remplacez "#define DEBUG 0" en haut de Tides.ino par "#define DEBUG 1". Cela activera la sortie de débogage série et affichera également au bas de l'e-paper le nombre de redémarrages restants avant de télécharger de nouvelles données, et l'heure à laquelle il a téléchargé les dernières données.
Étape 9: Orientations futures
- L'utilisation du TPL5110 associée à un écran e-paper est un excellent moyen d'afficher toutes les données qui ne changent pas souvent, avec une excellente autonomie.
- Lorsque j'ai conçu cela, j'ai envisagé d'utiliser le TrigBoard, qui est une carte ESP8266 avec un TPL5111 à bord. Il aurait fallu obtenir un écran e-paper séparé et une carte pilote e-paper comme ceci ou cela. Ou un combo pilote + carte comme ceci ou cela. Pour porter le code sur ESP8266, je pense que le code SSL devra utiliser des empreintes digitales au lieu de certificats, et le code de stockage non volatile devra utiliser la mémoire EEPROM ou RTC.
- J'ai récemment entendu dire que la carte Lolin32 est plutôt correcte en mode veille profonde: environ 100uA. Pas aussi bon que la carte TPL51110 (20uA selon Adafruit) mais assez bon.
- OpenWeatherMap renvoie beaucoup plus de données météo que je n'en affiche. Y compris les identifiants d'icônes, ce qui nécessiterait de trouver des icônes monochromes quelque part.
Conseillé:
E-dés - Arduino Die/dés 1 à 6 dés + D4, D5, D8, D10, D12, D20, D24 et D30 : 6 étapes (avec photos)
E-dice - Arduino Die/dice 1 à 6 Dice + D4, D5, D8, D10, D12, D20, D24 et D30 : Il s'agit d'un projet arduino simple pour faire un dé électronique. Il est possible de choisir entre 1 à 6 dés ou 1 sur 8 dés spéciaux. Le choix se fait par simple rotation d'un encodeur rotatif. Voici les caractéristiques : 1 dé : montrant les gros points 2 à 6 dés : montrant les points
ESP8266 Horloge réseau sans RTC - Nodemcu NTP Horloge Pas de RTC - PROJET HORLOGE INTERNET : 4 étapes
ESP8266 Horloge réseau sans RTC | Nodemcu NTP Horloge Pas de RTC | PROJET D'HORLOGE INTERNET: Dans le projet, un projet d'horloge sans RTC prendra du temps sur Internet en utilisant le wifi et l'affichera sur l'écran st7735
Bricolage d'une sirène de raid aérien avec des résistances, des condensateurs et des transistors : 6 étapes (avec photos)
Bricolage d'une sirène Air Raid avec des résistances, des condensateurs et des transistors: Ce projet de bricolage Air Raid Siren abordable convient à la recherche d'un circuit d'auto-oscillation composé uniquement de résistances, de condensateurs et de transistors qui peuvent enrichir vos connaissances. Et il convient à l'éducation à la défense nationale pour les enfants, en
Comment démonter un ordinateur avec des étapes et des images faciles : 13 étapes (avec des images)
Comment démonter un ordinateur avec des étapes et des images faciles : Il s'agit d'instructions sur la façon de démonter un PC. La plupart des composants de base sont modulaires et facilement démontables. Cependant, il est important que vous soyez organisé à ce sujet. Cela vous aidera à éviter de perdre des pièces, et aussi à faire le remontage ea
Comment donner à une horloge murale des aiguilles lumineuses et des marqueurs d'intervalle de temps : 14 étapes (avec photos)
Comment donner à une horloge murale des aiguilles lumineuses et des marqueurs d'intervalle de temps : Nous voulions une horloge murale de chambre avec des aiguilles lumineuses et un affichage d'intervalles de cinq minutes et quart d'heure. Il devait être lisible sans effort depuis le lit et la luminosité devait durer toute la nuit. La peinture lumineuse utilisée sur les horloges modernes a tendance à