14. Eksperimen dengan Motor DC dan Motor Servo
Pengendalian motor DC dan Motor Servo merupakan element penting dalam penerapan akan kemanfaatan arduino. Dengan menggunakan Pemrograman arduino dengan ardulock akan memudahkan kita memahami cara pengendalian motor DC dan motor dc serta bagaimana cara pengaturan kecepatan dan arah putaran motor DC tanpa menggunakan bahasa pemrograman sedikitpun.
Bab ini membahas cara mengendalikan motor DC dan motor servo.Pengaturan kecepatan dan arah putaran motor DC ikut dikupas.
14.1 Pengenalan Motor DC dan Motor ServoÂ
Sesuai dengan namanya, motor DC adalah jenis motor yang dikendalikan oleh arus searah atau DC (direct current). Motor ini memiliki dua kabel. Satu kabel dihubungkan ke tegangan positif dan kabel kedua dihubungkan ke ground. Kabel yang dihubungkan ke tegangan positif boleh yang mana saja. Arah putaran rotor (bagian motor yang berputar) ditentukan oleh kabel yang terhubung ke tegangan positif.
Motor DC banyak digunakan pada mainan mobil. Begitu juga kipas angin kecil. Gambar 14.1 memberikan contoh motor DC.
Gambar 14.1 Motor DC 5V, dapat diberi tegangan antara 3V dan 6V
Motor servo adalah motor yang juga menggunakan tegangan DC, tetapi mempunyai
Gambar 14.2 memberikan contoh motor servo. Motor ini mempunyai tiga kabel. Umumnya, warna kabel berupa merah, cokelat, dan oranye. Kabel merah dihubungkan ke sumber tegangan 5V, kabel cokelat dihubungkan ke ground, dan kabel oranye dihubungkan ke pin digital untuk mengontrol sudut motor.
Gambar 14.2 Motor servo SG90
Untuk motor servo berukuran kecil, misalnya SG90, tegangan dapat diambilkan dari pin 5V milik Arduino. Namun, kalau jumlah motor servo yang dilibatkan lebih dari 2 atau mempunyai torsi yang besar, tegangan eksternal diperlukan.
14.2 Eksperimen Sederhana Pengendalian Motor DCÂ
Untuk kepentingan praktik pengendalian motor DC, yakni memungkinkan untuk mematikan atau menghidupkan motor tersebut, satu resistor jenis TIPI 20 (Gambar 14,3) dan satu diode IN4001 (Gambar 14.4) diperlukan. TIP 120 adalah transistor jenis NPN yang dikenal dengan sebutan “Power Darlington Transistor”. Transistor ini mampu melewatkan arus puncak sebesar 8A. Akan tetapi, arus yang normal yang dilewatkan sebesar 5A.
Gambar 14.3 Transistor TIP120
Diode IN4001 adalah jenis diode yang dapat adalah komponen yang hanya dapat mengalirkan yang diberi lingkaran perak pada badan diode adalah anode. Fungsi diode dalam rangkaian motor adalah untuk mencegah tegangan balik ketika putaran motor dihentikan, yang jika tidak ditangani dapat merusakkan transistor :
Gambar 14.4 Diode IN4001
Selanjutnya, penyusunan rangkaian yang perlu dilakukan diperlihatkan pada Gambar 14.5. Dalam hal ini baterai 9V digunakan untuk memasok tegangan pada motor DC. Adapun motor DC yang digunakan adalah motor DC 5V.
Gambar 14.5 Rangkaian percobaan untuk mengendalikan motor DC
Untuk melakukan pengujian, proyek baru bernama motor . abp perlu dibuat terlebih dahulu. Kemudian, blok seperti terlihat pada Gambar 14.6 perlu disusun.
Gambar 14.6 Blok untuk memutar dan menghentikan motor
Pada proyek ini, mula-mula pin 11 dibuat menjadi HIGH, yang membuat basis dialiri arus dan menjadikan motor berputar. Motor dalam keadaan berputar selama 2 detik berkat blok:
Selanjutnya, motor dihentikan dengan memberikan pin 11 bernilai LOW. Motor pun berhenti selama 2 detik.
14.3 Eksperimen untuk Mengatur Keccpatan Putar Motor DCÂ
Agar kecepatan motor dapat diatur, artif yang mengalir di reqistor yang terhub ke basis penu disetel. Hal ini dapat dilakukan dengan rnengatur nilai di pin 11 agar berisi nilai bilangan bulat yang berkisar dari 0 hingga 255. Nah, pengaturan nilai ini dapat dikendalikan melalui potensiorneter Untuk keperluan ini, Anda bisa rnenggunakan potensiometer sebesar 5K. Adapun rangkaian yang digunakan seperti berikut ini:
Gambar 14.7 Rangkaian yang memungkinkan kecepatan motor DC bisa diatur
Untuk melakukan pengujian, proyek baru bernama kecepatanMotor . abp perlu dibuat terlebih dahulu. Kemudian, blok seperti terlihat pada Gambar 14.8 perlu disusun.
Gambar 14.8 Blok untuk mengatur putaran motor melalui potensiometer
Mula-mula, variabel nilaiPinA0 diisi dengan nilai pada pin analog A0, yakni in yang terhubung ke kaki tengah potensiometer. Selanjutnya, nilai yang berada di variabel tersebut dikonversi ke bilangan antara 0 dan 255 dan hasilnya diberikan ke 11. Dengan demikian, nilai analog di pin 11 akan bergantung kepada putaran poros potensiometer.
14.4 Pengontrolan Motor DC dengan Relai
selain menggunakan transistor, pengendalian terhadap motor DC dapat ditangani dengan menggunakan relai. Namun, dengan menggunakan relai, pengaturan kecepatan motor tidak dapat dilakukan. Dengan perkataan lain, motor hanya dapat diputar dan dihentikan.
Untuk memudahkan dalam mempraktikkan relai untuk mengontrol motor DC, Anda bisa menggunakan modul relai (Gambar 14.9). Pada contoh ini, VCC menyatakan pin yang perlu dihubungkan ke tegangan positif 5V, GND perlu dihubungkan ke ground, dan IN1 perlu dihubungkan ke pin digital Arduino
Gambar 14.9 Contoh modul relai
Rangkaian pengontrolan motor DC menggunakan relai ditunjukkan pada Gambar 14.10. Pada gambar ini, modul yang digunakan adalah Keyes KY-022. Pada bagian bawah, bagian kiri, yang ditandai simbol S, adalah pin pengatur relai, pin tengah sebagai VCC, dan pin kanan sebagai pin GND. Pada bagian atas, bagian kiri adalah NC, bagian tengah adalah COM, dan bagian kanan adalah NO. Modul lain berkemungkinan mempunyai susunan yang berbeda.
Gambar 14.10 Rangkaian untuk mengendalikan motor DC menggunakan modul relai
Untuk melakukan pengujian, proyek baru bernama motorRe1ai . abp perlu dibuat terlebih dahulu. Kemudian, blok seperti terlihat pada Gambar 14.11 perlu disusun.
Gambar 14.11 Blok untuk menguji relai dalam mengendalikan motor DC
Secara prinsip, blok di atas digunakan untuk membuat pin 2 dalam keadaan HIGH atau LOW, yang akan membuat terminal COM dan NO terputus atau terhubung. Hal inilah yang membuat motor berhenti atau berputar.
14.5 Pengaturan Arah Putar dan Kecepatan Motor DC Menggunakan Motor Driver L289NÂ
Untuk memudahkan dalam mengontrol arah putaran motor DC, modul yang dinamakan L298N dapat digunakan. Contoh modul ini ditunjukkan pada Gambar 14.12. Dalam praktik, Anda bisa menggunakan modul dari vendor lain.
Gambar 14.12 Motor driver L298N keluaran LSON
IC L298N sebenarnya menggunakan prinsip jembatan-H untuk memungkinkan arah putaran motor bisa ditentukan. Prinsipnya ditunjukkan pada Gambar 14.13. Dengan menggunakan prinsip ini, sebenarnya dua relai bisa digunakan untuk mengatur arah putaran motor. Namun, kelemahannya, relai tidak dapat digunakan untuk mengatur kecepatan motor.
Gambar 14.13 Prinsip jembatan-H untuk mengatur arah putaran motor
Kembali ke modul L298N, modul ini dapat digunakan untuk mengatur arah putaran dua motor DC. Dalam hal ini:
- pin Enable A, Input 1, dan Input 2 digunakan untuk mengatur motor DC yang terhubung ke Output 1, dan Output 2;
- pin Enable B, Input 3, dan Input 4 digunakan untuk mengatur motor terhubung ke Output 3, dan Output 4.
Hubungan antara masukan dan keluaran dicantumkan pada Tabel 14.1 contoh hanya untuk Enable A, Input 1, Input 2, dan Output 1, serta Output 2. Namun hal ini berlaku untuk Enable B, Input 3, Input 4, Output 3, dan Output 4.
Tabel 14.1 Hubungan pengontrolan motor DC melalui L298N
Untuk memahami pengontrolan motor DC dengan modul L298N tanpa menggunakan Arduino termasuk dalam hal kecepatan, mula-mula dua jumper seperti yang diperlihatkan pada Gambar 14.14 perlu dilepas terlebih dahulu. Kedua jumper tersebut dalam keadaan terpasang menyatakan bahwa kedua pin Enable selalu dalam keadaan HIGH (yakni bernilai 255).
Gambar 14.14 Jumper pada motor driver LSON L298N
selanjutnya, susunlah rangkaian seperti terlihat pada Gambar 14.15. Setelah itu, cobalah untuk mencoba seluruh kemungkinan yang tercantum di Tabel 14.1. Dalam hal ini, Enable yang bernilai > 0 diterjemahkan dengan menghubungkan ke pin 5V di modul L298N dan O dihubungkan ke pin GND. Untuk Input 1 dan Input 2, 0 berarti dihubungkan ke GND dan I berarti dihubungkan ke pin 5V.
Gambar 14.15 Motor driver LSON L298N
Adapun rangkaian yang diperlukan untuk menguji modul L298N dengan Arduino diperlihatkan dalam Gambar 14.16.
Gambar 14.16 Rangkaian untuk menguji L298N menggunakan Arduino
Untuk melakukan pengujian, proyek baru bernama L2 98 . abp perlu dibuat terlebih dahulu. Kemudian, blok seperti yang terlihat pada Gambar 14.17 perlu disusun.
Gambar 14.17 Blok untuk mengendalikan motor DC menggunakan modul L298N
Pada proyek ini, blok berikut digunakan untuk mengatur pin 11 (yang berfungsi untuk mengontrol Enable A) agar bernilai 128:
Angka tersebut digunakan untuk mengatur kecepatan putar motor pada kondisi setengah kecepatan tertinggi. Penempatan blok tersebut di Slot setup disebabkan pengaturan ini perlu dilakukan sekali. Deretan blok berikut digunakan untuk memutar motor DC selama 3 detik pada suatu arah putar:
Adapun blok berikut (digunakan untuk memutar motor DC selama 3 dctik pada arah yang berlawanan dengan contoh sebelum ini:
Untuk membuat nłoîor berlłenti berputar, baik pin 8 maupun 9 diberi nilai LOW
14.6 Pengendalian Motor ServoÂ
Motor servo memiliki tiga kabel, yang umumnya berwarna merah, cokejat, dan oranye. Kabel merah dihubungkan ke tegangan positif 5V, kabel cokelat dihubungkan ke ground, dan kabel oranye dihubungkan ke pin digital. kabel oranyc inilaŕ, Yang berfungsi sebagai pengontrol sudut motor servo. Gambar 14.18 memperlihatkan contoh penyusunan rangkaian yang digunakan untuk percobaan dengan motor servo.
Gambar 14.18 Rangkaian pengontrol motor servo
penanganan motor servo di ArdvBlock dilakukan dengan menggunakan blok berikut;
Blok ini terdapat pada laci
Kemudian, kliklah. Akan muncul daftar pilihan seperti berikut:
Untuk melaksanakan percobaan dengan motor servo, buatlah proyek baru bernama servo. abp. Kemudian, susunlah blok seperti yang diperlihatkan pada Gambar 14.19. Untuk jenis motor, sesuaikan dengan yang Anda gunakan. Jika motor yang digunakan bukanlah SG90 atau MG996R, pilihlah Default.
Gambar 14.19 Blok untuk percobaan motor servo
Untuk memudahkan dalam melihat arah motor servo, pasanglah penunjuk arah misalnya seperti berikut:
14.7 Motor Servo dan Sensor Jarak Ultrasonik
Untuk membuat suatu pendeteksi halangan pada arah 0 hingga 180 derajat, kita bisa menyusun perangkat seperti terlihat pada Gambar 14.20. Bahan-bahan dasar yang digunakan, selain motor servo, diperlihatkan pada Gambar 14.21.
Gambar 14.20 Pendeteksi halangan pada arah 0 hingga 180 derajat
Gambar 14.21 Bahan-bahan yang digunakan untuk menyusun perangkat pada Gambar 14.20
Untuk keperluan ini, rangkaian seperti yang torlihat pada Gambar 14.22 perlu disusun terlebih dahulu.
Gambar 14.22 Rangkaian untuk percobaan motor servo dan sensor jarak ultrasonik
Untuk melakukan pengujian, proyek baru bernama servoUltra . abp perlu dibuat terJebih dahulu. Kemudian, blok sepcrti terlihat pada Gambar 14.23 disusun.
Gambar 14.23 Blok untuk melakukan deteksi keberadaan objek pada arah 0 hingga 180 derajat
Pengendalian sudut dari 0 hingga 180 diatur melalui:
Kenaikan sudut dilakukan sebesar 30 derajat. Pada setiap suduÈ› yang tersimpan di variabel sudut, arah motor servo ditentukan melalui:
Pengukuran jarak dilakukan oleh:
Dalam hal ini, pin dengan 8 terhubung ke pin Trig dan pin 9 terhubung ke pin Echo. Variabel jarak akan terisi dengan jarak objek.
Untuk mengetahui keberadaan objek pada jarak tertentu, blok berikut diperlukan.
Pada contoh ini hanya objek yang berjarak 25 cm yang diperhitungkan. Jika terdapat objek yang berjarak antara 1 dan 25, blok-blok berikut dijalankan:
Contoh hasil pengujian diperlihatkan pada Gambar 14.24.
Gambar 14.24 Hasil pemantauan objek