Ayant acquis une certaine expérience lors de la réalisation de mon projet de station météo décrite dans l'article Station météo APRS LoRa, et ayant quelques modules LoRa RFM95W, j'ai décidé de faire un test de faisabilité pour une mini station météo très faible consommation. Les premiers résultats étant très encourageants, j'ai poursuivi mon projet jusqu'à obtenir un projet mature. |
Caractéristiques :
- Transmission en LoRa via le réseau APRS
- très faible consommation en veille, 6-7uA !
- utilisation d'un module LoRa RFM95W
- utilisation d'un module BOSCH BME280
- microcontrôleur Arduino pro-mini
Réalisation:
J'ai utilisé un circuit imprimé développé par l'université de Pau pour leur projet "Low-cost LoRa IoT framework" et dont les fichiers Gerber sont disponibles ici
Le capteur BME280 est connecté sur les pins A4 SDA et A5 SCL de l'Arduino pro-mini
Le module LoRa RFM95W est soudé directement sur le circuit imprimé.
Afin d'obtenir une consommation minimale, l'Arduino pro-mini a été choisi car il ne possède que le strict minimum.
Après suppression des 2 diodes LED et du régulateur de tension 3.3V, on obtient un module très faible consommation.
L'alimentation se fait à l'aide d'un jeu de piles AA ou Li-Ion.
Logiciel :
Ecrit à l'aide de VSC et PlatformIO.
Les bibliothèques utilisées sont déclarées dans le fichier platformio.ini et ont été choisies en raison de leur faible taille et simplicité d'utilisation.
Le module est réveillé toutes les 8s (limite de la bibliothèque lowpowerLab) et incrémente un compteur.
Lorsque le compteur atteint la valeur voulue (TXPERIOD/8), on déclenche une mesure de la tension batterie + celle du capteur BME280 et on transmet en LoRa sur la fréquence voulue à destination du réseau APRS.
Le logiciel est disponible en téléchargement sur mon Github.
Configuration :
La latitude et longitude sont saisies au format APRS. On peut les obtenir facilement à l'aide de ma carte QRA LOCATOR
La fréquence TXFREQUENCY est saisie en Hz.
La puissance d'émission TXPOWER est saisie en dBm (max 20)
La période d'émission TXPERIOD est saisie en s (300 par défaut = 5 min)
L'Arduino pro-mini ne possédant pas d'interface USB, la programmation du module s'effectue à l'aide d'une interface USB-TTL via le connecteur latéral du module.
Utilisation :
Une fois le logiciel configuré et injecté dans l'Arduino pro-mini, il n'y a rien de particulier à faire.
Si le montage doit être installé à l'extérieur, il y a lieu de bien protéger l'ensemble contre les intempéries, notamment le module BME280. Voir à ce sujet mon article Station météo APRS