Suivi IoT intelligent de tourets
Solution IoT pour le suivi de la quantité de câble restante sur tourets, utilisant IMU, réseaux LPWAN et filtrage de Kalman.
Comprendre le contexte
Un client disposait de tourets pour stocker du câble électrique pour des chantiers de BTP. Sa problématique était que dès qu'un touret est entamé, il devient difficile de savoir si l'on est à 80 %, 50 % ou 20 % du câble restant. L'objectif n'est pas de mesurer la longueur au centimètre près, mais d'offrir une vision d'ensemble : une estimation globale de la quantité totale de câble disponible sur l'ensemble du chantier, et pas seulement sur un touret isolé. Cela permet d'anticiper les besoins, d'éviter les ruptures et d'optimiser la logistique, même si la mesure reste approximative.
Principe de la mesure par capteurs IoT
La solution repose sur une idée simple : mesurer le nombre de tours effectués par le touret. En effet, si l’on connaît a priori les paramètres géométriques du touret –
- Diamètre intérieur (noyau),
- Diamètre extérieur (plein),
- Section (diamètre) du câble enroulé –
- Largeur du touret
alors on peut reconstruire mathématiquement la longueur totale de câble et, à chaque rotation, déduire la longueur restante.
En voici un petit exemple à titre informatif:Démonstration interactive : Calcul de longueur de câble
Démonstration interactive du calcul de longueur de câble restante sur un touret en fonction du nombre de tours déroulés.
Expérience optimale sur ordinateur
Cette démonstration interactive est conçue pour être
utilisée sur un écran d'ordinateur avec une souris ou
un trackpad.
Les interactions tactiles peuvent ne pas fonctionner correctement sur cette démonstration.
Chaque touret reçoit un petit module IoT comprenant :
- Un accéléromètre 3 axes pour détecter les rotations
- Un microcontrôleur basse consommation pour le traitement local
- Un émetteur LPWAN (Sigfox, LoRa...) pour la télétransmission des mesures
Fixé sur la tranche du touret, ce device envoie périodiquement ses relevés vers le cloud, où l'on stocke et visualise l'évolution de la quantité de câble estimée. Il compte simplement chaque rotation via les mesures d'accélération, puis transmet périodiquement – et de façon économe en énergie – son décompte sur un réseau LPWAN (Sigfox, LoRa, etc.).
Défis de la mesure et filtrage
Si le principe paraît simple en théorie, la mise en pratique révèle plusieurs défis techniques qui nécessitent des solutions de traitement du signal sophistiquées :
Rotation au sol
Bien qu'un touret tourne habituellement sur lui-même pour dérouler le câble, il arrivait que les techniciens le fassent rouler sur le sol lors de son déplacement. Dans ces conditions, la rotation détectée ne devait pas être interprétée comme un déroulement de câble. La détection de ces rotations au sol reposait sur un modèle d'IA embarqué, ce qui représentait le principal défi technique du projet, mais connexe au sujet du comptage de tours sur lequel je travaillais.
Offset centrifuge variable
Sur l'axe radial (X), l'expression acentrifuge = ω²r introduit un décalage proportionnel à la vitesse au carré. Quand ω augmente, cet offset grandissant peut masquer et déformer la détection fine des changements de θ (angle de rotation).
Fréquence d'échantillonnage
Si le capteur n'est pas relevé assez rapidement, certaines rotations rapides peuvent passer inaperçues. Il faut trouver le bon compromis entre précision de mesure et consommation énergétique, cruciale pour l'autonomie du dispositif IoT.
Ces défis justifient l'utilisation d'algorithmes de filtrage avancés comme le filtre de Kalman, qui permet de lisser les mesures tout en conservant la précision nécessaire au suivi global des stocks.
Une approche physique et un filtre de Kalman
Pour résoudre ce problème de manière robuste et peu coûteuse, j'ai choisi de mettre en œuvre un filtre de Kalman. Ce type d'algorithme permet d'estimer des grandeurs difficiles à mesurer directement (comme la vitesse ou la position angulaire du touret) en combinant des mesures bruitées (comme l'accélération) avec un modèle physique du mouvement. C'est une solution bien adaptée dans les contextes où les lois de la physique sont bien connues et où les capteurs sont simples.
📊 Détails mathématiques
Ici, le filtre part du principe qu'on connaît l'expression de l'accélération subie par le capteur fixé sur la tranche du touret. Cette accélération dépend principalement de deux effets : la gravité (qui varie avec l'orientation du capteur) et la force centrifuge (qui dépend de la vitesse de rotation).
L'expression du vecteur d'accélération dans le repère du capteur est la suivante :
Les paramètres sont :
- \(\theta\) est la position angulaire du capteur sur le touret,
- \(\omega\) est la vitesse de rotation,
- \(R\) est la distance entre le capteur et le centre du touret (elle peut être inférieure au rayon du touret),
- \(g\) est l'accélération due à la gravité.
Le filtre de Kalman utilise cette relation pour estimer en temps réel la vitesse et la position angulaire du touret à partir des mesures d'accélération. Cela permet de compter précisément les tours effectués, même lorsque les données sont bruitées ou que des perturbations (comme la force centrifuge) viennent altérer les mesures brutes.
Démonstration interactive : Filtre de Kalman pour suivi de rotation
Simulation interactive du filtrage de Kalman appliqué au suivi de rotation d'un touret avec capteurs inertiels. Vous pouvez faire tourner le touret avec votre souris.
Expérience optimale sur ordinateur
Cette démonstration interactive est conçue pour être
utilisée sur un écran d'ordinateur avec une souris ou
un trackpad.
Les interactions tactiles peuvent ne pas fonctionner correctement sur cette démonstration.
Un projet IoT similaire vous intéresse ?
Discutons de vos besoins en instrumentation IoT et monitoring industriel.