Daftar Isi:

Pisang/Raspberry Pi + Arduino Rover Dengan Webcam: 9 Langkah
Pisang/Raspberry Pi + Arduino Rover Dengan Webcam: 9 Langkah

Video: Pisang/Raspberry Pi + Arduino Rover Dengan Webcam: 9 Langkah

Video: Pisang/Raspberry Pi + Arduino Rover Dengan Webcam: 9 Langkah
Video: Membuat Robot Controller dengan Internet of Things (M. Octaviano Pratama, M.Kom, CO-FOUNDER BISA AI) 2024, Juli
Anonim
Pisang/Raspberry Pi + Arduino Rover Dengan Webcam
Pisang/Raspberry Pi + Arduino Rover Dengan Webcam

Sebuah proyek yang saya lakukan di waktu luang saya. Ini adalah robot 4 roda penggerak penuh yang dikendalikan melalui antarmuka web. Jika Anda memiliki komentar atau pertanyaan, jangan ragu untuk menghubungi saya. Proyek ini sendiri menggunakan bagian cetakan 3D dan potongan kode tertentu yang dibuat oleh orang lain. Anda dapat menemukan kredit dan melihat karya asli di akhir Instructuble.

Dapatkah kita memulai?

Langkah 1: Komponen yang Anda Butuhkan

Komponen yang Anda Butuhkan
Komponen yang Anda Butuhkan
Komponen yang Anda Butuhkan
Komponen yang Anda Butuhkan
Komponen yang Anda Butuhkan
Komponen yang Anda Butuhkan

Berikut daftar komponen yang saya gunakan dengan tautan dan alternatifnya. Saya tinggal di Shenzhen, Cina dan saya membeli suku cadangnya langsung di Taobao.

Sasis robot 4 motor Alternatif: Sasis yang cukup besar bisa digunakan. Yang ini memiliki 4 motor untuk beberapa torsi ekstra. Motornya biasa motor kuning murah, rater for

L293D Arduino Motor Shield rev.1 clone Alternatif: Pelindung motor yang lebih baik dinilai untuk lebih banyak arus

Klon Arduino Uno Alternatif: Anda dapat menggunakan papan Arduino lain tanpa perubahan signifikan pada kode.

Baterai 6V 4.5Ah Pb Alternatif: Anda dapat bereksperimen dengan baterai LiPo yang lebih kecil jika Anda ingin robot yang lebih ringan/hanya menggunakan dua motor.

Pisang Pi Alternatif: Dapat menukar Raspberry Pi 1/2/3 atau Orange Pi tanpa perubahan kode yang signifikan. Saya menggunakan Pisang Pi hanya karena saya punya satu tergeletak di sekitar.

Kamera web Alternatif: Gunakan kamera CSI untuk Raspberry Pi/Banana Pi/Orange Pi

Kamera Pan/tilt mount dengan sg60 servos Alternatif: 3D Print tilt/pan mount misalnya bisa menggunakan yang ini.

Bagian tercetak 3D Alternatif: Biarkan imajinasi dan bakat desain 3D memandu Anda! Juga Thingverse:)

Langkah 2: Hubungkan Motor Dengan L293D Motor Shield

Hubungkan Motor Dengan L293D Motor Shield
Hubungkan Motor Dengan L293D Motor Shield
Hubungkan Motor Dengan L293D Motor Shield
Hubungkan Motor Dengan L293D Motor Shield

Hubungkan setiap motor dengan terminal sekrup pelindung motor. Berikut diagram pengkabelan. Jika Anda hanya memiliki dua motor dan tidak ingin mengubah kodenya, pasangkan pada MOTOR 1 dan MOTOR 3.

CATATAN: Bagi mereka yang menggunakan motor yang berbeda dengan rating arus yang lebih tinggi, Anda mungkin memerlukan driver motor lain. Atau, peretasan kecil yang menyenangkan yang saya pelajari baru-baru ini adalah Anda dapat membonceng dua driver L293D lagi di atas yang sudah ada (ini adalah chip tengah di papan)!

Langkah 3: Arduino Uno, Perakitan Pelindung Motor

Arduino Uno, Perakitan Pelindung Motor
Arduino Uno, Perakitan Pelindung Motor

Masukkan Arduino Uno ke dalam case dan pasang Motor Shield di atasnya. Hanya ada satu cara untuk melakukannya, jika tidak cocok, Anda melakukan beberapa-ting wong!

Kasing Nyaman Arduino Uno

Inilah kasus yang saya gunakan, model yang dibuat oleh Esquilo.

Langkah 4: Hubungkan Daya ke Pisang Pi dan Arduino

Hubungkan Daya ke Pisang Pi dan Arduino
Hubungkan Daya ke Pisang Pi dan Arduino

Saya menggunakan antarmuka SATA untuk memberikan daya ke Banana Pi (6v). Jika Anda memiliki papan yang sama, Anda juga dapat melakukannya, pastikan tegangannya 5v-6v. Ini catu daya yang tidak diatur, jadi saya berasumsi ada sirkuit perlindungan untuk daya SATA pada Banana Pi M1.

PERHATIAN: Untuk Raspberry Pi Anda memiliki beberapa opsi: yang aman (menggunakan konektor USB untuk menyediakan 5v) dan yang tidak terlalu aman (menggunakan pin GPIO). Berikut tautan untuk membaca tentang menghubungkan daya ke pin GPIO Raspberry Pi. Pastikan Anda

1) Gunakan catu daya yang diatur

2) Atur tegangan ke 5v

Tidak ada sirkuit perlindungan untuk pin GPIO! Jika Anda melakukan kesalahan, ada kemungkinan serius untuk merusak elektronik di papan tulis.

Untuk Arduino, cukup sambungkan daya ke terminal sekrup input pada pelindung motor. Ini bisa memakan waktu hingga 12v.

Langkah 5: Masukkan Pisang Pi ke dalam Kotak Cetakan 3D, Kumpulkan Sisa Rover

Masukkan Pisang Pi ke dalam Kotak Cetakan 3D, Kumpulkan Sisa Rover
Masukkan Pisang Pi ke dalam Kotak Cetakan 3D, Kumpulkan Sisa Rover
Masukkan Pisang Pi ke dalam Kotak Cetakan 3D, Kumpulkan Sisa Rover
Masukkan Pisang Pi ke dalam Kotak Cetakan 3D, Kumpulkan Sisa Rover

Saya menggunakan kasing ini untuk Pisang Pi dari thingverse, dibuat oleh GermanRobotics. Covernya saya buat sendiri.

Masukkan Banana Pi ke dalam case, tutup dengan tutupnya, gunakan lem untuk menempelkan Arduino Uno di atas case Banana Pi.

Tutup baterai dengan penutup ini dan pasang kamera web pan/tilt mount ke atas.

Jika Anda menggunakan Banana Pi, Anda memerlukan hub USB, karena hanya memiliki dua slot USB (Raspberry 2, 3 memiliki empat). Murni karena masalah estetika, saya memutuskan untuk menggunakan hub USB OTG 1-2 dan menyembunyikan kabel di dalam kasing Pisang.

Langkah 6: Perakitan Perangkat Keras Selesai

Perakitan Perangkat Keras Selesai!
Perakitan Perangkat Keras Selesai!

Mari kita cepat meringkas apa yang telah kita lakukan sejauh ini.

Kami telah merakit platform robot, menghubungkan daya ke Banana Pi, Arduino Uno, menghubungkan motor dan servo ke driver motor dan menggunakan hub USB untuk menghubungkan kamera USB dan Arduino Uno ke Banana Pi. Sekarang Anda dapat menguji dan memecahkan masalah perangkat keras. Diagram pengkabelan yang menunjukkan semua koneksi ada dalam gambar untuk langkah ini.

Langkah 7: Konfigurasi Sistem

Sistem konfigurasi
Sistem konfigurasi

Saya menggunakan gambar Raspbian Lite untuk sistem di pi saya. Versi Lite tidak memiliki GUI, dan hanya dilengkapi dengan paket dasar per-instal. Tetapi ini membutuhkan lebih sedikit ruang, yang berarti kita dapat menggunakan kartu SD yang lebih kecil. Jika Anda tidak nyaman tanpa GUI, Anda juga dapat menginstal gambar penuh.

Hubungkan pi Anda ke Internet dengan kabel Ethernet. Setelah boot, langkah pertama adalah menghubungkannya ke Wi-Fi.

Jalankan perintah berikut di terminal

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Edit file konfigurasi dengan kredensial WiFi Anda

jaringan={ ssid="pengujian" psk="pengujianPassword" }

Nyalakan ulang pi. Voila! Anda sekarang terhubung ke Wi-Fi.

Selanjutnya kita perlu menginstal pip (Python Package Manager)

sudo apt-get install python-setuptools

sudo easy_install pip

Sekarang kita menggunakan pip untuk menginstal Flask untuk menjalankan server web dan pyserial untuk pi untuk berkomunikasi dengan Arduino melalui koneksi serial.

sudo pip install labu

sudo pip install pyserial

Hal terakhir adalah menginstal dan mengkonfigurasi paket gerak, yang kami gunakan untuk streaming video dari webcam kami.

Ikuti instruksi hebat ini untuk melakukan ini.

Sekarang kita siap untuk bergemuruh!

Langkah 8: Memulai Perangkat Lunak

Memulai Perangkat Lunak
Memulai Perangkat Lunak
Memulai Perangkat Lunak
Memulai Perangkat Lunak

Ingat bagaimana saya mengatakan kita siap untuk bergemuruh?

Oke, sedikit lagi menggiling dan kemudian kita bisa mulai bergemuruh:)

Mari unduh semua file yang diperlukan dari repositori github saya.

git clone

Unggah rover.ino ke Arduino Uno. Jika Anda membuat perubahan perangkat keras (menggunakan pelindung motor yang berbeda, misalnya), Anda perlu mengubah sketsa.

Jika Anda menggunakan web cam, ubah baris di dekat bagian bawah file index.html di folder template. Ubah URL di baris IFRAME agar sesuai dengan URL src untuk streaming video Anda.

Sekarang Anda dapat memulai server web. Jalankan perintah berikut

sudo python pi_rover.py

Jika Anda mengikuti build saya sangat dekat dan Arduino terhubung, Anda akan melihat gambar berikut (gambar pertama) di terminal.

Ketikkan alamat ip robot Anda di browser web (misalnya dalam kasus saya 192.168.1.104), Anda dapat memeriksa alamat ip dengan perintah $ifconfig di Linux.

/lakukan tarian perayaan di sini!/

Jika Anda memiliki pertanyaan, jangan ragu untuk bertanya kepada saya di komentar. Tutorial ini ditujukan untuk tingkat pemula, tetapi bukan pemula, itu sebabnya saya cukup singkat tentang hal-hal yang bisa Anda cari di Google (misalnya membakar gambar sistem ke kartu SD, mengunggah sketsa Arduino, dll).

Langkah 9: Kredit

Ide dan kode server web berasal dari instruksi hebat ini oleh jscottb. Saya memodifikasinya untuk menggunakan perangkat keras yang lebih umum, seperti Arduino Uno.

Bagian cetakan 3D dari Thingverse.

www.thingiverse.com/thing:994827

www.thingiverse.com/thing:2816536/files

www.thingiverse.com/thing:661220

Direkomendasikan: