ST Microelectronics NUCLEO-F401RE Knihovna odhadu pozice v reálném čase
Informace o produktu
Specifikace
- Název produktu: Knihovna odhadu pozice v reálném čase MotionPE
- Kompatibilita: rozšíření X-CUBE-MEMS1 pro STM32Cube
- Určeno pouze pro: ST MEMS
- Údaje akcelerometru Sampling Frekvence: 16 Hz
Návod k použití produktu
Konec knihovny MotionPEview:
Knihovna MotionPE rozšiřuje funkčnost softwaru X-CUBE-MEMS1, získává data z akcelerometru a poskytuje informace o aktuální pozici uživatele.
Sample Implementace:
A sampImplementace je k dispozici pro rozšiřující desky X-NUCLEO-IKS01A3 a X-NUCLEO-IKS4A1 namontované na vývojových deskách NUCLEO.
Popis knihovny MotionPE:
Knihovna pro odhad pozice MotionPE dokáže rozlišit uživatelské pozice, jako je sezení, stání a leh, určená pro zařízení nošená na zápěstí s rozpoznáváním pouze na základě údajů z akcelerometru.
MotionPE Library API
MotionPE_GetLibVersion(char *version)
: Získejte knihovnu
informace o verzi.MotionPE_Initialize()
: Inicializujte
knihovna.MotionPE_ResetLib()
: Resetovat knihovnu.MotionPE_Update(MPE_input_t *data_in, MPE_output_t
: Aktualizace knihovny údaji akcelerometru.
*data_out)MotionPE_SetOrientation_Acc(const char
: Nastavení orientace akcelerometru.
*acc_orientation)
Často kladené otázky
- Otázka: Mohu použít knihovnu MotionPE se snímači MEMS, které nejsou ST?
- Odpověď: Knihovna je určena pouze pro ST MEMS. Použití jiných senzorů MEMS může mít za následek odlišnou funkčnost a výkon.
- Otázka: Jaká jsou požadovaná data akcelerometru?ampfrekvence pro knihovnu MotionPE?
- A: Požadované sampfrekvence je 16 Hz pro přesný odhad pozice.
Zavedení
Knihovna middlewaru MotionPE je součástí softwaru X-CUBE-MEMS1 a běží na STM32. Poskytuje informace v reálném čase o aktuální pozici uživatele na základě dat ze zařízení. Je schopen rozlišit následující pozice: sezení, stání a leh. Knihovna je určena pro přístroje nošené na zápěstí. Tato knihovna je určena pouze pro práci s ST MEMS. Algoritmus je poskytován ve formátu statické knihovny a je navržen pro použití na mikrokontrolérech STM32 založených na architektuře ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 nebo ARM® Cortex®-M7. Je postaven na softwarové technologii STM32Cube, která usnadňuje přenositelnost mezi různými mikrokontroléry STM32. Software je dodáván s sampImplementace běžící na rozšiřující desce X-NUCLEO-IKS01A3 nebo X-NUCLEO-IKS4A1 na vývojové desce NUCLEO-F401RE, NUCLEO-U575ZI-Q nebo NUCLEO-L152RE.
Zkratky a zkratky
Tabulka 1. Seznam zkratek
Knihovna middlewaru MotionPE v softwarovém rozšíření X-CUBE-MEMS1 pro STM32Cube
MotionPE skončilview
Knihovna MotionPE rozšiřuje funkčnost softwaru X-CUBE-MEMS1. Knihovna získává data z akcelerometru a poskytuje informace o aktuální pozici uživatele na základě dat ze zařízení. Knihovna je určena pouze pro ST MEMS. Funkčnost a výkon při použití jiných MEMS senzorů nejsou analyzovány a mohou se výrazně lišit od toho, co je popsáno v dokumentu. A sampImplementace je k dispozici pro rozšiřující desky X-NUCLEO-IKS01A3 a X-NUCLEO-IKS4A1 namontované na vývojové desce NUCLEO-F401RE, NUCLEO-U575ZI-Q nebo NUCLEO-L152RE.
Knihovna MotionPE
Technické informace plně popisující funkce a parametry rozhraní MotionPE API lze nalézt v kompilovaném HTML kódu MotionPE_Package.chm file umístěné ve složce Dokumentace.
Popis knihovny MotionPE
Knihovna odhadu pozice MotionPE spravuje data získaná z akcelerometru; má:
- možnost rozlišit následující uživatelské pozice: sedí, stojí, leží
- určeno pro zařízení nošená na zápěstí
- rozpoznávání pouze na základě údajů akcelerometru
- požadované údaje z akcelerometru sampfrekvence 16 Hz
- požadavky na zdroje:
- Cortex-M3: 12.0 kB kódu a 2.8 kB datové paměti
- Cortex-M33: 12.5 kB kódu a 2.8 kB datové paměti
- Cortex-M4: 12.9 kB kódu a 2.8 kB datové paměti
- Cortex-M7: 12.9 kB kódu a 2.8 kB datové paměti
- k dispozici pro architektury ARM® Cortex®-M3, ARM Cortex®-M33, ARM® Cortex®-M4 nebo ARM® Cortex®-M7.
MotionPE API
Rozhraní API knihovny MotionPE jsou:
- uint8_t MotionPE_GetLibVersion(char *verze)
- načte verzi knihovny
- *verze je ukazatel na pole 35 znaků
- vrátí počet znaků v řetězci verze
- void MotionPE_Initialize(void)
- provádí inicializaci knihovny MotionPE a nastavení vnitřního mechanismu
Poznámka: Tato funkce musí být volána před použitím knihovny pro odhad pozice a před použitím knihovny je nutné povolit modul CRC v mikrokontroléru STM32 (v registru povolení periferních hodin RCC).
- provádí inicializaci knihovny MotionPE a nastavení vnitřního mechanismu
- void MotionPE_ResetLib(void)
- obnovit knihovnu
- void MotionPE_Update(MPE_input_t *data_in, MPE_output_t *data_out)
- provede algoritmus odhadu pozice
- Parametr *data_in je ukazatel na strukturu se vstupními daty
- parametry pro typ struktury MPE_input_t jsou:
- AccX je hodnota senzoru akcelerometru na ose X v g
- AccY je hodnota senzoru akcelerometru v ose Y vg
- AccZ je hodnota snímače akcelerometru v ose Z v g
- Parametr *data_out je ukazatel na výčet s následujícími položkami:
- MPE_UNKNOWN = 0
- MPE_SITTING = 1
- MPE_STANDING = 2
- MPE_LYING_DOWN = 3
- void MotionPE_SetOrientation_Acc(const char *acc_orientation)
- tato funkce se používá k nastavení orientace dat akcelerometru
- konfigurace se obvykle provádí ihned po volání funkce MotionPE_Initialize
- Parametr *acc_orientation je ukazatel na řetězec tří znaků označující směr každé z kladných orientací referenčního snímku použitého pro výstup dat akcelerometru, v sekvenci x, y, z. Platné hodnoty jsou: n (sever) nebo s (jih), w (západ) nebo e (východ), u (nahoru) nebo d (dolů).
- Jak je znázorněno na obrázku níže, senzor akcelerometru X-NUCLEO-IKS4A1 má orientaci SEU (x – jih, y – východ, z – nahoru), takže řetězec je: „seu“.
Vývojový diagram API
Demo kód
Následující demonstrační kód čte data ze senzoru akcelerometru a získává odhadovanou polohu
Výkon algoritmu
Algoritmus odhadu pozice využívá pouze data z akcelerometru a běží na nízké frekvenci (16 Hz), aby se snížila spotřeba energie. Níže uvedená tabulka ukazuje výkon algoritmu odhadu pozice z hlediska míry úspěšnosti rozpoznání
Sample aplikace
Middleware MotionPE lze snadno manipulovat a vytvářet uživatelské aplikace. A sampaplikace je k dispozici ve složce Aplikace. Je navržen pro provoz na vývojové desce NUCLEO-F401RE, NUCLEOU575ZI-Q nebo NUCLEO-L152RE připojené k rozšiřující desce X-NUCLEO-IKS01A3 nebo X-NUCLEO-IKS4A1. Aplikace rozpozná aktuální pozici uživatele v reálném čase.
Výše uvedený obrázek ukazuje uživatelské tlačítko B1 a tři LED na desce NUCLEO-F401RE. Jakmile je deska napájena, LED LD3 (PWR) se rozsvítí.
Poznámka: Po zapnutí desky LED LD2 blikne, což znamená, že aplikace je připravena. Pro sledování dat v reálném čase je vyžadováno připojení USB kabelem. Deska je napájena z PC přes USB připojení. Tento pracovní režim umožňuje uživateli zobrazit v reálném čase detekovanou pozici uživatele, data akcelerometru, čas stamp a jakákoli další data senzoru pomocí MEMS-Studio.
Aplikace MEMS-Studio
SampTato aplikace používá aplikaci MEMS-Studio, kterou lze stáhnout z www.st.com.
Krok 1. Ujistěte se, že jsou nainstalovány potřebné ovladače a že je k PC připojena deska STM32 Nucleo s příslušnou rozšiřující deskou.
Krok 2. Spusťte aplikaci MEMS-Studio a otevřete hlavní okno aplikace. Pokud je k PC připojena deska STM32 Nucleo s podporovaným firmwarem, je automaticky detekován příslušný COM port. Stisknutím tlačítka [Připojit] vytvořte připojení k vyhodnocovací desce
Krok 3. Po připojení k desce STM32 Nucleo s podporovaným firmwarem se otevře karta [Library Evaluation].
Chcete-li spustit a zastavit streamování dat, přepněte příslušné [Start] nebo [Stop]
tlačítko na vnějším svislém panelu nástrojů. Data pocházející z připojeného senzoru mohou být viewed výběrem záložky [Tabulka dat] na vnitřním svislém panelu nástrojů.
Krok 4. Kliknutím na [Pose Estimation] otevřete stránku vyhrazenou pro tuto knihovnu.
Krok 5. Klikněte na [Uložit do File] pro otevření okna konfigurace záznamu dat. Vyberte senzor a odhadovaná data pozice, která se mají uložit do file. Ukládání můžete spustit nebo zastavit kliknutím na příslušné tlačítko
Krok 6. Režim vkládání dat lze použít k odeslání dříve získaných dat do knihovny a přijetí výsledku. Výběrem karty [Data Injection] na svislém panelu nástrojů otevřete vyhrazené view pro tuto funkci
Krok 7. Klepnutím na tlačítko [Procházet] vyberte file s dříve zachycenými daty ve formátu CSV. Data budou načtena do tabulky v aktuálním view.
Ostatní tlačítka budou aktivní. Můžete kliknout na:
- Tlačítko [Offline Mode] pro zapnutí/vypnutí offline režimu firmwaru (režim využívající dříve zaznamenaná data).
- Tlačítka [Start]/[Stop]/[Step]/[Repeat] pro ovládání přenosu dat z MEMS-Studio do knihovny
Reference
Všechny následující zdroje jsou volně dostupné na www.st.com.
- UM1859: Začínáme s rozšířením softwaru X-CUBE-MEMS1 motion MEMS a senzoru prostředí pro STM32Cube
- UM1724: Desky STM32 Nucleo-64 (MB1136)
- UM3233: Začínáme s MEMS-Studio
Historie revizí
Tabulka 5. Historie revizí dokumentu
DŮLEŽITÉ UPOZORNĚNÍ – ČTĚTE POZORNĚ
STMicroelectronics NV a její dceřiné společnosti (“ST”) si vyhrazují právo provádět změny, opravy, vylepšení, úpravy a vylepšení produktů ST a/nebo tohoto dokumentu kdykoli bez upozornění. Kupující by měli před zadáním objednávky získat nejnovější relevantní informace o produktech ST. Produkty ST jsou prodávány v souladu s prodejními podmínkami ST platnými v době potvrzení objednávky. Kupující jsou výhradně odpovědní za výběr, výběr a použití produktů ST a ST nepřebírá žádnou odpovědnost za pomoc s aplikací nebo design produktů kupujících. Společnost ST zde neuděluje žádnou výslovnou ani předpokládanou licenci k právu duševního vlastnictví. Další prodej produktů ST s ustanoveními odlišnými od informací uvedených v tomto dokumentu ruší jakoukoli záruku poskytnutou společností ST na takový produkt. ST a logo ST jsou ochranné známky společnosti ST. Další informace o ochranných známkách ST najdete na www.st.com/trademarks. Všechny ostatní názvy produktů nebo služeb jsou majetkem jejich příslušných vlastníků. Informace v tomto dokumentu nahrazují a nahrazují informace dříve uvedené v předchozích verzích tohoto dokumentu. © 2024 STMicroelectronics – Všechna práva vyhrazena
Dokumenty / zdroje
![]() |
ST Microelectronics NUCLEO-F401RE Knihovna odhadu pozice v reálném čase [pdfUživatelská příručka NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE, NUCLEO-F401RE Knihovna odhadů pozic v reálném čase, NUCLEO-F401RE, Knihovna odhadů pozic v reálném čase, Knihovna odhadů časových pozic, Knihovna odhadů pozic, Knihovna odhadů |