Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Asenna tarvittavat IDE: t ja kirjastot
- Vaihe 2: Kytke kiihtyvyysmittarit sulkuun
- Vaihe 3: Kiinnitä kiihtyvyysmittarit paitaan
- Vaihe 4: Koodin suorittaminen Arduinolla
- Vaihe 5: Koodin suorittaminen Androidissa
- Vaihe 6: Bluetooth -signaaliyhteyden testaaminen
- Vaihe 7: Omien tietojen kerääminen
- Vaihe 8: Tietojen kouluttaminen Jupyter -muistikirjassa
- Vaihe 9: Android -sovelluksen muokkaaminen uudella mallilla
Video: Postipaita: Reaaliaikainen puettavan asennon tunnistus: 9 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Postshirt on reaaliaikainen langaton asennon tunnistusjärjestelmä, joka lähettää ja luokittelee kiihtyvyysmittarin tiedot Adafruit Featherista Android -sovellukseen Bluetoothin kautta. Koko järjestelmä voi havaita reaaliajassa, jos käyttäjä on huonossa asennossa, ja luo push -ilmoituksen, kun käyttäjä alkaa ryömiä. Tunnistus toimii myös kävellessä.
Tarvikkeet
Elektroniikka
1 x Android -älypuhelin
1 x Adafruit -sulka
1 x litiumionipolymeeriakku - 3.7v 100mAh (valinnainen langattomaan käyttöön)
2 x ADXL335-kolmiakselinen kiihtyvyysanturi
Materiaalit
Liitäntäjohto
Teippirulla
Vaihe 1: Asenna tarvittavat IDE: t ja kirjastot
Adafruit Feather
Asenna ensin Arduino IDE ja asenna sitten Adafruit nRF51 BLE -kirjasto
Jupyter -muistikirja
Asenna ensin Jupyter Notebook ja sitten seuraavat tarvittavat kirjastot
- https://scikit-learn.org/stable/
- https://github.com/nok/sklearn-porter
Android
Asenna Android Studio
Projektikoodi
Lataa kaikki projektikoodit GitHubista
Vaihe 2: Kytke kiihtyvyysmittarit sulkuun
Voit lukea tietoja ADXL335 -laitteista kytkemällä liitäntäjohdon Vin-, maadoitus-, Xout-, Yout- ja Zout -nastoihin. Kummassakin kiihtyvyysmittarissa liitä Vin -johtojen toiset päät höyhen 3V -nastaan ja maadoituspistojen muut päät höyhen maadoitusnastaan. Liitä ensimmäisen kiihtyvyysmittarin Xout-, Yout- ja Zout -johdot höyhenen A0-, A1- ja A2 -nastoihin. Liitä toisen kiihtyvyysmittarin Xout-, Yout- ja Zout -johdot höyhenen A3-, A4- ja A5 -nastoihin.
Kiihtyvyysmittarit voidaan liittää millään tavalla, mutta johtojen juottamista ja lämpökutistumista tai sähköteipin käärimistä liitoskohtien ympärille suositellaan, jotta paljaat osat eivät kosketa toisiaan.
Vaihe 3: Kiinnitä kiihtyvyysmittarit paitaan
Kiinnitä kiihtyvyysmittarit paidan takaosaan teipillä. Kiihtyvyysanturi, joka on kytketty nastoihin A0-2, on sijoitettava vaakasuoraan keskelle alaselän keskelle. Kiihtyvyysanturi, joka on kytketty nastoihin A3-5, tulee asettaa vaakasuoraan keskelle niskan takaosaan. Molemmat kiihtyvyysmittarit tulee kohdistaa siten, että nastat ovat alareunaa pitkin ja anturit on teipattava tasaisesti ja kiinnitettävä paitaa vasten.
Huomautus: Jos haluat käyttää kestävämpää käyttöä, anturit voidaan ommella vaatteisiin, mutta ne on teipattava ja testattava ensin varmistaakseen, että anturiasennot on sijoitettu tehokkaasti.
Vaihe 4: Koodin suorittaminen Arduinolla
Aloita Featherin tietojen kerääminen käynnistämällä Arduino IDE ja avaamalla tiedosto GestureDataSender projektikoodin Arduino -osion alla. Kun tämä tiedosto on auki, aseta taulu ja käytettävä portti ja valitse sitten "Vahvista" ja "Lataa" ladataksesi koodin Featheriin.
Vaihe 5: Koodin suorittaminen Androidissa
Jos haluat käyttää sovellusta Androidissa, käynnistä ensin Android Studio ja valitse sitten vaihtoehto avata olemassa oleva Android -projekti. Siirry projektikoodiin ja valitse "Android" -kansio. Android Studion projektitiedostojen synkronointi kestää jonkin aikaa, ja se voi pyytää asentamaan tarvittavat kirjastot. Hyväksy nämä vaihtoehdot. Kun projekti on valmis, kytke Android -laite tietokoneeseen ja valitse suoritusvaihtoehto ikkunan yläreunasta. Valitse laite näkyviin tulevasta kehotteesta ja anna sovelluksen rakentaa laitteeseen.
Vaihe 6: Bluetooth -signaaliyhteyden testaaminen
Kun sovellus on auki, varmista, että sulka on päällä ja valitse sitten Adafruit Bluefruit LE puhelimen luettelosta. Odota, kunnes laite muodostaa yhteyden, jos yhteys epäonnistuu ensimmäisen kerran, yritä muodostaa yhteys uudelleen, ennen kuin teet muita virheenkorjausvaiheita. Kun laite on kytketty, valitse moduuli "Asennontunnistin", joka näyttää oikein päivitettävän kaavion sekä asennon ja liikkeen ennusteet, jos se toimii oikein. Testaa, että arduino välittää anturitietoja oikein, siirtämällä kaksi kiihtyvyysmittaria satunnaisiin suuntiin ja tarkista, muuttuvatko kaikki kaavion viivat. Jos jotkin linjat pysyvät tasaisina, varmista, että kiihtyvyysmittarit on liitetty höyhenen oikein. Jos kaikki toimii, aseta paita päällesi ja testaa, että asennon tunnistus ennustaa ryhtiäsi oikein. Onnittelut! Olet onnistuneesti asentanut asennon havaitsemisen. Jatka tämän ohjeen avulla oppiaksesi luomaan oma tietojoukko ja mukauttamaan omaa asennon tunnistusta.
Vaihe 7: Omien tietojen kerääminen
Voit kerätä omat tietosi palaamalla moduulin valintanäyttöön ja avaamalla Data Recorder -moduulin. Kun tämä näyttö on avattu, täytä kerättävien tietojen tarra; jotta voit helposti harjoittaa tietojasi, sinun on sisällytettävä sana "hyvä" kaikkien hyvän asennon nauhoitusten nimiin ja "huono" kaikkiin asennon sisältäviin tallenteisiin. Aloita keräily napauttamalla "Kerää tietoja" -painiketta ja suorita haluamasi toiminto. Kun olet valmis, napauta painiketta uudelleen lopettaaksesi ja tallentaaksesi tiedot. Kaikki tallennetut tiedot tallennetaan kansioon nimeltä "GestureData" tiedostojärjestelmäsi asiakirjakansion alle. Kun olet tallentanut kaikki tietosi, kopioi tiedostot tietokoneellesi mallikoulutusta varten.
Vaihe 8: Tietojen kouluttaminen Jupyter -muistikirjassa
Alkuperäinen projektikoodi sisältää alkuperäiset tiedot, joita käytettiin harjoitteluun Jupyter -muistikirja -osion kansiossa "data". Omien tietojen kouluttaminen poistaa kaikki tämän kansion tiedostot ja kopioi sitten omat tiedot kansioon. Suorita sitten Jupyter Notebook ja avaa "PostureDetectorTrainer.ipynb". Tämä muistikirja on suunniteltu erottamaan automaattisesti kaikki tietokansion tiedostot hyvän ja huonon asennon mukaan ja kouluttamaan sitten lineaarinen SVM luokittelua varten mallin kouluttamiseksi yksinkertaisesti valitsemalla avattavasta "Cell" -valikosta ja valitsemalla "Suorita kaikki". Muistikirjan suorittaminen voi kestää hetken, mutta kun se on valmis, vieritä kohtaan, joka antaa mallin asennon ennustustarkkuuden. Jos tarkkuus on alhainen, saatat haluta varmistaa, että aiemmat tallennuksesi ovat tarkkoja ja johdonmukaisia. Jos tulokset näyttävät hyviltä, siirry seuraavaan soluun, jossa Java -luokka on luotu. Vieritä tämän solun alareunaan, kunnes näet osan, joka on kommentoitu parametreiksi. Kopioi nämä arvot, koska tarvitset niitä seuraavassa vaiheessa.
Vaihe 9: Android -sovelluksen muokkaaminen uudella mallilla
Jos haluat vaihtaa mallin Android -sovelluksessa, siirry Android Studion avulla projektin rakenteen java -osion tiedostoon "PostureDetectorFragment.java". Vieritä tässä tiedostossa alas kohtaan "Asentojen luokittelija", jolla on samat 4 vastaavaa muuttujaa kuin 4, joka on luotu Jupyter -muistikirjassa. Korvaa näiden neljän muuttujan arvot Jupyter -muistikirjasta kopioiduilla arvoilla varmistaen, että muuttujien nimet eivät muutu arvoista p_vectors, p_coefficients jne. Kun tämä on tehty, tallenna tiedosto ja rakenna sovellus valitsemalla Suorita -vaihtoehto uudelleen laite. Avaa nyt asennonilmaisimen moduuli noudattamalla samoja vaiheita kuin ennen, ja sinun pitäisi nähdä, että luokittelija toimii nyt uuden koulutetun mallisi kanssa. Jos se ei vieläkään näytä toimivan hyvin, sinun kannattaa harkita lisätietojen tallentamista ja mallin luomista uudelleen. Muuten onnittelut! Olet nyt tuonut oman henkilökohtaisesti koulutetun luokittelijasi Postshirtiin!
Suositeltava:
Reaaliaikainen Rubikin kuution silmät ratkaistu Ratkaisu Raspberry Pi: n ja OpenCV: n avulla: 4 vaihetta
Reaaliaikainen Rubikin kuution sokeat ratkaisija Raspberry Pi: n ja OpenCV: n avulla: Tämä on Rubikin kuutiotyökalun toinen versio, joka on suunniteltu ratkaisemaan silmät. Ensimmäinen versio on JavaScriptin kehittämä, näet projektin RubiksCubeBlindfolded1Toisin kuin edellinen, tämä versio käyttää OpenCV -kirjastoa värien ja e
Servo -asennon palautejärjestelmä Arduinolla: 4 vaihetta
Servo -asennon palautejärjestelmä Arduinolla: Hei, tämä on ensimmäinen opastettava. MY -projektin avulla voit saada servosi sijainnin Arduino IDE -laitteen sarjamonitorissa tai sarjaplotterissa. Tämän avulla on helppo ohjelmoida arduino -robotteja, jotka käyttävät servomoottoreita, kuten humanoidirobotteja
Reaaliaikainen laitteen tunnistus käyttämällä EM-jalanjälkiä: 6 vaihetta
Reaaliaikainen laitteen tunnistus käyttämällä EM-jalanjälkiä: Tämä laite on tarkoitettu luokittelemaan erilaisia elektronisia laitteita niiden EM-signaalien mukaan. Eri laitteille niillä on erilaiset EM -signaalit. Olemme kehittäneet IoT -ratkaisun elektronisten laitteiden tunnistamiseen hiukkasten avulla
Kasvojen tunnistus ja tunnistus - Arduino -kasvotunnus OpenCV Pythonin ja Arduinon avulla .: 6 vaihetta
Kasvojen tunnistus ja tunnistus | Arduino -kasvotunnus OpenCV Pythonin ja Arduinon avulla .: Kasvontunnistus AKA -kasvotunnus on yksi tärkeimmistä ominaisuuksista matkapuhelimissa nykyään. Joten minulla oli kysymys " voinko saada kasvotunnuksen Arduino -projektilleni " ja vastaus on kyllä … Matkani alkoi seuraavasti: Vaihe 1: Pääsy
Tasavirtamoottorin asennon ohjaus: 5 vaihetta
Tasavirtamoottorin asennon ohjaus: Tämä ohje näyttää, kuinka moottorin asemaa voidaan ohjata paikallisen verkkoverkon kautta. Nyt voit käyttää älypuhelinta tai iPadia, joka on kytketty verkkoon, ja kirjoittaa sitten moottorin paikallisen verkkopalvelimen osoite. Sieltä voimme ohjata moottorin aseman levyä kiertämällä