ST X - logotipoaUM2225
Erabiltzailearen eskuliburua

MotionEC denbora errealeko E-Compass liburutegiarekin hastea STM1Cube-rako X-CUBE-MEMS32 hedapenean

Sarrera

MotionEC X-CUBE-MEMS1 softwarearen middleware liburutegiko osagaia da eta STM3z2-n exekutatzen da. Gailuaren orientazioari eta mugimenduaren egoerari buruzko denbora errealeko informazioa eskaintzen du gailu bateko datuetan oinarrituta.
Irteera hauek eskaintzen ditu: gailuaren orientazioa (kuaternioiak, Euler angeluak), gailuaren biraketa (giroskopio birtualaren funtzionaltasuna), grabitate-bektorea eta azelerazio lineala.
Liburutegi honek ST MEMS-ekin soilik lan egiteko pentsatuta dago.
Algoritmoa liburutegi formatuan eskaintzen da eta ARM® Cortex®-M32+, ARM® Cortex®-M0, ARM® Cortex®-M3, ARM® Cortex®-M33 eta ARM®-n oinarritutako STM4 mikrokontrolagailuetan erabiltzeko diseinatuta dago. Cortex®-M7 arkitekturak.
STM32Cube softwarearen teknologiaren gainean eraikita dago STM32 mikrokontrolagailu desberdinetan eramangarritasuna errazteko.
Softwarea s-rekin datorample-en inplementazioa X-NUCLEO-IKS01A3, X-NUCLEO-IKS4A1 edo X-NUCLEO-IKS02A1 hedapen-plaka batean exekutatzen ari da NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE edo NUCLEO-L073RZ garapen-plaka batean.

Siglak eta laburdurak

1. taula. Siglen zerrenda

Akronimoa Deskribapena
APIa Aplikazioak programatzeko interfazea
BSP Kontseiluko laguntza paketea
GUI Erabiltzaile-interfaze grafikoa
HAL Hardwarearen abstrakzio-geruza
IDE Garapen-ingurune integratua

MotionEC middleware liburutegia X-CUBE-MEMS1 STM32Cuberako software hedapenean

2.1 MugimenduaEC amaituview
MotionEC liburutegiak X-CUBE-MEMS1 softwarearen funtzionaltasuna zabaltzen du.
Liburutegiak azelerometroaren eta magnetometroaren datuak eskuratzen ditu eta gailuaren datuetan oinarrituta gailuaren orientazioari eta mugimenduaren egoerari buruzko informazioa ematen du.
Liburutegia ST MEMSentzat soilik diseinatuta dago. Beste MEMS sentsoreak erabiltzean funtzionaltasuna eta errendimendua ez dira aztertzen eta dokumentuan deskribatzen denarekiko nabarmen desberdinak izan daitezke.
A sampLe inplementazioa X-NUCLEO-IKS01A3, X-NUCLEO-IKS4A1 eta X-NUCLEO-IKS02A1 hedapen-plaketan dago eskuragarri, NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE edo NUCLEO-L073R garapen-plaketan muntatuta.
2.2 MotionEC liburutegia
MotionEC APIen funtzioak eta parametroak guztiz deskribatzen dituen informazio teknikoa MotionEC_Package.chm konpilatutako HTML-n aurki daiteke. file Dokumentazioa karpetan dago.

2.2.1 MotionEC liburutegiaren deskribapena
MotionEC E-Compass liburutegiak azelerometrotik eta magnetometrotik eskuratutako datuak kudeatzen ditu; ezaugarri hauek ditu:

  • gailuaren orientazioa (kuaternioiak, Euler angeluak), gailuaren biraketa (giroskopio birtualaren funtzionaltasuna), grabitate-bektorea eta azelerazio linealaren irteerak
  • azelerometroaren eta magnetometroaren datuetan soilik oinarritutako funtzionaltasuna
  • beharrezko azelerometro eta magnetometro datu samp100 Hz arteko maiztasuna
  • baliabideen eskakizunak:
    – Cortex-M0+: 3.7 kB kodea eta 0.1 kB datu-memoria
    – Cortex-M3: 3.8 kB kodea eta 0.1 kB datu-memoria
    – Cortex-M33: 2.8 kB kodea eta 0.1 kB datu-memoria
    – Cortex-M4: 2.9 kB kodea eta 0.1 kB datu-memoria
    – Cortex-M7: 2.8 kB kodea eta 0.1 kB datu-memoria
  • ARM Cortex M0+, Cortex-M3, Cortex-M33, Cortex-M4 eta Cortex M7 arkitekturetarako eskuragarri

2.2.2 MotionEC APIak
MotionEC APIak hauek dira:

  • uint8_t MotionEC_GetLibVersion(char *bertsioa)
    – liburutegiaren bertsioa berreskuratzen du
    – *bertsioa 35 karaktereko array baten erakuslea da
    – bertsio-katearen karaktere kopurua itzultzen du
    • void MotionEC_Initialize (MEC_mcu_type_t mcu_type, float freq)
    – MotionEC liburutegiaren hasierako eta barne-mekanismoaren konfigurazioa egiten du.
    – mcu_type MCU mota da:
    ◦ MFX_CM0P_MCU_STM32 STM32 MCU estandar bat da
    ◦ MFX_CM0P_MCU_BLUE_NRG1 BlueNRG-1 da
    ◦ MFX_CM0P_MCU_BLUE_NRG2 BlueNRG-2 da
    ◦ MFX_CM0P_MCU_BLUE_NRG_LP BlueNRG -LP da
    – maiztasuna sentsore s daampling maiztasuna [Hz]

Oharra: Funtzio hau E-Compass liburutegia erabili aurretik deitu behar da eta STM32 mikrokontrolagailuko CRC modulua (RCC erloju periferikoaren gaitzeko erregistroan) aktibatu behar da liburutegia erabili aurretik.

  • void MotionEC_SetFrequency (maiztasun flotatzailea)
    – s-a ezartzen duampling maiztasuna (iragazte-parametroak aldatuz)
    – maiztasuna sentsore s daampling maiztasuna [Hz] • void MotionEC_Run (MEC_input_t *data_in, MEC_output_t *data_out)
    - E-Compass algoritmoa exekutatzen du (azelerometroa eta magnetometroaren datuen fusioa)
    – *data_in sarrerako datuak dituen egitura baten erakuslea da
    – MEC_input_t egitura motako parametroak hauek dira:
    ◦ acc[3] ENU konbentzioko azelerometroko datuen sorta bat da, g-tan neurtuta
    ◦ mag[3] ENU konbentzioan kalibratutako magnetometroen datu sorta bat da, μT/50-tan neurtuta.
    ◦ deltatime s s-tan neurtutako delta-denbora da (hau da, datu-multzo zaharren eta berriaren arteko atzerapena).
    – *data_out irteerako datuak dituen egitura baten erakuslea da
    – MEC_output_t egitura motaren parametroak hauek dira:
    ◦ quaternion[4] ENU konbentzioan kuaternioia duen array da, gailuaren 3Dangeluko ​​orientazioa espazioan adierazten duena; Elementuen ordena hau da: X, Y, Z, W, beti W elementu positiboarekin
    ◦ euler[3] ENU konbentzioko Euler angeluen multzoa da, gailuaren 3D angelu-orientazioa espazioan adierazten duena; elementuen ordena hauxe da: yaw, pitch, roll, gradutan neurtua
    ◦ i_gyro[3] ENU konbentzioko abiadura angeluarren multzoa da, giroskopio birtualaren sentsore bat adierazten duena, dps-tan neurtuta.
    ◦ grabitatea[3] ENU konbentzioko azelerazio-multzo bat da, grabitate-bektorea adierazten duena, g-tan neurtuta.
    ◦ lineala[3] ENU konbentzioko azelerazio-sorta bat da, gailuaren azelerazio lineala adierazten duena, g-tan neurtuta.
    ST X CUBE MEMS1 MotionEC Middleware liburutegia da.
  • void MotionEC_GetOrientationEnable(MEC_state_t *egoera)
    – Euler angeluaren kalkulua gaitu/desgaitu egoera lortzen du
    – *egoera egungo gaitu/desgaitu egoeraren erakuslea da
  • void MotionEC_SetOrientationEnable(MEC_state_t egoera)
    – Euler angeluaren kalkuluaren gaitu/desgaitu egoera ezartzen du
    – egoera ezarri beharreko gaitzeko/desgaitzeko egoera berria da
  •  void MotionEC_GetVirtualGyroEnable(MEC_state_t *egoera)
    – Giroskopio birtualaren kalkuluaren gaitu/desgaitu egoera lortzen du
    – *egoera egungo gaitu/desgaitu egoeraren erakuslea da
  • void MotionEC_SetVirtualGyroEnable(MEC_state_t egoera)
    – Giroskopio birtualaren kalkuluaren gaitu/desgaitu egoera ezartzen du
    – egoera ezarri beharreko gaitzeko/desgaitzeko egoera berria da
  • void MotionEC_GetGravityEnable(MEC_state_t *egoera)
    – grabitate-bektorearen kalkuluaren gaitu/desgaitu egoera lortzen du
    – *egoera egungo gaitu/desgaitu egoeraren erakuslea da
  • void MotionEC_SetGravityEnable (MEC_state_t egoera)
    – grabitate-bektorearen kalkuluaren gaitu/desgaitu egoera ezartzen du
    – egoera ezarri beharreko gaitzeko/desgaitzeko egoera berria da
  • void MotionEC_GetLinearAccEnable (MEC_state_t *egoera)
    – Azelerazio linealaren kalkuluaren gaitu/desgaitu egoera lortzen du
    – *egoera egungo gaitu/desgaitu egoeraren erakuslea da
  • void MotionEC_SetLinearAccEnable (MEC_state_t egoera)
    – Azelerazio linealaren kalkuluaren gaitu/desgaitu egoera ezartzen du
    – egoera ezarri beharreko gaitzeko/desgaitzeko egoera berria da

2.2.3 APIaren fluxu-diagrama

ST X CUBE MEMS1 MotionEC Middleware Liburutegi-sekuentzia bat da

2.2.4 Demo kodea
Ondoko erakustaldi-kodeak azelerometroaren eta magnetometroaren sentsoreen datuak irakurtzen ditu eta ECompass datuak lortzen ditu (hau da, kuaternioia, Euler angeluak, etab.).

ST X CUBE MEMS1 MotionEC Middleware Library- Demo kodea daST X CUBE MEMS1 MotionEC Middleware Liburutegi bat da - Demo kodea1

2.2.5 Algoritmoaren errendimendua
E-Compass algoritmoak azelerometroaren eta magnetometroaren datuak soilik erabiltzen ditu. Maiztasun baxuan (100 Hz arte) funtzionatzen du energia-kontsumoa murrizteko.

ST X CUBE MEMS1 MotionEC Middleware Liburutegi bat da - Datu Injekzio1

Sample aplikazioa

MotionEC middlewarea erraz manipula daiteke erabiltzailearen aplikazioak eraikitzeko; bezalaample aplikazioa Aplikazio karpetan dago.
NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE edo NUCLEO-L073RZ garapen-plaka batean exekutatzeko diseinatuta dago, X-NUCLEO-IKS01A3, X-NUCLEO-IKS4A1 edo X-NUCLEO-IKS02A1 hedapen-plaka batera konektatuta.

ST X CUBE MEMS1 MotionEC Middleware Liburutegi-egokitzailea da

Aplikazioak gailuaren orientazioa eta biraketa denbora errealean ezagutzen ditu. Datuak GUI baten bidez bistaratu daitezke.
Algoritmoak irteera hauek eskaintzen ditu: gailuaren orientazioa (kuaternioiak, Euler angeluak), gailuaren biraketa (giroskopio birtualaren funtzionaltasuna), grabitate-bektorea eta azelerazio lineala.
3.1 MEMS-Studio aplikazioa
SampAplikazioak MEMS-Studio aplikazioa erabiltzen du, deskargatu daitekeena www.st.com.
1. urratsa. Ziurtatu beharrezko kontrolatzaileak instalatuta daudela eta hedapen-plaka egokia duen STM32 Nucleo plaka ordenagailura konektatuta dagoela.
2. urratsa. Abiarazi MEMS-Studio aplikazioa aplikazioaren leiho nagusia irekitzeko.
Onartutako firmwarea duen STM32 Nucleo plaka bat ordenagailura konektatuta badago, COM ataka egokia detektatzen da automatikoki. Sakatu [Konektatu] botoia ebaluazio-batzordearekin konexioa ezartzeko.

ST X CUBE MEMS1 MotionEC Middleware Liburutegia- Konektatu bat da

3. urratsa. Onartutako firmwarea duen STM32 Nucleo plaka batera konektatzean [Liburutegiaren Ebaluazioa] fitxa irekitzen da.
Datu-fluxua hasteko eta gelditzeko, txandakatu dagokion [Hasi] ST X CUBE MEMS1 MotionEC Middleware Liburutegiaren ikonoa da edo [Gelditu] ST X CUBE MEMS1 MotionEC Middleware Liburutegi bat da - ikonoa1 kanpoko tresna-barra bertikaleko botoia.
Konektatutako sentsoretik datozen datuak izan daitezke vieweta barneko tresna-barrako [Datu Taula] fitxa hautatuz.

ST X CUBE MEMS1 MotionEC Middleware Liburutegia- Datu Taula da

4. urratsa. Egin klik [E-Compass] liburutegi honi eskainitako orria irekitzeko.

ST X CUBE MEMS1 MotionEC Middleware Liburutegia- Iparrorratza da

Goiko irudiak STM32 Nucleo eredu grafiko bat erakusten du. Ereduaren orientazioa eta biraketa algoritmoak kalkulatutako E-Compass datuetan (kuaternioiak) oinarritzen dira.
Gailuaren benetako mugimendua eredu grafikoarekin lerrokatzeko, zuzendu gailua pantailarantz eta sakatu [Berrezarri eredua].
Tituluaren balioak benetako gailuaren goiburua adierazten du.
Gailua zuzen gora edo behera seinalatzea (ENU erreferentzia-markoaren Gora ardatzean, ±5 graduko tolerantziarekin) goibururako N/A balioa ematen du: ezin da bereizi gailuak zein puntu kardinaletara seinalatzen duen.
Ontasun-balioak 0 eta 3 balioak ematen ditu eta magnetometroaren kalibrazioarekin lotuta dago: zenbat eta balioa handiagoa izan, orduan eta hobeak izango dira E-Compass datu-algoritmoaren emaitzak.
5. urratsa. Sakatu [Gorde hemen File] datuak erregistratzeko konfigurazio leihoa irekitzeko. Hautatu sentsore eta Iparrorratza Elektronikoan gorde beharreko datuak file. Gordetzen hasi edo gelditu dezakezu dagokion botoian klik eginez.

ST X CUBE MEMS1 MotionEC Middleware Liburutegia da - Gorde hemen File

6. urratsa. Datuak injekzio modua aldez aurretik eskuratutako datuak liburutegira bidaltzeko eta emaitza jasotzeko erabil daiteke. Hautatu tresna-barra bertikaleko [Datu-injekzioa] fitxa dedikatua irekitzeko view funtzionalitate honetarako.

ST X CUBE MEMS1 MotionEC Middleware Liburutegia- Datu Injekzio bat da

7. urratsa. Egin klik [Arakatu] botoian hautatzeko file aurretik jasotako datuekin CSV formatuan.
Datuak uneko taulan kargatuko dira view.
Beste botoiak aktibatu egingo dira. Hemen klik egin dezakezu:
– [Lineaz kanpoko modua] botoia lineaz kanpoko firmwarearen modua aktibatzeko/desaktibatzeko (aurretik ateratako datuak erabiliz modua).
– [Hasi]/[Gelditu]/[Pausoa]/[Errepikatu] botoiak MEMS-Studiotik liburutegira doan datu-jarioa kontrolatzeko.

Erreferentziak

Hurrengo baliabide guztiak doan eskura daitezke www.st.com webgunean.

  1. UM1859: STM1Cuberako X-CUBE-MEMS32 motion MEMS eta ingurumen-sentsoreen softwarearen hedapenarekin hastea
  2.  UM1724: STM32 Nucleo-64 plakak (MB1136)
  3. UM3233: MEMS-Studio-rekin hastea

Berrikuspen historia

4. taula. Dokumentuen berrikuspenaren historia

Data Bertsioa Aldaketak
18-maiatzak-17 1 Hasierako kaleratzea.
25-Urt-18 2 NUCLEO-L152RE garapen-taulari eta 2. taulari erreferentziak gehitu zaizkio.
Iragandako denbora (μs) algoritmoa.
21-mar-18 3 Sarrera eguneratua eta 2.1 atala MotionEC baino gehiagoview.
Azaroak 26-18 4 3. Taula gehitua. Cortex -M0+: iragandako denbora (µs) algoritmoa. ARM®-ri erreferentziak gehitu zaizkio
Cortex® - M0+ eta NUCLEO-L073RZ garapen taula.
Otsailak 19-19 5 1. Irudia eguneratua. ENU erreferentzia-markoa, 2. Taula. Cortex -M4 eta Cortex-M3: iragandako denbora (µs) algoritmoa, 3. Taula.
Cortex -M0+: igarotako denbora (µs) algoritmoa, 3. irudia. STM32-ra konektatutako sentsore-hedapen-plakaren egokitzailea
Nucleo, 4. Irudia. Unicleoren leiho nagusia, 5. Irudia. Erabiltzaileen mezuak fitxa, 6. Irudia. E-Compass leihoa eta 7. Irudia. Datuen erregistroko leihoa. X-NUCLEO-IKS01A3 hedapen-plakaren bateragarritasun-informazioa gehitu da.
25-mar-20 6 Sarrera eguneratua, 2.2.1 Atala: MotionEC liburutegiaren deskribapena eta 2.2.5 Atala: Algoritmoaren errendimendua.
ARM Cortex-M7 arkitektura bateragarritasunaren informazioa gehitu da.
17-24-XNUMX 7 Atal eguneratua Sarrera,
2.1 atala: MotionEC amaituview,
2.2.1 atala: MotionEC liburutegia
deskribapena, 2.2.2 atala: MotionEC
APIak, 2.2.5 Atala: Algoritmoa
emanaldia, 3. atala: Sample
aplikazioa, 3.1 atala: MEMS-Studio aplikazioa

OHAR GARRANTZITSUA - IRAKURRI ARRETA
STMicroelectronics NV eta bere filialek ("ST") eskubidea dute aldaketak, zuzenketak, hobekuntzak, aldaketak eta hobekuntzak egiteko ST produktuetan eta/edo dokumentu honetan edozein unetan jakinarazi gabe. Erosleek eskaerak egin aurretik ST produktuei buruzko azken informazio garrantzitsua eskuratu behar dute. ST produktuak eskaera onartzeko unean indarrean dauden STren salmenta-baldintzen arabera saltzen dira.
Erosleak dira ST produktuen aukeraketa, aukeraketa eta erabileraren erantzule bakarrak eta STek ez du bere gain hartzen aplikazioen laguntzaren edo erosleen produktuen diseinuaren erantzukizunik.
STek ez du baimenik, espresuki edo inplizituki, jabetza intelektualeko eskubiderik ematen.
ST produktuen birsalmentak hemen azaltzen den informazioaz bestelako xedapenak dituztenak baliogabetuko ditu STek produktu horrengatik emandako edozein berme.
ST eta ST logotipoa ST-ren marka komertzialak dira. ST markei buruzko informazio gehiago lortzeko, jo www.st.com/trademarks. Gainerako produktu edo zerbitzu-izen guztiak dagozkien jabeen jabetzakoak dira.
Dokumentu honetako informazioak dokumentu honen aurreko edozein bertsiotan emandako informazioa ordezkatzen eta ordezkatzen du.

© 2024 STMicroelectronics - Eskubide guztiak erreserbatuta

Dokumentuak / Baliabideak

ST X-CUBE-MEMS1 MotionEC Middleware Liburutegia da [pdf] Erabiltzailearen eskuliburua
X-CUBE-MEMS1 MotionEC Middleware Liburutegia da, X-CUBE-MEMS1, MotionEC Middleware Liburutegia da, Middleware Liburutegia, Liburutegia

Erreferentziak

Utzi iruzkin bat

Zure helbide elektronikoa ez da argitaratuko. Beharrezko eremuak markatuta daude *