- Komponen Diperlukan
- Konstruksi Lengan Robot
- Diagram Sirkuit dan Penjelasan Kerja:
- Cara Mengoperasikan Lengan Robot:
Dalam tutorial ini, kita akan merancang Lengan Robot berbasis Arduino Uno dari beberapa kardus dan motor servo. Keseluruhan proses konstruksi telah dijelaskan secara rinci di bawah ini. Di sini, di proyek ini Arduino Uno diprogram untuk mengendalikan motor servo yang berfungsi sebagai sambungan lengan Robot. Pengaturan ini juga terlihat sebagai Robotic Crane atau kita dapat mengubahnya menjadi Crane dengan melakukan beberapa penyesuaian mudah. Proyek ini akan bermanfaat bagi pemula yang ingin belajar mengembangkan Robot Sederhana dengan biaya rendah atau hanya ingin belajar bekerja dengan Arduino dan motor servo.
Lengan Robot Arduino ini dapat dikontrol oleh empat Potensiometer yang terpasang padanya, masing-masing potensiometer digunakan untuk mengontrol setiap servo. Anda dapat memindahkan servos ini dengan memutar pot untuk mengambil beberapa objek, dengan beberapa latihan Anda dapat dengan mudah mengambil dan memindahkan objek dari satu tempat ke tempat lain. Kami telah menggunakan servo torsi rendah di sini, tetapi Anda dapat menggunakan servo yang lebih bertenaga untuk mengambil benda berat. Seluruh proses telah ditunjukkan dengan baik dalam Video di bagian akhir. Juga periksa Proyek Robotika kami yang lain di sini.
Komponen Diperlukan
- Arduino Uno
- 1000uF Capacitor (4 buah)
- 100nF Capacitor (4 buah)
- Servo Motor (SG 90- empat buah)
- 10K pot- Variable Resistor (4 buah)
- Power Supply (5v- lebih disukai dua)
Motor servo
Pertama kita berbicara sedikit tentang Servo Motors. Motor Servo terutama digunakan ketika ada kebutuhan untuk pergerakan atau posisi poros yang akurat. Ini tidak diusulkan untuk aplikasi kecepatan tinggi. Motor servo diusulkan untuk aplikasi kecepatan rendah, torsi sedang, dan posisi akurat. Jadi motor ini paling baik untuk mendesain lengan robot.
Motor servo tersedia dalam berbagai bentuk dan ukuran. Kami akan menggunakan motor servo kecil, di sini kami menggunakan empat servo SG90. Motor servo akan memiliki kabel terutama di sana, satu untuk tegangan positif yang lain untuk ground dan yang terakhir untuk pengaturan posisi. Kabel MERAH terhubung ke daya, kabel Hitam terhubung ke ground dan kabel KUNING terhubung ke sinyal. Ikuti tutorial Mengontrol Motor Servo menggunakan Arduino untuk mempelajarinya lebih lanjut. Di Arduino kami memiliki pustaka yang telah ditentukan untuk mengontrol Servo, jadi sangat mudah untuk mengontrol servo, yang akan Anda pelajari bersama dengan tutorial ini.
Konstruksi Lengan Robot
Ambil permukaan yang rata dan stabil, seperti meja atau papan kartu keras. Selanjutnya tempatkan motor servo di tengah dan rekatkan di tempatnya. Pastikan derajat rotasi berada di area yang ditunjukkan pada gambar. Servo ini bertindak sebagai pangkal lengan.
Tempatkan selembar karton kecil di atas servo pertama dan kemudian letakkan servo kedua di atas papan ini dan tempelkan di tempatnya. Rotasi servo harus sesuai dengan diagram.
Ambil beberapa karton dan potong menjadi potongan berukuran 3cm x 11cm. Pastikan potongannya tidak melunak. Potong lubang persegi panjang di salah satu ujung (sisakan 0,8 cm dari bawah) secukupnya agar sesuai dengan servo lain dan di ujung lainnya paskan roda gigi servo dengan sekrup atau lem. Kemudian pasang servo ketiga di lubang pertama.
Sekarang potong karton lain dengan panjang yang ditunjukkan pada gambar di bawah dan rekatkan roda gigi lain di bagian bawah potongan ini.
Sekarang rekatkan servo keempat dan terakhir di tepi potongan kedua seperti yang ditunjukkan pada gambar.
Dengan ini, dua bagian terlihat seperti.
Saat kami memasang pengaturan ini ke pangkalan, akan terlihat seperti,
Ini hampir selesai. Kita hanya perlu membuat pengait untuk mengambil dan mengambil objek seperti tangan robot. Untuk pengait, potong lagi dua lembar papan kartu dengan panjang 1cmx7cm & 4cmx5cm. Rekatkan keduanya seperti yang ditunjukkan pada gambar dan tempelkan gigi terakhir di bagian paling tepi.
Pasang bagian ini di atas dan dengan ini kita telah selesai membangun Lengan Robot kita .
Dengan ini, desain lengan robot dasar kami telah selesai dan itulah cara kami membangun lengan robot biaya rendah kami. Sekarang hubungkan sirkuit di papan tempat memotong roti sesuai diagram sirkuit.
Diagram Sirkuit dan Penjelasan Kerja:
Koneksi sirkuit untuk Arduino Uno Robotic Arm ditunjukkan di bawah ini.
Tegangan pada resistor variabel tidak sepenuhnya linier; itu akan menjadi yang berisik. Jadi untuk menyaring kebisingan ini, kapasitor ditempatkan di setiap resistor seperti yang ditunjukkan pada gambar.
Sekarang kita akan memasukkan tegangan yang disediakan oleh resistor variabel ini (tegangan yang mewakili kontrol posisi) ke saluran ADC Arduino. Kami akan menggunakan empat saluran ADC UNO dari A0 ke A3 untuk ini. Setelah inisialisasi ADC, kita akan mendapatkan nilai digital dari pot yang mewakili posisi yang dibutuhkan oleh pengguna. Kami akan mengambil nilai ini dan mencocokkannya dengan posisi servo.
Arduino memiliki enam saluran ADC. Kami telah menggunakan empat untuk Lengan Robot kami. UNO ADC memiliki resolusi 10 bit sehingga nilai integer berkisar antara 0-1023 (2 ^ 10 = 1024 nilai). Ini berarti akan memetakan tegangan input antara 0 dan 5 volt menjadi nilai integer antara 0 dan 1023. Jadi untuk setiap (5/1024 = 4,9mV) per unit. Pelajari lebih lanjut tentang memetakan level tegangan menggunakan saluran ADC di Arduino di sini.
Nah, agar UNO dapat mengubah sinyal analog menjadi sinyal digital, kita perlu menggunakan ADC Channel Arduino Uno, dengan bantuan fungsi di bawah ini:
1. analogRead (pin); 2. analogReference (); 3. analogReadResolution (bit);
Saluran ADC Arduino memiliki nilai referensi default 5V. Ini berarti kita dapat memberikan tegangan input maksimum 5V untuk konversi ADC di saluran input mana pun. Karena beberapa sensor memberikan tegangan dari 0-2.5V, jadi dengan referensi 5V, kami mendapatkan akurasi yang lebih rendah, jadi kami memiliki instruksi yang memungkinkan kami untuk mengubah nilai referensi ini. Jadi untuk mengubah nilai referensi kami memiliki "analogReference ();"
Sebagai default kami mendapatkan resolusi ADC papan maksimum yaitu 10 bit, resolusi ini dapat diubah dengan menggunakan instruksi (“analogReadResolution (bits);”).
Di rangkaian tangan robotik kami, kami telah membiarkan tegangan referensi ini ke default, sehingga kami dapat membaca nilai dari saluran ADC dengan langsung memanggil fungsi "analogRead (pin);", di sini "pin" mewakili pin tempat kami menghubungkan sinyal analog, katakanlah kami ingin membaca "A0". Nilai dari ADC dapat disimpan ke dalam integer sebagai int SENSORVALUE0 = analogRead (A0); .
Sekarang mari kita bicara tentang SERVO, Arduino Uno memiliki fitur yang memungkinkan kita untuk mengontrol posisi servo hanya dengan memberikan nilai derajat. Katakanlah jika kita ingin servo berada di 30, kita bisa langsung mewakili nilai dalam program. File SERVO header ( Servo.h ) menangani semua perhitungan rasio tugas secara internal.
#include
Di sini pernyataan pertama mewakili file header untuk mengontrol SERVO MOTOR. Pernyataan kedua adalah penamaan servo; kita biarkan sebagai servo0 karena kita akan menggunakan empat. Pernyataan ketiga menyatakan di mana pin sinyal servo terhubung; ini pasti pin PWM. Di sini kami menggunakan PIN3 untuk servo pertama. Pernyataan keempat memberikan perintah untuk memposisikan motor servo dalam derajat. Jika diberikan 30, motor servo berputar 30 derajat.
Sekarang, kami memiliki posisi servo SG90 dari 0 hingga 180 dan nilai ADC dari 0-1023. Kami akan menggunakan fungsi khusus yang cocok dengan kedua nilai secara otomatis.
nilai sensor0 = peta (nilai sensor0, 0, 1023, 0, 180);
Pernyataan ini memetakan kedua nilai secara otomatis dan menyimpan hasilnya dalam integer 'servovalue0' .
Ini adalah bagaimana kami mengontrol Servos dalam proyek Lengan Robot kami menggunakan Arduino. Cek kode lengkapnya di bawah ini.
Cara Mengoperasikan Lengan Robot:
Ada empat pot yang disediakan untuk pengguna. Dan dengan memutar keempat pot ini, kami memberikan tegangan variabel pada saluran ADC UNO. Jadi nilai digital Arduino berada di bawah kendali pengguna. Nilai-nilai digital ini dipetakan untuk menyesuaikan posisi motor servo, sehingga posisi servo berada dalam kendali pengguna dan dengan memutar Pot ini pengguna dapat menggerakkan sambungan lengan Robot dan dapat mengambil atau mengambil objek apa pun.