IoT et IA

Détection d'anomalies IoT : méthodes, architecture et emplacement des détecteurs

Un guide pratique pour détecter les anomalies dans les flux de capteurs : quelles méthodes conviennent à quels signaux, faut-il les exécuter sur l'équipement, en edge ou dans le cloud, et comment MQTT relie détecteurs et alertes.

Schéma d'architecture de détection d'anomalies IoT avec capteurs, broker MQTT, détecteurs edge et cloud et un topic d'alertes
Essayez-le sur votre propre broker MQTTObtenez un broker MQTT privé et managé avec l’offre Free et partez d’exemples de code prêts à l’emploi.
Essayer gratuitement Exemples de code Aucune carte bancaire requise

La détection d'anomalies IoT consiste à repérer automatiquement les mesures de capteurs ou les motifs qui ne correspondent pas au comportement normal, suffisamment tôt pour agir. Ce guide compare les principales familles de détecteurs, indique où chacune doit s'exécuter par rapport à votre broker MQTT et vous propose une architecture de référence pour publier des événements d'anomalie dignes de confiance pour les tableaux de bord et les équipes.

Ce qui constitue une anomalie dans les données IoT

Toutes les anomalies ne se ressemblent pas, et le type qui vous intéresse détermine la méthode.

  • Anomalies ponctuelles. Une mesure isolée très éloignée de la plage normale : une température de 140 degrés sur un capteur qui ne dépasse jamais 80.
  • Anomalies contextuelles. Une valeur normale dans un contexte et anormale dans un autre : 30 degrés, c'est normal à midi en été, mais suspect à 3 h du matin dans une chambre froide.
  • Anomalies collectives. Un motif dans le temps : des vibrations qui restent dans les limites à chaque échantillon, mais dont le spectre glisse lentement vers une fréquence de défaut de roulement.
  • Anomalies multivariées. Chaque signal est normal pris isolément, mais leur combinaison ne l'est pas : un courant moteur élevé avec un faible débit évoque une pompe obstruée.

Il existe aussi une catégorie qui ne concerne pas du tout le procédé : les anomalies de qualité des données, comme un capteur figé, une valeur bloquée, un changement d'unité soudain ou des horodatages qui arrivent dans le désordre. En pratique, elles figurent parmi les alertes les plus fréquentes, et les détecter en premier évite que vos détecteurs de procédé ne déclenchent de fausses alarmes.

Les familles de méthodes de détection d'anomalies IoT

Famille Exemples Adaptée pour Données d'entraînement nécessaires Fonctionne sur microcontrôleur
Règles et seuils Limites fixes, limites de vitesse de variation Modes de défaillance connus, limites de sécurité Non Oui
Statistique Z-score, IQR, EWMA, fenêtres glissantes Signaux uniques avec référence stable Un court historique Oui
Machine learning classique Isolation Forest, One-Class SVM, Local Outlier Factor Caractéristiques tabulaires multivariées Données normales, non étiquetées Parfois
Deep learning Autoencodeurs, prédicteurs LSTM ou CNN 1D Formes d'onde, spectres, motifs temporels complexes Grand jeu de données normales Petits modèles uniquement
Résidu de prévision Modèles saisonniers, prévisions par gradient boosting Signaux saisonniers comme la charge énergétique Historique couvrant les saisons Rarement

Détecteurs statistiques

Commencez ici. Une moyenne et un écart-type glissants, ou une médiane et un écart interquartile, détectent une part étonnante des vrais problèmes avec un effort d'ingénierie quasi nul. L'EWMA (moyenne mobile à pondération exponentielle) s'adapte aux dérives lentes sans stocker de fenêtre. Ces méthodes sont explicables, peu coûteuses et faciles à régler. Les détails et le code se trouvent dans la détection de valeurs aberrantes dans les données de capteurs avec Z-score, IQR et EWMA.

Détecteurs de machine learning

Quand les anomalies se cachent dans la relation entre les signaux, entraînez un modèle non supervisé sur le fonctionnement normal. Isolation Forest est un choix par défaut pragmatique : rapide à entraîner, robuste aux variables non pertinentes et sans besoin de labels. Vous construisez des caractéristiques par fenêtre (moyenne, RMS, crête, pente par signal) et le modèle évalue à quel point chaque fenêtre est isolée. Un guide complet est disponible dans Isolation Forest pour les données de capteurs.

Détecteurs de deep learning

Pour les formes d'onde brutes comme les vibrations et le son, les autoencodeurs apprennent à reconstruire les motifs normaux ; une erreur de reconstruction élevée signale quelque chose de nouveau. Ils exigent plus de données et de calcul et sont plus difficiles à expliquer : utilisez-les lorsque des caractéristiques plus simples échouent réellement. Le son des machines en est un bon exemple, traité dans la détection d'anomalies audio pour les machines.

Où placer les détecteurs par rapport au broker

MQTT offre une séparation nette : les équipements publient des données, les détecteurs s'abonnent et republient leurs résultats sous forme de nouveaux messages. Le broker MQTT se trouve au milieu et n'a pas besoin de savoir ce que fait chaque détecteur. Trois emplacements sont donc possibles.

Sur l'équipement

Exécutez les seuils, les contrôles de vitesse de variation et de très petits modèles directement sur le nœud capteur. Avantages : réaction immédiate, aucune dépendance à la connectivité, et la possibilité de n'envoyer que des synthèses et des événements d'anomalie au lieu de données brutes à haute fréquence. Limites : petits modèles, mises à jour plus difficiles et aucun contexte inter-équipements.

Sur la passerelle edge

Une passerelle ou un PC industriel s'abonne aux machines locales, exécute des modèles plus lourds comme Isolation Forest ou des autoencodeurs, et publie des scores. C'est l'emplacement idéal pour la détection multivariée au sein d'une machine ou d'une ligne, et il garde les données à haute fréquence sur site.

Dans le cloud

Un service cloud s'abonne à de nombreux sites à la fois. Il peut comparer des machines similaires d'une usine à l'autre, exécuter des modèles coûteux et combiner les données de procédé avec le contexte métier. La latence est plus élevée et il dépend de la liaison montante : ce n'est donc pas le bon endroit pour tout ce qui touche à la sécurité.

La plupart des systèmes réels combinent les trois : limites sur l'équipement, ML en edge, comparaisons de parc dans le cloud, le tout communiquant via des topics.

Une architecture de topics de référence

connectmq/site1/area2/line1/pump3/telemetry      raw or aggregated readings
connectmq/site1/area2/line1/pump3/anomaly        detector output per asset
connectmq/site1/alerts                           confirmed alerts for people
connectmq/site1/area2/line1/pump3/detector/status  retained: model, version, health

Un message de sortie de détecteur doit se suffire à lui-même :

{
  "ts": "2026-10-16T09:12:30Z",
  "asset": "pump3",
  "detector": "iforest-v3",
  "score": 0.71,
  "threshold": 0.62,
  "isAnomaly": true,
  "features": {"currentA": 18.4, "flowLpm": 41.0},
  "reason": "high current with low flow"
}

Inclure le seuil, la version du détecteur et les principales variables contributrices transforme un voyant rouge opaque en une information qu'un technicien peut vérifier.

Une boucle de détection minimale

Le cœur de tout détecteur en streaming tient en quelques lignes. Ce calcul de z-score glissant est le schéma que le tutoriel complet détection d'anomalies en temps réel en Python développe en un service MQTT complet :

from collections import deque
import statistics

window = deque(maxlen=120)


def score(value, k=3.5):
    if len(window) < 30:
        window.append(value)
        return None
    mean = statistics.fmean(window)
    std = statistics.pstdev(window) or 1e-9
    z = (value - mean) / std
    if abs(z) < k:
        window.append(value)  # n'apprendre qu'à partir des valeurs normales
    return z

Remarquez le dernier détail : les valeurs anormales ne sont pas ajoutées à la référence, de sorte qu'un défaut prolongé ne devient pas peu à peu la nouvelle normalité.

Réduire les fausses alarmes

Les fausses alarmes tuent les projets de détection d'anomalies plus vite que les détections manquées, car les opérateurs cessent de regarder. Une liste de contrôle utile :

  1. Filtrer d'abord la qualité des données. Signalez les valeurs bloquées, manquantes et hors plage séparément des anomalies de procédé.
  2. Utiliser le contexte. Ignorez les mesures pendant les démarrages, nettoyages et changements de série, que vous pouvez détecter grâce à un topic d'état.
  3. Exiger la persistance. Ne déclenchez une alerte qu'après N fenêtres anormales sur M, et non sur un seul échantillon.
  4. Ajouter une hystérésis. Levez l'alerte à un seuil inférieur à celui qui l'a déclenchée, pour éviter les oscillations.
  5. Séparer score et alerte. Publiez les scores bruts en continu et décidez du déclenchement des alertes dans une étape distincte que vous pouvez régler.
  6. Faire une revue hebdomadaire. Marquez chaque alerte comme utile ou comme bruit, et ajustez les seuils à partir de ce journal.
  7. Versionner les détecteurs. Indiquez la version du détecteur dans chaque message pour pouvoir comparer l'avant et l'après d'une modification.

Exploiter la couche de messagerie

Détecteurs, tableaux de bord, historians et outils d'alerte dépendent tous du même broker : sa fiabilité est donc essentielle. Pour les expérimentations, le serveur MQTT public gratuit que ConnectMQ exploite sur broker.connectmq.com suffit pour relier en quelques minutes un simulateur, un détecteur et un tableau de bord. Pour les vraies données d'usine, il vous faut un broker MQTT cloud privé, sécurisé par TLS, avec des identifiants par équipement.

ConnectMQ, un broker MQTT managé, fournit exactement cette couche : MQTT 3.1.1 et 5.0 sur TLS et WebSocket sécurisé, une vue des équipements organisée par niveaux ISA-95, un explorateur de topics en direct pour suivre les scores en temps réel, et des règles d'alerte à seuil avec journal des alertes pour les limites numériques simples. Les modèles de détection eux-mêmes s'exécutent dans vos services, ce qui vous laisse libre d'utiliser n'importe quelle bibliothèque.

Pour voir comment la détection d'anomalies s'articule avec la prévision, la vision par ordinateur et les assistants LLM, lisez le guide IA et IoT.

Construisez votre pipeline d'anomalies sur ConnectMQ

Créez un broker avec l'offre gratuite Serverless sur app.connectmq.com, sans carte bancaire, publiez des mesures simulées et exécutez un détecteur qui republie ses scores. En quelques minutes, vous verrez les valeurs brutes et les événements d'anomalie côte à côte dans l'explorateur de topics.

Questions fréquentes

Par quelle méthode de détection d'anomalies commencer ?

Commencez par des seuils et un z-score glissant ou une EWMA sur chaque signal important. Ne passez à Isolation Forest ou aux autoencodeurs que si vous avez la preuve que ce sont les relations entre signaux ou la forme des ondes qui portent les anomalies.

Ai-je besoin de données de défaillance étiquetées ?

Non. La plupart des détections d'anomalies IoT sont non supervisées : les modèles apprennent le comportement normal et signalent les écarts. Les labels deviennent précieux plus tard pour évaluer et régler les alertes.

La détection d'anomalies doit-elle s'exécuter en edge ou dans le cloud ?

Exécutez les contrôles rapides et liés à la sécurité sur l'équipement ou en edge, et les comparaisons à l'échelle du parc dans le cloud. MQTT vous permet de déplacer un détecteur d'un emplacement à l'autre sans modifier les équipements.

Comment publier les résultats d'anomalies ?

Publiez un message JSON par actif sur un topic d'anomalies dédié, incluant le score, le seuil, la version du détecteur et les variables contributrices. Réservez un topic séparé aux alertes confirmées destinées aux équipes.

Articles liés

Tous les articles →

Votre broker MQTT privé, à quelques clics

Créez un compte, récupérez les identifiants de votre broker et connectez votre premier appareil — aucun serveur à installer, mettre à jour ou dimensionner.