Satura rādītājs:

Pasta krekls: valkājamas pozas noteikšana reāllaikā: 9 soļi
Pasta krekls: valkājamas pozas noteikšana reāllaikā: 9 soļi

Video: Pasta krekls: valkājamas pozas noteikšana reāllaikā: 9 soļi

Video: Pasta krekls: valkājamas pozas noteikšana reāllaikā: 9 soļi
Video: Как отстирать ручку от белой рубашки?!#лайфхаки #обучение #советы #одежда#стирка#рек #bobbygrant690 2024, Novembris
Anonim
Image
Image
Pasta krekls: valkājamas pozas noteikšana reāllaikā
Pasta krekls: valkājamas pozas noteikšana reāllaikā

Postshirt ir reāllaika bezvadu pozas noteikšanas sistēma, kas, izmantojot Bluetooth, pārraida un klasificē akselerometra datus no Adafruit Feather uz Android lietojumprogrammu. Pilnīga sistēma var noteikt reāllaikā, ja lietotājam ir slikta stāja, un izveido push paziņojumu, kad lietotājs sāk ložņāt, noteikšana darbojas arī ejot.

Piegādes

Elektronika

1 x Android viedtālrunis

1 x Adafruit spalva

1 x litija jonu polimēru akumulators - 3.7v 100mAh (pēc izvēles bezvadu lietošanai)

2 x trīs asu akselerometrs ADXL335

Materiāli

Savienojuma vads

Lentes rullis

1. darbība: instalējiet nepieciešamos IDE un bibliotēkas

Adafrūtu spalva

Vispirms instalējiet Arduino IDE un pēc tam izpildiet darbības, lai instalētu Adafruit nRF51 BLE bibliotēku

Jupyter piezīmju grāmatiņa

Vispirms instalējiet Jupyter Notebook un pēc tam šādas nepieciešamās bibliotēkas

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

Android

Instalējiet Android Studio

Projekta kods

Lejupielādējiet visu projekta kodu no GitHub

2. solis: pievienojiet akselerometrus pie spalvas

Pievienojiet akselerometrus pie spalvas
Pievienojiet akselerometrus pie spalvas
Pievienojiet akselerometrus pie spalvas
Pievienojiet akselerometrus pie spalvas

Lai nolasītu datus no ADXL335, pievienojiet savienojuma vadu ar Vin, zemes, Xout, Yout un Zout tapām. Abiem akselerometriem savienojiet pārējos Vin vadu galus ar spalvu 3V tapu un pārējos zemes tapu galus ar spalvas zemējuma tapu. Pievienojiet pirmā akselerometra Xout, Yout un Zout vadus pie spalvas A0, A1 un A2 tapām. Pievienojiet otrā akselerometra Xout, Yout un Zout vadus pie spalvas A3, A4 un A5 tapām.

Akselerometrus var savienot jebkādā veidā, bet vadu lodēšana un karstuma samazināšana vai elektriskās lentes iesaiņošana ap savienojuma punktiem ir ieteicama, lai novērstu atklāto sekciju saskari.

3. darbība: piestipriniet akselerometrus kreklam

Pievienojiet akselerometrus kreklam
Pievienojiet akselerometrus kreklam

Izmantojot lenti, piestipriniet akselerometrus krekla aizmugurē. Akselerometrs, kas savienots ar tapām A0-2, jānovieto horizontāli centrā, muguras lejasdaļas vidū. Akselerometram, kas savienots ar tapām A3-5, jābūt novietotam horizontāli centrā kakla aizmugurē. Abiem akselerometriem jābūt izlīdzinātiem tā, lai tapas būtu gar apakšējo malu, un sensoriem jābūt pielīmētiem ar plakanu lenti un nostiprinātiem pret kreklu.

Piezīme: Lai iegūtu ilglaicīgāku valkāšanu, sensorus var uzšūt uz apģērba, bet vispirms tie jāpielīmē un jāpārbauda, lai nodrošinātu sensora izvietojumu efektīvu novietojumu.

4. darbība: koda palaišana Arduino

Darbības kods Arduino
Darbības kods Arduino

Lai sāktu vākt datus par spalvu, palaidiet Arduino IDE un atveriet failu GestureDataSender projekta koda sadaļā Arduino. Atverot šo failu, iestatiet dēli un izmantoto portu un pēc tam atlasiet “Verificēt” un “Augšupielādēt”, lai augšupielādētu kodu spalvā.

5. darbība: koda palaišana operētājsistēmā Android

Darbības kods operētājsistēmā Android
Darbības kods operētājsistēmā Android

Lai palaistu lietojumprogrammu android, vispirms palaidiet Android Studio un pēc tam atlasiet opciju, lai atvērtu esošu Android projektu. Dodieties uz projekta kodu un atlasiet mapi "Android". Android Studio prasīs kādu laiku, lai sinhronizētu projekta failus, un var pieprasīt instalēt dažas nepieciešamās bibliotēkas, pieņemiet šīs opcijas. Kad projekts ir gatavs, pievienojiet Android ierīci datoram un loga augšdaļā atlasiet opciju Palaist. Parādītajā uzvednē atlasiet ierīci un pēc tam ļaujiet lietojumprogrammai izveidot ierīci.

6. darbība: Bluetooth signāla savienojuma pārbaude

Bluetooth signāla savienojuma pārbaude
Bluetooth signāla savienojuma pārbaude
Bluetooth signāla savienojuma pārbaude
Bluetooth signāla savienojuma pārbaude
Bluetooth signāla savienojuma pārbaude
Bluetooth signāla savienojuma pārbaude

Kad lietotne ir atvērta, pārliecinieties, vai spalva ir ieslēgta, un pēc tam tālrunī parādītajā ierīču sarakstā atlasiet Adafruit Bluefruit LE. Pagaidiet, līdz ierīce izveidos savienojumu, ja pirmo reizi neizdodas izveidot savienojumu, un pēc tam veiciet citas atkļūdošanas darbības. Pēc ierīces pievienošanas izvēlieties moduli "Stājas detektors", kas, pareizi darbojoties, parādīs atjaunināšanas grafiku, kā arī pašreizējās pozas un kustības prognozes. Lai pārbaudītu, vai arduino pareizi nosūta sensora datus, pārvietojiet abus akselerometrus nejaušos virzienos un pārbaudiet, vai visas diagrammas līnijas mainās. Ja dažas līnijas paliek nemainīgas, pārliecinieties, vai akselerometri ir pareizi pievienoti spalvai. Ja viss darbojas, uzvelciet kreklu un pārbaudiet, vai stājas noteikšana pareizi paredz jūsu stāju. Apsveicam! Jūs esat veiksmīgi iestatījis valkājamu pozas noteikšanu. Turpiniet izmantot šo pamācību, lai uzzinātu, kā izveidot savu datu kopu un pielāgot savu pozas noteikšanu.

7. darbība. Savu datu vākšana

Savu datu vākšana
Savu datu vākšana
Savu datu vākšana
Savu datu vākšana

Lai savāktu savus datus, atgriezieties moduļa izvēles ekrānā un atveriet Datu ierakstīšanas moduli. Kad šis ekrāns ir atvērts, aizpildiet savākto datu etiķeti; lai viegli apmācītu savus datus, ierakstu ar labu stāju nosaukumā jāiekļauj vārds "labs", bet ierakstos ar stāju - "slikts". Lai sāktu vākšanu, pieskarieties pogai "Savākt datus" un veiciet paredzēto darbību, kad esat pabeidzis, vēlreiz pieskarieties pogai, lai pabeigtu un saglabātu datus. Visi ierakstītie dati tiks saglabāti mapē ar nosaukumu "GestureData" zem jūsu failu sistēmas dokumentu mapes. Kad esat pabeidzis visu datu ierakstīšanu, kopējiet failus savā datorā modeļa apmācībai.

8. darbība. Datu apmācība Jupyter piezīmjdatorā

Datu apmācība Jupyter piezīmjdatorā
Datu apmācība Jupyter piezīmjdatorā
Datu apmācība Jupyter piezīmjdatorā
Datu apmācība Jupyter piezīmjdatorā

Sākotnējais projekta kods satur sākotnējos datus, ko izmantoja apmācībai mapē "dati" sadaļā Jupyter Notebook, lai apmācītu savus datus, izdzēsiet visus failus šajā mapē un pēc tam kopējiet savus datus mapē. Pēc tam palaidiet Jupyter Notebook un atveriet "PostureDetectorTrainer.ipynb". Šis piezīmjdators ir paredzēts, lai automātiski atdalītu visus failus datu mapē pēc labas un sliktas stājas un pēc tam apmācītu lineāru SVM klasifikācijai, lai apmācītu modeli, vienkārši atlasiet nolaižamo izvēlni "Šūna" un atlasiet "Palaist visu". Piezīmjdatora palaišana var aizņemt kādu brīdi, bet, kad esat pabeidzis, ritiniet līdz vietai, kas nodrošina modeļa pozas prognozēšanas precizitāti, ja precizitāte ir zema, iespējams, vēlēsities pārliecināties, ka jūsu iepriekšējie ieraksti ir precīzi un konsekventi. Ja rezultāti izskatās labi, ritiniet līdz nākamajai šūnai, kurā tiks ģenerēta Java klase. Ritiniet līdz šīs šūnas apakšai, līdz redzat daļu, kas tiek komentēta kā parametri. Kopējiet šīs vērtības, jo tās būs nepieciešamas nākamajā darbībā.

9. darbība: Android lietojumprogrammas modificēšana, izmantojot jaunu modeli

Android lietojumprogrammas modificēšana ar jaunu modeli
Android lietojumprogrammas modificēšana ar jaunu modeli

Lai mainītu modeli Android lietojumprogrammā, izmantojiet Android Studio, lai projekta struktūras java sadaļā pārietu uz failu "PostureDetectorFragment.java". Šajā failā ritiniet uz leju līdz sadaļai, kas tiek komentēta kā "Pozu klasifikators", kurai būs tādi paši 4 mainīgie kā 4, kas ģenerēti Jupyter piezīmjdatorā. Aizstājiet šo 4 mainīgo vērtības ar vērtībām, kas nokopētas no Jupyter piezīmjdatora, pārliecinoties, ka mainīgo nosaukumi nav mainīti no p_vectors, p_coefficients uc ierīce. Tagad veiciet tādas pašas darbības kā iepriekš, lai atvērtu pozas detektora moduli, un tagad vajadzētu redzēt, ka klasifikators strādā ar jūsu tikko apmācīto modeli. Ja šķiet, ka tas joprojām nedarbojas labi, apsveriet iespēju ierakstīt papildu datus un atjaunot modeli. Citādi apsveicu! Jūs tagad esat importējis savu personīgi apmācīto klasifikatoru pasta kreklā!

Ieteicams: