Inhoudsopgave:

IDC2018IOT Leg Running Tracker - Ajarnpa
IDC2018IOT Leg Running Tracker - Ajarnpa

Video: IDC2018IOT Leg Running Tracker - Ajarnpa

Video: IDC2018IOT Leg Running Tracker - Ajarnpa
Video: Jimi IoT launches smart livestock tracking solution. 2024, Juli-
Anonim
IDC2018IOT Been Running Tracker
IDC2018IOT Been Running Tracker

We kwamen op dit idee als onderdeel van de cursus "Internet Of Things" bij IDC Herzliya.

Het doel van het project is om fysieke activiteiten waarbij hardlopen of wandelen betrokken is, te verbeteren met behulp van NodeMCU, een paar sensoren en een server. Het resultaat van dit project is een zeer bruikbaar IOT-apparaat dat in de toekomst kan worden omgezet in een echt productieproduct dat overal zal worden gebruikt! Laat ons weten wat je ervan vindt:)

Zorg ervoor dat u, voordat u begint, beschikt over:

* NodeMCU-apparaat.

* 1 piëzo-elektrische sensor.

* MPU6050-sensor.

* Eén grote matrix.

* Elastisch touw.

* Firebase-account.

Optioneel:

* Meerdere piëzo-elektrische sensor

* multiplexer

Stap 1: De MPU6050. instellen en kalibreren

Image
Image

"laden = "lui"

De piëzo instellen
De piëzo instellen

Instructies:

  • Sluit de piëzo aan met een weerstand van 1M (zie bijgevoegde afbeelding).
  • Upload de bijgevoegde schets.
  • Verbind het apparaat met één voet met behulp van het elastische touw.
  • Open "serie plotter".
  • Bekijk de video die bij deze stap is gevoegd.

Stap 3: Integratie van de sensoren in de Arduino

Image
Image
De sensoren integreren in de Arduino
De sensoren integreren in de Arduino

We hebben gezien hoe we de sensoren moeten kalibreren, nu gaan we beide sensoren integreren in de NodeMCU!

  • Sluit beide sensoren aan op het apparaat, gebruik dezelfde pinnen als in stap 1+2.
  • Laad de bijgevoegde schets.
  • Verbind het apparaat met de 2 sensoren met één voet.
  • Open "serie plotter".
  • Bekijk de bijgevoegde video.

Stap 4: Gegevens naar de cloud verzenden

Gegevens naar de cloud verzenden!
Gegevens naar de cloud verzenden!
Gegevens naar de cloud verzenden!
Gegevens naar de cloud verzenden!
Gegevens naar de cloud verzenden!
Gegevens naar de cloud verzenden!

In deze stap zullen we ons apparaat verbinden met de cloud en gegevens verzenden om een aantal fantastische grafieken te zien!

We gebruiken het MQTT-protocol en sturen gegevens naar een gratis server genaamd "Adafruit".

OPMERKING: Adafruit ondersteunt het verzenden van gegevens niet een paar keer per seconde, het werkt langzamer, daarom sturen we een gemiddelde van onze gegevenspunten, en niet de gegevenspunten zelf. We zullen de gegevens van onze 2 sensoren transformeren naar gemiddelde gegevens met behulp van de volgende transformaties:

* Stapdetectietijd wordt omgezet in stappen per minuut. Elke stapduur kan worden gevonden door (millis() - step_timestamp), en het middelen kan worden gedaan met behulp van een filter, zoals we eerder zagen: val = val * 0.7 + new_val * 0.3.

* Stapvermogen wordt omgezet in gemiddeld stapvermogen. We zullen dezelfde methode gebruiken om "max" voor elke stap te gebruiken, maar we zullen een filter gebruiken om een middeling uit te voeren met behulp van het filtergemiddelde = gemiddelde * 0.6 + new_val * 0.4.

Instructies:

  • Ga naar de website van Adafruit op het adres io.adafruit.com en zorg dat je een account hebt.
  • Maak een nieuw dashboard aan, noem het "Mijn stappendetector".
  • Druk in het dashboard op de knop + en selecteer "lijndiagram" en maak een feed met de naam "steps_per_min".
  • Druk in het dashboard op de knop + en selecteer "lijndiagram" en maak een feed met de naam "average_step_power".
  • U zou nu 2 lege grafieken moeten zien voor elk van de velden.
  • Gebruik de bijgevoegde schets en stel de volgende configuratie in:

GEBRUIKERSNAAM = uw Adafruit-gebruikersnaam.

KEY = uw Adafruit-sleutel

WLAN_SSID = WIFI-naam

WLAN_PASS = WIFI-pas

mpuStepThreshold = Drempel vanaf stap 2

Vervolgens kunt u het apparaat op één voet aansluiten en de schets stuurt de stappengegevens naar de server!

Stap 5: 2 apparaten tegelijkertijd gebruiken

2 apparaten tegelijk gebruiken
2 apparaten tegelijk gebruiken
2 apparaten tegelijk gebruiken
2 apparaten tegelijk gebruiken

Bij deze stap simuleren we 2 mensen die tegelijkertijd met het apparaat lopen!

We zullen 2 verschillende apparaten gebruiken - met dezelfde datapunten zoals uitgelegd in stap 4.

Dit is dus heel eenvoudig, er zijn 3 simpele taken:

1) maak extra feeds voor de gegevens van het 2e apparaat, we raden aan een post-fix van "_2" te geven

2) verander de blokken in het dashboard om gegevens uit beide feeds te presenteren.

3) verander de naam van de feeds in de schets van het tweede apparaat.

4) Bekijk de resultaten!

OPMERKING:

Adafruit weerstaat gegevens die te snel komen, het kan nodig zijn om de frequentie aan te passen waarmee gegevens naar de server worden verzonden. doe dat door het volgende in de schets te vinden:

/ / Verstuur elke 5 seconden de limiet van Adafruit voor gratis gebruikers niet. // Als u premium of uw eigen server gebruikt, kunt u dit gerust wijzigen. // Stuur elke keer een wisselend datapunt. if(millis() - lastTimeDataSent > 5000){

Stap 6: Verbeteringen, notities en toekomstplannen

De belangrijkste uitdaging:

De belangrijkste uitdaging in het project was het testen van de NodeMCU in een fysieke activiteit. De USB-kabel wordt vaak losgekoppeld en als u snel probeert te bewegen, kunnen er problemen zijn met het losmaken van pinnen. Vaak waren we bezig met het debuggen van een stukje code dat echt werkte, en het probleem lag in het fysieke domein.

We hebben deze uitdaging overwonnen door de laptop dicht bij de hardloper te dragen en elk stukje code tegelijk te schrijven.

Een andere uitdaging was om de verschillende componenten soepel te laten samenwerken:

  • De piëzo met de acceleromter: Dat zoals beschreven in stap 3, door een creatief idee dat we hadden.
  • De sensoren met de server: zoals beschreven in stap 4 hebben we de waarden omgezet in andere waarden die in een langzamer tempo naar een server kunnen worden verzonden.

De beperkingen van het systeem:

  • Kalibratie nodig voor gebruik.
  • Moet worden omgezet in een stijver product, dat niet gemakkelijk breekt tijdens een fysieke activiteit.
  • De piëzo-elektrische sensor is niet erg nauwkeurig.
  • Heeft wat wifi-verbinding nodig. (Eenvoudig op te lossen met mobiele telefoon hotspot)

Plannen voor de toekomst

Nu we een volledig werkend beenbewakingsapparaat hebben, zijn er nog meer verbeteringen mogelijk!

Meerdere pizeos!

  • Verbind piëzo's met verschillende gebieden in de voet.
  • Gebruik multiplexer omdat NodeMCU slechts één analoge pin ondersteunt.
  • Kan een hittekaart van de voet tonen om impactgebieden te beschrijven.
  • Kan deze gegevens gebruiken om waarschuwingen te creëren over een verkeerde houding en lichaamsbalans.

Veel apparaten!

  • We hebben je laten zien hoe je 2 apparaten tegelijkertijd kunt verbinden, maar je kunt 22 piëzo's verbinden met 22 voetballers!
  • De gegevens kunnen tijdens het spel worden weergegeven om enkele interessante statistieken over de spelers te tonen!

Geavanceerde sensoren

We hebben piëzo en versnellingsmeter gebruikt, maar je kunt andere apparaten toevoegen die de uitvoer zullen verrijken en meer gegevens zullen geven:

  • Nauwkeurige lazers om voetstappen te detecteren.
  • Meet de afstand tussen de voet en de grond.
  • Meet de afstand tussen verschillende spelers (in het geval van meerdere apparaten)

Aanbevolen: