Tableau de bord et données de capteurs en temps réel
Sommaire
Choix d'un dashboard pour l'iOT
Pour le projet LaPerco, il s'agit de mettre en place un tableau de bord pour visualiser les données issues des capteurs, et de relier ces capteurs avec une liaison radio type LoRA
Une sélection de Dashboards adaptés à l'Internet des objets libre / open source :
- Freeboard https://freeboard.io/ https://github.com/Freeboard/freeboard avec une version desktop https://www.myviz.io
- Thingsboard https://thingsboard.io/
- Sentilo http://www.sentilo.io
Il y en a de nombreux autres, +/- usine à gaz, +/- open source, notre choix s'est porté sur Freeboard simple et facile à déployer
Installer Freeboard
C'est a priori tout à fait simple : il suffit de cloner le dépôt git dans un répertoire vu par un serveur web
Quelques ressources :
- https://diyprojects.io/freeboard-io-installation-ubuntu-16-04-apache2/
- https://community.openenergymonitor.org/t/a-howto-install-freeboard-with-mqtt-for-emontx-shield/1581
Ajouter des plug-in à Freeboard
MQTT
Comme par exemple un plug-in pour recevoir des infos depuis un client MQTT : cloner ce dépot git https://github.com/alsm/freeboard-mqtt dans le répertoire
/var/www/my_webapp/www/plugins/thirdparty/
<script type="text/javascript">
head.js("js/freeboard_plugins.min.js",
"plugins/thirdparty/freeboard-mqtt/clearobject.mqtt.plugin.js",
// *** Load more plugins here ***
function(){
$(function()
{ //DOM Ready
freeboard.initialize(true);
Serveur MQTT
apt-get install mosquitto mosquitto-clients python-mosquitto
il faut router le port 1883 du modem Internet vers le serveur MQTT et ouvrir le port sur l'éventuel firewall
Client MQTT
Un client en ligne de commande :
sudo apt install mosquitto-clients
Puis tester :
Coté serveur mosquitto_sub -v -t 'test/topic' Coté ordinateur mosquitto_pub -h dev.lobotomie.org -t 'test/topic' -m 'helloWorld'
Installer un logiciel avec interface graphique pour monitorer des messages MQTT Spy
sudo apt-get install openjfx
Télécharger https://github.com/eclipse/paho.mqtt-spy/releases/download/1.0.0/mqtt-spy-1.0.0.jar et exécuter :
java -jar mqtt-spy-1.0.0.jar