La serre qui envoie des messages : programmer un objet connecté et comprendre son réseau
Ta montre compte tes pas et les envoie à ton téléphone. La lumière du couloir s'allume quand tu passes. Le thermostat se règle depuis une appli. Tous ces objets font la même chose : ils mesurent, ils décident, ils agissent… et souvent ils communiquent. Dans ce cours, tu vas programmer une serre connectée, puis suivre le chemin de ses données jusqu'à ton téléphone.
1. Capteurs, unité de traitement, actionneurs
Un système automatisé est organisé en trois familles d'éléments :
- les capteurs acquièrent une information : humidité du sol, température, luminosité, mouvement (détecteur infrarouge), distance (ultrasons), bouton. Ils transforment une grandeur physique en signal électrique, soit logique (0 ou 1 : appuyé ou pas), soit analogique (une valeur qui varie, convertie en nombre) ;
- l'unité de traitement, un microcontrôleur (carte micro:bit, Arduino), exécute le programme et prend les décisions ;
- les actionneurs agissent sur le monde : pompe, moteur, servomoteur, ventilateur, LED, buzzer.
Un objet devient connecté quand il ajoute une fonction : communiquer, par radio, Bluetooth, Wi-Fi ou réseau mobile.
2. L'algorithme : écrire la décision
Un algorithme est une suite ordonnée d'instructions. Il combine quatre outils :
- la séquence : les instructions s'exécutent dans l'ordre ;
- la variable : une case mémoire nommée qui stocke une valeur (la température mesurée) ;
- la condition : SI… ALORS… SINON ;
- la boucle : répéter indéfiniment, un nombre de fois, ou TANT QUE une condition est vraie.
Exemple 1 : la serre connectée. Cahier des charges : arroser quand la terre est sèche, ventiler quand il fait trop chaud, envoyer les mesures toutes les 10 minutes.
RÉPÉTER INDÉFINIMENT
humidité ← lire le capteur d'humidité du sol (en %)
température ← lire le capteur de température (en °C)
SI humidité < 30 ALORS
allumer la pompe, attendre 5 s, éteindre la pompe
FIN SI
SI température > 28 ALORS
allumer le ventilateur
SINON
éteindre le ventilateur
FIN SI
envoyer humidité et température au serveur
attendre 10 minutes
FIN RÉPÉTER
Lis-le ligne à ligne : la pompe ne tourne que 5 secondes, car l'eau met du temps à s'infiltrer ; sans cette limite, la serre serait inondée avant que le capteur ne voie la différence. L'attente de 10 minutes économise la batterie. Et si la température vaut exactement 28 °C ? La condition « > 28 » est fausse : le ventilateur s'éteint. Les seuils (30 %, 28 °C) se règlent par essais.
Exemple 2 : une alarme à deux cartes. Une carte micro:bit fixée sur la porte détecte un mouvement avec son accéléromètre et envoie le message « intrus » par radio. Une seconde carte, dans ta chambre, attend l'événement « message reçu » et déclenche son buzzer. Les deux cartes doivent être réglées sur le même groupe radio, sinon elles ne s'entendent pas.
3. Le réseau : le voyage des données
Pour que tu lises les mesures de la serre sur ton téléphone, elles traversent un réseau informatique, c'est-à-dire des machines reliées qui échangent des données.
- Dans la maison, la serre, l'ordinateur et la console forment un réseau local. Ils sont reliés par câble Ethernet, par fibre optique ou par ondes Wi-Fi.
- Le commutateur (switch) relie les machines d'un même réseau local et distribue chaque message à la bonne.
- Le routeur relie des réseaux différents, par exemple ton réseau local et Internet, et choisit le chemin. Ta box contient à la fois un routeur, un commutateur et un point d'accès Wi-Fi.
- Chaque machine a une adresse IP (par exemple 192.168.1.23) qui la repère sur le réseau, comme une adresse postale, et une adresse MAC gravée dans sa carte réseau.
- Les mesures sont stockées sur un serveur (un ordinateur qui rend un service). Ton appli, le client, lui envoie une requête et reçoit la réponse.
Exemple 3 : le trajet complet. Capteur → microcontrôleur de la serre → Wi-Fi → box (routeur) → Internet, de routeur en routeur → serveur qui enregistre → requête de ton appli → réponse jusqu'au téléphone. Les données sont découpées en paquets qui peuvent prendre des chemins différents et sont remis dans l'ordre à l'arrivée.
À retenir
- Un système automatisé : les capteurs acquièrent, le microcontrôleur traite, les actionneurs agissent ; un objet connecté communique en plus.
- Un algorithme combine séquence, variables, conditions (SI… ALORS… SINON) et boucles ; les seuils se règlent par essais.
- Un réseau relie des machines : le commutateur dans le réseau local, le routeur entre réseaux.
- Chaque machine est repérée par une adresse IP ; le client interroge, le serveur répond ; les données voyagent en paquets.
★ Pour aller plus loin
L'un des premiers objets connectés de l'histoire est un distributeur de sodas de l'université Carnegie Mellon, aux États-Unis : en 1982, des étudiants l'ont relié au réseau pour savoir à distance s'il restait des canettes fraîches, sans traverser le campus pour rien.
Les adresses IPv4 (quatre nombres de 0 à 255) n'offrent qu'environ 4,3 milliards de combinaisons, bien trop peu pour tous les objets connectés. La nouvelle version, IPv6, en offre un nombre si grand qu'on pourrait donner des milliards d'adresses à chaque grain de sable de la Terre.
Les ingénieurs évitent qu'un ventilateur s'allume et s'éteigne sans arrêt autour de 28 °C grâce à l'hystérésis : on l'allume au-dessus de 28 °C mais on ne l'éteint qu'en dessous de 25 °C. Ton chauffage fonctionne ainsi.
Sources pour creuser
- Livre : Jason R. Briggs, Python pour les kids (Eyrolles), pour passer des blocs au vrai code.
- Livre : Erik Bartmann, Le Grand Livre d'Arduino (Eyrolles), pour les plus motivés.
- YouTube : chaîne Micode, cherche ses vidéos sur le fonctionnement d'Internet ; chaîne Underscore_ pour l'actualité de l'informatique.
- En ligne : makecode.microbit.org (simulateur gratuit de carte micro:bit, sans matériel) et vittascience.com.
- Lumni (lumni.fr) : cherche « réseau informatique » et « objets connectés ».