Cuprins:
- Pasul 1: Citire sugerată
- Pasul 2: Materiale
- Pasul 3: Dar Stai! Ce este Forța de impact?
- Pasul 4: Configurați Pi Zero W
- Pasul 5: Activați WiFi și I2C
- Pasul 6: Reporniți Pi și conectați-vă de la distanță
- Pasul 7: Construiți-l: electronice
- Pasul 8: Conectați accelerometrul la GPIO-ul lui Pi
- Pasul 9: Adăugați un LED de alertă
- Pasul 10: Programați-l
- Pasul 11: Prezentare rapidă a programului
- Pasul 12: Testați sistemul
- Pasul 13: securizați conexiunile electrice și instalați-l
- Pasul 14: încorporarea circuitului într-o cască
- Pasul 15: Implementați
- Pasul 16: Adăugarea mai multor caracteristici
Video: Raspberry Pi Impact Force Monitor !: 16 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
Cât de mult poate suporta corpul uman? Fie că este vorba de fotbal, alpinism sau un accident de bicicletă, este extrem de important să știți când să solicitați asistență medicală imediată după o coliziune, mai ales dacă nu există semne evidente de traume. Acest tutorial vă va învăța cum să vă construiți propriul monitor de forță de impact!
Timp de citire: ~ 15 min
Timp de construcție: ~ 60-90 min
Acest proiect open-source folosește un Raspberry Pi Zero W și un accelerometru LIS331 pentru a monitoriza și avertiza utilizatorul cu privire la forțele G. potențial periculoase. Desigur, nu ezitați să modificați și să adaptați sistemul pentru a se potrivi diferitelor dvs. nevoi științifice ale cetățenilor.
Notă: Construiți lucruri distractive cu Impact Force Monitor! Cu toate acestea, vă rugăm să nu îl utilizați ca înlocuitor al sfaturilor și diagnosticului medical profesionist. Dacă simțiți că ați luat o cădere gravă, vă rugăm să vizitați un profesionist calificat și autorizat pentru un tratament adecvat.
Pasul 1: Citire sugerată
Pentru a păstra acest tutorial scurt și neașteptat (er, ei bine, pe cât posibil), presupun că începeți cu un Pi Zero funcțional W. Aveți nevoie de ajutor? Nici o problemă! Iată un tutorial de configurare complet.
De asemenea, ne vom conecta la Pi de la distanță (aka wireless). Pentru o prezentare mai detaliată a acestui proces, consultați acest tutorial.
** Blocat sau doriți să aflați mai multe? Iată câteva resurse la îndemână: **
1. Ghid excelent „Noțiuni introductive” pentru Pi.
2. Ghid de conectare complet pentru placa de rupere a accelerometrului LIS331.
3. Mai multe despre accelerometre!
4. Prezentare generală a pinilor GPIO Raspberry Pi.
5. Utilizarea autobuzelor seriale SPI și I2C pe Pi.
6. Foaie de date LIS331
Pasul 2: Materiale
-
Kit Raspberry Pi Zero W Basic
- Acest kit include următoarele: Card SD cu sistem de operare NOOBS; Cablu USB OTG (microUSB la USB feminin); Mini HDMI la HDMI; Alimentare MicroUSB (~ 5V)
- De asemenea, recomandat: hub USB
- Raspberry Pi 3 pini antet
- LIS331 Placă de decelerare a accelerometrului
- Acumulator cu conector MicroUSB
- LED roșu de 5 mm
- Rezistor 1k
- Tub de termorezistență de 6 "sau bandă electrică
- Pinii antet pentru accelerometru (4 - 8) și LED (2)
- Fire jumper de la femeie la femeie (6)
Instrumente
- Aparat de lipit și accesorii
- Epoxidic (sau alt adeziv lichid permanent, neconductiv)
- Probabil si foarfece:)
Pasul 3: Dar Stai! Ce este Forța de impact?
Din fericire, termenul „forță de impact” este destul de simplu: cantitatea de forță dintr-un impact. La fel ca majoritatea lucrurilor, măsurarea acestuia necesită o definiție mai precisă. Ecuația forței de impact este:
F = KE / d
unde F este forța de impact, KE este energia cinetică (energia mișcării), și d este distanța de impact sau cât de mult se zdrobește obiectul. Există două aspecte cheie pentru această ecuație:
1. Forța de impact este direct proporțională cu energia cinetică, ceea ce înseamnă că forța de impact crește dacă energia cinetică crește.
2. Forța de impact este invers proporțională cu distanța de impact, ceea ce înseamnă că forța de impact scade dacă distanța de impact crește. (Acesta este motivul pentru care avem airbaguri: pentru a crește distanța impactului nostru.)
Forța este de obicei măsurată în Newtoni (N), dar forța de impact poate fi discutată în termeni de „Forță G”, un număr exprimat ca multiplu al g sau accelerația gravitațională a Pământului (9,8 m / s ^ 2). Când folosim unități de forță G, măsurăm o accelerație a obiectelor în raport cu căderea liberă spre pământ.
Din punct de vedere tehnic, g este o accelerație, nu o forță, dar este utilă atunci când vorbim despre coliziuni, deoarece accelerarea * este ceea ce dăunează corpului uman.
Pentru acest proiect, vom folosi unități de forță G pentru a determina dacă un impact este potențial periculos și merită asistență medicală. Cercetările au descoperit că forțele g peste 9G pot fi fatale pentru majoritatea oamenilor (fără pregătire specială), iar 4-6G pot fi periculoase dacă sunt susținute mai mult de câteva secunde.
Știind acest lucru, putem programa monitorizarea forței de impact pentru a ne avertiza dacă accelerometrul nostru măsoară o forță G peste oricare dintre aceste praguri. Ura, știință!
Pentru mai multe informații, citiți despre forța de impact și forța g pe Wikipedia!
Accelerarea este o schimbare de viteză și / sau direcție
Pasul 4: Configurați Pi Zero W
Adunați Raspberry Pi Zero și perifericele pentru a configura Pi ca să fie fără cap!
- Conectați Pi la un monitor și periferice asociate (tastatură, mouse), conectați sursa de alimentare și conectați-vă.
-
Actualizați software-ul pentru a vă menține Pi rapid și sigur. Deschideți fereastra terminalului și tastați aceste comenzi:
Tastați și introduceți:
sudo apt-get update
Tastați și introduceți:
sudo apt-get upgrade
Resetați:
sudo shutdown -r acum
Pasul 5: Activați WiFi și I2C
- Faceți clic pe pictograma WiFi din colțul din dreapta sus al desktopului și conectați-vă la rețeaua WiFi.
- În terminal introduceți această comandă pentru a afișa instrumentul de configurare a software-ului Pi:
sudo raspi-config
- Selectați „Opțiuni de interfațare”, apoi „SSH” și alegeți „Da” în partea de jos pentru a activa.
- Reveniți la „Opțiuni de interfață”, apoi „I2C” și selectați „Da” pentru a activa.
- În terminal, instalați software-ul de conexiune desktop la distanță:
sudo apt-get install xrdp
- Tastați „Y” (da) pe tastatură la ambele solicitări.
- Găsiți adresa IP a lui Pi trecând pe conexiunea WiFi (poate doriți să o notați).
- Schimbați parola Pi cu comanda passwd.
Pasul 6: Reporniți Pi și conectați-vă de la distanță
Acum putem renunța la HDMI și periferice, woohoo!
-
Configurați o conexiune desktop la distanță.
- Pe un computer, deschideți Remote Desktop Connection (sau PuTTY dacă sunteți confortabil cu asta).
- Pentru Mac / Linux, puteți instala acest program sau puteți utiliza un program VNC.
- Introduceți adresa IP pentru Pi și faceți clic pe „Conectare” (Ignorați avertismentele despre dispozitiv necunoscut).
- Conectați-vă la Pi folosind acreditările dvs. și plecăm!
Pasul 7: Construiți-l: electronice
Cele două fotografii de mai sus prezintă schema electrică pentru acest proiect și Pin Zero Pinout. Vom avea nevoie de ambele pentru a aborda conexiunile hardware.
Notă: Placa de rupere LIS331 din schemă este o versiune mai veche - utilizați etichetele cu pini pentru îndrumare
Pasul 8: Conectați accelerometrul la GPIO-ul lui Pi
- Lipiți și îndepărtați cu atenție orice reziduu de flux de pe accelerometru și pinii antetului Pi GPIO.
- Apoi conectați firele jumper între placa de rupere LIS331 și Pi între următorii pini:
LIS331 Breakout Board Raspberry Pi GPIO Pin
GND GPIO 9 (GND)
VCC GPIO 1 (3,3V)
SDA GPIO 3 (SDA)
SCL GPIO 5 (SCL)
Pentru a face mai ușoară conectarea senzorului la Pi Zero, a fost realizat un adaptor personalizat utilizând un antet feminin și fire de jumper. A fost adăugat termocontractiv după testarea conexiunilor
Pasul 9: Adăugați un LED de alertă
- Lipiți un rezistor de limitare a curentului la piciorul cu LED negativ (piciorul mai scurt) și adăugați folie termocontractabilă (sau bandă electrică) pentru izolare.
- Utilizați două cabluri jumper sau pini antet pentru a conecta piciorul LED pozitiv la GPIO26 și rezistorul la GND (pozițiile antetului 37 și respectiv 39).
- Conectați acumulatorul la puterea de intrare a lui Pi pentru a finaliza configurarea!
Pasul 10: Programați-l
Codul Python pentru acest proiect este open-source! Iată un link către depozitul GitHub.
Pentru persoanele noi în programare:
Citiți codul programului și comentarii. Lucrurile ușor de modificat se află în secțiunea „Parametrii utilizatorului” din partea de sus
Pentru oameni mai confortabili cu tehnica „Deets:
Acest program inițializează accelerometrul LIS331 cu setări implicite, inclusiv modul normal de alimentare și rata de date de 50Hz. Citiți fișa tehnică LIS331 și modificați setările de inițializare după cum doriți
Toate
- Scara maximă de accelerație utilizată în acest proiect este de 24G, deoarece forța de impact devine foarte rapidă!
- Este recomandat să comentați declarațiile de imprimare a accelerației în funcția principală atunci când sunteți gata pentru implementarea completă.
Înainte de a rula programul, verificați de două ori dacă adresa accelerometrului este 0x19. Deschideți fereastra terminalului și instalați câteva instrumente utile cu această comandă:
sudo apt-get install -y i2c-tools
Apoi rulați programul i2cdetect:
i2cdetect -y 1
Veți vedea un tabel cu adrese I2C afișate așa cum se arată în imaginea de mai sus. Presupunând că acesta este singurul dispozitiv I2C conectat, numărul pe care îl vedeți (în acest caz: 19) este adresa accelerometrului! Dacă vedeți un număr diferit, luați notă și modificați în program (variabilă addr).
Pasul 11: Prezentare rapidă a programului
Programul citește accelerația x, y și z, calculează forța g și apoi salvează datele în două fișiere (în același folder cu codul programului), după caz:
- AllSensorData.txt - oferă un timestamp urmat de forța g în axele x, y și z.
- AlertData.txt - la fel ca mai sus, dar numai pentru citirile care sunt peste pragurile noastre de siguranță (prag absolut de 9G sau 4G pentru mai mult de 3 secunde).
Forțele G peste pragurile noastre de siguranță vor aprinde, de asemenea, LED-ul nostru de alertă și îl vor menține aprins până când vom reporni programul. Opriți programul tastând „CTRL + c” (întrerupere tastatură) în terminalul de comandă.
Fotografia de mai sus prezintă ambele fișiere de date create în timpul testării.
Pasul 12: Testați sistemul
Deschideți fereastra terminalului, navigați la folderul în care ați salvat codul programului folosind comanda cd.
calea cd / către / folder
Rulați programul utilizând privilegii de root:
sudo python NameOfFile.py
Verificați dacă valorile de accelerație în direcția x, y și z se imprimă la fereastra terminalului, sunt rezonabile și porniți lumina LED dacă forța g este peste pragurile noastre.
- Pentru a testa, rotiți accelerometrul astfel încât fiecare ax să fie îndreptat spre pământ și verificați dacă valorile măsurate sunt fie 1, fie -1 (corespunde accelerației datorate gravitației).
- Agitați accelerometrul pentru a vă asigura că citirile cresc (semnul indică direcția axei, ne interesează cel mai mult amploarea citirii).
Pasul 13: securizați conexiunile electrice și instalați-l
Odată ce totul funcționează corect, să ne asigurăm că monitorul forței de impact poate rezista efectiv la impact!
- Folosiți tub termocontractabil și / sau acoperiți conexiunile electrice pentru accelerometru și LED în epoxidic.
-
Pentru instalații super durabile, permanente, luați în considerare acoperirea întregului shebang în epoxidic: Pi Zero, LED-ul și accelerometrul (dar NU conectorii de cablu Pi sau cardul SD).
Avertizare! Puteți să accesați în continuare Pi și să faceți toate lucrurile legate de computer, dar un strat complet de epoxid va împiedica utilizarea pinilor GPIO pentru proiecte viitoare. Alternativ, puteți face sau achiziționa o carcasă personalizată pentru Pi Zero, deși verificați durabilitatea
Asigurați-vă de o cască, de persoana dvs. sau de un mod de transport cum ar fi skateboard-ul, bicicleta sau pisica *!
Testați complet dacă Pi-ul este fixat în siguranță sau pinii GPIO se pot desface, provocând blocarea programului.
* Notă: Am intenționat inițial să scriu „mașină”, dar mi-am dat seama că un monitor de forță de impact pentru o pisică ar putea furniza și câteva date interesante (cu acordul pisicuței, desigur).
Pasul 14: încorporarea circuitului într-o cască
Există câteva metode de încorporare a circuitului într-o cască. Iată abordarea mea față de instalarea unei căști:
- Dacă nu ați făcut-o deja, conectați bateria la Pi (cu bateria oprită). Fixați accelerometrul pe partea din spate a dispozitivului Pi cu izolație neconductivă între ele (cum ar fi folie cu bule sau spumă subțire de ambalare).
- Măsurați dimensiunile combinației Pi Zero, accelerometru, LED și conector baterie. Adăugați 10% de ambele părți.
- Desenați o decupare pentru proiect pe o parte a căștii, cu conectorul bateriei orientat spre partea superioară a căștii. Decupați căptușeala din cască lăsând câțiva milimetri (~ 1/8 in.).
- Așezați senzorul, Pi și LED-ul în decupaj. Tăiați bucăți din căptușeala excesivă a căștii sau folosiți spumă de ambalare pentru a izola, a proteja și a ține electronica în poziție.
- Măsurați dimensiunile bateriei, adăugați 10% și urmați același decupaj pentru baterie. Introduceți bateria în buzunar.
- Repetați tehnica de izolare a bateriei de pe cealaltă parte a căștii.
- Țineți căptușeala căștii cu bandă (capul vă va menține la loc când îl purtați).
Pasul 15: Implementați
Porniți acumulatorul!
Acum vă puteți conecta de la distanță la Pi prin SSH sau desktop la distanță și puteți rula programul prin terminal. Odată ce programul rulează, acesta începe să înregistreze date.
Când vă deconectați de la WiFi-ul de acasă, conexiunea SSH se va întrerupe, dar programul ar trebui să înregistreze în continuare datele. Luați în considerare conectarea dispozitivului Pi la hotspot-ul WiFi al smartphone-ului sau pur și simplu conectați-vă din nou și luați datele când ajungeți acasă.
Pentru a accesa datele, conectați-vă de la distanță la Pi și citiți fișierele text. Programul actual va adăuga întotdeauna date la fișierele existente - dacă doriți să ștergeți date (cum ar fi de la testare), ștergeți fișierul text (prin desktop sau utilizați comanda rm din terminal) sau creați un nou nume de fișier în program cod (în Parametrii utilizator).
Dacă LED-ul este aprins, repornirea programului îl va opri.
Acum mergeți mai departe, distrați-vă în viață și verificați datele din când în când, dacă se întâmplă să vă dați cu ceva. Sperăm că este o mică umflătură, dar cel puțin veți ști!
Pasul 16: Adăugarea mai multor caracteristici
Căutați îmbunătățiri ale monitorului forței de impact? Nu se află în sfera tutorialului, dar încercați să consultați lista de mai jos pentru idei!
Faceți o analiză a datelor dvs. de forță g în Python!
Pi Zero are capabilități Bluetooth și WiFi - scrieți o aplicație pentru a trimite datele accelerometrului pe smartphone! Pentru a începe, iată un tutorial pentru un monitor Pi Twitter.
Adăugați alți senzori, cum ar fi un senzor de temperatură sau un microfon *!
Happy Building
* Notă: Pentru a auzi sunetele care se asociază cu accelerația!: D
Recomandat:
Joc „Impact spațial” cu senzor giroscopic și LCD Nokia 5110: 3 pași
Joc „Impact spațial” cu senzor giroscopic și LCD Nokia 5110: După ce a murit Tamagotchi (ultimul proiect), am început să caut o nouă modalitate de a-mi pierde timpul. Am decis să programez clasicul joc „Space Impact” pe Arduino. Pentru a face jocul un pic mai interesant și mai distractiv, am folosit un senzor giroscop pe care l-am avut
Forța de impact asupra călcâiului și piciorului unui alergător în timpul alergării: 6 pași
Forța de impact asupra călcâiului și piciorului unui alergător în timpul alergării: Pentru proiectul meu, am vrut să testez cantitatea de forță la care este expus călcâiul și piciorul unui alergător și dacă pantofii noi de alergare chiar reduc forța. Un accelerometru este un dispozitiv care detectează accelerația în axele X, Y și Z. Accelerarea este măsurată
Recorder de impact pentru vehicule: 18 pași (cu imagini)
Recorder de impact pentru vehicule: Impact Recorder este conceput pentru a înregistra impactul suportat de vehicul în timp ce conduceți sau staționează. Impacturile sunt stocate în baza de date sub formă de citiri, precum și video / imagine. Utilizatorul la distanță cu impact poate fi verificat în timp real, iar u la distanță
Sistemul de impact al capului Edison: 6 pași
Sistemul de impact al capului Edison: Scopul acestui proiect a fost de a crea un dispozitiv care să monitorizeze intensitatea impactului capului și să detecteze impacturile care au o mare probabilitate de a produce o contuzie. În fotbalul pentru tineret, acest dispozitiv medical poate fi un set de ochi suplimentar
Rezistor DIY Sensitive Force (FSR): 5 pași (cu imagini)
DIY Resistor Sensitive Resistor (FSR): Faceți un rezistor sensibil la forță (un senzor de presiune) cu piese de schimb în loc să cheltuiți 5 $ - 20 $ fiecare