Sadržaj:

Posthirt: Otkrivanje nosivog stava u stvarnom vremenu: 9 koraka
Posthirt: Otkrivanje nosivog stava u stvarnom vremenu: 9 koraka

Video: Posthirt: Otkrivanje nosivog stava u stvarnom vremenu: 9 koraka

Video: Posthirt: Otkrivanje nosivog stava u stvarnom vremenu: 9 koraka
Video: Personalising medicine and understanding patient perspectives with Michelle Tew and Nardia Klem 2024, Juli
Anonim
Image
Image
Posthirt: Otkrivanje nosivog položaja u stvarnom vremenu
Posthirt: Otkrivanje nosivog položaja u stvarnom vremenu

Postshirt je bežični sistem za otkrivanje držanja u stvarnom vremenu koji prenosi i klasificira podatke akcelerometra s Adafruit Feathera u Android aplikaciju putem Bluetootha. Kompletan sistem može otkriti u stvarnom vremenu ako korisnik ima loše držanje i kreira push obavijest kada korisnik počne da se saginje, otkrivanje radi i dok hoda.

Supplies

Elektronika

1 x Android pametni telefon

1 x Adafrutovo pero

1 x litijum -jonska polimerna baterija - 3,7v 100mAh (opcionalno za bežičnu upotrebu)

2 x ADXL335 troosni akcelerometar

Materijali

Spojna žica

Rola trake

Korak 1: Instalirajte potrebne IDE -ove i biblioteke

Adafruit pero

Prvo instalirajte Arduino IDE, a zatim slijedite korake za instaliranje Adafruit nRF51 BLE biblioteke

Jupyter Notebook

Prvo instalirajte Jupyter Notebook, a zatim sljedeće potrebne biblioteke

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

Android

Instalirajte Android Studio

Kod projekta

Preuzmite sav kôd projekta sa GitHub -a

Korak 2: Priključite mjerače ubrzanja na pero

Spojite mjerače ubrzanja na pero
Spojite mjerače ubrzanja na pero
Spojite mjerače ubrzanja na pero
Spojite mjerače ubrzanja na pero

Da biste očitali podatke s ADXL335, spojite žicu za spajanje na pin, masu, Xout, Yout i Zout. Za oba akcelerometra povežite druge krajeve Vin žica s 3V iglom na perju, a druge krajeve uzemljenih igala s uzemljenjem na perju. Spojite žice Xout, Yout i Zout prvog akcelerometra s pinovima A0, A1 i A2 na pero. Spojite žice Xout, Yout i Zout drugog akcelerometra s pinovima A3, A4 i A5 na pero.

Mjerači ubrzanja mogu se spojiti na bilo koji način, ali se preporučuje lemljenje žica i toplinska stezanja ili omotavanje električne trake oko priključnih točaka radi sprječavanja međusobnog dodira izloženih dijelova.

Korak 3: Pričvrstite akcelerometre na majicu

Pričvrstite akcelerometre na majicu
Pričvrstite akcelerometre na majicu

Pomoću trake pričvrstite mjerače ubrzanja na stražnju stranu majice. Akcelerometar ožičen na pinove A0-2 trebao bi biti postavljen vodoravno u sredini u sredini donjeg dijela leđa. Akcelerometar ožičen na igle A3-5 trebao bi biti postavljen vodoravno u sredini na stražnjoj strani vrata. Oba akcelerometra trebaju biti poravnana tako da se igle nalaze uz donju stranu, a senzori trebaju biti zalijepljeni trakom i pričvršćeni za majicu.

Napomena: Za trajnije nošenje senzori se mogu prišiti na odjeću, ali prvo ih treba zalijepiti i testirati kako bi se osiguralo da su položaji senzora efikasno postavljeni.

Korak 4: Pokretanje koda na Arduinu

Pokretanje koda na Arduinu
Pokretanje koda na Arduinu

Za početak prikupljanja podataka o Featheru pokrenite Arduino IDE i otvorite datoteku GestureDataSender u odjeljku Arduino koda projekta. Kada je ova datoteka otvorena, postavite ploču i port koji se koristi, a zatim odaberite "Verify" i "Upload" da biste učitali kôd na pero.

Korak 5: Pokretanje koda na Androidu

Pokretanje koda na Androidu
Pokretanje koda na Androidu

Da biste pokrenuli aplikaciju na androidu, prvo pokrenite Android Studio, a zatim odaberite opciju za otvaranje postojećeg Android projekta. Idite do koda projekta i odaberite mapu "Android". Android Studiju će trebati neko vrijeme da sinhronizira datoteke projekta i može zatražiti da instalira neke potrebne biblioteke, prihvatite ove opcije. Nakon što je projekt spreman, uključite Android uređaj u računar i odaberite opciju pokretanja pri vrhu prozora. Odaberite uređaj iz upita koji se prikazuje, a zatim dopustite da se aplikacija izgradi na uređaj.

Korak 6: Testiranje Bluetooth signalne veze

Testiranje veze Bluetooth signala
Testiranje veze Bluetooth signala
Testiranje veze Bluetooth signala
Testiranje veze Bluetooth signala
Testiranje veze Bluetooth signala
Testiranje veze Bluetooth signala

Nakon što se aplikacija otvori, provjerite je li pero uključeno, a zatim odaberite Adafruit Bluefruit LE sa popisa uređaja koji se pojavljuje na telefonu. Pričekajte da se uređaj poveže ako veza ne uspije prvi put pokušajte se povezati prije nego poduzmete druge korake za otklanjanje pogrešaka. Nakon što je uređaj spojen, odaberite modul "Detektor položaja" koji će, ako radi ispravno, prikazati grafikon ažuriranja uživo, kao i trenutna predviđanja držanja i kretanja. Da biste provjerili da li arduino pravilno prenosi podatke senzora, pomaknite dva akcelerometra u slučajnim smjerovima i provjerite da li se sve linije na grafikonu mijenjaju. Ako neke linije ostaju stalno ravne, provjerite jesu li mjerači ubrzanja pravilno spojeni na pero. Ako sve radi, obucite majicu i provjerite da li otkrivanje položaja ispravno predviđa vaše držanje. Čestitamo! Uspješno ste postavili nosivo otkrivanje položaja. Nastavite kroz ovo uputstvo kako biste naučili kako stvoriti vlastiti skup podataka i prilagoditi vlastito otkrivanje položaja.

Korak 7: Prikupljanje vlastitih podataka

Prikupljanje vlastitih podataka
Prikupljanje vlastitih podataka
Prikupljanje vlastitih podataka
Prikupljanje vlastitih podataka

Da biste prikupili vlastite podatke, vratite se na ekran za izbor modula i otvorite modul Snimač podataka. Kada se ovaj ekran otvori, popunite oznaku za podatke koje ćete prikupiti; kako biste lako vježbali svoje podatke, trebali biste unijeti riječ "dobro" u ime svih snimaka s dobrim držanjem i "loše" u bilo koje snimke s držanjem. Za početak prikupljanja dodirnite dugme "Prikupi podatke" i izvršite željenu radnju, kada završite, ponovo dodirnite dugme za završetak i spremanje podataka. Svi snimljeni podaci bit će pohranjeni u fascikli pod nazivom "GestureData" u fascikli dokumenti vašeg datotečnog sistema. Kada završite sa snimanjem svih podataka, kopirajte datoteke na računar radi obuke modela.

Korak 8: Obuka vaših podataka na Jupyter prijenosnom računaru

Obuka vaših podataka na Jupyter prijenosnom računaru
Obuka vaših podataka na Jupyter prijenosnom računaru
Obuka vaših podataka na Jupyter prijenosnom računaru
Obuka vaših podataka na Jupyter prijenosnom računaru

Početna šifra projekta sadrži izvorne podatke koji se koriste za obuku u mapi "podaci" u odjeljku Jupyter Notebook, za obuku vlastitih podataka izbrišite sve datoteke u ovoj mapi, a zatim kopirajte vlastite podatke u mapu. Zatim pokrenite Jupyter Notebook i otvorite "PostureDetectorTrainer.ipynb". Ova bilježnica je dizajnirana za automatsko odvajanje svih datoteka u mapi podataka dobrim i lošim držanjem, a zatim uvježbava linearni SVM za klasifikaciju kako bi obučio model, jednostavno odaberite padajući izbornik "Ćelija" i odaberite "Pokreni sve". Bilježnici će trebati trenutak da se pokrene, ali kada se dovrši, dođite do tačke koja pruža tačnost predviđanja položaja za model, ako je tačnost niska, možda ćete htjeti osigurati da su vaši prethodni zapisi tačni i dosljedni. Ako rezultati izgledaju dobro, pomaknite se do sljedeće ćelije u kojoj će biti generirana Java klasa. Pomaknite se do dna ove ćelije dok ne vidite dio komentiran kao parametar. Kopirajte ove vrijednosti jer će vam trebati u sljedećem koraku.

Korak 9: Izmjena Android aplikacije novim modelom

Modifikacija Android aplikacije s novim modelom
Modifikacija Android aplikacije s novim modelom

Za promjenu modela u Android aplikaciji koristite Android Studio za navigaciju do datoteke "PostureDetectorFragment.java" ispod java odjeljka strukture projekta. U ovoj datoteci pomaknite se dolje do odjeljka komentiranog kao "Klasifikator držanja" koji će imati iste 4 odgovarajuće varijable kao 4 generirane u Jupyter Notebooku. Zamijenite vrijednosti ovih 4 varijable vrijednostima kopiranima iz Jupyter Notebooka, pazeći da se imena varijabli ne promijene iz p_vectors, p_coefficients itd. Nakon što to učinite, spremite datoteku i ponovo odaberite opciju Pokreni da biste izgradili aplikaciju za svoju uređaj. Sada slijedite iste korake kao i prije za otvaranje modula Detektor položaja i trebali biste vidjeti klasifikator koji sada radi s vašim tek obučenim modelom. Ako se i dalje ne čini dobro, razmislite o snimanju daljnjih podataka i ponovnom kreiranju modela. Inače čestitam! Sada ste uvezli svoj osobno obučeni klasifikator u Postshirt!

Preporučuje se: