INHOUDSOPGAWE:

Postshirt: Realtime drabare postuuropsporing: 9 stappe
Postshirt: Realtime drabare postuuropsporing: 9 stappe

Video: Postshirt: Realtime drabare postuuropsporing: 9 stappe

Video: Postshirt: Realtime drabare postuuropsporing: 9 stappe
Video: Are You Garbage Comedy Podcast: The Salsa Situation w/ Kippy & Foley 2024, November
Anonim
Image
Image
Postshirt: Realtime Wearable Posture Detection
Postshirt: Realtime Wearable Posture Detection

Postshirt is 'n intydse draadlose postuuropsporingstelsel wat versnellingsmeterdata vanaf 'n Adafruit Feather na 'n Android -toepassing via Bluetooth stuur en klassifiseer. Die volledige stelsel kan intyds opspoor of die gebruiker 'n slegte postuur het en 'n stootkennisgewing skep wanneer die gebruiker begin sak, die opsporing werk ook terwyl hy loop.

Voorrade

Elektronika

1 x Android -slimfoon

1 x Adafruitveer

1 x litium -ion polimeer battery - 3,7v 100mAh (opsioneel vir draadlose gebruik)

2 x ADXL335 drie-as versnellingsmeter

Materiaal

Aansluitdraad

Rol band

Stap 1: Installeer nodige IDE's en biblioteke

Adafruit veer

Installeer eers die Arduino IDE en volg dan die stappe om die Adafruit nRF51 BLE -biblioteek te installeer

Jupyter Notebook

Installeer eers Jupyter Notebook en dan die volgende vereiste biblioteke

  • https://scikit-learn.org/stable/
  • https://github.com/nok/sklearn-porter

Android

Installeer Android Studio

Projekkode

Laai al die projekkode van GitHub af

Stap 2: Draai die versnellingsmeters na die veer

Dra die versnellingsmeters na die veer
Dra die versnellingsmeters na die veer
Dra die versnellingsmeters na die veer
Dra die versnellingsmeters na die veer

Om data van die ADXL335s af te lees, verbind die aansluitdraad met die Vin-, grond-, Xout-, Yout- en Zout -penne. Vir beide versnellingsmeters verbind die ander ente van die Vin -drade met die 3V -pen op die veer en die ander ente van die grondpenne met die grondpen op die veer. Koppel die Xout-, Yout- en Zout -drade van die eerste versnellingsmeter aan die A0-, A1- en A2 -penne op die veer. Koppel die Xout-, Yout- en Zout -drade van die tweede versnellingsmeter aan die A3-, A4- en A5 -penne op die veer.

Die versnellingsmeters kan op enige manier verbind word, maar dit word aanbeveel om die drade te soldeer en elektriese band te krimp of om die verbindingspunte te draai om te voorkom dat blootgestelde gedeeltes met mekaar in aanraking kom.

Stap 3: Koppel versnellingsmeters aan die hemp

Heg versnellingsmeters aan die hemp vas
Heg versnellingsmeters aan die hemp vas

Bevestig die versnellingsmeters aan die agterkant van die hemp met band. Die versnellingsmeter wat aan penne A0-2 gekoppel is, moet horisontaal in die middel van die onderste rug geplaas word. Die versnellingsmeter wat aan penne A3-5 gekoppel is, moet horisontaal in die middel van die nek geplaas word. Beide versnellingsmeters moet so in lyn wees dat die penne langs die onderkant is en die sensors plat en teen die hemp vasgemaak moet word.

Opmerking: vir 'n meer permanente draagbare kan die sensors aan die kledingstuk vasgemaak word, maar dit moet eers vasgemaak en getoets word om te verseker dat die sensorplasings effektief geplaas word.

Stap 4: Uitvoeringskode op Arduino

Lopende kode op Arduino
Lopende kode op Arduino

Om data oor die Feather te begin versamel, begin die Arduino IDE en maak die lêer GestureDataSender oop onder die Arduino -afdeling van die projekkode. Met hierdie lêer oop, stel die bord en die poort wat gebruik word in, en kies dan "Verifieer" en "Laai op" om die kode na die Feather op te laai.

Stap 5: Gebruik kode vir Android

Lopende kode op Android
Lopende kode op Android

Om die toepassing op Android uit te voer, begin eers Android Studio en kies dan die opsie om 'n bestaande Android -projek oop te maak. Gaan na die projekkode en kies die gids "Android". Android Studio sal 'n rukkie neem om die projeklêers te sinkroniseer, en kan versoek dat 'n paar vereiste biblioteke geïnstalleer word. Aanvaar hierdie opsies. Sodra die projek gereed is, koppel die Android -toestel aan op die rekenaar en kies die uitvoeropsie bo -aan die venster. Kies die toestel in die aanwysingsboodskap wat verskyn en laat die toepassing op die toestel bou.

Stap 6: Toets Bluetooth -seinverbinding

Toets Bluetooth -seinverbinding
Toets Bluetooth -seinverbinding
Toets Bluetooth -seinverbinding
Toets Bluetooth -seinverbinding
Toets Bluetooth -seinverbinding
Toets Bluetooth -seinverbinding

Sodra die app oop is, maak seker dat die Feather aan is en kies dan die Adafruit Bluefruit LE uit die toestellys wat op die telefoon verskyn. Wag totdat die toestel verbind is, as die verbinding die eerste keer misluk, probeer weer om te koppel voordat u ander foutopsporingsstappe neem. Nadat die toestel gekoppel is, kies die module "Houdingsdetektor", wat, as dit behoorlik werk, 'n lewendige opdateringsgrafiek sal vertoon, sowel as die huidige voorspellings van liggaamshouding en beweging. Om te toets dat die arduino sensordata korrek kommunikeer, beweeg die twee versnellingsmeters in willekeurige rigtings en kyk of al die lyne op die grafiek verander. As sommige lyne konstant plat bly, maak seker dat die versnellingsmeters behoorlik aan die veer gekoppel is. As alles werk, trek die hemp aan en toets of die postuuropsporing u postuur korrek voorspel. Baie geluk! U het 'n draagbare houdingsopsporing drabare opgestel. Gaan deur hierdie instruksies om te leer hoe u u eie dataset kan skep en u eie houdingsopsporing kan aanpas.

Stap 7: Versamel u eie data

Versamel u eie data
Versamel u eie data
Versamel u eie data
Versamel u eie data

Om u eie data te versamel, moet u na die keuseskerm vir modules gaan en die module Data Recorder oopmaak. Sodra hierdie skerm oopgemaak is, vul die etiket in vir die data wat u sal versamel; Om u data maklik op te lei, moet u die woord 'goed' bevat in die naam van enige opnames met 'n goeie postuur en 'sleg' in enige opnames met 'n postuur. Tik op die knoppie "Versamel data" om die insameling te begin en voer die beoogde aksie uit. Tik weer op die knoppie as u klaar is om die data te voltooi en op te slaan. Al die aangetekende data word gestoor in 'n gids met die naam "GestureData" onder die lêergids van u lêerstelsel. As u klaar is met al u data, kopieer u die lêers na u rekenaar vir modelopleiding.

Stap 8: Leer u data op op Jupyter Notebook

Leer u data op op Jupyter Notebook
Leer u data op op Jupyter Notebook
Leer u data op op Jupyter Notebook
Leer u data op op Jupyter Notebook

Die aanvanklike projekkode bevat die oorspronklike data wat gebruik is vir opleiding in die gids "data" onder die Jupyter Notebook -afdeling, vir die opleiding van u eie data, verwyder alle lêers in hierdie gids en kopieer dan u eie data in die gids. Begin dan Jupyter Notebook en maak "PostureDetectorTrainer.ipynb" oop. Hierdie notaboek is ontwerp om lêers in die gegewensmap outomaties te skei deur goeie en slegte postuur, en dan 'n lineêre SVM op te lei vir klassifikasie om die model op te lei, kies eenvoudig die "Cell" -kieslys en kies "Run All". Die notaboek kan 'n rukkie neem om te hardloop, maar sodra dit voltooi is, blaai na die punt wat die akkuraatheid van die voorspelling van die model bied, en as die akkuraatheid laag is, wil u seker maak dat u vorige opnames akkurate en konsekwente grondwaarhede is. As die resultate goed lyk, blaai na die volgende sel waar 'n Java -klas gegenereer sal word. Blaai na die onderkant van hierdie sel totdat u 'n gedeelte sien wat as parameters opgemerk word. Kopieer hierdie waardes, aangesien u dit in die volgende stap benodig.

Stap 9: Verander Android -toepassing met 'n nuwe model

Verander Android -toepassing met 'n nuwe model
Verander Android -toepassing met 'n nuwe model

Om die model in die Android -toepassing te verander, gebruik Android Studio om na die lêer "PostureDetectorFragment.java" onder die java -afdeling van die projekstruktuur te navigeer. Blaai in hierdie lêer af na die afdeling met die kommentaar as "Posture classifier", wat dieselfde 4 ooreenstemmende veranderlikes het as die 4 wat in Jupyter Notebook gegenereer word. Vervang die waardes van hierdie 4 veranderlikes met die waardes wat uit die Jupyter Notebook gekopieer is, en maak seker dat die veranderlike se name nie verander word van p_vektore, p_koëffisiënte, ens. toestel. Volg nou dieselfde stappe as voorheen om die Posture Detector -module oop te maak, en u moet sien dat die klassifiseerder nou met u nuut opgeleide model werk. As dit nog steeds nie goed lyk nie, moet u oorweeg om verdere data op te neem en die model te herskep. Anders geluk! U het nou u eie persoonlik opgeleide klassifiseerder in die Postshirt ingevoer!

Aanbeveel: