Daftar Isi:
- Langkah 1: Bagian
- Langkah 2: PROTOTIPE
- Langkah 3: SARUNG TANGAN
- Langkah 4: KOTAK TRANSMITTER
- Langkah 5: KOTAK KONTROL LENGAN
- Langkah 6: TUGAS PIN
- Langkah 7: KOMUNIKASI
- Langkah 8: SKETSA dan Lainnya…
- Langkah 9: APA LAGI?
- Langkah 10: *** KITA MENANG !!! ***
Video: Lambaikan Tangan Anda untuk Mengontrol Lengan Robot OWI Tanpa Tali: 10 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
IDE:
Setidaknya ada 4 proyek lain di Instructables.com (per 13 Mei 2015) seputar memodifikasi atau mengendalikan Lengan Robot OWI. Tidak mengherankan, karena ini adalah kit robot yang hebat dan murah untuk dimainkan. Proyek ini serupa dalam semangat (yaitu, mengontrol Lengan Robot dengan Arduino), tetapi berbeda dalam pendekatannya. [video]
Idenya adalah untuk dapat mengontrol Lengan Robot secara nirkabel menggunakan gerakan. Juga, saya mencoba untuk meminimalkan modifikasi Lengan Robot, sehingga masih dapat digunakan dengan pengontrol asli.
Kedengarannya sederhana.
Apa yang akhirnya menjadi proyek tiga bagian:
- Sarung tangan yang dilengkapi dengan sensor yang cukup untuk mengontrol LED dan 5 motor
- Perangkat pemancar berbasis Arduino Nano untuk menerima perintah kontrol dari sarung tangan dan mengirimkannya secara nirkabel ke perangkat pengontrol Arm
- Penerima nirkabel berbasis Arduino Uno dan perangkat kontrol motor yang terpasang pada Lengan Robot OWI
FITUR
- Dukungan untuk semua 5 Derajat Kebebasan (DOF) dan LED
- Tombol Merah Besar - untuk segera menghentikan motor di Lengan mencegah kerusakan
- Desain modular portabel
Untuk pengguna seluler: "video promosi" proyek ini ada di YouTube di sini.
Langkah 1: Bagian
SARUNG TANGAN:
Anda memerlukan yang berikut ini untuk membuat pengontrol sarung tangan:
- Sarung Tangan Isoton Smartouch Tech Stretch Stitched (atau serupa) - di Amazon.com
- Spectra Symboflex Sensor 2.2" - di Amazon.com
- GY-521 6DOF MPU6050 3 Sumbu Giroskop + Modul Akselerometer - di Fasttech.com
- KEPALA KOTAK 2X5 LURUS - di Phoenixent.com
- 2X5 IDC SOCKET-RECEPTACLE - di Phoenixent.com
- FLAT RIBBON CABLE 10 Konduktor.050" Pitch - di Phoenixent.com
- 2 x 5mm LED - Hijau dan Kuning
- 2 x Tombol Kecil
- Resistor, kabel, jarum, benang hitam, lem, pistol solder, solder, dll.
TRANSMISI STRAP-ON BOX:
- Papan Nano Kompatibel Arduino v3.0 ATmega328P-20AU - di Fasttech.com
- nRF24L01+ 2.4GHz Wireless Transceiver Arduino Kompatibel - di Amazon.com
- GELANG Gymboss - di Amazon.com
- Kotak Tempat Baterai 9V dengan Sakelar ON/OFF Kawat Lead - di Amazon.com
- KEPALA KOTAK 2X5 LURUS - di Phoenixent.com
- baterai 9v
- Kapasitor 47uF (50v)
- Resistor, kabel, lem, pistol solder, solder, dll.
KOTAK PENGENDALI LENGAN ROBOTIK OWI:
- Papan Pengembangan Uno R3 Rev3 yang Kompatibel dengan Arduino - di Fasttech.com
- Prototype Shield DIY KIT untuk Arduino (atau serupa) - di Amazon.com
- nRF24L01+ 2.4GHz Wireless Transceiver Arduino Kompatibel - di Amazon.com
- 3 x L293D 16-pin Driver Motor IC Sirkuit Terpadu - di Fasttech.com
- 1 x SN74HC595 74HC595 8-Bit Shift Register Dengan 3-State Output Register DIP16 - di Amazon.com
- Kapasitor 47uF (50v)
- Kotak untuk Arduino - di Amazon.com
- Sakelar Nyala/Mati
- Tombol 2 x 13mm (satu tutup Merah dan satu tutup Hijau)
- 2 x 2X7 KOTAK HEADER LURUS - sama seperti di atas di Phoenixent.com
- FLAT RIBBON CABLE 14 Konduktor.050" Pitch - sama seperti di atas di Phoenixent.com
- Baterai 9v + konektor clip-on
- Resistor, kabel, lem, pistol solder, solder, dll.
… dan tentu saja:
OWI Robotic Arm Edge - Lengan robot - OWI-535 - di Adafruit.com
Langkah 2: PROTOTIPE
Saya sangat menyarankan membuat prototipe masing-masing perangkat pengontrol sebelum menyolder semua komponen bersama-sama.
Proyek ini menggunakan beberapa perangkat keras yang menantang:
nRF24L01
Butuh beberapa saat untuk membuat kedua nRF24 berbicara satu sama lain. Rupanya baik Nano, maupun Uno tidak memberikan cukup daya 3.3v yang stabil agar modul dapat bekerja secara konsisten. Solusi dalam kasus saya adalah kapasitor 47uF melintasi pin daya pada kedua modul nRF24. Ada juga beberapa keanehan dengan menggunakan perpustakaan RF24 dalam mode IRQ dan non-IRQ, jadi saya sarankan untuk mempelajari contoh dengan sangat hati-hati.
Beberapa sumber daya yang bagus:
nRF24L01 Daya sangat rendah 2.4GHz RF Transceiver IC Halaman Produk
Halaman perpustakaan driver RF24
Googling saja nRF24 + arduino akan menghasilkan banyak tautan. Ini layak untuk diteliti
DAFTAR SHIFT 74HC595
Tidak mengherankan harus mengendalikan 5 motor, LED, dua tombol dan modul Nirkabel saya kehabisan pin pada Uno relatif cepat. Cara terkenal untuk "memperpanjang" jumlah pin Anda adalah dengan menggunakan register geser. Karena nRF24 sudah menggunakan antarmuka SPI, saya memutuskan untuk menggunakan SPI untuk pemrograman register geser juga (untuk kecepatan dan untuk menghemat pin) alih-alih fungsi shiftout(). Yang mengejutkan saya, itu bekerja seperti pesona sejak pertama kali. Anda dapat memeriksanya di tugas pin dan di sketsa.
Papan tempat memotong roti dan kabel jumper adalah teman Anda.
Langkah 3: SARUNG TANGAN
OWI Robotic ARM memiliki 6 item untuk dikendalikan (OWI Robotic Arm Edge Picture)
- LED yang terletak di GRIPPER perangkat
- Seorang GRIPPER
- PERGELANGAN
- ELBOW - adalah bagian dari lengan robot yang terpasang pada WRIST
- SHOULDER adalah bagian dari lengan robot yang melekat pada BASE
- DASAR
Sarung tangan ini dirancang untuk mengontrol LED Lengan Robot dan semua 5 motor (Derajat Kebebasan).
Saya memiliki sensor individu yang ditandai pada gambar serta deskripsi di bawah ini:
- GRIPPER dikendalikan oleh tombol yang terletak di jari tengah dan kelingking. Gripper ditutup dengan menekan jari telunjuk dan jari tengah secara bersamaan. Gripper dibuka dengan menekan ring dan kelingking secara bersamaan.
- WRIST dikendalikan oleh resistor fleksibel pada pencari indeks. Melingkarkan jari setengah membuat pergelangan tangan turun, dan mengeriting sepanjang jalan membuat pergelangan tangan naik. Menjaga jari telunjuk tetap lurus menghentikan pergelangan tangan.
- ELBOW dikendalikan oleh accelerometer - memiringkan telapak tangan ke atas dan ke bawah menggerakkan siku ke atas dan ke bawah masing-masing
- Bahu dikendalikan oleh akselerometer - memiringkan telapak tangan ke kanan dan ke kiri (meskipun tidak terbalik!) menggerakkan bahu ke atas dan ke bawah masing-masing
- BASE juga dikendalikan oleh accelerometer, mirip dengan bahu - memiringkan telapak tangan ke kanan dan ke kiri sepenuhnya terbalik (telapak menghadap ke atas) masing-masing menggerakkan alas ke kanan dan kiri
- LED pada gripper dinyalakan/dimatikan dengan menekan kedua tombol kontrol gripper secara bersamaan.
Semua respons tombol ditunda 1/4 detik untuk menghindari jitter.
Merakit sarung tangan membutuhkan beberapa penyolderan dan banyak menjahit. Pada dasarnya hanya memasang 2 tombol, resistor fleksibel, modul Accel/Gyro ke kain sarung tangan dan kabel perutean ke kotak konektor.
Dua LED pada kotak koneksi adalah:
- HIJAU - hidupkan
- KUNING - berkedip saat data dikirim ke kotak kontrol lengan.
Langkah 4: KOTAK TRANSMITTER
Kotak pemancar pada dasarnya adalah Arduino Nano, modul nirkabel nRF24, konektor kabel fleksibel dan 3 resistor: 2 resistor 10 kOhm pull-down untuk tombol kontrol gripper pada sarung tangan, dan resistor pembagian tegangan 20 kOhm untuk sensor fleksibel yang mengontrol pergelangan tangan.
Semuanya disolder bersama di papan vero. Perhatikan bahwa nRF24 "menggantung" di atas Nano. Saya khawatir ini dapat menyebabkan gangguan, tetapi berhasil.
Menggunakan baterai 9v membuat bagian strap-on agak besar, tapi saya tidak ingin main-main dengan baterai LiPo. Mungkin nanti.
Silakan lihat langkah penetapan pin untuk instruksi penyolderan
Langkah 5: KOTAK KONTROL LENGAN
Kotak kontrol lengan didasarkan pada Arduino Uno. Ia menerima perintah dari sarung tangan secara nirkabel melalui modul nRF24, dan mengontrol Lengan Robotoc OWI melalui 3 chip driver L293D.
Karena hampir semua pin Uno digunakan, ada banyak kabel di dalam kotak - hampir tidak menutup!
Secara desain, kotak mulai dalam mode MATI (seolah-olah tombol berhenti merah ditekan), memberikan waktu kepada operator untuk mengenakan sarung tangan dan bersiap-siap. Setelah siap, operator menekan tombol hijau, dan sambungan antara sarung tangan dan kotak kontrol harus segera dibuat (seperti yang ditunjukkan oleh LED kuning pada sarung tangan dan LED merah pada kotak kontrol).
MENGHUBUNGKAN KE OWI
Sambungan ke lengan robot dilakukan melalui header baris ganda 14 pin (sesuai gambar di atas) melalui kabel datar 14 kawat.
- Sambungan LED ke ground bersama (-) dan pin arduino A0 melalui resistor 220 Ohm
- Semua kabel motor terhubung ke pin L293D 3/6, atau 11/14 (+/- masing-masing). Setiap L293D mendukung 2 motor, karenanya dua pasang pin.
- Saluran listrik OWI adalah pin paling kiri (+6v) dan paling kanan (GND) dari konektor 7 pin di bagian belakang bagian atas berwarna kuning. (Anda dapat melihat kabel terpasang pada gambar di atas). Keduanya terhubung ke pin 8 (+) dan 4, 5, 12, 13 (GND) pada ketiga L293D.
Silakan lihat sisa penetapan pin pada langkah berikutnya
Langkah 6: TUGAS PIN
NANO:
- 3.3v - 3.3v ke chip nRF24L01 (pin 2)
- 5v - 5v ke papan Akselerometer, tombol, sensor fleksibel
- a0 - masukan resistor fleksibel
- a1 - kontrol LED "komunikasi" kuning
- a4 - SDA ke akselerometer
- a5 - SCL ke akselerometer
- d02 - chip nRF24L01 Pin interupsi (pin 8)
- d03 - buka input tombol gripper
- d04 - tutup input tombol gripper
- d09 - Pin SPI CSN ke chip nRF24L01 (pin 4)
- d10 - Pin SPI CS ke chip nRF24L01 (pin 3)
- d11 - chip SPI MOSI ke nRF24L01 (pin 6)
- d12 - chip SPI MISO ke nRF24L01 (pin 7)
- d13 - SPI SCK ke nRF24L01 chip (pin 5)
- Vin - 9v +
- GND - kesamaan
UN:
- 3.3v - 3.3v ke chip nRF24L01 (pin 2)
- 5v - 5v ke tombol
- Vin - 9v +
- GND - kesamaan
- a0 - LED Pergelangan Tangan +
- a1 - Pin SPI SS untuk Shift Register Select - untuk pin 12 pada Shift Register
- a2 - masukan tombol MERAH
- a3 - masukan tombol HIJAU
- a4 - arah dasar kanan - pin 15 pada L293D
- a5 - led komunikasi
- d02 - nRF24L01 masukan IRQ (pin 8)
- d03 - aktifkan basis servo (pwm) pin 1 atau 9 pada L293D
- d04 - arah dasar kiri - pin 10 pada masing-masing L293D
- d05 - mengaktifkan servo bahu (pwm) pin 1 atau 9 pada L293D
- d06 - aktifkan siku servo (pwm) pin 1 atau 9 pada L293D
- d07 - Pin CSN SPI ke chip nRF24L01 (pin 4)
- d08 - Pin SPI CS ke chip nRF24L01 (pin 3)
- d09 - mengaktifkan servo pergelangan tangan (pwm) pin 1 atau 9 pada L293D
- d10 - aktifkan gripper servo (pwm) pin 1 atau 9 pada L293D
- d11 - SPI MOSI ke chip nRF24L01 (pin 6) dan pin 14 pada Shift Register
- d12 - chip SPI MISO ke nRF24L01 (pin 7)
- d13 - SPI SCK ke chip nRF24L01 (pin 5) dan pin 11 pada Shift Register
SHIFT DAFTAR DAN L293Ds:
- pin QA (15) dari 74HC595 ke pin 2 dari L293D #1
- pin QB (1) dari 74HC595 ke pin 7 dari L293D #1
- pin QC (2) dari 74HC595 ke pin 10 dari L293D #1
- pin QD (3) dari 74HC595 ke pin 15 dari L293D #1
- pin QE (4) dari 74HC595 ke pin 2 dari L293D #2
- pin QF (5) dari 74HC595 ke pin 7 dari L293D #2
- pin QG (6) dari 74HC595 ke pin 10 dari L293D #2
- pin QH (7) dari 74HC595 ke pin 15 dari L293D #2
Langkah 7: KOMUNIKASI
Glove mengirimkan 2 byte data ke kotak kontrol 10 kali per detik atau setiap kali sinyal dari salah satu sensor diterima.
2 byte cukup untuk 6 kontrol karena kita hanya perlu mengirim:
- ON/OFF untuk LED (1 bit) - Saya sebenarnya menggunakan 2 bit agar konsisten dengan motor, tetapi satu sudah cukup
- OFF/KANAN/KIRI untuk 5 motor: masing-masing 2 bit = 10 bit
Total 11 atau 12 bit sudah cukup.
Kode arah:
- MATI: 00
- KANAN: 01
- KIRI: 10
Kata kontrol terlihat seperti ini (sedikit bijaksana):
Byte 2 ---------------- Byte 1----------------
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 0 LED-- M5-- M4-- M3-- M2-- M1--
- M1 - pegangan
- M2 - pergelangan tangan
- M3 - siku
- M4 - bahu
- M5 - dasar
Byte 1 dapat dengan mudah diumpankan langsung ke register geser, karena mengontrol arah kanan/kiri motor 1 hingga 4.
Batas waktu 2 detik diaktifkan untuk komunikasi. Jika timeout terjadi, semua motor berhenti seperti tombol MERAH ditekan.
Langkah 8: SKETSA dan Lainnya…
SARUNG TANGAN
Sketsa sarung tangan menggunakan perpustakaan berikut:
- DirectIO - tersedia di Github
- I2Cdev - tersedia di Github
- Kawat - bagian dari Arduino IDE
- MPU6050 - tersedia di Github
- SPI - bagian dari Arduino IDE
- RF24 - tersedia di Github
dan tiga perpustakaan yang saya kembangkan:
- AvgFilter - tersedia di Github
- DhpFilter - tersedia di Github
- Penjadwal Tugas - tersedia di Github
Sketsa sarung tangan tersedia di sini: Sketsa Sarung Tangan v1.3
KOTAK KONTROL LENGAN
Sketsa lengan menggunakan perpustakaan berikut:
- DirectIO - tersedia di Github
- PinChangeInt - tersedia di Github
- SPI - bagian dari Arduino IDE
- RF24 - tersedia di Github
dan perpustakaan yang dikembangkan oleh saya:
Penjadwal Tugas - tersedia di Github
Sketsa lengan tersedia di sini: Sketsa Lengan v1.3
Lembar Data untuk perangkat keras yang digunakan
- register geser 74HC595 - lembar data
- Driver motor L293D - lembar data
- modul nirkabel nRF24 - lembar data
- Modul akselerometer/giroskop MPU6050 - lembar data
31 Mei 2015 PEMBARUAN:
Versi baru sketsa kotak kontrol sarung tangan dan lengan tersedia di sini: Sketsa Sarung Tangan dan Lengan v1.5
Mereka juga berada di github di sini.
Perubahan
- Menambahkan dua byte lagi ke struktur komunikasi untuk mengirim kecepatan motor yang diminta untuk motor Pergelangan Tangan, Siku, Bahu, dan Basis sebagai nilai 5 bit (0.. 31) dari Sarung Tangan sebanding dengan sudut gerakan kontrol (lihat di bawah). Arm Control Box memetakan nilai [0.. 31] ke masing-masing nilai PWM untuk masing-masing motor. Hal ini memungkinkan kontrol kecepatan bertahap oleh operator, dan penanganan lengan yang lebih presisi.
- Kumpulan gerakan baru:
1. LED: Tombol kontrol LED - tombol jari tengah - AKTIF, tombol jari kelingking - MATI
2. GRIPPER: Kontrol strip fleksibel Gripper - jari setengah ditekuk - BUKA, jari ditekuk sepenuhnya - TUTUP
3. WRIST: Pergelangan tangan dikontrol dengan memiringkan telapak tangan dari posisi horizontal penuh ke ATAS dan BAWAH. Lebih banyak kemiringan menghasilkan lebih banyak kecepatan
4. LENGAN: Lengan dikendalikan dengan memiringkan telapak tangan dari posisi horizontal penuh ke KIRI dan KANAN. Lebih banyak kemiringan menghasilkan lebih banyak kecepatan
5. SHOULDER: Bahu dikendalikan dengan memutar telapak tangan KANAN dan KIRI dari posisi telapak tangan mengarah lurus ke atas. Telapak tangan diputar sepanjang sumbu siku (seperti melambaikan tangan Anda)
6. BASE: Basis dikendalikan dengan cara yang sama seperti bahu dengan telapak tangan mengarah lurus ke bawah.
Langkah 9: APA LAGI?
IMAJINASI DI BEKERJA
Seperti biasa dengan sistem seperti itu, mereka dapat diprogram untuk melakukan lebih banyak lagi.
Misalnya, desain saat ini sudah menggabungkan kemampuan tambahan, tidak mungkin dengan remote standar:
- Peningkatan kecepatan bertahap: setiap gerakan motor dimulai pada kecepatan minimal yang telah ditentukan, yang ditingkatkan secara bertahap setiap 1 detik hingga kecepatan maksimum tercapai. Hal ini memungkinkan kontrol yang lebih tepat dari masing-masing motor (terutama pergelangan tangan dan gripper)
- Pembatalan gerakan yang lebih cepat: ketika perintah diterima oleh Arm Box untuk menghentikan motor, untuk sesaat akan membalikkan motor sekitar 50 ms, sehingga "melanggar" gerakan, dan memungkinkan kontrol yang lebih presisi.
APA LAGI?
Mungkin gerakan kontrol yang lebih rumit dapat diterapkan. Atau gerakan simultan dapat digunakan untuk kontrol yang rumit. Bisakah Arm menari?
Jika Anda memiliki ide bagaimana memprogram ulang sarung tangan, atau memiliki versi sketsa yang ingin saya uji - beri tahu saya: [email protected]
Langkah 10: *** KITA MENANG !!! ***
Proyek ini memenangkan Hadiah Pertama dalam kontes Coded Creations yang disponsori oleh Microsoft.
Coba lihat! WOO HOO!!!
Hadiah Kedua dalam Kreasi Berkode
Direkomendasikan:
Gunakan Cortana dan Arduino untuk Mengontrol RGB Led atau Ledstrips Dengan Suara Anda!: 4 Langkah (dengan Gambar)
Gunakan Cortana dan Arduino untuk Mengontrol RGB Led atau Ledstrips Dengan Suara Anda!: Dalam instruksi ini saya akan menunjukkan kepada Anda bagaimana Anda dapat mengontrol led RGB atau strip led dengan suara Anda. Ini dilakukan oleh aplikasi CoRGB yang tersedia secara gratis di toko aplikasi windows. Aplikasi ini adalah bagian dari proyek CortanaRoom saya. Ketika Anda selesai dengan
Cara Mengontrol Lengan Robot Dengan 6 Channel Servo Player Tanpa Coding: 5 Langkah
Cara Mengontrol Lengan Robot Dengan 6 Channel Servo Player Tanpa Coding: Tutorial ini mendemonstrasikan Cara Mengontrol Lengan Robot dengan 6 Channel Servo Player tanpa Coding
Bungkus Tali dengan Rapi Tanpa Ikat atau Kusut: 5 Langkah (dengan Gambar)
Membungkus Tali dengan Rapi Tanpa Ikat atau Kusut: Tujuannya: cara untuk membungkus tali (headphone, power, dll) tanpa ikatan atau tali Velcro yang cepat, tidak lepas, dan cepat lepas. Inilah satu metode, ada saran yang lebih baik? Panduan lainnya: http://www.curiousinventor.com/guidesVideo showi
Membuat Tali Bahu untuk Tripod Anda: 4 Langkah (dengan Gambar)
Buat Tali Bahu untuk Tripod Anda: Ide ini terinspirasi oleh Ibu saya; Saya sedang menyeret tripod saya di sekitar Southend, dan dia bertanya mengapa saya tidak memiliki semacam pegangan untuk itu. Dia pikir saya mungkin bisa memasang tali dari tas ke sana. Jadi saya datang dengan ini. Terima kasih ibu
Pendingin / Penyangga Laptop Tanpa Biaya (Tanpa Lem, Tanpa Pengeboran, Tanpa Mur & Baut, Tanpa Sekrup): 3 Langkah
Pendingin / Penyangga Laptop Tanpa Biaya (Tanpa Lem, Tanpa Pengeboran, Tanpa Mur & Baut, Tanpa Sekrup): UPDATE: MOHON MOHON VOTE UNTUK SAYA INSTRUCTABLE, TERIMA KASIH ^_^ ANDA JUGA INGIN MEMILIH KONTES SAYA YANG LAINNYA MASUK DI www.instructables.com/id/Zero-Cost-Aluminum-Furnace-No-Propane-No-Glue-/ ATAU MUNGKIN PILIH TEMAN TERBAIK SAYA