LINE TREKCER
Fitur Driver Motor DC IC L293D Driver motor DC IC L293D memiliki fitur yang
lengkap untuk sebuah driver motor DC sehingga dapat diaplikasikan dalam
beberapa teknik driver motor DC dan dapat digunakan untuk mengendalikan
beberapa jenis motor DC. Feature yang dimiliki driver motor DC IC L293D
sesuai dengan datasheet adlah sebagai berikut:
•Wide Supply-Voltage Range: 4.5 V to 36 V
•Separate Input-Logic Supply
•Internal ESD Protection
•Thermal Shutdown
• High-Noise-Immunity Inputs
• Functionally Similar to SGS L293 and SGS L293D
• Output Current 1 A Per Channel (600 mA for L293D)
•Peak Output Current 2 A Per Channel (1.2 A for L293D)
•Output Clamp Diodes for Inductive Transient Suppression (L293D)
3. Sensor Photodiode
Sensor photodiode adalah salah satu jenis sensor peka cahaya (photodetector).
Photodiode akan mengalirkan arus yang membentuk fungsi linear terhadap
intensitas cahaya yang diterima. Arus ini umumnya teratur terhadap power
density (Dp). Perbandingan antara arus keluaran dengan power density disebut
sebagai current responsitivity. Arus yang dimaksud adalah arus bocor ketika
photodiode tersebut disinari dan dalam keadaan dipanjar mundur.
Hubungan antara keluaran sensor photodiode dengan intensitas cahaya yang
diterimanya ketika dipanjar mundur adalah membentuk suatu fungsi yang linier.
Hubungan antara keluaran sensor photodiode dengan intensitas cahaya
ditunjukkan pada Gambar berikut.
Gambar 3.4. Output photodiode terhadap intensitas cahaya
KE MIKROKONTROLLER
KE MIKROKONTROLLER
Sedangkan jika diinginkan sebuah motor DC yang dapat diatur kecepatan atau
arah putarnya maka digunakanlah rangkaian H-brigde yang tersusun dari 4 buah
transistor.
Gambar 3.9. Driver bolak-balik motor DC
Dari gambar diatas jika diinginkan motor DC berputar searah jarum jam maka
harus mengaktifkan transistor1 dan transistor4 dengan cara memberikan logika
high pada kaki Basis transistor tersebut. Sedangkan untuk berputar berlawanan
arah jarum jam maka harus mengaktifkan transistor2 dan transistor 3 dengan
cara memberikan logika high pada kaki Basis transistor tersebut. Untuk lebih
jelasnya perhatikan gambar dibawah ini.
Dari gambar diatas terlihat jelas bahwa dengan mengaktifkan transistor1 dan
transistor4 akan menyebabkan motor DC berputar searah jarum jam. Dimana
arus listrik akan mengalir dari power supply (12 V) melalui transistor1, lalu ke
motor DC, lalu ke transistor4 dan akan berakhir di ground. Begitu juga sebaliknya
untuk putaran berlawanan arah jarum jam.
Sedangkan untuk pengaturan kecepatannya anda dapat menghubungkan output
PWM ke kaki basis transistor1 untuk putaran searah jarum jam. Dan untuk
putaran berlawanan arah jarum jam, output PWM dapat dihubungkan kekaki
basis transistor2.
a. Merakit Sensor
Pada robot line follower, sensor robot yang dapat digunakan ada 3 jenis,
yaitu LDR (Light Dependent Resistor), Photo Dioda, dan Photo Transistor.
Gambar di atas adalah 1 pasang sensor yang akan kita gunakan pada robot
line follower. Bentuknya mirip seperti LED, yang berwarna ungu bernama
receiver (photo dioda) dan yang berwarna bening bernama transmitter
(infrared). Untuk membuat robot ini, kita gunakan 5 pasang sensor seperti di
kanan.
Kemudian, setelah kita mengetahui sensor apa yang akan kita pakai, coba
buat dulu rangkaian seperti di bawah ini untuk setiap 1 pasang sensor:
Gambar 3.13. Rangkaian Sensor Line Follower
Ketika sensor kiri berada pada garis hitam maka robot akan
belok ke kiri.
Ketika sensor kanan berada pada garis hitam maka robot akan
belok ke kanan.
Dengan contoh diatas dengan menggunakan dua sensor maka bisa kita
aplikasikan dengan 4 sensor yang nantinya terdapat 2 sensor kiri dan 2 sensor
kanan dimana ketika salah satu sensor dari sensor kiri (sensor jauh) terkena
garis maka akan membuat robot kembali dengan cepat karena peputaran motor
kanan yang semakin cepat.
Konsep Motor DC
Saatnya membahas tentang IC L293D, untuk lebih jelasnya dapat dibaca di
datasheet. Disini akan di jelaskan sedikit dasar teori tentang IC L293D, tetapi
akan lebih banyak di fokuskan tentang bagaimana cara penggunaannya.
Sekarang saya akan membuat sebuah aplikasi yang akan mengatur kecepatan
dan arah putar sebuah motor DC menggunakan IC L293D jika di hubungkan
dengan mikrokontroler Arduino UNO
Dari gambar diatas pin EN1 merupakan sebuah pin yang difungsikan untuk
meng-enable-kan motor DC (ON/OFF motor DC), oleh karena itu pin EN1 dapat
dihubungkan dengan output PWM dari mikrokontroler. Sedangkan pin IN1 dan
IN2 digunakan sebagai input logika untuk mengatur putaran motor DC dan dapat
juga digunakan untuk memberhentikan motor DC secara cepat (fast motor stop).
Untuk lebih jelas tentang pin IN1 dan IN2 dapat dilihat pada tabel berikut.
Tabel 3.1. Tabel Kebenaran Driver Motor
IN1 IN2 KONDISI MOTOR
0 0 Fast motor stop
0 1 Putar searah jarum jam
1 0 Putar berlawanan jarum jam
1 1 Fast motor stop
Jika diinginkan motor berputar searah jarum jam, maka pin mikrokontroler 22
(IN1) diberi logika low dan 23 (IN2) diberi logika high. Sedangkan EN1
dihubungkan dengan output PWM mikrokontroler PORT 3 (PWM OUTPUT).
Dalam pengoperasian Line follower dengan satu arah maka IN1 dan IN3
disambungkan dengan vcc dan IN2 dan IN4 dengan masukan digital sehingga
akan mengakibatkan motor hanya memiliki 2 kemungkinan yaitu memutar satu
arah jarum jam dan berhenti. Berikut gambar beserta tabel nya:
IN1/IN3 IN2/IN4 KONDISI MOTOR
1 0 RUN
1 1 STOP
Langkah langkahnya:
Hubungkan kedua Pin VCC Sensor dengan Pin 5V Arduino.
Hubungkan kedua Pin Gnd Sensor dengan Pin Gnd Arduino.
Flowchart
Flowchart program robot line follower ini terdiri atas 3 bagian yaitu bagian
utama, bagian membaca dan kalkulasi sensor dan output sensor.
Sebelum ke flowchart alangkah baiknya melihat tabel perhitungan
kecepatan berikut ini:
Tabel 4.2. Desain Kecepatan Motordc
Motor
Nilai/Jumlah i Motor kiri Direction1 Direction2
kanan
i=1 ≤ i=3 0 255 HIGH LOW
i=4 ≤ i=7 0 128 HIGH LOW
i=8 128 128 LOW LOW
i=9 ≤ i=12 128 0 LOW HIGH
i=13 ≤ i=24 255 0 LOW HIGH
Program Arduino
//Blok Pertama Deklarasi dan Inisialisasi Variable
19 | H a l
//Inisialisasi Sensor
int sensorKiri1 = A0;
int sensorKiri2 = A1;
int sensorTengah = A2;
int sensorKanan1 = A3;
int sensorKanan2 = A4;
//Inisialisasi Motor DC
int motorKanan = 11;
int motorKiri = 12;
int direction1 = 2;
int direction2 = 3;
//insialisasi variabel i
int i=0;
pinMode (motorKanan,OUTPUT);
pinMode (motorKiri,OUTPUT);
pinMode (direction1,OUTPUT);
pinMode (direction2,OUTPUT);
}
20 | H a l
//mengosongkan isi variabel
i=0;
if (digitalRead(A0)==HIGH )
{
i=i+1;}
if (digitalRead(A1)==HIGH )
{
i=i+2;}
if (digitalRead(A2)==HIGH )
{
i=i+4;}
if (digitalRead(A3)==HIGH )
{
i=i+8;}
if (digitalRead(A4)==HIGH )
{
i=i+16;}
//---------------------------------------------------------------------if ( (i>=1) && (1<=3) )
{
analogWrite (motorKanan,0);
analogWrite (motorKiri,255);
//diberikan high karna low agar posisi putar kanan (jalan maju)
digitalWrite (direction1,HIGH);
digitalWrite (direction2,LOW);
}
//---------------------------------------------------------------------else if ( (i>=4) && (1<=7) )
{
analogWrite (motorKanan,0);
analogWrite (motorKiri,128);
digitalWrite (direction1,HIGH);
digitalWrite (direction2,LOW);
}
//---------------------------------------------------------------------else if ( (i>=8) )
{
analogWrite (motorKanan,128);
21 | H a l
analogWrite (motorKiri,128);
digitalWrite (direction1,LOW);
digitalWrite (direction2,LOW);
}
//---------------------------------------------------------------------else if ( (i>=9) && (1<=12) )
{
analogWrite (motorKanan,128);
analogWrite (motorKiri,0);
digitalWrite (direction1,LOW);
digitalWrite (direction2,HIGH);
}
//---------------------------------------------------------------------else if ( (i>=13) && (1<=24) )
{
analogWrite (motorKanan,255);
analogWrite (motorKiri,0);
digitalWrite (direction1,LOW);
digitalWrite (direction2,HIGH);
}
delay(500);
}
Daftar Pustaka
Supriyanto, R.dkk “ ROBOTIKA ”. Gunadharma Press. Jakarta, 2010.
Zhen, J.W. Nguong, “Autonomous Transportation Robot with Localization”. UTM. Kuala
lumpur, Maaysia, 2013.
http://www.arduino.cc/en/Main/HomePage
Putranto, A. “Teknik Otomasi Industri Untuk Sekolah Menengah Kejuruan”. Direktorat
Pembinaan Sekolah Menengah dan Kejuruan. Jakarta, 2008.
Kusuf, W. “Buku Siswa Teknik Pemrograman 1”. Kementrian Pendidikan dan
Kebudayaan. Jakarta, 2014.
Kusuf, W. “Buku Siswa Teknik Pemrograman 2”. Kementrian Pendidikan dan
Kebudayaan. Jakarta, 2014
22 | H a l