- Keperluan:
- Memuat turun dan Memasang Perisian:
- Bahagian Perkakasan Arduino dan Litar Diagram:
- Bahagian Perisian Arduino:
- Aplikasi Mudah Alih Android untuk Ultrasonik Radar:
- Penjelasan Kerja:
Ini adalah projek yang menarik di mana kita meneroka kehebatan Arduino dan Android untuk membuat peranti Surveillance yang menggunakan Arduino dan Ultra Sonic Sensor untuk menyiarkan maklumat ke aplikasi mudah alih (Android) menggunakan Bluetooth.
Keselamatan dan keselamatan menjadi perhatian utama kami sejak berabad-abad. Memasang kamera keselamatan yang mempunyai mod malam dengan pilihan kecondongan dan panci akan membakar lubang besar di poket kami. Oleh itu marilah kita membuat alat ekonomi yang hampir sama tetapi tanpa ciri video.
Peranti ini mendeteksi objek dengan bantuan Ultrasonik Sensor dan oleh itu dapat berfungsi walaupun pada waktu malam. Kami juga memasang sensor AS (Ultra Sonic) ke atas motor servo, motor servo ini dapat disetel untuk berputar secara automatik untuk mengimbas kawasan atau dapat diputar secara manual menggunakan aplikasi Mudah Alih kami, sehingga kami dapat memfokuskan sensor ultrasonik di arah yang diperlukan dan merasakan objek yang ada di sana. Semua maklumat yang dirasakan oleh sensor AS akan disiarkan ke telefon pintar kami menggunakan Modul Bluetooth (HC-05). Jadi ia akan berfungsi seperti Sonar atau Radar.
Menarik kan ??…. Mari kita lihat apa yang kita perlukan untuk melakukan projek ini.
Keperluan:
Perkakasan:
- Bekalan kuasa A + 5V (saya menggunakan papan Arduino (lain) untuk bekalan kuasa)
- Arduino Mega (Anda boleh menggunakan apa sahaja dari pro mini hingga Yun)
- Servo Motor (sebarang penilaian)
- Modul Bluetooth (HC-05)
- Sensor Sonic Ultra (HC-SR04)
- Papan roti (tidak wajib)
- Menyambung wayar
- Mudah alih Android
- Komputer untuk pengaturcaraan
Perisian:
- Perisian Arduino
- SDK Android
- Memproses Android (Untuk membuat aplikasi mudah alih)
Setelah kami siap dengan bahan kami, mari kita mula membina perkakasan. Saya telah membahagikan tutorial ini menjadi Bahagian Arduino dan Bahagian Pemprosesan agar mudah difahami. Orang yang baru dalam proses tidak perlu takut kerana kod lengkap diberikan pada akhir tutorial yang boleh digunakan seperti itu.
Memuat turun dan Memasang Perisian:
The Arduino IDE boleh dipasang dari sini. Muat turun perisian mengikut OS anda dan pasangkannya. Arduino IDE memerlukan pemandu untuk berkomunikasi dengan Perkakasan Arduino anda. Pemacu ini harus dipasang secara automatik sebaik sahaja anda menyambungkan papan anda dengan komputer. Cuba muat naik program sekelip mata dari contoh untuk memastikan anda Arduino aktif dan berjalan.
The Processing IDE boleh dipasang dari sini. Pemprosesan adalah aplikasi sumber terbuka yang sangat baik yang dapat digunakan untuk banyak perkara, ia mempunyai pelbagai mod. Dalam "Java Mode" kita dapat membuat aplikasi komputer windows (file.EXE) dan dalam "mod Android" kita dapat membuat Aplikasi mobile Android (file.APK) juga memiliki mode lain seperti "mode Python" di mana Anda dapat menulis program python. Tutorial ini tidak akan merangkumi asas-asas Pemprosesan, oleh itu jika anda ingin mempelajari pengaturcaraan java atau memproses terus ke saluran YouTube yang hebat ini di sini.
Bahagian Perkakasan Arduino dan Litar Diagram:
Projek ini melibatkan banyak komponen seperti Servo Motor, Bluetooth Module, Ultrasonic Sensor dll. Oleh itu jika anda seorang pemula mutlak maka disarankan untuk memulakan dengan beberapa tutorial asas yang melibatkan komponen ini dan kemudian kembali ke sini. Lihat pelbagai projek kami di Servo Motor, Bluetooth Module dan Ultrasonic Sensor di sini.
Semua komponen tidak dikuasakan oleh Arduino itu sendiri kerana, motor servo, modul Bluetooth dan sensor AS sama-sama menarik banyak arus yang tidak dapat dijumpai oleh Arduino. Oleh itu, sangat digalakkan menggunakan bekalan luaran + 5V. Sekiranya anda tidak mempunyai bekalan + 5V luaran, anda boleh berkongsi komponen antara dua papan Arduino seperti yang telah saya lakukan. Saya telah menyambungkan rel kuasa Servos ke papan Arduino yang lain (warna merah) dan menghubungkan modul Bluetooth HC-05 dan sensor Ultrasonik HC-SR04 ke mega Arduino. PERHATIAN: Menghidupkan semua modul ini menggunakan satu papan Arduino akan menggoreng pengatur voltan Arduino.
Gambar rajah sambungan untuk Projek Sonar Berasaskan Arduino ini diberikan di bawah:
Setelah sambungan dibuat, pasangkan sensor AS ke motor Servo anda seperti gambar di bawah:
Saya telah menggunakan sekeping plastik kecil yang ada di tempat sampah dan pita sisi dua untuk memasang sensor. Anda boleh menghasilkan idea anda sendiri untuk melakukan perkara yang sama. Terdapat juga pemegang servo yang tersedia di pasaran yang boleh digunakan untuk tujuan yang sama.
Setelah Servo dipasang dan Sambungan diberikan, ia akan kelihatan seperti ini.
Ikuti skema di atas jika terdapat salah hubungan. Sekarang mari kita mulai memprogram Arduino Mega menggunakan Arduino IDE.
Bahagian Perisian Arduino:
Kita mesti menulis kod kita supaya kita dapat mengira jarak antara objek dan sensor Ultra Sonic dan menghantarnya ke aplikasi mudah alih kita. Kita juga harus menulis kod agar motor servo kita menyapu dan juga terkawal dari data yang diterima oleh modul Bluetooth. Tetapi jangan risau program ini jauh lebih mudah daripada yang anda gambar, terima kasih kepada Arduino dan perpustakaannya. Kod lengkap diberikan di bawah di bahagian kod.
Fungsi di bawah ini digunakan untuk membuat motor servo menyapu secara automatik dari kiri ke kanan (170 hingga 10) dan sekali lagi dari kanan ke kiri (10 hingga170). Dua untuk gelung digunakan untuk mencapai yang sama. Fungsi kami () dipanggil di dalam kedua fungsi untuk menghitung jarak antara sensor dan objek dan menyiarkannya ke Bluetooth. Kelewatan 50 ms diberikan untuk menjadikan servo berputar perlahan. Lebih perlahan motor memutar tepat bacaan anda menjadi.
// ** Fungsi untuk menyapu servo ** // membatalkan servofun () {Serial.println ("Sweeping"); // untuk penyahpepijatan untuk (posc = 10; posc <= 170; posc ++) // Menggunakan 10 hingga 170 darjah selamat daripada 0 hingga 180 kerana beberapa servo mungkin tidak beroperasi pada malaikat ekstrem {servo.write (posc); // tetapkan kedudukan kelewatan servo motor (50); kami (); // ukur jarak objek menyanyikan sensor AS} untuk (posc = 170; posc> = 10; posc--) {servo.write (posc); kelewatan (50); kami (); // mengukur jarak objek menyanyikan sensor AS} Serial.println ("Scan Complete"); // untuk debugging flag = 0; } // ** Fungsi menyapu Akhir Servo ** //
Seperti yang dinyatakan sebelumnya, motor servo juga dapat dikendalikan secara manual dari telefon pintar. Anda hanya meleret ke kanan untuk membuat motor bergerak ke kanan dan leret ke kiri untuk menjadikan motor bergerak ke kiri. Fungsi di atas digunakan untuk mencapai yang sama. Malaikat motor servo akan diterima secara langsung oleh modul Bluetooth dan disimpan dalam BluetoothData yang berubah-ubah, maka servo berada di posisi malaikat tertentu dengan menggunakan baris servo.write (BluetoothData).
// ** Fungsi untuk mengawal Servo secara manual ** // batal manualservo () {us (); // Dapatkan nilai dari pengguna dan kendalikan servo jika (Blueboy.available ()) {BluetoothData = Blueboy.read (); Serial.println (BluetoothData); servo.write (BluetoothData); Serial.println ("Ditulis"); jika (BluetoothData == 'p') {flag = 0; }}} // __ Akhir fungsi kawalan manual __ //
Yang jarak hadir di hadapan objek akan dikira dengan fungsi di bawah. Ia berfungsi dengan formula mudah iaitu Kelajuan = Jarak / masa. Oleh kerana kita tahu kelajuan gelombang AS dan masa yang diambil jaraknya dapat dikira menggunakan formula di atas.
// ** Fungsi untuk mengukur jarak ** // batal kita () {int durasi, jarak; digitalWrite (trigPin, TINGGI); kelewatanMikrodetik (1000); digitalWrite (trigPin, RENDAH); tempoh = pulseIn (echoPin, TINGGI); jarak = (tempoh / 2) / 29.1; // Mengira jarak dari sensor jika (jarak <200 && jarak> 0) Blueboy.write (jarak); } // __ Fungsi pengukuran jarak akhir __ //
Sekiranya anda mempunyai keraguan dalam program ini, sila gunakan bahagian komen untuk pertanyaan anda. Oleh itu, setelah kita siap dengan kod kita, kita boleh membuang kod tersebut ke dalam perkakasan kita. Tetapi alat pengawasan tidak akan mula berfungsi sehinggalah disambungkan ke Aplikasi Android. Periksa juga Video di hujungnya untuk berfungsi sepenuhnya.
Aplikasi Mudah Alih Android untuk Ultrasonik Radar:
Sekiranya anda tidak mahu membuat aplikasi anda sendiri dan sebaliknya hanya ingin memasang aplikasi yang sama yang digunakan dalam tutorial ini, anda boleh mengikuti langkah-langkah di bawah.
1. Anda boleh memuat turun fail APK secara langsung dari pautan di bawah. Fail APK ini dibuat untuk Android versi 4.4.2 dan lebih tinggi (Kitkat an di atas). Ekstrak fail APK dari fail zip.
Aplikasi Android untuk Ultrasonik Radar
2. Pindahkan fail.Apk dari komputer ke telefon bimbit anda.
3. Aktifkan memasang aplikasi dari Sumber tidak diketahui dalam tetapan android anda.
4. Pasang aplikasi.
Sekiranya berjaya dipasang, anda akan menemui aplikasi bernama "Zelobt" yang terpasang di telefon anda seperti gambar di bawah:
Sekiranya anda telah memasang APK ini, maka anda boleh melangkau bahagian bawah dan melompat ke bahagian seterusnya.
Memprogram Aplikasi anda sendiri menggunakan Pemprosesan:
Anda boleh menggunakan fail.APK yang diberikan di atas atau anda boleh membina aplikasi anda sendiri menggunakan Pemprosesan seperti yang dijelaskan di sini. Dengan sedikit pengetahuan mengenai pengaturcaraan, sangat mudah untuk menulis kod anda sendiri untuk aplikasi android anda. Tetapi jika anda baru memulakannya maka tidak digalakkan untuk memulakan dengan kod ini kerana ia agak tinggi daripada tahap pemula.
Program ini menggunakan dua perpustakaan iaitu, "Ketai library" dan "ControlP5 library" . Perpustakaan ketai digunakan untuk mengawal semua perkakasan yang ada di dalam telefon bimbit kami. Perkara seperti tahap bateri telefon anda, nilai sensor jarak, nilai sensor pecutan, pilihan kawalan Bluetooth dan lain-lain boleh diakses dengan mudah oleh perpustakaan ini. Dalam program ini kami menggunakan perpustakaan ini untuk menjalin komunikasi antara Bluetooth telefon dan Arduino Bluetooth (HC-05). The "perpustakaan ControlP5" digunakan untuk graf plot untuk sistem radar kami.
The program android lengkap dilampirkan, anda boleh memuat turun dari sini.
PERHATIAN: Jangan lupa untuk memasang perpustakaan yang disebutkan di atas dan jangan menyalin tampal bahagian kod sahaja, kerana kod tersebut mengimport gambar dari folder data yang semuanya diberikan dalam lampiran di atas. Oleh itu muat turun dan gunakan hanya itu.
Setelah selesai menggunakan bahagian pengekodan dan berjaya menyusunnya, anda boleh menyambungkan telefon bimbit anda secara langsung ke komputer anda melalui kabel data dan klik pada butang main untuk membodohkan aplikasi ke telefon bimbit anda. Lihat juga Projek Pemprosesan kami yang lain: Permainan Ping Pong menggunakan Radio FM yang Dikendalikan Arduino dan Telefon Pintar menggunakan Pemprosesan.
Penjelasan Kerja:
Sekarang, kami bersedia dengan perkakasan dan bahagian perisian kami. Nyalakan perkakasan anda dan pasangkan telefon bimbit anda ke modul Bluetooth. Setelah dipasangkan, buka aplikasi "Zelobt" yang baru kami pasang dan sekarang tunggu sebentar dan anda akan perhatikan modul Bluetooth anda (HC-05) secara automatik disambungkan dengan telefon pintar anda. Setelah sambungan dibuat, anda akan mendapat skrin berikut:
Anda dapat melihat bahawa kata itu disambungkan ke: Nama peranti (alamat perkakasan) di bahagian atas skrin. Ia juga memaparkan malaikat motor servo semasa dan jarak antara sensor AS. Grafik biru juga dilakarkan pada latar belakang merah berdasarkan jarak yang diukur. Semakin dekat objek, semakin tinggi kawasan biru. Grafik yang diukur ketika beberapa objek diletakkan berhampiran juga ditunjukkan pada rajah kedua di atas.
Seperti yang dinyatakan sebelumnya, anda juga dapat mengawal motor servo anda dari aplikasi mudah alih anda. Untuk melakukan ini, cukup klik pada butang berhenti. Ini akan menghentikan servo anda daripada menyapu secara automatik. Anda juga boleh menemui roda bulat di bahagian bawah skrin yang apabila dipusingkan akan berputar mengikut arah jam atau arah jam. Dengan menggeser roda ini, anda juga boleh membuat motor servo anda berpusing ke arah tertentu. Roda dan grafik dikemas kini semasa dileret ditunjukkan dalam gambar di bawah.
Kod Arduino diberikan di bawah dan fail APK untuk Aplikasi android ada di sini. Kerja projek yang lengkap ditunjukkan dalam video di bawah. Harap anda memahami projek tersebut. Sekiranya anda mempunyai pertanyaan, sila gunakan bahagian komen di bawah.