DAFTAR ISI Prosiding Seminar Nasional Sains dan Teknologi Nuklir PTNBR – BATAN Bandung, 4 Juli 2013
Tema: Pemanfaatan Sains dan Teknologi Nuklir serta Peranan MIPA di Bidang Kesehatan, Lingkungan dan Industri untuk Pembangunan Berkelanjutan
PENERAPAN JARINGAN SYARAF TIRUAN PADA PENGENALAN POLA ROBOT LINE FOLLOWER Asep Sholahuddin 1, Setiawan Hadi2 1
Universitas Padjadjaran, Jl. Raya Bandung Sumedang KM 21, Sumedang, 45363,
[email protected]
2
Universitas Padjadjaran, Jl. Raya Bandung Sumedang KM 21, Sumedang, 45363,
[email protected]
ABSTRAK PENERAPAN JARINGAN SYARAF TIRUAN PADA PENGENALAN POLA ROBOT LINE FOLLOWER. Robot Line Follower (LFR) adalah robot yang beroda kemudian berjalan pada jalur garis hitam karena dilengkapi dengan sensor infra merah. Pada paper ini telah diterapkan Jaringan Syaraf Tiruan (JST) dengan menggunakan metode backpropagation. Proses yang dilakukan adalah mengambil data input berupa nilai biner (0 dan 1) dari hasil pembacaan 4 buah lampu infra red pada robot yang akan mendeteksi jalur hitam. Output pembacaan tersebut berupa nilai Pulse Width Modulation (PWM) kemudian dilatih menggunakan JST. Pengujian dilakukan menggunakan software Matlab dengan neuron input sebanyak 4 buah dan neuron output sebanyak 1 buah maka keakuratan pengenalan pola sebesar 100%. Kata kunci: Jaringan Syaraf Tiruan, Robot Line Follower, Backpropagation
ABSTRACT APPLICATION OF ARTIFICIAL NEURAL NETWORK .FOR LINE FOLLOWER ROBOT. Line Follower Robot (LFR) is a wheeled robot that runs on the track of a black line with infrared sensors. In this paper, an Artificial Neural Network (ANN) was applied with back propagation method. The process was done by is taking the data input in the form of binary values (0 and 1) from 4 infrared lights on the robot that will detect the black line. Pulse Width Modulation (PWM) was output value that trained using ANN. Tests were carried out using Matlab software with 4 input neurons and 1 output neurons, the pattern recognition accuracy of 100%. Key words: Line Follower Robot, ANN, Backpropagation
dunia pendidikan kita. Robotika adalah multidisiplin ilmu yaitu komputer, elektronika dan mekanika. LFR atau Robot Line Follower adalah robot beroda yang dapat berjalan pada jalur garis hitam atau putih karena dilengkapi dengan sensor infra merah. Robot LFR biasanya pada tingkat pemula di kontrol dengan menggunakan pemrograman kondisional IF dan THEN. Penggunaan JST menjadikan pengontrolan LFR dengan cara dilatih atau pembelajaran.
1. PENDAHULUAN Perkembangan teknologi informasi serta otomasi industri dimana komputer menjadi bagian yang tidak terpisahkan dari teknologi itu sendiri membuat integrasi komputer dengan disiplin ilmu lain seperti elektronika, pemrograman dan mekanika tidak bisa dihindari sehingga timbulah perpaduan tersebut menjadi mekatronika dengan wujud robot sebagai bentuk implementasinya mendorong kita untuk bisa mengembangkan robotika sebagai bagian dari
381
Prosiding Seminar Nasional Sains dan Teknologi Nuklir PTNBR – BATAN Bandung, 4 Juli 2013
Tema: Pemanfaatan Sains dan Teknologi Nuklir serta Peranan MIPA di Bidang Kesehatan, Lingkungan dan Industri untuk Pembangunan Berkelanjutan
2. TEORI
penggerak atau motor agar motor dapat menyesuaikan gerak tubuh robot sesuai garis yang dideteksinya. Pada konstruksi yang sederhana, robot line follower memiliki dua sensor garis (A-Kiri dan B-Kanan), yang terhubung ke dua motor (kanan dan kiri) secara bersilang melalui sebuah prosesor/driver pada lihat gambar). Sensor garis A (Kiri) mengendalikan motor kanan, sedangkan sensor garis B (kanan) mengendalikan motor kiri Gambar 2.
Mikrokontroler adalah suatu miniatur komputer yang dapat mengontrol alat elektronika [1][2][6]. Mikrokontroler yang dapat digunakan banyak typenya seperti AVR, Atmel 89S51/52, PIC dan lain-lain. Untuk tipe yang digunakan adalah ATMEGA 168 [8], skemanya seperti dilihat pada Gambar 1.
Gambar 2 LFR Mengikuti Garis 1.
2.
3.
2.2. Jaringan Syaraf Tiruan
Gambar 1. Mikrokontroler Atmega 168
Sensor garis yang dapat digunakan menggunakan LDR atau Infra red.
Ketika sensor A mendeteksi garis sedangkan sensor B keluar garis ini berarti posisi robot berada lebih sebelah kanan dari garis, untuk itu motor kanan akan aktif sedangkan motor kiri akan mati. Akibatnya motor akan berbelok ke kiri. Begitu sebaliknya ketika sensor B mendeteksi garis, motor kiri aktif dan motor kanan mati, maka robot akan berbelok ke kanan. Jika kedua sensor mendeteksi garis maka kedua motor akan aktif dan robot akan bergerak maju.
Jaringan Syaraf Tiruan (JST) adalah suatu cabang ilmu dari Kecerdasan Buatan (Artificial Intelligence) yang menitikberatkan pada pengenalan pola. Metode Backpropagasi merupakan metode yang sangat populer pada bidang neural network [4]. Pada penelitian ini metode yang digunakan adalah metode jalar balik. Algoritma jalar balik menggunakan error output untuk mengubah nilai bobot-bobotnya dalam arah mundur (backward). Untuk mendapatkan error ini, tahap perambatan maju (forward propagation) harus dikerjakan terlebih dahulu.
bisa
2.1. Pengertian Line Follower Robot (LFR) Line Follower Robot (Robot Pengikut Garis) adalah robot yang dapat berjalan mengikuti sebuah lintasan, ada yang menyebutnya dengan Line Tracker, Line Tracer Robot dan sebagainya [9]. Garis yang dimaksud adalah garis berwarna hitam diatas permukaan berwarna putih atau sebaliknya, ada juga lintasan dengan warna lain dengan permukaan yang kontras dengan warna garisnya. Sensor garis ini mendeteksi adanya garis atau tidak pada permukaan lintasan robot tersebut, dan informasi yang diterima sensor garis kemudian diteruskan ke prosesor untuk diolah sedemikian rupa dan akhirnya hasil informasi hasil olahannya akan diteruskan ke
Algoritma jalar balik [5] adalah : Inisialisasi Bobot Ambil bobot awal dengan nilai random yang cukup kecil. kerjakan langkah-langkah berikut selama kondisi berhenti bernilai FALSE untuk tiap-tiap pasangan elemen yang akan
382
Prosiding Seminar Nasional Sains dan Teknologi Nuklir PTNBR – BATAN Bandung, 4 Juli 2013
dilakukan pembelajaran, kerjakan: Feedforward: a. Tiap-tiap unit input (Xi, i= 1,2,3,...,n) menerima sinyal Xi dan meneruskan sinyal tersebut kesemua unit pada lapisan yang ada di atasnya (lapisan tersembunyi) b. Tiap-tiap unit tersembunyi (Zj, j= 1,2,3,...,p) menjumlahkan sinyal-sinyal input terbobot:
Tema: Pemanfaatan Sains dan Teknologi Nuklir serta Peranan MIPA di Bidang Kesehatan, Lingkungan dan Industri untuk Pembangunan Berkelanjutan
e. Tiap-tiap unit tersembunyi (Zj, j= 1,2,3,...,p) menjumlahkan delta inputnya (dari unit-unit yang berada pada lapisan di atasnya): m
δ_inj=δiwjk
kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk menghitung informasi error:
n
z_inj = V0j + XiVij
(1)
i=1
δj = δ_inj f’(z_inj)
gunakan fungsi aktivasi menghitung sinyal outputnya: zj=f(z_inj)
c.
kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai vij ):
dan kirimkan sinyal tersebut kesemua unit di lapisan atasnya (unit-unit output). Tiap-tiap unit output (Yk, k= 1,2,3,...,m) menjumlahkan sinyal-sinyal input terbobot.
Δvjk=αδjxk
(3)
i=1
yk=f(y_ink)
f. untuk
vij(baru)=vij(lama)+Δvij
(13)
-Tes kondisi berhenti
3. TATAKERJA (BAHAN DAN METODE)
(5)
Penelitian ini dilakukan dengan menggunakan metode eksperimen dengan cara melatih data input yang diberikan dari sensor infra merah pendeteksi garis.
kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai wjk) (6)
3.1 Bahan dan Peralatan
Hitung juga koreksi bias (yang nantinya digunakan untuk memperbaiki nilai w0k): Δw0k=αδk
(12)
Tiap-tiap unit tersembunyi (Zj, j= 1,2,3,...,p) memperbaiki bias dan bobotnya (i=0,1,2,...,n):
Backpropagation d. Tiap-tiap unit outputnya (Yk, k= 1,2,3,...,m) menerima target pola yang berhubungan dengan pola input pembelajaran, hitung informasi errornya:
Δwjk=αδkzj
Tiap-tiap unit output (Yk, k= 1,2,3,...,m) memperbaiki bias dan bobotnya (j=0,1,2,...,p): wjk(baru)=wjk(lama)+Δwjk
(4)
dan kirimkan sinyal tersebut kesemua unit di lapisan atasnya (unit-unit output).
δk=(tk-yk)f’(y_ink)
(10)
hitung juga koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai voj ): Δv0j=αδj (11)
p
gunakan fungsi aktivasi menghitung sinyal outputnya:
(9)
untuk
(2)
y_ink = w0k + xi wjk
(8)
k=1
Instrumen-instrumen yang digunakan dalam penelitian ini adalah: 1. DT –ROBOT Line Follower . 2. Sensor Infra merah sebanyak 4 sensor 3. Batere 1,5 Volt x 6 Buah = 9 Volt 4. Track dengan menggunakan isolasi hitam (lebar 1 cm)
(7)
kirimkan δk ini ke unit-unit yang ada dilapisan bawahnya.
383
Prosiding Seminar Nasional Sains dan Teknologi Nuklir PTNBR – BATAN Bandung, 4 Juli 2013
Tema: Pemanfaatan Sains dan Teknologi Nuklir serta Peranan MIPA di Bidang Kesehatan, Lingkungan dan Industri untuk Pembangunan Berkelanjutan
3.2 Tahapan Penelitian
pada Tabel 3.
Pada tahapan penelitian yang dilakukan adalah seperti terlihat pada Gambar 3.
Tabel 1 Kode data sensor infra merah Kode 0110 0010 0011 0001 0111 0100 1100 1000 1110 1111
Keterangan Jalur tepat di tengah. Robot bergerak lurus. Jalur agak menyimpang ke kanan. Robot belok kanan. Jalur menyimpang ke kanan. Robot tikung kanan. Jalur ada di ujung ke kanan. Robot putar kanan. Kemungkinan ada tikungan ke kanan. Robot putar kanan. Jalur agak menyimpang ke kiri. Robot belok kiri. Jalur menyimpang ke kiri. Robot tikung kiri. Jalur ada di ujung ke kiri. Robot putar kiri. Kemungkinan ada tikungan ke kiri. Robot putar kiri. Kemungkinan ada perempatan. Robot bergerak lurus
Tabel 2 Nilai PWM pada roda kiri dan kanan NO 1 2 3 4 5 6 7 8 9 10
Gambar 3 Tahapan Penelitian Uraian dari tahapan di atas dapat dijelaskan lebih detail lagi. Tahapan pembacaan sensor dilakukan dengan menggunakan sensor infra merah sebanyak 4 pasang sensor (sepasang ensor terdiri atas satu pengirim cahaya dan satu lagi penerima cahaya infra merah). Hasil pembacaan di konversikan pada bentuk dijital. Misalnya pada garis hitam dengan background putih hasil yang dibaca adalah “0001” ini menunjukkan sensor yang ke satu (dibaca mulai dari yang paling kanan) bernilai “1” yang berarti terbaca garis hitam yang lainnya putih. Tahapan kodifikasi adalah memberikan kode tertentu untuk arti dari masing-masing nilai yang dihasilkan dari sensor infra merah. Pengertian kode tersebut terlihat pada Tabel 1. Sedangkan masing-masing kode tersebut diperlukan kecepatan roda kiri atau kanan yang harus dilakukan. Kecepatan roda robot dilakukan dengan cara memberikan nilai PWM (Pulse Width Modulation). Hasil dari program testing DT-ROBOT didapat nilai PWM seperti pada Tabel 2. Tahapan konversi dilakukan untuk pelatihan pada JST. Pada JST dengan backpropagationi dilakukan nilai output berada pada range 0 sampai dengan 1, sedangkan nilai PWM berada antara 0 dampai dengan 350. Untuk mempermudah konversi dapat dilakukan seperti
SENSOR INFRA RED 0001 0010 0011 0110 0100 1100 1000 0111 1110 1111
PWM KIRI 150 150 150 350 150 150 150 150 150 350
PWM KANAN 150 0 30 350 0 30 150 30 30 350
Tabel 3 Konversi nila PWM pada 0 sd 1 NO 1 2 3 4
PWM 0 30 150 350
KONVERSI 0.0 0.1 0.2 0.3
Proses pelatihan pada JST dilakukan dengan menggunakan software Matlab versi 7.0. Hasil pelatihan diuji cobakan pada seluruh data tersebut, kemudian hasilnya dianalisis.
4. HASIL DAN PEMBAHASAN Robot line follower yang digunakan adalah yang sudah tersedia di pasaran yaitu DTROBOT yang sudah tersedia dengan infra merahnya. DT-Robot yang digunakan tampak dari atas adalah seperti pada Gambar 4. Pembahasan dari penelitian ini dilakukan sesuai dengan tahapan penelitian yang sudah diterangkan.
384
Prosiding Seminar Nasional Sains dan Teknologi Nuklir PTNBR – BATAN Bandung, 4 Juli 2013
Tema: Pemanfaatan Sains dan Teknologi Nuklir serta Peranan MIPA di Bidang Kesehatan, Lingkungan dan Industri untuk Pembangunan Berkelanjutan
Tahapan pertama adalah pembacaan nilai dari sensor infra merah, yang terdiri atas 4 buah sensor seperti terlihat pada Gambar 5.
Hasil konvergensi terjadi pada epoch ke 429. Nilai training yang dilakukan seperti pada Tabel 4 dengan menggunakan 4 data input pada sensor infra merah sedangkan nilai output sebanyak 2 buah yaitu PWM kiri dan kanan. Tabel 4 Nilai Pelatihan yang dilakukan NO 1 2 3 4 5 6 7 8 9 10
Gambar 4. DT-ROBOT yang dilihat dari atas
SENSOR INFRA RED 0001 0010 0011 0110 0100 1100 1000 0111 1110 1111
PWM KIRI 0.2 0.2 0.2 0.3 0.2 0.2 0.2 0.2 0.2 0.3
PWM KANAN 0.2 0.0 0.1 0.3 0.0 0.1 0.2 0.1 0.1 0.3
Hasil pelatihan terlihat pada Tabel 5.
Tabel 5 Hasil Pelatihan NO 1 2 3 4 5 6 7 8 9 10
Gambar 5. Sensor Infra Merah Hasil pembacaan dan keterangannnya sesuai dengan Tabel 1. Sedangkan nilai PWM yang dilakukan sesuai dengan Tabel 2 dan nilai konversinya sesuai dengan Tabel 3. Hasil running seperti pada Gambar 6.
SENSOR INFRA RED 0001 0010 0011 0110 0100 1100 1000 0111 1110 1111
PWM KIRI 0.2001 0.2012 0.1984 0.3010 0.1991 0.2010 0.2001 0.2021 0.1988 0.2991
PWM KANAN 0.1982 0.0273 0.0947 0.2996 0.0113 0.1001 0.1991 0.1056 0.0932 0.3004
Sedangkan hasil pembulatan satu dijit dibelakang koma menjadi seperti pada Tabel 6.
Tabel 6. Hasil Pembulatan dari data pelatihan NO 1 2 3 4 5 6 7 8 9 10
SENSOR INFRA RED 0001 0010 0011 0110 0100 1100 1000 0111 1110 1111
PWM KIRI 0.2 0.2 0.2 0.3 0.2 0.2 0.2 0.2 0.2 0.3
PWM KANAN 0.2 0.0 0.1 0.3 0.0 0.1 0.2 0.1 0.1 0.3
Maka hasil keseluruhan dari pelatihan tersebut kemudian dibandingkan dengan data output yang diharapkan. Pengujian hasil
Gambar 6. Hasil Running Program
385
Prosiding Seminar Nasional Sains dan Teknologi Nuklir PTNBR – BATAN Bandung, 4 Juli 2013
Tema: Pemanfaatan Sains dan Teknologi Nuklir serta Peranan MIPA di Bidang Kesehatan, Lingkungan dan Industri untuk Pembangunan Berkelanjutan
pengenalan dengan cara membandingkan satu persatu hasil yang diharapkan dengan hasil pelatihan. Hasil keseluruhan dapat dilihat pada Tabel 7.
mencoba-coba.
Tabel 7 Hasil pengujian keseluruhan data input dan output
Ucapan terima kasih pada jurusan matematika FMIPA UNPAD yang telah memfasilitasi kegiatan ini.
N O 1 2 3 4 5 6 7 8 9 10
6. UCAPAN TERIMAKASIH
NILAI YG HASIL DIHARAPKAN PELATIHAN PWM PWM PWM PWM KAN KAN KIRI KIRI AN AN 0001 0.2 0.2 0.2 0.2 0010 0.2 0.0 0.2 0.0 0011 0.2 0.1 0.2 0.1 0110 0.3 0.3 0.3 0.3 0100 0.2 0.0 0.2 0.0 1100 0.2 0.1 0.2 0.1 1000 0.2 0.2 0.2 0.2 0111 0.2 0.1 0.2 0.1 1110 0.2 0.1 0.2 0.1 1111 0.3 0.3 0.3 0.3 Rata-rata Prosentasi Pengenalan 100%
SENSOR INFRA RED
7. DAFTAR PUSTAKA
1. LINDSAY 2. 3. 4. 5.
Hasil Tabel 7 menunjukkan 100% hasil pelatihan sama dengan hasil yang diharapkan. Pelatihan dilakukan dengan menggunakan software Matlab versi 7.0
6. 7.
5. KESIMPULAN.
8.
Kesimpulan dari penelitian ini adalah bahwa jaringan syaraf tiruan dapat diterapkan pada robot line follower. Keunggulan dari JST ini adalah pada saat track lintasan sudah fix maka nilai PWM dapat dilatih dengan baik. Sedangkan kelemahannya adalah penentuan nilai PWM awal perlu dilakukan dengan
9.
386
ANDY. “What’s a Microcontroller?”, Parallax Inc. (2004) WIDODO, “10 Proyek Robot Spektakuler”.(2002). DWI TAUFIQ. “Build your Own Line Follower Robot”. Andi. (2008) VALLURU B. R. AND HAYAGRIVA V. R. “C++ Neural Networks and Fuzzy Logic”. MIS Press.( 1993). KUSUMADEWI, SRI. “Neuro-Fuzzy”, Graha Ilmu. (2006) ANDRIANTO HERI. “Pemrograman Mikrokontroler AVR ATMEGA 16”. Informatika. 2008. TIM ASISTEN. Diktat Praktikum Mikrokontroler dan Robotika. Laboratorium Hardware. (2010) http://innovativeelectronics.com/.index_indo .php,Manual DT-ROBOT Line Follower Base, diakses tanggal 15 oktober 2012 ATmega48_88_168 http://innovativeelectronics.com/index_indo. php, diakses tanggal 15 oktober 2012