2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
Dalam Instructable ini kami membangun robot Arcbotics Sparki yang dapat dikontrol dengan gerakan 3D. Fitur bagus dari proyek ini adalah tidak diperlukan perangkat tambahan seperti smartphone atau sarung tangan untuk mengendalikan robot. Cukup gerakkan tangan Anda di atas elektroda (area sensitif 95 x 60mm). Kit Pengembangan Hillstar MGC3130 dari Microchip digunakan untuk sistem penginderaan input gerakan 3D.
Langkah 1: Komponen Diperlukan
- Arcbotics Sparki, robot berbasis Arduino. Robot berbasis Arduino lainnya akan bekerja juga.
- Kit Pengembangan Hillstar MGC3130 dari Microchip, papan gerakan 3D lainnya, seperti Hover original atau Hover 2.0 From Hover Labs, atau Flick! juga harus bekerja.
- Beberapa bagian Knex (tidak sebanyak di gambar)
- Lakban
- Kabel jumper
Langkah 2: Perakitan
Kit gerakan Hillstar 3D terdiri dari tiga papan:
- Modul MGC3130. ini adalah unit kontrol gerakan Hillstar utama, ini menghubungkan di satu sisi ke elektroda, dan di sisi lain ke daya dan antarmuka I2C.
- Elektroda referensi empat lapis dengan area sensitif 85x60mm, di bagian bawah pelat ini adalah konektor untuk menghubungkan papan MGC3130.
- Papan jembatan I2C ke USB. Dengan board ini modul MGC3130 dapat dengan mudah dihubungkan ke PC dengan USB.
Papan jembatan I2C ke USB tidak diperlukan, karena kami menghubungkan I2C Modul MGC3130 langsung ke port Robot IO, seperti yang ditunjukkan pada diagram skema di atas.
Troli Knex kecil dibuat untuk menopang papan elektroda referensi. Papan dilekatkan ke troli dengan selotip, dan troli yang sudah selesai dilekatkan ke robot dengan Ty-wrap. Akhirnya Modul MGC3130 terhubung ke port IO robot dengan kabel jumper.
Langkah 3: Kode
Perangkat lunak ini didasarkan pada perpustakaan Hover dari Hover Labs dan dapat ditemukan di Github (https://github.com/jspark311/hover_arduino).
Di bawah ini adalah sketsa Arduino yang dapat diunduh ke Sparki.
Ada Sparki IDE khusus yang tersedia, yang disebut SparkiDuino, tetapi saya lebih suka menggunakan hanya Arduino IDE standar dan Instal perpustakaan Sparki Arduino, yang dapat diunduh dari halaman unduhan: https://arcbotics.com/downloads Tidak semudah itu sebagai SparkiDuino, dan itu tidak datang dengan penginstal drivernya sendiri (penginstal driver Sparki juga ada di halaman unduhan), tetapi menggunakan semua contoh dan kode perpustakaan yang sama dan lebih mudah dikombinasikan dengan perpustakaan lain, seperti Hover di ini kasus.
#include // sertakan perpustakaan sparki
#include #include // Deklarasi pin untuk Hover int ts = 0; int reset = 1; Arahkan kursor = Arahkan kursor(); acara byte; String keluaran_string = ""; bool driving_forward = false; batalkan pengaturan() { penundaan (4000); sparki.clearLCD(); sparki.println("Inisialisasi Arahkan Arahan… mohon tunggu."); sparki.updateLCD(); hover.begin(ts, reset); sparki.clearLCD(); sparki.println("Siap untuk Gerakan!."); sparki.updateLCD(); } void loop(void) { // Periksa apakah Hover siap untuk mengirim acara gerakan atau sentuh if (hover.getStatus(ts) == 0) { //Dapatkan acara melalui i2c dan cetak event = hover.getEvent(); //Bagian ini dapat dikomentari jika Anda tidak ingin melihat acara dalam format teks output_string = hover.getEventString(event); if (output_string != ""){ sparki.print(event); sparki.println(" = " + output_string); sparki.updateLCD(); } switch(event) { kasus 40: driving_forward = true; merusak; kasus 80: sparki.moveBackward(); merusak; kasus 36: sparki.moveLeft(); penundaan (500); sparki.moveStop(); merusak; kasus 34: sparki.moveRight(); penundaan (500); sparki.moveStop(); merusak; kasus 72: sparki.gripperOpen(); merusak; kasus 66: sparki.gripperClose(); merusak; kasus 68: sparki.servo(80); merusak; kasus 65: sparki.servo(-80); merusak; kasus 48: driving_forward = false; sparki.gripperStop(); sparki.servo(0); merusak; } if (driving_forward) { sparki.moveForward(); } else { sparki.moveStop(); } //Reset Arahkan kursor untuk acara berikutnya hover.setRelease(ts); } }
Langkah 4: Nikmati
Daftar perintah:
- Geser ke atas - maju terus
- Geser ke belakang - hentikan semua gerakan
- Geser ke kiri - belok kiri
- Geser ke kanan - belok kanan
- Ketuk atas - putar sensor 90 derajat cw
- Ketuk bagian bawah - putar sensor 90 derajat ccw
- Ketuk kiri - tutup gripper
- Ketuk kanan - buka gripper