balances connectées sur le réseau SIGFOX

Concept #

Cet autre projet s’inscrit dans le développement de systèmes connectés au réseau commercial Sigfox en vue de peser des ruches, de prendre la température de leur environnement et pourquoi pas celle au cœur du couvain pour en observer l’évolution en périodes extrêmes: hiver, canicule, afin de démontrer les capacités d’adaptation des abeilles.

Le système repose :

  • sur des balances électroniques dont on ôte les composants pour ne garder que la structure et les 4 capteurs de pression.
  • sur des convertisseurs analogiques-digitaux XH711 pour numériser les données des jauges de contrainte (capteurs de poids).
  • sur des capteurs de température et d’hygrométrie DHT22 pour mesurer l’environnement climatique du rucher.
  • sur des sondes de température DS18B20 pour mesurer l’intérieur de la ruche.
  • un module radio pour communiquer avec les réseau Sigfox.
  • une platine de développement pro-mini programmable en C++

Réseau SIGFOX #

Ce réseau nécessite un abonnement d’environ 12€ / an et par objet. Il permet l’envoi de 140 messages par jour d’un longueur de 24 octets.

Les données, une trame d’octets alignant poids, tension batterie, météo etc, sont recueillies par les milliers d’antennes Sigfox et recueillies par l’abonné dans un backend du serveur Sigfox. L’abonné crée sur ce backend un script appelé callback qui pointe l’adresse vers laquelle Sigfox doit envoyer ses données, en occurrence un petit serveur chez l’abonné afin qu’il traite ces informations.

Les informations sont remises en forme sur le serveur de l’abonné par une application Node-Red. Elle fait le tri en extrayant les informations de la trame d’octets pour les interpréter et les envoyer sous forme décimale dans une base de données Influxdb.

Il reste à visualiser les mesures dans une application Grafana sous forme de graphiques et de jauges afin d’en garder l’historique et visualiser l’évolution chronologique des mesures.

Programmation des modules Mini ATMEGA328 Pro 328, 3.3V/8MHz #

Ce module peut se programmer en C++. Il a été choisi pour réduire au maximum la consommation d’énergie à quelques micro ampères. Il n’a que les accès TX RX du processeur. Il faut donc utiliser un FTDI (adaptateur TX RX / USB) pour le programmer.

Afin de réduire la consommation, il faut dessouder le régulateur de tension pour entre directement le 4V d’une batterie LIPO ou une alcaline par exemple car l’alimentation du processeur n’est pas critique.

Il faut aussi dessouder la LED qui visualise la mise sous tension du processeur et qui se trouve juste après le régulateur.

Recueil et visualisation des données via Node-Red et Grafana #

Le soft #

Le projet se trouve sur https://github.com/patrickdcp77/pro-mini-sigfox.

L’éditeur pour créer le code C++ est Visual Studio Code. Il utilise l’extension Platformio pour compiler les lignes de C++.

Powered by BetterDocs