PM2M/2014/TP: Difference between revisions
Line 19: | Line 19: | ||
==Mini-Projet== |
==Mini-Projet== |
||
[[Image:M2MArchi2014-001.jpg|200px|right|thumb|Architecture Mini-Projet]][[Image:M2MArchi2014-002.jpg|200px|right|thumb|Architecture Mini-Projet]] |
|||
Ce mini-projet consiste a mettre en place une infrastructure de collecte de données capteur. L'acquisition des mesures de capteurs distribués se fait sur une carte [[Intel Galileo]]. Les données sont remontées dans des messages vers un serveur ([[Node-RED]]) via un "broker" [[PubSub]] [[MQTT]] ([[Mosquitto]] ou [[RabbitMQ]]). Les formats des messages peuvent être [[JSON]], [[BSON]], binaire, [[XML]] ...). Les données peuvent être stockées dans une base de données (SQL ou [[NoSQL]] comme [[MongoDB]], [[Redis.io]], [[TempoDB]], ...) et visualisées en différé ou en direct ([[MQTT Panel]], [[D3.js]], ...). |
Ce mini-projet consiste a mettre en place une infrastructure de collecte de données capteur. L'acquisition des mesures de capteurs distribués se fait sur une carte [[Intel Galileo]]. Les données sont remontées dans des messages vers un serveur ([[Node-RED]]) via un "broker" [[PubSub]] [[MQTT]] ([[Mosquitto]] ou [[RabbitMQ]]). Les formats des messages peuvent être [[JSON]], [[BSON]], binaire, [[XML]] ...). Les données peuvent être stockées dans une base de données (SQL ou [[NoSQL]] comme [[MongoDB]], [[Redis.io]], [[TempoDB]], ...) et visualisées en différé ou en direct ([[MQTT Panel]], [[D3.js]], ...). |
||
Revision as of 11:37, 6 April 2014
Page 2014 des supports de cours et travaux pratiques de l'UE Projets M2PGI Services Machine-to-Machine.
Support de cours
Etapes
- Tutoriel OSGi
- Tutoriel Arduino
- Installation d'OpenHAB
- Installation de Mosquitto
- Installation de Node-RED
- Installation de MQTT Panel avec rickshaw
- Dépôt GitHub
Mini-Projet
Ce mini-projet consiste a mettre en place une infrastructure de collecte de données capteur. L'acquisition des mesures de capteurs distribués se fait sur une carte Intel Galileo. Les données sont remontées dans des messages vers un serveur (Node-RED) via un "broker" PubSub MQTT (Mosquitto ou RabbitMQ). Les formats des messages peuvent être JSON, BSON, binaire, XML ...). Les données peuvent être stockées dans une base de données (SQL ou NoSQL comme MongoDB, Redis.io, TempoDB, ...) et visualisées en différé ou en direct (MQTT Panel, D3.js, ...).
Extra Mini-Projet
Déploiement sur plateforme Cloud
Le serveur Node-RED et le "broker" PubSub MQTT (Mosquitto ou RabbitMQ) peuvent être hébergé sur une plateforme cloud comme Windows Azure ou Amazon EC2 ou Heroku.
Attention, Eduroam bloque le port 1883 du protocole MQTT.
PubSub des mesures capteur avec Apache Kafka
Le broker MQTT peut être replacé par le broker PubSub Apache Kafka qui peut fonctionner en configuration distribuée et répliquée (plusieurs serveurs sur une plateforme cloud).
Intégration à un ESB Apache Camel
Compléter le tutoriel avec un déploiement de composants Apache Camel Vous pourrez utiliser les composants suivants
- https://camel.apache.org/weather.html
- https://camel.apache.org/mqtt.html
- https://camel.apache.org/rss.html
- https://camel.apache.org/esper.html
- https://camel.apache.org/mongodb.html
Matériel
- Intel Galileo
- http://intel-software-academic-program.com/courses/#iot
- Gas Sensors
- DHT11/DHT21/DHT22 etc. Temperature & Humidity sensors
- SCL3711 NFC Reader --> voir NFCpy
- Capteur de pression BMP085
- High Sensitivity Alarm Vibration Sensor Module
- PIR Motion Sensor
- BMP085 Pressure Sensor
Liens
- Intel Galileo
- http://wiki.eclipse.org/Eclipse_IoT_Day_Grenoble_2014
- https://github.com/SmartDollHouse