Forum

Notifications
Retirer tout

Faut-il encore coder ses propres filtres (Kalman, LPF…) ou les libs font le job ?

3 Posts
3 Utilisateurs
0 Reactions
12 Vu
(@etienne-martin)
Posts: 1
New Member
Début du sujet
 

Salut à tous,

Je suis sur un projet de petit robot mobile autonome pour la détection d’obstacles, avec capteurs IMU + LIDAR, et je me pose une question que vous avez sûrement rencontrée aussi :

Est-ce que ça vaut encore le coup de coder soi-même les filtres de fusion capteurs (Kalman, low-pass, moving average, complementary…) ou bien les librairies open source du type FilterLib, TinyEKF, ou même ce qu’il y a dans ROS font largement l’affaire ?

J’ai fait un Kalman maison pour m’entraîner, mais je me demande si c’est pas une perte de temps face à des libs éprouvées. Par contre j’aime bien comprendre ce que je mets dans mon système, surtout côté stabilité du contrôle.

Vos retours d’expérience m’intéressent, surtout si vous bossez sur des systèmes embarqués critiques ou contraints en ressources (genre STM32 ou ESP32).

Merci !

 
Posté : 02/05/2025 11:14 am
Tanguy Poisson
(@tanguy-poisson)
Posts: 8
Membre Moderator
 

Bonne question !

En pro, on utilise rarement un filtre codé maison en prod. On part d’une lib validée, quitte à l’adapter. En embarqué sur STM32, j’utilise souvent TinyEKF pour du Kalman léger.

➕ Avantages des libs : gain de temps, testées, documentées
➖ Risque : boîte noire si tu ne creuses pas leur fonctionnement

Pour de la fusion IMU + GPS par exemple, j’utilise aussi RTIMULib — super stable et bien foutue.

Cela dit, coder un Kalman pour apprendre, c’est toujours bon. Tu comprends mieux les hypothèses derrière (modèle linéaire, covariance, bruit…).

 
Posté : 02/05/2025 11:19 am
(@89nanirustyload-com)
Posts: 2
New Member
 

Moi j’ai galéré à comprendre pourquoi mon IMU donnait des valeurs qui “tanguaient” en stationnaire. C’était juste un filtre moving average trop lent par rapport à mon sampling rate.

Depuis, je fais mes propres LPF (genre butterworth 1er ordre) avec coeffs recalculés à la main. C’est un bon compromis entre contrôle et simplicité.

PS : Super tuto ici pour les filtres passe-bas en C :
Simple Low-Pass Filter in C

 
Posté : 02/05/2025 11:27 am
Share: