Daftar Isi:
- Langkah 1: Merakit Sasis Robot
- Langkah 2: Kawat Elektronik
- Langkah 3: Buat Diagram Blok di Vivado
- Langkah 4: Atur Lingkungan Pengembangan Perangkat Lunak
- Langkah 5: Ubah Program Demo
- Langkah 6: Flash Firmware ke QSPI
- Langkah 7: Konfigurasikan Titik Akses Nirkabel
- Langkah 8: Jalankan Program Java
- Langkah 9: Kalibrasi Rangefinder
- Langkah 10: Aksesibilitas
Video: WiBot: 10 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Instruksi ini merinci proses pembuatan robot Wi-Fi di platform ZYBO. Proyek ini menggunakan sistem operasi real-time untuk deteksi objek, pengukuran jarak, dan kontrol responsif. Panduan ini akan mencakup antarmuka ZYBO dengan periferal, menjalankan firmware khusus, dan berkomunikasi melalui aplikasi Java. Berikut ini adalah daftar semua komponen utama yang diperlukan untuk proyek ini:
- 1 Dewan Pengembangan ZYBO
- 1 Router Nirkabel TL-WR802N
- 1 Sasis Bayangan
- 2 Roda 65mm
- 2 Gearmotor 140rpm
- 2 Wheel Encoder
- 1 Sensor Ultrasonik HC-SR04
- 1 Konverter Level Logika BSS138
- 1 L293 H-Bridge Driver Motor
- 1 Konverter 12V ke 5V DC/DC
- Baterai LiPo 1 2200mAh
- 1 Kabel Ethernet
- 1 Kabel Mikro-B USB
- 1 Konektor XT60 Wanita
- 2 Kabel Jumper Pria-ke-Wanita
- 30 Kabel Jumper Pria-ke-Pria
- 2 10kΩ Resistor
- 1 papan tempat memotong roti
Selain itu, perangkat lunak berikut harus diinstal pada komputer target:
- Xilinx Vivado Design Suite 2018.2
- Rajin Mahir 2.19.2
- FreeRTOS 10.1.1
- Kit Pengembangan Java SE 8.191
Langkah 1: Merakit Sasis Robot
Pasang sasis bayangan dan pasang gearmotors dan encoder ke rangka bawah. ZYBO, papan tempat memotong roti, dan sensor ultrasonik dapat dipasang dengan bagian yang disediakan yang dapat dicetak 3D dan dipasang pada sasis menggunakan penyangga dan selotip dua sisi. Baterai harus dipasang di dekat bagian belakang robot dan sebaiknya di antara bagian atas dan bingkai bawah. Pasang router dekat dengan ZYBO dan konverter DC/DC dekat dengan papan tempat memotong roti. Pasang roda ke gearmotors di bagian paling akhir.
Langkah 2: Kawat Elektronik
Hubungkan input dan output dari konverter DC/DC masing-masing ke dua rel daya pada papan tempat memotong roti. Ini akan berfungsi sebagai pasokan 12V dan 5V untuk sistem. Hubungkan ZYBO ke rel 5V seperti yang ditunjukkan pada gambar. Gunakan kabel suplai USB Micro-B untuk menghubungkan router ke rel 5V juga. Kabel XT60 harus dipasang ke rel 12V. Jangan mencolokkan baterai sampai perangkat elektronik lainnya terhubung dengan benar. Sensor ultrasonik harus disambungkan ke rel 5V. Buat rel 3.3V di papan tempat memotong roti menggunakan pin 6 dari port Pmod JC pada ZYBO. Input tegangan tinggi dari konverter logika harus disambungkan ke rel 5V sedangkan input tegangan rendah dari konverter logika harus disambungkan ke rel 3.3V. Hubungkan encoder motor ke rel 3.3V. Hubungkan VCC1 driver motor ke rel 5V dan hubungkan VCC2 ke rel 12V. Ikat semua pin EN ke 5V dan arde semua pin GND.
Hubungkan pin TRIG dan ECHO dari sensor ultrasonik masing-masing ke HV1 dan HV2 dari konverter logika. LV1 harus disambungkan ke JC4 dan LV2 harus disambungkan ke JC3. Lihat bagan untuk pinout Pmod. Hubungkan motor ke driver motor. Y1 harus dihubungkan ke terminal positif motor kanan dan Y2 harus dihubungkan ke terminal negatif motor kanan. Demikian pula, Y3 harus dihubungkan ke terminal positif motor kiri dan Y4 harus dihubungkan ke terminal negatif motor kiri. A1, A2, A3, dan A4 masing-masing harus dipetakan ke JB2, JB1, JB4, dan JB3. Lihat skema untuk nomor pin. Hubungkan JC2 ke encoder kanan dan JC1 ke encoder kiri. Pastikan resistor pull-up digunakan untuk mengikat sinyal ini ke rel 3.3V. Terakhir, gunakan kabel ethernet untuk menghubungkan ZYBO ke router.
Langkah 3: Buat Diagram Blok di Vivado
Buat proyek RTL baru di Vivado. Pastikan untuk tidak menentukan sumber apa pun saat ini. Cari "xc7z010clg400-1" dan tekan finish. Unduh encoder_driver.sv dan ultrasonic_driver.sv. Tempatkan mereka di folder mereka sendiri. Buka IP Packager di bawah "Tools" dan pilih untuk mengemas direktori tertentu. Rekatkan jalur ke folder yang berisi driver encoder dan tekan "Berikutnya". Klik "paket IP" dan ulangi proses untuk driver sensor ultrasonik. Setelah itu, navigasikan ke manajer repositori di bawah subbagian IP di menu pengaturan. Tambahkan path ke folder driver dan tekan apply untuk memasukkannya ke dalam pustaka IP.
Buat diagram blok baru dan tambahkan "ZYNQ7 Processing System". Klik dua kali blok dan impor file ZYBO_zynq_def.xml yang disediakan. Di bawah "MIO Configuration", aktifkan Timer 0 dan GPIO MIO. tekan "OK" untuk menyimpan konfigurasi. Tambahkan 3 blok "AXI GPIO" dan 4 blok "AXI Timer". Jalankan otomatisasi blok diikuti dengan otomatisasi koneksi untuk S_AXI. Klik dua kali blok GPIO untuk mengonfigurasinya. Satu blok harus saluran ganda dengan input 4-bit dan output 4-bit. Buat koneksi ini eksternal dan beri label SW untuk input dan LED untuk output. Blok kedua juga harus saluran ganda dengan 2 input 32-bit. Blok GPIO terakhir akan menjadi input 32-bit tunggal. Jadikan output pwm0 dari setiap blok timer eksternal. Beri label PWM0, PWM1, PWM2, dan PWM3.
Tambahkan driver encoder ke diagram blok dan hubungkan CLK ke FCLK_CLK0. Hubungkan OD0 dan OD1 ke saluran input blok GPIO kedua. Jadikan ENC eksternal dan ganti nama ENC_0 menjadi ENC. Tambahkan blok sensor ultrasonik dan sambungkan CLK ke FCLK_CLK0. Jadikan TRIG dan ECHO eksternal dan ganti nama TRIG_0 menjadi TRIG dan ECHO_0 menjadi ECHO. Hubungkan RF ke blok GPIO ketiga. Lihat diagram blok yang disediakan untuk referensi.
Klik kanan file diagram blok Anda di panel Sumber dan buat pembungkus HDL. Pastikan untuk mengizinkan pengeditan pengguna. Tambahkan file ZYBO_Master.xdc yang disediakan sebagai kendala. Tekan "Hasilkan Bitstream" dan istirahatlah untuk minum kopi.
Langkah 4: Atur Lingkungan Pengembangan Perangkat Lunak
Buka "File" untuk mengekspor perangkat keras ke Vivado SDK. Pastikan untuk menyertakan bitstream. Impor proyek RTOSDemo di dalam "CORTEX_A9_Zynq_ZC702". Itu akan terletak di dalam direktori instalasi FreeRTOS. Buat Paket Dukungan Dewan baru pilih perpustakaan lwip202. Ubah BSP yang direferensikan dalam proyek RTOSDemo ke BSP yang baru saja Anda buat*.
*Pada saat penulisan Instruksi ini, FreeRTOS tampaknya memiliki bug dengan mereferensikan BSP yang benar. Untuk mengatasinya, buat BSP baru dengan pengaturan yang sama seperti yang pertama. Ubah BSP yang direferensikan ke yang baru dan kemudian ubah kembali ke yang lama setelah gagal dibangun. FreeRTOS sekarang harus dikompilasi tanpa kesalahan. Jangan ragu untuk menghapus BSP yang tidak digunakan.
Langkah 5: Ubah Program Demo
Buat folder baru bernama "driver" di bawah direktori "src" RTOSDemo. Salin gpio.h yang disediakan. gpio.c, pwm.h, pwm.c, odometer.h, odometer.c, rangefinder.c, rangefinder.h, motor.h, dan motor.c ke dalam direktori "drivers".
Buka main.c dan atur mainSELECTED_APPLICATION ke 2. Ganti main_lwIP.c di bawah "lwIP_Demo" dengan versi yang diperbarui. BasicSocketCommandServer.c di bawah "lwIP_Demo/apps/BasicSocketCommandServer" juga harus diperbarui dengan versi baru. Terakhir, navigasikan ke "FreeRTOSv10.1.1/FreeRTOS-Plus/Demo/Common/FreeRTOS_Plus_CLI_Demos" dan ganti Sample-CLI-commands.c dengan versi yang disediakan. Bangun proyek dan pastikan semuanya berhasil dikompilasi.
Langkah 6: Flash Firmware ke QSPI
Buat Proyek Aplikasi baru bernama "FSBL" menggunakan template "Zynq FSBL". Setelah mengkompilasi proyek FSBL, buat gambar boot dari proyek RTOSDemo. Pastikan "FSBL/Debug/FSBL.elf" dipilih sebagai bootloader di bawah "Boot image partitions". Tambahkan jalur ke file ini secara manual jika tidak terdaftar.
Pindahkan jumper JP5 pada ZYBO ke "JTAG". Gunakan kabel USB Micro-B untuk menghubungkan komputer Anda ke ZYBO. Hubungkan baterai dan nyalakan ZYBO. Jalankan Adept untuk memastikan ZYBO diidentifikasi dengan benar oleh komputer. Klik "Program Flash" di Vivado SDK dan berikan jalur ke file BOOT.bin di RTOSDemo dan file FSBL.elf di FSBL. Pastikan untuk memilih "Verifikasi setelah flash" sebelum menekan "Program". Tonton konsol untuk memastikan operasi flashing berhasil diselesaikan. Setelah itu, matikan ZYBO dan lepaskan kabel USB. Pindahkan jumper JP5 ke "QSPI".
Langkah 7: Konfigurasikan Titik Akses Nirkabel
Dengan baterai masih terhubung, sambungkan ke jaringan Wi-Fi router. SSID dan kata sandi default harus berada di bagian bawah router. Setelah itu, navigasikan ke https://tplinkwifi.net dan login menggunakan "admin" untuk nama pengguna dan kata sandi. Jalankan wizard pengaturan cepat untuk mengkonfigurasi router dalam mode titik akses dengan DHCP diaktifkan. Pastikan untuk memperbarui nama pengguna dan kata sandi default untuk perangkat juga. Router akan secara otomatis reboot ke mode titik akses setelah Anda selesai.
Nyalakan ZYBO dan sambungkan ke router menggunakan SSID yang Anda tetapkan. Router kemungkinan besar akan muncul di alamat IP 192.168.0.100 atau 192.160.0.101. ZYBO akan diberikan alamat mana pun yang tidak dimiliki router. Untuk menentukan alamat IP router dengan cepat, Anda dapat menjalankan "ipconfig" dari command prompt di windows atau "ifconfig" dari terminal di Linux atau MacOS. Jika Anda masih terhubung ke router, Anda akan melihat alamat IP-nya ditampilkan di sebelah antarmuka nirkabel Anda. Gunakan informasi ini untuk menentukan alamat IP ZYBO. Untuk mengonfirmasi alamat IP ZYBO, Anda dapat melakukan ping dari baris perintah atau menghubungkannya melalui telnet.
Langkah 8: Jalankan Program Java
Unduh RobotClient.java dan kompilasi file menggunakan perintah "javac RobotClient.java" dari baris perintah. Jalankan perintah "java RobotClient" di mana "ip_address" adalah alamat IP ZYBO. GUI kontrol akan muncul jika koneksi berhasil dibuat antara komputer dan ZYBO. Setelah memfokuskan jendela, robot harus dapat dikontrol menggunakan tombol panah pada keyboard. Tekan tombol escape untuk mengakhiri sesi dan memutuskan sambungan dari robot.
GUI akan menyorot tombol yang ditekan dan menampilkan output motor di kanan atas. Pengukur jarak di sebelah kiri mengisi bar setiap 2 meter hingga maksimum 10 meter.
Langkah 9: Kalibrasi Rangefinder
Sakelar onboard ZYBO dapat digunakan untuk mengkonfigurasi pengintai onboard. Jarak deteksi minimum d diberikan sebagai fungsi dari input sakelar i:
d = 50i + 250
Input dapat bervariasi antara 0 hingga 15 dalam langkah bilangan bulat. Ini diterjemahkan menjadi rentang jarak 0,25 meter hingga 1 meter. Pada jarak minimum, LED pertama akan mulai berkedip. Jumlah LED yang aktif sebanding dengan kedekatan objek.
Langkah 10: Aksesibilitas
Robot ini sangat mudah diakses. Karena kesederhanaan kontrolnya, ia dapat dikontrol sepenuhnya hanya dengan satu jari. Untuk meningkatkan aksesibilitas, dukungan untuk perangkat input tambahan dapat ditambahkan. Ini dapat memungkinkan penggunaan yang dinonaktifkan untuk mengontrol robot dengan bagian tubuh yang berbeda.
Direkomendasikan:
Pemegang Gambar Dengan Speaker Internal: 7 Langkah (dengan Gambar)
Picture Holder Dengan Built-in Speaker: Ini adalah proyek yang bagus untuk dilakukan selama akhir pekan, jika Anda ingin membuat speaker Anda sendiri yang dapat menampung gambar/kartu pos atau bahkan daftar tugas Anda. Sebagai bagian dari pembangunan kita akan menggunakan Raspberry Pi Zero W sebagai jantung dari proyek, dan sebuah
Howto: Instalasi Raspberry PI 4 Headless (VNC) Dengan Rpi-imager dan Gambar: 7 Langkah (dengan Gambar)
Cara: Memasang Raspberry PI 4 Headless (VNC) Dengan Rpi-imager dan Gambar: Saya berencana untuk menggunakan Rapsberry PI ini dalam banyak proyek menyenangkan di blog saya. Jangan ragu untuk memeriksanya. Saya ingin kembali menggunakan Raspberry PI saya tetapi saya tidak memiliki Keyboard atau Mouse di lokasi baru saya. Sudah lama sejak saya menyiapkan Raspberry
Pengenalan Gambar Dengan Papan K210 dan Arduino IDE/Micropython: 6 Langkah (dengan Gambar)
Pengenalan Gambar Dengan Papan K210 dan Arduino IDE/Micropython: Saya sudah menulis satu artikel tentang cara menjalankan demo OpenMV di Sipeed Maix Bit dan juga membuat video demo deteksi objek dengan papan ini. Salah satu dari banyak pertanyaan yang diajukan orang adalah - bagaimana saya bisa mengenali objek yang jaringan sarafnya tidak
Luncurkan Slideshow Gambar Liburan Anda Dengan Sentuhan Ajaib !: 9 Langkah (dengan Gambar)
Luncurkan Slideshow Gambar Liburan Anda Dengan Sentuhan Ajaib !: Selama bertahun-tahun, saya telah mengembangkan kebiasaan membawa patung kecil saat bepergian: Saya sering membeli seni kecil kosong (seperti yang ada di gambar) dan melukis agar sesuai dengan bendera dan tema negara yang saya kunjungi (dalam hal ini, Sisilia). T
Cara Membongkar Komputer Dengan Langkah Mudah dan Gambar: 13 Langkah (dengan Gambar)
Cara Membongkar Komputer Dengan Langkah Mudah dan Gambar: Ini adalah instruksi tentang cara membongkar PC. Sebagian besar komponen dasar bersifat modular dan mudah dilepas. Namun penting bahwa Anda diatur tentang hal itu. Ini akan membantu Anda agar tidak kehilangan bagian, dan juga dalam membuat