– Définir une architecture IoT complète.
– Connaître les réseaux IoT disponibles.
– Prototyper à l’aide de Raspberry/ESP8266
– Récupérer les informations des capteurs d’une carte, les traiter
éventuellement, puis les transférer vers une solution Cloud
– Concepts de base IoT. Liens avec M2M. Architectures IoT.
– Problématiques de la communication et de l’énergie.
– Les offres et acteurs.
– Sécurité et confidentialité des données, respect de la vie privée.
– Schéma général d’architecture, des capteurs au serveurs.
– Systèmes d’exploitation adaptés à l’IoT (Linux, Raspberry OS,
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.
– Réseaux et détections de proximité :WiFi, Bluetooth, NFC, RFID, etc.
– Réseaux LPWAN : SigFox et LoRaWan
Travaux pratiques
Échanges autour de cas concrets (compteur intelligent…). Installation de systèmes dédiés IoT.
– SoCs et microcontrôleurs
– Solutions avec ou sans système d’exploitation
– Présentation de l’ESP8266
– Présentation de la carte Raspberry Pi
– Capteurs et actionneurs
– Introduction : présentation du Raspberry Pi et SoCs BCM2835/2836/2837
– Distribution Linux pour Raspberry Pi : téléchargement, installation, test.
– Découverte de la distribution : paramètres essentiels, outils standard.
– Utilisation de base : configuration système, utilisateurs, interface graphique.
Travaux pratiques
Installation et test d’une distribution standard sur Raspberry Pi et
configuration headless de la carte
Configuration et intégration de la chaine de compilation croisée avec
Eclipse IDE
– Présentation et choix d’IDE
– Librairie IoT for Java : Cloud IoT
– Programmation Java J2SE Embedded
– Présentation de la plateforme de développement
Travaux pratiques
Récupération de la température et l’humidité avec le capteur DHT11 (avec
et sans interruptions), Contrôle d’un servomoteur avec un signal PWM, etc.
– Présentation détaillée des entrées-sorties GPIO
– Présentation de la bibliothèque diozero
– Interruptions et GPIO : détection des changements d’état d’une
GPIO.
– Génération d’un signal PWM
– Communication : UART, SPI, I2C
Travaux pratiques
Récupération de la température et l’humidité avec le capteur DHT11,
Contrôle d’un servomoteur avec un signal PWM, etc.
Développement de plusieurs programmes utilisant les différentes interfaces
de communication UART, SPI et I2C.
– Protocole de communication MQTT
– Les brokers
– La bibliothèque Paho MQTT for Java
– Envoie et réception des messages avec la bibliothèque Paho
Travaux pratiques
Installation et configuration du broker Mosquitto sur le Raspberry
Développement d’un client MQTT sur le Raspberry Pi, et échange des
données entre une application Android et le client
– Prise en main de l’ESP8266
– Les entrées/sorties GPIO
– Connexion à un réseau Wi-fi
– Envoie et réception des messages MQTT
Travaux pratiques
Diverses applications pour maîtriser la programmation avec l’ESP8266
Communication entre le Raspberry et l’ESP8266 à travers le protocole MQTT
– Plateforme IOT
– API REST
– Les différents Clouds (Google Cloud Platform, ThingPlus,
ThingSpeak).
– Services d’interconnexion dans le cloud et automatisation des
tâches : IFTTT
– Visualisation et analyse de données avec ThingSpeak
Travaux pratiques
Mise en place d’une application en utilisant les services IFTTT
Analyse et visualisation des données avec ThingSpeak
Référence : EMB002
Type de Stage : Pratique
Durée : 5 jours
Développeurs, chefs de projets
techniques.
Connaissances de base en
langages Java et C++, et des
bases en électronique sont un
plus.