UM2225
Leabhar-làimhe cleachdaiche
A’ tòiseachadh le leabharlann E-Compass fìor-ùine MotionEC ann an leudachadh X-CUBE-MEMS1 airson STM32Cube
Ro-ràdh
Tha an MotionEC na phàirt leabharlainn meadhan-bog de bhathar-bog X-CUBE-MEMS1 agus a’ ruith air STM3z2. Bidh e a’ toirt seachad fiosrachadh fìor-ùine mu stiùireadh inneal agus inbhe gluasaid stèidhichte air dàta bho inneal.
Tha e a’ toirt seachad na toraidhean a leanas: stiùireadh inneal (ceathramhan, ceàrnan Euler), cuairteachadh inneal (gnìomh gyroscope brìgheil), vectar grabhataidh agus luathachadh sreathach.
Tha an leabharlann seo airson a bhith ag obair le ST MEMS a-mhàin.
Tha an algairim air a thoirt seachad ann an cruth leabharlann statach agus tha e air a dhealbhadh airson a chleachdadh air microcontrollers STM32 stèidhichte air an ARM® Cortex®-M0+, ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 agus ARM® Ailtireachd Cortex®-M7.
Tha e air a thogail a bharrachd air teicneòlas bathar-bog STM32Cube gus comas giùlain a dhèanamh nas fhasa thar diofar microcontrollers STM32.
Tha am bathar-bog a’ tighinn le sample buileachadh a’ ruith air bòrd leudachaidh X-NUCLEO-IKS01A3 , X-NUCLEO-IKS4A1or X-NUCLEO-IKS02A1 air bòrd leasachaidh NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE no NUCLEO-L073RZ.
Acronyms agus giorrachaidhean
Clàr 1. Liosta de acronaim
Acronym | Tuairisgeul |
API | Eadar-aghaidh prògramadh aplacaid |
BSP | Pasgan taic bùird |
GUI | Eadar-aghaidh cleachdaiche grafaigeach |
HAL | Còmhdach tarraing bathar cruaidh |
IDE | Àrainneachd leasachaidh aonaichte |
Leabharlann meadhan bathar MotionEC ann an leudachadh bathar-bog X-CUBE-MEMS1 airson STM32Cube
2.1 MotionEC thairisview
Bidh leabharlann MotionEC a’ leudachadh comas-gnìomh bathar-bog X-CUBE-MEMS1.
Bidh an leabharlann a’ faighinn dàta bhon accelerometer agus magnetometer agus a’ toirt seachad fiosrachadh mu stiùireadh inneal agus inbhe gluasad stèidhichte air dàta bho inneal.
Tha an leabharlann air a dhealbh airson ST MEMS a-mhàin. Chan eilear a’ sgrùdadh gnìomhachd agus coileanadh nuair a thathar a’ cleachdadh mothachairean MEMS eile agus faodaidh iad a bhith gu math eadar-dhealaichte bho na tha air a mhìneachadh san sgrìobhainn.
A sample buileachadh ri fhaighinn air bòrd leudachaidh X-NUCLEO-IKS01A3 , X-NUCLEO-IKS4A1 agus X-NUCLEO-IKS02A1, air a chuir suas air bòrd leasachaidh NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE no NUCLEOZ-L073R
2.2 Leabharlann MotionEC
Gheibhear fiosrachadh teignigeach a tha a’ toirt làn mhìneachadh air gnìomhan agus crìochan APIan MotionEC anns an HTML a chuir MotionEC_Package.chm ri chèile file suidhichte ann am pasgan nan Sgrìobhainnean.
2.2.1 Tuairisgeul leabharlainn MotionEC
Bidh leabharlann MotionEC E-Compass a’ riaghladh dàta a gheibhear bhon luathaichear agus an magnetometer; feartan aige:
- stiùireadh inneal (ceathramhan, ceàrnan Euler), cuairteachadh inneal (gnìomh gyroscope brìgheil), vectar grabhataidh agus toraidhean luathachaidh sreathach
- gnìomhachd stèidhichte air an accelerometer agus dàta magnetometer a-mhàin
- dàta accelerometer agus magnetometer riatanach samptricead ling suas gu 100 Hz
- feumalachdan ghoireasan:
- Cortex-M0+: 3.7 kB de chòd agus 0.1 kB de chuimhne dàta
- Cortex-M3: 3.8 kB de chòd agus 0.1 kB de chuimhne dàta
- Cortex-M33: 2.8 kB de chòd agus 0.1 kB de chuimhne dàta
- Cortex-M4: 2.9 kB de chòd agus 0.1 kB de chuimhne dàta
- Cortex-M7: 2.8 kB de chòd agus 0.1 kB de chuimhne dàta - ri fhaighinn airson ailtireachd ARM Cortex M0 +, Cortex-M3, Cortex-M33, Cortex-M4 agus Cortex M7
2.2.2 MotionEC APIs
Is iad na APIan MotionEC:
- uint8_t MotionEC_GetLibVersion(char *dreach)
- a’ faighinn air ais dreach an leabharlainn
- * tha an dreach na chomharradh air sreath de 35 caractaran
- a’ tilleadh an àireamh de charactaran anns an t-sreath dreach
• falamh MotionEC_Initialize(MEC_mcu_type_t mcu_type, fleòdradh freq)
- a’ coileanadh toiseach tòiseachaidh leabharlann MotionEC agus stèidheachadh an uidheamachd a-staigh.
- is e mcu_type an seòrsa MCU:
◦ Tha MFX_CM0P_MCU_STM32 na STM32 MCU àbhaisteach
◦ Tha MFX_CM0P_MCU_BLUE_NRG1 BlueNRG-1
◦ Tha MFX_CM0P_MCU_BLUE_NRG2 BlueNRG-2
◦ Tha MFX_CM0P_MCU_BLUE_NRG_LP na BlueNRG -LP
- is e freq an sensor samptricead ling [Hz]
Thoir an aire: Feumar an gnìomh seo a ghairm mus cleachd thu an leabharlann E-Compass agus feumar am modal CRC ann am microcontroller STM32 (ann an clàr comas cloc iomaill RCC) a bhith air a chomasachadh mus cleachd thu an leabharlann
- falamh MotionEC_SetFrequency (freq fleòdradh)
- a 'suidheachadh an samptricead ling (ag atharrachadh nam paramadairean sìoltachaidh)
- is e freq an sensor samptricead langa [Hz] • falamh MotionEC_Run(MEC_input_t *data_in, MEC_output_t *data_out)
- a’ ruith an algairim E-Compass (luathaichear agus measgachadh dàta magnetometer)
- * tha data_in na chomharradh air structar le dàta cuir a-steach
- is iad na crìochan airson an seòrsa structar MEC_input_t:
Tha ◦ acc[3] na raon de dhàta luathaichear ann an co-chruinneachadh ENU, air a thomhas ann an g
Tha ◦ mag [3] na raon de dhàta calibrated magnetometer ann an co-chruinneachadh ENU, air a thomhas ann an μT / 50
◦ Is e deltatime s an ùine delta (ie, dàil ùine eadar seann sheata dàta agus seata dàta ùr) air a thomhas ann an s
- * tha data_out na chomharradh air structar le dàta toraidh
- is iad na crìochan airson an seòrsa structar MEC_output_t:
◦ quaternion [4] na raon anns a bheil quaternion ann an co-chruinneachadh ENU, a’ riochdachadh taobh 3Dangular an inneil san fhànais; Is e òrdugh nan eileamaidean: X, Y, Z, W, le eileamaid an-còmhnaidh deimhinneach W
◦ 'S e sreath de cheàrnan Euler ann an co-chruinneachadh ENU a th' ann an euler[3], a' riochdachadh stiùireadh ceàrnach 3D an inneil san fhànais; Is e òrdugh nan eileamaidean: yaw, pitch, roll, air a thomhas ann an deg
Tha ◦ i_gyro[3] na raon de reataichean ceàrnach ann an co-chruinneachadh ENU, a’ riochdachadh sensor gyroscope brìgheil, air a thomhas ann an dps
Tha ◦ gravity [3] na raon de luathachadh ann an co-chruinneachadh ENU, a’ riochdachadh vectar grabhataidh, air a thomhas ann an g
◦ sreathach [3] na raon de luathachadh ann an co-chruinneachadh ENU, a’ riochdachadh luathachadh sreathach an uidheim, air a thomhas ann an g
- falamh MotionEC_GetOrientationEnable(MEC_state_t * state)
- a’ faighinn staid comasachaidh / à comas àireamhachadh ceàrn Euler
- * tha an stàit mar chomharradh air an t-suidheachadh gnàthach comasach / à comas - falamh MotionEC_SetOrientationEnable(MEC_state_t state)
- a’ suidheachadh suidheachadh comasachaidh / à comas àireamhachadh ceàrn Euler
- Is e an stàit an stàit comais / ciorramach ùr a tha ri shuidheachadh - falamh MotionEC_GetVirtualGyroEnable(MEC_state_t * state)
- a’ faighinn suidheachadh comasachaidh / à comas àireamhachadh gyroscope brìgheil
- * tha an stàit mar chomharradh air an t-suidheachadh gnàthach comasach / à comas - falamh MotionEC_SetVirtualGyroEnable(MEC_state_t state)
- a’ suidheachadh suidheachadh comasachaidh / à comas àireamhachadh gyroscope brìgheil
- Is e an stàit an stàit comais / ciorramach ùr a tha ri shuidheachadh - falamh MotionEC_GetGravityEnable(MEC_state_t *state)
- a’ faighinn staid comasachaidh / à comas àireamhachadh vectar grabhataidh
- * tha an stàit mar chomharradh air an t-suidheachadh gnàthach comasach / à comas - falamh MotionEC_SetGravityEnable(MEC_state_t state)
- a’ suidheachadh suidheachadh comasachaidh / à comas àireamhachadh vectar grabhataidh
- Is e an stàit an stàit comais / ciorramach ùr a tha ri shuidheachadh - falamh MotionEC_GetLinearAccEnable(MEC_state_t *state)
- a’ faighinn staid comasachaidh / à comas àireamhachadh luathachadh sreathach
- * tha an stàit mar chomharradh air an t-suidheachadh gnàthach comasach / à comas - falamh MotionEC_SetLinearAccEnable(MEC_state_t state)
- a’ suidheachadh suidheachadh comasachaidh / à comas àireamhachadh luathachadh sreathach
- Is e an stàit an stàit comais / ciorramach ùr a tha ri shuidheachadh
2.2.3 Clàr sruth API
2.2.4 Còd demo
Bidh an còd taisbeanaidh a leanas a’ leughadh dàta bhon accelerometer agus mothachairean magnetometer agus a’ faighinn an dàta ECompass (ie, ceàrnan, ceàrnan Euler, msaa).
2.2.5 Algorithm coileanadh
Bidh an algairim E-Compass a’ cleachdadh dàta bhon accelerometer agus magnetometer a-mhàin. Bidh e a’ ruith aig tricead ìosal (suas ri 100 Hz) gus caitheamh cumhachd a lughdachadh.
Sample tagradh
Faodar bathar meadhanach MotionEC a làimhseachadh gu furasta gus tagraidhean luchd-cleachdaidh a thogail; asample iarrtas air a thoirt seachad ann am pasgan an tagraidh.
Tha e air a dhealbhadh gus ruith air bòrd leasachaidh NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE no NUCLEO-L073RZ ceangailte ri bòrd leudachaidh X-NUCLEO-IKS01A3, X-NUCLEO-IKS4A1or X-NUCLEO-IKS02A1.
Tha an tagradh ag aithneachadh stiùireadh inneal agus cuairteachadh ann an àm fìor. Faodar an dàta a thaisbeanadh tro GUI.
Tha an algairim a’ toirt seachad na toraidhean a leanas: stiùireadh inneal (ceathramhan, ceàrnan Euler), cuairteachadh inneal (gnìomh gyroscope brìgheil), vectar grabhataidh agus luathachadh sreathach.
3.1 MEMS-Iarrtas stiùidio
Na sample application a’ cleachdadh an aplacaid MEMS-Studio, a ghabhas luchdachadh a-nuas bho www.st.com.
Ceum 1. Dèan cinnteach gu bheil na draibhearan riatanach air an stàladh agus gu bheil am bòrd STM32 Nucleo le bòrd leudachaidh iomchaidh ceangailte ris a’ PC.
Ceum 2. Cuir air bhog an tagradh MEMS-Studio gus am prìomh uinneag tagraidh fhosgladh.
Ma tha bòrd STM32 Nucleo le firmware le taic ceangailte ris a’ PC, lorgar am port COM iomchaidh gu fèin-ghluasadach. Brùth am putan [Ceangail] gus ceangal a stèidheachadh ris a’ bhòrd measaidh.
Ceum 3. Nuair a tha e ceangailte ri bòrd STM32 Nucleo le taba firmware le taic [Measadh Leabharlainn] tha e fosgailte.
Gus tòiseachadh agus stad air sruthadh dàta, tog am faidhle iomchaidh [Tòisich] neo [Stad]
putan air a’ bhàr inneal inghearach a-muigh.
Faodaidh an dàta a thig bhon sensor ceangailte a bhith viewed a’ taghadh an taba [Clàr Dàta] air a’ bhàr inneal inghearach a-staigh.
Ceum 4. Cliog air an [E-Compass] gus an duilleag shònraichte airson an leabharlainn seo fhosgladh.
Tha am figear gu h-àrd a’ sealltainn modal grafaigeach STM32 Nucleo. Tha stiùireadh a’ mhodail agus an cuairteachadh stèidhichte air dàta E-Compass (quaternions) air a thomhas leis an algairim.
Gus an fhìor ghluasad inneal a cho-thaobhadh leis a’ mhodal grafaigeach, comharraich an inneal a dh’ ionnsaigh an sgrion agus brùth air [modail ath-shuidheachadh].
Tha an luach cinn a’ riochdachadh fìor cheann an uidheim.
Le bhith a’ comharrachadh an inneal dìreach suas no sìos (air an axis Up de fhrèam iomraidh ENU, le fulangas ± 5 ceum) bheir sin luach N/A airson a’ chinn: chan eil e comasach eadar-dhealachadh a dhèanamh air a’ phuing cardinal air a bheil an inneal a’ comharrachadh.
Tha an luach math a’ toirt luachan 0 gu 3 agus tha e co-cheangailte ri calibration magnetometer: mar as àirde an luach, is ann as fheàrr a bhios toraidhean an algairim dàta E-Compass.
Ceum 5. Cliog air [Sàbhail gu File] gus an uinneag rèiteachaidh dataloging fhosgladh. Tagh an dàta sensor agus E-Compass airson a shàbhaladh anns an fhaidhle file. Faodaidh tu tòiseachadh no stad air sàbhaladh le bhith a’ briogadh air a’ phutan iomchaidh.
Ceum 6. Faodar modh Instealladh Dàta a chleachdadh gus an dàta a chaidh fhaighinn roimhe a chuir chun leabharlann agus an toradh fhaighinn. Tagh an taba [Injection Dàta] air a’ bhàr inneal inghearach gus am faidhle coisrigte fhosgladh view airson an gnìomh seo.
Ceum 7. Cliog air a’ phutan [Rùraich] gus am faidhle a thaghadh file leis an dàta a chaidh a ghlacadh roimhe seo ann an cruth CSV.
Thèid an dàta a luchdachadh a-steach don chlàr san t-sruth view.
Bidh putanan eile a’ fàs gnìomhach. Faodaidh tu briogadh air:
- [Modh far-loidhne] putan gus am modh far-loidhne firmware a chuir air / dheth (modh a’ cleachdadh an dàta a chaidh a ghlacadh roimhe).
- [Tòisich] / [Stop] / [Ceum] / [Dèan ath-aithris] putanan gus smachd a chumail air an dàta bho MEMS-Studio chun leabharlann.
Iomraidhean
Tha na goireasan a leanas rim faighinn gu saor air www.st.com.
- UM1859: A’ tòiseachadh le MEMS gluasad X-CUBE-MEMS1 agus leudachadh bathar-bog mothachaidh àrainneachd airson STM32Cube
- UM1724: Bùird STM32 Nucleo-64 (MB1136)
- UM3233: A’ tòiseachadh le MEMS-Studio
Eachdraidh ath-sgrùdaidhean
Clàr 4 . Eachdraidh ath-sgrùdaidh sgrìobhainnean
Ceann-latha | Tionndadh | Atharrachaidhean |
18-Cèitean-17 | 1 | Sgaoileadh tùsail. |
25-Faoilleach-18 | 2 | Chuir sinn sgeirean ri bòrd leasachaidh NUCLEO-L152RE agus Clàr 2. Algairim ùine seachad (μs). |
21-Màrt-18 | 3 | Ro-ràdh ùraichte agus Earrann 2.1 MotionEC thairisview. |
26-18 an t-Samhain | 4 | Clàr 3 air a chur ris. Cortex -M0+: algairim ùine seachad (µs). Chaidh iomraidhean a chur ri ARM® Cortex® - bòrd leasachaidh M0+ agus NUCLEO-L073RZ. |
19-Gearran-19 | 5 | Figear ùraichte 1. Frèam iomraidh ENU, Clàr 2. Cortex -M4 agus Cortex-M3: algorithm ùine seachad (µs), Clàr 3. Cortex -M0+: algairim ùine seachad (µs), Figear 3. Adaptor bòrd leudachaidh sensor ceangailte ris an STM32 Nucleo, Figear 4. Prìomh uinneag Unicleo, Figear 5. Tab Teachdaireachdan Cleachdaiche, Figear 6. Uinneag E-Compass agus Figear 7. uinneag Datalog. Chaidh fiosrachadh co-chòrdalachd bòrd leudachaidh X-NUCLEO-IKS01A3 a chur ris. |
25-Màrt-20 | 6 | Ro-ràdh Ùraichte, Earrann 2.2.1: Tuairisgeul leabharlainn MotionEC agus Earrann 2.2.5: Coileanadh Algorithm. Chaidh fiosrachadh co-chòrdalachd ailtireachd ARM Cortex-M7 a chuir ris. |
17-Sultain-24 | 7 | Ro-ràdh Earrann ùraichte, Earrann 2.1: MotionEC thairisview, Earrann 2.2.1: Leabharlann MotionEC tuairisgeul, Earrann 2.2.2: MotionEC APIan, Earrann 2.2.5: Algorithm coileanadh, Earrann 3: Sample iarrtas, Earrann 3.1: Iarrtas MEMS-Studio |
FIOSRACHADH CUDROMACH - Leugh gu faiceallach
Tha STMicroelectronics NV agus na fo-chompanaidhean (“ST”) a’ gleidheadh na còrach atharrachaidhean, ceartachaidhean, leasachaidhean, atharrachaidhean agus leasachaidhean a dhèanamh air toraidhean ST agus/no air an sgrìobhainn seo aig àm sam bith gun rabhadh. Bu chòir do luchd-ceannach am fiosrachadh buntainneach as ùire fhaighinn mu thoraidhean ST mus cuir iad òrdughan. Bithear a’ reic thoraidhean ST a rèir teirmichean is cumhaichean reic ST a tha nan àite aig àm aithneachaidh an òrduigh.
Tha uallach air luchd-ceannach a-mhàin airson taghadh, taghadh agus cleachdadh thoraidhean ST agus chan eil ST a’ gabhail uallach sam bith airson taic tagraidh no dealbhadh thoraidhean ceannaichean.
Chan eil cead, soilleir no so-thuigsinn, airson còir seilbh inntleachdail sam bith air a thoirt seachad le ST an seo.
Bidh ath-reic thoraidhean ST le ullachaidhean eadar-dhealaichte bhon fhiosrachadh a tha air a mhìneachadh an seo a’ falmhachadh barantas sam bith a thug ST airson a leithid de thoradh.
Tha ST agus suaicheantas ST nan comharran-malairt de ST. Airson fiosrachadh a bharrachd mu chomharran-malairt ST, thoir sùil air www.st.com/trademarks. Is ann leis an luchd-seilbh aca a tha a h-uile ainm toraidh no seirbheis eile.
Tha fiosrachadh san sgrìobhainn seo a’ dol an àite agus a’ dol an àite fiosrachadh a chaidh a thoirt seachad roimhe seo ann an dreachan sam bith den sgrìobhainn seo.
© 2024 STMicroelectronics – Gach còir glèidhte
Sgrìobhainnean/Goireasan
![]() |
Tha ST X-CUBE-MEMS1 MotionEC na Leabharlann Middleware [pdfLeabhar-làimhe an t-Sealbhadair X-CUBE-MEMS1 Tha MotionEC na Leabharlann Middleware, X-CUBE-MEMS1, tha MotionEC na Leabharlann Middleware, Leabharlann Middleware, Leabharlann |