PERCOBAAN I
Motor DC, Motor Servo, Motor Stepper, Sensor Ultrasonik,
Fototransistor, Rotary Encoder
1.1 Tujuan
1. Mengetahui cara kerja motor DC, motor Servo, motor Stepper, rotary
encoder, sensor ultrasonik, fototransistor.
2. Mengontrol motor dan membaca data sensor menggunakan mikrokontroller
(modul Arduino).
1.3.1 Motor DC
Motor DC merupakan salah satu jenis motor yang banyak digunakan pada
robot karena bentuknya yang kecil dengan energi keluaran yang besar. Motor DC
digunakan sebagai penggerak roda robot atau bagian lain dari robot. Kecepatan putar
motor DC tergabtung dari besarnya tegangan input pada motor. Cara lain untuk
mengatur kecepatan motor DC adalah menggunakan teknik PWM (Pulse Width
Modulation) seperti dijelaskan berikut.
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 1
Praktikum Robotika
Untuk mengontrol motor DC, umumnya digunakan rangkaian H-bridge yang
dapat mengatur arah putaran motor dengan kemampuan arus yang disesuaikan dengan
motor. Pada percobaan ini, digunakan modul L298 (Dual H-bridge) yang mampu
untuk mengontrol motor DC dengan arus maksimum 4 A.
Rangkaian sensor posisi dan kontrol digunakan sebagai kendali closed loop
untuk menggerakkan motor sesuai dengan posisi yang diberikan sepeeti terlihat pada
Gambar 1-2. Pada umumnya motor servo dapat bergerak dari 0 0 sampai dengan 1800.
Walaupun ada motor servo jenis tertentu yang dapat berputar secara kontinyu.
Motor servo mempunyai tiga buah kabel, yaitu untuk catu daya, ground, dan
sinyal kontrol. Sinyal kontrol merupakan deretan pulsa yang menyatakan posisi yang
diinginkan seperti terlihat pada Gambar 1-3. Pulsa sinyal kontrol harus diuang-ulang
dalam waktu 20 mili detik. Jika panjang pulsa 1 mili detik, maka motor akan bergerak
ke arah paling kiri (00), sedangkan panjang pulsa 2 mili detik menyebabkan motor
bergerak ke arah paling kanan (1800). Untuk menggerakkan motor pada posisi
diantara 00 sd 1800, maka panjang pulsa bisa dibuat bervariasi antara 1 mili detik s/d 2
mili detik.
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 2
Praktikum Robotika
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 3
Praktikum Robotika
Cara kerja motor stepper dapat dijelaskan sebagai berikut (Lihat ilustrasi pada
Gambar 1-4). Pada step-1, phasa-A pada stator aktif, sehingga menimbukan medan
magnet seperti terlihat pada gambar. Kondisi ini menyebabkan rotor bergerak pada
posisi seperti pada gambar. Pada step-2, phasa B aktif yang menyebabkan rotor
bergerak 900 searah jarum jam. Pada step-3, phasa A kembali aktif tetapi dengan
polaritas berlawanan dari polaritas pada step-1, sehingga rotor bergerak lagi 900. Pada
step-4, phasa B aktif dengan polaritas berlawanan dari polaritas pada step-2, sehingga
rotor kembali bergerak 900.
Motor stepper dapat dikelompokkan menjadi dua kategori, yaitu motor stepper
permanen magnet dan motor stepper reluktans variabel. Motor stepper magnet
permanen terdiri dari tipe unipolar dan bipolar.
(a) (b)
Gambar 1-5. Susunan kumparan motor stepper : (a) Unipolar; (b) Bipolar.
Urutan A B C D
1 ON OFF OFF OFF
2 OFF ON OFF OFF
3 OFF OFF ON OFF
4 OFF OFF OFF ON
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 4
Praktikum Robotika
2. Pengaktifan Dua Phase
Pada cara ini, dua phase aktif di setiap step. Urutan pengaktifan dua phase
seperti terlihat pada Tabel 1-2.
Urutan A B C D
1 ON ON OFF OFF
2 OFF ON ON OFF
3 OFF OFF ON ON
4 ON OFF OFF ON
3. Pengaktifan “Half-Step”
Metoda ini menggabungkan pengaktifan satu phase dan dua phase yang
menghasilkan sudut step yang lebih kecil. Urutan pengaktifan Half-step dapat
dilihat pada Tabel 1-3.
Urutan A B C D
1 ON OFF OFF OFF
2 ON ON OFF OFF
3 OFF ON OFF OFF
4 OFF ON ON OFF
5 OFF OFF ON OFF
6 OFF OFF ON ON
7 OFF OFF OFF ON
8 ON OFF OFF ON
dimana:
Jarak = jarak antara sensor dengan objek/target
v = kecepatan suara (340 meter/detik)
t = waktu yang diperlukan suara/ultrasonik dari mulai dipancarkan sampai
diterima kembali.
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 5
Praktikum Robotika
Supaya sensor PING dapat digunakan mengukur jarak objek secara akurat,
maka perlu diperhatikan hal-hal berikut (Lihat Gambar 1-7):
a) Jarak objek harus kurang dari 3 meter
b) Sudut antara sensor PING dengan permukaaan objek harus cukup besar
( >450)
c) Ukuran objek tidak terlalu kecil
d) Bahan objek tidak menyerap gelombang ultrasonik
Pada percobaan ini digunakan sensor line tracer yang terdiri dari empat buah
LED dan empat buah fototransistor SFH 300. Selengkapnya dapat dibaca di lampiran.
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 6
Praktikum Robotika
HIGH-LOW (pulsa-pulsa) dengan frekuensi yang teragntung dengan besarnya
kecepatan putar motor.
Referensi:
1. Appin Knowledge Solutions (2007). Robotics. Infinity Science Press.
2. Arduino homepage (http://arduino.cc/)
3. (http://www.electrical4u.com/servo-motor-servo-mechanism-advantages-of-
servo-motors/servo-motor-3/)
4. https://www.pc-control.co.uk/step-motor.htm
5. http://www.parallax.com
6. William C. Dunn (2006). Introduction to Instrumentation,Sensors, and
Process Control. Artech House Sensors library
CATATAN:
Sebelum praktikum, praktikan harap mempelajari tentang Arduino.
(https://www.arduino.cc/)
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 7
Praktikum Robotika
A. Motor DC
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 8
Praktikum Robotika
3. Pilih menu Tools->Board->Arduino Uno (atau sesuaikan dengan modul
Arduino yang digunakan). Lihat Gambar 1-10.
4. Pilih menu Tools->Serial Port->(Nomor Serial port yang digunakan untuk
menghubungkan dengan Arduino). Untuk melihat Serial port yang digunakan,
dari menu Windows pilih Control panel->System->Device Manager->Port
COM & LPT)-> (Cari nomer COM dari Arduino)
5. Selanjutnya program dapat ditulis di editor
6. Untuk meng-upload program ke modul Arduino, gunakan menu Upload (Icon
bergambar )
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 9
Praktikum Robotika
Tugas Pretest-2 (Kerjakan di rumah)::
Jelaskan arti dan fungsi dari perintah analogWrite dan delay pada
Arduino. Tuliskan pada lembar yang sudah disediakan.
void setup() {
// put your setup code here, to run once:
pinMode(pin_motor_speed, OUTPUT);//
pinMode(pin_motor_dir1, OUTPUT);
pinMode(pin_motor_dir2, OUTPUT);
void loop() {
// put your main code here, to run repeatedly:
// Run motor
analogWrite(pin_motor_speed,100);//motor speed : 0 - 255
digitalWrite(pin_motor_dir1,LOW);//change to reverse
digitalWrite(pin_motor_dir1,HIGH);//change to reverse
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 10
Praktikum Robotika
B. Motor servo
void setup()
{
pinMode(outputPin, OUTPUT); //set pin 9 sbg output
}
void loop()
{
digitalWrite(outputPin, HIGH); //set output high
delayMicroseconds(lebar_pulsa); //lebar pulsa dalam mikro detik
digitalWrite(outputPin, LOW); //set output low
delayMicroseconds(period-lebar_pulsa);
}
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 11
Praktikum Robotika
3. Amati posisi/sudut pergerakan poros motor servo.
4. Ubah lebar_pulsa pada program di atas menjadi 2400 mikro detik, dan amati
serta catat/gambar posisi/sudut yang dihasilkan pada lembar data.
5. Ubah lebar_pulsa pada program di atas untuk mendapatkan posisi sudut servo
450, 900, dan tuliskan hasilnya pada lembar data.
#include <Servo.h>
void setup()
{
myservo.attach(9,600,2400); // attaches the servo on pin 9 to the servo object
}
void loop()
{
for(pos = 0; pos < 180; pos += 10)
{
myservo.write(pos);
delay(waktu_tunda);
}
for(pos = 180; pos>=1; pos-=10)
{
myservo.write(pos);
delay(waktu_tunda);
}
}
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 12
Praktikum Robotika
C. Motor stepper
Motor stepper yang digunakan dalam percobaan ini merupakan motor stepper
jenis unipolar dengan modul penggerak menggunakan IC ULN2003 seperti terlihat
pada Gambar 1-11. Sambungan antara ULN2003 dengan motor stepper dilakukan
menggunakan kabel dengan soket (sudah dirakit). Perakitan yang dilakukan dalam
percobaan ini adalah hubungan kabel antara modul mikrokontroler Arduino dengan IC
ULN2003.
P11
P10
P9
P8
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 13
Praktikum Robotika
void setup()
{
pinMode(In1, OUTPUT);
pinMode(In2, OUTPUT);
pinMode(In3, OUTPUT);
pinMode(In4, OUTPUT);
Serial.begin(9600);
void loop()
{
digitalWrite(In1, HIGH);
digitalWrite(In2, LOW);
digitalWrite(In3, LOW);
digitalWrite(In4, LOW);
delay(waktu_delay);
//
Serial.print("steps:" );
Serial.println(jumlah_step);
jumlah_step++;
//
digitalWrite(In1, LOW);
digitalWrite(In2, HIGH);
digitalWrite(In3, LOW);
digitalWrite(In4, LOW);
delay(waktu_delay);
//
Serial.print("steps:" );
Serial.println(jumlah_step);
jumlah_step++;
//
digitalWrite(In1, LOW);
digitalWrite(In2, LOW);
digitalWrite(In3, HIGH);
digitalWrite(In4, LOW);
delay(waktu_delay);
//
Serial.print("steps:" );
Serial.println(jumlah_step);
jumlah_step++;
//
digitalWrite(In1, LOW);
digitalWrite(In2, LOW);
digitalWrite(In3, LOW);
digitalWrite(In4, HIGH);
delay(waktu_delay);
//
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 14
Praktikum Robotika
Serial.print("steps:" );
Serial.println(jumlah_step);
jumlah_step++;
}
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 15
Praktikum Robotika
(Pastikan sambungan tersebut sudah benar. Kerusakan alat karena kesalahan
penyambungan oleh praktikan menjadi tanggung jawab praktikan)
E. Sensor Fototransistor
1. Berdasarkan data pada lampiran tentang DT-Sense Line Tracking SFH 4 Sensor,
sambungkan kabel dari modul sensor ke modul ke modul Arduino .
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 16
Praktikum Robotika
2. Compile dan Upload ke modul Arduino.
3. Tuliskan hasil pengamatan tersebut ketika sensor memdeteksi warna putih dan
hitam.
4. Tentukan nilai batas ambang (threshold) yang dapat digunakan untuk
membedakan warna hitam dan putih.
5. (Optional/Tambahan nilai)
Buat program Arduino yang dapat menampilkan tulisan ”HITAM” atau
”PUTIH” di Serial Monitor ketika sensor mendeteksi warna yang sesuai.
F. Rotary Encoder
1. Buat rangkaian seperti pada Gambar 1-12. Sambungkan kabel dari Arduino ke
Modul L298 seperti pada gambar, dan ke Rotary Encoder, sebagi berikut:
o Pin-2 Arduino : Channel-A Rotary Encoder
o Pin-3 Arduino : Channel-B Rotary Encoder
o Pin-4 Arduino : Arah-1 putaran motor (lihat Gambar 1-12)
o Pin-5 Arduino : Arah-2 putaran motor (lihat Gambar 1-12)
o Pin-6 Arduino : Kecepatan putaran motor (lihat Gambar 1-12)
o +5VDC Rotary Encoder : +5VDC Arduino
o GND Rotary Encoder : GND Arduino
2. Sambungkan kabel pemrograman dari Arduino ke port USB komputer
3. Hidupkan catu daya 12 Volt yang digunakan untuk mensuplai Modul L293.
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 17
Praktikum Robotika
F.2. Pemrograman Arduino
int pin_motor_speed = 6;
int pin_motor_dir1 = 4;
int pin_motor_dir2 = 5;
int jumlah_pulsa_terakhir= 1;
void setup() {
// put your setup code here, to run once:
pinMode(pin_motor_speed, OUTPUT);
pinMode(pin_motor_dir1, OUTPUT);
pinMode(pin_motor_dir2, OUTPUT);
pinMode(pin_A,INPUT_PULLUP);
pinMode(pin_B,INPUT_PULLUP);
Serial.begin(9600);
}
void pulsa_A()
{
if (digitalRead(pin_B)==HIGH) //CW
{
jumlah_pulsa=jumlah_pulsa+1;
}
}
void pulsa_B()
{
if (digitalRead(pin_A)==HIGH) //CCW
{
jumlah_pulsa=jumlah_pulsa-1;
}
void loop() {
// put your main code here, to run repeatedly:
// Run motor
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 18
Praktikum Robotika
analogWrite(pin_motor_speed,100);//motor speed : 0 - 255
digitalWrite(pin_motor_dir1,LOW);//change to reverse
digitalWrite(pin_motor_dir1,HIGH);//change to reverse
//
if (jumlah_pulsa_terakhir !=jumlah_pulsa)
{
Serial.println(jumlah_pulsa, DEC);
jumlah_pulsa_terakhir=jumlah_pulsa;
}
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 19
Praktikum Robotika
A. Percobaan Motor DC
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 20
Praktikum Robotika
Jawaban Tugas Pretest-2:
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 21
Praktikum Robotika
Percobaan A.2 : Menggerakkan motor dari lambat cepat, lambat lalu berhenti
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 22
Praktikum Robotika
B. Percobaan Motor servo
Jawaban Tugas Pretest-3:
600
2400
450
900
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 23
Praktikum Robotika
C. Percobaan Motor stepper
Jawaban Tugas Pretest-4:
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 24
Praktikum Robotika
Jumlah step satu putaran penuh:
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 25
Praktikum Robotika
D. Sensor Ultrasonik (PING)
Jawaban Tugas Pretest-5:
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 26
Praktikum Robotika
Percobaan D.2 : Sensor PING
Jarak
Pengukuran sebenarnya Pengukuran dengan sensor % error
objek
10 cm
30 cm
50 cm
100 cm
150 cm
Plastik
Spon
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 27
Praktikum Robotika
E. Sensor Ultrasonik (PING)
Jawaban Tugas Pretest-6:
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 28
Praktikum Robotika
Percobaan E.2: Sensor Fototransistor
Nilai hasil pengamatan sensor ketika mendeteksi warna putih:
Nilai threshold:
(Optional)
Program menampilkan tulisan “HITAM” atau “PUTIH” tergantung warna objek yang
didetksi.
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 29
Praktikum Robotika
F. Rotary Encoder
Jawaban Tugas Pretest-7:
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 30
Praktikum Robotika
KELOMPOK :
NAMA KELOMPOK : NIM: TANGGAL:
1. (………………………..) Instruktur:
2. (………………………..)
3. (………………………..)
4. (………………………..) (………………………..)
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 31
Praktikum Robotika
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 32
Praktikum Robotika
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 33
Praktikum Robotika
1.7. Kesimpulan
Teknik Elektro ITN Malang Rev 2, April 2017 by Aryuanto, Cholis,Faishol Page 34