Sommario:

IDC2018IOT Leg Running Tracker: 6 passaggi
IDC2018IOT Leg Running Tracker: 6 passaggi

Video: IDC2018IOT Leg Running Tracker: 6 passaggi

Video: IDC2018IOT Leg Running Tracker: 6 passaggi
Video: The Howling Mines | Critical Role: THE MIGHTY NEIN | Episode 6 2024, Novembre
Anonim
IDC2018IOT Leg Running Tracker
IDC2018IOT Leg Running Tracker

Abbiamo avuto questa idea come parte del corso "Internet Of Things" presso IDC Herzliya.

L'obiettivo del progetto è migliorare le attività fisiche che comportano la corsa o la camminata utilizzando NodeMCU, alcuni sensori e un server potrebbe. Il risultato di questo progetto è un dispositivo IOT molto utile che può essere trasformato in futuro in un vero prodotto di produzione che verrà utilizzato ovunque! Fateci sapere cosa ne pensate:)

Prima di iniziare, assicurati di avere:

* Dispositivo NodeMCU.

* 1 sensore piezoelettrico.

* Sensore MPU6050.

* Una grande matrice.

* Corda elastica.

* Conto Firebase.

Opzionale:

* Sensore piezoelettrico multiplo

* multiplexer

Passaggio 1: configurazione e calibrazione dell'MPU6050

Image
Image

"caricamento = "pigro"

Configurazione del Piezo
Configurazione del Piezo

Istruzioni:

  • Collegare il piezo con resistenza da 1M (vedi foto allegata).
  • Carica lo schizzo allegato.
  • Collegare il dispositivo a un piede utilizzando la corda elastica.
  • Apri "plotter seriale".
  • Guarda il video allegato a questo passaggio.

Passaggio 3: integrazione dei sensori in Arduino

Image
Image
Integrazione dei sensori in Arduino
Integrazione dei sensori in Arduino

Abbiamo visto come calibrare i sensori, ora integreremo entrambi i sensori nel NodeMCU!

  • Collegare entrambi i sensori al dispositivo, utilizzare gli stessi pin dei passaggi 1+2.
  • Carica lo schizzo allegato.
  • Collegare il dispositivo con i 2 sensori a un piede.
  • Apri "plotter seriale".
  • Guarda il video allegato.

Passaggio 4: invio dei dati al cloud

Invio di dati al cloud!
Invio di dati al cloud!
Invio di dati al cloud!
Invio di dati al cloud!
Invio di dati al cloud!
Invio di dati al cloud!

In questo passaggio collegheremo il nostro dispositivo al cloud e invieremo i dati per vedere dei grafici fantastici!

Utilizzeremo il protocollo MQTT e invieremo i dati a un server gratuito chiamato "Adafruit".

NOTA: Adafruit non supporta l'invio di dati alcune volte al secondo, funziona a ritmi più lenti, quindi invieremo una media dei nostri punti dati e non i punti dati stessi. Trasformeremo i dati dei nostri 2 sensori in dati medi utilizzando le seguenti trasformazioni:

* Il tempo di rilevamento dei passi verrà trasformato in passi al minuto. La durata di ogni passaggio può essere trovata da (millis() - step_timestamp) e la media può essere eseguita utilizzando un filtro, come abbiamo visto prima: val = val * 0.7 + new_val * 0.3.

* La potenza del passo verrà trasformata in potenza del passo medio. Utilizzeremo la stessa metodologia di utilizzo di "max" per ogni passaggio, ma utilizzeremo un filtro per eseguire una media utilizzando il filtro media = media * 0,6 + nuovo_val * 0,4.

Istruzioni:

  • Entra nel sito di Adafruit all'indirizzo io.adafruit.com e assicurati di avere un account.
  • Crea una nuova dashboard, puoi chiamarla "Rilevatore di passi".
  • All'interno della dashboard, premi il pulsante + e seleziona "grafico a linee" e crea un feed denominato "steps_per_min".
  • All'interno della dashboard, premi il pulsante + e seleziona "grafico a linee" e crea un feed denominato "average_step_power".
  • Ora dovresti vedere 2 grafici vuoti per ciascuno dei campi.
  • Utilizzare lo schizzo allegato e impostare la seguente configurazione:

USERNAME = il tuo nome utente Adafruit.

KEY = la tua chiave Adafruit

WLAN_SSID = nome WIFI

WLAN_PASS = Pass WIFI

mpuStepThreshold = Soglia dal passaggio 2

Quindi puoi collegare il dispositivo a un piede e lo schizzo invierà i dati dei passaggi al server!

Passaggio 5: utilizzo di 2 dispositivi contemporaneamente

Utilizzo di 2 dispositivi contemporaneamente
Utilizzo di 2 dispositivi contemporaneamente
Utilizzo di 2 dispositivi contemporaneamente
Utilizzo di 2 dispositivi contemporaneamente

In questo passaggio, simuleremo 2 persone che camminano con il dispositivo contemporaneamente!

Utilizzeremo 2 dispositivi diversi, con gli stessi punti dati come spiegato nel passaggio 4.

Quindi questo è davvero facile, ci sono 3 semplici compiti:

1) creare feed extra per i dati dal 2° dispositivo, suggeriamo di dare un post-fix di "_2"

2) modificare i blocchi nella dashboard per presentare i dati di entrambi i feed.

3) cambiare il nome dei feed nello sketch del secondo dispositivo.

4) Guarda i risultati!

NOTA:

Adafruit resiste ai dati che arrivano troppo velocemente, potrebbe essere necessario regolare la frequenza con cui i dati vengono inviati al server. fallo trovando quanto segue nello schizzo:

// Invia ogni 5 secondi non superare il limite di Adafruit per gli utenti gratuiti. // Se usi premium o il tuo server, sentiti libero di cambiare. // Ogni volta invia un punto dati alternato. if(millis() - lastTimeDataSent > 5000){

Passaggio 6: miglioramenti, note e piani futuri

La sfida principale:

La sfida principale del progetto è stata testare il NodeMCU in un'attività fisica. Il cavo usb si disconnette spesso, e quando si cerca di muoversi velocemente ci possono essere problemi di distacco dei pin. Molte volte stavamo eseguendo il debug di un pezzo di codice che funzionava davvero e il problema era nel regno fisico.

Abbiamo superato questa sfida portando il laptop vicino al corridore e scrivendo ogni pezzo di codice alla volta.

Un'altra sfida è stata quella di far interagire i diversi componenti senza problemi:

  • Il piezo con l'accelerometro: Soved che come descritto nel passaggio 3, da un'idea creativa che abbiamo avuto.
  • I sensori con il server: come descritto nel passaggio 4, abbiamo trasformato i valori in altri valori che possono essere inviati a un server con un ritmo più lento.

I limiti del sistema:

  • Necessita di calibrazione prima dell'uso.
  • Necessita di essere trasformato in un prodotto più rigido, che non si rompa facilmente in un'attività fisica.
  • Il sensore piezoelettrico non è molto preciso.
  • Ha bisogno di una connessione wifi. (Facilmente risolvibile utilizzando l'hotspot del cellulare)

Progetti futuri

Ora che abbiamo un dispositivo di monitoraggio delle gambe completamente funzionante ci sono ulteriori miglioramenti che possono essere fatti!

Più pizze!

  • Collega i piezo a diverse aree del piede.
  • Usa multiplexer poiché NodeMCU supporta solo un pin analogico.
  • Può mostrare una mappa termica del piede per descrivere le aree di impatto.
  • Può utilizzare questi dati per creare avvisi su una postura e un equilibrio del corpo errati.

Molti dispositivi!

  • Ti abbiamo mostrato come collegare 2 dispositivi contemporaneamente, ma puoi collegare 22 piezo a 22 giocatori di calcio!
  • I dati possono essere esposti durante il gioco per mostrare alcune metriche interessanti sui giocatori!

Sensori avanzati

Abbiamo usato piezo e accelerometro, ma puoi aggiungere altri dispositivi che arricchiranno l'output e forniranno più dati:

  • Laser precisi per rilevare i passi.
  • Misura la distanza tra il piede e il suolo.
  • Misurare la distanza tra diversi giocatori (in caso di più dispositivi)

Consigliato: