Programme de la formation développement des objets connectés en C++
Introduction à l’Internet des Objets
- Concepts de base IoT. Liens avec M2M. Architectures IoT.
- Problématiques de la communication et de l’énergie.
- Les offres et acteurs.
Architectures IoT
- Schéma général d’architecture, des capteurs au serveurs.
- Les systèmes d’exploitation adaptés à l’IoT (Linux, Raspbian, Win10 IoT…).
- Liens avec les différents Cloud (MS Azure IoT…).
- L’exploitation et l’indispensable corrélation de données avec les outils Big Data.
- Sécurité et confidentialité des données, respect de la vie privée.
Echanges
Echanges autour de cas concrets (compteur intelligent…). Installation de systèmes dédiés IoT.
Réseaux et détections de proximité
- Technologies disponibles : WiFi, Bluetooth, NFC, RFID…
- Echanges avec Bluetooth et WiFi Direct.
- Fonctionnement des systèmes RFID et NFC. Les QR codes.
- Les possibilités offertes par les Smartphones.
Travaux pratiques
Exploitation de tags NFC. Utilisation de Bluetooth ou Wifi direct.
Le réseau LPWAN
- Les spécificités des réseaux IoT (distance, positionnement des équipement, autonomie).
- Caractéristiques des réseaux LPWAN. Etude de SigFox et LoRaWan. Quelle programmation ?
- Les offres disponibles (opérateurs).
- Sécuriser un réseau IoT.
Travaux pratiques
Exploitation de données remontées par un réseau LPWAN et utilisation des capteurs destinés au développement.
Le prototypage
- Présentation des solutions Arduino, NodeMCU ESP8266 et Raspberry
- Programmation embarquée avec Arduino et ESP8266
- Les environnements disponibles sur Raspberry
- Le choix d’un système d’exploitation et des outils de développement
- Communication M2M
- Communication avec le protocole MQTT
Travaux pratiques
Configuration d’un broker MQTT
Développement des divers clients MQTT en C++ (Raspberry Pi, NodeMCU, Arduino, etc) ; exemple : contrôle d’une diode LED
Exploitation logicielle
- Les plateformes de communication logicielle (Technicolor Qeo, Google Weave…).
- Les APIs de type REST et outils de développement.
- Les services IFTTT
Travaux pratiques
Exploitation des services IFTTT dans une application connectée