Tartalomjegyzék:

Raspberry Pi Impact Force Monitor!: 16 lépés (képekkel)
Raspberry Pi Impact Force Monitor!: 16 lépés (képekkel)

Videó: Raspberry Pi Impact Force Monitor!: 16 lépés (képekkel)

Videó: Raspberry Pi Impact Force Monitor!: 16 lépés (képekkel)
Videó: Leap Motion SDK 2024, Július
Anonim
Image
Image
Javasolt olvasmány
Javasolt olvasmány

Mekkora hatást képes elviselni az emberi test? Legyen szó futballról, sziklamászásról vagy kerékpáros balesetről, hihetetlenül fontos tudni, hogy mikor kell azonnali orvosi segítséget kérni az ütközés után, különösen, ha nincsenek nyilvánvaló trauma jelei. Ez az oktatóanyag megtanítja, hogyan építsd fel saját ütéserő monitorodat!

Olvasási idő: ~ 15 perc

Építési idő: ~ 60-90 perc

Ez a nyílt forráskódú projekt Raspberry Pi Zero W-t és LIS331 gyorsulásmérőt használ a potenciálisan veszélyes G-erők figyelésére és figyelmeztetésére. Természetesen bátran módosítsa és alakítsa át a rendszert a különböző polgári tudományos igényeknek megfelelően.

Megjegyzés: Építsen szórakoztató dolgokat az Impact Force Monitor segítségével! Azonban ne használja a professzionális orvosi tanácsadás és diagnózis helyett. Ha úgy érzi, hogy komoly esést szenvedett, keresse fel szakképzett és engedéllyel rendelkező szakembert a megfelelő kezelés érdekében.

1. lépés: Javasolt olvasmány

Annak érdekében, hogy ez az oktatóanyag rövid és édes maradjon (ja, amennyire csak lehetséges), feltételezem, hogy egy funkcionális Pi Zero W -vel kezdesz. Segítségre van szüksége? Nincs mit! Itt egy teljes beállítási útmutató.

Távolról (más néven vezeték nélkül) is csatlakozni fogunk a Pi -hez. A folyamat alaposabb áttekintéséhez nézze meg ezt az oktatóanyagot.

** Elakadt vagy szeretne többet megtudni? Íme néhány hasznos forrás: **

1. Kiváló "Kezdő lépések" útmutató a Pi -hez.

2. Teljes bekötési útmutató a LIS331 gyorsulásmérő kitörő táblához.

3. Bővebben a gyorsulásmérőkről!

4. A Raspberry Pi GPIO csapok áttekintése.

5. Az SPI és I2C soros buszok használata a Pi -n.

6. LIS331 Adatlap

2. lépés: Anyagok

Anyagok
Anyagok
Anyagok
Anyagok
  • Raspberry Pi Zero W Basic Kit

    • Ez a készlet a következőket tartalmazza: SD kártya NOOBS operációs rendszerrel; USB OTG kábel (microUSB - USB hüvely); Mini HDMI -HDMI; MicroUSB tápegység (~ 5V)
    • Szintén ajánlott: USB hub
  • Raspberry Pi 3 fejléc
  • LIS331 gyorsulásmérő kitörő tábla
  • Akkumulátor MicroUSB csatlakozóval
  • 5 mm -es piros LED
  • 1k ellenállás
  • 6 hüvelykes zsugorcső vagy elektromos szalag
  • Fejlécek a gyorsulásmérőhöz (4 - 8) és a LED -hez (2)
  • Női-női áthidaló vezetékek (6)

Eszközök

  • Forrasztópáka és tartozékai
  • Epoxi (vagy más tartós, nem vezető folyékony ragasztó)
  • Valószínűleg olló is:)

3. lépés: De várj! Mi az ütközési erő?

Szerencsére az "ütközési erő" kifejezés meglehetősen egyszerű: az ütés ereje. A legtöbb dologhoz hasonlóan ennek mérése is pontosabb meghatározást igényel. Az ütközési erő egyenlete a következő:

F = KE/d

ahol F az ütközési erő, KE a mozgási energia (mozgási energia), és d az ütési távolság, vagy az, hogy a tárgy mennyire ropog. Ebből az egyenletből két kulcsfontosságú megállapítás van:

1. Az ütközési erő közvetlenül arányos a mozgási energiával, vagyis az ütközési erő növekszik, ha a mozgási energia növekszik.

2. Az ütközési erő fordítottan arányos az ütközési távolsággal, vagyis az ütközési erő csökken, ha az ütközési távolság nő. (Ezért vannak légzsákjaink: az ütközés távolságának növelése érdekében.)

Az erőt jellemzően Newtonban (N) mérik, de az ütközési erő egy "G-erő", egy g többszörösében kifejezett szám vagy a föld gravitációs gyorsulása (9,8 m/s^2). Amikor G-erőegységeket használunk, egy objektum gyorsulását mérjük a föld felé eső szabad eséshez képest.

Technikailag a g gyorsulás, nem erő, de hasznos, ha ütközésekről beszélünk, mert a gyorsulás* károsítja az emberi testet.

Ebben a projektben G-force egységeket használunk annak megállapítására, hogy egy becsapódás potenciálisan veszélyes-e és orvosi ellátást érdemel-e. A kutatások azt találták, hogy a 9G feletti g-erők a legtöbb ember számára végzetesek lehetnek (speciális képzés nélkül), és a 4-6G veszélyes lehet, ha néhány másodpercnél tovább tart.

Ennek ismeretében beprogramozhatjuk ütéserő-figyelőnket, hogy figyelmeztessen minket, ha gyorsulásmérőnk ezen küszöbértékek bármelyikét meghaladó G-erőt mér. Hurrá, tudomány!

További információért olvassa el a Wikipédiáról az ütközési erőt és a g-erőt!

A gyorsulás a sebesség és/vagy az irány megváltoztatása

4. lépés: A Pi Zero W konfigurálása

Konfigurálja a Pi Zero W -t
Konfigurálja a Pi Zero W -t

Gyűjtse össze Raspberry Pi Zero készülékét és perifériáit, hogy a Pi fejetlenné váljon!

  • Csatlakoztassa a Pi -t egy monitorhoz és a hozzá tartozó perifériákhoz (billentyűzet, egér), csatlakoztassa a tápegységet, és jelentkezzen be.
  • Frissítse a szoftvert, hogy a Pi gyors és biztonságos maradjon. Nyissa meg a terminál ablakát, és írja be ezeket a parancsokat:

    Írja be és írja be:

sudo apt-get update

Írja be és írja be:

sudo apt-get upgrade

Visszaállítás:

sudo shutdown -r most

5. lépés: Engedélyezze a WiFi és az I2C használatát

A WiFi és az I2C engedélyezése
A WiFi és az I2C engedélyezése
A WiFi és az I2C engedélyezése
A WiFi és az I2C engedélyezése
A WiFi és az I2C engedélyezése
A WiFi és az I2C engedélyezése
  • Kattintson a WiFi ikonra az asztal jobb felső sarkában, és csatlakozzon a WiFi hálózathoz.
  • A terminálban írja be ezt a parancsot a Pi szoftverkonfigurációs eszközének megjelenítéséhez:

sudo raspi-config

  • Válassza az „Interfészbeállítások”, majd az „SSH” lehetőséget, majd válassza az alsó „Igen” lehetőséget az engedélyezéshez.
  • Menjen vissza az „Interfészbeállítások”, majd az „I2C” menüponthoz, és válassza az „Igen” lehetőséget az engedélyezéshez.
  • Telepítse a terminálon a távoli asztali csatlakozási szoftvert:

sudo apt-get install xrdp

  • Írja be az „Y” -t (igen) a billentyűzeten mindkét utasításhoz.
  • Keresse meg a Pi IP -címét, ha az egérmutatót a WiFi -kapcsolat fölé helyezi (esetleg le is írja).
  • Változtassa meg a Pi jelszavát a passwd paranccsal.

6. lépés: Indítsa újra a Pi -t, és jelentkezzen be távolról

Indítsa újra a Pi -t, és jelentkezzen be távolról
Indítsa újra a Pi -t, és jelentkezzen be távolról

Most már elhagyhatjuk a HDMI -t és a perifériákat, woohoo!

  • Állítson be egy távoli asztali kapcsolatot.

    • Számítógépen nyissa meg a Távoli asztali kapcsolatot (vagy a PuTTY -t, ha jól érzi magát).
    • Mac/Linux esetén telepítheti ezt a programot, vagy használhat egy VNC programot.
  • Adja meg a Pi IP -címét, majd kattintson a „Csatlakozás” gombra (figyelmen kívül hagyja az ismeretlen eszközre vonatkozó figyelmeztetéseket).
  • Jelentkezzen be a Pi -be hitelesítő adataival, és indulunk!

7. lépés: Építsd meg: Elektronika

Építsd fel: Elektronika!
Építsd fel: Elektronika!
Építsd fel: Elektronika!
Építsd fel: Elektronika!

A fenti két fotó a projekt elektromos rajzát és a Pi Zero Pinout -ot mutatja. Mindkettőre szükségünk lesz a hardverkapcsolatok megoldásához.

Megjegyzés: A sematikus LIS331 töréspanel egy régebbi verzió - használja a tűs címkéket útmutatásként

8. lépés: Csatlakoztassa a gyorsulásmérőt a Pi GPIO -jához

Csatlakoztassa a gyorsulásmérőt a Pi GPIO -jához
Csatlakoztassa a gyorsulásmérőt a Pi GPIO -jához
Csatlakoztassa a gyorsulásmérőt a Pi GPIO -jához
Csatlakoztassa a gyorsulásmérőt a Pi GPIO -jához
Csatlakoztassa a gyorsulásmérőt a Pi GPIO -jához
Csatlakoztassa a gyorsulásmérőt a Pi GPIO -jához
  • Forrasztja és óvatosan távolítsa el a fluxusmaradványokat a gyorsulásmérőről és a Pi GPIO fejléceiről.
  • Ezután csatlakoztassa az áthidaló vezetékeket a LIS331 töréspanel és a Pi közé a következő csapok közé:

LIS331 Breakout Board Raspberry Pi GPIO Pin

GND GPIO 9 (GND)

VCC GPIO 1 (3.3V)

SDA GPIO 3 (SDA)

SCL GPIO 5 (SCL)

Annak érdekében, hogy megkönnyítse az érzékelő csatlakoztatását a Pi Zero -hoz, egyéni adaptert készítettek egy női fej- és áthidaló vezetékek használatával. A csatlakozások tesztelése után hőzsugorodást adtak hozzá

9. lépés: Adjon hozzá egy riasztási LED -et

Adjon hozzá riasztási LED -et!
Adjon hozzá riasztási LED -et!
Adjon hozzá riasztási LED -et!
Adjon hozzá riasztási LED -et!
Adjon hozzá riasztási LED -et!
Adjon hozzá riasztási LED -et!
Adjon hozzá riasztási LED -et!
Adjon hozzá riasztási LED -et!
  • Forraszoljon egy áramkorlátozó ellenállást a negatív LED -lábhoz (rövidebb láb), és tegyen zsugorfóliát (vagy elektromos szalagot) a szigeteléshez.
  • Használjon két áthidaló kábelt vagy fejlécet, hogy csatlakoztassa a pozitív LED -lábat a GPIO26 -hoz, az ellenállást pedig a GND -hez (37, illetve 39 fejléc).
  • Csatlakoztassa az akkumulátort a Pi tápellátásához a beállítás befejezéséhez!

10. lépés: Programozza be

Programozd be!
Programozd be!

A projekt Python-kódja nyílt forráskódú! Itt egy link a GitHub adattárhoz.

A programozást kezdőknek:

Olvassa el a programkódot és a megjegyzéseket. A könnyen módosítható dolgok a „Felhasználói paraméterek” részben találhatók

Kényelmesebb embereknek a technikai beállításokkal:

Ez a program inicializálja a LIS331 gyorsulásmérőt az alapértelmezett beállításokkal, beleértve a normál energiaellátási módot és az 50 Hz -es adatátviteli sebességet. Olvassa el a LIS331 adatlapját, és szükség szerint módosítsa az inicializálási beállításokat

Összes

  • A projektben használt maximális gyorsulási skála 24G, mivel az ütközési erő gyorsan megnő!
  • Javasolt megjegyzéseket fűzni a gyorsítási nyomtatási utasításokhoz a fő funkcióban, ha készen áll a teljes üzembe helyezésre.

A program futtatása előtt ellenőrizze, hogy a gyorsulásmérő címe 0x19. Nyissa meg a terminál ablakát, és telepítsen néhány hasznos eszközt ezzel a paranccsal:

sudo apt-get install -y i2c-tools

Ezután futtassa az i2cdetect programot:

i2cdetect -y 1

Látni fogja az I2C címek táblázatát a fenti képen látható módon. Feltételezve, hogy ez az egyetlen csatlakoztatott I2C eszköz, a szám, amit lát (ebben az esetben: 19) a gyorsulásmérő címe! Ha más számot lát, vegye figyelembe és módosítsa a programban (addr változó).

11. lépés: A program gyors áttekintése

A program gyors áttekintése
A program gyors áttekintése

A program beolvassa az x, y és z gyorsítást, kiszámítja a g-erőt, majd az adatokat két fájlba menti (a programkóddal azonos mappába).

  • AllSensorData.txt-megad egy időbélyeget, amelyet a g-erő követ az x, y és z tengelyekben.
  • AlertData.txt - ugyanaz, mint fent, de csak azoknál az értékeknél, amelyek meghaladják a biztonsági küszöböt (9G vagy 4G abszolút küszöbérték több mint 3 másodpercig).

A biztonsági küszöböt meghaladó G-erők bekapcsolják a figyelmeztető LED-eket, és folyamatosan világítanak, amíg újra nem indítjuk a programot. Állítsa le a programot a „CTRL+c” (billentyűzet megszakítás) begépelésével a parancssorban.

A fenti fotó a tesztelés során létrehozott mindkét adatfájlt mutatja.

12. lépés: Tesztelje a rendszert

Tesztelje a rendszert!
Tesztelje a rendszert!
Tesztelje a rendszert!
Tesztelje a rendszert!

Nyissa meg a terminál ablakot, keresse meg azt a mappát, ahová a programkódot mentette a cd paranccsal.

cd útvonal/mappába

Futtassa a programot root jogosultságokkal:

sudo python NameOfFile.py

Ellenőrizze, hogy az x, y és z irányú gyorsulási értékek a terminál ablakába nyomtatnak-e, ésszerűek, és kapcsolja be a LED-lámpát, ha a g-erő meghaladja a küszöbértékünket.

  • A teszteléshez forgassa el a gyorsulásmérőt úgy, hogy minden tengely a föld felé mutasson, és ellenőrizze, hogy a mért értékek 1 vagy -1 (a gravitáció miatti gyorsulásnak felelnek meg).
  • Rázza fel a gyorsulásmérőt, hogy megbizonyosodjon arról, hogy az értékek növekednek -e (a jel a tengely irányát jelzi, a leolvasás nagysága érdekel minket leginkább).

13. lépés: Biztosítsa az elektromos csatlakozásokat és telepítse

Biztonságos elektromos csatlakozások és telepítse!
Biztonságos elektromos csatlakozások és telepítse!

Ha minden megfelelően működik, győződjünk meg arról, hogy az ütközési erő monitor valóban képes ellenállni az ütésnek!

  • Használjon zsugorcsövet és/vagy vonja be a gyorsulásmérő és a LED elektromos csatlakozóit epoxigyanta formájában.
  • A szuper tartós, állandó telepítéseknél fontolja meg az egész burkolat epoxi bevonatát: a Pi Zero, a LED és a gyorsulásmérő (de NEM a Pi kábelcsatlakozók vagy az SD kártya).

    Figyelem! Továbbra is hozzáférhet a Pi -hez, és elvégezheti az összes számítógépes munkát, de egy teljes réteg epoxi megakadályozza a GPIO csapok használatát a jövőbeli projektekben. Alternatív megoldásként egyedi tokot is készíthet vagy vásárolhat a Pi Zero számára, bár ellenőrizze a tartósságát

Rögzítse sisakhoz, személyéhez vagy olyan közlekedési módhoz, mint a gördeszka, kerékpár vagy macska*!

Teljesen ellenőrizze, hogy a Pi biztonságosan rögzítve van -e, vagy a GPIO csapok meglazulhatnak, ami a program összeomlását okozza.

*Megjegyzés: Eredetileg "autó" -t akartam írni, de úgy gondoltam, hogy egy macska ütközési erő monitorja érdekes adatokat is szolgáltathat (természetesen cica beleegyezésével).

14. lépés: Az áramkör beágyazása sisakba

Az áramkör beágyazása sisakba
Az áramkör beágyazása sisakba
Az áramkör beágyazása sisakba
Az áramkör beágyazása sisakba
Az áramkör beágyazása sisakba
Az áramkör beágyazása sisakba

Van néhány módszer az áramkör sisakba ágyazására. Íme a megközelítésem a sisak beszereléséhez:

  • Ha még nem tette meg, csatlakoztassa az akkumulátort a Pi -hez (kikapcsolt akkumulátorral). Rögzítse a gyorsulásmérőt a Pi hátuljához nem vezető szigeteléssel (például buborékfóliával vagy vékony csomagolóhabbal).
  • Mérje meg a Pi Zero, a gyorsulásmérő, a LED és az akkumulátorcsatlakozó kombináció méreteit. Adjon hozzá 10% -ot mindkét oldalon.
  • Rajzoljon kivágást a projekthez a sisak egyik oldalán, az akkumulátor csatlakozójával a sisak teteje felé. Vágja ki a párnát a sisakban, hagyva néhány millimétert (~ 1/8 hüvelyk).
  • Helyezze az érzékelőt, a Pi -t és a LED -et a kivágásba. Vágja le a felesleges sisakpárna darabjait, vagy használjon csomagolóhabot az elektronika szigetelésére, védelmére és a helyén tartására.
  • Mérje meg az akkumulátor méreteit, adjon hozzá 10%-ot, és kövesse ugyanazt a kivágást. Helyezze be az akkumulátort a zsebébe.
  • Ismételje meg az akkumulátor szigetelési technikáját a sisak másik oldalán.
  • Tartsa a sisakpárnát a helyén ragasztószalaggal (a fejét a helyén tartja, amikor viseli).

15. lépés: Telepítse

Telepítés!
Telepítés!
Telepítés!
Telepítés!

Kapcsolja be az akkumulátort!

Most távolról bejelentkezhet a Pi -be SSH -n vagy távoli asztalon keresztül, és futtathatja a programot a terminálon keresztül. A program futása után elkezdi az adatok rögzítését.

Amikor leválasztja az otthoni WiFi -t, az SSH -kapcsolat megszakad, de a programnak továbbra is naplóznia kell az adatokat. Fontolja meg a Pi csatlakoztatását az okostelefon hotspot WiFi -jéhez, vagy csak jelentkezzen be újra, és hazatérve kapja meg az adatokat.

Az adatok eléréséhez távolról jelentkezzen be a Pi -be, és olvassa el a szöveges fájlokat. Az aktuális program mindig hozzáfűzi az adatokat a meglévő fájlokhoz - ha törölni szeretne adatokat (például a tesztelésből), törölje a szöveges fájlt (az asztalon keresztül vagy használja a terminál rm parancsát), vagy hozzon létre egy új fájlnevet a programban kódot (a felhasználói paraméterekben).

Ha a LED világít, a program újraindítása kikapcsol.

Most menjen tovább, érezze jól magát az életben, és időnként ellenőrizze az adatokat, ha véletlenül beleütközik valamibe. Remélhetőleg ez egy kis bökkenő, de legalább tudni fogja!

16. lépés: További funkciók hozzáadása

További funkciók hozzáadása
További funkciók hozzáadása

Fejlesztéseket keres az ütéserő -monitoron? Ez kívül esik az oktatóanyag keretein, de ötletekért nézze meg az alábbi listát!

Végezzen némi elemzést a g-force adatairól a Pythonban!

A Pi Zero rendelkezik Bluetooth és WiFi képességekkel - írjon egy alkalmazást, amely elküldi a gyorsulásmérő adatait az okostelefonjára! Az első lépésekhez itt egy oktatóanyag a Pi Twitter Monitorhoz.

Adjon hozzá más érzékelőket, például hőmérséklet -érzékelőt vagy mikrofont*!

Boldog Építést

*Megjegyzés: Hallgassa meg a gyorsuláshoz kapcsolódó hangokat!: D

Ajánlott: