Assalamualaikum
Bulan Februari kemarin saya sempat membuat mobil-mobilan Remot Control menggunakan Arduino dengan driver motor L298N dan Micro Servo Motor Tower Pro SG90 sebagai sistem kemudinya. Kebetulan pula ada teman saya yang menanyakan perihal bagaimana caranya mengontrol arah putaran atau rotasi Motor servo tersebut agar bisa sesuai dengan keinginan kita.
Karena itulah menulis artikel ini, agar jikalau ada teman-teman lain yang mungkin saja mempunyai pertanyaan yang sama dengan teman saya tersebut bisa mendapatkan jawabanya melalui artikel di blog sederhana ini.
Perlu diketahui, Servo yang saya gunakan hanya bisa bergerak 180 derajat, dan sewaktu saya membuat kemudi Mobil RC menggunakan RC saya hanya membutuhkan 3 sudut yaitu dititik 0 derajat, 90 derajat dan 180 derajat. tujuanya adalah saat servo bergerak ke titik 0 derajat maka mobil RC akan berbelok ke kiri, Jika ke titik 180 Derajat maka mobil akan berbelok ke kanan dan titik 90 Derajat saya gunakan sebagai titik tengah dari servo yang artinya saat servo berada pada titik 90 Derajat maka kemudi mobil akan lurus kedepan.
Nah contoh diatas akan kita jadikan acuan dalam tutorial kendali motor servo menggunakan arduino pada artikel kali ini.
Wiring
- Kabel Merah Servo ke Pin 5V Arduino
- Kabel Hitam Servo ke Pin Ground Arduino
- Kabel kuning/Orange ke Pin Digital 9 Arduino
Sketch
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <Servo.h> | |
// Memanggil Library Servo | |
Servo lamersServo; | |
// Memberikan nama pada Servo | |
int pos = 90; | |
// Membuat Variabel pos dengan tipe Integer dan dengan Nilai 90 | |
char posisi; | |
// Membuat Variabel posisi dengan tipe data Char | |
void setup() | |
{ | |
Serial.begin(9600); | |
// Buka koneksi serial | |
lamersServo.attach(9); | |
// Pin Servo ada di Pin digital 9 | |
} | |
void loop() | |
{ | |
lamersServo.write(pos); | |
// saat pertama dinyalakan servo bergerak ke titik 90 Derajat | |
if(Serial.available()> 0 ){ | |
posisi = Serial.read(); | |
if(posisi == '1'){ | |
// Jika angka 1 di tekan dari serial Monitor | |
for(pos = 90; pos > 0; pos -= 1){ | |
lamersServo.write(pos); | |
delay(1); | |
// Maka servo akan bergerak dari titik 90 ke titik 0 derajat | |
} | |
} | |
else if(posisi == '2'){ | |
// Jika angka 2 di tekan dari serial Monitor | |
for(pos = 0; pos < 90; pos += 1){ | |
lamersServo.write(pos); | |
delay(1); | |
// Maka servo akan bergerak dari titik 0 ke 90 derajat | |
} | |
} | |
else if(posisi == '3'){ | |
// Jika angka 3 di tekan dari serial Monitor | |
for(pos = 90; pos < 180; pos += 1){ | |
lamersServo.write(pos); | |
delay(1); | |
// Maka servo akan bergerak dari titik 90 ke 180 derajat | |
} | |
} | |
else if(posisi == '4'){ | |
// Jika angka 4 di tekan dari serial Monitor | |
for(pos = 160; pos > 90; pos -= 1){ | |
lamersServo.write(pos); | |
delay(1); | |
// Maka servo akan bergerak dari titik 180 ke 90 derajat | |
} | |
} | |
} | |
} | |
Penjelasan sudah saya sertakan dalam Sketch diatas pada baris komentar. Nah untuk mencobanya, silahkan buka serial Monitor dari Arduino IDE lalu tekan angka 1,2,3 atau 4 untuk melihat arah gerakan dari Servo.
Sekian dulu tutorial mengendalikan arah Motor servo menggunakan Arduino. Semoga Artikel ini bermanfaat untuk anda
Wassalam
Sekian dulu tutorial mengendalikan arah Motor servo menggunakan Arduino. Semoga Artikel ini bermanfaat untuk anda
Wassalam
1 komentar so far
EmoticonEmoticon