UM2275
Manual de usuario
Comezando coa biblioteca de detección de caídas en tempo real de MotionFD na expansión X-CUBE-MEMS1 para STM32Cube
Introdución
O MotionEC é un compoñente da biblioteca de middleware do software X-CUBE-MEMS1 e execútase en STM3z2. Ofrece información en tempo real sobre a orientación do dispositivo e o estado do movemento baseada nos datos dun dispositivo.
Ofrece as seguintes saídas: orientación do dispositivo (cuaternións, ángulos de Euler), rotación do dispositivo (funcionalidade do xiroscopio virtual), vector gravidade e aceleración lineal.
Esta biblioteca está pensada para funcionar só con ST MEMS.
O algoritmo ofrécese en formato de biblioteca estático e está deseñado para ser usado en microcontroladores STM32 baseados nos ARM® Cortex®-M0+, ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 e ARM® Arquitecturas Cortex®-M7.
Está construído sobre a tecnoloxía de software STM32Cube para facilitar a portabilidade entre diferentes microcontroladores STM32.
O software vén con sampImplementación de lieiro que se executa na placa de expansión X-NUCLEO-IKS4A1 ou X-NUCLEO-IKS01A3 nunha placa de desenvolvemento NUCLEO-F401RE, NUCLEO-U575ZI-Q ou NUCLEO-L152RE.
Siglas e abreviaturas
Táboa 1. Lista de siglas
Acrónimo | Descrición |
API | Interface de programación de aplicacións |
BSP | Paquete de apoio ao consello |
GUI | Interface gráfica de usuario |
HAL | Capa de abstracción de hardware |
IDE | Entorno de desenvolvemento integrado |
Biblioteca de middleware MotionFD na expansión de software X-CUBE-MEMS1 para STM32Cube
2.1 MotionFD rematadoview
A biblioteca MotionFD amplía a funcionalidade do software X-CUBE-MEMS1.
A biblioteca adquire datos do acelerómetro e do sensor de presión e ofrece información sobre o evento de caída do usuario baseándose nos datos dun dispositivo.
A biblioteca está deseñada só para ST MEMS. A funcionalidade e o rendemento cando se usan outros sensores MEMS non se analizan e poden ser significativamente diferentes do descrito no documento.
SampA implementación do le está dispoñible para a placa de expansión X-NUCLEO-IKS4A1 e X-NUCLEO-IKS01A3, montada nunha placa de desenvolvemento NUCLEO-F401RE, NUCLEO-U575ZI-Q ou NUCLEO-L152RE.
2.2 Biblioteca MotionFD
A información técnica que describe completamente as funcións e parámetros das API de MotionFD pódese atopar no HTML compilado de MotionFD_Package.chm. file localizado na carpeta Documentación.
2.2.1 Descrición da biblioteca MotionFD
A biblioteca de detección de caídas MotionFD xestiona os datos adquiridos do acelerómetro e sensor de presión; presenta:
- posibilidade de distinguir se a caída do usuario se produciu ou non
- recoñecemento baseado só nos datos do acelerómetro e do sensor de presión
- datos necesarios do acelerómetro e do sensor de presión sampfrecuencia ling é de 25 Hz
- Requisitos de recursos:
– Cortex-M3: 3.6 kB de código e 3.2 kB de memoria de datos
– Cortex-M33: 3.4 kB de código e 3.2 kB de memoria de datos
– Cortex-M4: 3.4 kB de código e 3.2 kB de memoria de datos
– Cortex-M7: 3.4 kB de código e 3.2 de memoria de datos - dispoñible para arquitecturas ARM Cortex-M3, ARM Cortex-M33, ARM Cortex-M4 e ARM Cortex-M7
2.2.2 API de MotionFD
As API da biblioteca MotionFD son:
- uint8_t MotionFD_GetLibVersion(char *versión)
– recupera a versión da biblioteca
– *A versión é un punteiro a unha matriz de 35 caracteres
– devolve o número de caracteres da cadea de versión - void MotionFD_Initialize(void)
– realiza a inicialización da biblioteca MotionFD e a configuración do mecanismo interno
Nota: Esta función debe chamarse antes de usar a biblioteca de detección de caídas e o módulo CRC do microcontrolador STM32 (no rexistro de activación do reloxo periférico RCC) ten que estar habilitado.
- void MotionFD_Update (MFD_input_t *data_in, MFD_output_t *data_out)
- Executa o algoritmo de detección de caídas
– *O parámetro data_in é un punteiro a unha estrutura con datos de entrada
– os parámetros para o tipo de estrutura MFD_input_t son:
◦ AccX é o valor do sensor do acelerómetro no eixe X en mg
◦ AccY é o valor do sensor do acelerómetro no eixe Y en mg
◦ AccZ é o valor do sensor do acelerómetro no eixe Z en mg
◦ Press é o valor do sensor de presión en hPa
– *O parámetro data_out é un punteiro a unha enumeración cos seguintes elementos:
◦ MFD_NOFALL = 0
◦ MFD_FALL = 1 - void MotionFD_SetKnobs(float fall_threshold, int32_t fall_altitude_delta, float lying_time)
– establece os parámetros de configuración da biblioteca
– fall_threshold limiar de aceleración en mg
– fall_altitude_delta diferenza de altitude en cm
– tempo de deitado en segundos sen movemento despois dun impacto - void MotionFD_GetKnobs(float *fall_threshold, int32_t *fall_altitude_delta, float *lying_time)
– obtén os parámetros de configuración da biblioteca
– fall_threshold limiar de aceleración en mg
– fall_altitude_delta diferenza de altitude en cm
– tempo de deitado en segundos sen movemento despois dun impacto
2.2.3 Diagrama de fluxo da API
2.2.4 Código de demostración
O seguinte código de demostración le os datos do acelerómetro e o sensor de presión e obtén o código do evento de caída.
2.2.5 Rendemento do algoritmo
O algoritmo de detección de caídas só usa datos do acelerómetro e do sensor de presión e funciona a baixa frecuencia (25 Hz) para reducir o consumo de enerxía.
2.3 Sampa aplicación
O middleware MotionFD pódese manipular facilmente para crear aplicacións de usuario; comoampa aplicación ofrécese no cartafol Aplicación.
Está deseñado para funcionar nunha placa de desenvolvemento NUCLEO-F401RE, NUCLEO-U575ZI-Q ou NUCLEO-L152RE conectada a unha placa de expansión X-NUCLEO-IKS4A1 ou X-NUCLEO-IKS01A3.
A aplicación recoñece o evento de caída do usuario en tempo real.
A figura anterior mostra o botón de usuario B1 e os tres LED da placa NUCLEO-F401RE. Unha vez que a placa está alimentada, o LED LD3 (PWR) acende.
Requírese unha conexión por cable USB para controlar os datos en tempo real. A placa é alimentada polo PC mediante conexión USB. Este modo de traballo permite o evento de caída do usuario detectado, acelerómetro e datos do sensor de presión, tempo stamp e, eventualmente, outros datos do sensor, en tempo real, usando o MEMS-Studio.
2.4 Aplicación MEMS-Studio
O sampa aplicación usa a aplicación MEMS-Studio, que se pode descargar desde www.st.com.
Paso 1. Asegúrese de que estean instalados os controladores necesarios e que a placa STM32 Nucleo coa tarxeta de expansión adecuada estea conectada ao PC.
Paso 2. Inicie a aplicación MEMS-Studio para abrir a xanela principal da aplicación.
Se unha placa STM32 Nucleo con firmware compatible está conectada ao PC, detectarase automaticamente.
Prema o botón [Conectar] para establecer a conexión co consello de avaliación.
Paso 3. Cando se conecta a unha placa STM32 Nucleo con firmware compatible, ábrese a pestana [Avaliación da biblioteca].
Para iniciar e deter a transmisión de datos, alterna o [Inicio] adecuado ou [Parar]
botón na barra de ferramentas vertical exterior.
Os datos procedentes do sensor conectado poden ser viewed seleccionando a pestana [Táboa de datos] na ferramenta vertical interna ba
Paso 4. Fai clic en [Detección de caídas] para abrir a xanela da aplicación dedicada.
Paso 5. Fai clic en [Gardar en File] para abrir a xanela de configuración do rexistro de datos. Seleccione o sensor e os datos de detección de caídas para gardar file. Podes iniciar ou deixar de gardar facendo clic no botón correspondente.
Paso 6. O modo de inxección de datos pódese utilizar para enviar os datos adquiridos previamente á biblioteca e recibir o resultado. Seleccione a pestana [Inxección de datos] na barra de ferramentas vertical para abrir a páxina dedicada view para esta funcionalidade.
Paso 7. Fai clic no botón [Examinar] para seleccionar file cos datos capturados previamente en formato CSV.
Os datos cargaranse na táboa na actualidade view.
Outros botóns activaranse. Podes facer clic en:
– Botón [Modo sen conexión] para activar/desactivar o modo sen conexión do firmware (modo que utiliza os datos capturados anteriormente).
– Botóns [Inicio]/[Parar]/[Paso]/[Repetir] para controlar a fonte de datos de MEMS-Studio á biblioteca.
2.5 Referencias
Todos os seguintes recursos están dispoñibles gratuitamente en www.st.com.
- UM1859: iniciación co MEMS de movemento X-CUBE-MEMS1 e a expansión do software do sensor ambiental para STM32Cube
- UM1724: placas STM32 Nucleo-64 (MB1136)
- UM3233: Iniciación a MEMS-Studio
Historial de revisións
Táboa 4. Historial de revisións de documentos
Data | Versión | Cambios |
22-set-2017 | 1 | Lanzamento inicial. |
6-Feb-18 | 2 | Engadiron referencias á placa de desenvolvemento NUCLEO-L152RE e á táboa 2. Algoritmo de tempo transcorrido (μs). |
21-mar-18 | 3 | Actualización da introdución e da sección 2.1 de MotionFDview. |
19-Feb-19 | 4 | Táboa actualizada 2. Algoritmo de tempo transcorrido (μs) e Figura 2. STM32 Nucleo: LEDs, botón, puente. Engadiuse información de compatibilidade da placa de expansión X-NUCLEO-IKS01A3. |
17-set-24 | 5 | Sección actualizada Introdución, Sección 2.1: MotionFD acabadaview, Sección 2.2.1: Descrición da biblioteca MotionFD, Sección 2.2.2: API de MotionFD, Sección 2.2.5: Rendemento do algoritmo, Sección 2.3: Sample aplicación, Sección 2.4: Aplicación MEMS-Studio |
AVISO IMPORTANTE - LEA ATENTAMENTE
STMicroelectronics NV e as súas subsidiarias (“ST”) resérvanse o dereito de realizar cambios, correccións, melloras, modificacións e melloras nos produtos ST e/ou neste documento en calquera momento sen previo aviso. Os compradores deben obter a información relevante máis recente sobre produtos ST antes de facer pedidos. Os produtos ST véndense de acordo cos termos e condicións de venda de ST existentes no momento do recoñecemento da orde.
Os compradores son os únicos responsables da elección, selección e uso dos produtos ST e ST non asume ningunha responsabilidade pola asistencia á aplicación ou o deseño dos produtos dos compradores.
ST non concede ningunha licenza, expresa ou implícita, a ningún dereito de propiedade intelectual.
A revenda de produtos ST con disposicións diferentes da información aquí establecida anulará calquera garantía concedida por ST para tal produto.
ST e o logotipo de ST son marcas comerciais de ST. Para obter información adicional sobre as marcas rexistradas ST, consulte www.st.com/trademarks. Todos os outros nomes de produtos ou servizos son propiedade dos seus respectivos propietarios.
A información deste documento substitúe e substitúe a información proporcionada anteriormente en calquera versión anterior deste documento.
© 2024 STMicroelectronics – Todos os dereitos reservados
Documentos/Recursos
![]() |
ST X-CUBE-MEMS1 Biblioteca de detección de caídas en tempo real MotionFD [pdfManual do usuario X-CUBE-MEMS1 Biblioteca de detección de caídas en tempo real MotionFD, X-CUBE-MEMS1, biblioteca de detección de caídas en tempo real MotionFD, biblioteca de detección de caídas en tempo real, biblioteca de detección de caídas, biblioteca de detección, biblioteca |