Isi kandungan:

Raspberry Pi Impact Force Monitor !: 16 Langkah (dengan Gambar)
Raspberry Pi Impact Force Monitor !: 16 Langkah (dengan Gambar)

Video: Raspberry Pi Impact Force Monitor !: 16 Langkah (dengan Gambar)

Video: Raspberry Pi Impact Force Monitor !: 16 Langkah (dengan Gambar)
Video: Adjusting Raspberry Pi Resolution 2024, Julai
Anonim
Image
Image
Bacaan yang dicadangkan
Bacaan yang dicadangkan

Berapa banyak kesan yang dapat ditangani oleh tubuh manusia? Sama ada sukan bola sepak, panjat tebing, atau kemalangan basikal, mengetahui bila hendak mendapatkan rawatan perubatan segera setelah perlanggaran sangat penting, terutamanya jika tidak ada tanda-tanda trauma yang jelas. Tutorial ini akan mengajar anda bagaimana membina monitor kekuatan impak anda sendiri!

Masa Baca: ~ 15 min

Masa Binaan: ~ 60-90 min

Projek sumber terbuka ini menggunakan Raspberry Pi Zero W dan akselerometer LIS331 untuk memantau dan memberi amaran kepada pengguna mengenai kekuatan G yang berpotensi berbahaya. Sudah tentu, jangan ragu untuk mengubah dan menyesuaikan sistem yang sesuai dengan keperluan sains warganegara anda.

Nota: Bina barang yang menyeronokkan dengan Impact Force Monitor! Namun, jangan menggunakannya sebagai pengganti nasihat dan diagnosis perubatan profesional. Sekiranya anda merasa mengalami kejatuhan serius, sila kunjungi profesional yang berkelayakan dan berlesen untuk mendapatkan rawatan yang betul.

Langkah 1: Bacaan yang dicadangkan

Untuk memastikan tutorial ini pendek dan tidak manis (er, baiklah, seberapa banyak yang mungkin), saya mengandaikan anda memulakan dengan Pi Zero W. yang berfungsi. Perlu bantuan? Tiada masalah! Inilah tutorial persediaan penuh.

Kami juga akan menyambung ke Pi dari jauh (aka tanpa wayar). Untuk gambaran keseluruhan yang lebih mendalam mengenai proses ini, lihat tutorial ini.

** Terjebak atau ingin mengetahui lebih lanjut? Berikut adalah beberapa sumber yang berguna: **

1. Panduan "Bermula" yang sangat baik untuk Pi.

2. Panduan penyambungan penuh untuk papan pemecah pecutan LIS331.

3. Lebih lanjut mengenai pecutan!

4. Gambaran keseluruhan pin GPIO Raspberry Pi.

5. Menggunakan bas Serial SPI dan I2C pada Pi.

6. Lembaran Data LIS331

Langkah 2: Bahan

Bahan
Bahan
Bahan
Bahan
  • Kit Asas Raspberry Pi Zero W

    • Kit ini merangkumi yang berikut: Kad SD dengan Sistem Operasi NOOBS; Kabel USB OTG (microUSB ke USB wanita); Mini HDMI ke HDMI; Bekalan kuasa MicroUSB (~ 5V)
    • Juga disyorkan: hab USB
  • Pin Header Raspberry Pi 3
  • LIS331 Accelerometer Breakout Board

  • Pek Bateri dengan penyambung MicroUSB
  • LED Merah 5mm
  • Perintang 1k
  • 6 "Tiub pengecutan panas atau pita elektrik
  • Pin header untuk pecutan (4 - 8) dan LED (2)
  • Wayar pelompat wanita-ke-wanita (6)

Alat

  • Besi solder & aksesori
  • Epoxy (atau pelekat cecair tidak konduktif kekal lain)
  • Mungkin juga gunting:)

Langkah 3: Tetapi Tunggu! Apakah Kekuatan Impak?

Nasib baik istilah "daya impak" cukup mudah: jumlah daya dalam hentaman. Seperti kebanyakan perkara, mengukurnya memerlukan definisi yang lebih tepat. Persamaan untuk daya impak adalah:

F = KE / d

di mana F adalah daya hentaman, KE adalah tenaga kinetik (tenaga gerakan), dan d adalah jarak hentakan, atau berapa banyak objek itu pecah. Terdapat dua keputusan utama dari persamaan ini:

1. Daya hentaman berkadar langsung dengan tenaga kinetik, yang bermaksud bahawa daya hentak meningkat sekiranya tenaga kinetik meningkat.

2. Daya hentaman berkadar songsang dengan jarak hentakan, yang bermaksud bahawa daya hentakan berkurang jika jarak hentakan meningkat. (Inilah sebabnya mengapa kita mempunyai beg udara: untuk meningkatkan jarak kesan kita.)

Gaya biasanya diukur dalam Newtons (N), tetapi daya impak dapat dibahas dalam istilah "G-Force", angka yang dinyatakan sebagai gandaan g, atau pecutan graviti bumi (9,8 m / s ^ 2). Apabila kita menggunakan unit G-force, kita mengukur pecutan objek relatif terhadap jatuh bebas ke bumi.

Secara teknikal, g adalah pecutan, bukan kekuatan, tetapi berguna ketika berbicara mengenai perlanggaran kerana pecutan * adalah apa yang merosakkan tubuh manusia.

Untuk projek ini, kami akan menggunakan unit G-force untuk menentukan apakah kesannya berpotensi berbahaya dan memerlukan perhatian perubatan. Penyelidikan mendapati bahawa kekuatan g di atas 9G boleh membawa maut kepada kebanyakan manusia (tanpa latihan khas), dan 4-6G boleh membahayakan jika bertahan selama lebih dari beberapa saat.

Mengetahui hal ini, kami dapat memprogram monitor kekuatan impak kami untuk memberi tahu kami jika akselerometer mengukur kekuatan G di atas salah satu dari ambang ini. Hore, sains!

Untuk maklumat lebih lanjut, baca mengenai kekuatan impak dan kekuatan g di Wikipedia!

Pecutan adalah perubahan kelajuan dan / atau arah

Langkah 4: Konfigurasikan Pi Zero W

Konfigurasikan Pi Zero W
Konfigurasikan Pi Zero W

Kumpulkan Raspberry Pi Zero dan periferal anda untuk mengkonfigurasi Pi agar tidak berkepala!

  • Sambungkan Pi ke monitor dan periferal yang berkaitan (papan kekunci, tetikus), pasangkan bekalan kuasa, dan log masuk.
  • Kemas kini perisian untuk memastikan Pi anda pantas & selamat. Buka tetingkap terminal dan ketik arahan ini:

    Taip dan masukkan:

sudo apt-get kemas kini

Taip dan masukkan:

sudo apt-get peningkatan

Tetapkan semula:

penutupan sudo -r sekarang

Langkah 5: Dayakan WiFi & I2C

Dayakan WiFi & I2C
Dayakan WiFi & I2C
Dayakan WiFi & I2C
Dayakan WiFi & I2C
Dayakan WiFi & I2C
Dayakan WiFi & I2C
  • Klik ikon WiFi di sudut kanan atas desktop dan sambungkan ke rangkaian WiFi anda.
  • Di terminal ketik perintah ini untuk memunculkan Alat Konfigurasi Perisian Pi:

sudo raspi-config

  • Pilih "Pilihan Antaramuka", kemudian "SSH", dan pilih "Ya" di bahagian bawah untuk mengaktifkan.
  • Kembali ke "Pilihan Antaramuka", kemudian "I2C", dan pilih "Ya" untuk mengaktifkan.
  • Di terminal, pasang perisian sambungan desktop jarak jauh:

sudo apt-get install xrdp

  • Ketik ‘Y’ (ya) pada papan kekunci anda untuk kedua-dua arahan.
  • Cari alamat IP Pi dengan menuding pada sambungan WiFi (anda mungkin juga ingin menuliskannya).
  • Tukar kata laluan Pi dengan arahan passwd.

Langkah 6: Mulakan semula Pi dan Log masuk dari jauh

Mulakan semula Pi dan Log masuk dari jauh
Mulakan semula Pi dan Log masuk dari jauh

Kita sekarang boleh membuang HDMI dan periferalnya, woohoo!

  • Siapkan sambungan desktop jauh.

    • Pada PC, buka Sambungan Desktop Jauh (atau PuTTY jika anda selesa dengannya).
    • Untuk Mac / Linux, anda boleh memasang program ini atau menggunakan program VNC.
  • Masukkan IP untuk Pi dan klik "Sambung" (Abaikan amaran mengenai peranti yang tidak diketahui).
  • Log masuk ke Pi menggunakan bukti kelayakan anda dan kami akan pergi!

Langkah 7: Bangunkan: Elektronik

Bangunkan: Elektronik!
Bangunkan: Elektronik!
Bangunkan: Elektronik!
Bangunkan: Elektronik!

Kedua-dua gambar di atas menunjukkan skematik elektrik untuk projek ini dan Pi Zero Pinout. Kami memerlukan kedua-duanya untuk menangani sambungan perkakasan.

Catatan: Papan pelarian LIS331 dalam skema adalah versi yang lebih lama - gunakan label pin untuk panduan

Langkah 8: Sambungkan Accelerometer ke GPIO Pi

Sambungkan Accelerometer ke GPIO Pi
Sambungkan Accelerometer ke GPIO Pi
Sambungkan Accelerometer ke GPIO Pi
Sambungkan Accelerometer ke GPIO Pi
Sambungkan Accelerometer ke GPIO Pi
Sambungkan Accelerometer ke GPIO Pi
  • Memateri dan mengeluarkan sisa fluks dengan berhati-hati pada accelerometer dan pin header Pi GPIO.
  • Kemudian sambungkan wayar pelompat antara papan pelarian LIS331 dan Pi antara pin berikut:

LIS331 Breakout Board Raspberry Pi GPIO Pin

GND GPIO 9 (GND)

VCC GPIO 1 (3.3V)

SDA GPIO 3 (SDA)

SCL GPIO 5 (SCL)

Untuk mempermudah menyambungkan sensor ke Pi Zero, penyesuai khusus dibuat dengan menggunakan header wanita dan kabel jumper. Pengecutan haba ditambah setelah menguji sambungan

Langkah 9: Tambahkan LED Makluman

Tambahkan LED Makluman!
Tambahkan LED Makluman!
Tambahkan LED Makluman!
Tambahkan LED Makluman!
Tambahkan LED Makluman!
Tambahkan LED Makluman!
Tambahkan LED Makluman!
Tambahkan LED Makluman!
  • Selesaikan arus perintang ke kaki LED negatif (kaki lebih pendek) dan tambahkan shrink wrap (atau pita elektrik) untuk penebat.
  • Gunakan dua kabel jumper atau pin header untuk menyambungkan kaki LED positif ke GPIO26 dan perintang ke GND (kedudukan tajuk 37 dan 39, masing-masing).
  • Sambungkan pek bateri ke kuasa input Pi untuk menyelesaikan persediaan!

Langkah 10: Programkan

Program Ini!
Program Ini!

Kod Python untuk projek ini adalah sumber terbuka! Berikut adalah pautan ke repositori GitHub.

Untuk Orang Baru dalam Pengaturcaraan:

Baca kod dan komen program. Perkara yang mudah diubah ada di bahagian "Parameter Pengguna" di bahagian atas

Untuk Orang Lebih Selesa dengan Deet Teknikal:

Program ini menginisialisasi pecutan LIS331 dengan tetapan lalai, termasuk mod kuasa biasa dan kadar data 50Hz. Baca lembaran data LIS331 dan ubah tetapan inisialisasi seperti yang dikehendaki

Semua

  • Skala pecutan maksimum yang digunakan dalam projek ini ialah 24G, kerana daya hentakan menjadi besar dengan cepat!
  • Dianjurkan untuk memberi komen pernyataan cetak pecutan dalam fungsi utama ketika Anda siap untuk digunakan sepenuhnya.

Sebelum anda menjalankan program, periksa semula bahawa alamat pecutan adalah 0x19. Buka tetingkap terminal dan pasang beberapa alat yang berguna dengan arahan ini:

sudo apt-get install -y i2c-tools

Kemudian jalankan program i2cdetect:

i2cdetect -y 1

Anda akan melihat jadual alamat I2C yang dipaparkan seperti yang ditunjukkan dalam gambar di atas. Dengan andaian ini adalah satu-satunya peranti I2C yang disambungkan, nombor yang anda lihat (dalam kes ini: 19) adalah alamat pecutan! Sekiranya anda melihat nombor yang berbeza, perhatikan dan ubah dalam program (variabel addr).

Langkah 11: Tinjauan Ringkas Program

Tinjauan Ringkas Program
Tinjauan Ringkas Program

Program membaca pecutan x, y, dan z, mengira kekuatan-g, dan kemudian menyimpan data dalam dua fail (dalam folder yang sama dengan kod program) yang sesuai:

  • AllSensorData.txt - memberikan cap waktu diikuti oleh kekuatan-g pada paksi x, y, dan z.
  • AlertData.txt - sama seperti di atas tetapi hanya untuk bacaan yang melebihi ambang keselamatan kami (ambang mutlak 9G atau 4G selama lebih dari 3 saat).

G-force di atas ambang keselamatan kami juga akan menyalakan LED amaran dan terus menyala sehingga kami memulakan semula program. Hentikan program dengan mengetik "CTRL + c" (gangguan keyboard) di terminal arahan.

Foto di atas menunjukkan kedua-dua fail data yang dibuat semasa ujian.

Langkah 12: Uji Sistem

Uji Sistem!
Uji Sistem!
Uji Sistem!
Uji Sistem!

Buka tetingkap terminal, arahkan ke folder tempat anda menyimpan kod program menggunakan perintah cd.

cd path / ke / folder

Jalankan program menggunakan hak istimewa root:

sudo python NameOfFile.py

Periksa bahawa nilai pecutan dalam arah x, y, dan z mencetak ke tetingkap terminal, adalah wajar, dan nyalakan lampu LED jika daya g berada di atas ambang batas kita.

  • Untuk menguji, putar akselerometer sehingga setiap paksi menunjuk ke arah bumi dan periksa apakah nilai yang diukur sama ada 1 atau -1 (sesuai dengan pecutan kerana graviti).
  • Goncangkan pecutan untuk memastikan bacaan meningkat (tanda menunjukkan arah paksi, kami paling berminat dengan besarnya bacaan).

Langkah 13: Sambungkan Elektrik yang Selamat & Pasang

Sambungan Elektrik yang Selamat & Pasang!
Sambungan Elektrik yang Selamat & Pasang!

Setelah semuanya berfungsi dengan betul, mari pastikan monitor daya impak benar-benar dapat menahan hentaman!

  • Gunakan tiub pengecutan haba dan / atau salutkan sambungan elektrik untuk pecutan dan LED dalam epoksi.
  • Untuk pemasangan tetap yang tahan lama dan super, pertimbangkan untuk melapisi seluruh shebang dalam epoksi: Pi Zero, LED, dan accelerometer (tetapi BUKAN penyambung kabel Pi atau kad SD).

    Amaran! Anda masih boleh mengakses Pi dan melakukan semua perkara komputer, tetapi lapisan epoksi penuh akan menghalang penggunaan pin GPIO untuk projek masa depan. Sebagai alternatif, anda boleh membuat atau membeli casing khas untuk Pi Zero, walaupun periksa ketahanannya

Selamat ke topi keledar, orang anda, atau mod pengangkutan seperti papan selaju, basikal, atau kucing anda *!

Uji sepenuhnya bahawa Pi diikat dengan selamat atau pin GPIO boleh menjadi longgar menyebabkan program tidak berfungsi.

* Catatan: Pada awalnya saya bermaksud menaip "kereta", tetapi saya dapati monitor kekuatan impak untuk kucing mungkin juga menghasilkan beberapa data menarik (tentu saja dengan persetujuan kucing).

Langkah 14: Melekatkan Litar di Helmet

Melekatkan Litar di Helmet
Melekatkan Litar di Helmet
Melekatkan Litar di Helmet
Melekatkan Litar di Helmet
Melekatkan Litar di Helmet
Melekatkan Litar di Helmet

Terdapat beberapa kaedah memasukkan litar ke dalam topi keledar. Inilah pendekatan saya untuk pemasangan topi keledar:

  • Sekiranya belum, sambungkan bateri ke Pi (dengan bateri mati). Amankan accelerometer ke bahagian belakang Pi dengan penebat non-konduktif di antara (seperti gelembung gelembung atau busa pembungkusan nipis).
  • Ukur dimensi kombinasi Pi Zero, accelerometer, LED, dan penyambung bateri. Tambah 10% di kedua-dua belah pihak.
  • Lukiskan potongan untuk projek di satu sisi topi keledar, dengan penyambung bateri menghadap ke bahagian atas topi keledar. Potong pelindung di helmet meninggalkan beberapa milimeter (~ 1/8 in.).
  • Letakkan sensor, Pi, dan LED di potongan. Potong kepingan helmet yang berlebihan atau gunakan busa pembungkusan untuk melindungi, melindungi, dan menahan elektronik di tempatnya.
  • Ukur dimensi bateri, tambah 10%, dan ikuti potongan bateri yang sama. Masukkan bateri ke dalam poket.
  • Ulangi teknik penebat untuk bateri di sisi lain helmet.
  • Pegang pelindung helmet di tempatnya dengan pita (kepala anda akan tetap berada di tempat ketika anda memakainya).

Langkah 15: Sebarkan

Sebarkan!
Sebarkan!
Sebarkan!
Sebarkan!

Kuasakan pek bateri!

Sekarang anda boleh masuk ke Pi melalui SSH atau desktop jarak jauh dan menjalankan program melalui terminal. Setelah program dijalankan, ia mula merakam data.

Apabila anda memutuskan sambungan dari WiFi rumah anda, sambungan SSH akan terputus, tetapi program ini masih harus log data. Pertimbangkan untuk menyambungkan Pi ke WiFi hotspot telefon pintar anda, atau hanya log masuk dan ambil data ketika anda pulang.

Untuk mengakses data, masuk dari jauh ke Pi dan baca fail teks. Program semasa akan selalu menambahkan data ke file yang ada - jika anda ingin menghapus data (seperti dari pengujian), hapus file teks (melalui desktop atau gunakan perintah rm di terminal) atau buat nama file baru dalam program kod (dalam Parameter Pengguna).

Sekiranya LED menyala, memulakan semula program akan mematikannya.

Sekarang, bersenang-senang dalam hidup, dan periksa data setiap kali jika anda terserempak dengan sesuatu. Mudah-mudahan, ia adalah lebam kecil tetapi sekurang-kurangnya anda akan tahu!

Langkah 16: Menambah Lebih Banyak Ciri

Menambah Lebih Banyak Ciri
Menambah Lebih Banyak Ciri

Mencari penambahbaikan pada monitor kekuatan impak? Itu di luar ruang lingkup tutorial tetapi cuba lihat senarai di bawah untuk mendapatkan idea!

Lakukan beberapa analisis data g-force anda di Python!

Pi Zero mempunyai kemampuan Bluetooth dan WiFi - tulis Aplikasi untuk mengirim data pecutan ke telefon pintar anda! Untuk memulakan anda, berikut adalah tutorial untuk Monitor Twitter Pi.

Tambahkan sensor lain, seperti sensor suhu atau mikrofon *!

Selamat Membina

* Catatan: Untuk mendengar suara desas-desus yang berkaitan dengan pecutan anda!: D

Disyorkan: