Innehållsförteckning:

IDC2018IOT Ben Running Tracker: 6 steg
IDC2018IOT Ben Running Tracker: 6 steg

Video: IDC2018IOT Ben Running Tracker: 6 steg

Video: IDC2018IOT Ben Running Tracker: 6 steg
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Juli
Anonim
IDC2018IOT Ben Running Tracker
IDC2018IOT Ben Running Tracker

Vi kom ut med denna idé som en del av kursen "Internet Of Things" på IDC Herzliya.

Projektets mål är att förbättra fysiska aktiviteter som innebär att springa eller gå med hjälp av NodeMCU, några sensorer och en server. Resultatet av detta projekt är en mycket användbar IOT -enhet som i framtiden kan förvandlas till en riktig produktionsprodukt som kommer att användas överallt! Berätta gärna vad du tycker:)

Innan du börjar, se till att du har:

* NodeMCU -enhet.

* 1 Piezoelektrisk sensor.

* MPU6050 -sensor.

* En stor matris.

* Elastiskt rep.

* Firebase -konto.

Frivillig:

* Flera piezoelektriska sensorer

* multiplexer

Steg 1: Installera och kalibrera MPU6050

Image
Image

"laddar =" lat"

Sätta upp Piezo
Sätta upp Piezo

Instruktioner:

  • Anslut piezo med 1M motstånd (se bifogad bild).
  • Ladda upp den bifogade skissen.
  • Anslut enheten till en fot med det elastiska repet.
  • Öppna "serieplotter".
  • Se videon som bifogas detta steg.

Steg 3: Integrera sensorerna till Arduino

Image
Image
Integrering av sensorerna till Arduino
Integrering av sensorerna till Arduino

Vi såg hur vi kalibrerade sensorerna, nu ska vi integrera båda sensorerna i NodeMCU!

  • Anslut båda sensorerna till enheten, använd samma stift som i steg 1+2.
  • Ladda den bifogade skissen.
  • Anslut enheten med de 2 sensorerna till en fot.
  • Öppna "serieplotter".
  • Se den bifogade videon.

Steg 4: Skicka data till molnet

Skicka data till molnet!
Skicka data till molnet!
Skicka data till molnet!
Skicka data till molnet!
Skicka data till molnet!
Skicka data till molnet!

I det här steget kommer vi att ansluta vår enhet till molnet och skicka data för att se några fantastiska diagram!

Vi kommer att använda MQTT -protokollet och skicka data till en gratis server som heter "Adafruit".

OBS: Adafruit stöder inte att skicka data några gånger varje sekund, det fungerar i långsammare takt, därför kommer vi att skicka ett genomsnitt av våra datapunkter, och inte datapunkterna själva. Vi kommer att omvandla data från våra 2 sensorer till medelvärdesdata med hjälp av följande transformationer:

* Stegdetekteringstiden omvandlas till steg per minut. Varje steglängd kan hittas med (millis () - step_timestamp), och medelvärdet kan göras med ett filter, som vi såg tidigare: val = val * 0,7 + new_val * 0,3.

* Stegkraft kommer att omvandlas till genomsnittlig stegeffekt. Vi kommer att använda samma metod för att använda "max" för varje steg, men vi kommer att använda ett filter för att göra ett medelvärde med hjälp av filtergenomsnittet = genomsnitt * 0,6 + nytt_val * 0,4.

Instruktioner:

  • Gå in på Adafruits webbplats på adressen io.adafruit.com och se till att du har ett konto.
  • Skapa en ny instrumentpanel, du kan ge den namnet "Mina stegdetektorer".
  • Inne i instrumentpanelen, tryck på + -knappen och välj "linjediagram" och skapa ett flöde som heter "steg_per_min".
  • Inne i instrumentpanelen, tryck på + -knappen och välj "linjediagram" och skapa ett flöde med namnet "genomsnittlig_stegskraft".
  • Du bör nu se två tomma diagram för vart och ett av fälten.
  • Använd den bifogade skissen och ställ in följande konfiguration:

USERNAME = ditt Adafruit -användarnamn.

KEY = din Adafruit -nyckel

WLAN_SSID = WIFI -namn

WLAN_PASS = WIFI -pass

mpuStepThreshold = Tröskelvärde från steg 2

Sedan kan du ansluta enheten till en fot och skissen skickar stegdata till servern!

Steg 5: Använda 2 enheter samtidigt

Använda 2 enheter samtidigt
Använda 2 enheter samtidigt
Använda 2 enheter samtidigt
Använda 2 enheter samtidigt

På det här steget kommer vi att simulera 2 personer som går med enheten samtidigt!

Vi kommer att använda 2 olika enheter - med samma datapunkter som förklaras i steg 4.

Så det här är verkligen enkelt, det finns tre enkla uppgifter:

1) skapa extra flöden för data från den andra enheten, vi föreslår att du ger en efterkorrigering av "_2"

2) ändra blocken i instrumentpanelen för att presentera data från båda flödena.

3) ändra namnet på flödena i skissen av den andra enheten.

4) Se resultatet!

NOTERA:

Adafruit motstår data som kommer för snabbt, det kan behövas för att justera frekvensen som data skickas till servern. gör det genom att hitta följande i skissen:

/ / Skicka var femte sekund inte överstiga Adafruits gräns för gratis användare. // Om du använder premium eller din egen server kan du ändra. // Skicka en alternativ datapunkt varje gång. if (millis () - lastTimeDataSent> 5000) {

Steg 6: Förbättringar, anteckningar och framtidsplaner

Huvudutmaningen:

Den största utmaningen i projektet var att testa NodeMCU i en fysisk aktivitet. USB -kabeln kopplas bort ofta, och när man försöker röra sig snabbt kan det uppstå problem med att lossa stiften. Många gånger felsökade vi en kod som faktiskt fungerade, och problemet var i det fysiska området.

Vi övervann denna utmaning genom att bära den bärbara datorn nära löparen och skriva varje kodbit åt gången.

En annan utmaning var att få de olika komponenterna att interagera smidigt:

  • Piezoen med accelerometern: Gjorde det som beskrivs i steg 3, av en kreativ idé vi hade.
  • Sensorerna med servern: som beskrivs i steg 4 omvandlade vi värdena till andra värden som kan skickas till en server i en långsammare takt.

Systemets begränsningar:

  • Behöver kalibrering före användning.
  • Måste förvandlas till en mer stel produkt som inte går sönder lätt vid fysisk aktivitet.
  • Den piezoelektriska sensorn är inte särskilt exakt.
  • Behöver viss wifi -anslutning. (Lätt att lösa med mobiltelefons hotspot)

Framtida planer

Nu när vi har en fullt fungerande benövervakningsenhet finns det ytterligare förbättringar som kan göras!

Flera pizeos!

  • Anslut piezos till olika områden i foten.
  • Använd multiplexer eftersom NodeMCU bara stöder en analog pin.
  • Kan visa en värmekarta över foten för att beskriva påverkningsområden.
  • Kan använda dessa data för att skapa varningar om fel hållning och kroppsbalans.

Många enheter!

  • Vi visade dig hur du ansluter 2 enheter samtidigt, men du kan ansluta 22 piezos till 22 fotbollsspelare!
  • Data kan exponeras under spelet för att visa några intressanta mätvärden om spelarna!

Avancerade sensorer

Vi använde piezo och accelerometer, men du kan lägga till andra enheter som berikar utmatningen och ger mer data:

  • Exakta lazers för att upptäcka fotspår.
  • Mät avståndet mellan foten och marken.
  • Mät avståndet mellan olika spelare (vid flera enheter)

Rekommenderad: