Cuprins:

Raspberry Pi Impact Force Monitor !: 16 pași (cu imagini)
Raspberry Pi Impact Force Monitor !: 16 pași (cu imagini)

Video: Raspberry Pi Impact Force Monitor !: 16 pași (cu imagini)

Video: Raspberry Pi Impact Force Monitor !: 16 pași (cu imagini)
Video: IT WORKED! - 16 Hard Drives on the Raspberry Pi (Pi Day Special) 2024, Noiembrie
Anonim
Image
Image
Lectură sugerată
Lectură sugerată

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

Materiale
Materiale
Materiale
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

Configurați Pi Zero W
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

Activați WiFi și I2C
Activați WiFi și I2C
Activați WiFi și I2C
Activați WiFi și I2C
Activați WiFi și I2C
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ță

Reporniți Pi și conectați-vă de la distanță
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

Construiți-l: electronice!
Construiți-l: electronice!
Construiți-l: electronice!
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

Conectați accelerometrul la GPIO-ul lui Pi
Conectați accelerometrul la GPIO-ul lui Pi
Conectați accelerometrul la GPIO-ul lui Pi
Conectați accelerometrul la GPIO-ul lui Pi
Conectați accelerometrul la GPIO-ul lui Pi
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ă

Adăugați un LED de alertă!
Adăugați un LED de alertă!
Adăugați un LED de alertă!
Adăugați un LED de alertă!
Adăugați un LED de alertă!
Adăugați un LED de alertă!
Adăugați un LED de alertă!
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

Programează-l!
Programează-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

Prezentare rapidă a programului
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

Testați sistemul!
Testați sistemul!
Testați sistemul!
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

Securizați conexiunile electrice și instalați-l!
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ă

Încorporarea circuitului într-o cască
Încorporarea circuitului într-o cască
Încorporarea circuitului într-o cască
Încorporarea circuitului într-o cască
Încorporarea circuitului într-o cască
Î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

Distribuiți!
Distribuiți!
Distribuiți!
Distribuiț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

Adăugarea mai multor caracteristici
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: