Buat Robot Streaming Video Terkendali Internet Anda dengan Arduino dan Raspberry Pi
Saya @RedPhantom (alias LiquidCrystalDisplay / Itay), seorang siswa berusia 14 tahun dari Israel yang belajar di SMP Max Shein untuk Sains dan Matematika Tingkat Lanjut. Saya membuat proyek ini untuk dipelajari dan dibagikan semua orang!
Anda mungkin berpikir sendiri:hmm… Saya seorang geek… Dan anak-anak saya ingin saya membuat proyek dengan mereka…
Dia ingin membuat robot. Dia ingin mendandaninya seperti anak anjing kecil. Ini proyek akhir pekan yang bagus!
Raspberry Pi sempurna untuk setiap penggunaan:hari ini kami akan mengungkapkan kemampuan komputer mikro ini untuk membuat robot. Robot ini dapat:
- Berkeliling dan dikendalikan melalui LAN (WiFi) menggunakan komputer mana pun yang terhubung ke jaringan WiFi yang sama dengan Raspberry Pi.
- Streaming video langsung menggunakan Modul Kamera Raspberry Pi
- Kirim data sensor menggunakan Arduino
Untuk melihat apa yang Anda butuhkan untuk proyek ringan yang bagus ini, cukup baca langkah berikutnya (peringatan) dan setelah itu langkah Dicari:Komponen.
Ini repo GitHub:REPO GITHUB OLEH SAYA
Berikut adalah Situs Proyek:SITUS PROYEK OLEH SAYA
Langkah 1:Peringatan:Hati-hati Mencoba Ini Di Rumah
PERHATIAN:PENULIS TUTORIAL INI MENGAsumsikan ANDA MEMILIKI PENGETAHUAN YANG CUKUP TENTANG LISTRIK DAN PENGOPERASIAN DASAR ALAT LISTRIK. JIKA ANDA TIDAK HATI-HATI DAN TIDAK MENGIKUTI PETUNJUK DALAM TUTORIAL INI, ANDA DAPAT:MERUSAK PERALATAN ELEKTRONIK, MEMBUKA DIRI SENDIRI ATAU MENYEBABKAN KEBAKARAN. Harap berhati-hati dan gunakan akal sehat. Jika Anda tidak memiliki pengetahuan yang diperlukan untuk tutorial ini (menyolder, dasar-dasar elektronika), silakan lakukan dengan individu yang memilikinya. Terima kasih. Dan:
PENULIS INSTRUCTABLE INI MENGHILANGKAN TANGGUNG JAWAB DIRINYA ATAS KERUSAKAN YANG DISEBABKAN ATAU HILANG PROPERTI ATAU KERUSAKAN FISIK. GUNAKAN Akal Sehat.
Dan:
Ini adalah entri dalam kontes Raspberry Pi. Saya akan sangat berterima kasih jika Anda memilih saya di sudut kanan. Terima kasih! Selamat menikmati.
LISENSI
Program yang tersedia dengan Instruksi ini dilisensikan di bawah GPL v3.
Lisensi GPL memberi Anda:
- kebebasan menggunakan perangkat lunak untuk tujuan apa pun,
- kebebasan untuk mengubah perangkat lunak sesuai dengan kebutuhan Anda,
- kebebasan untuk berbagi perangkat lunak dengan teman dan tetangga Anda,
- dan kebebasan untuk membagikan perubahan yang Anda buat.
Langkah 2:Dicari:Komponen
Yang Anda butuhkan untuk proyek akhir pekan yang ringan ini adalah:
- Sebuah Pi Raspberry
Model apapun bisa digunakan:kita akan menggunakan dua port USB:satu untuk adaptor WiFi dan satu lagi untuk Arduino.
Saya menggunakan Raspberry Pi 2 Model B
- Adaptor WiFi untuk Raspberry Pi Anda. Menempati 1 port USB Pi. (Terhubung ke Raspberry Pi)
- Kabel pendek USB-A ke USB-B. Menempati 1 port USB Pi. (Terhubung ke Raspberry Pi)
- Arduino
(Terhubung ke Raspberry Pi)
Sekali lagi, model apa pun bisa digunakan. Mikrokontroler kecil ini akan menerima output dari sensor kami dan mengirim sinyal ke motor DC kami.
Saya menggunakan Arduino Uno.
- Sensor (Opsional). (Terhubung ke Arduino)
Ini akan mendapatkan informasi dari lingkungan dan mengumpulkannya untuk kita.
- Jembatan H Ganda
H-Bridge digunakan untuk mengendalikan motor, seperti transistor besar. Arduino mengirimkan pulsa (PWM, lihat langkah terakhir untuk penjelasan) ke H-Bridge yang memberi daya pada motor DC dari sumber eksternal. (Lihat TEGANGAN LOGIS dan TEGANGAN OPERASIONAL pada langkah terakhir (Penjelasan)).
Saya menggunakan dual H-bridge Berbasis L298N.
(Terhubung ke Arduino)
- Motor DC
Catatan:Modelnya harus sama agar kecepatannya sama. Menggunakan motor Servo juga merupakan pilihan:Hubungkan kabel GND (Ground) ke arduino dan sumber poer. Sinyal ke pin berkemampuan PWN pada mikrokontroler dan kabel PWR ke sumber daya eksternal. Metode ini tidak memerlukan H-Bridge.
- Paket Baterai untuk Pi dan Arduino.
Saya merekomendasikan Bank Baterai karena dilengkapi dengan sirkuit pengisian daya dan dapat diisi daya dari komputer mana pun
Saya menggunakan Bank Baterai 1A 5V 5000mAh.
Catatan:minimum 1A diperlukan agar robot dapat beroperasi secara normal. Kurang dari itu akan menyebabkan pemanasan dan dapat merusak baterai.
(Tersambung ke H-Bridge)
- Pelompat Papan Tempat memotong roti
Mereka bajingan kecil yang sangat berguna. Mereka menghubungkan semua komponen Anda bersama-sama tanpa menyolder – solusi terbaik untuk pembuatan prototipe.
- 6v Paket Baterai / Baterai untuk motor Anda
Karena saya menggunakan 4 baterai AA, Anda harus menggunakan baterai yang sesuai dengan motor DC Anda. Catatan:Tidak seperti komponen lain, motor DC (seperti LED) menggunakan semua arus yang diberikan kepadanya sehingga Anda harus menggunakan baterai Alkaline biasa dan bukan sel yang dapat diisi ulang. Berhati-hatilah|
(Terhubung ke H-Bridge)
- Platform
Karena Raspberry Pi adalah platform yang bagus untuk membuat robot ini, kami membutuhkan platform fisik untuk menempatkan semua komponen. Anda dapat menggunakan apa pun yang Anda inginkan:kayu dan aluminium hanya untuk bahan yang bagus.
CATATAN:Jika Anda memutuskan untuk membuat robot Anda dengan logam atau bahan konduktor, tutupi dengan lapisan plastik transparan / non- bahan konduktor seperti ketika Anda meletakkan papan di atasnya, pin lubang tembus dapat memperpendek dan menghancurkan papan Anda. Tidak bagus.
Saya menggunakan alas plastik yang saya beli dari E-Bay seharga 12$. Ada banyak untuk memilih dari luar sana. Bahkan yang datang dengan motor (seperti milik saya).
- Pengetahuan
Anda sebagian besar membutuhkan pemahaman pemrograman sederhana dan keterampilan pengoperasian lingkungan Linux dasar. Ini mudah diperoleh– Saya belajar Python dan bahasa pemrograman lainnya melalui eBuku!
Langkah 3:Bahan Bacaan
Direkomendasikan bahwa Anda akan pergi ke:
- Jembatan H L298N
- Elektronik Dasar
- Tutorial Sensor Jarak Ultrasonik
Dan kunjungi:
- situs Raspberry Pi
- situs Arduino
- situs Python
Repo GitHub dan Situs untuk proyek ini tersedia di halaman pertama!
Garpu kami di GitHub!
Langkah 4:Manajemen Daya
Pertama, kita harus melihat penggunaan daya komponen kita. Biasanya semuanya beroperasi pada 5V.
Raspberry Pi 2 B (Model apa pun dapat digunakan):~500mA
Modul Kamera:~250mA
Arduino (Uno):~150mA
Sensor Jarak Ultrasonik:~50mA
Jumlah:950mA. Baterai saya mampu menghasilkan hingga 1A jadi semuanya baik-baik saja. Jika penyiapan Anda memerlukan lebih dari 10% kemampuan baterai, pertimbangkan untuk menyambungkan dua baterai secara paralel atau membeli baterai dengan ampere yang lebih tinggi.
Catatan penting mengenai H-Bridge:Jika motor Anda membutuhkan lebih dari 6V, maka sambungkan daya untuk H-Bridge ke Pin DC 12 In dan bukan input 5V. Dalam hal ini, 5V bertindak sebagai Output 5V. Lihat lembar data dan/atau instruksi Anda.
Langkah 5:Koneksi
Sebelum kita memanaskan Besi solder, kita perlu membahas apa yang harus dihubungkan ke apa. Saya membuat bagan sederhana ini (MS Paint tidak pernah mengecewakan saya) yang menggambarkan Di mana bagian tirai berada di dalam robot ini (btw, adik perempuan saya menyebutnya FartBot karena suara ban yang lucu. Ibu meyakinkan saya untuk mengubah nama menjadi SmartBot )
Gambar dibuat sehingga Anda dapat memperbesar dan melihat dalam resolusi penuh dan membaca pesan kecil yang saya tinggalkan di sana.
Langkah 6:Alamat untuk Pi
Arduino berbicara dengan Pi sesuai dengan rencana. Dan Pi berbicara ke komputer, jadi bagaimana cara kerjanya?
Mari kita lihat CIS (Connection Initiation Sequence):
- Raspberry Pi dimulai
- Arduino Dimulai
- Raspberry Pi memulai Klien TCP. Ia mengeluarkan alamat IP-nya melalui LED.
- Raspberry Pi memulai layanan Serial Comms dan terhubung ke Arduino
Oleh karena itu, kami telah menjalin semacam komunikasi:
Komputer <-> Raspberry Pi <-> Arduino
Saya telah menggunakan Visual Basic .NET (Microsoft Visual Studio 2013 Community) untuk menulis program yang berbicara dengan Raspberry Pi dan Python untuk menulis protokol Arduino/Raspberry Pi.
Yang perlu Anda lakukan untuk mengetahui alamat IP Pi Anda, adalah menghubungkannya ke layar HDMI, masuk ke Shell dan ketik perintah:
nama host -I
Pastikan menggunakan huruf kapital “I” (huruf “Mata”) agar perintah berfungsi.
Langkah 7:Rencana
Sekarang setelah kita mendapatkan alamat IP Pi, kita akan memasukkan SSH ke dalamnya (mendapatkan akses ke file, SSH adalah Secure Shell) dan menulis file yang menyertakan alamat IP Server. Pi, saat startup akan melakukannya juga dan menulis port yang didengarkannya. Di sini saya hanya akan memberikan beberapa contoh dari kode tetapi tersedia untuk diunduh dari langkah ini dan dari cabang github yang saya buat. Detailnya nanti.
Cara kerjanya seperti ini:
- RPi dimulai.
- RPi memulai program TCP pada IP lokal dan port yang ditentukan.
- RPI mulai melakukan streaming video
- RPI dimatikan.
Langkah 8:Menjadi Fisik
Sekarang, kami siap untuk mulai membangun semuanya secara fisik. Jika Anda belum membaca langkah 1 (teks peringatan dan lisensi), lakukan sebelum melanjutkan. Saya tidak bertanggung jawab atas kerusakan yang disebabkan. Dan jika ragu, robot ini tidak boleh digunakan untuk tujuan militer kecuali itu adalah kiamat zombie. Itupun gunakan akal sehat.
Disarankan Anda membaca instruksi mendengarkan di Daftar Bacaan.
Unduh skema koneksi dari langkah “Koneksi”.
MOTOR
Motor yang Anda beli mungkin terlihat seperti ini, dan tidak apa-apa jika tidak:jika hanya memiliki dua kabel (dalam kebanyakan kasus hitam dan merah), itu akan berfungsi. Cari lembar data mereka secara online untuk melihat tegangan dan arus operasinya. Jangan ragu untuk mengajukan pertanyaan di bagian komentar. Saya selalu membacanya.
H-BRIDGE
Saya belum pernah bekerja dengan H-Bridge sebelumnya. Saya sedikit mencari di Google dan menemukan instruksi yang bagus yang menjelaskan prinsip-prinsip HB. Anda dapat melihat di sana juga (lihat langkah Daftar Bacaan) dan kaitkan milik Anda juga. Saya tidak akan menjelaskan banyak. Anda dapat membaca di sana dan mengetahui semua yang harus Anda ketahui tentang sirkuit ini.
LED
Bola lampu kecil ini dapat berjalan dari tegangan logis hanya karena hampir tidak memerlukan arus, dan tegangan 3V-5V 4mA-18mA. Opsional.
ARDUINO
Arduino akan mendapatkan sinyal dan perintah melalui koneksi Serial dari Raspberry Pi. Kami menggunakan Arduino untuk mengontrol motor kami karena Raspberry Pi tidak dapat mengeluarkan nilai analog melalui GPIO.
Untuk detail lebih lanjut:Bangun Robot Streaming Video Terkendali Internet Anda dengan Arduino dan Raspberry Pi