ST X-logoUM2275
Manuel d'utilisation

Prise en main de la bibliothèque de détection de chute en temps réel MotionFD dans l'extension X-CUBE-MEMS1 pour STM32Cube

Introduction

MotionEC est un composant de bibliothèque middleware du logiciel X-CUBE-MEMS1 et fonctionne sur STM3z2. Il fournit des informations en temps réel sur l'orientation et l'état de mouvement de l'appareil en fonction des données d'un appareil.
Il fournit les sorties suivantes : orientation de l'appareil (quaternions, angles d'Euler), rotation de l'appareil (fonctionnalité de gyroscope virtuel), vecteur de gravité et accélération linéaire.
Cette bibliothèque est destinée à fonctionner uniquement avec ST MEMS.
L'algorithme est fourni au format de bibliothèque statique et est conçu pour être utilisé sur les microcontrôleurs STM32 basés sur les architectures ARM® Cortex®-M0+, ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 et ARM® Cortex®-M7.
Il est construit sur la technologie logicielle STM32Cube pour faciliter la portabilité entre différents microcontrôleurs STM32.
Le logiciel est livré avec sampl'implémentation exécutée sur la carte d'extension X-NUCLEO-IKS4A1 ou X-NUCLEO-IKS01A3 sur une carte de développement NUCLEO-F401RE, NUCLEO-U575ZI-Q ou NUCLEO-L152RE.

Acronymes et abréviations

Tableau 1. Liste des acronymes

Acronyme Description
API Interface de programmation d'application
BSP Paquet de support de conseil
Interface utilisateur graphique Interface utilisateur graphique
HAL Couche d'abstraction matérielle
IDE Environnement de développement intégré

Bibliothèque middleware MotionFD dans l'extension logicielle X-CUBE-MEMS1 pour STM32Cube

2.1 MotionFD surview
La bibliothèque MotionFD étend les fonctionnalités du logiciel X-CUBE-MEMS1.
La bibliothèque acquiert des données provenant de l'accéléromètre et du capteur de pression et fournit des informations sur l'événement de chute de l'utilisateur en fonction des données d'un appareil.
La bibliothèque est conçue uniquement pour ST MEMS. La fonctionnalité et les performances lors de l'utilisation d'autres capteurs MEMS ne sont pas analysées et peuvent être sensiblement différentes de celles décrites dans le document.
SampL'implémentation est disponible pour les cartes d'extension X-NUCLEO-IKS4A1 et X-NUCLEO-IKS01A3, montées sur une carte de développement NUCLEO-F401RE, NUCLEO-U575ZI-Q ou NUCLEO-L152RE.
2.2 Bibliothèque MotionFD
Des informations techniques décrivant en détail les fonctions et les paramètres des API MotionFD sont disponibles dans le fichier HTML compilé MotionFD_Package.chm. file situé dans le dossier Documentation.
2.2.1 Description de la bibliothèque MotionFD
La bibliothèque de détection de chute MotionFD gère les données acquises à partir de l'accéléromètre et du capteur de pression ; elle comprend :

  • possibilité de distinguer si la chute de l'utilisateur a eu lieu ou non
  • reconnaissance basée uniquement sur les données de l'accéléromètre et du capteur de pression
  • données requises pour l'accéléromètre et le capteur de pressionampla fréquence de ling est de 25 Hz
  • besoins en ressources :
    – Cortex-M3 : 3.6 Ko de code et 3.2 Ko de mémoire de données
    – Cortex-M33 : 3.4 Ko de code et 3.2 Ko de mémoire de données
    – Cortex-M4 : 3.4 Ko de code et 3.2 Ko de mémoire de données
    – Cortex-M7 : 3.4 Ko de code et 3.2 Ko de mémoire de données
  • disponible pour les architectures ARM Cortex-M3, ARM Cortex-M33, ARM Cortex-M4 et ARM Cortex-M7

2.2.2 API MotionFD
Les API de la bibliothèque MotionFD sont :

  • uint8_t MotionFD_GetLibVersion(char *version)
    – récupère la version de la bibliothèque
    – *version est un pointeur vers un tableau de 35 caractères
    – renvoie le nombre de caractères dans la chaîne de version
  • void MotionFD_Initialize(void)
    – effectue l'initialisation de la bibliothèque MotionFD et la configuration du mécanisme interne

Note: Cette fonction doit être appelée avant d'utiliser la bibliothèque de détection de chute et le module CRC dans le microcontrôleur STM32 (dans le registre d'activation de l'horloge périphérique RCC) doit être activé.

  • void MotionFD_Update (MFD_input_t *data_in, MFD_output_t *data_out)
    – exécute l’algorithme de détection de chute
    – Le paramètre *data_in est un pointeur vers une structure avec des données d’entrée
    – les paramètres pour le type de structure MFD_input_t sont :
    ◦ AccX est la valeur du capteur d'accéléromètre sur l'axe X en mg
    ◦ AccY est la valeur du capteur d'accéléromètre sur l'axe Y en mg
    ◦ AccZ est la valeur du capteur d'accéléromètre sur l'axe Z en mg
    ◦ Press est la valeur du capteur de pression en hPa
    – *Le paramètre data_out est un pointeur vers une énumération contenant les éléments suivants :
    ◦ MFD_NOFALL = 0
    ◦ MFD_FALL = 1
  • void MotionFD_SetKnobs(float seuil_chute, int32_t delta_altitude_chute, float temps_couchée)
    – définit les paramètres de configuration de la bibliothèque
    – fall_threshold seuil d'accélération en mg
    – fall_altitude_delta différence d'altitude en cm
    – temps de repos temps en secondes sans mouvement après un impact
  • void MotionFD_GetKnobs(float *seuil_chute, int32_t *delta_altitude_chute, float *temps_coucher)
    – obtient les paramètres de configuration de la bibliothèque
    – fall_threshold seuil d'accélération en mg
    – fall_altitude_delta différence d'altitude en cm
    – temps de repos temps en secondes sans mouvement après un impact

2.2.3 Organigramme de l'API

Bibliothèque de détection de chute en temps réel ST X CUBE MEMS1 MotionFD-

2.2.4 Code de démonstration
Le code de démonstration suivant lit les données de l'accéléromètre et du capteur de pression et obtient le code d'événement de chute.

Bibliothèque de détection de chute en temps réel ST X CUBE MEMS1 MotionFD - Code de démonstration 1Bibliothèque de détection de chute en temps réel ST X CUBE MEMS1 MotionFD - Code de démonstration

2.2.5 Performances de l'algorithme
L'algorithme de détection de chute utilise uniquement les données de l'accéléromètre et du capteur de pression et fonctionne à basse fréquence (25 Hz) pour réduire la consommation d'énergie.

Bibliothèque de détection de chute en temps réel ST X CUBE MEMS1 MotionFD - Temps écoulé de l'algorithme

2.3 Sampl'application
Le middleware MotionFD peut être facilement manipulé pour créer des applications utilisateur ;ampL’application est fournie dans le dossier Application.
Il est conçu pour fonctionner sur une carte de développement NUCLEO-F401RE, NUCLEO-U575ZI-Q ou NUCLEO-L152RE connectée à une carte d'extension X-NUCLEO-IKS4A1 ou X-NUCLEO-IKS01A3.
L'application reconnaît l'événement de chute de l'utilisateur en temps réel.

ST X CUBE MEMS1 MotionFD Bibliothèque de détection de chute en temps réel - cavalier

La figure ci-dessus montre le bouton utilisateur B1 et les trois LED de la carte NUCLEO-F401RE. Une fois la carte alimentée, la LED LD3 (PWR) s'allume.
Une connexion par câble USB est nécessaire pour surveiller les données en temps réel. La carte est alimentée par le PC via une connexion USB. Ce mode de fonctionnement permet de détecter l'événement de chute de l'utilisateur, les données de l'accéléromètre et du capteur de pression, le temps deamp et éventuellement d'autres données de capteurs, en temps réel, en utilisant le MEMS-Studio.
2.4 Application MEMS-Studio
Le sampl'application utilise l'application MEMS-Studio, qui peut être téléchargée à partir de www.st.com.
Étape 1. Assurez-vous que les pilotes nécessaires sont installés et que la carte STM32 Nucleo avec la carte d'extension appropriée est connectée au PC.
Étape 2. Lancez l'application MEMS-Studio pour ouvrir la fenêtre principale de l'application.
Si une carte STM32 Nucleo avec un firmware pris en charge est connectée au PC, elle est automatiquement détectée.
Appuyez sur le bouton [Connecter] pour établir la connexion à la carte d'évaluation.

Bibliothèque de détection de chute en temps réel ST X CUBE MEMS1 MotionFD - Connect

Étape 3. Lorsqu'il est connecté à une carte STM32 Nucleo avec un micrologiciel pris en charge, l'onglet [Évaluation de la bibliothèque] s'ouvre.
Pour démarrer et arrêter le streaming de données, activez le bouton [Démarrer] approprié. Bibliothèque de détection de chute en temps réel ST X CUBE MEMS1 MotionFD - icône ou [Stop] Bibliothèque de détection de chute en temps réel ST X CUBE MEMS1 MotionFD - icon1  bouton sur la barre d'outils verticale extérieure.
Les données provenant du capteur connecté peuvent être viewen sélectionnant l'onglet [Tableau de données] dans la barre d'outils verticale intérieure

Bibliothèque de détection de chute en temps réel ST X CUBE MEMS1 MotionFD - Tableau de données

Étape 4. Cliquez sur [Détection de chute] pour ouvrir la fenêtre d’application dédiée.

Bibliothèque de détection de chute en temps réel ST X CUBE MEMS1 MotionFD - Détection de chute

Étape 5. Cliquez sur [Enregistrer dans File] pour ouvrir la fenêtre de configuration de l'enregistrement des données. Sélectionnez le capteur et les données de détection de chute à enregistrer dans le fileVous pouvez démarrer ou arrêter la sauvegarde en cliquant sur le bouton correspondant.

Bibliothèque de détection de chute en temps réel ST X CUBE MEMS1 MotionFD - Enregistrer dans File

Étape 6. Le mode d'injection de données peut être utilisé pour envoyer les données précédemment acquises à la bibliothèque et recevoir le résultat. Sélectionnez l'onglet [Injection de données] dans la barre d'outils verticale pour ouvrir la fenêtre dédiée view pour cette fonctionnalité.

ST X CUBE MEMS1 MotionFD Bibliothèque de détection de chute en temps réel - Injection de données

Étape 7. Cliquez sur le bouton [Parcourir] pour sélectionner le file avec les données précédemment capturées au format CSV.
Les données seront chargées dans la table dans le courant view.
D'autres boutons deviendront actifs. Vous pouvez cliquer sur :
– Bouton [Mode hors ligne] pour activer/désactiver le mode hors ligne du micrologiciel (mode utilisant les données précédemment capturées).
– Boutons [Démarrer]/[Arrêter]/[Étape]/[Répéter] pour contrôler le flux de données de MEMS-Studio vers la bibliothèque.

2.5 Références
Toutes les ressources suivantes sont disponibles gratuitement sur www.st.com.

  1. UM1859 : Premiers pas avec l'extension logicielle MEMS de mouvement et capteur environnemental X-CUBE-MEMS1 pour STM32Cube
  2. UM1724 : cartes STM32 Nucleo-64 (MB1136)
  3. UM3233 : Démarrer avec MEMS-Studio

Historique des révisions

Tableau 4. Historique des révisions du document

Date Version Changements
 22-sept-2017 1 Version initiale.
6-févr.-18 2 Ajout de références à la carte de développement NUCLEO-L152RE et au tableau 2. Algorithme de temps écoulé (μs).
21-mars-18 3 Mise à jour de l'introduction et de la section 2.1 MotionFDview.
19-févr.-19 4 Tableau 2 mis à jour. Algorithme de temps écoulé (μs) et figure 2. Nucleo STM32 : LED, bouton, cavalier.
Ajout d'informations sur la compatibilité de la carte d'extension X-NUCLEO-IKS01A3.
17-sept-24 5 Mise à jour de la section Introduction, Section 2.1 : MotionFD surviewSection 2.2.1 : Description de la bibliothèque MotionFD, Section 2.2.2 : API MotionFD, Section 2.2.5 : Performances de l'algorithme, Section 2.3 : Sampl'application, Section 2.4 : Application MEMS-Studio

AVIS IMPORTANT – À LIRE ATTENTIVEMENT
STMicroelectronics NV et ses filiales (« ST ») se réservent le droit d'apporter des modifications, des corrections, des améliorations et des perfectionnements aux produits ST et/ou au présent document à tout moment et sans préavis. Les acheteurs doivent se procurer les dernières informations pertinentes sur les produits ST avant de passer commande. Les produits ST sont vendus conformément aux conditions générales de vente de ST en vigueur au moment de l'accusé de réception de la commande.
Les acheteurs sont seuls responsables du choix, de la sélection et de l'utilisation des produits ST et ST n'assume aucune responsabilité pour l'assistance à l'application ou la conception des produits des acheteurs.
Aucune licence, expresse ou implicite, sur aucun droit de propriété intellectuelle n'est accordée par ST ici.
La revente de produits ST avec des dispositions différentes des informations énoncées dans le présent document annulera toute garantie accordée par ST pour ce produit.
ST et le logo ST sont des marques déposées de ST. Pour plus d'informations sur les marques déposées de ST, consultez www.st.com/marques. Tous les autres noms de produits ou de services sont la propriété de leurs propriétaires respectifs.
Les informations contenues dans ce document remplacent et annulent les informations précédemment fournies dans toutes les versions antérieures de ce document.

© 2024 STMicroelectronics – Tous droits réservés

Documents / Ressources

Bibliothèque de détection de chute en temps réel ST X-CUBE-MEMS1 MotionFD [pdf] Manuel de l'utilisateur
Bibliothèque de détection de chute en temps réel MotionFD X-CUBE-MEMS1, X-CUBE-MEMS1, Bibliothèque de détection de chute en temps réel MotionFD, Bibliothèque de détection de chute en temps réel, Bibliothèque de détection de chute, Bibliothèque de détection, Bibliothèque

Références

Laisser un commentaire

Votre adresse email ne sera pas publiée. Les champs obligatoires sont marqués *