UM2225
Llawlyfr defnyddiwr
Dechrau arni gyda llyfrgell E-Compass amser real MotionEC yn ehangiad X-CUBE-MEMS1 ar gyfer STM32Cube
Rhagymadrodd
Mae'r MotionEC yn elfen llyfrgell nwyddau canol o feddalwedd X-CUBE-MEMS1 ac mae'n rhedeg ar STM3z2. Mae'n darparu gwybodaeth amser real am gyfeiriadedd dyfais a statws symud yn seiliedig ar ddata o ddyfais.
Mae'n darparu'r allbynnau canlynol: cyfeiriadedd dyfais (cwaternau, onglau Euler), cylchdroi dyfais (ymarferoldeb gyrosgop rhithwir), fector disgyrchiant a chyflymiad llinellol.
Bwriad y llyfrgell hon yw gweithio gyda ST MEMS yn unig.
Darperir yr algorithm mewn fformat llyfrgell sefydlog ac fe'i cynlluniwyd i'w ddefnyddio ar ficroreolyddion STM32 yn seiliedig ar ARM® Cortex®-M0+, ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 ac ARM® Pensaernïaeth Cortex®-M7.
Mae wedi'i adeiladu ar ben technoleg meddalwedd STM32Cube i hwyluso hygludedd ar draws gwahanol ficroreolyddion STM32.
Daw'r meddalwedd gyda sampgyda gweithrediad yn rhedeg ar X-NUCLEO-IKS01A3 , X-NUCLEO-IKS4A1 neu X-NUCLEO-IKS02A1 bwrdd ehangu ar fwrdd datblygu NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE neu NUCLEO-L073RZ.
Acronymau a byrfoddau
Tabl 1. Rhestr o acronymau
Acronym | Disgrifiad |
API | Rhyngwyneb rhaglennu cais |
BSP | Pecyn cymorth y Bwrdd |
GUI | Rhyngwyneb defnyddiwr graffigol |
HAL | Haen tynnu caledwedd |
IDE | Amgylchedd datblygu integredig |
Llyfrgell nwyddau canol MotionEC yn ehangu meddalwedd X-CUBE-MEMS1 ar gyfer STM32Cube
2.1 CynnigEC drosoddview
Mae llyfrgell MotionEC yn ehangu ymarferoldeb meddalwedd X-CUBE-MEMS1.
Mae'r llyfrgell yn caffael data o'r cyflymromedr a'r magnetomedr ac yn darparu gwybodaeth am gyfeiriadedd dyfais a statws symud yn seiliedig ar ddata o ddyfais.
Mae'r llyfrgell wedi'i chynllunio ar gyfer ST MEMS yn unig. Nid yw ymarferoldeb a pherfformiad wrth ddefnyddio synwyryddion MEMS eraill yn cael eu dadansoddi a gallant fod yn sylweddol wahanol i'r hyn a ddisgrifir yn y ddogfen.
Mae sampMae gweithredu ar gael ar fwrdd ehangu X-NUCLEO-IKS01A3 , X-NUCLEO-IKS4A1 a X-NUCLEO-IKS02A1, wedi'i osod ar fwrdd datblygu NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE neu NUCLEO-L073R.
2.2 Llyfrgell MotionEC
Gellir dod o hyd i wybodaeth dechnegol sy'n disgrifio swyddogaethau a pharamedrau APIs MotionEC yn llawn yn HTML a luniwyd gan MotionEC_Package.chm file wedi'i leoli yn y ffolder Dogfennaeth.
2.2.1 Disgrifiad o lyfrgell MotionEC
Mae llyfrgell E-Compass MotionEC yn rheoli data a gafwyd o'r cyflymromedr a'r magnetomedr; mae'n cynnwys:
- cyfeiriadedd dyfais (cwaternynau, onglau Euler), cylchdroi dyfais (swyddogaeth gyrosgop rhithwir), fector disgyrchiant ac allbynnau cyflymiad llinellol
- ymarferoldeb yn seiliedig ar ddata'r cyflymromedr a'r magnetomedr yn unig
- data cyflymromedr a magnetomedr gofynnol sampamledd ling o hyd at 100 Hz
- gofynion adnoddau:
– Cortex-M0+: 3.7 kB o god a 0.1 kB o gof data
- Cortex-M3: 3.8 kB o god a 0.1 kB o gof data
- Cortex-M33: 2.8 kB o god a 0.1 kB o gof data
- Cortex-M4: 2.9 kB o god a 0.1 kB o gof data
- Cortex-M7: 2.8 kB o god a 0.1 kB o gof data - ar gael ar gyfer pensaernïaeth ARM Cortex M0+, Cortex-M3, Cortex-M33, Cortex-M4 a Cortex M7
2.2.2 MotionEC APIs
Yr API MotionEC yw:
- uint8_t MotionEC_GetLibVersion(tor *fersiwn)
- yn adfer fersiwn y llyfrgell
– *fersiwn yn bwyntydd i amrywiaeth o 35 nod
– yn dychwelyd nifer y cymeriadau yn y llinyn fersiwn
• gwagle MotionEC_Initialize(MEC_mcu_type_t mcu_type, arnofio freq)
– yn perfformio cychwyniad llyfrgell MotionEC a sefydlu'r mecanwaith mewnol.
– mcu_type yw'r math o MCU:
◦ Mae MFX_CM0P_MCU_STM32 yn MCU safonol STM32
◦ Mae MFX_CM0P_MCU_BLUE_NRG1 yn BlueNRG-1
◦ Mae MFX_CM0P_MCU_BLUE_NRG2 yn BlueNRG-2
◦ Mae MFX_CM0P_MCU_BLUE_NRG_LP yn BlueNRG -LP
– freq yw'r synhwyrydd sampamledd ling [Hz]
Nodyn: Rhaid galw'r swyddogaeth hon cyn defnyddio'r llyfrgell E-Compass ac mae'n rhaid galluogi'r modiwl CRC yn microreolydd STM32 (yng nghofrestr galluogi cloc ymylol RCC) cyn defnyddio'r llyfrgell
- gwagle MotionEC_SetFrequency(float freq)
- gosod yr sampamledd ling (addasu'r paramedrau hidlo)
– freq yw'r synhwyrydd sampamledd ling [Hz] • gwagle MotionEC_Run(MEC_input_t *data_in, MEC_output_t *data_out)
- yn rhedeg yr algorithm E-Compass (cyfuniad data cyflymromedr a magnetomedr)
– *mae data_in yn bwyntydd i strwythur gyda data mewnbwn
– y paramedrau ar gyfer y math o strwythur MEC_input_t yw:
Mae ◦ acc[3] yn amrywiaeth o ddata cyflymromedr yng nghonfensiwn ENU, wedi'i fesur mewn g
Mae ◦ mag[3] yn amrywiaeth o ddata magnetomedr wedi'i raddnodi yng nghonfensiwn ENU, wedi'i fesur mewn μT/50
◦ amser delta s yw'r amser delta (hy, oedi rhwng set ddata hen a newydd) wedi'i fesur mewn s
– *data_out yn bwyntydd i strwythur gyda data allbwn
– y paramedrau ar gyfer y math o strwythur MEC_output_t yw:
◦ quaternion[4] yw arae sy'n cynnwys cwaternyn yng nghonfensiwn ENU, sy'n cynrychioli cyfeiriadedd 3Donglog y ddyfais yn y gofod; trefn yr elfennau yw: X, Y, Z, W, gydag elfen gadarnhaol bob amser W
◦ Mae euler[3] yn amrywiaeth o onglau Euler yng nghonfensiwn ENU, sy'n cynrychioli cyfeiriadedd onglog 3D y ddyfais yn y gofod; trefn yr elfennau yw: iaw, traw, rholio, wedi'i fesur yn deg
◦ Mae i_gyro[3] yn amrywiaeth o gyfraddau onglog yng nghonfensiwn ENU, sy'n cynrychioli synhwyrydd gyrosgop rhithwir, wedi'i fesur mewn dps
◦ Mae disgyrchiant[3] yn amrywiaeth o gyflymiadau yng nghonfensiwn ENU, sy'n cynrychioli'r fector disgyrchiant, wedi'i fesur mewn g
Mae ◦ llinellol[3] yn amrywiaeth o gyflymiadau yng nghonfensiwn ENU, sy'n cynrychioli cyflymiad llinol y ddyfais, wedi'i fesur mewn g
- gwag MotionEC_GetOrientationEnable(MEC_state_t *cyflwr)
– yn cael cyflwr galluogi/analluogi cyfrifiad ongl Euler
– *mae'r cyflwr yn bwyntydd i'r cyflwr galluogi/analluogi presennol - gwagle MotionEC_SetOrientationEnable(MEC_state_t state)
– yn gosod cyflwr galluogi/analluogi cyfrifiad ongl Euler
– cyflwr yw'r cyflwr galluogi/analluogi newydd i'w osod - gwag MotionEC_GetVirtualGyroEnable(MEC_state_t *state)
- yn cael cyflwr galluogi / analluogi'r cyfrifiad gyrosgop rhithwir
– *mae'r cyflwr yn bwyntydd i'r cyflwr galluogi/analluogi presennol - gwag MotionEC_SetVirtualGyroEnable(MEC_state_t state)
- yn gosod cyflwr galluogi / analluogi'r cyfrifiad gyrosgop rhithwir
– cyflwr yw'r cyflwr galluogi/analluogi newydd i'w osod - gwagle MotionEC_GetGravityEnable(MEC_state_t *state)
– yn cael cyflwr galluogi/analluogi cyfrifiad fector disgyrchiant
– *mae'r cyflwr yn bwyntydd i'r cyflwr galluogi/analluogi presennol - gwagle MotionEC_SetGravityEnable(MEC_state_t state)
– yn gosod cyflwr galluogi/analluogi cyfrifiad fector disgyrchiant
– cyflwr yw'r cyflwr galluogi/analluogi newydd i'w osod - gwag MotionEC_GetLinearAccEnable(MEC_state_t *state)
– yn cael cyflwr galluogi/analluogi'r cyfrifiad cyflymiad llinol
– *mae'r cyflwr yn bwyntydd i'r cyflwr galluogi/analluogi presennol - gwag MotionEC_SetLinearAccEnable(MEC_state_t state)
– yn gosod cyflwr galluogi/analluogi'r cyfrifiad cyflymiad llinol
– cyflwr yw'r cyflwr galluogi/analluogi newydd i'w osod
2.2.3 Siart llif API
2.2.4 Cod demo
Mae'r cod arddangos canlynol yn darllen data o'r synwyryddion cyflymromedr a magnetomedr ac yn cael y data ECompass (hy, quaternion, onglau Euler, ac ati).
2.2.5 Perfformiad algorithm
Mae'r algorithm E-Compass yn defnyddio data o'r cyflymromedr a'r magnetomedr yn unig. Mae'n rhedeg ar amledd isel (hyd at 100 Hz) i leihau'r defnydd o bŵer.
Sampgyda cais
Gellir trin offer canol MotionEC yn hawdd i adeiladu cymwysiadau defnyddwyr; felampdarperir le application yn y ffolder Cais.
Fe'i cynlluniwyd i redeg ar fwrdd datblygu NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE neu NUCLEO-L073RZ sy'n gysylltiedig â bwrdd ehangu X-NUCLEO-IKS01A3, X-NUCLEO-IKS4A1 neu X-NUCLEO-IKS02A1.
Mae'r cais yn cydnabod cyfeiriadedd dyfais a chylchdroi mewn amser real. Gellir arddangos y data trwy GUI.
Mae'r algorithm yn darparu'r allbynnau canlynol: cyfeiriadedd dyfais (cwaternau, onglau Euler), cylchdroi dyfais (swyddogaeth gyrosgop rhithwir), fector disgyrchiant a chyflymiad llinol.
3.1 MEMS-Cymhwysiad Stiwdio
Y sampMae le application yn defnyddio'r cymhwysiad MEMS-Studio, y gellir ei lawrlwytho o www.st.com.
Cam 1. Sicrhewch fod y gyrwyr angenrheidiol yn cael eu gosod a bod y bwrdd Niwcleo STM32 gyda bwrdd ehangu priodol wedi'i gysylltu â'r PC.
Cam 2. Lansiwch y cymhwysiad MEMS-Studio i agor y brif ffenestr ymgeisio.
Os yw bwrdd Niwcleo STM32 gyda firmware â chymorth wedi'i gysylltu â'r PC, mae'r porthladd COM priodol yn cael ei ganfod yn awtomatig. Pwyswch y botwm [Cysylltu] i sefydlu cysylltiad â'r bwrdd gwerthuso.
Cam 3. Pan fydd wedi'i gysylltu â bwrdd Niwcleo STM32 gyda thab cadarnwedd a gefnogir [Gwerthusiad Llyfrgell] yn cael ei agor.
I ddechrau a stopio ffrydio data, toglo'r [Cychwyn] priodol neu [Stop]
botwm ar y bar offer fertigol allanol.
Gall y data sy'n dod o'r synhwyrydd cysylltiedig fod viewed yn dewis y tab [Tabl Data] ar y bar offer fertigol mewnol.
Cam 4. Cliciwch ar yr [E-Compass] i agor y dudalen bwrpasol ar gyfer y llyfrgell hon.
Mae'r ffigur uchod yn dangos model graffigol Niwcleo STM32. Mae cyfeiriadedd a chylchdroi'r model yn seiliedig ar ddata E-Compass (cwaternynau) a gyfrifir gan yr algorithm.
I alinio symudiad y ddyfais go iawn â'r model graffigol, pwyntiwch y ddyfais tuag at y sgrin a gwthiwch y [model Ailosod].
Mae'r gwerth pennawd yn cynrychioli'r pennawd dyfais go iawn.
Mae pwyntio'r ddyfais yn syth i fyny neu i lawr (ar hyd echel Up ffrâm gyfeirio ENU, gyda goddefgarwch ±5 gradd) yn rhoi gwerth N/A ar gyfer y pennawd: nid yw'n bosibl gwahaniaethu at ba bwynt cardinal y mae'r ddyfais yn cyfeirio ato.
Mae'r gwerth daioni yn rhoi 0 i 3 o werthoedd ac mae'n gysylltiedig â graddnodi'r magnetomedr: po uchaf yw'r gwerth, y gorau yw canlyniadau'r algorithm data E-Compass.
Cam 5. Cliciwch ar [Cadw i File] i agor y ffenestr ffurfweddu logio data. Dewiswch y data synhwyrydd ac E-Compass i'w cadw yn y file. Gallwch chi ddechrau neu stopio arbed trwy glicio ar y botwm cyfatebol.
Cam 6. Gellir defnyddio modd Chwistrellu Data i anfon y data a gafwyd yn flaenorol i'r llyfrgell a derbyn y canlyniad. Dewiswch y tab [ Chwistrelliad Data ] ar y bar offer fertigol i agor yr un pwrpasol view ar gyfer y swyddogaeth hon.
Cam 7. Cliciwch ar y botwm [Pori] i ddewis y file gyda'r data a gasglwyd yn flaenorol mewn fformat CSV.
Bydd y data yn cael ei lwytho i mewn i'r tabl yn y cerrynt view.
Bydd botymau eraill yn dod yn weithredol. Gallwch glicio ar:
– botwm [Modd All-lein] i droi'r modd all-lein firmware ymlaen / i ffwrdd (modd gan ddefnyddio'r data a ddaliwyd yn flaenorol).
– [Cychwyn]/[Stop]/[Cam]/[Ailadrodd] botymau i reoli'r porthiant data o MEMS-Studio i'r llyfrgell.
Cyfeiriadau
Mae'r holl adnoddau canlynol ar gael am ddim ar www.st.com.
- UM1859: Dechrau arni gyda'r cynnig X-CUBE-MEMS1 MEMS ac ehangu meddalwedd synhwyrydd amgylcheddol ar gyfer STM32Cube
- UM1724: Byrddau Niwcleo-32 STM64 (MB1136)
- UM3233: Dechrau arni gyda MEMS-Studio
Hanes adolygu
Tabl 4 . Hanes adolygu dogfennau
Dyddiad | Fersiwn | Newidiadau |
18-Mai-17 | 1 | Rhyddhad cychwynnol. |
25-Ionawr-18 | 2 | Ychwanegwyd cyfeiriadau at fwrdd datblygu NUCLEO-L152RE a Thabl 2. Algorithm amser a aeth heibio (μs). |
21-Maw-18 | 3 | Cyflwyniad wedi'i Ddiweddaru ac Adran 2.1 CynnigEC drosoddview. |
26-Tachwedd-18 | 4 | Ychwanegwyd Tabl 3. Cortecs -M0+: algorithm amser a aeth heibio (µs). Ychwanegwyd cyfeiriadau at ARM® Cortex® - bwrdd datblygu M0+ a NUCLEO-L073RZ. |
19-Chwefror-19 | 5 | Ffigur 1 wedi'i ddiweddaru. Ffrâm gyfeirio ENU, Tabl 2. Cortex -M4 a Cortex-M3: algorithm amser a aeth heibio (µs), Tabl 3. Cortex -M0+: algorithm amser a aeth heibio (µs), Ffigur 3. Addasydd bwrdd ehangu synhwyrydd wedi'i gysylltu â'r STM32 Niwcleo, Ffigur 4. Prif ffenestr Unicleo, Ffigur 5. tab Negeseuon Defnyddiwr, Ffigur 6. Ffenestr E-Compass a Ffigur 7. ffenestr Datalog. Ychwanegwyd gwybodaeth gydnawsedd bwrdd ehangu X-NUCLEO-IKS01A3. |
25-Maw-20 | 6 | Cyflwyniad wedi'i Ddiweddaru, Adran 2.2.1: Disgrifiad o lyfrgell MotionEC ac Adran 2.2.5: Perfformiad Algorithm. Ychwanegwyd gwybodaeth am gydnawsedd pensaernïaeth ARM Cortex-M7. |
17-Medi-24 | 7 | Cyflwyniad Adran wedi'i Ddiweddaru, Adran 2.1: MotionEC drosoddview, Adran 2.2.1: Llyfrgell MotionEC disgrifiad, Adran 2.2.2: CynnigEC APIs, Adran 2.2.5: Algorithm perfformiad, Adran 3: Sample cais, Adran 3.1: cais MEMS-Stiwdio |
HYSBYSIAD PWYSIG – DARLLENWCH YN OFALUS
Mae STMicroelectronics NV a'i is-gwmnïau (“ST”) yn cadw'r hawl i wneud newidiadau, cywiriadau, gwelliannau, addasiadau a gwelliannau i gynhyrchion ST a/neu i'r ddogfen hon ar unrhyw adeg heb rybudd. Dylai prynwyr gael y wybodaeth berthnasol ddiweddaraf am gynhyrchion ST cyn gosod archebion. Gwerthir cynhyrchion ST yn unol â thelerau ac amodau gwerthu ST sydd ar waith ar adeg cydnabod yr archeb.
Prynwyr yn unig sy'n gyfrifol am ddewis, dewis a defnyddio cynhyrchion ST ac nid yw ST yn cymryd unrhyw atebolrwydd am gymorth ymgeisio neu ddyluniad cynhyrchion prynwyr.
Ni roddir trwydded, yn benodol nac yn oblygedig, i unrhyw hawl eiddo deallusol gan ST yma.
Bydd ailwerthu cynhyrchion ST gyda darpariaethau gwahanol i'r wybodaeth a nodir yma yn dileu unrhyw warant a roddir gan ST ar gyfer cynnyrch o'r fath.
Mae ST a'r logo ST yn nodau masnach ST. I gael gwybodaeth ychwanegol am nodau masnach ST, cyfeiriwch at www.st.com/trademarks. Mae pob enw cynnyrch neu wasanaeth arall yn eiddo i'w perchnogion priodol.
Mae gwybodaeth yn y ddogfen hon yn disodli ac yn disodli gwybodaeth a ddarparwyd yn flaenorol mewn unrhyw fersiynau blaenorol o'r ddogfen hon.
© 2024 STMicroelectroneg – Cedwir pob hawl
Dogfennau / Adnoddau
![]() |
ST X-CUBE-MEMS1 Mae MotionEC yn Llyfrgell Middleware [pdfLlawlyfr y Perchennog X-CUBE-MEMS1 Mae MotionEC yn Llyfrgell Middleware, X-CUBE-MEMS1, MotionEC yn Llyfrgell Middleware, Llyfrgell Middleware, Llyfrgell |