Sensor fusion - aplikacje i realizacje

| Technika

Do niedawna to głównie producenci elektroniki noszonej konkurowali między sobą, wymyślając nowe zastosowania dla swoich produktów. Dzięki temu poza "zwykłymi" krokomierzami wielu z nich ma w swojej ofercie na przykład naszpikowane elektroniką opaski, okulary, zegarki i soczewki kontaktowe, których funkcjonalność znacznie wykracza poza standard. W ich ślady idą teraz producenci sprzętów sportowych. Dzięki ich pomysłowości służą one nie tylko do gry, ale stają się źródłem informacji o jej przebiegu i umiejętnościach zawodnika.

Sensor fusion - aplikacje i realizacje

Niektóre sprzęty dopiero wejdą do sprzedaży, ale wiele jest już dostępnych na rynku. Mają one przeważnie formę przystawek, które są montowane w zwykłych przyrządach do różnych gier. Można też kupić sprzęty, które zintegrowano z układami elektronicznymi.

Podobnie jak w przypadku elektroniki noszonej mierzącej parametry życiowe i sprawnościowe ludzi, na przykład wysycenie tlenem krwi, liczbę spalonych kalorii, wykonanych kroków, puls, reakcję skórno-galwaniczną podczas pocenia się, przyrządy sportowe dostarczają zawodnikom informacji, w oparciu o które mogą oni ocenić swoje umiejętności w danej dyscyplinie. Mierzone parametry to na przykład liczba trafień i prędkość wybicia piłki.

Piłka i rakieta, które analizują uderzenia

Fot. 1. miCoach Smart Ball

Przykładem jest miCoach Smart Ball. Jest to piłka do gry w piłkę nożną oferowana od 2014 przez firmę Adidas. Wielkością, wagą i odczuciami w kontakcie odpowiada ona zwyczajnej piłce w rozmiarze 5, wbudowano w nią jednak czujnik combo z trzyosiowym akcelerometrem oraz trzyosiowym żyroskopem.

Sensor ten zbiera dane o jej szybkości, obrotach, biegu i torze lotu. Następnie przez Bluetooth 4.0 są one przesyłane do urządzenia przenośnego. Zainstalowana na nim specjalna aplikacja interpretuje je i wyświetla podsumowanie o sile kopnięcia, podkręceniu, biegu oraz torze lotu piłki. Informacje te uzupełniają porady w zakresie doskonalenia techniki gry.

Kolejny przykład to rakieta tenisowa Babolat Pure Drive Play, którą firma Babolat ma w ofercie od 2013 roku. W jej rączce wbudowano czujniki ruchu firmy InvenSense. Wyniki ich pomiarów są przesyłane przez Bluetooth do urządzenia przenośnego, na którym należy zainstalować aplikację. Na podstawie ich analizy rozpoznawany jest rodzaj zagrania (serwis, forhend, bekhend, smecz). Ponadto wykrywane jest miejsce na siatce rakiety, w które uderzyła piłka, mierzony jest czas aktywnej gry oraz prędkość piłki.

Sony z kolei od 2014 roku ma w swoim asortymencie Smart Tennis Sensor. Jest to przystawka mocowana do rakiety tenisowej, z wbudowanym trzyosiowym czujnikiem ruchu oraz sensorem wibracji. Podobnie jak rozwiązanie firmy Babolat, ta przystawka rozpoznaje typ zagrania, mierzy prędkość piłki i wykrywa miejsce na siatce rakiety, w które uderzyła piłka.

Wsparcie dla bokserów

W 2016 Athletec planuje wprowadzić na rynek zestaw bokserski Corner. Składa się on z dwóch niewielkich modułów. Należy je wsunąć pod bandaże, którymi zawodnicy owijają dłonie przed założeniem rękawic, by usztywnić ręce dla zabezpieczenia przed urazami. W moduły wbudowano sensor, trzyosiowy akcelerometr oraz mikroprocesor, który przetwarza wyniki pomiarów.

Przez Bluteooth moduły wysyłają wyniki analizy do urządzenia mobilnego z odpowiednią aplikacją. Rozpoznawane są typy ciosów, mierzone są prędkość oraz siła uderzeń. Wyznaczany jest też stosunek ciosów trafionych do tych chybionych i zliczane są ciosy zablokowane.

Swing Tracker to natomiast przystawka montowana na kiju do gry w baseball. Od 2014 roku ma ją w swojej ofercie firma Diamond Kinetics. Przystawkę wyposażono w trzyosiowy akcelerometr i trzyosiowy żyroskop. Mierzą one parametry ruchu kijem, m.in. prędkość, siłę zamachnięcia się, przebytą odległość oraz siłę uderzenia. Dane te są przesyłane do aplikacji na urządzeniu mobilnym przez Bluetooth.

Piłka, która zlicza trafienia do kosza

Fot. 2. Swing Tracker

Z kolei w 2016 roku firma Wilson Sporting Goods wprowadziła do sprzedaży piłkę do gry w koszykówkę, w którą wbudowano trzyosiowy akcelerometr. W oparciu o wyniki pomiarów z tego czujnika wyznaczana jest odległość rzutu i prędkość lotu piłki. Oprócz tego zliczane są trafienia do kosza i rzuty chybione. Wiadomo również, czy piłka została złapana, czy dotknęła podłoża. Piłka Wilson X Connected Basketball przesyła te dane do urządzeń mobilnych przez Bluetooth.

Sprzęty sportowe naszpikowane czujnikami są używane nie tylko jako pomoc w czasie treningu. Znajdują one też zastosowanie w analizie dotkliwości urazów doznawanych w czasie uprawiania sportu. Przykład to czepek, który od 2013 roku ma w swojej ofercie firma Reebok.

Wbudowano w niego akcelerometry MEMS. Czujniki te mierzą przyspieszenie, jakiego pod wpływem uderzenia doznaje głowa zawodnika. Na tej podstawie oceniana jest dotkliwość urazu. Czepek mogą nosić wszyscy uprawiający sporty, które wymagają ochrony głowy kaskiem, na przykład hokeiści oraz grający w baseballa.

Czym jest czujnik combo?

Śledzenie ruchów sportowców i przyrządów sportowych jest zadaniem bardziej złożonym niż zliczanie kroków, wymaga bowiem równoczesnego mierzenia wielu różnych wielkości. Na przykład, żeby ocenić sprawność wioślarza, powinno się jednocześnie monitorować ruch wszystkich jego kończyn i pleców w poszczególnych fazach ruchu wiosłami. Jeżeli z kolei analizowane ma być wybicie piłki przez gracza w baseball, trzeba mierzyć m.in. kąt obrotu pałki oraz jej prędkość.

By to zrealizować, powinno się spełnić dwa warunki. Pierwszym jest dostępność odpowiednich, a zarazem tanich, czujników. Na spełnienie tego w ostatnich latach wpłynęły dwie kwestie.

Pierwszą były stale malejące ceny sensorów MEMS, takich jak akcelerometry, żyroskopy, magnetometry i czujniki ciśnienia. Główną tego przyczyną była rosnąca popularność urządzeń mobilnych (smartfonów, tabletów), w których czujniki tego rodzaju są montowane coraz powszechniej.

Drugim czynnikiem sprzyjającym było wprowadzenie na rynek sensorów typu combo. W ich przypadku w jednej obudowie zintegrowanych jest wiele różnych typów czujników.

Sensor fusion

Fot. 3. Wilson X Connected Basketball

Sensory combo dostępne są w różnych konfiguracjach. Te, które zbudowane są z akcelerometrów, żyroskopów oraz magnetometrów, określa się mianem układów IMU (Inertial Measurement Unit).

Przykładowo czujnik combo 6 DOF (Degree of Freedom) stanowi zazwyczaj połączenie trzyosiowego akcelerometru z trzyosiowym kompasem, natomiast sensor combo 9 DOF zbudowany jest przeważnie z trzyosiowego kompasu, trzyosiowego akcelerometru i również trzyosiowego żyroskopu. Czujnik combo 10 DOF zawiera zaś wszystkie elementy sensora 9 DOF oraz dodatkowo czujnik ciśnienia.

Drugi warunek, który trzeba spełnić, żeby móc śledzić złożone ruchy sportowców oraz przyrządów sportowych, to poprawna interpretacja wyników pomiarów. Nie jest to proste, gdy równocześnie trzeba przetwarzać sygnały z wielu różnych czujników. W tym celu potrzebne są specjalne rozwiązania programowe i sprzętowe. Pierwsze realizuje się przez implementację techniki sensor fusion.

Polega ona na umiejętnej obróbce wyników uzyskanych z wielu sensorów w celu wyznaczenia wielkości, które nie są mierzone bezpośrednio przez żaden z nich. Ponieważ poszczególne typy czujników mają swoje ograniczenia, aby w technice sensor fusion uzyskać wiarygodne wyniki, trzeba je uwzględnić.

Jakie są ograniczenia akcelerometrów?

Akcelerometry MEMS są używane w pomiarach statycznego przyspieszenia grawitacyjnego pozwalającego wyznaczyć kąt odchylenia obiektu od pionu i w pomiarach przyspieszenia dynamicznego na skutek ruchu, uderzenia, wstrząsów oraz wibracji. Istnieją różne rodzaje tych czujników. Przykładem są akcelerometry pojemnościowe.

Ich główny element to masa bezwładna. Mocuje się ją na sprężystych belkach. Masa jest elektrodą w układzie kondensatora pomiarowego. Na skutek jej przemieszczania się zmianie ulega pojemność, a tym samym zmienia się napięcie wyjściowe, które jest dalej przetwarzane.

W wypadku akcelerometrów problemem może być uzyskanie informacji o orientacji obiektu w poziomie i w pionie. Jeśli jego oś x lub oś y pokrywa się z wektorem grawitacji, na podstawie pomiarów z akcelerometru można określić jego położenie. Jeżeli jednak osie są prostopadłe do wektora grawitacji, wskazania tego czujnika nie są użyteczne.

Ponadto tam, gdzie akcelerometr jest używany jako czujnik odchylenia od pionu, trzeba wyizolować sygnał będący skutkiem tylko wpływu grawitacji, który posłuży jako odniesienie. Sygnał ten można jednak wyodrębnić tylko wtedy, gdy akcelerometr jest nieruchomy, co jest w praktyce trudne.

By uzyskać informację o odchyleniu od pionu, można też użyć filtru dolnoprzepustowego. Zakłada się wtedy, że sygnał, który odpowiada przyspieszeniu dynamicznemu, ma dużą częstotliwość i można go odfiltrować. Trzeba jednak wówczas przyjąć, że także ruchy odchylające obiekt od pionu są wolne. W związku z tym szybkie zmiany orientacji również zostaną odfiltrowane. W efekcie informacja o kącie nachylenia będzie niedokładna.

Dryft wskazań żyroskopów

Rys. 4. Schemat blokowy układu MPU-9250

Żyroskopy dzieli się zasadniczo na dwie grupy: kierunkowe oraz prędkościowe. W technologii MEMS zwykle wykonuje się te drugie. Mierzą one prędkość kątową obiektu obracającego się wokół osi x (tzw. roll), y (pitch) albo z (yaw). Możliwe jest także wyznaczenie na tej podstawie, przez całkowanie, kąta obrotu. Zależnie od ustawienia, czujnik mierzący prędkość kątową dookoła jednej aktywnej osi może też mierzyć ruch wokół pozostałych dwóch.

Niestety pomiary kąta obrotu za pomocą żyroskopu są obarczone błędem, dryftem w czasie, którego przyczyną jest niedokładność całkowania. W praktyce oznacza to, że jeżeli obiekt powraca do pozycji wyjściowej, fakt ten nie znajduje odzwierciedlenia we wskazaniach żyroskopu. Wyjaśniamy to na przykładzie.

Załóżmy, że obiekt wykonał następującą sekwencję ruchów: najpierw obrócił się o 45° w lewo, potem o 40° w prawo i ponownie w tym kierunku o 5°. Można by zatem oczekiwać, że ostatecznie powrócił on do pozycji wyjściowej (0°).

W praktyce ze wskazań żyroskopu może jednak wynikać, że kolejne odchylenia obiektu wynosiły na przykład: 45,5°, 40,1° oraz 4,9°. Jak się więc okaże na koniec, obiekt w dalszym ciągu będzie obrócony o 0,5°. Jeśli taka sekwencja ruchów zostanie powtórzona wielokrotnie, błąd ten będzie narastał. Wskazania żyroskopu są wiarygodne tylko w krótkim czasie. W dłuższym ich dryft staje się już znaczący.

Sensor fusion w praktyce

Aby zminimalizować wpływ ograniczeń czujników obu rodzajów, implementuje się specjalne algorytmy do przetwarzania wyników pomiarów. Zazwyczaj łączą one dane uzyskane z tych sensorów w taki sposób, żeby wyniki pomiarów z żyroskopu wykorzystać do określenia zmian położenia obiektu w krótkich odstępach czasu, natomiast wyniki pomiarów z akcelerometru do korygowania tych wskazań w dłuższych przedziałach czasu. W tym celu zazwyczaj stosowany jest algorytm filtru Kalmana.

W uproszczeniu wyznacza on estymaty rzeczywistych wyników pomiarów oraz wartości wielkości obliczanych na ich podstawie przez przewidywanie danej wartości, szacowanie jej niepewności oraz obliczanie średniej ważonej wartości przewidywanej i tej zmierzonej. Większą wagę przypisuje się wielkości, która została wyznaczona z mniejszą niepewnością.

Ponieważ filtr Kalmana trudno wytłumaczyć bez odwoływania się do złożonych formuł matematycznych, następnie przedstawiamy algorytm łatwiejszy do zrozumienia i realizacji. Jest to filtr komplementarny. Opisuje go następujący wzór:

Θt+1=k(Θt+ωΔt)+(1-k)Φ

Czym jest sensor hub?

Rys. 5. Schemat blokowy modułów z serii MTi-1

Formułę tę można opisać słowami, wyjaśniając w ten sposób znaczenie jej poszczególnych składników. Wynika z niej, że aktualny kąt obrotu jest równy sumie dwóch składników: iloczynowi stałej k z sumą poprzedniego kąta i całki z prędkości kątowej mierzonej przez żyroskop oraz iloczynowi różnicy 1 - stała k oraz kąta zmierzonego przez akcelerometr. Wartość stałej k wyznacza się eksperymentalnie. W każdej iteracji tego algorytmu kąt obrotu oblicza się zatem na podstawie wskazań żyroskopu i akcelerometru, jeśli stała k na przykład ma wartość 0,95, to w stosunku 95% do 5%.

W zakresie rozwiązań sprzętowych wymaganych, by móc śledzić złożone ruchy sportowców lub przyrządów sportowych, preferuje się układy typu sensor hub. Są to procesory o małym poborze mocy używane tylko do przetwarzania wyników pomiarów z sensorów. Dzięki nim główny procesor aplikacji, zużywający więcej prądu, jest odciążony.

W zależności od potrzeb i mocy obliczeniowej sensor hub odpowiada za podstawową kalibrację czujników i realizację techniki sensor fusion. Może również realizować zadania bardziej zaawansowane. Przykładem jest optymalizacja poboru mocy przez "inteligentne" decydowanie o tym, który z sensorów w danym momencie powinien być włączony i z jaką częstotliwością powinno się próbkować jego wyjście.

Typy układów sensor hub

Jak się bowiem okazuje, żyroskopy zużywają wielokrotnie więcej prądu niż akcelerometry i magnetometry łącznie. Rolą układu sensor hub jest zatem analiza kontekstu, czyli rodzaju i intensywności aktywności użytkownika przy użyciu tych energooszczędnych czujników. Na tej podstawie musi on zdecydować o włączeniu lub nie żyroskopu.

Ideę odciążenia głównego procesora od przetwarzania wyników pomiarów można zrealizować na kilka sposobów. Każdy z nich ma zalety, chociaż równocześnie wymaga kompromisu w kwestii ceny albo wydajności.

Jako sensor hub może być używany oddzielny, wyspecjalizowany mikrokontroler. Takie układy mają w swojej ofercie m.in.: Atmel, STMicroelectronics, Texas Instruments oraz NXP Semiconductor. Sensor hub może również być częścią procesora aplikacji. Takie rozwiązanie proponują Qualcomm i Intel.

Zaletą zintegrowanego podejścia w porównaniu do oddzielnego mikrokontrolera jest brak dodatkowych elementów, co upraszcza projekt i realizację urządzenia. Oszczędność energii jest jednak wtedy znacząco mniejsza.

Alternatywą jest połączenie w jednym układzie procesora o małym poborze mocy i czujnika albo wielu sensorów. Układy takie oferują m.in. STMicroelectronics, InvenSense, Bosch i Freescale Semiconductor.

Przykład 1 - MPU-9250
Na rysunku 4 przedstawiono schemat blokowy układu MPU-9250 firmy InvenSense. Jego częścią są trzy wibracyjne żyroskopy MEMS wykorzystujące efekt Coriolisa. Sygnał pomiarowy tych czujników jest wzmacniany, filtrowany i przetwarzany do postaci cyfrowej w 16-bitowych przetwornikach A/C. Zakres pomiarowy czujników można zmieniać programowo na ±250, ±500, ±1000 albo ±2000°/s, podobnie jak szybkość próbkowania przetwornika A/C, z 8 tys. do 3,9 próbek/s.

Można również wybrać częstotliwość graniczną filtru. Częścią MPU-9250 jest ponadto trzyosiowy pojemnościowy akcelerometr. Jego zakres pomiarowy można przełączać pomiędzy ±2, ±4, ±8 albo ±16 g. Sygnały z tego czujnika również są przetwarzane w 16-bitowych przetwornikach A/C, tak jak i sygnał z magnetometru z czujnikiem Halla o zakresie pomiarowym ±4800 µT. Wyniki pomiarów z wszystkich sensorów przetwarza Digital Motion Processor. Z procesorem aplikacji MPU-9250 może się komunikować przez interfejs SPI albo I²C.

Przykład 2 - układy serii MTi-1
Na rysunku 5 przedstawiono schemat blokowy modułów serii MTi-1. Ma je w swojej ofercie firma Xsens. Zaprojektowano je do pracy jako układy peryferyjne w systemach wbudowanych. W tym celu wyposażono je w interfejsy UART, I²C oraz SPI. Oprócz tego ich częścią jest czujnik combo, stanowiący połączenie żyroskopu oraz akcelerometru, magnetometr, oscylator kwarcowy oraz kontroler o ograniczonym poborze mocy.

Mikrokontroler odpowiada m.in. za koordynację pomiarów, kalibrację czujników i realizację techniki sensor fusion opartej na rozszerzonym filtrze Kalmana. Moduły z serii MTi-1 dostępne są w wersjach IMU (Inertial Measurement Unit), VRU (Vertical Reference Unit) lub AHRS (Attitude and Heding Reference System).

Monika Jaworowska