L'agriculture intelligente IoT consiste à installer des capteurs et des actionneurs dans les champs, les serres et les bâtiments d'élevage afin que les décisions concernant l'eau, le climat et les animaux reposent sur des mesures plutôt que sur des suppositions. Ce guide explique quels capteurs valent la peine d'être déployés, comment connecter des sites sans Wi-Fi ni secteur, comment concevoir une structure de topics MQTT unique pour toute l'exploitation et comment garder le système fiable pendant toute une saison de culture.
Ce que mesure réellement l'agriculture intelligente IoT
Les exploitations sont variées, mais les mesures utiles se répartissent en quelques groupes. Commencez par celui qui répond à votre question la plus coûteuse, généralement l'eau, et ajoutez les autres une fois que le chemin des données fonctionne.
| Domaine | Capteurs typiques | Décisions éclairées |
|---|---|---|
| Sol | Humidité capacitive ou TDR, température du sol, CE (salinité) | Quand et combien de temps irriguer, calendrier de fertilisation |
| Météo | Température de l'air, humidité, pluviomètre, vent, rayonnement solaire, humectation foliaire | Alertes de gel, fenêtres de traitement, estimation de l'évapotranspiration |
| Irrigation | Débitmètres, capteurs de pression, position des vannes, courant des pompes | Détection de fuites, confirmation que l'eau a bien été délivrée |
| Cultures sous abri | Climat de la serre, CO2, lumière | Aération, chauffage, brumisation, ombrage |
| Élevage | Niveau des abreuvoirs, climat du bâtiment, colliers GPS, niveau des silos d'aliments | Bien-être animal, alertes de vol et de fuite, planification du remplissage |
| Stockage | Température et humidité des silos à grains, température des chambres froides | Prévention des pertes |
Une erreur courante consiste à acheter un gros kit de capteurs avant d'avoir décidé quelle action chaque mesure déclenchera. Une valeur d'humidité du sol sur laquelle personne n'agit n'est qu'un graphique. Notez d'abord la décision, puis la mesure et l'intervalle d'échantillonnage dont elle a besoin.
L'emplacement compte autant que le capteur lui-même. Une seule sonde de sol par parcelle n'apprend pas grand-chose si la parcelle comporte des zones sableuses et argileuses ; une sonde par zone d'irrigation, placée à un endroit représentatif à la profondeur des racines, est une meilleure règle de départ. Les stations météo ont besoin d'un terrain dégagé, loin des bâtiments et des arbres, et les capteurs des bâtiments d'élevage doivent être placés à hauteur des animaux plutôt que près du toit.
Connectivité sans Wi-Fi
Les champs sont rarement couverts par le Wi-Fi, et y tirer des câbles est peu pratique. Le choix de la radio détermine l'autonomie, le coût et les payloads que vous pouvez envoyer.
| Option | Portée | Consommation | Idéal pour |
|---|---|---|---|
| Wi-Fi | Quelques dizaines de mètres | Élevée | Serres, bâtiments d'élevage, abords des bâtiments |
| LoRaWAN | Plusieurs kilomètres en terrain dégagé | Très faible | Capteurs de plein champ envoyant de petites mesures toutes les quelques minutes |
| NB-IoT / LTE-M | Partout où l'opérateur a une couverture | Faible à modérée | Sites isolés sans passerelle, équipements mobiles |
| Routeur cellulaire (4G) | Couverture de l'opérateur | Élevée (secteur ou grand panneau solaire) | Stations de pompage, passerelles, caméras |
Pour la plupart des exploitations, le schéma qui fonctionne est un mélange : Wi-Fi ou Ethernet dans les bâtiments, LoRaWAN pour les capteurs de plein champ sur batterie, et un routeur cellulaire au niveau de la passerelle si l'exploitation n'a pas d'internet fixe. Les payloads LoRaWAN sont minuscules (quelques dizaines d'octets) : les appareils envoient donc des données binaires compactes qu'un serveur de réseau décode en JSON.
Un seul broker pour toute l'exploitation
Quelle que soit la radio, les données doivent aboutir à un endroit unique où chaque outil peut les utiliser. MQTT remplit bien ce rôle : les appareils ou les passerelles publient, et les tableaux de bord, les contrôleurs d'irrigation, les alertes et le stockage s'abonnent indépendamment. Ajouter un nouveau consommateur ne nécessite jamais de toucher à un capteur.
Field sensors --LoRaWAN--> Gateway --> TTN / ChirpStack --+
Greenhouse ESP32 --Wi-Fi/TLS---------------------------+ |
Pump controller --4G router---------------------------+| |
vvv v
MQTT broker (cloud)
| | |
Node-RED logic Dashboard Python logger
Les serveurs de réseau LoRaWAN exposent leurs propres interfaces MQTT. Un petit pont s'y abonne et republie les mesures décodées dans l'arborescence de topics de votre exploitation, comme le montrent les tutoriels The Things Network MQTT et ChirpStack. Les appareils Wi-Fi, comme un ESP32 dans une serre, publient directement vers le broker.
Exploiter soi-même ce broker sur un PC de la ferme signifie qu'il s'arrête en même temps que le courant, et l'accès à distance exige une redirection de port. Un broker MQTT cloud est joignable depuis chaque parcelle, chaque téléphone et chaque prestataire sans ouvrir le réseau de l'exploitation.
Concevoir les topics d'une exploitation
Une hiérarchie cohérente rend les wildcards utiles et garde le système compréhensible des années plus tard. Un schéma qui fonctionne :
<farm>/<site>/<zone>/<device>/<kind>
greenfield/north/field3/soil-07/telemetry
greenfield/north/field3/soil-07/status
greenfield/north/field3/valve-02/set
greenfield/north/field3/valve-02/state
greenfield/barn/climate/th-01/telemetry
greenfield/barn/trough-2/level-01/telemetry
Avec cette structure, greenfield/north/+/+/telemetry vous donne tous les capteurs du site nord, et greenfield/+/+/+/status l'état en ligne de chaque appareil. Gardez les payloads en JSON, avec les unités dans les noms de champs ou un schéma fixe :
{
"ts": "2026-10-16T06:15:00Z",
"moisture_pct": 31.5,
"soil_temp_c": 14.2,
"battery_v": 3.71,
"rssi": -112
}
Inclure la tension de la batterie et la puissance du signal radio dans chaque message coûte quelques octets et économise des heures de déplacements sur le terrain, car vous voyez un capteur défaillant avant qu'il ne cesse d'émettre. Publiez un message status retained avec un last will offline depuis chaque appareil connecté, afin que les tableaux de bord sachent immédiatement lesquels ont disparu.
Si vous raisonnez en termes d'entreprise, de site, de zone et d'équipement, c'est la même idée qu'une hiérarchie ISA-95, et la vue des appareils de ConnectMQ regroupe automatiquement les topics selon ces niveaux.
Un agrégateur minimal en Python
Une fois les données en circulation, le premier consommateur utile est souvent un simple abonné qui signale les capteurs silencieux ou hors plage. Cet exemple utilise le serveur MQTT public gratuit avec un préfixe unique pour que vous puissiez l'essayer immédiatement ; il est réservé aux tests et aux données factices.
import json
import time
import paho.mqtt.client as mqtt
BROKER = "broker.connectmq.com"
PREFIX = "connectmq/demo/f7q2m1/farm"
STALE_AFTER_S = 3 * 3600
last_seen = {}
def on_connect(client, userdata, flags, reason_code, properties):
print("connected:", reason_code)
client.subscribe(f"{PREFIX}/+/+/+/telemetry", qos=1)
def on_message(client, userdata, msg):
device = "/".join(msg.topic.split("/")[4:7])
last_seen[device] = time.time()
try:
data = json.loads(msg.payload)
except ValueError:
print("bad payload from", device)
return
if data.get("battery_v", 4.0) < 3.4:
print(f"LOW BATTERY {device}: {data['battery_v']} V")
if data.get("moisture_pct", 50) < 20:
print(f"DRY SOIL {device}: {data['moisture_pct']} %")
client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2, client_id="farm-agg-f7q2m1")
client.on_connect = on_connect
client.on_message = on_message
client.connect(BROKER, 1883, keepalive=60)
client.loop_start()
while True:
now = time.time()
for device, ts in list(last_seen.items()):
if now - ts > STALE_AFTER_S:
print(f"STALE {device}: no data for {int((now - ts) / 60)} min")
time.sleep(300)
Publiez une mesure de test avec mosquitto_pub -h broker.connectmq.com -p 1883 -i t-f7q2m1 -t 'connectmq/demo/f7q2m1/farm/north/field3/soil-07/telemetry' -m '{"moisture_pct":18,"battery_v":3.3}' et les deux avertissements s'affichent.
Alimentation et boîtiers
Le matériel de terrain vit sous la pluie, dans la poussière, la chaleur et le gel. Voici des enseignements pratiques valables pour presque tous les déploiements :
- Budgétez d'abord l'énergie. Un capteur qui dort entre deux mesures et transmet en LoRaWAN peut fonctionner longtemps sur batterie ; un appareil Wi-Fi qui reste connecté, non. De petits panneaux solaires avec un régulateur de charge conviennent aux passerelles et aux contrôleurs.
- Utilisez des boîtiers certifiés et des presse-étoupes. La condensation à l'intérieur d'un boîtier tue plus d'électronique que la pluie à l'extérieur. Ajoutez un aérateur respirant et un dessiccant.
- Montez au-dessus de la hauteur des cultures et à l'écart des passages d'engins. Tracteurs et faucheuses représentent un réel danger pour les câbles et les piquets.
- Étiquetez chaque appareil avec son identifiant et son topic, afin que quiconque le trouve sur le terrain sache de quoi il s'agit.
- Prévoyez l'intersaison. Récupérez ou hivernez les capteurs inutiles, et notez les valeurs d'étalonnage avant de les retirer.
Sécurité et propriété des données
Les données agricoles révèlent les rendements, les pratiques et les moments où personne n'est sur place. Chiffrez avec TLS chaque connexion qui quitte l'exploitation, utilisez des identifiants distincts pour chaque passerelle ou contrôleur, et ne publiez jamais de données réelles dans un espace public de test. Les actionneurs méritent la plus grande attention : quiconque peut publier sur le topic set d'une vanne peut l'ouvrir. Le guide des bonnes pratiques de sécurité MQTT couvre l'essentiel, et un broker MQTT managé prend en charge les certificats TLS, l'authentification et les mises à jour du broker.
Par où commencer
Commencez petit : un capteur de sol, une mesure météo, un broker et un tableau de bord. Le montage capteur d'humidité du sol MQTT est un bon premier appareil, et une fois les mesures fiables, le tutoriel système d'arrosage automatique boucle la boucle en pilotant les vannes. Pour des schémas plus larges couvrant maisons, bâtiments et exploitations, le guide de l'automatisation IoT relie l'ensemble.
Construisez le réseau de votre exploitation sur ConnectMQ
ConnectMQ offre à votre exploitation un broker MQTT managé et privé avec TLS, des identifiants générés, un explorateur de topics en direct, un tableau de bord et des règles d'alerte à seuil pour les valeurs critiques comme le gel ou un sol sec. Créez un broker Serverless gratuit sur app.connectmq.com, sans carte bancaire, et connectez dès aujourd'hui votre premier capteur de terrain.
Questions fréquentes
LoRaWAN ou Wi-Fi : lequel est le meilleur pour l'agriculture intelligente IoT ?
LoRaWAN pour les capteurs sur batterie répartis dans les champs, Wi-Fi pour les appareils situés dans les bâtiments ou à proximité. De nombreuses exploitations utilisent les deux, réunis au niveau du broker MQTT.
À quelle fréquence les capteurs agricoles doivent-ils émettre ?
L'humidité du sol évolue lentement : toutes les 15 à 60 minutes suffit généralement. Le gel et le climat des serres justifient des mises à jour plus rapides, toutes les une à cinq minutes.
Ai-je besoin d'un serveur sur l'exploitation ?
Pas nécessairement. Passerelles et contrôleurs peuvent publier directement vers un broker cloud via le réseau cellulaire ou un internet fixe, et la logique peut tourner dans Node-RED ou en Python là où c'est le plus pratique.
MQTT fonctionne-t-il sur des connexions rurales peu fiables ?
Oui. MQTT est léger, prend en charge les sessions persistantes et la relivraison en QoS 1, et les clients se reconnectent automatiquement, ce qui convient aux liaisons cellulaires intermittentes.



