Sadržaj:

Posthirt: Otkrivanje nosivog držanja u stvarnom vremenu: 9 koraka
Posthirt: Otkrivanje nosivog držanja u stvarnom vremenu: 9 koraka

Video: Posthirt: Otkrivanje nosivog držanja u stvarnom vremenu: 9 koraka

Video: Posthirt: Otkrivanje nosivog držanja u stvarnom vremenu: 9 koraka
Video: Personalising medicine and understanding patient perspectives with Michelle Tew and Nardia Klem 2024, Studeni
Anonim
Image
Image
Posthirt: Otkrivanje nosivog držanja u stvarnom vremenu
Posthirt: Otkrivanje nosivog držanja u stvarnom vremenu

Postshirt je bežični sustav za otkrivanje držanja u stvarnom vremenu koji prenosi i klasificira podatke akcelerometra s Adafruit Feathera u Android aplikaciju putem Bluetootha. Cijeli sustav može otkriti u stvarnom vremenu ako korisnik ima loše držanje i stvara push obavijest kada se korisnik počne saginjati, otkrivanje radi i tijekom hodanja.

Pribor

Elektronika

1 x Android pametni telefon

1 x Adafrutovo pero

1 x litij -ionska 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 knjižnice

Adafrutovo pero

Najprije instalirajte Arduino IDE, a zatim slijedite korake za instaliranje Adafruit nRF51 BLE knjižnice

Bilježnica Jupyter

Najprije instalirajte Jupyter Notebook, a zatim sljedeće potrebne knjižnice

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

Android

Instalirajte Android Studio

Kod projekta

Preuzmite sav kôd projekta s GitHub -a

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

Priključite mjerače ubrzanja na pero
Priključite mjerače ubrzanja na pero
Priključite mjerače ubrzanja na pero
Priključite 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 spojite druge krajeve Vin žica s 3V iglom na Perju, a druge krajeve uzemljenih igala s uzemljinskom iglom 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 predlaže se lemljenje žica i toplinska zaštita 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 igle A0-2 trebao bi biti postavljen vodoravno u središte 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 mjerača ubrzanja 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 učinkovito postavljeni.

Korak 4: Pokretanje koda na Arduinu

Pokrenuti kôd na Arduinu
Pokrenuti kôd na Arduinu

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

Korak 5: Pokretanje koda na Androidu

Pokretanje koda na Androidu
Pokretanje koda na Androidu

Za pokretanje aplikacije 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 za sinkronizaciju datoteka projekta i može zatražiti instaliranje nekih potrebnih knjižnica, prihvatiti ove opcije. Nakon što je projekt spreman, uključite Android uređaj u računalo 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 je aplikacija otvorena, provjerite je li pero uključeno, a zatim odaberite Adafruit Bluefruit LE s popisa uređaja koji se prikazuje 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. Kako biste provjerili da arduino pravilno prenosi podatke senzora, pomaknite dva akcelerometra u slučajnim smjerovima i provjerite mijenjaju li se sve linije na grafikonu. Ako neke linije ostaju stalno ravne, provjerite jesu li mjerači ubrzanja pravilno spojeni na pero. Ako sve radi, obucite majicu i provjerite je li otkrivanje položaja ispravno predviđa vaše držanje. Čestitamo! Uspješno ste postavili nosivo otkrivanje položaja. Nastavite s ovim uputama kako biste naučili kako stvoriti vlastiti skup podataka i prilagoditi vlastito otkrivanje držanja.

Korak 7: Prikupljanje vlastitih podataka

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

Za prikupljanje vlastitih podataka vratite se na zaslon za odabir modula i otvorite modul Snimač podataka. Nakon što se ovaj zaslon otvori, popunite oznaku za podatke koje ćete prikupiti; kako biste lakše vježbali svoje podatke, trebali biste unijeti riječ "dobro" u naziv svih snimki s dobrim držanjem i "loše" u bilo koje snimke s držanjem. Za početak prikupljanja dodirnite gumb "Prikupi podatke" i izvedite željenu radnju, kada završite, ponovno dodirnite gumb za dovršetak i spremanje podataka. Svi snimljeni podaci bit će pohranjeni u mapu pod nazivom "GestureData" u mapi dokumenata vašeg datotečnog sustava. Kad završite sa snimanjem svih podataka, kopirajte datoteke na računalo radi obuke modela.

Korak 8: Obuka vaših podataka na Jupyter prijenosniku

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

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". Bilježnica je dizajnirana za automatsko odvajanje datoteka u mapi s podacima prema dobrom i lošem držanju, a zatim uvježbava linearni SVM za klasifikaciju kako bi obučio model, jednostavno odaberite padajući izbornik "Ćelija" i odaberite "Pokreni sve". Prijenos bilježnice može potrajati trenutak, ali kad se dovrši, pomaknite se do točke koja omogućuje točnost predviđanja položaja za model, ako je točnost niska, možda ćete htjeti osigurati da su vaši prethodni zapisi toč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

Izmjena Android aplikacije novim modelom
Izmjena Android aplikacije 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 Bilježnice, pazeći da se nazivi 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 svoj 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 stvaranju modela. Inače čestitam! Sada ste uvezli svoj osobno obučeni klasifikator u Postshirt!

Preporučeni: