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