ST X - logotipUM2225
Foydalanuvchi uchun qo'llanma

STM1Cube uchun X-CUBE-MEMS32 kengaytmasida MotionEC real vaqtda E-Compass kutubxonasidan foydalanishni boshlash

Kirish

MotionEC X-CUBE-MEMS1 dasturiy ta'minotining o'rta dasturiy kutubxona komponenti bo'lib, STM3z2 da ishlaydi. U real vaqt rejimida qurilmadan olingan maʼlumotlar asosida qurilma yoʻnalishi va harakat holati haqida maʼlumot beradi.
U quyidagi natijalarni beradi: qurilma orientatsiyasi (kvarternionlar, Eyler burchaklari), qurilma aylanishi (virtual giroskop funksiyasi), tortishish vektori va chiziqli tezlashtirish.
Bu kutubxona faqat ST MEMS bilan ishlash uchun moʻljallangan.
Algoritm statik kutubxona formatida taqdim etilgan va ARM® Cortex®-M32+, ARM® Cortex®-M0, ARM® Cortex®-M3, ARM® Cortex®-M33 va ARM® asosidagi STM4 mikrokontrollerlarida foydalanish uchun mo'ljallangan. Cortex®-M7 arxitekturasi.
U turli STM32 mikrokontrollerlari orqali ko'chirishni osonlashtirish uchun STM32Cube dasturiy ta'minot texnologiyasi ustiga qurilgan.
Dasturiy ta'minot s bilan birga keladiampNUCLEO-F01RE, NUCLEO-U3ZI-Q, NUCLEO-L4RE yoki NUCLEO-L1 ishlanmalarida X-NUCLEO-IKS02A1, X-NUCLEO-IKS401A575 yoki X-NUCLEO-IKS152A073 kengaytirish platalarida ishlaydigan le amalga oshirish.

Qisqartmalar va qisqartmalar

Jadval 1. Qisqartmalar ro'yxati

Qisqartma Tavsif
API Ilova dasturlash interfeysi
BSP Kengash qo'llab-quvvatlash to'plami
GUI Grafik foydalanuvchi interfeysi
HAL Uskuna abstraktsiya qatlami
IDE Integratsiyalashgan rivojlanish muhiti

STM1Cube uchun X-CUBE-MEMS32 dasturiy ta'minotini kengaytirishdagi MotionEC o'rta dastur kutubxonasi

2.1 MotionEC tugadiview
MotionEC kutubxonasi X-CUBE-MEMS1 dasturiy ta'minotining funksiyalarini kengaytiradi.
Kutubxona akselerometr va magnitometrdan ma'lumotlarni oladi va qurilmadan olingan ma'lumotlar asosida qurilma yo'nalishi va harakat holati haqida ma'lumot beradi.
Kutubxona faqat ST MEMS uchun mo'ljallangan. Boshqa MEMS sensorlaridan foydalanishda funksionallik va unumdorlik tahlil qilinmaydi va hujjatda tavsiflanganidan sezilarli darajada farq qilishi mumkin.
A sample amalga oshirish X-NUCLEO-IKS01A3 , X-NUCLEO-IKS4A1 va X-NUCLEO-IKS02A1 kengaytirish platalarida mavjud bo'lib, ular NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE- yoki NUCLEO-L073L-boardga o'rnatilgan.
2.2 MotionEC kutubxonasi
MotionEC API funksiyalari va parametrlarini toʻliq tavsiflovchi texnik maʼlumotlarni MotionEC_Package.chm tuzilgan HTML da topish mumkin. file Hujjatlar papkasida joylashgan.

2.2.1 MotionEC kutubxonasi tavsifi
MotionEC E-Compass kutubxonasi akselerometr va magnitometrdan olingan ma'lumotlarni boshqaradi; u xususiyatlari:

  • qurilma orientatsiyasi (kvarternionlar, Eyler burchaklari), qurilma aylanishi (virtual giroskop funksiyasi), tortishish vektori va chiziqli tezlashtirish chiqishlari
  • faqat akselerometr va magnitometr ma'lumotlariga asoslangan funksionallik
  • zarur akselerometr va magnitometr ma'lumotlar samp100 Gts gacha bo'lgan ling chastotasi
  • Resurs talablari:
    – Cortex-M0+: 3.7 kB kod va 0.1 kB ma’lumot xotirasi
    – Cortex-M3: 3.8 kB kod va 0.1 kB ma’lumot xotirasi
    – Cortex-M33: 2.8 kB kod va 0.1 kB ma’lumot xotirasi
    – Cortex-M4: 2.9 kB kod va 0.1 kB ma’lumot xotirasi
    – Cortex-M7: 2.8 kB kod va 0.1 kB ma’lumot xotirasi
  • ARM Cortex M0+, Cortex-M3, Cortex-M33, Cortex-M4 va Cortex M7 arxitekturalari uchun mavjud

2.2.2 MotionEC API
MotionEC API-lari quyidagilardir:

  • uint8_t MotionEC_GetLibVersion (char *versiya)
    – kutubxona versiyasini oladi
    – *versiya 35 ta belgidan iborat massivga ko‘rsatgichdir
    – versiya qatoridagi belgilar sonini qaytaradi
    • void MotionEC_Initialize(MEC_mcu_type_t mcu_type, float freq)
    – MotionEC kutubxonasini ishga tushirish va ichki mexanizmni sozlashni amalga oshiradi.
    – mcu_type – MCU turi:
    ◦ MFX_CM0P_MCU_STM32 standart STM32 MCU hisoblanadi
    ◦ MFX_CM0P_MCU_BLUE_NRG1 - BlueNRG-1
    ◦ MFX_CM0P_MCU_BLUE_NRG2 - BlueNRG-2
    ◦ MFX_CM0P_MCU_BLUE_NRG_LP - BlueNRG -LP
    – chastota - sensor sampling chastotasi [Hz]

Eslatma: Bu funksiya E-Compass kutubxonasidan foydalanishdan oldin chaqirilishi kerak va STM32 mikrokontrolleridagi CRC moduli (RCC periferik soatni yoqish registrida) kutubxonadan foydalanishdan oldin yoqilishi kerak.

  • void MotionEC_SetFrequency(float chastotasi)
    – s ni o‘rnatadiampling chastotasi (filtrlash parametrlarini o'zgartirish)
    – chastota - sensor sampling chastotasi [Hz] • bekor MotionEC_Run(MEC_input_t *maʼlumotlar_in, MEC_output_t *maʼlumotlar_out)
    - E-Compass algoritmini boshqaradi (akselerometer va magnitometr ma'lumotlarini birlashtirish)
    – *data_in – kiritilgan ma’lumotlarga ega strukturaga ko‘rsatgich
    - MEC_input_t struktura turi uchun parametrlar:
    ◦ acc[3] ENU konventsiyasidagi akselerometr maʼlumotlari massivi, g bilan oʻlchangan
    ◦ mag[3] ENU konventsiyasida mT/50 da oʻlchangan magnitometr kalibrlangan maʼlumotlar toʻplamidir.
    ◦ deltatime s - delta vaqti (ya'ni, eski va yangi ma'lumotlar to'plami o'rtasidagi kechikish vaqti) s bilan o'lchanadi
    – *data_out - chiqish ma'lumotlari bo'lgan strukturaga ko'rsatgich
    - MEC_output_t struktura turi uchun parametrlar:
    ◦ quaternion[4] ENU konventsiyasida kvaternionni o'z ichiga olgan massiv bo'lib, qurilmaning fazodagi 3Dangular yo'nalishini ifodalaydi; elementlarning tartibi: X, Y, Z, W, har doim musbat element V bilan
    ◦ euler[3] ENU konventsiyasidagi Eyler burchaklarining massivi boʻlib, qurilmaning fazoda 3D burchakli yoʻnalishini ifodalaydi; elementlarning tartibi: yaw, pitch, roll, deg bilan o'lchanadi
    ◦ i_gyro[3] ENU konvensiyasidagi burchak tezliklari massivi boʻlib, u virtual giroskop sensorini ifodalaydi, dps bilan oʻlchanadi.
    ◦ tortishish kuchi[3] ENU konventsiyasidagi tezlanishlar massivi boʻlib, g bilan oʻlchangan tortishish vektorini ifodalaydi.
    ◦ chiziqli[3] ENU konventsiyasidagi tezlashuvlar massivi boʻlib, u qurilmaning chiziqli tezlanishini ifodalaydi, g bilan oʻlchanadi
    ST X CUBE MEMS1 MotionEC - bu o'rta dastur kutubxonasi-
  • void MotionEC_GetOrientationEnable(MEC_state_t *holat)
    – Eyler burchagi hisobini yoqish/o‘chirish holatini oladi
    – *holat joriy yoqish/o‘chirish holatiga ko‘rsatgichdir
  • void MotionEC_SetOrientationEnable(MEC_state_t holati)
    – Eyler burchagi hisobini yoqish/o‘chirish holatini o‘rnatadi
    – holat – o‘rnatiladigan yangi yoqish/o‘chirish holati
  •  void MotionEC_GetVirtualGyroEnable(MEC_state_t *holat)
    – virtual giroskop hisobini yoqish/o‘chirish holatini oladi
    – *holat joriy yoqish/o‘chirish holatiga ko‘rsatgichdir
  • void MotionEC_SetVirtualGyroEnable(MEC_state_t holati)
    – virtual giroskopni hisoblashni yoqish/o‘chirish holatini o‘rnatadi
    – holat – o‘rnatiladigan yangi yoqish/o‘chirish holati
  • void MotionEC_GetGravityEnable(MEC_state_t *holat)
    – tortishish vektorini hisoblashni yoqish/o‘chirish holatini oladi
    – *holat joriy yoqish/o‘chirish holatiga ko‘rsatgichdir
  • void MotionEC_SetGravityEnable(MEC_state_t holati)
    – tortishish vektorini hisoblashni yoqish/o‘chirish holatini o‘rnatadi
    – holat – o‘rnatiladigan yangi yoqish/o‘chirish holati
  • void MotionEC_GetLinearAccEnable(MEC_state_t *holat)
    – chiziqli tezlanishni hisoblashning yoqish/o‘chirish holatini oladi
    – *holat joriy yoqish/o‘chirish holatiga ko‘rsatgichdir
  • void MotionEC_SetLinearAccEnable(MEC_state_t holati)
    – chiziqli tezlanishni hisoblashning yoqish/o‘chirish holatini o‘rnatadi
    – holat – o‘rnatiladigan yangi yoqish/o‘chirish holati

2.2.3 API oqim diagrammasi

ST X CUBE MEMS1 MotionEC - bu o'rta dastur kutubxonasi ketma-ketligi

2.2.4 Namoyish kodi
Quyidagi namoyish kodi akselerometr va magnitometr datchiklaridan ma'lumotlarni o'qiydi va ECompass ma'lumotlarini oladi (ya'ni, quaternion, Eyler burchaklari va boshqalar).

ST X CUBE MEMS1 MotionEC - bu o'rta dastur kutubxonasi - demo kodiST X CUBE MEMS1 MotionEC - bu o'rta dastur kutubxonasi - demo kodi1

2.2.5 Algoritmning ishlashi
E-Compass algoritmi faqat akselerometr va magnitometr ma'lumotlaridan foydalanadi. Quvvat sarfini kamaytirish uchun past chastotada (100 Gts gacha) ishlaydi.

ST X CUBE MEMS1 MotionEC - bu o'rta dastur kutubxonasi - ma'lumotlarni kiritish1

Sampilova

MotionEC o'rta dasturi foydalanuvchi ilovalarini yaratish uchun osongina boshqarilishi mumkin; kabiample ilovasi Ilova papkasida taqdim etiladi.
U X-NUCLEO-IKS401A575, X-NUCLEO-IKS152A073 yoki X-NUCLEO-IKS01 taxtasiga ulangan NUCLEO-F3RE, NUCLEO-U4ZI-Q, NUCLEO-L1RE yoki NUCLEO-L02RZ ishlab chiqish platalarida ishlashga mo'ljallangan.

ST X CUBE MEMS1 MotionEC o'rta dastur kutubxonasi-adapteridir

Ilova real vaqt rejimida qurilmaning yo'nalishi va aylanishini taniydi. Ma'lumotlar GUI orqali ko'rsatilishi mumkin.
Algoritm quyidagi natijalarni beradi: qurilma orientatsiyasi (kvarternionlar, Eyler burchaklari), qurilma aylanishi (virtual giroskop funksionalligi), tortishish vektori va chiziqli tezlashtirish.
3.1 MEMS-Studio ilovasi
Larample ilovasi MEMS-Studio ilovasidan foydalanadi, uni yuklab olish mumkin www.st.com.
1-qadam. Kerakli drayverlar o'rnatilganligiga va tegishli kengaytirish platasiga ega STM32 Nucleo platasi shaxsiy kompyuterga ulanganligiga ishonch hosil qiling.
2-qadam. Asosiy dastur oynasini ochish uchun MEMS-Studio ilovasini ishga tushiring.
Agar qo'llab-quvvatlanadigan proshivkaga ega STM32 Nucleo platasi kompyuterga ulangan bo'lsa, tegishli MAQOMOTI porti avtomatik ravishda aniqlanadi. Baholash kengashiga ulanishni o'rnatish uchun [Ulanish] tugmasini bosing.

ST X CUBE MEMS1 MotionEC - o'rta dastur kutubxonasi- Connect

3-qadam. Qo'llab-quvvatlanadigan proshivkali STM32 Nucleo platasiga ulanganda [Kutubxonani baholash] yorlig'i ochiladi.
Maʼlumotlar oqimini boshlash va toʻxtatish uchun tegishli [Boshlash] tugmachasini almashtiring. ST X CUBE MEMS1 MotionEC - bu o'rta dastur kutubxonasi belgisi yoki [To'xtatish] ST X CUBE MEMS1 MotionEC - bu o'rta dastur kutubxonasi- icon1 tashqi vertikal asboblar panelidagi tugma.
Ulangan sensordan keladigan ma'lumotlar bo'lishi mumkin viewichki vertikal asboblar panelidagi [Ma'lumotlar jadvali] yorlig'ini tanlash.

ST X CUBE MEMS1 MotionEC - bu o'rta dastur kutubxonasi - ma'lumotlar jadvali

4-qadam. Ushbu kutubxona uchun ajratilgan sahifani ochish uchun [E-Compass] tugmasini bosing.

ST X CUBE MEMS1 MotionEC - bu o'rta dastur kutubxonasi - kompas

Yuqoridagi rasmda STM32 Nucleo grafik modeli ko'rsatilgan. Modelning yo'nalishi va aylanishi algoritm tomonidan hisoblangan E-Compass ma'lumotlariga (kvarternionlar) asoslangan.
Qurilmaning haqiqiy harakatini grafik modelga moslashtirish uchun qurilmani ekranga qarating va [Modelni tiklash] tugmasini bosing.
Sarlavha qiymati haqiqiy qurilma sarlavhasini ifodalaydi.
Qurilmani toʻgʻridan-toʻgʻri yuqoriga yoki pastga yoʻnaltirish (ENU mos yozuvlar ramkasining yuqori oʻqi boʻylab, ±5 daraja bardoshlik bilan) sarlavha uchun N/A qiymatini beradi: qurilma qaysi asosiy nuqtani koʻrsatayotganini ajratib boʻlmaydi.
Yaxshilik qiymati 0 dan 3 gacha qiymatlarni beradi va magnitometrni kalibrlash bilan bog'liq: qiymat qanchalik baland bo'lsa, E-Compass ma'lumotlar algoritmining natijalari shunchalik yaxshi bo'ladi.
5-qadam. [Saqlash uchun File] ma'lumotlar jurnali konfiguratsiyasi oynasini ochish uchun. Saqlash uchun sensor va E-Compass ma'lumotlarini tanlang file. Tegishli tugmani bosish orqali saqlashni boshlashingiz yoki to'xtatishingiz mumkin.

ST X CUBE MEMS1 MotionEC o‘rta dastur kutubxonasidir. Saqlash uchun File

6-qadam. Ma'lumotlarni kiritish rejimi avval olingan ma'lumotlarni kutubxonaga yuborish va natijani olish uchun ishlatilishi mumkin. Ajratilganni ochish uchun vertikal asboblar panelidagi [Ma'lumotlarni kiritish] yorlig'ini tanlang view ushbu funksionallik uchun.

ST X CUBE MEMS1 MotionEC - bu o'rta dastur kutubxonasi - ma'lumotlarni kiritish

7-qadam. ni tanlash uchun [Browse] tugmasini bosing file CSV formatida ilgari olingan ma'lumotlar bilan.
Ma'lumotlar joriy vaqtda jadvalga yuklanadi view.
Boshqa tugmalar faollashadi. Siz bosishingiz mumkin:
– Proshivkaning oflayn rejimini yoqish/o‘chirish uchun [Oflayn rejim] tugmasi (oldindan olingan ma’lumotlardan foydalangan holda rejim).
– [Start]/[Stop]/[Step]/[Repeat] tugmalari yordamida MEMS-Studio-dan kutubxonaga maʼlumotlar uzatishni boshqarish mumkin.

Ma'lumotnomalar

Quyidagi barcha manbalar www.st.com saytida bepul mavjud.

  1. UM1859: STM1Cube uchun X-CUBE-MEMS32 harakat MEMS va atrof-muhit sensori dasturini kengaytirish bilan boshlash
  2.  UM1724: STM32 Nucleo-64 platalari (MB1136)
  3. UM3233: MEMS-Studio bilan ishlashni boshlash

Qayta ko'rib chiqish tarixi

4-jadval. Hujjatlarni qayta ko'rib chiqish tarixi

Sana Versiya O'zgarishlar
18-may, 17-yil 1 Dastlabki nashr.
25-18-yanvar 2 NUCLEO-L152RE ishlab chiqish kengashi va 2-jadvalga havolalar qo'shildi.
O'tgan vaqt (ms) algoritmi.
21-mart, 18-yil 3 Yangilangan Kirish va 2.1-bo'lim MotionEC tugadiview.
26-noyabr 18 yil 4 Qo'shilgan jadval 3. Korteks -M0+: o'tgan vaqt (µs) algoritmi. ARM® ga havolalar qo'shildi
Cortex® - M0+ va NUCLEO-L073RZ ishlab chiqish kengashi.
19-fevral, 19 yil 5 Yangilangan rasm 1. ENU mos yozuvlar ramkasi, 2-jadval. Cortex -M4 va Cortex-M3: o'tgan vaqt (µs) algoritmi, 3-jadval.
Cortex -M0+: o'tgan vaqt (µs) algoritmi, 3-rasm. STM32 ga ulangan sensorni kengaytirish platasi adapteri
Nucleo, 4-rasm. Unicleo-ning asosiy oynasi, 5-rasm. Foydalanuvchi xabarlari yorlig'i, 6-rasm. E-Compass oynasi va 7-rasm. Datalog oynasi. X-NUCLEO-IKS01A3 kengaytirish platasining muvofiqligi haqida ma'lumot qo'shildi.
25-mart, 20-yil 6 Yangilangan kirish, 2.2.1-bo'lim: MotionEC kutubxonasi tavsifi va 2.2.5-bo'lim: Algoritm ishlashi.
Qo'shilgan ARM Cortex-M7 arxitektura muvofiqligi ma'lumotlari.
17-sentabr, 24-yil 7 Yangilangan bo'lim Kirish,
2.1-bo'lim: MotionEC tugadiview,
2.2.1-bo'lim: MotionEC kutubxonasi
tavsif, 2.2.2-bo'lim: MotionEC
API'lar, 2.2.5-bo'lim: Algoritm
ishlash, 3-bo'lim: Sample
ilova, 3.1-bo'lim: MEMS-Studio ilovasi

MUHIM OGOHLANTIRISH – DIKQAT O‘QING
STMicroelectronics NV va uning sho‘ba korxonalari (“ST”) istalgan vaqtda ST mahsulotlariga va/yoki ushbu hujjatga o‘zgartirishlar, tuzatishlar, yaxshilanishlar, o‘zgartirishlar va takomillashtirishlar kiritish huquqini o‘zida saqlab qoladi. Xaridorlar buyurtma berishdan oldin ST mahsulotlari bo'yicha so'nggi tegishli ma'lumotlarni olishlari kerak. XT mahsulotlari buyurtmani tasdiqlash vaqtida mavjud bo'lgan XTning sotish shartlari va qoidalariga muvofiq sotiladi.
Xaridorlar XT mahsulotlarini tanlash, tanlash va ulardan foydalanish uchun faqat javobgar bo'ladilar va XT qo'llashda yordam berish yoki xaridor mahsulotlari dizayni uchun hech qanday javobgarlikni o'z zimmasiga olmaydi.
Bu yerda ST tomonidan hech qanday intellektual mulk huquqiga ochiq yoki nazarda tutilgan litsenziya berilmaydi.
XT mahsulotlarini bu yerda bayon etilgan ma'lumotlardan boshqacha shartlar bilan qayta sotish XT tomonidan bunday mahsulot uchun berilgan har qanday kafolatni bekor qiladi.
ST va ST logotipi STning savdo belgilaridir. ST savdo belgilari haqida qo'shimcha ma'lumot olish uchun qarang www.st.com/trademarks. Boshqa barcha mahsulot yoki xizmat nomlari tegishli egalarining mulki hisoblanadi.
Ushbu hujjatdagi ma'lumotlar ushbu hujjatning oldingi versiyalarida ilgari berilgan ma'lumotlarning o'rnini bosadi va almashtiradi.

© 2024 STMicroelectronics – Barcha huquqlar himoyalangan

Hujjatlar / manbalar

ST X-CUBE-MEMS1 MotionEC - bu o'rta dastur kutubxonasi [pdf] Foydalanuvchi qo'llanmasi
X-CUBE-MEMS1 MotionEC - o'rta dastur kutubxonasi, X-CUBE-MEMS1, MotionEC - o'rta dastur kutubxonasi, o'rta dastur kutubxonasi, kutubxona

Ma'lumotnomalar

Fikr qoldiring

Sizning elektron pochta manzilingiz nashr etilmaydi. Majburiy maydonlar belgilangan *