V embedded robotike, dronoch a pokročilom priemyselnom monitorovaní je spoliehanie sa na jediný senzor na určenie stavu systému zo svojej podstaty riskantné. Každý fyzický senzor má štrukturálne nedostatky:
- Akcelerometre sú výborné na meranie gravitácie a okamžitého sklonu, no sú notoricky náchylné na vysokofrekvenčný vibračný šum (napr. od točiaceho sa motora).
- Gyroskopy sú imúnne voči lineárnym vibráciám a poskytujú výborné krátkodobé rotačné dáta, ale časom trpia „driftom“ — stacionárny gyroskop bude pomaly hlásiť, že sa otáča.
- Magnetometre (kompasy) poskytujú absolútny smer voči magnetickému severu Zeme, ale ľahko ich zmätú blízke feromagnetické kovy alebo elektromagnetické rušenie (EMI) z elektrických vedení.
Fúzia senzorov je matematická disciplína, ktorá berie tieto rôznorodé, chybné dátové toky a kombinuje ich do stabilného, vysoko presného výsledku — najčastejšie orientácie alebo pozície zariadenia.
Ako fúzia senzorov funguje
Fúzia senzorov nie je jednoduché priemerovanie hodnôt. Vyžaduje pokročilé matematické modelovanie, najčastejšie implementované pomocou Kalmanovho filtra alebo Mahony/Madgwick filtra.
Tieto algoritmy bežia nepretržite v spätnej väzbe:
- Predikcia: Algoritmus použije rýchle dáta z gyroskopu na predpoveď novej orientácie zariadenia.
- Aktualizácia (korekcia): Algoritmus použije pomalšie, no dlhodobo stabilné dáta z akcelerometra (vektor gravitácie) a magnetometra (magnetický sever) na opravu predikcie gyroskopu — matematicky odstraňuje naakumulovaný drift.
Optimálnym kombinovaním týchto vstupov na základe ich známych štatistických profilov šumu vznikne výstup (často vyjadrený ako kvaternión — Quaternion), ktorý zároveň veľmi rýchlo reaguje na prudké pohyby a je úplne stabilný počas dlhých období.
Fúzia senzorov v modernom hardvéri
Historicky si algoritmy fúzie senzorov vyžadovali zložitú matematiku s pohyblivou desatinnou čiarkou na výkonnom hlavnom procesore. Dnes sú k dispozícii IMU (Inertial Measurement Units) ako „inteligentné senzory“ (smart sensors).
Zariadenia ako BNO085, systém v puzdre (SiP) vyvinutý spoločne firmami Bosch a Ceva, spájajú MEMS akcelerometer, gyroskop a magnetometer s dedikovaným nízkoenergetickým jadrom Cortex-M0+ v jednom puzdre. Interné jadro vykonáva proprietárne algoritmy fúzie senzorov a priamo cez I2C/SPI poskytuje na výstupe hotové kvaternióny alebo Eulerove uhly. Tým výrazne odbremení hostiteľský MCU a šetrí kritickú výdrž batérie aj cykly CPU pre aplikačnú logiku vyššej úrovne.