Daftar Isi:

Mobil RC Terkendali Realitas Virtual: 9 Langkah
Mobil RC Terkendali Realitas Virtual: 9 Langkah

Video: Mobil RC Terkendali Realitas Virtual: 9 Langkah

Video: Mobil RC Terkendali Realitas Virtual: 9 Langkah
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, November
Anonim
Image
Image

Pernahkah Anda ingin mengecil dan mengemudikan pesawat seperti Innerspace atau Fantastic Voyage? Yah, saya pikir ini sedekat yang akan Anda dapatkan dalam waktu singkat!

Berikut nadanya:

Sebuah mobil remote control Real-Life dikemudikan dari konsol perintah Virtual Reality. Ini berarti Anda mengikat Headset VR, Memutar sakelar pada Mobil RC, lalu dapat mengemudikan dari VR dengan umpan video langsung langsung ke wajah Anda.

Ada beberapa hal yang saya terapkan yang dapat Anda kendalikan di Mobil VR.

  1. roda
  2. klakson
  3. lampu

Semua ini memiliki semacam tombol atau tuas di VR yang dapat Anda putar atau alihkan untuk menggerakkan mobil.

Untuk repo lengkap dan info lebih lanjut, lihat Github saya dan situs web saya!

Langkah 1: Bahan dan Alat

Bahan dan alat
Bahan dan alat
Bahan dan alat
Bahan dan alat

Mekanis:

Kit Sasis Penggerak 4 Roda

Listrik:

  • Roda Encoder
  • Baterai 3S 1300mAh
  • Arduino Uno
  • Perisai Motor Arduino
  • Bel Listrik Piezo
  • LED kecil
  • Konektor XT60
  • Konverter Boost / Buck

Komputer:

  • Semua sistem komputer tertanam: Raspberry Pi, Jetson Nano, dll.
  • Kamera USB (lebih disukai - kamera 180 derajat)

Alat / Ekstra:

  • Solder Besi
  • Beberapa Pengaturan VR - Saya memiliki Oculus Rift
  • Multimeter

Langkah 2: Bangun Mobil

Bangun Mobil
Bangun Mobil
Bangun Mobil
Bangun Mobil
Bangun Mobil
Bangun Mobil

Sasis untuk mobil sangat mudah dibuat. Anda hanya perlu memasang motor ke papan utama melalui tab yang mereka berikan kepada Anda. Setelah Anda memasang roda dan motor, Anda juga memerlukan sesuatu untuk memasang kamera ke bagian depan mobil.

Saya menggunakan kotak kardus tempat kamera masuk untuk memasangnya. Saya memotong bentuk L besar dan membuat lubang agar kamera dapat menyodok secara menyeluruh. Setelah itu, Anda cukup memasukkan kamera, dan menempelkan selotip di bagian belakang untuk menahannya. Jika mau, Anda juga bisa membuat lubang untuk lampu depan Anda sekarang juga, atau melakukannya nanti saat mengukur panjang kabel.

Anda juga perlu memasang pembuat enkode roda ke salah satu roda. Tidak masalah yang mana, saya meletakkannya di roda kiri belakang. Anda perlu meletakkan disk magnetik pada poros roda yang sebenarnya, dan encoder harus dipasang ke mobil di sebelahnya. Ini cukup reseptif, jadi tidak perlu tepat di atasnya, tetapi sedekat mungkin. Saya mengamankan encoder saya dengan selotip dan dasi. Encoder inilah yang akan kita gunakan untuk mengukur kecepatan mobil kita.

Langkah 3: Sirkuit Solder

Sirkuit Solder
Sirkuit Solder
Sirkuit Solder
Sirkuit Solder

Bagian ini agak membosankan, tetapi tidak rumit. Jika Anda mengikuti gambar, dan mengukur semuanya sebelum Anda memotong kabel Anda, itu tidak terlalu buruk.

Saat Anda melakukan ini, Anda juga harus mengkalibrasi konverter uang Anda untuk menghasilkan tegangan yang benar. Raspberry Pi dan Jetson Nano keduanya menerima 5v, tetapi baterai kami berada di 11.1v. Jadi, kita perlu memastikan bahwa kita tidak menggoreng elektronik kita. Untuk melakukan ini, colokkan baterai Anda ke sisi input konverter uang. Saat baterai dicolokkan, gunakan multimeter Anda untuk mengukur sisi keluaran konverter uang. Gunakan obeng pipih kecil untuk memutar potensiometer pada buck converter sampai tegangan output 5v. Setelah output benar, Anda tidak perlu memutar potensiometer lagi.

Langkah 4: Instal Ketergantungan pada Sistem Tertanam

Instal Ketergantungan pada Sistem Tertanam
Instal Ketergantungan pada Sistem Tertanam

Tidak terlalu banyak yang harus dilakukan di sini, tetapi masih sangat penting.

Pertama, pastikan Anda terhubung ke router yang akan Anda gunakan agar dapat terhubung secara otomatis mulai sekarang.

Kemudian, buka terminal dan ketik berikut ini:

sudo apt update

sudo apt install openssh-server

sudo apt install python-pip pip install numpy pip install opencv-python pip install pyzmq

Setelah hal-hal ini terinstal, kita perlu memastikan bahwa, tidak peduli port apa yang dicolokkan arduino, itu selalu dikenali. Jadi, kami menulis apa yang disebut aturan UDEV. Ini adalah aturan untuk sistem operasi Anda yang mengatur apa yang terjadi saat Anda mencolokkan sesuatu. Kami ingin mengidentifikasi arduino saat dicolokkan, dan memberinya nama untuk mengaksesnya. Nama itu akan menjadi "arduino_0". Untuk melakukan ini, kami akan menggunakan nomor seri internal arduino untuk mengidentifikasinya.

udevadm info -a -n /dev/ttyUSB1 | grep '{serial}' | kepala -n1

Ini akan mengeluarkan nilai untuk nomor seri, lanjutkan dan salin nilai itu.

Kami kemudian perlu mengedit (atau membuat jika tidak ada) file bernama "99-usb-serial.rules". File ini berada di jalur file berikut "/etc/udev/rules.d/99-usb-serial.rules". Seperti yang saya sebutkan, jika file itu tidak ada, buat saja dan rekatkan di baris berikut dengan VALUE_FROM_ABOVE diganti dengan nilai Anda dari sebelumnya.

SUBSYSTEM=="tty", ATTRS{serial}=="VALUE_FROM_ABOVE", SYMLINK+="arduino_0"

Ini memberitahu sistem operasi bahwa setiap kali melihat nomor seri tertentu untuk menyebutnya arduino_0.

Hal terakhir yang harus dilakukan di sini adalah mengunduh pushArucoVideoPullCommands.py dan meletakkannya di tempat yang mudah diakses. Saya akan merekomendasikan direktori home untuk pengguna Anda, karena di situlah kita akan berakhir ketika kita SSH ke sistem tertanam nanti.

Langkah 5: Atur Alamat IP Statis

Atur Alamat IP Statis
Atur Alamat IP Statis

Sekarang adalah bagian yang disukai semua orang, pengalamatan IP. Agar proyek ini berfungsi, kode perlu mengetahui ke mana harus mengirim gambar dan mengontrol perintah, dan itu berarti perangkat kita memerlukan IP statis.

Ada banyak cara untuk menetapkan IP statis perangkat Anda, tetapi, karena kami memiliki router yang menghubungkan stasiun bumi dan sistem tertanam kami, kami dapat menggunakannya untuk memberi kami alamat IP tertentu dengan sangat mudah.

Arahkan ke bagian admin router Anda, biasanya (untuk sebagian besar router) ini dilakukan dengan membuka browser web dan masuk ke "192.168.1.1". Ini akan meminta Anda untuk masuk, dan nama pengguna dan kata sandi standar untuk sebagian besar router adalah "admin".

Sesampai di sana, navigasikan ke sesuatu yang menyebutkan 'DHCP Server . Ini adalah proses yang berjalan di router Anda dan melacak perangkat apa yang terhubung dengannya dengan Alamat MAC mereka, yang selalu konstan. Kami ingin memilih perangkat yang kami pedulikan tentang, komputer stasiun bumi dan sistem tertanam, dan menambahkannya ke bagian klien yang dicadangkan. Ini akan memberi mereka ip statis setiap kali mereka terhubung ke router ini.

Pastikan Anda menyetel IP Sistem Tertanam ke 192.168.1.122 IP stasiun bumi dapat disetel ke apa saja.

Langkah 6: Unggah Kode ke Arduino

Unggah Kode ke Arduino
Unggah Kode ke Arduino

Untuk mengunggah kode arduino, pertama-tama kita harus menginstal perpustakaan untuk bekerja dengan pelindung motor.

Pada Arduino IDE Anda, buka Sketch->Include Library->Manage Libraries… Kemudian, cari Adafruit Motor Shield Library. Instal perpustakaan ini, lalu unggah kode ke arduino Anda, tidak ada lagi yang diperlukan.

Langkah 7: Pasang Sirkuit & Komputer ke Mobil

Pasang Sirkuit & Komputer ke Mobil
Pasang Sirkuit & Komputer ke Mobil

Sekarang setelah sirkuit dibangun, saatnya untuk meletakkan semuanya di mobil. Saya tidak akan berbohong, banyak hal ini hanya ditahan dengan selotip karena itulah yang paling mudah bagi saya untuk menampar bersama dengan sangat cepat. Yang sedang berkata, telah dipasang lubang pemasangan seperti yang terlihat pada gambar di atas.

Sebagian besar barang cukup mudah untuk diletakkan di suatu tempat di atas mobil, jadi, jangan khawatir jika tidak ada banyak ruang.

Langkah 8: Siapkan Lingkungan VR

Siapkan Lingkungan VR
Siapkan Lingkungan VR

Bagian ini akan terlihat sedikit berbeda tergantung pada jenis pengaturan VR yang Anda lakukan. Apa pun masalahnya, saya menggunakan SteamVR untuk mengembangkan perangkat lunak ini, jadi Anda mungkin perlu menginstalnya.

Selama Anda menggunakan SteamVR, kontrol harus beradaptasi dengan pengontrol yang berbeda. Saya telah memetakan kontrol ke "Tindakan" belum tentu tombol, jadi, secara teori, itu akan beradaptasi untuk semua orang.

Anda hanya perlu mengunduh dan meng-unzip file dengan dunia build Unity dan siap menjalankan VR_Bot.exe.

Langkah 9: Jalankan Semuanya Bersama

Jalankan Semuanya Bersama
Jalankan Semuanya Bersama
Jalankan Semuanya Bersama
Jalankan Semuanya Bersama

Jadi, sekarang setelah kita menyiapkan mobil, dan stasiun bumi terhubung dan siap untuk digunakan, bagaimana kita sebenarnya menjalankan anak nakal ini? Nah, dari sudut pandang Ground Station, yang harus Anda lakukan adalah menjalankan file VR_Bot.exe yang kita lihat sebelumnya.

Pada saat yang sama, Anda harus mencolokkan baterai ke Sistem Tertanam, dan membuatnya secara otomatis boot dan terhubung ke router Anda. Setelah boot, SSH ke dalamnya. Untuk mengakses ini, Anda memerlukan semacam terminal di stasiun bumi, saya sarankan GitBash.

SSH adalah singkatan dari Secure Shell dan merupakan protokol untuk mengakses sistem jarak jauh dengan aman. Dalam kasus kami, itu akan memberi kami akses ke Sistem Tertanam dari Stasiun Bumi. Klik Di Sini untuk mempelajari lebih lanjut.

Anda perlu mengetahui nama pengguna yang Anda gunakan untuk mengatur sistem tertanam Anda. Untuk raspberry pi, nama pengguna default adalah 'pi' dan kata sandi 'raspberry'.

Setelah terinstal, buka terminal dan ketik berikut ini:

ssh {Nama pengguna Sistem Tertanam}@192.168.1.122

Ini akan membuka terminal di Sistem Tertanam.

Sesampai di sana, Anda hanya perlu menjalankan skrip python yang kami salin sebelumnya.

python /path/to/pushArucoVideoPullCommands.py

Setelah Anda melakukannya, Sistem Tertanam akan mulai memompa gambar dan menerima perintah ke dan dari stasiun bumi.

Anda kemudian baik untuk mulai mengemudi dan bersenang-senang!

Direkomendasikan: