ST X-CUBE-MEMS1 сенсор жана кыймыл алгоритмин программалык камсыздоону кеңейтүү
КОЛДОНУУЧУ ЖОЛ
МОДЕЛИ: UM2350
The MotionPW library expands the functionality of the X-CUBE-MEMS1 software by acquiring data from the accelerometer to provide information about the number of steps and cadence performed with the wearable device.
Introduction
The MotionPW middleware library is part of the X-CUBE-MEMS1 software and runs on STM32 Nucleo. It provides real-time information about the number of steps and cadence which the user just performed with the wearable device (e.g. a smart watch).
Бул китепкана ST MEMS менен гана иштөөгө арналган.
The algorithm is provided in static library format and is designed to be used on STM32 microcontrollers based on the ARM® Cortex®-M3, ARM Cortex®-M33, ARM® Cortex®-M4, ARM® Cortex®-M7 architecture.
Ал STM32Cube программалык технологиясынын үстүнө курулган, ар кандай STM32 микроконтроллерлери аркылуу көчүрүүнү жеңилдетет.
Программа s менен келетample ишке ашыруу бир NUCLEO-F4RE, NUCLEO-U1ZI-Q же NUCLEO-L01RE боюнча X-NUCLEO-IKS3A401 же X-NUCLEO-IKS575A152 кеңейтүү тактасында иштейт.
1. Акронимдер жана аббревиатуралар
Таблица 1. Акронимдердин тизмеси
| Акроним | Description |
| API | Колдонмо программалоо интерфейси |
| BSP | Башкармалык колдоо пакети |
| GUI | Графикалык колдонуучу интерфейси |
| ХАЛ | Аппараттык абстракция катмары |
| IDE | Интегралдык өнүктүрүү чөйрөсү |
2. MotionPW middleware library in X-CUBE-MEMS1 software expansion for STM32Cube
2.1 MotionPW overview
MotionPW китепканасы X-CUBE-MEMS1 программасынын функцияларын кеңейтет.
Китепкана акселерометрден маалыматтарды алат жана колдонуучу жаңы эле тагынуучу аспап менен аткарган кадамдардын саны жана каденс жөнүндө маалымат берет.
Китепкана ST MEMS үчүн гана иштелип чыккан. Башка MEMS сенсорлорун колдонууда функционалдуулук жана өндүрүмдүүлүк талданбайт жана документте сүрөттөлгөндөн олуттуу айырмаланышы мүмкүн.
А сample ишке ашыруу aNUCLEO-F4RE, NUCLEO-U1ZI-Q же NUCLEO-L01RE өнүктүрүү тактасына орнотулган X-NUCLEO-IKS3A401 жана X-NUCLEO-IKS575A152 кеңейтүү такталары үчүн жеткиликтүү.
2.2 MotionPW library
Technical information fully describing the functions and parameters of the MotionPW APIs can be found in the
MotionPW_Package.chm compiled HTML file Документация папкасында жайгашкан.
2.2.1 MotionPW library description
MotionPW педометр китепканасы акселерометрден алынган маалыматтарды башкарат; анын өзгөчөлүктөрү:
- кадамдардын санын, каданцияны жана ишенимди аныктоо мүмкүнчүлүгү
- акселерометр маалыматтарынын негизинде гана таануу
- талап кылынган акселерометр маалыматтары samp50 Гц жыштыгы
- ресурстарга талаптар:
– 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 архитектуралары үчүн жеткиликтүү
2.2.2 MotionPW APIs
MotionPW китепкана API'лери:
- uint8_t MotionPW_GetLibVersion(char *версия)
– китепкананын версиясын чыгарат
– *версия 35 символдон турган массивдин көрсөткүчү
– версия сабындагы символдордун санын кайтарат - void MotionPW_Initialize(void)
– performs MotionPW library initialization and setup of the internal mechanism including the dynamic memory allocation
Эскертүү: Бул функция фитнес активдүүлүгүнүн китепканасын колдонуудан мурун чакырылышы керек жана STM32 микроконтроллериндеги CRC модулу (RCC перифериялык саатты иштетүү реестринде) иштетилиши керек.
- void MotionPW_Update(MPW_input_t *data_in, MPW_output_t *data_out)
– executes pedometer for wrist algorithm
– *data_in параметри киргизилген маалыматтар менен структурага көрсөткүч
– the parameters for the structure type MPW_input_t are:
◦ AccX – X огундагы акселерометрдин сенсорунун мааниси g
◦ AccY – Y огундагы акселерометрдин сенсорунун мааниси
◦ AccZ – Z огундагы акселерометрдин сенсорунун мааниси
– CurrentActivity is the enumerated input type MPW_activity_t with the following values:
◦ MPW_UNKNOWN_ACTIVITY = 0x00
◦ MPW_WALKING = 0x01
◦ MPW_FASTWALKING = 0x02
◦ MPW_JOGGING = 0x03
– *data_out параметри чыгаруу маалыматтары бар структурага көрсөткүч
– the parameters for the structure type MPW_output_t are:
◦ Nsteps is number of steps performed by user
◦ Cadence is the cadence of user steps
◦ Confidence is the confidence of calculated output parameter - void MotionPW_ResetPedometerLibrary(жараксыз)
– resets the library internal variables and mechanism into default values (including current step count) - void MotionPW_ResetStepCount(void)
– resets the current step count - void MotionPW_UpdateEnergyThreshold(float *energy_threshold)
– updated energy threshold to fine tune step detection algorithm
– *energy_threshold parameter is a pointer to energy threshold value
2.2.3 API агым диаграммасы

2.2.4 Демо код
The following demonstration code example акселерометр сенсорунан маалыматтарды окуйт, MotionAW китепканасынан учурдагы активдүүлүктү алат жана MotionPW китепканасынан кадамдардын санын, каданцияны жана ишенимди алат.


2.2.5 Алгоритмдин аткарылышы
The pedometer for wrist algorithm uses data from the accelerometer only and runs at a low frequency (50 Hz) to reduce power consumption.
When replicating fitness activity with the STM32 Nucleo board, ensure the board is oriented perpendicularly to the forearm, to simulate the wristband position.


2.3 Сample application
MotionPW орто программасын колдонуучу тиркемелерин түзүү үчүн оңой эле башкарса болот.
А сample application is provided in the Application folder. It is designed to run on a NUCLEO-F401RE, NUCLEOU575ZI- Q or NUCLEO-L152RE development board connected to an X-NUCLEO-IKS4A1 or X-NUCLEO-IKS01A3 expansion board.
Колдонмо реалдуу убакытта кадамдарды, каданцияны жана ишенимди тааныйт. Маалыматтар GUI аркылуу көрсөтүлүшү мүмкүн.

Жогорудагы сүрөттө колдонуучунун B1 баскычы жана NUCLEO-F401RE тактасынын үч светодиоду көрсөтүлгөн. Такта кубатталгандан кийин, LED LD3 (PWR) күйөт.
Чыныгы убакыттагы маалыматтарды көзөмөлдөө үчүн USB кабели керек. Такта компьютерден USB туташуу аркылуу иштейт. Бул иштөө режими колдонуучуга аныкталган кадамдарды, каданцияны жана ишенимди, акселерометрдин маалыматтарын, убакыт ст.amp жана акыры башка сенсор маалыматтар, реалдуу убакытта, MEMS-Studio аркылуу.
2.4 MEMS Studio колдонмосу
Сample колдонмо MEMS-Studio тиркемесин колдонот, аны жүктөп алууга болот www.st.com.
1-кадам. Керектүү драйверлер орнотулганын жана тиешелүү кеңейтүү тактасы бар STM32 Nucleo тактасы компьютерге туташтырылганын текшериңиз.
2-кадам. Негизги колдонмо терезесин ачуу үчүн MEMS-Studio тиркемесин ишке киргизиңиз.
Эгер колдоого алынган микропрограммасы бар STM32 Nucleo тактасы компьютерге туташтырылган болсо, ал автоматтык түрдө аныкталат.
Press the [Connect] button to establish connection to the evaluation board

3-кадам. Колдоого алынган микропрограммасы бар STM32 Nucleo тактасына туташтырылганда [Library Evaluation] өтмөгү ачылат.
Маалымат агымын баштоо жана токтотуу үчүн, тиешелүү [Старт] баскычын которуштуруу
же [Токтотуу]
тышкы вертикалдуу куралдар тилкесиндеги баскыч.
туташкан сенсор келген маалыматтар болушу мүмкүн viewички вертикалдуу куралдар тилкесинде [Data Table] өтмөгүн тандоо.

4-кадам. Click on the [Pedometer] to open the dedicated application window.

5-кадам. [Сактоо үчүн File] маалымат журналын конфигурациялоо терезесин ачуу үчүн. ичинде сактала турган сенсор жана педометр дайындарын тандаңыз file. Тиешелүү баскычты чыкылдатуу менен сактоону баштасаңыз же токтотсоңуз болот.

6-кадам. Маалыматтарды киргизүү режими мурда алынган маалыматтарды китепканага жөнөтүү жана натыйжаны алуу үчүн колдонулушу мүмкүн. арналган ачуу үчүн тик куралдар тилкесинде [Data Injection] өтмөктү танда view бул функция үчүн

7-кадам. тандоо үчүн [Browse] баскычын басыңыз file CSV форматында мурда алынган маалыматтар менен.
Маалыматтар учурдагы таблицага жүктөлөт view.
Башка баскычтар активдүү болот. Сиз бассаңыз болот:
– [Offline Mode] button to switch the firmware offline mode on/off (mode utilizing the previously captured data).
– [Start]/[Stop]/[Step]/[Repeat] баскычтары MEMS-Studio'дон китепканага берилиштер түрмөгүн башкаруу үчүн.
3. Шилтемелер
Төмөнкү ресурстардын бардыгы www.st.com сайтында эркин жеткиликтүү.
1. UM1859: Getting started with the X-CUBE-MEMS1 motion MEMS and environmental sensor software expansion for STM32Cube
2. UM1724: STM32 Nucleo-64 boards (MB1136)
3. UM3233: Getting started with MEMS-Studio
Ревизия тарыхы
Таблица 4. Документти кайра карап чыгуу тарыхы
| Дата | Версия | Өзгөрүүлөр |
| 24-январь-18 | 1 | Алгачкы чыгаруу. |
| 21-март-18 | 2 | Updated Introduction and Section 2.1 MotionPW overview. |
| 20-февраль, 19-ж | 3 | Updated Section 2.2.5: Algorithm performance and Figure 3. STM32 Nucleo: LEDs, button, jumper. X-NUCLEO-IKS01A3 кеңейүү тактасынын шайкештиги жөнүндө маалымат кошулду. |
| 20-25-май | 4 | Жаңыртылган Бөлүм Киришүү, Бөлүм 2.1: MotionPW бүттүview, Section 2.2.1: MotionPW library description, Section 2.2.2: MotionPW APIs, Section 2.2.4: Demo code, Section 2.2.5: Algorithm performance, Section 2.3: Sample application, Section 2.4: MEMS Studio applica |
МААНИЛҮҮ ЭСКЕРТҮҮ – КЫЛАТ КЫЛЫП ОКУҢУЗ
STMicroelectronics NV жана анын туунду компаниялары («СТ») ST өнүмдөрүнө жана/же бул документке каалаган убакта эскертүүсүз өзгөртүү, оңдоо, жакшыртуу, өзгөртүү жана жакшыртуу укугун өзүнө калтырат. Сатып алуучулар буйрутмаларды берүүдөн мурун ST продуктулары боюнча акыркы тиешелүү маалыматты алышы керек. ST продуктылары СТтин сатуунун шарттарына ылайык, буйрутманы ырастоо учурундагы жерде сатылат.
Сатып алуучулар ST өнүмдөрүн тандоо, тандоо жана колдонуу үчүн жалгыз жооп берет жана ST колдонууга жардам берүү же сатып алуучулардын продуктуларынын дизайны үчүн эч кандай жоопкерчилик тартпайт.
Бул жерде ST тарабынан эч кандай интеллектуалдык менчик укугуна ачык же кыйыр түрдө эч кандай лицензия берилбейт.
Бул жерде баяндалган маалыматтан башкача жоболор менен СТ продукциясын кайра сатуу СТ тарабынан мындай продукт үчүн берилген кепилдикти жокко чыгарат.
ST жана ST логотиби ST соода белгилери болуп саналат. ST соода белгилери жөнүндө кошумча маалымат алуу үчүн, www.st.com/trademarks караңыз. Бардык башка өнүм же кызмат аттары тиешелүү ээлеринин менчиги болуп саналат.
Бул документтеги маалымат бул документтин бардык мурунку версияларында мурда берилген маалыматтын ордун басат жана алмаштырат.
© 2025 STMicroelectronics – Бардык укуктар корголгон
Ишке ашыруу
А сample implementation is available for X-NUCLEO-IKS4A1 and X-NUCLEO-IKS01A3 expansion boards mounted on specified development boards.
Техникалык маалымат
For detailed functions and parameters of the MotionPW APIs, refer to the MotionPW_Package.chm compiled HTML file Документация папкасында жайгашкан.
API'лер
- MotionPW_GetLibVersion(чар *версиясы)
- MotionPW_Initialize(жараксыз)
- MotionPW_Update(MPW_input_t *data_in, MPW_output_t *data_out)
- MotionPW_ResetPedometerLibrary(жараксыз)
- MotionPW_ResetStepCount(жараксыз)
- MotionPW_UpdateEnergyThreshold(сүзүү *энергия_босогосу)
Техникалык шарттар
- Продукт аты: MotionPW реалдуу убакыттагы педометр
- Шайкештик: STM1Cube үчүн X-CUBE-MEMS32 кеңейиши
- Өндүрүүчү: STMicroelectronics
- Китепкана: MotionPW Middleware Library
- Маалыматтарды алуу: акселерометр
- Sampling жыштыгы: 50 Hz
Көп берилүүчү суроолор (FAQ)
С: MotionPW китепканасын ST MEMS эмес сенсорлор менен колдоно аламбы?
A: Китепкана ST MEMS сенсорлору үчүн гана иштелип чыккан.
Башка MEMS сенсорлору менен шайкештиги кепилденбейт.
С: талап кылынган акселерометр маалыматтар с эмнеampлинг жыштыгы?
Ж: Керектүү сampling frequency is 50 Hz for accurate detection of steps and cadence.
С: MotionPW китепканасын кантип баштасам болот?
A: Call the MotionPW_Initialize() function before using the fitness activity library. Ensure the CRC module in the STM32 microcontroller is enabled.
Документтер / Ресурстар
![]() |
ST X-CUBE-MEMS1 сенсор жана кыймыл алгоритмин программалык камсыздоону кеңейтүү [pdf] Колдонуучунун колдонмосу STM32 Nucleo, X-NUCLEO-IKS4A1, X-NUCLEO-IKS01A3, X-CUBE-MEMS1 сенсор жана кыймыл алгоритминин программасын кеңейтүү, X-CUBE-MEMS1, сенсор жана кыймыл алгоритминин программасын кеңейтүү, кыймыл алгоритмин кеңейтүү, программалык камсыздоону кеңейтүү, программалык камсыздоону кеңейтүү, |




