Halaman

Senin, 22 Mei 2017

Selamat Datang DiBlog Pertama Saya

Nama                       : Septian Yogi
Kelas                       : SK-2D
Program Studi     : Sistem Komputer
Mata Kuliah          : Internet & Website
Mahasiswa Semester 2 STMIK Royal Kisaran
 




Robot Wall Follower Dengan Metode Proportional Integral Derivative (PID) Berbasis Mikrokontroler
  1. Robot

Kata robot berasal dari bahasa Czech, robota, yang berarti 'pekerja'. Kata robot diperkenalkan dalam bahasa inggris pada tahun 1921 oleh Wright Karel Capek pada sebuah drama, "Rossum's Universal Robots" (R.U.R). Robot adalah mesin hasil rakitan karya manusia, tetapi bekerja tanpa mengenal lelah. Pada awalnya, robot diciptakan sebagai pembantu kerja manusia, akan tetapi dalam waktu ke depan, robot akan mampu mengambil alih posisi manusia sepenuhnya dan bahkan mengganti ras manusia dengan berbagai jenisnya[1]. Definisi lain, robot adalah sebuah mesin yang berbentuk seperti manusia yang bisa bergerak dan berbicara. Pendapat ini didasari oleh kemunculan film-film robot, seperti Robocop, Transformer, Astro Boy, Wall-E, dan sebagainya. Sebenarnya definisi robot itu tergantung dari kategori robot

Robot wall follower adalah robot otomatis yang gerakannya mengikuti dinding-dinding pembatas pada lintasan[5]. Salah satu keuntungannya adalah tidak perlu adanya garis penuntun ataupun suatu tanda khusus sebagai arahan bagi robot. Cara kerjanya adalah dengan membaca dan mendeteksi suatu penghalang atau dinding terhadap robot dengan penggunaan sensor jarak. Bila terjadi perubahan, maka robot akan bergerak untuk kemudian menyesuaikan jarak lagi. Proses ini akan dilakukan secara berulang-ulang.


  1. Sensor

Sensor berguna untuk mengetahui kondisi - kondisi di bagian dalam (internal) atau bagian luar (eksternal) robot. Atau, dapat dikatakan juga bahwa sensor adalah suatu piranti elektronik yang dapat digunakan sebagai media komunikasi antara robot dan lingkungan di sekitarnya[2].





Gambar .Sensor



Sensor robot dapat dibedakan menjadi dua kategori, yaitu[2]:
1. Sensor internal

Digunakan untuk mengontrol posisi, kecermatan, dan lain-lain. Contohnya adalah potensiometer dan enkoder optik (optical encoder).

2. Sensor ekstenal

Digunakan untuk mengontrol dan mengoordinasi robot dengan lingkungan. Contohnya adalah sensor sentuhan (tactile switch), inframerah, ultrasobik, detektor api, jarak, kompas digital, sensor suhu, dan sebagainya.
Sensor Sharp GP2D12 adalah sensor jarak analog yang menggunakan infrared untuk mendeteksi jarak antara 10 cm sampai 80 cm. GP2D12 mengeluarkan output voltase non-linear dalam hubungannya dengan jarak objek dari sensor dan menggunakan interface analog to digital converter (ADC). Pada dasarnya sensor jarak sama seperti sensor Infra Red (IR) konvensional. Sharp GP2D12 memiliki bagian transmitter / emitter dan receiver (detektor)



  1. Mikrokontroler

Mikrokontroler adalah sebuah sistem komputer fungsional dalam sebuah chip. Di dalamnya terkandung sebuah inti prosesor, memori (sejumlah kecil RAM, memori program, atau keduanya), dan perlengkapan input output. Dengan kata lain, mikrokontroler adalah suatu alat elektronika digital yang mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara khusus, cara kerja mikrokontroler sebenarnya membaca dan menulis data. Mikrokontroler merupakan komputer didalam chip yang digunakan untuk mengontrol peralatan elektronik, yang menekankan efisiensi dan efektifitas biaya. Secara harfiahnya bisa disebut “pengendali kecil” dimana sebuah sistem elektronik yang sebelumnya banyak memerlukan komponen-komponen pendukung seperti IC TTL dan CMOS dapat direduksi/diperkecil dan akhirnya terpusat serta dikendalikan oleh mikrokontroler ini[9].
Arduino Uno adalah[12] papan mikrokontroler yang berbasiskan ATmega328. Arduino jenis ini memiliki 14 pin input/output digital (dengan 6 di antaranya bisa digunakan sebagai output PWM), 6 analog input, ceramic resonator 16 MHz, koneksi USB, sambungan untuk power supply, header ICSP, dan tombol reset. Untuk menghidupkannya, mikrokontroler ini bisa disambungkan ke komputer menggunakan koneksi USB,
menggunakan adaptor AC-DC, atau baterai. Tampilan Arduino Uno dan keterangan dari tiap bagiannya bisa dilihat pada gambar


Gambar .mikrokontroler yang berbasiskan ATmega328





  1. Motor DC
Motor DC merupakan perangkat elektromagnetis yang mengubah energi listrik menjadi energi mekanik. Energi mekanik ini digunakan untuk, misalnya memutar impeller pompa, fan atau blower, menggerakan kompresor, mengangkat bahan,dll. Motor DC digunakan juga di rumah (mixer, bor listrik, fanangin) dan di industri. Kumparan medan pada motor dc disebut stator (bagian yang tidak berputar) dan kumparan jangkar disebut rotor (bagian yang berputar). Jika terjadi putaran pada kumparan jangkar dalam pada medan magnet, maka akan timbul tegangan (GGL) yang berubah-ubah arah pada setiap setengah putaran, sehingga merupakan tegangan bolak-balik.
Prinsip kerja dari arus searah adalah membalik phasa tegangan dari gelombang yang mempunyai nilai positif dengan menggunakan komutator, dengan demikian arus yang berbalik arah dengan kumparan jangkar yang berputar dalam medan magnet. Bentuk motor paling sederhana memiliki kumparan satu lilitan yang bisa berputar bebas di antara kutub-kutub magnet permanen[14]. Power Supply yang digunakan berkisar 3-24 volt dengan arus sebesar 1 ampere.
Motor DC memiliki 2 bagian dasar, yaitu[3]:

1. Bagian yang tetap/stationer yang disebut stator. Stator ini menghasilkan medan magnet. Baik yang dibangkitkan dari sebuah koil (elektro magnet) ataupun magnet permanent.
2. Bagian yang berputar disebut rotor. Rotor ini merupakan sebuah koil dimana arus listrik mengalir
Berikut ini bentuk dari motor dc :

Gambar Motor DC





  1. Driver L298

L298 adalah IC yang dapat digunakan sebagai driver motor DC. IC ini menggunakan prinsip kerja H-Bridge[16]. Tiap H-Bridge dikontrol menggunakan level tegangan TTL yang berasal dari output mikrokontroler. L298 dapat mengontrol 2 buah motor DC. Tegangan yang dapat digunakan untuk mengendalikan robot bisa mencapai tegangan 46 VDC dan arus 2 A untuk setiap kanalnya. Berikut ini bentuk IC L298 yang digunakan sebagai motor driver.


  1. PWM (Pulse Widht Modulation)
Pulse Width Modulation (PWM)[17] secara umum adalah sebuah cara memanipulasi lebar sinyal yang dinyatakan dengan pulsa dalam suatu perioda, untuk mendapatkan tegangan rata-rata yang berbeda. Beberapa Contoh aplikasi PWM adalah pemodulasian data untuk telekomunikasi, pengontrolan daya atau tegangan yang masuk ke beban, regulator tegangan, audio effect dan penguatan, serta aplikasi-aplikasi lainnya. Aplikasi PWM berbasis mikrokontroler biasanya berupa, pengendalian kecepatan motor DC, pengendalian motor servo, pengaturan nyala terang LED.

  1. PID (Proportional Integral Derivative)
PID (Proportional Integral Derivative) Controller merupakan kontroler untuk menentukan kepresisian suatu sistem instrumentasi dengan karakteristik adanya umpan balik / feed back pada sistem tersebut. Komponen PID terdiri dari 3 jenis, yaitu Proportional, Integratif, dan Derivatif. Dalam waktu kontiniu, sinyal keluaran kontrol PID dapat dirumuskan sebagai berikut:
𝑼 𝒕 = 𝑲𝒑. 𝒆 𝒕 + π‘²π’Š 𝒆 𝒕 𝒅𝒕𝑲𝒅 𝒅𝒆(𝒕) 𝒅𝒕 𝒕 𝟎 (2.1)
dengan:
π‘ˆ 𝑑 = sinyal keluaran pengendali PID
𝐾𝑝 = konstanta proportional
𝐾𝑖 = konstanta integral
𝐾𝑑 = konstanta derivative (turunan)
𝑒 𝑑 = sinyal error


  • Produser Penelitian


Gambar Flowchart Prosedur Penelitian


  • Alat dan Bahan Penelitian


  1. Alat Penelitian

Alat yang dibutuhkan dalam tugas ini berupa hardware dan software. Hardware dan software yang digunakan dalam penelitian pembuatan sistem ini adalah sebagai berikut :
Hardware
1. Laptop
2. Arduino Uno
3. Sensor Jarak Sharp GP2D12
4. Rangkaian driver motor
5. LCD 16X2
6. Driver L298N
7. Baterai Li-Po
8. Buzzer
 Software

Software yang digunakan pada tugas akhir ini yaitu Arduino Software
  1. Bahan Penelitian

Pada pembuatan tugas akhir ini jarak antara 2 dinding pembatas jalur yang terbuat dari triplek dan robot merupakan objek yang akan diteliti.

  • Perancangan Mekanik




1) Diagram skema sistem driver motor
Gbr. 6 Diagram skema sistem



2) Berikut ini merupakan bentuk layout dari diagram skema sistem driver motor :

Gbr. 7 Layout Sistem
3) Berikut ini merupakan bentuk dari rangkaian driver motor :

Gbr. 8 Rangkaian driver motor terhubung pada
arduino uno, sensor, motor, dan LCD 16x2

  • Perancangan Software

Pada robot wall follower, perancangan untuk kontrol robot menggunakan metoda PID. Berikut ini beberapa penggalan program PID pada arduino software :
//variabel PID
int kiri_dpn,kiri_blk,kanan_dpn,kanan_blk,dpn,count;
int PV;
int error;
int MV, P, I, D,D1,D2,D3,I1,I2,I3;
int llpwm,rrpwm,last_error;
const unsigned char set_p=0;
const int var_Kp=9,var_Kd=3,var_Ki=1,Ts=1;
//rumus PID kontrol
error = set_p - PV;
P = var_Kp * error;
D1 = var_Kd * 10;
D2 = D1 / Ts;
D3 = error - last_error;
D = D2 * D3;
I1 = var_Ki / 10;
I2 = error + last_error;
I3 = I1 + I2;
I = I3 * Ts;
last_error = error;
MV = P + I + D;


  • Pengujian dan Analisa Masukan (Input)
TABEL 1

HASIL PENGUJIAN ADC DAN PERBANDINGAN TEGANGAN OUTPUT PADA SENSOR SHARP GP2D12 DENGAN CARA PENGUJIAN PERHITUNGAN DAN MULTIMETER

Jarak



Tegangan Output Perhitungan Tegangan Output Multimeter Data ADC
30 cm 0,95 V 1,00 V 195
29 cm 0,98 V 1,05 V 201
28 cm 1,00 V 1,10 V 205
27 cm 1,05 V 1,15 V 216
26 cm 1,09 V 1,18 V 224
25 cm 1,13 V 1,20 V 231
24 cm 1,17 V 1,23 V 239
23 cm 1,21 V 1,25 V 247
22 cm 1,27 V 1,30 V 260
21 cm 1,31 V 1,35 V 269
20 cm 1,36 V 1,40 V 278
19 cm 1,41 V 1,45 V 290
18 cm 1,49 V 1,50 V 305
17 cm 1,58 V 1,60 V 324
16 cm 1,62 V 1,70 V 332
15 cm 1,70 V 1,75 V 348
14 cm 1,79 V 1,85 V 366
13 cm 1,89 V 1,90 V 387
12 cm 2,07 V 2,10 V 424
11 cm 2,22 V 2,40 V 454

Setelah dilakukan pengujian terhadap sensor sharp GP2D12 dengan mendapatkan nilai tegangan output dan data ADC pada jarak 11 - 30 cm di dapatkan model grafik karakteristik tegangan sensor sharp GP2D12 seperti Gbr. 9 di bawah ini :


Gbr. 9 Grafik karakteristik tegangan output (Vo) sharp GP2D12

Pada Gbr. 9 menunjukkan grafik karakteristik tegangan output sensor sharp GP2D12. Dimana saat tegangan keluar dari sensor sebesar 2,4 volt, jarak yang dideteksi sensor sharp GP2D12 sejauh 11 cm. Sebaliknya, jika tegangan output sensor sebesar 1 volt, jarak yang dideteksi oleh sensor adalah 30 cm. Hal ini menunjukan bahwa semakin besar tegangan keluar dari sensor, maka semakin kecil jarak yang bisa dideteksi.

  • Pengujian dan Analisa Perangkat Keluaran (Output)

Pada tahap ini dilakukan pengujian dan analisa perangkat keluaran (output) pada driver motor L298 yang digunakan untuk mengontrol 2 buah motor yang digunakan untuk menggerakkan robot wall follower. Pada pengujian driver L298 dilakukan dengan memberi logika high atau low pada salah satu inputnya. Hasil pengujian driver L298 pada robot wall follower terlihat pada tabel berikut :

TABEL 2

PENGUJIAN DRIVER L298

Motor Kiri Motor Kanan Aksi Robot
M1 E1 M2 E2
High High High High Maju
Low High Low High Mundur
Low High High High Belok kiri
High High Low High Belok Kanan
Low Low Low Low Berhenti

M1 = Motor 1 E1 = Enable 1
M2 = Motor 2 E2 = Enable 2

Setelah dilakukan pengujian pada driver L298 didapatkan aksi robot wall follower terhadap pergerakan motor setelah diberi logika high ataupun low. Driver L298 memiliki prinsip kerja H-Bridge dan tiap H-Bridge menggunakan level tegangan yang diatur dengan pemberian logika high atupun low. Oleh karena itu, dilihat pada tabel pengujian motor kiri atau motor kanan yang diberi logika high atau low pada M1, M2, E1, dan E2 terdapat perubahan gerak robot wall follower seperti aksi maju, aksi mundur, aksi belok kiri, aksi belok kanan dan aksi berhenti. Jadi, driver motor L298 sangat berpengaruh terhadap pergerakan motor DC pada robot wall follower dalam menelusuri dinding.







  • Pengujian Tuning PID
Pengujian tuning PID dilakukan sebanyak 5 kali dengan nilai masing - masing parameter berbeda setiap Kp, Ki, dan Kd. Pembuatan grafik pada pengujian tuning PID ini berasal dari pengambilan nilai keluaran sensor kiri atas sebagai sampel data untuk melihat kinerja PID robot wall follower. Dari data tersebut akan menampilkan grafik berupa hasil pembacaan jarak (cm) terhadap 100 data yang muncul dari perubahan nilai pembacaan jarak.
1) Pengujian Tuning PID dengan nilai Kp= 15, Ki= 5, dan Kd= 11.

Pengujian tuning PID ini dilakukan pada satu sensor yang terletak pada bagian kiri depan dengan nilai Kp= 15, Ki= 5, dan Kd= 11. Pengujian ini dilakukan menggunakan 100 sampel perubahan data yang diambil
dari nilai keluaran pembacaan jarak sensor pada setiap datanya.
Berikut ini bentuk grafik dari hasil keluaran nilai sensor kiri depan (A2) :

Gbr. 10 Grafik perubahan jarak sensor kiri depan
terhadap Kp= 15, Ki= 5, dan Kd= 11

Pada Gbr. 10 di atas menunjukan grafik perubahan pembacaan jarak pada sensor kiri depan (A2) terhadap Kp= 15, Ki= 5, dan Kd= 11. Pada grafik terlihat bahwa penggunaan nilai parameter Kp, Ki, dan Kd di atas menunjukan bentuk grafik yang kurang stabil, masih banyak error, berosilasi dan untuk mencapai set point yang stabil sangat lama.


2) Pengujian Tuning PID dengan nilai Kp= 14, Ki= 2, dan Kd= 6.
Pengujian tuning PID ini dilakukan pada satu sensor yang terletak pada bagian kiri depan dengan nilai Kp= 14, Ki= 2, dan Kd= 6. Pengujian ini dilakukan menggunakan 100 sampel perubahan data yang diambil dari nilai keluaran pembacaan jarak sensor pada setiap datanya. Berikut ini bentuk tampilan dari hasil keluaran nilai sensor kiri depan (A2) :


Pada Gbr. 11 di atas menunjukan grafik perubahan pembacaan jarak pada sensor kiri depan (A2) terhadap Kp= 14, Ki= 2, dan Kd= 6. Pada grafik terlihat bahwa penggunaan nilai parameter Kp, Ki, dan Kd di atas menunjukan bentuk grafik yang jauh dari stabil, masih banyak error, masih banyak osilasi, dan jauh dari set point.
3) Pengujian Tuning PID dengan nilai Kp= 14, Ki= 2, dan Kd= 6
Pengujian tuning PID ini dilakukan pada satu sensor yang terletak pada bagian kiri depan dengan nilai Kp= 6, Ki= 1, dan Kd= 3. Pengujian ini dilakukan menggunakan 100 sampel perubahan data yang diambil dari nilai keluaran pembacaan jarak sensor pada setiap datanya. Berikut ini bentuk tampilan dari hasil keluaran nilai sensor kiri depan (A2)

Pada Gbr. 12 di atas menunjukan grafik perubahan pembacaan jarak pada sensor kiri depan (A2) terhadap Kp= 6, Ki= 1, dan Kd= 3. Pada grafik terlihat bahwa penggunaan nilai parameter Kp, Ki, dan Kd di atas menunjukan bentuk grafik yang stabil, error jauh berkurang, osilasi tidak ada, dan stabil pada set point.

  • Pengujian kinerja tuning PID terhadap kondisi robot
Pada pengujian kinerja tuning ini dilakukan dengan melihat kondisi pada robot. Berikut ini adalah tabel hasil pengujian dan kondisi robot terhadap masing - masing tuning PID :

TABEL 3
PENGUJIAN TUNING PID TERHADAP KONDISI ROBOT
Kp Ki Kd Kondisi Robot
15 5 11 Respon robot lambat dan navigasi robot tidak stabil
14 2 6 Respon robot meningkat dan navigasi robot tidak stabil
4.5 0.5 7.5 Respon robot terlihat cepat dan navigasi robot sedikit stabil
6 1 3 Respon robot cepat dan navigasi robot stabil
20 10 15 Respon robot lambat dan navigasi kurang stabil

Dari hasil pengujian kondisi robot pada tabel di atas dapat dilihat pada penggunaan tuning PID dengan nilai Kp = 6, Ki = 1, dan Kd = 3 mendapatkan hasil yang baik dengan respon dan navigasi yang stabil pada robot. Hal ini disebabkan karena penggunaan nilai Ki yang tepat. jika nilai Ki lebih tinggi atau berlebihan maka dapat mengakibatkan kondisi robot yang kurang baik.

  • Kesimpulan

Dari hasil pengujian yang dilakukan serta analisa terhadap robot wall follower dengan metode Proportional Integral Derivative, dapat diambil suatu kesimpulan sebagai berikut :
1. Sensor dapat mendeteksi jarak ideal dengan menggunakan set point 15.
2. Secara keseluruhan, kinerja robot wall follower ini sudah stabil dibandingkan penelitian sebelumnya.
3. Dalam hal kontrol, untuk mendapatkan kondisi robot wall follower yang baik digunakan nilai Kp = 6, Ki = 1, dan Kd = 3.