Logo ST-Microelectronics

Libreria di stima della posa in tempo reale NUCLEO-F401RE di ST Microelectronics

ST-Microelectronics-NUCLEO-F401RE-Real-Time-Pose-Estimation-Libreria-prodotto

Informazioni sul prodotto

Specifiche

  • Nome prodotto: Libreria di stima della posa in tempo reale MotionPE
  • Compatibilità: espansione X-CUBE-MEMS1 per STM32Cube
  • Progettato per: solo ST MEMS
  • Dati dell'accelerometro SampFrequenza vocale: 16 Hz

Istruzioni per l'uso del prodotto

Libreria MotionPE finitaview:

La libreria MotionPE amplia le funzionalità del software X-CUBE-MEMS1, acquisendo dati dall'accelerometro per fornire informazioni sulla posa attuale dell'utente.

Sampl'implementazione:

COMEampL'implementazione le è disponibile per le schede di espansione X-NUCLEO-IKS01A3 e X-NUCLEO-IKS4A1, montate sulle schede di sviluppo NUCLEO.

Descrizione della libreria MotionPE:

La libreria di stima delle pose MotionPE è in grado di distinguere le pose degli utenti, come seduto, in piedi e sdraiato, ed è pensata per dispositivi indossati al polso, con riconoscimento basato esclusivamente sui dati dell'accelerometro.

API della libreria MotionPE

  • MotionPE_GetLibVersion(char *version): Ottieni la libreria
    informazioni sulla versione.
  • MotionPE_Initialize(): Inizializza il
    biblioteca.
  • MotionPE_ResetLib(): Reimposta la libreria.
  • MotionPE_Update(MPE_input_t *data_in, MPE_output_t
    *data_out)
    : Aggiorna la libreria con i dati dell'accelerometro.
  • MotionPE_SetOrientation_Acc(const char
    *acc_orientation)
    : Imposta l'orientamento dell'accelerometro.

Domande frequenti

  • D: Posso utilizzare la libreria MotionPE con sensori MEMS non ST?
    • A: La libreria è progettata solo per ST MEMS. L'utilizzo di altri sensori MEMS potrebbe comportare funzionalità e prestazioni diverse.
  • D: Quali sono i dati richiesti dall'accelerometro?ampfrequenza di ling per la libreria MotionPE?
    • A: La s richiestaampLa frequenza di scansione è di 16 Hz per una stima accurata della posa.

Introduzione

La libreria middleware MotionPE fa parte del software X-CUBE-MEMS1 e funziona su STM32. Fornisce informazioni in tempo reale sulla posa corrente dell'utente in base ai dati di un dispositivo. È in grado di distinguere le seguenti pose: seduto, in piedi e sdraiato. La libreria è pensata per dispositivi indossati al polso. Questa libreria è pensata per funzionare solo con ST MEMS. L'algoritmo è fornito in formato di libreria statica ed è progettato per essere utilizzato su microcontrollori STM32 basati sull'architettura ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 o ARM® Cortex®-M7. È basato sulla tecnologia software STM32Cube per facilitare la portabilità su diversi microcontrollori STM32. Il software è dotato di sampimplementazione in esecuzione sulla scheda di espansione X-NUCLEO-IKS01A3 o X-NUCLEO-IKS4A1 su una scheda di sviluppo NUCLEO-F401RE, NUCLEO-U575ZI-Q o NUCLEO-L152RE.

Acronimi e Abbreviazioni

Tabella 1. Elenco degli acronimiST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (1)

Libreria middleware MotionPE nell'espansione software X-CUBE-MEMS1 per STM32Cube

MotionPE oltreview

La libreria MotionPE espande la funzionalità del software X-CUBE-MEMS1. La libreria acquisisce dati dall'accelerometro e fornisce informazioni sulla posa corrente dell'utente in base ai dati di un dispositivo. La libreria è progettata solo per ST MEMS. La funzionalità e le prestazioni quando si utilizzano altri sensori MEMS non vengono analizzate e possono essere significativamente diverse da quanto descritto nel documento. ComeampL'implementazione è disponibile per le schede di espansione X-NUCLEO-IKS01A3 e X-NUCLEO-IKS4A1, montate su una scheda di sviluppo NUCLEO-F401RE, NUCLEO-U575ZI-Q o NUCLEO-L152RE.

Libreria MotionPE

Le informazioni tecniche che descrivono in modo completo le funzioni e i parametri delle API MotionPE sono disponibili nel file HTML compilato MotionPE_Package.chm file situato nella cartella Documentazione.

Descrizione della libreria MotionPE

La libreria di stima della posa MotionPE gestisce i dati acquisiti dall'accelerometro; include:

  • possibilità di distinguere le seguenti pose dell'utente: seduto, in piedi, sdraiato
  • destinato ai dispositivi da polso
  • riconoscimento basato solo sui dati dell'accelerometro
  • dati accelerometro richiesti sampfrequenza ling di 16 Hz
  • requisiti di risorse:
    • Cortex-M3: 12.0 kB di codice e 2.8 kB di memoria dati
    • Cortex-M33: 12.5 kB di codice e 2.8 kB di memoria dati
    • Cortex-M4: 12.9 kB di codice e 2.8 kB di memoria dati
    • Cortex-M7: 12.9 kB di codice e 2.8 kB di memoria dati
  • disponibile per le architetture ARM® Cortex®-M3, ARM Cortex®-M33, ARM® Cortex®-M4 o ARM® Cortex®-M7.

API di MotionPE

Le API della libreria MotionPE sono:

  • uint8_t MotionPE_GetLibVersion(char *versione)
    • recupera la versione della libreria
    • *version è un puntatore a un array di 35 caratteri
    • restituisce il numero di caratteri nella stringa della versione
  • void MotionPE_Initialize(void)
    • esegue l'inizializzazione della libreria MotionPE e la configurazione del meccanismo interno
      Nota: questa funzione deve essere chiamata prima di utilizzare la libreria di stima della posa e il modulo CRC nel microcontrollore STM32 (nel registro di abilitazione dell'orologio periferico RCC) deve essere abilitato prima di utilizzare la libreria
  • annulla MotionPE_ResetLib(vuoto)
    • reimpostare la libreria
  • void MotionPE_Update(MPE_input_t *dati_in, MPE_output_t *dati_out)
    • esegue l'algoritmo di stima della posa
    • Il parametro *data_in è un puntatore a una struttura con dati di input
    • i parametri per il tipo di struttura MPE_input_t sono:
      • AccX è il valore del sensore dell'accelerometro sull'asse X in g
      • AccY è il valore del sensore dell'accelerometro sull'asse Y in g
      • AccZ è il valore del sensore dell'accelerometro sull'asse Z in g
    • Il parametro *data_out è un puntatore a un enum con i seguenti elementi:
      • MPE_SCONOSCIUTO = 0
      • MPE_SEDUTO = 1
      • MPE_STANDING = 2
      • MPE_SEDUTO_GIÙ = 3
    • void MotionPE_SetOrientation_Acc(const char *acc_orientation)
      • questa funzione viene utilizzata per impostare l'orientamento dei dati dell'accelerometro
      • la configurazione viene solitamente eseguita immediatamente dopo la chiamata alla funzione MotionPE_Initialize
      • Il parametro *acc_orientation è un puntatore a una stringa di tre caratteri che indica la direzione di ciascuno degli orientamenti positivi del sistema di riferimento utilizzato per l'output dei dati dell'accelerometro, nella sequenza x, y, z. I valori validi sono: n (nord) o s (sud), w (ovest) o e (est), u (su) o d (giù).
      • Come mostrato nella figura sottostante, il sensore accelerometro X-NUCLEO-IKS4A1 ha un orientamento SEU (x – Sud, y – Est, z – Su), quindi la stringa è: “seu”.

ST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (2)ST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (3)

Diagramma di flusso dell'APIST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (4)

Codice demo

Il seguente codice dimostrativo legge i dati dal sensore dell'accelerometro e ottiene la posa stimata

ST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (5)

Prestazioni dell'algoritmo

L'algoritmo di stima della posa utilizza solo dati dall'accelerometro e funziona a bassa frequenza (16 Hz) per ridurre il consumo di energia. La tabella seguente mostra le prestazioni dell'algoritmo di stima della posa in termini di percentuali di successo del riconoscimento

ST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (6)

Sampl'applicazione

Il middleware MotionPE può essere facilmente manipolato per creare applicazioni utente. Comeampl'applicazione è fornita nella cartella Applicazione. È progettata per essere eseguita su una scheda di sviluppo NUCLEO-F401RE, NUCLEOU575ZI-Q o NUCLEO-L152RE collegata a una scheda di espansione X-NUCLEO-IKS01A3 o X-NUCLEO-IKS4A1. L'applicazione riconosce la posizione corrente dell'utente in tempo reale.

ST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (7)

La figura sopra mostra il pulsante utente B1 e i tre LED della scheda NUCLEO-F401RE. Una volta alimentata la scheda, il LED LD3 (PWR) si accende.
Nota: dopo aver acceso la scheda, il LED LD2 lampeggia una volta indicando che l'applicazione è pronta. È richiesta una connessione tramite cavo USB per monitorare i dati in tempo reale. La scheda è alimentata dal PC tramite connessione USB. Questa modalità di lavoro consente all'utente di visualizzare in tempo reale la posizione dell'utente rilevata, i dati dell'accelerometro, il tempo di stamp e qualsiasi altro dato del sensore, utilizzando MEMS-Studio.

Applicazione MEMS-Studio

Le sampL'applicazione utilizza l'applicazione MEMS-Studio, che può essere scaricata da www.st.com.
Passaggio 1. Assicurarsi che i driver necessari siano installati e che la scheda STM32 Nucleo con la scheda di espansione appropriata sia collegata al PC.

Fase 2. Avviare l'applicazione MEMS-Studio per aprire la finestra principale dell'applicazione. Se una scheda STM32 Nucleo con firmware supportato è collegata al PC, la porta COM appropriata viene rilevata automaticamente. Premere il pulsante [Connect] per stabilire la connessione alla scheda di valutazioneST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (8)

Passaggio 3. Quando si è connessi a una scheda STM32 Nucleo con firmware supportato, si apre la scheda [Valutazione libreria].

Per avviare e interrompere lo streaming dei dati, attivare l'opzione [Avvia] appropriata ST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (9)o [Stop]ST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (10) pulsante sulla barra degli strumenti verticale esterna. I dati provenienti dal sensore collegato possono essere viewselezionando la scheda [Tabella dati] sulla barra degli strumenti verticale interna.

ST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (11)

Passaggio 4. Fare clic su [Stima della posa] per aprire la pagina dedicata a questa libreria.ST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (12)

Passaggio 5. Fare clic su [Salva in File] per aprire la finestra di configurazione del datalogging. Selezionare i dati di stima del sensore e della posa da salvare nel filePuoi avviare o interrompere il salvataggio cliccando sul pulsante corrispondenteST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (13)

Fase 6. La modalità Data Injection può essere utilizzata per inviare i dati acquisiti in precedenza alla libreria e ricevere il risultato. Selezionare la scheda [Data Injection] sulla barra degli strumenti verticale per aprire la finestra dedicata view per questa funzionalitàST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (14)

Passaggio 7. Fare clic sul pulsante [Sfoglia] per selezionare file con i dati precedentemente acquisiti in formato CSV. I dati verranno caricati nella tabella nel formato corrente view.

Altri pulsanti diventeranno attivi. Puoi cliccare su:

  • Pulsante [Modalità offline] per attivare/disattivare la modalità offline del firmware (modalità che utilizza i dati acquisiti in precedenza).
  • Pulsanti [Start]/[Stop]/[Step]/[Repeat] per controllare il feed di dati da MEMS-Studio alla libreria

Riferimenti

Tutte le seguenti risorse sono disponibili gratuitamente su www.st.com.

  1. UM1859: Introduzione ai MEMS di movimento X-CUBE-MEMS1 e all'espansione software del sensore ambientale per STM32Cube
  2. UM1724: schede STM32 Nucleo-64 (MB1136)
  3. UM3233: Iniziare con MEMS-Studio

Cronologia delle revisioni

Tabella 5. Cronologia delle revisioni del documento

ST-Microelectronics-NUCLEO-F401RE-Libreria-di-stima-della-posa-in-tempo-reale-fig (15)

AVVISO IMPORTANTE – LEGGERE ATTENTAMENTE

STMicroelectronics NV e le sue controllate ("ST") si riservano il diritto di apportare cambiamenti, correzioni, miglioramenti, modifiche e miglioramenti ai prodotti ST e/o al presente documento in qualsiasi momento senza preavviso. Gli acquirenti devono ottenere le informazioni più recenti sui prodotti ST prima di effettuare gli ordini. I prodotti ST sono venduti in conformità ai termini e alle condizioni di vendita della ST in vigore al momento della conferma dell'ordine. Gli acquirenti sono gli unici responsabili della scelta, selezione e utilizzo dei prodotti della ST e la ST non si assume alcuna responsabilità per l'assistenza applicativa o la progettazione dei prodotti degli acquirenti. La ST non concede alcuna licenza, esplicita o implicita, su alcun diritto di proprietà intellettuale. La rivendita di prodotti ST con disposizioni diverse dalle informazioni qui stabilite annullerà qualsiasi garanzia concessa dalla ST per tale prodotto. ST e il logo ST sono marchi di fabbrica della ST. Per ulteriori informazioni sui marchi ST, fare riferimento a www.st.com/trademarks. Tutti gli altri nomi di prodotti o servizi appartengono ai rispettivi proprietari. Le informazioni contenute in questo documento sostituiscono le informazioni precedentemente fornite in qualsiasi versione precedente di questo documento. © 2024 STMicroelectronics – Tutti i diritti riservati

Documenti / Risorse

Libreria di stima della posa in tempo reale NUCLEO-F401RE di ST Microelectronics [pdf] Guida utente
NUCLEO-F401RE, NUCLEO-U575ZI-Q, NUCLEO-L152RE, NUCLEO-F401RE Libreria di stima della posa in tempo reale, NUCLEO-F401RE, Libreria di stima della posa in tempo reale, Libreria di stima della posa nel tempo, Libreria di stima della posa, Libreria di stima, Libreria

Riferimenti

Lascia un commento

Il tuo indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *