UM2275
Uživatelská příručka
Začínáme s knihovnou MotionFD pro detekci pádu v reálném čase v rozšíření X-CUBE-MEMS1 pro STM32Cube
Zavedení
MotionEC je komponenta knihovny middlewaru softwaru X-CUBE-MEMS1 a běží na STM3z2. Poskytuje informace v reálném čase o orientaci zařízení a stavu pohybu na základě dat ze zařízení.
Poskytuje následující výstupy: orientaci zařízení (čtveřice, Eulerovy úhly), rotaci zařízení (funkce virtuálního gyroskopu), vektor gravitace a lineární zrychlení.
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 ARM® Cortex®-M0+, ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 a ARM® Architektury 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-IKS4A1 nebo X-NUCLEO-IKS01A3 na vývojové desce NUCLEO-F401RE, NUCLEO-U575ZI-Q nebo NUCLEO-L152RE.
Zkratky a zkratky
Tabulka 1. Seznam zkratek
Akronym | Popis |
API | Aplikační programovací rozhraní |
BSP | Balíček podpory desky |
GUI | Grafické uživatelské rozhraní |
HAL | Vrstva abstrakce hardwaru |
IDE | Integrované vývojové prostředí |
Knihovna middlewaru MotionFD v softwarovém rozšíření X-CUBE-MEMS1 pro STM32Cube
2.1 MotionFD přesview
Knihovna MotionFD rozšiřuje funkčnost softwaru X-CUBE-MEMS1.
Knihovna získává data z akcelerometru a tlakového senzoru a poskytuje informace o pádu 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.
SampImplementace je k dispozici pro rozšiřující desky X-NUCLEO-IKS4A1 a X-NUCLEO-IKS01A3 namontované na vývojové desce NUCLEO-F401RE, NUCLEO-U575ZI-Q nebo NUCLEO-L152RE.
2.2 Knihovna MotionFD
Technické informace plně popisující funkce a parametry API MotionFD lze nalézt v zkompilovaném HTML kódu MotionFD_Package.chm file umístěné ve složce Dokumentace.
2.2.1 Popis knihovny MotionFD
Knihovna detekce pádu MotionFD spravuje data získaná z akcelerometru a tlakového senzoru; má:
- možnost rozlišit, zda k pádu uživatele došlo či nikoliv
- rozpoznávání pouze na základě údajů akcelerometru a tlakového senzoru
- požadovaná data akcelerometru a tlakového senzoru sampfrekvence je 25 Hz
- požadavky na zdroje:
– Cortex-M3: 3.6 kB kódu a 3.2 kB datové paměti
– Cortex-M33: 3.4 kB kódu a 3.2 kB datové paměti
– Cortex-M4: 3.4 kB kódu a 3.2 kB datové paměti
– Cortex-M7: 3.4 kB kódu a 3.2 datové paměti - k dispozici pro architektury ARM Cortex-M3, ARM Cortex-M33, ARM Cortex-M4 a ARM Cortex-M7
2.2.2 MotionFD API
Rozhraní API knihovny MotionFD jsou:
- uint8_t MotionFD_GetLibVersion(char *verze)
– načte verzi knihovny
– *verze je ukazatel na pole 35 znaků
– vrátí počet znaků v řetězci verze - void MotionFD_Initialize(void)
– provádí inicializaci knihovny MotionFD a nastavení vnitřního mechanismu
Poznámka: Tato funkce musí být volána před použitím knihovny detekce pádu a musí být povolen modul CRC v mikrokontroléru STM32 (v registru povolení periferních hodin RCC).
- void MotionFD_Update (MFD_input_t *data_in, MFD_output_t *data_out)
– spustí algoritmus detekce pádu
– Parametr *data_in je ukazatel na strukturu se vstupními daty
– parametry pro typ struktury MFD_input_t jsou:
◦ AccX je hodnota senzoru akcelerometru na ose X v mg
◦ AccY je hodnota senzoru akcelerometru na ose Y v mg
◦ AccZ je hodnota senzoru akcelerometru v ose Z v mg
◦ Press je hodnota tlakového senzoru v hPa
– Parametr *data_out je ukazatel na výčet s následujícími položkami:
◦ MFD_NOFALL = 0
◦ MFD_FALL = 1 - void MotionFD_SetKnobs(float fall_threshold, int32_t fall_altitude_delta, float lay_time)
– nastavuje parametry konfigurace knihovny
– práh zrychlení fall_threshold v mg
– fall_altitude_delta výškový rozdíl v cm
– doba ležení v sekundách bez pohybu po nárazu - void MotionFD_GetKnobs(float *fall_threshold, int32_t *fall_altitude_delta, float *leing_time)
– získá parametry konfigurace knihovny
– práh zrychlení fall_threshold v mg
– fall_altitude_delta výškový rozdíl v cm
– doba ležení v sekundách bez pohybu po nárazu
2.2.3 Vývojový diagram API
2.2.4 Demo kód
Následující demonstrační kód čte data z akcelerometru a tlakového senzoru a získává kód pádu.
2.2.5 Výkonnost algoritmu
Algoritmus detekce pádu využívá pouze data z akcelerometru a tlakového senzoru a běží na nízké frekvenci (25 Hz), aby se snížila spotřeba energie.
2.3 Sample aplikace
Middleware MotionFD lze snadno manipulovat a vytvářet uživatelské aplikace; jakoampaplikace je k dispozici ve složce Aplikace.
Je navržen pro provoz na vývojové desce NUCLEO-F401RE, NUCLEO-U575ZI-Q nebo NUCLEO-L152RE připojené k rozšiřující desce X-NUCLEO-IKS4A1 nebo X-NUCLEO-IKS01A3.
Aplikace rozpozná pád 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í.
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 detekovanou událost pádu uživatele, data akcelerometru a tlakového senzoru, čas stamp a případně další data ze senzorů v reálném čase pomocí MEMS-Studio.
2.4 Aplikace MEMS-Studio
SampTato aplikace používá aplikaci MEMS-Studio, kterou lze stáhnout 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. Spuštěním aplikace MEMS-Studio otevřete hlavní okno aplikace.
Pokud je k PC připojena deska STM32 Nucleo s podporovaným firmwarem, je automaticky detekována.
Stiskněte tlačítko [Connect] pro navázání spojení s vyhodnocovací deskou.
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 vertikálním nástroji ba
Krok 4. Kliknutím na [Detekce pádu] otevřete okno vyhrazené aplikace.
Krok 5. Klikněte na [Uložit do File] pro otevření okna konfigurace záznamu dat. Vyberte senzor a data detekce pádu, 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-Studia do knihovny.
2.5 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 4. Historie revizí dokumentu
Datum | Verze | Změny |
22. září - 2017 | 1 | Počáteční vydání. |
6. února 18 | 2 | Přidány odkazy na vývojovou desku NUCLEO-L152RE a tabulku 2. Algoritmus uplynulého času (μs). |
21-března-18 | 3 | Aktualizovaný úvod a část 2.1 MotionFDview. |
19. února 19 | 4 | Aktualizovaná tabulka 2. Algoritmus uplynulého času (μs) a Obrázek 2. STM32 Nucleo: LED diody, tlačítko, propojka. Přidány informace o kompatibilitě rozšiřující desky X-NUCLEO-IKS01A3. |
17. září - 24 | 5 | Aktualizována sekce Úvod, sekce 2.1: MotionFD overview, Část 2.2.1: Popis knihovny MotionFD, Část 2.2.2: API MotionFD, Část 2.2.5: Výkon algoritmu, Část 2.3: Sampaplikace, Část 2.4: Aplikace MEMS-Studio |
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 viz 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 X-CUBE-MEMS1 MotionFD Knihovna detekce pádu v reálném čase [pdfUživatelská příručka X-CUBE-MEMS1 MotionFD Knihovna detekce pádu v reálném čase, X-CUBE-MEMS1, Knihovna detekce pádu v reálném čase MotionFD, Knihovna detekce pádu v reálném čase, Knihovna detekce pádu, Knihovna detekce, Knihovna |