
Innehållsförteckning:
- Tillbehör
- Steg 1: Installera nödvändiga IDE: er och bibliotek
- Steg 2: Anslut accelerometrarna till fjädern
- Steg 3: Fäst accelerometrar på skjortan
- Steg 4: Körningskod på Arduino
- Steg 5: Körningskod på Android
- Steg 6: Testa Bluetooth -signalanslutning
- Steg 7: Samla dina egna data
- Steg 8: Träna dina data på Jupyter Notebook
- Steg 9: Ändra Android -applikation med ny modell
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:10



Postshirt är ett system för trådlös hållning i realtid som sänder och klassificerar accelerometerdata från en Adafruit Feather till en Android -applikation via Bluetooth. Hela systemet kan upptäcka i realtid om användaren har dålig hållning och skapar en push -avisering när användaren börjar slinka, detekteringen fungerar också när han går.
Tillbehör
Elektronik
1 x Android -smartphone
1 x Adafruit fjäder
1 x litiumjonpolymerbatteri - 3,7v 100mAh (valfritt för trådlös användning)
2 x ADXL335 trippelaxlad accelerometer
Material
Anslutningstråd
Rulle med tejp
Steg 1: Installera nödvändiga IDE: er och bibliotek
Adafruit fjäder
Installera först Arduino IDE och följ sedan stegen för att installera Adafruit nRF51 BLE Library
Jupyter anteckningsbok
Installera först Jupyter Notebook och sedan följande obligatoriska bibliotek
- https://scikit-learn.org/stable/
- https://github.com/nok/sklearn-porter
Android
Installera Android Studio
Projektkod
Ladda ner hela projektkoden från GitHub
Steg 2: Anslut accelerometrarna till fjädern


För att läsa data från ADXL335s, anslut anslutningskabeln till Vin-, mark-, Xout-, Yout- och Zout -stiften. För båda accelerometrarna ansluter Vin -trådarnas andra ändar till 3V -stiftet på fjädern och de andra ändarna av markstiften till markstiftet på fjädern. Anslut Xout-, Yout- och Zout -trådarna på den första accelerometern till A0-, A1- och A2 -stiften på fjädern. Anslut Xout-, Yout- och Zout -ledningarna på den andra accelerometern till A3-, A4- och A5 -stiften på fjädern.
Accelerometrarna kan anslutas på vilket sätt som helst men lödning av trådarna och värmekrympning eller inslagning av tejp runt anslutningspunkterna föreslås för att förhindra att utsatta sektioner kommer i kontakt med varandra.
Steg 3: Fäst accelerometrar på skjortan

Fäst accelerometrarna på tejpens baksida med tejp. Acceleratorn som är ansluten till stift A0-2 bör placeras horisontellt mitt på mitten av nedre delen av ryggen. Acceleratorn som är ansluten till stiften A3-5 ska placeras horisontellt mitt på nacken. Båda accelerometrarna ska vara inriktade så att tapparna är längs undersidan och sensorerna ska tejpas platta och säkra mot tröjan.
Obs: För en mer permanent bärbarhet kan sensorerna sys på kläderna, men de ska tejpas och testas först för att säkerställa att sensorplaceringarna placeras effektivt.
Steg 4: Körningskod på Arduino

För att börja samla in data på fjädern startar du Arduino IDE och öppnar filen GestureDataSender under Arduino -delen av projektkoden. Med den här filen öppen ställ in styrelsen och porten som används och välj sedan "Verifiera" och "Ladda upp" för att ladda upp koden till fjädern.
Steg 5: Körningskod på Android

För att köra programmet på android startar du först Android Studio och väljer sedan alternativet för att öppna ett befintligt Android -projekt. Navigera till projektkoden och välj "Android" -mappen. Android Studio tar ett tag att synkronisera projektfilerna och kan begära att installera några nödvändiga bibliotek, acceptera dessa alternativ. När projektet är klart ansluter du Android -enheten till datorn och väljer köralternativet högst upp i fönstret. Välj enheten från prompten som visas och låt sedan programmet bygga till enheten.
Steg 6: Testa Bluetooth -signalanslutning



När appen är öppen, se till att fjädern är påslagen och välj sedan Adafruit Bluefruit LE från enhetslistan som visas på telefonen. Vänta tills enheten ansluts, om anslutningen misslyckas första gången försök igen ansluta innan du vidtar andra felsökningssteg. Efter att enheten har anslutits välj modulen "Posture Detector" som, om den fungerar korrekt, visar en liveuppdateringsgraf samt de aktuella förutsägelserna för hållning och rörelse. För att testa att arduino kommunicerar sensordata korrekt flytta de två accelerometrarna i slumpmässiga riktningar och kontrollera om alla linjer på grafen ändras. Om vissa linjer förblir konstanta, se till att accelerometrarna är korrekt anslutna till fjädern. Om allt fungerar, lägg på skjortan och testa att detekteringen av hållning korrekt förutspår din hållning. Grattis! Du har framgångsrikt konfigurerat en hållbar detektering bärbar. Fortsätt genom denna instruerbara för att lära dig hur du skapar din egen dataset och anpassar din egen hållningsdetektering.
Steg 7: Samla dina egna data


För att samla in din egen data går du tillbaka till skärmen för val av modul och öppnar modulen Data Recorder. När denna skärm har öppnats fyller du i etiketten för data som du kommer att samla in; för att enkelt träna på dina data bör du inkludera ordet "bra" i namnet på alla inspelningar med bra hållning och "dålig" i alla inspelningar med hållning. För att börja samla, tryck på knappen "Samla data" och utför din avsedda åtgärd, när du är klar trycker du på knappen igen för att avsluta och spara data. All inspelad data lagras i en mapp med namnet "GestureData" under dokumentmappen i ditt filsystem. När du har registrerat alla dina data kopierar du filerna till din dator för modellträning.
Steg 8: Träna dina data på Jupyter Notebook


Den ursprungliga projektkoden innehåller den ursprungliga data som används för utbildning i mappen "data" under avsnittet Jupyter Notebook, för att träna dina egna data, ta bort alla filer i den här mappen och kopiera sedan dina egna data till mappen. Kör sedan Jupyter Notebook och öppna "PostureDetectorTrainer.ipynb". Den här anteckningsboken är utformad för att automatiskt separera alla filer i datamappen med bra och dålig hållning och sedan träna en linjär SVM för klassificering för att träna modellen helt enkelt välj rullgardinsmenyn "Cell" och välj "Kör alla". Anteckningsboken kan ta en stund att köra, men när du är klar bläddrar du till den punkt som ger hållningsprognosnoggrannhet för modellen. Om noggrannheten är låg kan du försäkra dig om att dina tidigare inspelningar är korrekta och konsekventa sanningar. Om resultaten ser bra ut, bläddra till nästa cell där en Java -klass har skapats. Bläddra till botten av den här cellen tills du ser en del kommenterad som parametrar. Kopiera dessa värden eftersom du kommer att behöva dem i nästa steg.
Steg 9: Ändra Android -applikation med ny modell

För att ändra modell i Android -applikationen, använd Android Studio för att navigera till filen "PostureDetectorFragment.java" under javasektionen i projektstrukturen. I den här filen rullar du ner till avsnittet som kommenteras som "Posture classifier" som kommer att ha samma 4 motsvarande variabler som de 4 som genereras i Jupyter Notebook. Ersätt dessa 4 variablers värden med de värden som kopierats från Jupyter Notebook, var noga med att variabelnamnen inte ändras från p_vektorer, p_koefficienter etc. Spara filen och välj alternativet Kör igen för att bygga programmet till din enhet. Följ nu samma steg som tidigare för att öppna Posture Detector -modulen och du bör se klassificeraren som nu arbetar med din nyutbildade modell. Om det fortfarande inte verkar fungera bra bör du överväga att spela in ytterligare data och återskapa modellen. Annars grattis! Du har nu importerat din egen personligt utbildade klassificerare till Postshirt!
Rekommenderad:
COVID-19 Realtime Tracker för ESP32: 3 steg

COVID-19 Realtime Tracker för ESP32: Den här lilla spåraren hjälper dig att vara uppdaterad om corona-utbrottet och situationen i ditt land. Displayen visar alternerande aktuell data från olika länder du väljer. Uppgifterna samlas in av webbplatsen www.wo
Opencv Face Detection, Training and Recognition: 3 steg

Opencv ansiktsigenkänning, träning och igenkänning: OpenCV är ett datorbaserat bibliotek med öppen källkod som är mycket populärt för att utföra grundläggande bildbehandlingsuppgifter som suddighet, bildblandning, förbättrad bild samt videokvalitet, tröskelvärden etc. Förutom bildbehandling, det bevisar
[Wearable Mouse] Bluetooth-baserad Wearable Mouse Controller för Windows 10 och Linux: 5 steg
![[Wearable Mouse] Bluetooth-baserad Wearable Mouse Controller för Windows 10 och Linux: 5 steg [Wearable Mouse] Bluetooth-baserad Wearable Mouse Controller för Windows 10 och Linux: 5 steg](https://i.howwhatproduce.com/images/006/image-17131-j.webp)
[Wearable Mouse] Bluetooth-baserad Wearable Mouse Controller för Windows 10 och Linux: Jag gjorde en Bluetooth-baserad muskontroller som kan användas för att styra muspekaren och utföra PC-musrelaterade operationer i farten, utan att röra vid några ytor. Den elektroniska kretsen, som är inbäddad i en handske, kan användas för att spåra
Raspberry Pi Object Detection: 7 steg

Raspberry Pi Object Detection: Den här guiden innehåller steg-för-steg-instruktioner för hur du konfigurerar TensorFlows Object Detection API på Raspberry Pi. Genom att följa stegen i den här guiden kommer du att kunna använda din Raspberry Pi för att utföra objektdetektering på livevideo från en P
Cryptocurrency Ticker / Realtime Youtube Subscriber Counter: 6 steg (med bilder)

Cryptocurrency Ticker / Realtime Youtube Subscriber Counter: Kompakt LED -displayenhet som fungerar som kryptovaluta ticker och fungerar som en realtids YouTube -abonnenträknare. I detta projekt använder vi en Raspberry Pi Zero W, några 3D -tryckta delar och ett par max7219 displayenheter för att skapa ett realtidssu