Turinys:
- Prekės
- 1 veiksmas: įdiekite būtinus IDE ir bibliotekas
- 2 žingsnis: prijunkite akselerometrus prie plunksnos
- 3 žingsnis: prie marškinėlių pritvirtinkite akselerometrus
- 4 veiksmas: paleiskite kodą „Arduino“
- 5 veiksmas: paleiskite kodą „Android“
- 6 veiksmas: „Bluetooth“signalo ryšio testavimas
- 7 veiksmas: savo duomenų rinkimas
- 8 žingsnis: Mokykite savo duomenis „Jupyter Notebook“
- 9 veiksmas: „Android“programos modifikavimas nauju modeliu
Video: Pašto marškinėliai: nešiojamos laikysenos aptikimas realiuoju laiku: 9 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
„Postshirt“yra belaidė laikysenos aptikimo sistema realiuoju laiku, perduodanti ir klasifikuojanti akselerometro duomenis iš „Adafruit Feather“į „Android“programą per „Bluetooth“. Visa sistema gali aptikti realiuoju laiku, jei vartotojas turi blogą laikyseną, ir sukuria įspėjamąjį pranešimą, kai vartotojas pradeda slinkti, aptikimas veikia ir einant.
Prekės
Elektronika
1 x „Android“išmanusis telefonas
1 x „Adafruit“plunksna
1 x ličio jonų polimerų baterija - 3.7v 100mAh (neprivaloma naudoti belaidžiu būdu)
2 x trijų ašių akselerometras ADXL335
Medžiagos
Prijungimo viela
Juostos ritinys
1 veiksmas: įdiekite būtinus IDE ir bibliotekas
Adafruit plunksna
Pirmiausia įdiekite „Arduino IDE“ir atlikite „Adafruit nRF51 BLE Library“diegimo veiksmus
Užrašų knygelė „Jupyter“
Pirmiausia įdiekite „Jupyter Notebook“, o tada reikiamas bibliotekas
- https://scikit-learn.org/stable/
- https://github.com/nok/sklearn-porter
„Android“
Įdiekite „Android Studio“
Projekto kodas
Atsisiųskite visą projekto kodą iš „GitHub“
2 žingsnis: prijunkite akselerometrus prie plunksnos
Norėdami nuskaityti duomenis iš ADXL335, prijunkite prijungimo laidą prie „Vin“, „ground“, „Xout“, „Yout“ir „Zout“kaiščių. Abiems akselerometrams prijunkite kitus „Vin“laidų galus prie plunksnos 3V kaiščio, o kitus įžeminimo kaiščių galus prie plunksnos įžeminimo kaiščio. Prijunkite pirmojo akselerometro Xout, Yout ir Zout laidus prie plunksnos A0, A1 ir A2 kaiščių. Prijunkite antrojo akselerometro Xout, Yout ir Zout laidus prie plunksnos A3, A4 ir A5 kaiščių.
Akselerometrai gali būti prijungti bet kokiu būdu, tačiau siūloma lituoti laidus ir šilumą susitraukti arba apvynioti elektros juostą aplink jungties taškus, kad būtų išvengta atvirų sekcijų kontakto.
3 žingsnis: prie marškinėlių pritvirtinkite akselerometrus
Naudodami juostą, akselerometrus pritvirtinkite prie marškinių galo. Akselerometras, prijungtas prie kaiščių A0-2, turėtų būti horizontaliai centre, apatinėje nugaros dalyje. Akselerometras, prijungtas prie kaiščių A3-5, turėtų būti horizontaliai centre kaklo gale. Abu akselerometrai turi būti sulygiuoti taip, kad kaiščiai būtų išilgai apatinės pusės, o jutikliai turėtų būti pritvirtinti plokščia juosta ir tvirtai pritvirtinti prie marškinių.
Pastaba: Kad nešiojimas būtų patvaresnis, jutiklius galima prisiūti prie drabužių, tačiau pirmiausia juos reikia užklijuoti lipnia juosta ir išbandyti, kad būtų užtikrinta, jog jutiklių vietos būtų tinkamai išdėstytos.
4 veiksmas: paleiskite kodą „Arduino“
Norėdami pradėti rinkti duomenis apie plunksną, paleiskite „Arduino IDE“ir atidarykite failą „GestureDataSender“projekto kodo skiltyje „Arduino“. Atidarę šį failą, nustatykite naudojamą plokštę ir prievadą, tada pasirinkite „Patvirtinti“ir „Įkelti“, kad įkeltumėte kodą į plunksną.
5 veiksmas: paleiskite kodą „Android“
Norėdami paleisti programą „Android“, pirmiausia paleiskite „Android Studio“ir pasirinkite parinktį atidaryti esamą „Android“projektą. Eikite į projekto kodą ir pasirinkite aplanką „Android“. „Android Studio“užtruks šiek tiek laiko, kol bus sinchronizuojami projekto failai, ir gali paprašyti įdiegti kai kurias reikalingas bibliotekas, sutikite su šiomis parinktimis. Kai projektas bus paruoštas, prijunkite „Android“įrenginį prie kompiuterio ir lango viršuje pasirinkite paleidimo parinktį. Rodomame raginime pasirinkite įrenginį ir leiskite programai kurti prie įrenginio.
6 veiksmas: „Bluetooth“signalo ryšio testavimas
Kai programa bus atidaryta, įsitikinkite, kad plunksna yra įjungta, tada telefone rodomame įrenginių sąraše pasirinkite „Adafruit Bluefruit LE“. Prieš pradėdami kitus derinimo veiksmus, palaukite, kol įrenginys prisijungs, kai pirmą kartą nepavyksta prisijungti. Prijungę įrenginį, pasirinkite modulį „Laikysenos detektorius“, kuris tinkamai veikiant parodys tiesioginio atnaujinimo grafiką, taip pat dabartines laikysenos ir judesio prognozes. Norėdami patikrinti, ar arduino teisingai perduoda jutiklio duomenis, perkelkite du akselerometrus atsitiktine kryptimi ir patikrinkite, ar nesikeičia visos diagramos eilutės. Jei kai kurios linijos išlieka plokščios, įsitikinkite, kad akselerometrai tinkamai prijungti prie plunksnos. Jei viskas veikia, apsivilkite marškinius ir patikrinkite, ar laikysenos aptikimas teisingai numato jūsų laikyseną. Sveikinu! Sėkmingai nustatėte nešiojamą laikysenos aptikimą. Tęskite šią instrukciją, kad sužinotumėte, kaip sukurti savo duomenų rinkinį ir tinkinti savo laikysenos aptikimą.
7 veiksmas: savo duomenų rinkimas
Norėdami surinkti savo duomenis, grįžkite į modulio pasirinkimo ekraną ir atidarykite duomenų įrašymo modulį. Kai šis ekranas bus atidarytas, užpildykite surinktų duomenų etiketę; kad galėtumėte lengvai išmokti savo duomenis, visų įrašų, kurių laikysena gera, pavadinime turite įrašyti žodį „geras“, o į bet kokius laikysenos įrašus - „blogas“. Norėdami pradėti rinkti, bakstelėkite mygtuką „Rinkti duomenis“ir atlikite numatytą veiksmą, kai baigsite, dar kartą bakstelėkite mygtuką, kad užbaigtumėte ir išsaugotumėte duomenis. Visi įrašyti duomenys bus saugomi aplanke pavadinimu „GestureData“, esančiame jūsų failų sistemos dokumentų aplanke. Kai baigsite įrašyti visus savo duomenis, nukopijuokite failus į savo kompiuterį modelio mokymui.
8 žingsnis: Mokykite savo duomenis „Jupyter Notebook“
Pradiniame projekto kode yra originalūs duomenys, naudojami mokymui aplanke „duomenys“, esančiame „Jupyter Notebook“skyriuje, mokant savo duomenis, ištrinkite visus šio aplanko failus ir nukopijuokite savo duomenis į aplanką. Tada paleiskite „Jupyter Notebook“ir atidarykite „PostureDetectorTrainer.ipynb“. Šis nešiojamasis kompiuteris sukurtas taip, kad automatiškai atskirtų visus failus, esančius duomenų aplanke, pagal gerą ir blogą laikyseną, o tada išmokyti linijinio SVM klasifikacijai, kad būtų išmokytas modelis, tiesiog pasirinkite išskleidžiamąjį meniu „Langelis“ir pasirinkite „Vykdyti viską“. Nešiojamojo kompiuterio paleidimas gali užtrukti, bet kai baigsite, slinkite iki taško, kuris užtikrina modelio laikysenos prognozavimo tikslumą, jei tikslumas yra mažas, galbūt norėsite įsitikinti, kad ankstesni įrašai yra tikslūs ir nuoseklūs. Jei rezultatai atrodo gerai, slinkite į kitą langelį, kuriame bus sukurta „Java“klasė. Slinkite iki šio langelio apačios, kol pamatysite dalį, pakomentuotą kaip parametrus. Nukopijuokite šias vertes, nes jums jų prireiks kitame žingsnyje.
9 veiksmas: „Android“programos modifikavimas nauju modeliu
Norėdami pakeisti modelį „Android“programoje, naudokite „Android Studio“, kad projekto struktūros java skyriuje pereitumėte prie failo „PostureDetectorFragment.java“. Šiame faile slinkite žemyn į skiltį, pakomentuotą kaip „Laikysenos klasifikatorius“, kurioje bus tie patys 4 atitinkami kintamieji, kaip ir 4, sukurti „Jupyter Notebook“. Pakeiskite šių 4 kintamųjų reikšmes reikšmėmis, nukopijuotomis iš „Jupyter Notebook“, įsitikindami, kad kintamųjų pavadinimai nėra pakeisti iš p_vectors, p_coefficients ir tt. Kai tai bus padaryta, išsaugokite failą ir dar kartą pasirinkite Vykdyti, kad sukurtumėte programą savo prietaisas. Dabar atlikite tuos pačius veiksmus, kaip ir anksčiau, kad atidarytumėte laikysenos detektoriaus modulį, ir dabar turėtumėte pamatyti klasifikatorių, dirbantį su naujai apmokytu modeliu. Jei vis tiek neatrodo gerai, turėtumėte apsvarstyti galimybę įrašyti tolesnius duomenis ir iš naujo sukurti modelį. Priešingu atveju sveikinu! Dabar į „Postshirt“importavote savo asmeniškai apmokytą klasifikatorių!
Rekomenduojamas:
Įrenginio atpažinimas realiuoju laiku naudojant EM pėdsakus: 6 žingsniai
Įrenginio atpažinimas realiuoju laiku naudojant EM pėdsakus: Šis prietaisas skirtas klasifikuoti įvairius elektroninius prietaisus pagal jų EM signalus. Skirtingiems įrenginiams jie skleidžia skirtingus EM signalus. Mes sukūrėme IoT sprendimą elektroniniams prietaisams identifikuoti naudojant daleles
Laikrodis realiuoju laiku su „Arduino“: 3 žingsniai
Laikrodis realiuoju laiku su „Arduino“: Šiame projekte mes pagaminsime laikrodį naudodami „Arduino“ir RTC modulius. Kaip žinome, „Arduino“negali rodyti tikrojo laiko, todėl mes naudosime RTC modulį, kad LCD ekrane būtų rodomas tinkamas laikas. Atidžiai perskaitykite visus žingsnius, tai padės
Minitelis laikrodis realiuoju laiku: 5 žingsniai
„Minitel Real Time Clock“: 1978 m. Sukurtas „France Telecom“, „Minitel“buvo informacijos paieškos ir tekstinių pranešimų siuntimo paslauga. Buvo laikomas sėkmingiausiu tinklu prieš pasaulinį tinklą. Po 30 metų 2008 m. Tinklas pagaliau uždarytas. (Yra daug informacijos apie tai
GPS sekimas realiuoju laiku: 3 žingsniai
GPS stebėjimas realiuoju laiku: šioje pamokoje parodysime, kaip sekti vietos stebėjimą realiuoju laiku naudojant „BerryGPS-GSM“, „Raspberry Pi Zero“ir pradinę būseną. Mes išsiunčiame ilgumą, platumą ir greitį per 3G su „BerryGPS-GSM“į pradinę būseną
Veido aptikimas realiuoju laiku „RaspberryPi-4“: 6 žingsniai (su nuotraukomis)
Veido aptikimas realiuoju laiku RaspberryPi-4: Šioje instrukcijoje mes atliksime veido aptikimą realiuoju laiku Raspberry Pi 4 su „Shunya O/S“, naudodami „Shunyaface“biblioteką. Vadovaudamiesi šia pamoka, RaspberryPi-4 galite pasiekti 15–17 aptikimo kadrų dažnį