MENENTUKAN POSISI MOTOR SERVO DENGAN PROGRAM ARDUINO
Program
arduino untuk menentukan posisi sudut motor servo, algoritma, contoh program
arduino motor servo SG90, jenis motor servo, diagram wiring motor servo, motor
servo adalah, PWM.
Motor servo adalah sebuah actuator putar (motor) yang
dirancang dengan sistem control umpan balik loop tertutup (servo). Dengan
demikian motor servo dapat di set-up atau ditentukan posisi putar (sudut) dari
posisi awal ke posisi akhir. Motor servo menggunakan gear box yang berfungsi
untuk memperlambat putaran motor dan meningkatkan torsi (momen putar).
Kecapatan putar dari motor servo tidak dapat diatur karena sudah terintegrasi
dengan rangkaian control yang ada di dalamnya.
Posisi motor servo ditentukan menggunakan PWM berdasarkan
lebar pulsa. Motor servo standar dapat berputar 180 derajat tetapi ada juga
motor servo yang dapat berputar hingga 360 derajat. Pada artikel ini akan
menggunakan motor servo yang standar (SG90) untuk mempraktikannya. Motor servo
SG90 mempunyai tiga buah kabel yang berwarna merah, coklat, dan kuning. Kabel warna
merah dihubungkan ke sumber tegangan positif (+5V), kabel warna coklat
dihubungkan ke sumber tegangan negative (0V/GND), dan kabel warna kuning (PWM) dihubungkan
ke Pin Digital Arduino.
Bahan yang pergunakan pada percobaan ini antara lain:
1. Arduino Uno;
2. Motor servo
SG90;
3. Kabel jumper;
Setelah bahan disiapkan sekarang hubungkan motor servo ke
Arduino Board seperti pada gambar di bawah.
Motor Servo SG90
|
Arduino Board
|
Kabel Merah
|
+5V
|
Kabel Coklat
|
GND
|
Kabel Kuning
|
Pin Digital 3
|
Algoritma program yang akan dibuat adalah sebagai berikut:
1. Posisikan
motor servo ke 0 derajat
2. Putar ke
kanan 45 derajat (posisi 45 derajat)
3. Putar ke
kanan 45 derajat (posisi 90 derajat)
4. Putar ke
kanan 45 derajat (posisi 135 derajat)
5. Putar ke
kanan 45 derajat (posisi 180 derajat)
6. Putar ke kiri
45 derajat (posisi 135 derajat)
7. Putar ke kiri
45 derajat (posisi 90 derajat)
8. Putar ke kiri
45 derajat (posisi 45 derajat)
9. Putar ke kiri
45 derajat (posisi 0 derajat / kembali ke atas)
Contoh program
di bawah menggunakan library Servo.h
yang sudah ada pada Arduino IDE.
#include
<Servo.h> // menggunakan
library
Servo
motorKu; // motor
servo diberi nama motorKu
void setup()
{
motorKu.attach(3); //
motor servo dihubungkan ke pin digital 3
motorKu.write(0); // set motor servo ke posisi 0 derajat
delay(1000); // tunggu hingga posisi 0 derajat
}
void loop()
{
motorKu.write(45); //
set motor servo ke posisi 45 derajat (ke kanan 45 derajat)
delay(1000);
motorKu.write(90); // set
motor servo ke posisi 90 derajat (ke kanan 45 derajat)
delay(1000);
motorKu.write(135); // set
motor servo ke posisi 135 derajat (ke kanan 45 derajat)
delay(1000);
motorKu.write(180); // set
motor servo ke posisi 180 derajat (ke kanan 45 derajat)
delay(1000);
motorKu.write(135); // set
motor servo ke posisi 135 derajat (ke kiri 45 derajat)
delay(1000);
motorKu.write(90); // set
motor servo ke posisi 90 derajat (ke kiri 45 derajat)
delay(1000);
motorKu.write(45); // set motor servo
ke posisi 45 derajat (ke kiri 45 derajat)
delay(1000);
motorKu.write(0); // set
motor servo ke posisi 0 derajat (ke kiri 45 derajat)
delay(1000);
}
Nama motorKu dapat diubah sesuai dengan selera
masing-masing programmer. Sekian artikel pemrograman motor servo dengan
arduino. Semoga artikel ini dapat bermanfaat.
“Jangan Berprinsip Harus Ada Uang Untuk Memulai Usaha, Tetapi Coba
Dibalik, Harus Ada Usaha Untuk Menghasilkan Uang”