Indholdsfortegnelse:
- Trin 1: Foreslået læsning
- Trin 2: Materialer
- Trin 3: Men vent! Hvad er slagkraft?
- Trin 4: Konfigurer Pi Zero W
- Trin 5: Aktiver WiFi og I2C
- Trin 6: Genstart Pi og log på eksternt
- Trin 7: Byg det: Elektronik
- Trin 8: Tilslut accelerometeret til Pi's GPIO
- Trin 9: Tilføj en advarsels -LED
- Trin 10: Programmer det
- Trin 11: Hurtigt overblik over programmet
- Trin 12: Test systemet
- Trin 13: Sikre elektriske forbindelser og installer det
- Trin 14: Indlejring af kredsløbet i en hjelm
- Trin 15: Distribuer
- Trin 16: Tilføjelse af flere funktioner
Video: Raspberry Pi Impact Force Monitor !: 16 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Hvor stor indflydelse kan den menneskelige krop håndtere? Uanset om det er fodbold, klatring eller en cykelulykke, er det utroligt vigtigt at vide, hvornår man skal søge lægehjælp umiddelbart efter en kollision, især hvis der ikke er tydelige tegn på traumer. Denne vejledning lærer dig, hvordan du bygger din helt egen slagkraftmonitor!
Læsetid: ~ 15 min
Bygningstid: ~ 60-90 min
Dette open source-projekt bruger en Raspberry Pi Zero W og et LIS331-accelerometer til at overvåge og advare brugeren om potentielt farlige G-styrker. Du er naturligvis velkommen til at ændre og tilpasse systemet, så det passer til dine forskellige borgervidenskabelige behov.
Bemærk: Byg sjove ting med Impact Force Monitor! Brug det dog ikke som en erstatning for professionel medicinsk rådgivning og diagnose. Hvis du føler, at du har taget et alvorligt fald, skal du besøge en kvalificeret og autoriseret professionel for korrekt behandling.
Trin 1: Foreslået læsning
For at holde denne vejledning kort og sød (er, ja, så meget som muligt), antager jeg, at du starter med en funktionel Pi Zero W. Har du brug for hjælp? Intet problem! Her er en komplet installationsvejledning.
Vi forbinder også fjernt til Pi (også kaldet trådløst). For en mere grundig oversigt over denne proces, tjek denne vejledning.
** Fast eller vil du lære mere? Her er nogle praktiske ressourcer: **
1. Fremragende "Kom godt i gang" guide til Pi.
2. Fuld tilslutningsguide til LIS331 accelerometer breakout board.
3. Mere om accelerometre!
4. Oversigt over Raspberry Pi GPIO -benene.
5. Brug af SPI- og I2C -serielle busser på Pi.
6. LIS331 Datablad
Trin 2: Materialer
-
Raspberry Pi Zero W Basic Kit
- Dette kit indeholder følgende: SD -kort m/ NOOBS -operativsystem; USB OTG -kabel (microUSB til USB -hun); Mini HDMI til HDMI; MicroUSB strømforsyning (~ 5V)
- Anbefales også: USB -hub
- Raspberry Pi 3 Header Pins
- LIS331 Accelerometer Breakout Board
- Batteripakke m/ MicroUSB -stik
- 5 mm rød LED
- 1k modstand
- 6 "varmekrympeslange eller elektrisk tape
- Skæreborde til accelerometer (4-8) og LED (2)
- Kvinder-til-hun-trøjer (6)
Værktøjer
- Loddejern og tilbehør
- Epoxy (eller andet permanent, ikke-ledende flydende klæbemiddel)
- Sikkert også saks:)
Trin 3: Men vent! Hvad er slagkraft?
Heldigvis er udtrykket "slagkraft" ret ligetil: mængden af kraft i en påvirkning. Som de fleste ting kræver måling af det imidlertid en mere præcis definition. Ligningen for slagkraft er:
F = KE/d
hvor F er slagkraften, KE er den kinetiske energi (bevægelsesenergi), og d er slagafstanden, eller hvor meget objektet knaser. Der er to vigtige takeaways fra denne ligning:
1. Slagkraft er direkte proportional med den kinetiske energi, hvilket betyder, at slagkraften øges, hvis den kinetiske energi stiger.
2. Slagkraften er omvendt proportional med slagafstanden, hvilket betyder, at slagkraften falder, hvis slagafstanden øges. (Derfor har vi airbags: for at øge afstanden til vores påvirkning.)
Kraft måles typisk i Newton (N), men slagkraft kan diskuteres i form af en "G-Force", et tal udtrykt som et multiplum af g eller jordens gravitationsacceleration (9,8 m/s^2). Når vi bruger G-kraftenheder, måler vi en objekts acceleration i forhold til frit fald mod jorden.
Teknisk set er g en acceleration, ikke en kraft, men den er nyttig, når man taler om kollisioner, fordi acceleration* er det, der skader menneskekroppen.
Til dette projekt vil vi bruge G-force-enheder til at afgøre, om en påvirkning er potentielt farlig og fortjener lægehjælp. Forskning har fundet ud af, at g-kræfter over 9G kan være dødelige for de fleste mennesker (uden særlig træning), og 4-6G kan være farlige, hvis de opretholdes i mere end et par sekunder.
Når vi kender dette, kan vi programmere vores effektstyrkemonitor til at advare os, hvis vores accelerometer måler en G-kraft over en af disse tærskler. Hurra, videnskab!
For mere information, læs om slagkraft og g-kraft på Wikipedia!
Acceleration er en ændring i hastighed og/eller retning
Trin 4: Konfigurer Pi Zero W
Saml din Raspberry Pi Zero og eksterne enheder for at konfigurere Pi'en til at være hovedløs!
- Tilslut Pi til en skærm og tilhørende periferiudstyr (tastatur, mus), tilslut strømforsyningen og log ind.
-
Opdater software for at holde din Pi hurtig og sikker. Åbn terminalvinduet, og skriv disse kommandoer:
Skriv og indtast:
sudo apt-get opdatering
Skriv og indtast:
sudo apt-get opgradering
Nulstil:
sudo shutdown -r nu
Trin 5: Aktiver WiFi og I2C
- Klik på WiFi -ikonet i øverste højre hjørne af skrivebordet, og opret forbindelse til dit WiFi -netværk.
- I terminalen skriver du denne kommando for at hente Pi's softwarekonfigurationsværktøj:
sudo raspi-config
- Vælg "Interfacing Options", derefter "SSH", og vælg "Yes" i bunden for at aktivere.
- Gå tilbage til "Interfacing Options", derefter "I2C", og vælg "Yes" for at aktivere.
- I terminalen skal du installere fjernskrivebordforbindelsessoftware:
sudo apt-get install xrdp
- Skriv 'Y' (ja) på dit tastatur til begge prompts.
- Find Pi's IP -adresse ved at holde musen over WiFi -forbindelsen (du vil måske også skrive den ned).
- Skift Pi -adgangskoden med passwd -kommandoen.
Trin 6: Genstart Pi og log på eksternt
Vi kan nu droppe HDMI og periferiudstyr, woohoo!
-
Konfigurer en fjernskrivebordforbindelse.
- På en pc skal du åbne Remote Desktop Connection (eller PuTTY, hvis du er tilfreds med det).
- For Mac/Linux kan du installere dette program eller bruge et VNC -program.
- Indtast IP'en til Pi'en, og klik på "Connect" (Ignorer advarsler om ukendt enhed).
- Log ind på Pi ved hjælp af dine legitimationsoplysninger, og vi kører!
Trin 7: Byg det: Elektronik
De to fotos ovenfor viser det elektriske skema for dette projekt og Pi Zero Pinout. Vi skal bruge begge dele til at løse hardware -forbindelserne.
Bemærk: LIS331 breakout -kortet i skematikken er en ældre version - brug pin -etiketterne til vejledning
Trin 8: Tilslut accelerometeret til Pi's GPIO
- Lodde og fjern forsigtigt enhver fluxrester på accelerometeret og Pi GPIO's header pins.
- Tilslut derefter jumperwires mellem LIS331 breakout board og Pi mellem følgende pins:
LIS331 Breakout Board Raspberry Pi GPIO Pin
GND GPIO 9 (GND)
VCC GPIO 1 (3.3V)
SDA GPIO 3 (SDA)
SCL GPIO 5 (SCL)
For at gøre det lettere at slutte sensoren til Pi Zero, blev der lavet en brugerdefineret adapter ved hjælp af en kvindelig header og jumperwires. Varmekrympning blev tilføjet efter test af forbindelserne
Trin 9: Tilføj en advarsels -LED
- Lod en strømbegrænsende modstand til det negative LED -ben (kortere ben) og tilføj krympepapir (eller elektrisk tape) til isolering.
- Brug to jumperkabler eller headerstifter til at forbinde det positive LED -ben til GPIO26 og modstanden til GND (headerpositioner henholdsvis 37 og 39).
- Tilslut batteripakken til Pi's inputeffekt for at fuldføre opsætningen!
Trin 10: Programmer det
Python-koden til dette projekt er open-source! Her er et link til GitHub -depotet.
For folk, der er nye inden for programmering:
Læs programkoden og kommentarerne igennem. Ting, der er lette at ændre, er i afsnittet "Brugerparametre" øverst
For folk mere komfortable m/ de tekniske 'Deets:
Dette program initialiserer LIS331 -accelerometeret med standardindstillinger, herunder normal strømtilstand og 50Hz datahastighed. Læs LIS331 -databladet igennem, og rediger initialiseringsindstillinger efter ønske
Alle
- Den maksimale accelerationsskala, der bruges i dette projekt, er 24G, fordi slagkraften hurtigt bliver stor!
- Det anbefales at kommentere accelerationsudskrivningssætningerne i hovedfunktionen, når du er klar til fuld implementering.
Inden du kører programmet, skal du dobbelttjekke, at accelerometerets adresse er 0x19. Åbn terminalvinduet, og installer nogle nyttige værktøjer med denne kommando:
sudo apt-get install -y i2c-værktøjer
Kør derefter i2cdetect -programmet:
i2cdetect -y 1
Du får vist en tabel med I2C -adresser vist som vist på billedet ovenfor. Forudsat at dette er den eneste I2C -enhed, der er tilsluttet, er nummeret du ser (i dette tilfælde: 19) accelerometerets adresse! Hvis du ser et andet nummer, skal du notere og ændre i programmet (variabel addr).
Trin 11: Hurtigt overblik over programmet
Programmet læser x-, y- og z-accelerationen, beregner en g-kraft og gemmer derefter dataene i to filer (i den samme mappe som programkoden) efter behov:
- AllSensorData.txt-giver et tidsstempel efterfulgt af g-kraften i x-, y- og z-akserne.
- AlertData.txt - det samme som ovenfor, men kun for aflæsninger, der ligger over vores sikkerhedstærskler (absolut tærskel på 9G eller 4G i mere end 3 sekunder).
G-kræfter over vores sikkerhedstærskler tænder også vores alarm-LED og holder den tændt, indtil vi genstarter programmet. Stop programmet ved at skrive "CTRL+c" (tastaturafbrydelse) i kommandoterminalen.
Billedet ovenfor viser begge datafiler oprettet under test.
Trin 12: Test systemet
Åbn terminalvinduet, naviger til mappen, hvor du gemte programkoden ved hjælp af cd -kommandoen.
cd sti/til/mappe
Kør programmet ved hjælp af root -privilegier:
sudo python NameOfFile.py
Kontroller, at accelerationsværdierne i x, y og z-retning udskrives til terminalvinduet, er rimelige, og tænd LED-lyset, hvis g-kraften er over vores tærskler.
- For at teste skal du rotere accelerometeret, så hver akse peger mod jorden og kontrollere, at de målte værdier enten er 1 eller -1 (svarer til acceleration på grund af tyngdekraften).
- Ryst accelerometeret for at sikre, at målingerne stiger (tegn angiver aksens retning, vi er mest interesseret i størrelsen af aflæsningen).
Trin 13: Sikre elektriske forbindelser og installer det
Når alt fungerer korrekt, lad os sikre os, at slagkraftmonitoren faktisk kan modstå slag!
- Brug varmekrympeslange og/eller belæg de elektriske forbindelser til accelerometeret og LED'en i epoxy.
-
For super holdbare, permanente installationer, overvej at belægge hele shebangen i epoxy: Pi Zero, LED'en og accelerometeret (men IKKE Pi -kabelstikkene eller SD -kortet).
Advarsel! Du kan stadig få adgang til Pi og lave alle computerens ting, men et fuldt lag epoxy forhindrer brugen af GPIO -benene til fremtidige projekter. Alternativt kan du lave eller købe en brugerdefineret taske til Pi Zero, selvom du kontrollerer, om den er holdbar
Fastgør til en hjelm, din person eller en transportform som dit skateboard, cykel eller kat*!
Test fuldstændigt, at Pi'en er forsvarligt fastgjort, eller at GPIO -benene kan løsne sig og få programmet til at gå ned.
*Bemærk: Jeg ville oprindeligt skrive "bil", men regnede med, at en kollisionsstyrkeovervågning til en kat også kunne give nogle interessante data (selvfølgelig med kattens samtykke).
Trin 14: Indlejring af kredsløbet i en hjelm
Der er et par metoder til at integrere kredsløbet i en hjelm. Her er min tilgang til en hjelminstallation:
- Hvis du ikke allerede har det, skal du slutte batteriet til Pi (med batteriet slukket). Fastgør accelerometeret på bagsiden af Pi med ikke -ledende isolering imellem (som bobleplast eller tyndt pakkeskum).
- Mål dimensionerne på kombinationen Pi Zero, accelerometer, LED og batteristik. Tilføj 10% på hver side.
- Tegn en udskæring til projektet på den ene side af hjelmen, med batteristikket vendt mod toppen af hjelmen. Skær polstring i hjelmen ud og efterlad et par millimeter (~ 1/8 tommer).
- Placer sensoren, Pi og LED i udskæringen. Skær stykker af den overskydende hjelmpolstring eller brug emballageskum til at isolere, beskytte og holde elektronikken på plads.
- Mål batteriets dimensioner, tilføj 10%, og følg den samme afbrydelse for batteriet. Sæt batteriet i lommen.
- Gentag isoleringsteknikken for batteriet på den anden side af hjelmen.
- Hold hjelmen polstring på plads med tape (dit hoved vil holde dem på plads, når du har den på).
Trin 15: Distribuer
Tænd batteriet!
Nu kan du eksternt logge ind på Pi via SSH eller fjernskrivebord og køre programmet via terminalen. Når programmet kører, begynder det at optage data.
Når du afbryder forbindelsen til dit WiFi i hjemmet, afbrydes SSH -forbindelsen, men programmet bør stadig logge data. Overvej at tilslutte Pi'en til din smartphones hotspot WiFi, eller bare log ind igen og tag dataene, når du kommer hjem.
For at få adgang til dataene skal du eksternt logge ind på Pi og læse tekstfilerne. Det aktuelle program tilføjer altid data til de eksisterende filer - hvis du vil slette data (f.eks. Fra test), skal du slette tekstfilen (via skrivebordet eller bruge kommandoen rm i terminalen) eller oprette et nyt filnavn i programmet kode (i brugerparametre).
Hvis lysdioden er tændt, slukkes det ved genstart af programmet.
Gå nu ud, have det sjovt i livet, og tjek dataene så ofte, hvis du tilfældigvis støder på noget. Forhåbentlig er det en lille bump, men i hvert fald ved du det!
Trin 16: Tilføjelse af flere funktioner
Leder du efter forbedringer af effektstyringsmonitoren? Det er uden for omfanget af selvstudiet, men prøv at se på nedenstående liste for ideer!
Lav en analyse af dine g-force-data i Python!
Pi Zero har Bluetooth- og WiFi -funktioner - skriv en app til at sende accelerometerdata til din smartphone! For at komme i gang er her en vejledning til en Pi Twitter Monitor.
Tilføj andre sensorer, f.eks. En temperatursensor eller en mikrofon*!
Glad bygning
*Bemærk: For at høre de hylende lyde, der er forbundet med din acceleration!: D
Anbefalede:
"Space Impact" -spil med gyrosensor og Nokia 5110 LCD: 3 trin
"Space Impact" -spil med gyrosensor og Nokia 5110 LCD: Efter min Tamagotchi døde (sidste projekt), begyndte jeg at søge efter en ny måde at spilde min tid på. Jeg besluttede at programmere det klassiske spil "Space Impact" på Arduino. For at gøre spillet lidt mere interessant og sjovt brugte jeg en gyroskopsensor, jeg havde
Jedi Force: 7 trin (med billeder)
Jedi Force: Yoda er min mentor, han er klog. Jeg prøver ikke at efterligne ham, i det mindste bevidst (se billeder), men nogen sammenlignede mig engang med ham. Denne Lazy Old Geek (L.O.G.) er interesseret i hjernebølger, men selv kommercielle EEG'er (elektroencefalogram) er smukke
Impact Recorder til køretøjer: 18 trin (med billeder)
Slagrekorder til køretøjer: Slagrekorder er designet til at registrere påvirkninger, der påføres køretøjet, mens de kører eller står stille. Virkningerne gemmes i databasen i form af aflæsninger såvel som video/billede. Ved påvirkning kan fjernbruger verificeres i realtid og fjern u
Sådan adskilles en computer med nemme trin og billeder: 13 trin (med billeder)
Sådan adskilles en computer med nemme trin og billeder: Dette er en instruktion om, hvordan du adskiller en pc. De fleste af de grundlæggende komponenter er modulopbyggede og nemme at fjerne. Det er dog vigtigt, at du er organiseret omkring det. Dette hjælper med at forhindre dig i at miste dele og også ved at lave genmonteringen til
DIY Force Sensitive Resistor (FSR): 5 trin (med billeder)
DIY Force Sensitive Resistor (FSR): Lav en kraftfølsom modstand (en tryksensor) med reservedele i stedet for at bruge $ 5 - $ 20 hver