توسيع برنامج خوارزمية الاستشعار والحركة X-CUBE-MEMS1
“
معلومات المنتج
تحديد
- اسم المنتج: عداد الخطوات في الوقت الفعلي MotionPW
- التوافق: توسيع X-CUBE-MEMS1 لـ STM32Cube
- الشركة المصنعة: STMicroelectronics
- المكتبة: مكتبة MotionPW Middleware
- اكتساب البيانات: مقياس التسارع
- Sampتردد اللينج: 50 هرتز
تعليمات استخدام المنتج
زيادةview
تعمل مكتبة MotionPW على توسيع وظائف
برنامج X-CUBE-MEMS1 عن طريق الحصول على البيانات من مقياس التسارع إلى
توفير معلومات حول عدد الخطوات والإيقاع الذي تم إجراؤه
مع الجهاز القابل للارتداء.
التوافق
المكتبة مصممة لأجهزة استشعار ST MEMS فقط. استخدام أجهزة أخرى
قد تؤدي أجهزة استشعار MEMS إلى وظائف مختلفة و
أداء.
تطبيق
مثلampالتنفيذ متاح لـ X-NUCLEO-IKS4A1 و
لوحات التوسعة X-NUCLEO-IKS01A3 مثبتة على تطوير محدد
لوحات.
المعلومات الفنية
للحصول على تفاصيل حول الوظائف والمعلمات الخاصة بواجهات برمجة تطبيقات MotionPW،
راجع ملف HTML المجمّع MotionPW_Package.chm file تقع في
مجلد الوثائق.
واجهات برمجة التطبيقات
- MotionPW_GetLibVersion(char *version)
- MotionPW_Initialize(void)
- تحديث MotionPW(MPW_input_t *data_in, MPW_output_t
*data_out) - MotionPW_ResetPedometerLibrary(void)
- MotionPW_ResetStepCount(void)
- MotionPW_UpdateEnergyThreshold(عائم *عتبة الطاقة)
الأسئلة الشائعة
س: هل يمكنني استخدام مكتبة MotionPW مع أجهزة استشعار MEMS غير ST؟
ج: تم تصميم المكتبة لأجهزة استشعار ST MEMS فقط.
لا يتم ضمان التوافق مع أجهزة استشعار MEMS الأخرى.
س: ما هي بيانات مقياس التسارع المطلوبة؟ampلينغ
تكرار؟
أ: المطلوبampتردد لينغ هو 50 هرتز للدقة
الكشف عن الخطوات والإيقاع.
س: كيف أقوم بتهيئة مكتبة MotionPW؟
أ: اتصل بوظيفة MotionPW_Initialize() قبل استخدام
مكتبة أنشطة اللياقة البدنية. تأكد من وجود وحدة CRC في STM32
تم تمكين المتحكم الدقيق.
"
UM2350
دليل المستخدم
البدء باستخدام مكتبة عداد الخطوات في الوقت الفعلي MotionPW للمعصم في توسعة X-CUBEMEMS1 لجهاز STM32Cube
مقدمة
مكتبة برمجيات MotionPW الوسيطة جزء من برنامج X-CUBE-MEMS1، وتعمل على STM32 Nucleo. توفر معلومات آنية حول عدد الخطوات والإيقاع الذي نفذه المستخدم للتو باستخدام الجهاز القابل للارتداء (مثل الساعة الذكية). صُممت هذه المكتبة للعمل مع أنظمة ST MEMS فقط. تُقدم الخوارزمية بتنسيق مكتبة ثابت، وهي مصممة للاستخدام على وحدات التحكم الدقيقة STM32 القائمة على بنى ARM® Cortex®-M3، وARM Cortex®-M33، وARM® Cortex®-M4، وARM® Cortex®-M7. وهي مبنية على تقنية برنامج STM32Cube لتسهيل النقل بين وحدات التحكم الدقيقة STM32 المختلفة. يأتي البرنامج مع...ampيتم تشغيل التنفيذ على لوحة التوسعة X-NUCLEO-IKS4A1 أو X-NUCLEO-IKS01A3 على لوحة تطوير NUCLEO-F401RE أو NUCLEO-U575ZI-Q أو NUCLEO-L152RE.
UM2350 – الإصدار 4 – مايو 2025 لمزيد من المعلومات، اتصل بمكتب مبيعات STMicroelectronics المحلي لديك.
www.st.com
UM2350
اختصارات
1
اختصارات
اختصار API BSP GUI HAL IDE
الجدول 1. قائمة المختصرات
واجهة برمجة التطبيقات حزمة دعم اللوحة واجهة المستخدم الرسومية طبقة تجريد الأجهزة بيئة التطوير المتكاملة
وصف
UM2350 - القس 4
صفحة 2/16
2
2.1 2.2
2.2.1
2.2.2
ملحوظة:
UM2350
مكتبة MotionPW الوسيطة في توسعة برنامج X-CUBE-MEMS1 لـ STM32Cube
مكتبة MotionPW الوسيطة في توسعة برنامج X-CUBE-MEMS1 لـ STM32Cube
MotionPW انتهىview
تعمل مكتبة MotionPW على توسيع وظائف برنامج X-CUBE-MEMS1.
تقوم المكتبة بجمع البيانات من مقياس التسارع وتوفير معلومات حول عدد الخطوات والإيقاع الذي قام به المستخدم للتو باستخدام الجهاز القابل للارتداء.
تم تصميم المكتبة لـ ST MEMS فقط. لا يتم تحليل الوظائف والأداء عند استخدام أجهزة استشعار MEMS أخرى ويمكن أن تختلف بشكل كبير عما هو موضح في الوثيقة.
مثلampيتوفر التنفيذ للوحات التوسعة X-NUCLEO-IKS4A1 وX-NUCLEO-IKS01A3، المثبتة على لوحة تطوير NUCLEO-F401RE أو NUCLEO-U575ZI-Q أو NUCLEO-L152RE.
مكتبة MotionPW
يمكن العثور على المعلومات الفنية التي تصف بشكل كامل وظائف ومعلمات واجهات برمجة التطبيقات MotionPW في ملف HTML المجمّع MotionPW_Package.chm file الموجود في مجلد الوثائق.
وصف مكتبة MotionPW
تدير مكتبة عداد الخطوات MotionPW البيانات المكتسبة من مقياس التسارع؛ وتتميز بما يلي:
·
إمكانية اكتشاف عدد الخطوات والإيقاع والثقة
·
التعرف على أساس بيانات مقياس التسارع فقط
·
بيانات مقياس التسارع المطلوبةampتردد لينغ 50 هرتز
·
متطلبات الموارد:
Cortex-M3: 3.7 كيلو بايت من التعليمات البرمجية و1.8 كيلو بايت من ذاكرة البيانات
Cortex-M33: 3.5 كيلو بايت من التعليمات البرمجية و1.8 كيلو بايت من ذاكرة البيانات
Cortex-M4: 3.5 كيلو بايت من التعليمات البرمجية و1.8 كيلو بايت من ذاكرة البيانات
Cortex-M7: 3.6 كيلو بايت من التعليمات البرمجية و1.8 كيلو بايت من ذاكرة البيانات
·
متوفر لـ ARM® Cortex®-M3 وARM® Cortex®-M33 وARM® Cortex®-M4 وARM® Cortex®-M7
الهندسة المعمارية
واجهات برمجة تطبيقات MotionPW
واجهات برمجة التطبيقات الخاصة بمكتبة MotionPW هي:
·
uint8_t MotionPW_GetLibVersion(char *version)
يسترجع إصدار المكتبة
*الإصدار هو مؤشر إلى مجموعة مكونة من 35 حرفًا
إرجاع عدد الأحرف في سلسلة الإصدار
·
void MotionPW_Initialize(void)
يقوم بتنفيذ تهيئة مكتبة MotionPW وإعداد الآلية الداخلية بما في ذلك تخصيص الذاكرة الديناميكية
يجب استدعاء هذه الوظيفة قبل استخدام مكتبة نشاط اللياقة البدنية ويجب تمكين وحدة CRC في متحكم STM32 (في سجل تمكين الساعة الطرفية RCC).
UM2350 - القس 4
صفحة 3/16
UM2350
مكتبة MotionPW الوسيطة في توسعة برنامج X-CUBE-MEMS1 لـ STM32Cube
·
void MotionPW_Update(MPW_input_t *data_in, MPW_output_t *data_out)
ينفذ عداد الخطوات لخوارزمية المعصم
*معامل data_in هو مؤشر إلى هيكل يحتوي على بيانات الإدخال
المعلمات لنوع الهيكل MPW_input_t هي:
AccX هي قيمة مستشعر التسارع في المحور X بالجرام
AccY هي قيمة مستشعر التسارع في المحور Y بالجرام
AccZ هي قيمة مستشعر التسارع في المحور Z بالجرام
CurrentActivity هو نوع الإدخال المرقم MPW_activity_t مع القيم التالية:
MPW_UNKNOWN_ACTIVITY = 0x00
MPW_WALKING = 0x01
MPW_FASTWALKING = 0x02
MPW_JOGGING = 0x03
*معلمة data_out هي مؤشر إلى هيكل يحتوي على بيانات إخراج
المعلمات لنوع الهيكل MPW_output_t هي:
Nsteps هو عدد الخطوات التي يقوم بها المستخدم
الإيقاع هو إيقاع خطوات المستخدم
الثقة هي ثقة معلمة الإخراج المحسوبة
·
void MotionPW_ResetPedometerLibrary(void)
إعادة تعيين المتغيرات الداخلية للمكتبة والآلية إلى القيم الافتراضية (بما في ذلك عدد الخطوات الحالية)
·
void MotionPW_ResetStepCount(void)
إعادة تعيين عدد الخطوات الحالي
·
void MotionPW_UpdateEnergyThreshold(float *energy_threshold)
تم تحديث عتبة الطاقة لضبط خوارزمية اكتشاف الخطوة
*معامل energy_threshold هو مؤشر لقيمة عتبة الطاقة
UM2350 - القس 4
صفحة 4/16
2.2.3
مخطط تدفق واجهة برمجة التطبيقات
UM2350
مكتبة MotionPW الوسيطة في توسعة برنامج X-CUBE-MEMS1 لـ STM32Cube
الشكل 1. تسلسل منطق واجهة برمجة التطبيقات MotionPW
يبدأ
تهيئة
احصل على نسخة المكتبة
انتظار انتهاء صلاحية قراءة بيانات المؤقت
قراءة تحديث بيانات مقياس التسارع
الحصول على المخرجات
2.2.4
كود العرض التوضيحي الكود التوضيحي التاليampيقوم le بقراءة البيانات من مستشعر التسارع، ويحصل على النشاط الحالي من مكتبة MotionAW ويحصل على عدد الخطوات والإيقاع والثقة من مكتبة MotionPW.
[…] #define VERSION_STR_LENG 35 […] /* التهيئة */ char lib_version[VERSION_STR_LENG];
/* وظيفة تهيئة واجهة برمجة تطبيقات عداد الخطوات */ MotionPW_Initialize();
/* وظيفة تهيئة واجهة برمجة تطبيقات التعرف على النشاط */ MotionAW_Initialize();
/* اختياري: الحصول على الإصدار */ MotionPW_GetLibVersion(lib_version);
[…] /* استخدام عداد الخطوات لخوارزمية المعصم */ Timer_OR_DataRate_Interrupt_Handler() {
MPW_input_t MPW_data_in؛ MPW_output_t MPW_data_out؛
UM2350 - القس 4
صفحة 5/16
2.2.5
UM2350
مكتبة MotionPW الوسيطة في توسعة برنامج X-CUBE-MEMS1 لـ STM32Cube
إدخال بيانات MAW في MAW؛ إخراج بيانات MAW في MAW؛
/* الحصول على تسارع X/Y/Z في g */ MEMS_Read_AccValue(&MAW_data_in.Acc_X, &MAW_data_in.Acc_Y, &MAW_data_in.Acc_Z);
/* الحصول على النشاط الحالي */ MotionAW_Update(&MAW_data_in, &MAW_data_out, Timestamp);
MPW_data_in.Acc_X = MAW_data_in.Acc_X؛ MPW_data_in.Acc_Y = MAW_data_in.Acc_Y؛ MPW_data_in.Acc_Z = MAW_data_in.Acc_Z؛
إذا (MAW_data_out.النشاط الحالي == MAW_WALKING) {
MPW_data_in.currentActivity = MPW_WALKING; وإلا إذا (MAW_data_out.current_activity == MAW_FASTWALKING) {
MPW_data_in.currentActivity = MPW_FASTWALKING; وإلا إذا (MAW_data_out.current_activity == MAW_JOGGING) {
MPW_data_in.currentActivity = MPW_JOGGING؛ وإلا {
MPW_data_in.النشاط الحالي = MPW_UNKNOWN_ACTIVITY؛
/* تشغيل عداد الخطوات لخوارزمية المعصم */ MotionPW_Update(&MPW_data_in, &MPW_data_out); }
أداء الخوارزمية: تعتمد خوارزمية عداد الخطوات للمعصم على بيانات مقياس التسارع فقط، وتعمل بتردد منخفض (٥٠ هرتز) لتقليل استهلاك الطاقة. عند محاكاة نشاط اللياقة البدنية باستخدام لوحة STM50 Nucleo، تأكد من توجيه اللوحة عموديًا على الساعد لمحاكاة وضعية سوار المعصم.
الشكل 2. نظام التوجيه للأجهزة التي تُلبس على المعصم
الجدول 2. زمن انقضاء الخوارزمية (ميكروثانية) Cortex-M4 وCortex-M3
Cortex-M4 STM32F401RE بتردد 84 ميجاهرتز
الحد الأدنى
متوسط
الأعلى
38
49
616
Cortex-M3 STM32L152RE بتردد 32 ميجاهرتز
الحد الأدنى
متوسط
الأعلى
296
390
3314
UM2350 - القس 4
صفحة 6/16
UM2350
مكتبة MotionPW الوسيطة في توسعة برنامج X-CUBE-MEMS1 لـ STM32Cube
الجدول 3. زمن انقضاء الخوارزمية (ميكروثانية) Cortex-M33 وCortex-M7
Cortex-M33 STM32U575ZI-Q بتردد 160 ميجاهرتز
الحد الأدنى
متوسط
الأعلى
57
63
359
Cortex-M7 STM32F767ZI بتردد 96 ميجاهرتز
الحد الأدنى
متوسط
الأعلى
61
88
1301
2.3
Sampتطبيق le
يمكن التعامل بسهولة مع برنامج MotionPW الوسيط لبناء تطبيقات المستخدم.
مثلampيتوفر التطبيق في مجلد التطبيقات. وهو مصمم للعمل على لوحة تطوير NUCLEO-F401RE أو NUCLEOU575ZI-Q أو NUCLEO-L152RE المتصلة بلوحة توسيع X-NUCLEO-IKS4A1 أو X-NUCLEO-IKS01A3.
يتعرف التطبيق على الخطوات والإيقاع والثقة آنيًا. ويمكن عرض البيانات عبر واجهة مستخدم رسومية.
الشكل 3. STM32 Nucleo: مصابيح LED، زر، وصلة توصيل
يوضح الشكل أعلاه زر المستخدم B1 ومصابيح LED الثلاثة للوحة NUCLEO-F401RE. بمجرد تشغيل اللوحة، يضيء مصباح LED LD3 (PWR).
يتطلب الأمر اتصالاً بكابل USB لمراقبة البيانات في الوقت الفعلي. تعمل اللوحة بواسطة الكمبيوتر عبر منفذ USB. يتيح وضع التشغيل هذا للمستخدم عرض الخطوات المكتشفة، والإيقاع، والثقة، وبيانات مقياس التسارع، ووقت التشغيل.amp وأخيرًا، بيانات المستشعر الأخرى، في الوقت الفعلي، باستخدام MEMS-Studio.
2.4
تطبيق MEMS Studio
لياليampيستخدم التطبيق تطبيق MEMS-Studio، والذي يمكن تنزيله من www.st.com.
الخطوة 1. تأكد من تثبيت برامج التشغيل الضرورية وتوصيل لوحة STM32 Nucleo مع لوحة التوسيع المناسبة بالكمبيوتر.
UM2350 - القس 4
صفحة 7/16
UM2350
مكتبة MotionPW الوسيطة في توسعة برنامج X-CUBE-MEMS1 لـ STM32Cube
الخطوة 2.
قم بتشغيل تطبيق MEMS-Studio لفتح نافذة التطبيق الرئيسية.
إذا تم توصيل لوحة STM32 Nucleo التي تدعم البرامج الثابتة بالكمبيوتر الشخصي، فسيتم اكتشافها تلقائيًا. اضغط على زر [Connect] لإنشاء اتصال بلوحة التقييم.
الشكل 4. MEMS-Studio – الاتصال
الخطوة 3. عند الاتصال بلوحة STM32 Nucleo مع البرامج الثابتة المدعومة، يتم فتح علامة التبويب [تقييم المكتبة].
لبدء وإيقاف تدفق البيانات، قم بتبديل شريط الأدوات الرأسي [ابدأ] المناسب.
أو زر [إيقاف] على الجانب الخارجي
يمكن أن تكون البيانات القادمة من المستشعر المتصل viewقم بتحديد علامة التبويب [جدول البيانات] على شريط الأدوات الرأسي الداخلي.
الشكل 5. MEMS-Studio - تقييم المكتبة - جدول البيانات
UM2350 - القس 4
صفحة 8/16
UM2350
مكتبة MotionPW الوسيطة في توسعة برنامج X-CUBE-MEMS1 لـ STM32Cube
الخطوة ٤. انقر على [عداد الخطوات] لفتح نافذة التطبيق المخصصة. الشكل ٦. MEMS-Studio - تقييم المكتبة - عداد الخطوات
الخطوة 5.
انقر فوق [حفظ في File] لفتح نافذة تهيئة تسجيل البيانات. حدد بيانات المستشعر وعداد الخطوات المراد حفظها في fileيمكنك البدء أو إيقاف الحفظ عن طريق النقر على الزر المقابل
زر.
الشكل 7. MEMS-Studio – تقييم المكتبة – حفظ في File
UM2350 - القس 4
صفحة 9/16
UM2350
مكتبة MotionPW الوسيطة في توسعة برنامج X-CUBE-MEMS1 لـ STM32Cube
الخطوة 6.
يمكن استخدام وضع حقن البيانات لإرسال البيانات التي تم الحصول عليها مسبقًا إلى المكتبة واستلامها
النتيجة. حدد علامة التبويب [حقن البيانات] على شريط الأدوات الرأسي لفتح المجلد المخصص view لهذه الوظيفة.
الشكل 8. MEMS-Studio – تقييم المكتبة – حقن البيانات
الخطوة 7.
انقر فوق الزر [استعراض] لتحديد file مع البيانات التي تم التقاطها مسبقًا بتنسيق CSV. سيتم تحميل البيانات إلى الجدول في الوقت الحالي view. ستصبح الأزرار الأخرى نشطة. يمكنك النقر على:
زر [الوضع غير المتصل بالإنترنت] لتشغيل/إيقاف وضع عدم الاتصال بالإنترنت للبرنامج الثابت (الوضع الذي يستخدم البيانات الملتقطة مسبقًا).
أزرار [بدء]/[إيقاف]/[خطوة]/[تكرار] للتحكم في تغذية البيانات من MEMS-Studio إلى المكتبة.
UM2350 - القس 4
صفحة 10/16
UM2350
مراجع
3
مراجع
جميع الموارد التالية متاحة مجانًا على www.st.com. 1. UM1859: البدء في استخدام برنامج أجهزة MEMS المتحركة وأجهزة الاستشعار البيئية X-CUBE-MEMS1
التوسعة لـ STM32Cube 2. UM1724: لوحات STM32 Nucleo-64 (MB1136) 3. UM3233: البدء باستخدام MEMS-Studio
UM2350 - القس 4
صفحة 11/16
UM2350
تاريخ المراجعة
الجدول 4. تاريخ مراجعة الوثيقة
تاريخ
تغييرات الإصدار
24-2018-1 XNUMX الإصدار الأولي.
21 مارس 2018 2 تم تحديث المقدمة والقسم 2.1 MotionPW overview. تم تحديث القسم 2.2.5: أداء الخوارزمية والشكل 3. STM32 Nucleo: مصابيح LED، الزر، العبور.
20 فبراير 2019 3 تمت إضافة معلومات توافق لوحة التوسعة X-NUCLEO-IKS01A3.
تم تحديث القسم المقدمة، القسم 2.1: MotionPW overviewالقسم 2.2.1: مكتبة MotionPW 20 مايو 2025 4 الوصف، القسم 2.2.2: واجهات برمجة تطبيقات MotionPW، القسم 2.2.4: كود العرض التوضيحي، القسم 2.2.5: الخوارزمية
الأداء، القسم 2.3: سampالتطبيق، القسم 2.4: تطبيق MEMS Studio
UM2350 - القس 4
صفحة 12/16
UM2350
محتويات
محتويات
1 الاختصارات والاختصارات . ...
STM32Cube . ...view 3 2.2 مكتبة MotionPW . ... . . . . . . . 3
2.2.1 وصف مكتبة MotionPW. 3 2.2.2 واجهات برمجة تطبيقات MotionPW. 3 2.2.3 مخطط تدفق واجهة برمجة التطبيقات . ... . . . . . . . . . . . 5 2.2.4 أداء الخوارزمية . ...ampالتطبيق . ... . 7
3 المراجع . ... . . . . . . . . . . . . . . . . . . . . . . . . .11
UM2350 - القس 4
صفحة 13/16
UM2350
قائمة الجداول
قائمة الجداول
الجدول 1. الجدول 2. الجدول 3. الجدول 4.
قائمة الاختصارات . ... . . . . . . . . 2 زمن انقضاء الخوارزمية (ميكروثانية) Cortex-M4 وCortex-M3 . ... . . . 6
UM2350 - القس 4
صفحة 14/16
UM2350
قائمة الأرقام
قائمة الأرقام
الشكل 1. الشكل 2. الشكل 3. الشكل 4. الشكل 5. الشكل 6. الشكل 7. الشكل 8.
تسلسل منطق واجهة برمجة تطبيقات MotionPW 5 نظام التوجيه للأجهزة التي تُلبس على المعصم 6 نواة STM32: مصابيح LED، زر، وصلة توصيل . ... . . . . 7 MEMS-Studio – تقييم المكتبة – جدول البيانات. ... File 9 MEMS-Studio - تقييم المكتبة - حقن البيانات 10
UM2350 - القس 4
صفحة 15/16
UM2350
إشعار هام اقرأ بعناية تحتفظ شركة STMicroelectronics NV والشركات التابعة لها ("ST") بالحق في إجراء تغييرات وتصحيحات وتحسينات وتعديلات وتحسينات على منتجات ST و / أو على هذا المستند في أي وقت دون إشعار. يجب على المشترين الحصول على أحدث المعلومات ذات الصلة بمنتجات ST قبل تقديم الطلبات. تُباع منتجات ST وفقًا لشروط وأحكام البيع الخاصة بـ ST المعمول بها في وقت استلام الطلب. يتحمل المشترون وحدهم المسؤولية عن اختيار منتجات ST واختيارها واستخدامها ولا تتحمل ST أي مسؤولية عن مساعدة التطبيق أو تصميم منتجات المشترين. لا يتم منح أي ترخيص ، صريحًا أو ضمنيًا ، لأي حق من حقوق الملكية الفكرية بواسطة ST هنا. تؤدي إعادة بيع منتجات ST بشروط مختلفة عن المعلومات المنصوص عليها في هذا المستند إلى إبطال أي ضمان ممنوح من قِبل ST لهذا المنتج. ST وشعار ST هما علامتان تجاريتان لشركة ST. للحصول على معلومات إضافية حول العلامات التجارية لشركة ST ، راجع www.st.com/trademarks. جميع أسماء المنتجات أو الخدمات الأخرى مملوكة لأصحابها المعنيين. تحل المعلومات الواردة في هذا المستند محل المعلومات التي تم توفيرها مسبقًا في أي إصدارات سابقة من هذا المستند وتحل محلها.
© 2025 STMicroelectronics جميع الحقوق محفوظة
UM2350 - القس 4
صفحة 16/16
المستندات / الموارد
![]() |
توسيع برنامج خوارزمية الحركة والمستشعر ST X-CUBE-MEMS1 [بي دي اف] دليل المستخدم نواة STM32، X-NUCLEO-IKS4A1، X-NUCLEO-IKS01A3، توسيع برنامج خوارزمية الاستشعار والحركة X-CUBE-MEMS1، توسيع برنامج خوارزمية الاستشعار والحركة، توسيع برنامج خوارزمية الحركة، توسيع برنامج الخوارزمية، توسيع البرنامج |