ST X - логоUM2225 байна
Хэрэглэгчийн гарын авлага

STM1Cube-д зориулсан X-CUBE-MEMS32 өргөтгөл дэх MotionEC бодит цагийн цахим луужингийн санг ашиглаж эхэлж байна.

Танилцуулга

MotionEC нь X-CUBE-MEMS1 программ хангамжийн дунд програмын номын сангийн бүрэлдэхүүн хэсэг бөгөөд STM3z2 дээр ажилладаг. Энэ нь төхөөрөмжийн өгөгдөл дээр үндэслэн төхөөрөмжийн чиг баримжаа, хөдөлгөөний төлөвийн талаарх бодит цагийн мэдээллийг өгдөг.
Энэ нь дараах гаралтыг өгдөг: төхөөрөмжийн чиг баримжаа (квартернион, Эйлерийн өнцөг), төхөөрөмжийн эргэлт (виртуал гироскопын функц), таталцлын вектор ба шугаман хурдатгал.
Энэ номын сан нь зөвхөн ST MEMS-тэй ажиллахад зориулагдсан.
Алгоритм нь статик номын сангийн форматаар өгөгдсөн бөгөөд ARM® Cortex®-M32+, ARM® Cortex®-M0, ARM® Cortex®-M3, ARM® Cortex®-M33 болон ARM® дээр суурилсан STM4 микроконтроллерууд дээр ашиглахаар бүтээгдсэн. Cortex®-M7 архитектурууд.
Энэ нь өөр өөр STM32 микроконтроллеруудыг зөөвөрлөхөд хялбар болгох үүднээс STM32Cube програм хангамжийн технологи дээр бүтээгдсэн.
Програм хангамж нь s-тэй хамт ирдэгampNUCLEO-F01RE, NUCLEO-U3ZI-Q, NUCLEO-L4RE эсвэл NUCLEO-L1 самбар дээрх X-NUCLEO-IKS02A1, X-NUCLEO-IKS401A575 эсвэл X-NUCLEO-IKS152A073 өргөтгөлийн самбар дээр ажиллаж байгаа хэрэгжүүлэлт.

Товчлол ба товчлол

Хүснэгт 1. Товчлолын жагсаалт

Товчлол Тодорхойлолт
API Хэрэглээний програмчлалын интерфейс
BSP Зөвлөлийн дэмжлэгийн багц
GUI График хэрэглэгчийн интерфэйс
ХАЛ Техник хангамжийн хийсвэрлэх давхарга
IDE Хөгжлийн нэгдсэн орчин

STM1Cube-д зориулсан X-CUBE-MEMS32 програм хангамжийн өргөтгөлийн MotionEC дунд програмын номын сан

2.1 MotionEC дууссанview
MotionEC номын сан нь X-CUBE-MEMS1 програм хангамжийн функцийг өргөжүүлдэг.
Номын сан нь хурдатгал хэмжигч, соронзон хэмжигчээс мэдээлэл авч, төхөөрөмжийн мэдээлэлд үндэслэн төхөөрөмжийн чиг баримжаа, хөдөлгөөний төлөвийн талаарх мэдээллийг өгдөг.
Номын сан нь зөвхөн ST MEMS-д зориулагдсан. Бусад MEMS мэдрэгчийг ашиглах үед үйл ажиллагаа, гүйцэтгэлд дүн шинжилгээ хийгээгүй бөгөөд баримт бичигт дурдсанаас эрс ялгаатай байж болно.
А сample хэрэгжүүлэлт нь NUCLEO-F01RE, NUCLEO-U3ZI-Q, NUCLEO-L4RE эсвэл NUCLEO-L1L-ийн хавтан дээр суурилуулсан X-NUCLEO-IKS02A1, X-NUCLEO-IKS401A575 болон X-NUCLEO-IKS152A073 өргөтгөлийн самбар дээр боломжтой.
2.2 MotionEC номын сан
MotionEC API-ийн функц, параметрүүдийг бүрэн тайлбарласан техникийн мэдээллийг MotionEC_Package.chm хөрвүүлсэн HTML-ээс олж болно. file Баримт бичгийн хавтсанд байрладаг.

2.2.1 MotionEC номын сангийн тодорхойлолт
MotionEC E-Compass номын сан нь акселерометр болон соронзон хэмжигчээс олж авсан өгөгдлийг удирддаг; Үүнд:

  • төхөөрөмжийн чиг баримжаа (квартернион, Эйлер өнцөг), төхөөрөмжийн эргэлт (виртуал гироскопын функц), таталцлын вектор ба шугаман хурдатгалын гаралт
  • зөвхөн хурдатгал хэмжигч болон соронзон хэмжүүрийн өгөгдөлд тулгуурласан функц
  • шаардлагатай хурдатгал хэмжигч ба соронзон хэмжүүрийн өгөгдөл samp100 Гц хүртэл давтамжтай
  • нөөцийн шаардлага:
    – Cortex-M0+: 3.7 кБ код, 0.1 кБ мэдээллийн санах ой
    – Cortex-M3: 3.8 кБ код, 0.1 кБ мэдээллийн санах ой
    – Cortex-M33: 2.8 кБ код, 0.1 кБ мэдээллийн санах ой
    – Cortex-M4: 2.9 кБ код, 0.1 кБ мэдээллийн санах ой
    – Cortex-M7: 2.8 кБ код, 0.1 кБ мэдээллийн санах ой
  • ARM Cortex M0+, Cortex-M3, Cortex-M33, Cortex-M4 болон Cortex M7 архитектурт ашиглах боломжтой.

2.2.2 MotionEC API-ууд
MotionEC API нь:

  • uint8_t MotionEC_GetLibVersion(char *хувилбар)
    – номын сангийн хувилбарыг татаж авна
    – *хувилбар нь 35 тэмдэгтээс бүрдэх массивын заагч юм
    – хувилбарын мөр дэх тэмдэгтүүдийн тоог буцаана
    • хүчингүй MotionEC_Initialize(MEC_mcu_type_t mcu_type, хөвөх давтамж)
    – MotionEC номын санг эхлүүлэх, дотоод механизмыг тохируулах ажлыг гүйцэтгэдэг.
    – mcu_type нь MCU-ийн төрөл юм:
    ◦ MFX_CM0P_MCU_STM32 нь стандарт STM32 MCU юм
    ◦ MFX_CM0P_MCU_BLUE_NRG1 нь BlueNRG-1
    ◦ MFX_CM0P_MCU_BLUE_NRG2 нь BlueNRG-2
    ◦ MFX_CM0P_MCU_BLUE_NRG_LP нь BlueNRG -LP
    – давтамж нь мэдрэгч sampдавтамж [Гц]

Жич: Энэ функцийг E-Compass номын санг ашиглахаас өмнө дуудах ёстой бөгөөд номын санг ашиглахаас өмнө STM32 микроконтроллерийн (RCC захын цагийг идэвхжүүлэх бүртгэлд) CRC модулийг идэвхжүүлсэн байх шаардлагатай.

  • хүчингүй MotionEC_SetFrequency(хөвөгч давтамж)
    – s-г тохируулнаampling давтамж (шүүлтийн параметрүүдийг өөрчлөх)
    – давтамж нь мэдрэгч sampling давтамж [Гц] • хүчингүй MotionEC_Run(MEC_input_t *өгөгдлийн_ин, MEC_output_t *өгөгдлийн_гаралтын)
    – E-Compass алгоритмыг ажиллуулдаг (хурдатгал хэмжигч ба соронзон хэмжүүрийн өгөгдлийг нэгтгэх)
    – *data_in нь оролтын өгөгдөл бүхий бүтэц рүү чиглүүлдэг заагч юм
    – MEC_input_t бүтцийн төрлийн параметрүүд нь:
    ◦ acc[3] нь ENU конвенцийн хурдатгал хэмжигч өгөгдлийн массив бөгөөд g-ээр хэмжигддэг.
    ◦ mag[3] нь μT/50-р хэмжигдсэн ENU конвенцид соронз хэмжигчээр тохируулсан өгөгдлийн массив юм.
    ◦ deltatime s нь секундээр хэмжигдсэн дельта хугацаа (өөрөөр хэлбэл хуучин болон шинэ өгөгдлийн багц хоорондын саатал) юм.
    – *data_out нь гаралтын өгөгдөл бүхий бүтэц рүү заагч юм
    – MEC_output_t бүтцийн төрлийн параметрүүд нь:
    ◦ quaternion[4] нь ENU конвенцид заасан кватернионыг агуулсан массив бөгөөд төхөөрөмжийн орон зай дахь 3Dangular чиглэлийг илэрхийлнэ; Элементүүдийн дараалал нь: X, Y, Z, W, үргэлж эерэг W элементтэй
    ◦ euler[3] нь ENU конвенцийн Эйлер өнцгийн массив бөгөөд төхөөрөмжийн орон зай дахь 3D өнцгийн чиглэлийг илэрхийлдэг; элементүүдийн дараалал нь: хазайлт, давирхай, өнхрөх, градусаар хэмжигддэг
    ◦ i_gyro[3] нь ENU конвенцийн өнцгийн хурдны массив бөгөөд dps-ээр хэмжигддэг виртуал гироскоп мэдрэгчийг төлөөлдөг.
    ◦ хүндийн хүч[3] нь ENU конвенцид г-ээр хэмжигдсэн хүндийн хүчний векторыг илэрхийлсэн хурдатгалын массив юм.
    ◦ шугаман[3] нь ENU конвенцийн хурдатгалын массив бөгөөд төхөөрөмжийн шугаман хурдатгалыг g-ээр хэмждэг.
    ST X CUBE MEMS1 MotionEC нь дунд програмын номын сан юм.
  • хүчингүй MotionEC_GetOrientationEnable(MEC_state_t *төлөв)
    – Эйлер өнцгийн тооцооны идэвхжүүлэх/идэвхгүй болгох төлөвийг авна
    – *төлөв нь одоогийн идэвхжүүлэх/идэвхгүй байдлын заагч юм
  • хүчингүй MotionEC_SetOrientationEnable(MEC_state_t төлөв)
    – Эйлер өнцгийн тооцооны идэвхжүүлэх/идэвхгүй байдлыг тохируулна
    – төлөв нь шинэ идэвхжүүлэх/идэвхгүй болгох төлөв юм
  •  хүчингүй MotionEC_GetVirtualGyroEnable(MEC_state_t *төлөв)
    – виртуал гироскопын тооцооллын идэвхжүүлэх/идэвхгүй болгох төлөвийг авна
    – *төлөв нь одоогийн идэвхжүүлэх/идэвхгүй байдлын заагч юм
  • хүчингүй MotionEC_SetVirtualGyroEnable(MEC_state_t төлөв)
    – виртуал гироскопын тооцооллын идэвхжүүлэх/идэвхгүй байдлыг тохируулна
    – төлөв нь шинэ идэвхжүүлэх/идэвхгүй болгох төлөв юм
  • хүчингүй MotionEC_GetGravityEnable(MEC_state_t *төлөв)
    – хүндийн хүчний векторын тооцооны идэвхжүүлэх/идэвхгүй болгох төлөвийг авна
    – *төлөв нь одоогийн идэвхжүүлэх/идэвхгүй байдлын заагч юм
  • хүчингүй MotionEC_SetGravityEnable(MEC_state_t төлөв)
    – хүндийн хүчний векторын тооцооны идэвхжүүлэх/идэвхгүй байдлыг тохируулна
    – төлөв нь шинэ идэвхжүүлэх/идэвхгүй болгох төлөв юм
  • хүчингүй болгох MotionEC_GetLinearAccEnable(MEC_state_t *төлөв)
    – шугаман хурдатгалын тооцооны идэвхжүүлэх/идэвхгүй болгох төлөвийг авна
    – *төлөв нь одоогийн идэвхжүүлэх/идэвхгүй байдлын заагч юм
  • хүчингүй MotionEC_SetLinearAccEnable(MEC_state_t төлөв)
    – шугаман хурдатгалын тооцооны идэвхжүүлэх/идэвхгүй байдлыг тохируулна
    – төлөв нь шинэ идэвхжүүлэх/идэвхгүй болгох төлөв юм

2.2.3 API урсгалын диаграм

ST X CUBE MEMS1 MotionEC нь дунд програмын номын сангийн дараалал юм

2.2.4 Демо код
Дараах үзүүлэх код нь хурдатгал хэмжигч болон соронзон хэмжигч мэдрэгчээс өгөгдлийг уншиж, ECompass өгөгдлийг (жишээ нь: quaternion, Euler өнцөг гэх мэт) авдаг.

ST X CUBE MEMS1 MotionEC нь дунд програмын номын сан- Демо код юмST X CUBE MEMS1 MotionEC нь дунд програмын номын сан- Демо код1 юм

2.2.5 Алгоритмын гүйцэтгэл
E-Compass алгоритм нь зөвхөн хурдатгал хэмжигч болон соронзон хэмжигчээс авсан өгөгдлийг ашигладаг. Энэ нь эрчим хүчний хэрэглээг багасгахын тулд бага давтамжтай (100 Гц хүртэл) ажилладаг.

ST X CUBE MEMS1 MotionEC нь дунд програмын номын сан- Өгөгдөл оруулах1

Sampпрограм

Хэрэглэгчийн програмуудыг бүтээхийн тулд MotionEC дунд програмыг хялбархан удирдах боломжтой; зэрэгample програмыг Програмын хавтсанд оруулсан болно.
Энэ нь X-NUCLEO-IKS401A575, X-NUCLEO-IKS152A073 эсвэл X-NUCLEO-IKS01 самбарт холбогдсон NUCLEO-F3RE, NUCLEO-U4ZI-Q, NUCLEO-L1RE эсвэл NUCLEO-L02RZ хөгжүүлэлтийн самбар дээр ажиллах зориулалттай.

ST X CUBE MEMS1 MotionEC нь дунд програмын номын сангийн адаптер юм

Уг програм нь төхөөрөмжийн чиг баримжаа, эргэлтийг бодит цаг хугацаанд таньдаг. Өгөгдлийг GUI-ээр дамжуулан харуулах боломжтой.
Алгоритм нь дараах гаралтыг өгдөг: төхөөрөмжийн чиг баримжаа (квартернион, Эйлерийн өнцөг), төхөөрөмжийн эргэлт (виртуал гироскопын функц), таталцлын вектор ба шугаман хурдатгал.
3.1 MEMS-Studio програм
Sample програм нь MEMS-Studio програмыг ашигладаг бөгөөд үүнийг эндээс татаж авах боломжтой www.st.com.
Алхам 1. Шаардлагатай драйверуудыг суулгаж, тохирох өргөтгөлийн самбар бүхий STM32 Nucleo хавтанг компьютерт холбосон эсэхийг шалгаарай.
Алхам 2. Үндсэн програмын цонхыг нээхийн тулд MEMS-Studio програмыг ажиллуулна уу.
Хэрэв дэмжигдсэн програм хангамж бүхий STM32 Nucleo хавтанг компьютерт холбосон бол тохирох COM портыг автоматаар илрүүлнэ. Үнэлгээний самбартай холбогдохын тулд [Холбох] товчийг дарна уу.

ST X CUBE MEMS1 MotionEC нь дунд програмын сан-холбогч юм

Алхам 3. Дэмжигдсэн програм хангамж бүхий STM32 Nucleo самбарт холбогдсон үед [Номын сангийн үнэлгээ] таб нээгдэнэ.
Өгөгдлийн урсгалыг эхлүүлэх, зогсоохын тулд тохирох [Start]-г сэлгэнэ үү. ST X CUBE MEMS1 MotionEC нь дунд програмын номын сангийн дүрс юм эсвэл [Зогсоох] ST X CUBE MEMS1 MotionEC нь дунд програмын номын сан юм- icon1 гадна босоо хэрэгслийн самбар дээрх товчлуур.
Холбогдсон мэдрэгчээс ирж буй өгөгдөл нь байж болно viewдотоод босоо хэрэгслийн самбар дээрх [Өгөгдлийн хүснэгт] табыг сонго.

ST X CUBE MEMS1 MotionEC нь дунд програмын номын сан-өгөгдлийн хүснэгт юм

Алхам 4. Энэ номын сангийн тусгай хуудсыг нээхийн тулд [Цахим луужин] дээр дарна уу.

ST X CUBE MEMS1 MotionEC нь дунд програмын номын сан-луужин юм

Дээрх зураг нь STM32 Nucleo график загварыг харуулж байна. Загварын чиг баримжаа болон эргэлтийг алгоритмаар тооцсон E-Compass өгөгдөл (кватернион) дээр үндэслэсэн болно.
Төхөөрөмжийн бодит хөдөлгөөнийг график загвартай зэрэгцүүлэхийн тулд төхөөрөмжийг дэлгэц рүү чиглүүлж, [Загварыг дахин тохируулах] товчийг дарна уу.
Гарчгийн утга нь төхөөрөмжийн бодит гарчгийг илэрхийлнэ.
Төхөөрөмжийг дээш эсвэл доош чиглүүлэх нь (ENU лавлах хүрээний дээш тэнхлэгийн дагуу, ±5 градусын хүлцэлтэй) гарчигт N/A утгыг өгнө: төхөөрөмж аль үндсэн цэг рүү чиглэж байгааг ялгах боломжгүй.
Сайн чанарын утга нь 0-ээс 3 утгыг өгдөг бөгөөд энэ нь соронзон хэмжүүрийн тохируулгатай холбоотой: утга өндөр байх тусам E-Compass өгөгдлийн алгоритмын үр дүн сайн байх болно.
Алхам 5. [Хадгалах File] өгөгдлийн бүртгэлийн тохиргооны цонхыг нээх. Мэдрэгч болон цахим луужингийн өгөгдлийг сонгоно уу file. Та харгалзах товчлуур дээр дарж хадгалахаа эхлүүлэх эсвэл зогсоох боломжтой.

ST X CUBE MEMS1 MotionEC нь дунд програмын номын сан юм. Хадгалах File

Алхам 6. Мэдээлэл оруулах горимыг ашиглан өмнө нь олж авсан өгөгдлийг номын сан руу илгээж, үр дүнг хүлээн авах боломжтой. Зориулалтын хэсгийг нээхийн тулд босоо хэрэгслийн самбар дээрх [Data Injection] табыг сонго view Энэ функцийн хувьд.

ST X CUBE MEMS1 MotionEC нь дунд програмын номын сан- Өгөгдөл оруулах

Алхам 7. Сонгохын тулд [Browse] товчийг дарна уу file CSV форматаар өмнө нь авсан өгөгдөлтэй.
Өгөгдлийг одоогийн байдлаар хүснэгтэд ачаалах болно view.
Бусад товчлуурууд идэвхтэй болно. Та дарж болно:
– Програм хангамжийн офлайн горимыг асаах/унтраах боломжтой [Оффлайн горим] товчлуур (өмнө нь авсан өгөгдлийг ашиглах горим).
– [Start]/[Stop]/[Step]/[Repeat] товчлууруудаар MEMS-Studio-с номын сан руу өгөгдлийн хангамжийг удирдана.

Лавлагаа

Дараах бүх эх сурвалжийг www.st.com дээр чөлөөтэй авах боломжтой.

  1. UM1859: STM1Cube-д зориулсан X-CUBE-MEMS32 хөдөлгөөний MEMS болон байгаль орчны мэдрэгчийн программ хангамжийг өргөтгөж эхэлж байна.
  2.  UM1724: STM32 Nucleo-64 хавтан (MB1136)
  3. UM3233: MEMS-Studio-г ашиглаж эхэлж байна

Хяналтын түүх

Хүснэгт 4. Баримт бичгийг засварласан түүх

Огноо Хувилбар Өөрчлөлтүүд
18 оны тавдугаар сарын 17 1 Анхны хувилбар.
25-р сарын 18-XNUMX 2 NUCLEO-L152RE хөгжүүлэлтийн самбар болон Хүснэгт 2-т лавлагаа нэмсэн.
Хугацаа (μs) алгоритм.
21 оны 18-р сарын XNUMX 3 Шинэчлэгдсэн танилцуулга ба 2.1-р хэсэг MotionEC дууссанview.
26-18-XNUMX 4 Нэмэгдсэн Хүснэгт 3. Cortex -M0+: өнгөрсөн хугацаа (µs) алгоритм. ARM®-ийн лавлагаа нэмсэн
Cortex® – M0+ ба NUCLEO-L073RZ хөгжүүлэлтийн самбар.
19-19-р сарын XNUMX 5 Шинэчлэгдсэн Зураг 1. ENU лавлах хүрээ, Хүснэгт 2. Cortex -M4 ба Cortex-M3: өнгөрсөн хугацаа (µs) алгоритм, Хүснэгт 3.
Cortex -M0+: өнгөрсөн хугацаа (μs) алгоритм, Зураг 3. STM32-д холбогдсон мэдрэгчийг өргөтгөх самбарын адаптер
Nucleo, Зураг 4. Unicleo үндсэн цонх, Зураг 5. Хэрэглэгчийн мессеж таб, Зураг 6. E-Compass цонх, Зураг 7. Datalog цонх. X-NUCLEO-IKS01A3 өргөтгөлийн хавтангийн нийцтэй байдлын мэдээллийг нэмсэн.
25 оны 20-р сарын XNUMX 6 Шинэчлэгдсэн танилцуулга, Хэсэг 2.2.1: MotionEC номын сангийн тайлбар, Хэсэг 2.2.5: Алгоритм гүйцэтгэл.
ARM Cortex-M7 архитектурын нийцтэй байдлын мэдээллийг нэмсэн.
17-24-XNUMX 7 Шинэчлэгдсэн хэсгийн танилцуулга,
Хэсэг 2.1: MotionEC дууссанview,
Хэсэг 2.2.1: MotionEC номын сан
тайлбар, Хэсэг 2.2.2: MotionEC
APIs, Хэсэг 2.2.5: Алгоритм
гүйцэтгэл, 3-р хэсэг: Сample
програм, Хэсэг 3.1: MEMS-Studio програм

ЧУХАЛ МЭДЭГДЭЛ – АНХААРАЛТАЙ уншина уу
STMicroelectronics NV болон түүний охин компаниуд (“ST”) нь ST бүтээгдэхүүн болон/эсвэл энэхүү баримт бичигт ямар ч үед мэдэгдэлгүйгээр өөрчлөлт, залруулга, сайжруулалт, өөрчлөлт, сайжруулалт хийх эрхтэй. Худалдан авагчид захиалга өгөхөөс өмнө ST бүтээгдэхүүний талаарх хамгийн сүүлийн үеийн мэдээллийг авах ёстой. ST-ийн бүтээгдэхүүнийг захиалгын хүлээн зөвшөөрөгдөх үеийн ST-ийн борлуулалтын нөхцөл, нөхцлийн дагуу зардаг.
Худалдан авагчид ST бүтээгдэхүүний сонголт, сонголт, ашиглалтыг дангаараа хариуцах бөгөөд ST нь хэрэглээний тусламж, худалдан авагчийн бүтээгдэхүүний дизайныг хариуцахгүй.
СТ-ээс оюуны өмчийн аливаа эрхийг шууд болон далд хэлбэрээр олгох ямар ч тусгай зөвшөөрөл олгохгүй.
Энд дурдсан мэдээллээс өөр заалт бүхий ST бүтээгдэхүүнийг дахин худалдах нь тухайн бүтээгдэхүүнд ST-аас олгосон аливаа баталгааг хүчингүй болгоно.
ST ба ST лого нь ST-ийн худалдааны тэмдэг юм. ST барааны тэмдгийн талаарх нэмэлт мэдээллийг эндээс авна уу www.st.com/trademarks. Бусад бүх бүтээгдэхүүн, үйлчилгээний нэр нь тус тусын эзэмшигчийн өмч юм.
Энэ баримт бичигт байгаа мэдээлэл нь энэ баримт бичгийн өмнөх хувилбаруудад өгсөн мэдээллийг орлож, орлоно.

© 2024 STMicroelectronics – Бүх эрх хуулиар хамгаалагдсан

Баримт бичиг / нөөц

ST X-CUBE-MEMS1 MotionEC нь дунд програмын номын сан юм [pdf] Эзэмшигчийн гарын авлага
X-CUBE-MEMS1 MotionEC нь дунд програмын номын сан, X-CUBE-MEMS1, MotionEC нь дунд програмын номын сан, дунд програмын номын сан, номын сан юм

Лавлагаа

Сэтгэгдэл үлдээгээрэй

Таны имэйл хаягийг нийтлэхгүй. Шаардлагатай талбаруудыг тэмдэглэсэн *