Systèmes embarqués · Réseaux · Données
L'IoT connecte des milliards d'objets physiques — capteurs, actionneurs, appareils — à Internet pour collecter des données, les analyser et agir en temps réel sur le monde physique.
L'Internet des Objets (IoT) est l'extension d'Internet à des objets physiques équipés de capteurs, de processeurs et de capacités de communication réseau. Terme popularisé par Kevin Ashton (MIT, 1999).
Température, humidité, pression, accélération, GPS, lumière, CO₂, images, sons. Capteurs passifs (RFID) et actifs. Actionneurs : moteurs, relais, vannes, LEDs. Précision, latence et consommation énergétique.
Microcontrôleurs (ARM Cortex-M, ESP32, ATmega). Systèmes d'exploitation temps réel (FreeRTOS, Zephyr, RIOT OS). Filtrage des données au niveau du dispositif, traitement local des signaux.
Wi-Fi, Bluetooth/BLE, Zigbee, Z-Wave, LoRaWAN, NB-IoT, LTE-M, 5G, Thread. Protocoles applicatifs : MQTT, CoAP, AMQP, HTTP/REST. Choix selon portée, débit, consommation.
Ingestion de données massive (Kafka, Kinesis), stockage séries temporelles (InfluxDB, TimescaleDB), visualisation (Grafana), ML embarqué (TinyML), plateformes IoT (AWS IoT, Azure IoT Hub, Google Cloud IoT).
Capteurs, actionneurs, tags RFID
Passerelle, protocole bridging
Ingestion, stockage, traitement
ML, dashboards, alertes
Automatisation, notification
Star : tous les nœuds communiquent via un hub central. Mesh (Zigbee, Thread) : chaque nœud peut relayer les messages, autoguérison. P2P : Bluetooth classique. Choix selon la résilience et la couverture requises.
Réplique virtuelle d'un objet physique, synchronisée en temps réel. Azure Digital Twins, AWS IoT TwinMaker, NVIDIA Omniverse. Simulation, prédiction de pannes, optimisation avant déploiement physique.
Enrôlement sécurisé des dispositifs (zero-touch provisioning), déploiement OTA (Over-The-Air) des mises à jour firmware, surveillance, décommissionnement. AWS IoT Greengrass, Azure IoT Edge.
| Protocole | Portée | Débit | Conso. | Cas d'usage |
|---|---|---|---|---|
| Wi-Fi (802.11) | ~100 m | Mbps–Gbps | Élevée | Maisons intelligentes, caméras IP |
| Bluetooth BLE | ~50 m | 1–3 Mbps | Très faible | Wearables, beacons, santé connectée |
| Zigbee (802.15.4) | ~100 m mesh | 250 kbps | Très faible | Domotique, éclairage Philips Hue |
| LoRaWAN | 2–15 km | 0.3–50 kbps | Très faible | Agriculture, smart city, compteurs |
| NB-IoT (LTE) | Cellulaire | ~60 kbps | Très faible | Compteurs eau/gaz, parking |
| 5G mMTC | Cellulaire | Mbps | Faible | Industrie 4.0, robots, véhicules |
| Thread / Matter | ~100 m mesh | 250 kbps | Très faible | Smart home interopérable (Apple, Google) |
Protocole pub/sub léger sur TCP. QoS 0 (at most once), 1 (at least once), 2 (exactly once). Broker central (Mosquitto, HiveMQ, EMQX). Port 1883 (TLS : 8883). Standard de facto IoT.
Version UDP/DTLS d'HTTP pour dispositifs contraints (RFC 7252). Méthodes GET/PUT/POST/DELETE. Observe (push notifications). Adapté aux objets avec peu de RAM/ROM.
Standard industriel pour la communication machine-à-machine. Modèle information sémantique, sécurité intégrée (PKI). Base de l'IIoT et des architectures de référence RAMI 4.0.
import paho.mqtt.client as mqtt import json, time, random def on_connect(client, userdata, flags, rc): print(f"Connecté au broker — code: {rc}") client.subscribe("capteurs/+/cmd") # Wildcard def on_message(client, userdata, msg): payload = json.loads(msg.payload) print(f"[{msg.topic}] Commande reçue: {payload}") client = mqtt.Client() client.on_connect = on_connect client.on_message = on_message client.connect("broker.hivemq.com", 1883) client.loop_start() # Publication de mesures capteur while True: payload = {"temp": 20+random.gauss(0,1), "hum": random.uniform(40,70), "ts": time.time()} client.publish("capteurs/salon/data", json.dumps(payload), qos=1) time.sleep(5)
Environnement d'entrée de gamme. ATmega328 (8MHz, 2KB RAM) ou ARM Cortex-M (Arduino Zero, Nano 33). Idéal pour le prototypage, les capteurs analogiques, les PWM moteurs. Écosystème de bibliothèques immense.
Espressif — microcontrôleur Xtensa 240MHz, WiFi + BLE intégré, 512KB RAM, 4MB flash. Rapport prix/performances exceptionnel (<3€). Arduino-compatible. Très utilisé en domotique et IoT maker.
Single Board Computer : Linux complet, GPIO, caméra CSI, USB, Ethernet. RPi 4 : 4GB RAM, quad-core Cortex-A72. RPi Zero 2W : 1GHz, WiFi, 40 GPIO pour 15€. Idéal comme passerelle IoT ou edge server.
STM32 (STMicroelectronics) : gamme ARM Cortex-M0 à M7 pour l'industriel. nRF52840 : BLE 5.3 + Thread + Zigbee sur un seul chip. Ultra low power, certification radio intégrée.
Google Coral Edge TPU : inférence ML sur chip à 4 TOPS, 2W. NVIDIA Jetson Nano : GPU 128 CUDA cores pour edge AI. Gaudi (Intel). Permet le ML embarqué sans cloud pour la confidentialité et la latence.
SX1276 : transceiver LoRa longue portée. RAK Wireless : modules industriels LoRaWAN prêts-à-l'emploi. Portée en milieu rural : jusqu'à 15 km. Consommation : quelques µA en veille.
Cloud : traitement centralisé, latence 50–200ms, puissance illimitée. Edge : traitement au niveau du dispositif ou de la passerelle (<1ms), autonomie, confidentialité. Fog : couche intermédiaire (gateway locale), agrège avant l'envoi cloud.
TensorFlow Lite Micro, Edge Impulse. Inférence de modèles optimisés (quantification int8) sur microcontrôleurs avec <1MB de RAM. Détection de mots-clés, anomalies vibratoires, classification d'images simples.
FreeRTOS, Zephyr, RIOT OS, ThreadX. Ordonnancement préemptif, déterminisme. Latence garantie (hard real-time). Essentiel pour les systèmes de sécurité, les robots, les automates industriels.
AWS IoT Greengrass, Azure IoT Edge, Eclipse EdgeX Foundry. Déploiement de containers légers sur gateways Linux. Mise à jour OTA des fonctions edge. K3s (Kubernetes léger) pour les clusters edge.
Milliards de dispositifs avec des contraintes de resources limitent les mécanismes de sécurité classiques. Botnet Mirai (2016) : 600 000 caméras IP compromises → DDoS 1.2 Tbps. La sécurité by design est indispensable.
Certificats X.509 par dispositif (PKI). Secure Element (TPM, ATECC608). Challenge-response HMAC. JWT tokens pour les APIs. Provisionnement sécurisé en usine. Éviter les credentials par défaut.
MQTT over TLS (port 8883). DTLS pour CoAP/UDP. Chiffrement AES-128 suffisant pour microcontrôleurs. ECDSA pour les signatures légères. Certificats Let's Encrypt pour les gateways.
Signature des images firmware (Ed25519). Chiffrement du payload. Rollback automatique en cas d'échec. SUIT (Software Updates for IoT) — RFC 9124. Bootloader sécurisé vérifiant la chaîne de confiance.
VLAN dédiés pour les dispositifs IoT, isolation du réseau principal. Firewall local sur la gateway. Filtrage par MAC + certificat. Micro-segmentation : chaque dispositif dans sa propre zone de confiance.
Éclairage Philips Hue, thermostats Nest/Tado, serrures connectées, aspirateurs robots (Roomba), assistants vocaux (Alexa, Google Home). Standard Matter (2022) : interopérabilité Apple/Google/Amazon/Samsung.
Maintenance prédictive (vibrations, températures machines), jumeau numérique d'usine, AGVs (véhicules autonomes), cobots. Protocoles : OPC-UA, Profinet, EtherCAT. ROI : -25% de downtime, +20% de productivité.
Wearables (Apple Watch, Fitbit) : ECG, SpO₂, podomètre. Dispositifs médicaux connectés : pacemakers, glucomètres, pompes à insuline. Télésurveillance patients chroniques. Réglementation MDR (Medical Device Regulation).
Capteurs sol (humidité, NPK, pH), météo hyper-locaux, drones de surveillance, irrigation automatisée LoRaWAN. Économies : -30% eau, -20% intrants. Plateformes : Teralytic, John Deere Operations Center.
Compteurs intelligents Linky (France), parking intelligent, éclairage adaptatif, gestion des déchets (SmartBin), surveillance qualité de l'air, trafic adaptatif. Réseaux LoRaWAN municipaux (Sigfox).
Télématique (OBD-II + 4G), diagnostics à distance, ADAS, V2X (Vehicle-to-Everything) : communication entre véhicules et infrastructure. DSRC (802.11p) et C-V2X (5G). Base des véhicules autonomes.