[NOWY EVAL DLA STM32L] STEVAL-WESU1 – zestaw startowy dla elektroniki ubieralnej i aplikacji IoT

Producent udostępnił także dwa pakiety zaawansowanych bibliotek pozwalających w pełni wykorzystać możliwości sensorów MEMS zainstalowanych w zestawie. Są to:

  • osxMotionCP, które służą do rozpoznawania pozycji sensora względem powierzchni Ziemi. Do tego celu jest wykorzystywany akcelerometr z sensora LSM6DS3, którego rejestr danych jest odczytywany z domyślną częstotliwością 50 Hz. Schemat blokowy tego pakietu pokazano na rysunku 5.
Rys. 5. Schemat blokowy biblioteki osxMotionCP
Rys. 5. Schemat blokowy biblioteki osxMotionCP
  • osxMotionAR, które służą do rozpoznawania rodzaju aktywności osoby noszącej sensor (chód, bieganie, jazdę rowerem itp.). Biblioteki wykorzystują akcelerometr z sensora LSM6DS3, którego rejestr danych jest odczytywany z domyślną częstotliwością 16 Hz. Schemat blokowy tego pakietu pokazano na rysunku 6.
Rys. 6. Schemat blokowy biblioteki osxMotionAR
Rys. 6. Schemat blokowy biblioteki osxMotionAR

Obydwie biblioteki są dostarczane przez producenta bezpłatnie (dostępne do pobrania na stronie internetowej), korzystanie z nich wymaga uzyskania pliku licencyjnego, którego treść jest przechowywana w pliku osx_license.h (ulokowany w katalogu instalacyjnym bibliotek). Licencja jest de facto kluczem do deszyfracji prekompilowanych bibliotek – użytkownik nie ma dostępu do ich źródeł, może natomiast korzystać z ich zawartości za pomocą predefiniowanego API, które jest dokładnie opisane w dokumentacji bibliotek.

Treść przykładowej licencji pokazano na rysunku 7, w jej uzyskaniu pomaga bezpłatny program narzędziowy OSX License Wizard, który jest instalowany wraz z bibliotekami.

Rys. 7. Okno programu OSX License Wizard z przykładową licencją
Rys. 7. Okno programu OSX License Wizard z przykładową licencją

Korzystanie w aplikacjach prezentowanych z bibliotek ułatwia obsługę sensorów MEMS oraz detekcję podstawowych gestów oraz czynności (chód, bieganie, jazda na rowerze, prowadzenie samochodu itp.). Na rysunku 8 pokazano funkcje detekcyjne zaimplementowane w pakietach osxMotionAR i osxMotionCP.

Rys. 8. Wykaz ruchów wykrywanych przez procedury użyte w bibliotece osxMotionAR
Rys. 8. Wykaz ruchów wykrywanych przez procedury użyte w bibliotece osxMotionAR

Część z funkcji wykrywających rodzaje ruchów użytkownika prezentowanego zestawu znajduje się w pakiecie osxMotionCP, który jest także dostępny bezpłatnie, korzystanie z niego wymaga uzyskania bezpłatnej licencji – podobnie jak w przypadku bibliotek osxMotionAR. Dzięki tym bibliotekom konstruktor chcący wykorzystać sensory MEMS w swojej aplikacji nie musi zgłębiać teorii kwaternionów i implementować obliczeń na tych obiektach, nie musi uczyć się podstaw filtracji sygnałów za pomocą estymatorów Kalmana, otrzymuje po prostu dobrze przybliżony wynik w postaci definicji stanu obiektu z sensorami MEMS lub charakteru jego ruchu. Jest to niezwykły prezent dla konstruktorów i programistów, dający dużą przewagę sensorom produkowanym przez STMicroelectronics nad mniej „ubibliotekowanymi” konkurentami.

Prezentowane biblioteki są dostępne w trzech wariantach, zoptymalizowanych pod kątem używania w środowiskach bazujących na kompilatorach: GCC, Keil/ARM i IAR, przystosowanych do kompilacji na mikrokontrolery z rdzeniami Cortex-M3 i Cortex-M4F (ze sprzętowo obsługiwanymi instrukcjami DSP).

O autorze