ST X - loqoUM2225
İstifadəçi təlimatı

STM1Cube üçün X-CUBE-MEMS32 genişlənməsində MotionEC real vaxt E-Compass kitabxanasına başlayın

Giriş

MotionEC X-CUBE-MEMS1 proqram təminatının ara proqram kitabxana komponentidir və STM3z2 üzərində işləyir. O, cihazdan alınan məlumatlar əsasında cihazın istiqaməti və hərəkət statusu haqqında real vaxt rejimində məlumat verir.
O, aşağıdakı çıxışları təmin edir: cihazın oriyentasiyası (kvarternionlar, Eyler bucaqları), cihazın fırlanması (virtual giroskop funksionallığı), cazibə vektoru və xətti sürətləndirmə.
Bu kitabxana yalnız ST MEMS ilə işləmək üçün nəzərdə tutulub.
Alqoritm statik kitabxana formatında təqdim olunub və ARM® Cortex®-M32+, ARM® Cortex®-M0, ARM® Cortex®-M3, ARM® Cortex®-M33 və ARM® əsasında STM4 mikrokontrolörlərində istifadə üçün nəzərdə tutulub. Cortex®-M7 arxitekturaları.
O, müxtəlif STM32 mikro nəzarətçiləri arasında daşınmanı asanlaşdırmaq üçün STM32Cube proqram texnologiyası üzərində qurulub.
Proqram təminatı s ilə gəlirampNUCLEO-F01RE, NUCLEO-U3ZI-Q, NUCLEO-L4RE və ya NUCLEO-L1 lövhəsində X-NUCLEO-IKS02A1, X-NUCLEO-IKS401A575 və ya X-NUCLEO-IKS152A073 genişləndirmə lövhəsində işləyən tətbiq.

Qısaltmalar və ixtisarlar

Cədvəl 1. Akronimlərin siyahısı

Akronim Təsvir
API Tətbiq proqramlaşdırma interfeysi
BSP İdarə heyətinə dəstək paketi
GUI Qrafik istifadəçi interfeysi
HAL Hardware abstraksiya təbəqəsi
IDE İnteqrasiya edilmiş inkişaf mühiti

STM1Cube üçün X-CUBE-MEMS32 proqram genişləndirilməsində MotionEC ara proqram kitabxanası

2.1 MotionEC bitdiview
MotionEC kitabxanası X-CUBE-MEMS1 proqram təminatının funksional imkanlarını genişləndirir.
Kitabxana akselerometr və maqnitometrdən məlumatları əldə edir və cihazdan alınan məlumatlar əsasında cihazın istiqaməti və hərəkət statusu haqqında məlumat verir.
Kitabxana yalnız ST MEMS üçün nəzərdə tutulmuşdur. Digər MEMS sensorlarından istifadə edərkən funksionallıq və performans təhlil edilmir və sənəddə təsvir olunanlardan əhəmiyyətli dərəcədə fərqlənə bilər.
A sample tətbiqi NUCLEO-F01RE, NUCLEO-U3ZI-Q, NUCLEO-L4RE və ya NUCLEO-board üzərində quraşdırılmış X-NUCLEO-IKS1A02, X-NUCLEO-IKS1A401 və X-NUCLEO-IKS575A152 genişləndirmə lövhəsində mövcuddur.
2.2 MotionEC kitabxanası
MotionEC API-lərinin funksiyalarını və parametrlərini tam təsvir edən texniki məlumatı MotionEC_Package.chm tərtib edilmiş HTML-də tapa bilərsiniz. file Sənədlər qovluğunda yerləşir.

2.2.1 MotionEC kitabxanasının təsviri
MotionEC E-Compass kitabxanası akselerometr və maqnitometrdən alınan məlumatları idarə edir; xüsusiyyətləri:

  • cihazın oriyentasiyası (quaternionlar, Euler bucaqları), cihazın fırlanması (virtual giroskop funksionallığı), cazibə vektoru və xətti sürətlənmə çıxışları
  • yalnız akselerometr və maqnitometr məlumatlarına əsaslanan funksionallıq
  • tələb olunan akselerometr və maqnitometr məlumatları samp100 Hz-ə qədər ling tezliyi
  • Resurs tələbləri:
    – Cortex-M0+: 3.7 kB kod və 0.1 kB məlumat yaddaşı
    – Cortex-M3: 3.8 kB kod və 0.1 kB məlumat yaddaşı
    – Cortex-M33: 2.8 kB kod və 0.1 kB məlumat yaddaşı
    – Cortex-M4: 2.9 kB kod və 0.1 kB məlumat yaddaşı
    – Cortex-M7: 2.8 kB kod və 0.1 kB məlumat yaddaşı
  • ARM Cortex M0+, Cortex-M3, Cortex-M33, Cortex-M4 və Cortex M7 arxitekturaları üçün mövcuddur

2.2.2 MotionEC API-ləri
MotionEC API-ləri bunlardır:

  • uint8_t MotionEC_GetLibVersion(char *versiya)
    – kitabxananın versiyasını əldə edir
    – *versiya 35 simvoldan ibarət massiv üçün göstəricidir
    – versiya sətirindəki simvolların sayını qaytarır
    • void MotionEC_Initialize(MEC_mcu_type_t mcu_type, float tezliyi)
    – MotionEC kitabxanasının işə salınmasını və daxili mexanizmin qurulmasını həyata keçirir.
    – mcu_type MCU növüdür:
    ◦ MFX_CM0P_MCU_STM32 standart STM32 MCU-dur
    ◦ MFX_CM0P_MCU_BLUE_NRG1 BlueNRG-1-dir
    ◦ MFX_CM0P_MCU_BLUE_NRG2 BlueNRG-2-dir
    ◦ MFX_CM0P_MCU_BLUE_NRG_LP BlueNRG -LP-dir
    – tezlik sensor s-dirampling tezliyi [Hz]

Qeyd: Bu funksiya E-Compass kitabxanasından istifadə etməzdən əvvəl çağırılmalıdır və kitabxanadan istifadə etməzdən əvvəl STM32 mikro nəzarət cihazında (RCC periferik saat aktivləşdirmə registrində) CRC modulu işə salınmalıdır.

  • void MotionEC_SetFrequency(float tezliyi)
    – s təyin edirampling tezliyi (filtrləmə parametrlərinin dəyişdirilməsi)
    – tezlik sensor s-dirampling tezliyi [Hz] • etibarsız MotionEC_Run(MEC_input_t *data_in, MEC_output_t *data_out)
    – E-Compass alqoritmini işlədir (akselerometer və maqnitometr məlumatlarının birləşməsi)
    – *data_in giriş verilənləri olan strukturun göstəricisidir
    – MEC_input_t struktur növü üçün parametrlər:
    ◦ acc[3] ENU konvensiyasında g ilə ölçülən akselerometr məlumatlarının massividir
    ◦ mag[3] μT/50 ilə ölçülən ENU konvensiyasında maqnitometrlə kalibrlənmiş məlumat massividir
    ◦ deltatime s, s ilə ölçülən delta vaxtıdır (yəni, köhnə və yeni məlumat dəsti arasındakı vaxt gecikməsi).
    – *data_out çıxış verilənləri olan strukturun göstəricisidir
    – MEC_output_t struktur növü üçün parametrlər:
    ◦ quaternion[4] ENU konvensiyasında quaternion ehtiva edən massivdir, cihazın məkanda 3Dangular oriyentasiyasını təmsil edir; elementlərin sırası belədir: X, Y, Z, W, həmişə müsbət element W ilə
    ◦ euler[3] ENU konvensiyasında cihazın kosmosda 3D-bucaq oriyentasiyasını əks etdirən Eyler bucaqlarının massividir; elementlərin sırası belədir: yaw, pitch, roll, deg ilə ölçülür
    ◦ i_gyro[3] ENU konvensiyasında dps ilə ölçülən virtual giroskop sensorunu təmsil edən bucaq dərəcələri massividir
    ◦ cazibə qüvvəsi[3] ENU konvensiyasında g ilə ölçülən cazibə vektorunu təmsil edən təcillər massividir.
    ◦ linear[3] ENU konvensiyasında cihazın xətti sürətlənməsini təmsil edən, g ilə ölçülən sürətləndirmələr massividir.
    ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanasıdır-
  • void MotionEC_GetOrientationEnable(MEC_state_t *state)
    – Eyler bucağı hesablamasının aktiv/deaktiv vəziyyətini alır
    – *dövlət cari aktiv/deaktiv vəziyyətə işarədir
  • void MotionEC_SetOrientationEnable(MEC_state_t vəziyyəti)
    – Eyler bucağı hesablamasının aktiv/deaktiv vəziyyətini təyin edir
    – vəziyyət təyin olunacaq yeni aktiv/deaktiv vəziyyətdir
  •  void MotionEC_GetVirtualGyroEnable(MEC_state_t *state)
    – virtual giroskop hesablamasının aktiv/deaktiv vəziyyətini alır
    – *dövlət cari aktiv/deaktiv vəziyyətə işarədir
  • void MotionEC_SetVirtualGyroEnable(MEC_state_t vəziyyəti)
    – virtual giroskop hesablamasının aktiv/deaktiv vəziyyətini təyin edir
    – vəziyyət təyin olunacaq yeni aktiv/deaktiv vəziyyətdir
  • void MotionEC_GetGravityEnable(MEC_state_t *state)
    – cazibə vektorunun hesablanmasının aktiv/deaktiv vəziyyətini alır
    – *dövlət cari aktiv/deaktiv vəziyyətə işarədir
  • void MotionEC_SetGravityEnable(MEC_state_t vəziyyəti)
    – cazibə vektorunun hesablanmasının aktiv/deaktiv vəziyyətini təyin edir
    – vəziyyət təyin olunacaq yeni aktiv/deaktiv vəziyyətdir
  • void MotionEC_GetLinearAccEnable(MEC_state_t *state)
    – xətti sürətləndirmə hesablamasının aktiv/deaktiv vəziyyətini alır
    – *dövlət cari aktiv/deaktiv vəziyyətə işarədir
  • void MotionEC_SetLinearAccEnable(MEC_state_t vəziyyəti)
    – xətti sürətlənmə hesablamasının aktiv/deaktiv vəziyyətini təyin edir
    – vəziyyət təyin olunacaq yeni aktiv/deaktiv vəziyyətdir

2.2.3 API axını diaqramı

ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanası ardıcıllığıdır

2.2.4 Demo kodu
Aşağıdakı nümayiş kodu akselerometr və maqnitometr sensorlarından məlumatları oxuyur və ECompass məlumatlarını (yəni, quaternion, Euler bucaqları və s.) alır.

ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanasıdır- Demo koduST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanasıdır - Demo kodu1

2.2.5 Alqoritmin icrası
E-Compass alqoritmi yalnız akselerometr və maqnitometrdən alınan məlumatlardan istifadə edir. Enerji istehlakını azaltmaq üçün aşağı tezlikdə (100 Hz-ə qədər) işləyir.

ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanasıdır- Data Injection1

Samptətbiq

MotionEC ara proqramı istifadəçi proqramlarını yaratmaq üçün asanlıqla manipulyasiya edilə bilər; kimiample proqram Tətbiq qovluğunda verilir.
O, X-NUCLEO-IKS401A575, X-NUCLEO-IKS152A073 və ya X-NUCLEO-IKS01 lövhəsinə qoşulmuş NUCLEO-F3RE, NUCLEO-U4ZI-Q, NUCLEO-L1RE və ya NUCLEO-L02RZ inkişaf lövhəsində işləmək üçün nəzərdə tutulmuşdur.

ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanası adapteridir

Tətbiq real vaxt rejimində cihazın istiqamətini və fırlanmasını tanıyır. Məlumatlar GUI vasitəsilə göstərilə bilər.
Alqoritm aşağıdakı çıxışları təmin edir: cihazın oriyentasiyası (kvarternionlar, Eyler bucaqları), cihazın fırlanması (virtual giroskop funksionallığı), cazibə vektoru və xətti sürətlənmə.
3.1 MEMS-Studio tətbiqi
Sample proqram MEMS-Studio proqramından istifadə edir, hansı ki, ondan endirilə bilər www.st.com.
Addım 1. Lazımi sürücülərin quraşdırıldığından və müvafiq genişləndirmə lövhəsi olan STM32 Nucleo boardun PC-yə qoşulduğundan əmin olun.
Addım 2. Əsas proqram pəncərəsini açmaq üçün MEMS-Studio proqramını işə salın.
Dəstəklənən proqram təminatı ilə STM32 Nucleo lövhəsi PC-yə qoşularsa, müvafiq COM portu avtomatik olaraq aşkar edilir. Qiymətləndirmə lövhəsi ilə əlaqə yaratmaq üçün [Qoşulun] düyməsini basın.

ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanasıdır- Connect

Addım 3. Dəstəklənən proqram təminatı ilə STM32 Nucleo lövhəsinə qoşulduqda [Kitabxananın Qiymətləndirilməsi] nişanı açılır.
Məlumat axınını başlamaq və dayandırmaq üçün müvafiq [Start] düyməsini dəyişin ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanası simvoludur və ya [Dayan] ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanasıdır- icon1 xarici şaquli alətlər panelindəki düymə.
Bağlı sensordan gələn məlumatlar ola bilər viewdaxili şaquli alətlər panelində [Data Cədvəli] nişanını seçərək.

ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanasıdır - Məlumat Cədvəli

Addım 4. Bu kitabxana üçün xüsusi səhifəni açmaq üçün [E-Compass] üzərinə klikləyin.

ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanasıdır- Kompas

Yuxarıdakı rəqəm STM32 Nucleo qrafik modelini göstərir. Modelin oriyentasiyası və fırlanması alqoritmlə hesablanmış E-Compass məlumatlarına (quaternionlar) əsaslanır.
Real cihazın hərəkətini qrafik modellə uyğunlaşdırmaq üçün cihazı ekrana doğru yönəldin və [Modeli sıfırla] düyməsini sıxın.
Başlıq dəyəri həqiqi cihazın başlığını təmsil edir.
Cihazı düz yuxarı və ya aşağı istiqamətləndirmək (ENU istinad çərçivəsinin yuxarı oxu boyunca, ±5 dərəcə dözümlülüklə) başlıq üçün N/A dəyərini verir: cihazın hansı əsas nöqtəni göstərdiyini ayırd etmək mümkün deyil.
Yaxşılıq dəyəri 0-dan 3-ə qədər qiymət verir və maqnitometrin kalibrlənməsi ilə əlaqədardır: dəyər nə qədər yüksək olarsa, E-Compass məlumat alqoritminin nəticələri bir o qədər yaxşı olar.
Addım 5. [Saxla File] məlumat qeydinin konfiqurasiya pəncərəsini açmaq üçün. Saxlanacaq sensoru və E-Compass məlumatını seçin file. Müvafiq düyməni klikləməklə yadda saxlamağa başlaya və ya dayandıra bilərsiniz.

ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanasıdır - Saxla File

Addım 6. Data Injection rejimi əvvəllər əldə edilmiş məlumatları kitabxanaya göndərmək və nəticəni almaq üçün istifadə edilə bilər. Xüsusi bölməni açmaq üçün şaquli alətlər panelində [Data Injection] sekmesini seçin view bu funksionallıq üçün.

ST X CUBE MEMS1 MotionEC Orta Proqram Kitabxanasıdır - Məlumatların Yerləşdirilməsi

Addım 7. Seçmək üçün [Browse] düyməsinə klikləyin file CSV formatında əvvəllər ələ keçirilmiş məlumatlarla.
Məlumat cari vəziyyətdə cədvələ yüklənəcəkdir view.
Digər düymələr aktiv olacaq. Siz klikləyə bilərsiniz:
– Firmware oflayn rejimini yandırmaq/söndürmək üçün [Offline Mode] düyməsi (əvvəllər çəkilmiş məlumatlardan istifadə edən rejim).
– [Start]/[Stop]/[Addım]/[Təkrar] düymələri MEMS-Studio-dan kitabxanaya məlumat ötürülməsini idarə etmək üçün.

İstinadlar

Aşağıdakı resursların hamısı www.st.com saytında sərbəst mövcuddur.

  1. UM1859: STM1Cube üçün X-CUBE-MEMS32 hərəkət MEMS və ətraf mühit sensoru proqram təminatının genişləndirilməsi ilə işə başlayın
  2.  UM1724: STM32 Nucleo-64 lövhələri (MB1136)
  3. UM3233: MEMS-Studio ilə işə başlayın

Təftiş tarixi

Cədvəl 4. Sənədin təftiş tarixi

Tarix Versiya Dəyişikliklər
18 may 17-ci il 1 İlkin buraxılış.
25-18 yanvar 2 NUCLEO-L152RE inkişaf lövhəsinə və Cədvəl 2-yə istinadlar əlavə edildi.
Keçən vaxt (μs) alqoritmi.
21 mart 18-ci il 3 Yenilənmiş Giriş və Bölmə 2.1 MotionEC bitdiview.
26-18 noyabr 4 Əlavə edilmiş Cədvəl 3. Korteks -M0+: keçən vaxt (µs) alqoritmi. ARM®-ə istinadlar əlavə edildi
Cortex® – M0+ və NUCLEO-L073RZ inkişaf lövhəsi.
19-fevral 19 5 Yenilənmiş Şəkil 1. ENU istinad çərçivəsi, Cədvəl 2. Cortex -M4 və Cortex-M3: keçən vaxt (µs) alqoritmi, Cədvəl 3.
Cortex -M0+: keçən vaxt (µs) alqoritmi, Şəkil 3. STM32-yə qoşulmuş sensor genişləndirmə lövhəsi adapteri
Nucleo, Şəkil 4. Unicleo əsas pəncərəsi, Şəkil 5. İstifadəçi Mesajları nişanı, Şəkil 6. E-Compass pəncərəsi və Şəkil 7. Dataloq pəncərəsi. X-NUCLEO-IKS01A3 genişləndirmə lövhəsi uyğunluğu haqqında məlumat əlavə edildi.
25 mart 20-ci il 6 Yenilənmiş Giriş, Bölmə 2.2.1: MotionEC kitabxanasının təsviri və Bölmə 2.2.5: Alqoritm performansı.
ARM Cortex-M7 arxitektura uyğunluğu məlumatı əlavə edildi.
17-24 sentyabr 7 Yenilənmiş Bölmə Girişi,
Bölmə 2.1: MotionEC bitdiview,
Bölmə 2.2.1: MotionEC kitabxanası
təsvir, Bölmə 2.2.2: MotionEC
API-lər, Bölmə 2.2.5: Alqoritm
performans, Bölmə 3: Sample
proqram, Bölmə 3.1: MEMS-Studio tətbiqi

Vacib XƏBƏRDARLIQ – DİQQƏTLİ OXUYUN
STMicroelectronics NV və onun törəmə müəssisələri (“ST”) istənilən vaxt xəbərdarlıq etmədən ST məhsullarına və/yaxud bu sənədə dəyişikliklər, düzəlişlər, təkmilləşdirmələr, dəyişikliklər və təkmilləşdirmələr etmək hüququnu özündə saxlayır. Alıcılar sifariş verməzdən əvvəl ST məhsulları haqqında ən son müvafiq məlumatları əldə etməlidirlər. ST məhsulları, sifarişin qəbulu zamanı mövcud olan ST-nin satış şərtlərinə uyğun olaraq satılır.
Alıcılar ST məhsullarının seçimi, seçimi və istifadəsinə görə məsuliyyət daşıyırlar və ST tətbiq yardımı və ya alıcıların məhsullarının dizaynına görə heç bir məsuliyyət daşımır.
ST tərəfindən hər hansı əqli mülkiyyət hüququna açıq və ya nəzərdə tutulan heç bir lisenziya verilmir.
ST məhsullarının burada göstərilən məlumatdan fərqli müddəalarla yenidən satışı ST tərəfindən belə məhsul üçün verilən hər hansı zəmanəti ləğv edir.
ST və ST loqosu ST-nin ticarət nişanlarıdır. ST ticarət nişanları haqqında əlavə məlumat üçün baxın www.st.com/trademarks. Bütün digər məhsul və ya xidmət adları müvafiq sahiblərinin mülkiyyətidir.
Bu sənəddəki məlumatlar əvvəllər bu sənədin hər hansı əvvəlki versiyalarında verilmiş məlumatları əvəz edir və əvəz edir.

© 2024 STMicroelectronics – Bütün hüquqlar qorunur

Sənədlər / Resurslar

ST X-CUBE-MEMS1 MotionEC Orta Proqram Kitabxanasıdır [pdf] İstifadəçi Təlimatı
X-CUBE-MEMS1 MotionEC Orta Proqram Kitabxanasıdır, X-CUBE-MEMS1, MotionEC Orta Proqram Kitabxanasıdır, Orta Proqram Kitabxanası, Kitabxanasıdır

İstinadlar

Şərh buraxın

E-poçt ünvanınız dərc olunmayacaq. Tələb olunan sahələr qeyd olunub *