Daftar Isi:
- Langkah 1: Komponen yang Diperlukan
- Langkah 2: Membuat Perangkat Jarak Jauh
- Langkah 3: Perangkat Lunak dan Perpustakaan
- Langkah 4: Menggunakan SSH dan Menginstal Libs
- Langkah 5: Protokol Bluetooth
- Langkah 6: Menggunakan Mezzanine di DragonBoard 410c
- Langkah 7: Perangkat Lunak DragonBoard 410c
Video: Mendeteksi Situasi Darurat - Qualcomm Dragonboard 410c: 7 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:54
Mencari sistem keamanan yang bekerja untuk memantau situasi darurat, mungkin untuk memperhatikan bahwa terlalu sulit untuk memproses semua informasi yang direkam. Memikirkan hal itu, kami memutuskan untuk menggunakan pengetahuan kami dalam pemrosesan audio/gambar, sensor, dan aktuator untuk membuat satu sistem lengkap yang memungkinkan untuk memprediksi situasi di mana nyawa orang dalam bahaya.
Proyek ini memiliki sensor lokal dan perangkat jarak jauh untuk mengumpulkan data dan mengirim ke papan naga, yang memiliki kekuatan pemrosesan yang mampu mengekstrak informasi penting dari data yang diterima.
Perangkat jarak jauh adalah papan Arduino dengan modul HC-06 yang memungkinkan untuk mentransfer semua informasi, dan jaring lebar berbiaya rendah yang mampu memproses sejumlah besar data.
Langkah 1: Komponen yang Diperlukan
Pertama-tama, Anda harus memutuskan sensor dan aktuator mana yang akan Anda gunakan, dan membuat sketsa arsitekturnya.
Dalam kasus kami, kami menggunakan sensor ini yang terhubung di ARDUINO Pro Mini, tercantum di bawah ini:
- PIR (Passive Infrared -- Presence sensor)
- DHT 11 (Sensor kelembaban dan suhu)
- Sensor CO (Sensor Karbon Monoksida)
- Sensor kebisingan
Aktuator:
- motor servo
- buzzer
Komunikasi:
Modul Bluetooth HC-06
Untuk Dragonboard 410c, kami akan memiliki beberapa sensor dan perangkat lunak untuk memproses semua input data:
Sensor:
- DHT 11
- Sensor Sinar Matahari
Aktuator:
- Relay
- Status Led
- Buzzer
Langkah 2: Membuat Perangkat Jarak Jauh
Sekarang saatnya untuk menghubungkan semua komponen berikut ke Papan Arduino, membuat perangkat yang akan menerima data dari suasana (kebisingan, kelembaban, suhu, dll), dan mengirim ke Dragonboard oleh modul bluetooth HC-06.
Koneksi perlu diperhatikan, karena semua sensor memiliki tempat khusus untuk terhubung.
Pada sistem, dimungkinkan untuk memiliki lebih dari satu perangkat untuk mengumpulkan data. Semakin banyak perangkat yang Anda pasang di lingkungan, semakin akurat diagnostik yang dihasilkan oleh pemrosesan data. Karena akan dimungkinkan untuk mengekstrak informasi yang lebih luas yang mungkin berguna.
Kami memutuskan untuk menggunakan papan arduino karena memiliki sensor yang lebih kompatibel, dan memungkinkan untuk memasang perangkat jarak jauh ini di tempat yang berbeda, mengumpulkan lebih banyak informasi.
Perangkat lokal adalah DragonBoard 410c, yang memproses informasi audio, video, digital, dan analog dengan prosesor SnapDragon 410 Anda yang kuat.
Penempatan komponen (Remote Devide)
Yang one piece memiliki beberapa pin yang harus disambungkan pada pin yang tepat pada board arduino pro mini.
Modul Bluetooth HC-06 memiliki 4 pin:
- TX (Transmissor) -> terhubung pada pin RX Arduino
- RX (Penerima) -> terhubung pada pin Arduino TX
- VCC -> terhubung pada 5v
- GND
Sensor DHT 11 memiliki 4 pin (tetapi hanya 3 yang digunakan):
- Sinyal -> terhubung pada pin digital
- VCC -> terhubung pada 5v
- GND
Sensor PIR memiliki 3 pin:
- Sinyal -> terhubung pada pin digital
- VCC -> terhubung pada 5v
- GND
Sensor gas (MQ) memiliki 4 pin:
- Digital OUT -> terhubung pada pin digital (jika Anda menginginkan informasi digital)
- Analog OUT -> dalam kasus kami, kami menggunakan ini terhubung pada pin analog
- VCC -> terhubung pada 5v
- GND
Sensor kebisingan (KY-038) memiliki 3 pin:
- Sinyal -> terhubung pada pin analog
- VCC -> terhubung pada 5v
- GND
Kode untuk Perangkat jarak jauh Arduino:
/* * Arduino mengirim data melalui Blutooth * * Nilai sensor dibaca, digabungkan pada * String dan kirim melalui port serial. */ #include "DHT.h" #define DHTPIN 3 #define DHTTYPE DHT22 #define PIRPIN 9 #define COPIN A6 DHT dht(DHTPIN, DHTTYPE); kelembaban mengambang, suhu; boolean pir = 0; int co, mikrofon; String pesan = ""; nama karakter[40]; void setup() { Serial.begin(9600); dht.mulai(); } void loop() { kelembaban = dht.readHumidity(); suhu = dht.readTemperature(); pir = digitalRead(PIRPIN); co = analogRead(COPIN); mic = analogRead(A0); pesan = "#;" +String(kelembaban) + ";" + String(suhu) +";"+ String(mic) +";"+ String(pir)+ ";" + String(co) + ";#" +"\n"; Serial.print(pesan); penundaan(2000); }
Penjelasan kode:
Semua pin yang digunakan di Arduino dikutip di awal kode dan perpustakaan masing-masing yang diperlukan untuk pengoperasian sensor diinisialisasi. Semua data akan diteruskan ke variabel masing-masing yang akan menerima nilai yang dibaca dari setiap sensor setiap 2000 milidetik, kemudian semuanya digabungkan dalam sebuah String, kemudian ditulis dalam Serial. Dari sana, kode pyton yang ada di DragonBoard sangat mudah untuk menangkap data tersebut.
Langkah 3: Perangkat Lunak dan Perpustakaan
Untuk memproses semua data yang diterima dan mengontrol sistem keamanan, perlu menggunakan beberapa perangkat lunak dan perpustakaan di Qualcomm DragonBoard 410c.
Dalam proyek khusus ini kami menggunakan:
Perangkat lunak:
- Python
- Arduino
Platform:
- Amazon AWS -> server online
- Phant -> Layanan data host
Perpustakaan:
- OpenCV - Pemrosesan Video (https://opencv-python-tutroals.readthedocs.io/en/latest/)
- PyAudio - Pemrosesan Audio (https://people.csail.mit.edu/hubert/pyaudio/)
- Gelombang (https://www.physionet.org/physiotools/wave-installation.shtm)
- AudioOp (https://docs.python.org9https://scikit-learn.org/stable/install.html/2/library/audioop.html)
- Numpy (https://www.numpy.org)
- SciKit1 - Latih dan prediksi pembelajaran mesin (https://scikit-learn.org/stable/install.html)
- cPickle - Simpan parameter pembelajaran mesin (https://pymotw.com/2/pickle/)
- MRAA - Gunakan GPIO (https://iotdk.intel.com/docs/master/mraa/python/)
- UPM - Gunakan GPIO (https://github.com/intel-iot-devkit/upm)
- PySerial - Gunakan untuk komunikasi serial dengan perangkat Bluetooth (https://pythonhosted.org/pyserial/)
Langkah 4: Menggunakan SSH dan Menginstal Libs
Pertama-tama Anda perlu mendapatkan alamat IP dari Dragonboard, untuk melakukan itu, Anda perlu menyalakan DragonBoard yang terhubung dengan mouse, keyboard, dan monitor HDMI. Saat papan dihidupkan, Anda harus terhubung ke jaringan, lalu pergi ke terminal dan jalankan perintah:
sudo ifconfig
setelah itu Anda bisa mendapatkan alamat IP.
Dengan alamat IP Anda dapat mengakses Dragonboard melalui SHH, untuk melakukan itu Anda perlu membuka terminal di komputer yang terhubung dalam jaringan yang sama dengan papan. Di terminal Anda dapat menjalankan perintah:
ssh linaro@{IP}
(Anda harus mengganti {IP} dengan alamat IP yang Anda dapatkan di Dragonboard).
Lib pertama yang perlu Anda instal adalah lib mraa. Untuk melakukan itu, Anda perlu menjalankan perintah berikut di terminal:
sudo add-apt-repository ppa:mraa/mraa && sudo apt-ge;t update && sudo apt-get install libmraa1 libmraa-dev mraa-tools python-mraa python3-mraa
Untuk menginstal opencv untuk python Anda hanya perlu menjalankan perintah:
sudo apt-get install python-opencv
Untuk menginstal PyAudio Anda perlu menjalankan perintah:
sudo apt-get install python-pyaudio python3-pyaudio
lib WAVE dan AudioOp sudah terpasang di papan. Untuk menginstal numpy Anda perlu menjalankan perintah:
sudo apt-get install python-numpy python-scipy
Lib terakhir yang harus Anda instal adalah scikit, untuk menginstalnya Anda harus menginstal pip. Daripada Anda hanya perlu menjalankan perintah:
pip install scikit-lear
Langkah 5: Protokol Bluetooth
Koneksi DragonBoard dengan Arduino melalui Bluetooth
Modul Bluetooth (HC-06) awalnya terhubung ke Arduino Nano sesuai dengan contoh berikut:
Menggunakan antarmuka grafis Linaro (Sistem Operasi yang Digunakan dalam proyek saat ini di DragonBoard), di sisi kanan bilah bawah klik simbol Bluetooth dan kemudian klik "Setup New Device" dan konfigurasikan dengan modul Bluetooth Anda membiarkannya berpasangan. Verifikasi bahwa modul Anda benar-benar terhubung dengan mengklik simbol Bluetooth lagi, klik "Perangkat …" dan lihat apakah nama perangkat Anda terdaftar dan terhubung. Sekarang pilih perangkat Anda di layar "Perangkat Bluetooth" dan klik kanan padanya dan catat port yang terhubung dengan modul Bluetooth Anda (mis.: "rfcomm0"). Catatan: Nama port tempat perangkat Anda terhubung akan menjadi penting untuk langkah selanjutnya untuk mengaktifkan pertukaran data.
Membangun Pertukaran Data DragonBoard dan Bluetooth
Pada dasarnya kami mengikuti langkah demi langkah dari tautan: https://www.uugear.com/portfolio/bluetooth-communi… tetapi kami tidak melakukan bagian pemasangan hanya eksekusi kode python dan Arduino. Pada python digunakan serial library yang diinisialisasi pada port yang terhubung ke bluetooth, maka kode python membaca data sensor yang terhubung ke arduino melalui modul bluetooth.
Langkah 6: Menggunakan Mezzanine di DragonBoard 410c
Untuk membuat koneksi antara dragonboard dan komponen, kami menggunakan jenis perisai yang disebut oleh Mezannine, yang dikembangkan oleh 96boards.
Dengan menggunakan shield ini, menghubungkan periferal menjadi lebih mudah.
Konektor yang digunakan adalah dari development kit grove, jadi hanya menggunakan kabel especif yang menghubungkan dua arah, Semua bagian dapat dengan mudah ditemukan di situs web ini:
Kami menggunakan kit ini di bawah ini:
- Relay Grove
- Sensor sinar matahari Grove
- Soket yang dipimpin Grove
- Sensor suhu & humi Grove
- Grove Buzzer
Langkah 7: Perangkat Lunak DragonBoard 410c
Bagian dari program di DragonBoard dikodekan dengan Python dan program yang digunakan di Arduino dikembangkan dalam C++. Setiap 2 menit Arduino membaca semua sensor yang terpasang padanya. Kemudian Arduino mengirim bacaan ke DragonBoard melalui Bluetooth. DragonBoard menggabungkan pembacaan yang berasal dari Arduino dengan pembacaan yang dibuat oleh perisai Mezzanine dengan fitur dari sampel audio dan video.
Dengan data ini, Dewan mencoba memprediksi jika terjadi situasi darurat. Dewan mengirim ke Amazon Web Service menggunakan Phant data mentah dan prediksi yang dibuatnya. Jika papan memprediksi bahwa sedang terjadi situasi yang aneh, ia mencoba memperingatkan pengguna dengan mengedipkan led dan buzzer di Mezzanine dan ditampilkan di aplikasi web. Dalam aplikasi web juga dimungkinkan untuk melihat data mentah untuk memahami apa yang terjadi di area ini.
Direkomendasikan:
SPBU untuk Mendeteksi CO: 5 Langkah
SPBU untuk Mendeteksi CO: Karbon monoksida (CO) adalah gas yang sangat berbahaya, karena tidak berbau, tidak berasa. Anda tidak dapat melihatnya, atau mendeteksinya dengan hidung Anda. Tujuan saya adalah membangun detektor CO sederhana. Pertama, saya mendeteksi jumlah gas yang sangat kecil di rumah saya. Itulah alasannya
Mendeteksi Getaran Menggunakan Modul Sensor Ketuk Kejut Piezoelektrik: 6 Langkah
Mendeteksi Getaran Menggunakan Modul Sensor Ketuk Kejut Piezoelektrik: Dalam tutorial ini kita akan mempelajari cara mendeteksi getaran kejut menggunakan modul Getaran sensor Piezoelektrik sederhana dan Visuino.Tonton video demonstrasi
Raspberry Pi DIY Smart Bel Pintu Yang Dapat Mendeteksi Orang, Mobil, Dll: 5 Langkah
Raspberry Pi DIY Smart Doorbell Yang Dapat Mendeteksi Orang, Mobil, Dll.: Desain bertema steampunk ini terintegrasi dengan asisten rumah dan sistem audio multi-ruangan kami untuk berkomunikasi dengan seluruh rumah pintar DIY kami. Nest, atau salah satu pesaing lainnya) Saya membuat pintu pintar kami sendiri
Menggunakan Radio untuk Mendeteksi Petir: 4 Langkah
Menggunakan Radio untuk Mendeteksi Petir: Radio kecil dapat digunakan lebih dari sekadar mendengarkan musik atau olahraga. Semua radio (bahkan hanya radio AM yang murah) dapat digunakan untuk mendeteksi petir dan fenomena atmosfer lainnya. Dengan telinga yang terlatih, seseorang bahkan dapat menentukan apakah petir bergerak ke
Bank Daya Darurat - Kotak Alat DIY Tenaga Surya: Radio+ Pengisi Daya+ Lampu untuk Darurat!: 4 Langkah
Bank Daya Darurat - Kotak Alat DIY Tenaga Surya: Radio+ Pengisi Daya+ Lampu untuk Darurat!: Tambahkan 28 Maret 2015: Saya membuat kotak peralatan untuk keadaan darurat, dan menggunakannya sekarang karena kota saya terkubur dalam lumpur. Sebagai pengalaman, saya dapat mengatakan bahwa saya melayani untuk mengisi daya ponsel dan mendengarkan radio. Kotak peralatan lama? speaker pc lama? baterai 12 volt yang tidak terpakai? Anda dapat membuat