• Tidak ada hasil yang ditemukan

Implementasi Algoritma Model Predictive Control Dengan Metode Pulse Width Modulation Sebagai Pengontrol Kecepatan Pada Roda Robot Mobil

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Algoritma Model Predictive Control Dengan Metode Pulse Width Modulation Sebagai Pengontrol Kecepatan Pada Roda Robot Mobil"

Copied!
100
0
0

Teks penuh

(1)

PADA RODA ROBOT MOBIL

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana Program Strata Satu Jurusan Teknik Informatika

Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia

OLEH

ADI SETYO NUGROHO 10107295

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

BANDUNG

(2)

ii

Algoritma pergerakan roda robot mobil konvensional jika menemui jenis lintasan yang menanjak akan menghasilkan pergerakan yang tidak konstan. Kecepatan pada saat lintasan datar akan berbeda dengan kecepatan pada jenis lintasan menanjak. Hal ini disebabkan belum adanya kontrol yang terdapat pada algoritma pergerakan roda robot mobil konvensional.

Algoritma Model Predictive Control (MPC) adalah algoritma kontrol yang dapat mendukung sebuah proses dengan memberikan bantuan berupa perbaikan agar hasil yang didapat menghasilkan nilai mendekati dengan yang diinginkan. Pulse Width Modulation (PWM) merupakan suatu cara mengontrol kecepatan secara digital yang digunakan pada motor penggerak. PWM akan mengatur rasio waktu pemberian tegangan kepada motor penggerak. Implementasi algoritma MPC akan diterapkan pada simulasi perangkat lunak pergerakan roda robot mobil. PWM juga akan diterapkan pada perangkat lunak simulasi dengan melakukan perbaikan kecepatan pada pergerakan roda robot mobil. Simulasi merupakan suatu proses peniruan baik menyerupai sesuatu yang nyata beserta keadaan sekelilingnya atau dapat mewakili sebagian.

Parameter yang akan dibandingkan yaitu : kecepatan, jarak tempuh, dan waktu tempuh. Inputan sistem berupa lintasan dengan jenis lintasan datar dan menanjak. Output sistem berupa waktu tempuh, kecepatan, dan jarak yang dapat ditempuh. Berdasarkan hasil pengujian pada simulasi, algoritma MPC dapat memperbaiki kecepatan pada kondisi lintasan yang berubah menanjak hingga batas elevasi maksimum 250 dan membutuhkan waktu yang relatif lebih sedikit dengan algoritma pergerakan roda robot mobil konvensional.

Kata kunci : Implementasi, Algoritma, Model Predictive Control, Kecepatan,

(3)

iii

AS SPEED CONTROLLER ON WHEELS ROBOT CAR

By:

ADI SETYO NUGROHO 10107295

Algorithms conventional of wheeled robotic movement when they have an uphill path type will produce a movement that is not constant. Speeds at a flat trajectory will vary with the type of trajectory speed uphill. This is due to the lack of control algorithms contained in the movement of the conventional robot wheels. Algorithm Model Predictive Control (MPC) is a control algorithm that can support a process by providing assistance in the form of improvements to the results obtained with a yield close to the desired value. Pulse Width Modulation (PWM) is a way to digitally control the speed used on the motor. PWM will regulate the timing of the ratio of voltage to the motor. Implementation of the MPC algorithm will be applied to simulation software robot car wheel movement. PWM also be applied to the simulation software by improving speed of wheels on the movement of a robot car. Simulation is a good imitation process resembles the real thing and its surroundings, or may represent in part.

Parameters to be compared, namely: speed, mileage, and travel time. Input system with the kind of trajectory is flat and uphill path. System output in the form of travel time, speed, and distance that can be taken. Based on the results of testing on the simulation, the MPC algorithm can improve the speed on the track conditions changed rising to the limit of a maximum elevation by 250 and takes relatively little with the conventional movement of wheeled robotic algorithms.

Keywords : Implementation, Algorithms, Model Predictive Control, Velocity,

(4)

iv

memberikan rahmat dan segala karuniaNya kepada penulis untuk dapat

menyelesaikan skripsi ini dengan judul ”Implementasi Algoritma Model

Predictive Control Dengan Metode Pulse Width Modulation Sebagai Pengontrol

Kecepatan Pada Roda Robot Mobil”.

Karya ilmiah ini disusun sebagai salah satu syarat kelulusan mata kuliah

Tugas Akhir pada Program Strata Satu Jurusan Teknik Informatika. Dengan

segala keterbasan pengetahuan, pengalaman dan kemampuan serta hambatan yang

mengiringi dalam pembuatan penulisan karya ilmiah skripsi ini jauh dari

sempurna, namun berkat doa, bimbingan serta dukungan dari banyak pihak

menjadikan penulisan karya ilmiah ini dapat diselesaikan dengan baik.

Pada kesempatan ini penulis ingin menyampaikan ucapan terima kasih

yang sebesar-besarnya kepada banyak pihak yang telah membantu dalam

menyusun karya ilmiah tugas akhir ini, kepada :

1.

Ayahanda Budi Wibowo, dan Ibunda Rr. Ridiyanti Gantini yang selalu

memberikan semangat, dorongan motivasi, kasih sayang dan doa yang

tidak henti-hentinya yang selalu menyertai penulis.

2.

Bapak Adam Mukharil Bachtiar,S.Kom. selaku Pembimbing yang

senantiasa memberikan bimbingan, ilmu, saran dan waktu luangnya

(5)

3. Ibu Tati Harihayati M., S.T., M.T. dan Bapak Andri Heryandi,S.T.,M.T.

selaku Dosen Penguji terima kasih atas segala masukannya.

4.

Eka Julia Purnama Sari, dan Trio Saputra sebagai teman yang telah

membantu penulis saat melakukan pencarian literatur.

5.

Teman-teman mahasiswa khususnya IF-7 angkatan 2007 yang telah

memberikan dukungan dan bantuan selama masa perkuliahan berlangsung

yang tidak bisa penulis sebutkan namanya satu-persatu.

6.

Rekan-rekan mahasiswa yang tergabung dalam komunitas Bike to Campus

Bandung yang telah memberikan motivasi. Semoga kita menjadi orang

yang dapat berguna bagi nusa, bangsa dan agama.

Dan semua pihak yang membantu penulis baik langsung maupun tidak

langsung, semoga Allah SWT membalasnya. Akhir kata sebagai makhluk Tuhan

penulis menyadari pasti ada kekurangan dan kelemahan yang terdapat pada karya

ilmiah skripsi ini.

Untuk itu penulis mengharapkan adanya masukan berupa kritik dan saran

dari semua pihak. Semoga karya ilmiah ini bermanfaat dan kita tidak akan pernah

berhenti untuk menuntut ilmu sepanjang hidup kita. Amin.

Bandung, Agustus 2011

(6)

1 I.1 Latar Belakang Masalah

Algoritma pergerakan roda robot mobil konvensional jika menemui jenis

lintasan yang menanjak akan menghasilkan pergerakan yang tidak konstan.

Kecepatan pada saat lintasan datar akan berbeda dengan kecepatan pada jenis

lintasan menanjak. Hal ini disebabkan belum adanya kontrol agar putaran yang

dihasilkan relatif sama pada algoritma pergerakan roda robot mobil konvensional.

Oleh sebab itu diperlukan perubahan pada algoritma pergerakkan roda

robot mobil konvensional berupa algoritma yang dapat memperbaiki pergerakan,

agar kecepatan pada saat lintasan datar dengan lintasan menanjak tidak jauh

berbeda. Algoritma Model Predictive Control (MPC) adalah algoritma kontrol

yang dapat mendukung sebuah proses dengan memberikan bantuan berupa

perbaikan agar hasil yang didapat menghasilkan nilai mendekati dengan yang

diinginkan. Pulse Width Modulation (PWM) merupakan suatu cara mengontrol

kecepatan secara digital yang digunakan pada motor penggerak. PWM akan

mengatur rasio waktu pemberian tegangan kepada motor penggerak.

Diperkirakan algoritma Model Predictive Control(MPC) dapat mendukung

sebuah proses pergerakan roda robot mobil dengan melakukan implementasi

algoritma Model Predictive Control(MPC) kedalam simulasi perangkat lunak.

PWM juga akan diterapkan pada perangkat lunak simulasi dengan melakukan

(7)

Oleh karena itu dibuatlah perangkat lunak untuk Implementasi Algoritma

Model Predictive Control Dengan Metode Pulse Width Modulation Sebagai

Pengontrol Kecepatan Pada Roda Robot Mobil.

1.2 Perumusan Masalah

Berdasarkan uraian masalah pada latar belakang dapat dirumuskan,

bagaimana membangun perangkat lunak yang dapat mengimplementasikan

algoritma Model Predictive Control (MPC) untuk menjaga kecepatan pada

pergerakan roda robot mobil dalam bentuk simulasi.

1.3 Maksud dan Tujuan

1.3.1 Maksud

Maksud dari penulisan skripsi ini adalah membangun perangkat lunak yang

dapat mengimplementasikan algoritma Model Predictive Control(MPC) pada

sebuah rangkaian pergerakkan roda robot mobil yang dimodelkan dalam bentuk

simulasi.

1.3.2 Tujuan

Tujuan yang ingin dicapai dalam pembuatan skripsi ini adalah sebagai

berikut:

a. Dapat menerapkan algoritma Model Predictive Control ke dalam bentuk

simulasi perangkat lunak pergerakan roda robot mobil.

b. Mengetahui apakah algoritma Model Predictive Control dapat

memperbaiki pergerakan roda robot mobil saat melewati lintasan

(8)

1.4 Batasan Masalah

Batasan masalah dalam membangun perangkat lunak implementasi

algoritma Model Predictive Control diantara lain :

a. Implementasi algoritma Model Predictive Control akan diterapkan pada

simulasi perangkat lunak.

b. Pulse Width Modulation akan diimplementasikan berupa pengaturan

kecepatan pergerakan roda robot mobil pada simulasi perangkat lunak.

c. Objek yang akan disimulasikan berupa :

1. Gambar yang dapat mewakili roda sebagai media penggerak, tanpa ada

fitur tambahan.

2. Lintasan dalam bentuk dua dimensi dengan dapat dilihat dari samping.

d. Parameter yang dibutuhkan saat perhitungan banyaknya putaran roda robot

mobil pada saat simulasi adalah :

1. Diameter roda robot mobil, dengan satuan piksel.

2. Sudut lintasan, dengan satuan derajat.

e. Parameter yang membantu agar dapat memperlihatkan informasi saat

simulasi pergerakkan putaran roda robot mobil dilakukan berupa :

1. Waktu tempuh yang sedang dilalui, dengan satuan detik.

2. Sudut lintasan yang sedang dilalui, dengan satuan derajat.

3. Kecepatan putaran roda robot mobil, dengan satuan sentimeter per

(9)

f. Pemodelan analisis perangkat lunak berupa pemodelan terstruktur dengan

alat bantu Data Flow Diagram (DFD) dalam menggambarkan model

kebutuhan fungsional.

g. Lintasan yang akan digunakan pada simulasi perangkat lunak berupa

lintasan menanjak.

h. Tidak membahas rumus turunan secara matematis.

i. Perangkat lunak dibangun dengan menggunakan bahasa pemrograman

Borland Delphi 7.

1.5 Metodologi Penelitian

Metodologi yang dilakukan dalam penelitian perangkat lunak berupa

metodologi analisis deskriptif, dengan tahapan sebagai berikut:

1. Tahap Pengumpulan Data

a. Studi literatur

Studi literatur adalah tahap pengumpulan data dengan mencari referensi

yang berkaitan dengan permasalahan mulai dari mencari dari buku-buku,

jurnal maupun arikel-artikel yang terdapat di internet, dengan subjek

literatur yang berkaitan dengan simulasi, analisis algoritma dan segala

yang berkaitan dengan perhitungan pergerakan robot.

b. Observasi langsung

Observasi langsung adalah tahap pengumpulan data dengan mengamati

hasil dari percobaan – percobaan yang dilakukan, berupa hasil simulasi

(10)

Requirements

2. Tahap Pembangunan Perangkat Lunak

Model yang digunakan untuk tahap pembangunan perangkat lunak adalah

model waterfall. Tahap pembangunan perangkat lunak dengan model

waterfall[1] dapat dilihat pada gambar I.1, dengan penjelasan sebagai berikut.

Tahapan-tahapan dari model waterfall ini adalah sebagai berikut:

a. Requirements definition

Tahap requirements definition akan melakukan analisis terhadap proses

perancangan dari teori yang ada dalam pelaksanaan proyek pembuatan

atau pengembangan perangkat lunak.

(11)

b. System and software design

Tahap system and software design akan melakukan perancangan simulasi

perangkat lunak yang dapat mewakili skema rangkaian pergerakkan roda

robot mobil.

c. Implementation and unit testing

Tahap implementation and unit testing adalah tahap menterjemahkan

perancangan ke dalam bentuk bahasa pemrograman yang telah ditentukan.

d. Integration and system testing

Tahap integration and system testing adalah tahap untuk memastikan

bahwa semua pernyataan sudah diuji yang selanjutnya akan mengarahkan

penguji untuk menemukan kesalahan yang mungkin terjadi dan juga

memastikan bahwa hasil yang diharapkan dapat tercapai.

e. Operation and maintenance

Tahap operation and maintenance adalah tahap pemeliharaan melakukan

penyesuaian apabila sistem pergerakkan roda robot mobil mengalami

perubahan. Seperti perubahan yang diakibatkan dikarenakan kondisi

lingkungan sekitar lintasan dengan kemiringan tertentu.

Tahap pemeliharaan, tidak dapat dilakukan karena tahap

pembangunan perangkat lunak pergerakkan roda robot mobil hanya akan

(12)

1.6 Sistematika Penulisan

Sistematika dari penulisan skripsi ini dibagi dalam beberapa bab dengan

pokok pembahasan secara umum sebagai berikut:

BAB I PENDAHULUAN

Bab ini berisi mengenai latar belakang masalah, maksud dan tujuan,

perumusan masalah, batasan masalah, metodologi penelitian, dan sistematika

penulisan.

BAB II TINJAUAN PUSTAKA

Bab ini menjelaskan mengenai konsep dasar dan teori-teori pendukung

dalam membangun perangkat lunak.

BAB III ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi analisis kebutuhan dalam membangun perangkat lunak,

analisis proses pergerakan roda robot mobil pada perangkat lunak sesuai dengan

metode pemodelan perangkat lunak terstruktur, yaitu dengan analisis kebutuhan

fungsional atau DFD. Selain itu terdapat juga perancangan simulasi untuk

perangkat lunak yang akan dibangun sesuai dengan hasil analisis yang sedang

(13)

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab ini berisi teknik algoritma Model Predictive Control, menjelaskan

analisa data yang diperoleh dari hasil percobaan dan efktifitas hasil yang telah

dilakukan.

BAB V KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan hasil pengujian dari perangkat lunak yang telah

dibangun berdasarkan tujuan yang ingin dicapai dan saran yang dapat diberikan

(14)

9

II.1 Landasan Teori

Landasan teori adalah teori-teori yang relevan dan dapat digunakan untuk

menjelaskan variabel-variabel penelitian. Landasan teori ini juga berfungsi

sebagai dasar untuk memberi jawaban sementara terhadap rumusan yang diajukan

serta membantu dalam penyusunan instrument penelitian.

II.1.1 Pengenalan Algoritma Model Predictive Control

Gambar II.1 identifikasi model proses berikut akan menjelaskan secara

umum langkah kerja dari proses identifikasi. Dalam beberapa kasus, model proses

yang didapat terkadang tidak sesuai dengan kondisi proses sesungguhnya.

Akibatnya, optimalisasi dari pengontrol MPC sangat bergantung dari kualitas

model proses yang didapat. Sehingga terkadang perlu dilakukan identifikasi

proses secara berulang untuk dapat memastikan akurasi model proses yang

dihasilkan. Walaupun demikian, akurasi model proses tidak akan pernah

mencapai kesempurnaan dikarenakan teknik linierisasi suatu elemen proses yang

taklinier. Untuk lebih menyempurnakan model proses yang dihasilkan, diperlukan

perbaikan model proses identifikasi dengan pengetahuan tentang proses

sebenarnya. Model proses identifikasi dilinierisasi dengan model Finite Impulse

Response (FIR) dan Auto-Regressive (ARX) untuk respon masukan step.

(15)

model FIR dan ARX serta menggabungkan data informasi pengetahuan tentang

proses. [4]

II.1.1.1 Langkah - langkah algoritma Model Predictive Control

Saat pengidentifikasian proses dilakukan, pengontrol MPC akan bekerja

berdasarkan model proses yang dihasilkan. Dari alur diagram blok berikut ini,

yang terpenting adalah kemampuan pengontrol MPC dalam mengestimasi adanya

gangguan untuk keadaan sekarang dan selanjutnya, sehingga kualitas

(performance) dari sistem kontrol dapat terjaga pada kondisi kestabilan yang

maksimal.

Bahasan berikut, menekankan bagaimana perancangan dan tahap-tahapan

(16)

1. Analisis Proses

Tujuan melakukan kajian ilmiah mengenai objek plant yang akan

dikontrol adalah mendapatkan persamaan dinamika dari proses. Analisis

proses akan memberikan formulasi yang jelas dari objektif sistem kontrol dan

keterbatasan (limitations) yang sesuai dengan pengertian MPC sebenarnya.

Atau dengan kata lain, analisis proses akan memberikan konfigurasi kontrol

proses dalam terminologi MPC. Input dan Output proses digolongkan dalam

4 katagori yang berbeda. Penggolongan ini berdasarkan penggunaannya

dalam pengontrolan proses:

a. Manipulated Variabel (MV) – input proses yang diatur untuk menjaga

output proses tetap pada setpoint.

b. Controller Variabel (CV) -- output proses yang ingin dijaga pada harga

setpoint.

c. Disturbance Variabel (DV) – input proses yang memberi efek terhadap

proses dan output variabel tertentu.

d. Constraint (AV) – output proses yang harus dijaga dalam suatu definisi

batas jangkauan operasi yang berlawanan dengan setpoint.Proses input dan

output dapat juga didefinisikan sebagai teroptimisasi jika pada proses

input atau output tersebut terdapat sebuah pertimbangan ekonomis atau

kinerja untuk menekan proses variabel dalam arah yang diinginkan hingga

beberapa constraint (batasan) proses menjadi aktif. Pada langkah ini juga

(17)

Controlled (CV) dan Constraint (AV) yang berkaitan dengan proses yang

ingin dikontrol.

2. Membuat modul program MPC. Modul dapat berisikan informasi algoritma,

kondisi, alarm, display, historical information, dan karakteristik lainnya yang

menyatakan perlengkapan proses.

3. Setelah modul program dirancang dalam suatu area project, langkah

selanjutnya adalah asignment program ke data historian yang terdapat dalam

memori sebuah mikro yang disimulasikan menjadi perangkat lunak.

4. Melakukan tes terhadap proses dan data yang didapat akan disimpan secara

otomatis dalam data historian. Berdasarkan data-data yang tersimpan dalam

data historian, selanjutnya akan dibangkitkan model dari proses dan sinyal

kontrol prediksi.

5. Setelah identifikasi model proses dan membangkitkan sinyal kontrol prediksi,

dilakukan perbaikan model sehingga lebih mendekati model proses yang

sebenarnya.

6. Melakukan tes simulasi untuk memastikan algoritma program sudah berjalan

dengan benar. Jika unjuk kerja respon pengontrolan kurang baik, dapat

dilakukan tuning parameter pengontrol sehingga didapatkan respon terbaik.

Langkah ketujuh ditandai dengan garis terputus-putus, dimaksudkan jika

dikehendaki adanya commisioning pada proses sebenarnya (real plant) maka

dilakukan proses download dan menjalankan controller. Pada penerapan ini,

langkah yang dilakukan hanya sebatas pada point 6 saja (simulasi) dan setelahnya

(18)

Gambar II.2 adalah bentuk umum algoritma Model Predictive Control.

(19)

II.1.2 Pengertian Pulse Width Modulation

Pulse Width Modulation (PWM) merupakan suatu cara proses pengaturan

kecepatan secara digital yang digunakan pada motor DC dengan memberikan

pulsa - pulsa untuk waktu on dan off atau yaitu sebuah cara pengalihan daya

dengan menggunakan sistem lebar pulsa untuk mengemudikan kecepatan putaran

motor DC, jadi sebenarnya yang diatur adalah rasio waktu pemberian tegangan

kepada motor DC. Perbandingan panjang waktu on (high) yang lebih lama dari

pada waktu off (low) akan membuat motor DC berputar lebih cepat. Waktu

periode dapat terjadi pada saat Ton dan Toff mempunyai frekuensi yang sama pada

kecepatan yang berbeda. Gambar II.3 adalah gambar perbandingan pulsa high

dan low pada gelombang digital.

Semakin rapat periode antar pulsa, maka frekuensi yang dihasilkan akan

semakin tinggi, dengan ini berarti kecepatan akan dapat bertambah. Semakin

lebar jarak antar pulsa, maka frekuensi semakin rendah ini berarti kecepatan

(20)

kondisi lintasan sekitar yang akan dilewati. Misal pada saat jalan lurus, naik atau

turun tentunya harus mendapatkan nilai PWM yang cukup tepat.

II.1.2.1 Pengenalan Optocoupler

Opto berarti optik dan coupler berarti pemicu. Jadi, dapat diartikan bahwa

optocoupler adalah komponen yang bekerja berdasarkan picu cahaya optik.

Optocoupler termasuk dalam sensor yang terdiri dari dua bagian, yaitu pemancar

dan penerima. Optocoupler adalah kombinasi dari LED inframerah dengan

fototransistor yang dibungkus ke dalam satu kemasan tunggal. Gambar II.4 adalah

contoh bentuk fisik optocoupler.

Gambar II.4 Optocoupler

Bagian pemancar (transmitter) dibangun dari sebuah LED inframerah

untuk mendapatkan ketahanan yang lebih baik daripada menggunakan LED biasa.

Sinar inframerah termasuk pada gelombang elektromagnetik yang tidak terlihat

oleh mata. Cahaya ini tidak muncul ke mata karena panjang gelombang cahaya ini

terlalu panjang untuk respon mata manusia. Sinar infra merah memiliki wilayah

frekuensi 1 x 1012 Hz sampai dengan 1 GHz atau 1014 x frekuensi wilayah

dengan panjang gelombang 1μm-1mm. Cahaya inframerah yang terkandung

dalam optocoupler tidak perlu lensa untuk memfokuskan cahaya karena

(21)

Bagian optocoupler yang berfungsi sebagai penerima (receiver) adalah

fototransistor. Fototransistor adalah komponen elektronik yang berfungsi sebagai

detektor cahaya inframerah. Fototransistor mengubah cahaya menjadi sinyal

listrik. Sinyal listrik (arus) pada input menjadi sinyal optik dengan menggunakan

sumber cahaya yaitu LED dan sinyal optik tersebut dapat diterima detektor untuk

diubah menjadi sinyal listrik kembali. Gambar II.5 adalah gambar blok

optocoupler untuk kontrol motor DC

Gambar II.5Blok Optocoupler untuk kontrol Motor DC

Penggunaan optocoupler dapat diterapkan untuk mendeteksi perputaran

motor. Dengan meletakkan piringan sensor pada celah optocoupler, maka kita

akan mendapatkan data kecepatan putaran dari setiap roda. Agar semakin presisi

pembacaan datanya, piringan sensor tersebut dibuat selang-seling berwarna hitam

dan transparan. Prinsip kerjanya adalah jika antara transistor dan LED dihalangi

atau mendapatkan warna hitam pada piringan, maka fototransistor akan ON

sehingga output dari kolektor akan berlogika high. Sebaliknya jika antara

transistor dan LED tidak dihalangi atau mendapatkan warna putih pada piringan,

(22)

II.1.3 Tool Analisis

Pada tingkat teknik, rekayasa perangkat lunak dimulai dengan serangkaian

tugas pemodelan yang membawanya kepada suatu spesifikasi lengkap dari

persyaratan representasi desain yang komprehensif bagi perangkat lunak yang

akan dibangun. Model analisis, yang sebenarnya merupakan serangkaian model

representasi teknis dari sistem. Saat ini ada dua yang mendominasi landscape

pemodelan analisis. Yang pertama analisis terstruktur, adalah pemodelan klasik

dan yang kedua adalah analisis berorientasi objek.

II.1.3.1 DFD

DFD adalah suatu model logika data atau proses yang dibuat untuk

menggambarkan dari mana asal data dan kemana tujuan data yang keluar dari

sistem, dimana data disimpan, proses apa yang menghasilkan data tersebut dan

interaksi antara data yang tersimpan dan proses yang dikenakan pada data

tersebut.

DFD sering digunakan untuk menggambarkan suatu sistem yang telah ada

atau sistem baru yang akan dikembangkan secara logika tanpa

mempertimbangkan lingkungan fisik dimana data tersebut mengalir atau dimana

(23)

DFD merupakan alat yang digunakan pada metodologi pengembangan

sistem yang terstruktur. Kelebihan utama pendekatan alir data, yaitu :

1. Kejelasan dari menjalankan implementasi teknis sistem.

2. Pemahaman lebih jauh mengenai keterkaitan satu sama lain dalam

sistem dan subsistem.

3. Mengkomunikasikan pengetahuan sistem yang ada dengan pengguna

melalui diagram alir data.

4. Menganalisis sistem yang diajukan untuk menentukan apakah

data-data dan proses yang diperlukan sudah ditetapkan.

DFD terdiri dari context diagram dan diagram rinci (DFDleveled), context

diagram berfungsi memetakan model lingkungan (menggambarkan hubungan

antara entitas luar, masukan dan keluaran sistem), yang direpresentasikan dengan

lingkaran tunggal yang mewakili keseluruhan sistem. DFD leveled

menggambarkan sistem jaringan kerja antara fungsi yang berhubungan satu sama

lain dengan aliran data penyimpanan data, model ini hanya memodelkan sistem

dari sudut pandang fungsi.

Beberapa simbol yang akan digunakan di dalam DFD antara lain adalah

sebagai berikut :

1. Kesatuan luar ( External Entity )

Setiap sistem pasti mempunyai batas sistem yang memisahkan suatu sistem

dengan lingkungan luarnya. Sistem akan menerima input dan menghasilkan

output kepada lingkungan luarnya. Kesatuan luar (external entity) merupakan

(24)

lainnya yang berada dilingkungan luarnya yang akan memberikan input atau

menerima output dari sistem. Kesatuan luar ini kebanyakan adalah salah satu

dari berikut ini :

a. Suatu kantor, departemen atau divisi dalam perusahaan tetapi di luar

sistem yang sedang dikembangkan.

b. Orang atau sekelompok orang di organisasi tetapi di luar sistem yang

sedang dikembangkan.

c. Suatu organisasi atau orang di luar organisasi.

d. Sistem informasi yang lain di luar sistem yang sedang dikembangkan.

e. Sumber asli dari suatu transaksi.

f. Penerimaan akhir dari suatu laporan yang dihasilakn oleh sistem.

2. Aliran Data ( DataFlow )

Aliran data di DFD diberi simbol suatu panah. Aliran data ini mengalir

diantara proses (process), simpan data (data store) dan kesatuan luar (external

entity). Aliran data ini menunjukkan aliran dari data yang dapat berupa

masukkan untuk sistem atau hasil dari proses sistem.

3. Proses

Proses adalah kegiatan atau kerja yang dilakukan oleh orang, mesin atau

komputer dari hasil suatu arus data yang masuk ke dalam proses untuk

dihasilkan arus data yang akan keluar dari proses yang digambarkan secara

umum. Suatu proses dapat ditunjukkan dengan simbol lingkaran atau dengan

(25)

4. Berkas atau Simpanan Data ( Data Store )

Berkas atau simpanan data merupakan simpanan dari data yang dapat berupa :

a. Suatu file atau database di sistem komputer.

b. Suatu arsip atau catatan manual.

c. Suatu kotak tempat data di meja seseorang.

d. Suatu tabel acuan manual.

II.1.3.2 ERD

ERD merupakan notasi grafis dalam pemodelan data konseptual yang

mendeskripsikan hubungan antara penyimpanan. ERD digunakan untuk

memodelkan struktur data dan hubungan antar data, karena hal ini relatif

kompleks. Dengan ERD kita dapat menguji model dengan mengabaikan proses

yang harus dilakukan. ERD menggunakan sejumlah notasi dan simbol untuk

menggambarkan struktur dan hubungan antar data, pada dasarnya ada 3 macam

simbol yang digunakan yaitu :

1. Entity

Entity adalah suatu objek yang dapat diidentifikasi dalam lingkungan

pemakai, sesuatu yang penting bagi pemakai dalam konteks sistem yang akan

dibuat.

2. Atribut

Entiti mempunyai elemen yang disebut atribut, dan berfungsi mendeskripsikan

(26)

3. Hubungan

Relationship sebagaimana halnya entiti maka dalam hubungan pun harus

dibedakan antara hubungan atau bentuk hubungan antar entiti dengan isis dari

hubungan itu sendiri. Relasi antara dua file atau dua tabel dapat dikategorikan

menjadi tiga macam, yaitu :

a. One to One Relationship

Yang berarti entitas pada himpunan entitas A berhubungan paling banyak

dengan satu entitas B, dan begitu juga sebaliknya setiap entitas pada himpunan

entitas B berhubungan paling banyak dengan satu entitas pada himpunan

entitas A.

b. One to Many Relationship

Yang berarti entitas pada himpunan entitas A berhubungan dengan banyak

entitas pada satu himpunan entitas B, tetapi tidak sebaliknya setiap entitas

pada himpunan entitas B berhubungan paling banyak dengan satu entitas pada

himpunan entitas A.

c. Many to Many Relationship

Yang berarti entitas pada himpunan entitas A berhubungan dengan banyak

entitas pada satu himpunan entitas B dan begitu juga sebaliknya setiap entitas

pada himpunan entitas B berhubungan dengan banyak entitas pada himpunan

(27)

II.1.4 Pengertian robot

Robot adalah sebuah alat mekanik yang dapat melakukan tugas fisik, baik

menggunakan pengawasan dan kontrol manusia, ataupun menggunakan program

yang telah didefinisikan terlebih dulu (kecerdasan buatan). Robot biasanya

digunakan untuk tugas yang berat, berbahaya, pekerjaan yang berulang dan kotor.

Biasanya kebanyakan robot industri digunakan dalam bidang produksi.

Penggunaan robot lainnya termasuk untuk pembersihan limbah beracun,

penjelajahan bawah air dan luar angkasa, pertambangan, pekerjaan "cari dan

tolong" (search and rescue), dan untuk pencarian tambang. Dewasa ini robot

mulai memasuki pasaran konsumen di bidang hiburan, dan alat pembantu rumah

tangga, seperti penggunaan dalam alat yang membantu untuk penyedot debu, dan

alat yang membantu untuk pemotong rumput.

II.1.4.1 Macam – macam robot

Secara fisik umumnya robot dalam dunia pendidikan digunakan sebagai

alat bantu menerangkan prinsip ilmu alam atau engineering. Tetapi sebenarnya

robot dapat berfungsi selain dari itu. Robot dapat membantu untuk membuat

perencanaan, pengerjaan, pencapaian sesuatu, keyakinan, serta mengekspresikan

(28)

Berikut ini akan dibahas macam – macam bentuk robot pada umumnya :

1. Robot Mobile

Gambar II.6 adalah gambar robot beroda. Robot Mobil atau Mobile Robot

adalah konstruksi robot yang ciri khasnya adalah mempunyai aktuator berupa roda

untuk menggerakkan keseluruhan badan robot tersebut, sehingga robot tersebut

dapat melakukan perpindahan posisi dari satu titik ke titik yang lain.

Robot mobil ini sangat disukai bagi orang yang mulai mempelajari robot.

Hal ini karena membuat robot mobil tidak memerlukan kerja fisik yang berat.

Untuk dapat membuat sebuah robot mobile minimal diperlukan pengetahuan

tentang mikrokontroler dan sensor-sensor elektronik.

Base robot mobil dapat dengan mudah dibuat dengan menggunakan

plywood atau triplek, akrilik hingga menggunakan logam ( aluminium ). Robot

mobil dapat dibuat sebagai pengikut garis ( LineFollower ) atau pengikut dinding

(29)

2. Robot jaringan

Robot jaringan adalah pendekatan baru untuk melakukan kontrol robot

menggunakan jaringan internet dengan protokol TCP/IP. Perkembangan robot

jaringan dipicu oleh kemajuan jaringan dan internet yang pesat. Dengan

koneksi jaringan, proses kontrol dan monitoring, termasuk akuisisi data bila

ada, seluruhnya dilakukan melalui jaringan. Keuntungan lain, koneksi ini bisa

dilakukan secara nirkabel. Gambar II.7 adalah gambar robot jaringan.

Di Indonesia, pengembang robot jaringan belum banyak, meski

pengembang dan komunitas robot secara umum sudah banyak. Hal ini

disebabkan tuntutan teknis yang jauh lebih kompleks. Salah satu robot jaringan

yang sudah berhasil dikembangkan adalah LIPI Wireless Robot yang

dikembangkan oleh Grup Fisika Teoritik dan Komputasi–GFTK LIPI.

Seperti ditunjukkan di LIPI Wireless Robot, seluruh proses kontrol dan

monitoring bisa dilakukan melalui perambah internet. Lebih jauh, seluruh

(30)

dibuka sebagai open-source dengan lisensi GNU Public License (GPL) oleh

SourceForge dengan nama openNR.

3. Robot Manipulator ( tangan )

Gambar II.8 adalah gambar robot tangan. Robot bertangan hanya

memiliki satu tangan namun fungsinya tidak jauh seperti tangan manusia yang

fungsinya untuk memegang atau memindahkan barang, contoh robot ini adalah

robot las di Industri mobil, robot merakit elektronik.

4. Robot Humanoid

Gambar II.9 adalah gambar robot humanoid. Robot yang memiliki

kemampuan menyerupai manusia, baik fungsi maupun cara bertindak, contoh Gambar II.8 Robot Tangan

(31)

robot ini adalah Ashimo yang dikembangkan oleh Honda. Robot adalah sebuah

alat mekanik yang dapat melakukan tugas fisik, baik menggunakan

pengawasan dan kontrol manusia, ataupun menggunakan program yang telah

didefinisikan terlebih dulu (kecerdasan buatan). Robot biasanya digunakan

untuk tugas yang berat, berbahaya, pekerjaan yang berulang dan kotor.

Biasanya kebanyakan robot industri digunakan dalam bidang produksi.

Penggunaan robot lainnya termasuk untuk pembersihan limbah beracun,

penjelajahan bawah air dan luar angkasa, pertambangan, pekerjaan “cari dan

tolong” (search and rescue), dan untuk pencarian tambang. Belakangan ini

robot mulai memasuki pasaran konsumen di bidang hiburan, dan alat pembantu

rumah tangga, seperti penyedot debu, dan pemotong rumput.

5. Robot Berkaki

(32)

Gambar II.10 adalah gambar robot berkaki. Robot berkaki memiliki

kaki seperti hewan atau manusia, yang mampu melangkah, seperti robot

serangga, robot kepiting, baik untuk berkaki enam maupun delapan.

6. Flying Robot (Robot Terbang)

Gambar II.11 adalah gambar robot yang memiliki kemampuan dapat

terbang diudara. Robot yang mampu terbang ini menyerupai pesawat model

yang di program khusus untuk memonitor keadaan di tanah dari atas, dan juga

untuk meneruskan komunikasi.

7. UnderWater Robot (Robot dalam air)

Gambar II.12 adalah gambar robot dalam air. Robot ini digunakan di

bawah laut untuk memonitor kondisi bawah laut dan juga untuk mengambil

sesuatu di bawah laut.

Gambar II.11 Robot Terbang

(33)

Ada beberapa unjuk kerja robot yang perlu diketahui, antara lain:

a. Resolusi, adalah perubahan gerak terkecil yang dapat diperintahkan

oleh sistem kontrol pada lingkup kerja manipulator.

b. Akurasi adalah besarnya penyimpangan/deviasi terhadap masukan

yang diketahui

c. Repeatability adalah kemampuan robot untuk mengembalikan end

effector (pemegang/griper) pada posisinya semula

d. Fleksibilitas merupakan kelebihan yang dimiliki oleh robot secara

umum jika dibandingkan dengan mesin konvensional. Hal inipun

(34)

Gambar II.13 Bagan model Proses

II.1.5 Pengertian model proses

Model suatu sistem dapat direpresentasikan dalam suatu bentuk ekspresi

matematik. Ekspresi matematik tersebut dapat diturunkan dari hukum-hukum

fisika maupun dari hubungan output terhadap input yang diberikan.Berdasarkan

ekspresi matematik tersebut, maka informasi dinamik serta kondisi steadystate

(ajeg/mantap) dari suatu sistem dapat diperkirakan. Informasi-informasi ini

berguna bagi seorang sistem enjiner dalam melakukan analisis dan teknik disain

(35)

Dalam hubungannya dengan sistem kontrol, sebuah model harus berisi

informasi prediksi perilaku suatu sistem sebagai konsekuensi dari perubahan

kondisi operasi suatu proses. Keterkaitannya dengan konteks ini,berarti sebuah

model dapat berupa fungsi matematika maupun informasi statistik yang dapat

menjelaskan aspek khusus suatu proses tertentu. Selain tinjauan matematika dan

statistik, sebuah model dapat juga dipandang sebagai deskripsi kualitatif dari

perilaku suatu proses. Pengklasifikasian ini ditunjukkan pada gambar II.13 bagan

model proses.

II.1.6 Pengertian Embedded Software

Embedded software adalah sistem komputer dengan tujuan khusus, yang

seluruhnya dimasukkan ke dalam alat yang di kontrol. Embedded software

menunjukkan bahwa sistem ini merupakan bagian yang tidak dapat berdiri sendiri.

Sebuah embedded software memiliki kebutuhan tertentu dan melakukan tugas

yang telah diset sebelumnya, tidak seperti komputer pribadi serba guna. Contoh

sistem atau aplikasinya antara lain adalah instrumentasi medik, process control,

automated vehicles control, dan perangkat komunikasi. Embedded software

biasanya diimplementasikan dengan menggunakan mikrokontroler.

II.1.7 Pengenalan Mikroprocessor

Sebuah mikroprosesor (sering dituliskan: µP) adalah sebuah central

processing unit (CPU) komputer elektronik yang terbuat dari transistor mini dan

(36)

Berikut adalah karakteristik penting dari mikroprosesor :

1. Ukuran bus data internal (internal data bus size): Jumlah saluran yang

terdapat dalam mikroprosesor yang menyatakan jumlah bit yang dapat

ditransfer antar komponen di dalam mikroprosesor.

2. Ukuran bus data eksternal (external data bus size): Jumlah saluran yang

digunakan untuk transfer data antar komponen antara mikroprosesor dan

komponen-komponen di luar mikroprosesor.

3. Ukuran alamat memori (memory address size): Jumlah alamat memori

yang dapat dialamati oleh mikroprosesor secara langsung.

4. Kecepatan clock (clock speed): Rate atau kecepatan clock untuk menuntun

kerja mikroprosesor.

5. Fitur-fitur spesial (special features): Fitur khusus untuk mendukung

aplikasi tertentu seperti fasilitas pemrosesan floating point, multimedia

dan sebagainya.

II.2 Pengenalan Borland Delphi 7

Bahasa pemrograman Delphi merupakan pemrograman visual (berbasis

windows) yang dibuat oleh sebuah Perusahaan Software Borland .Inc. Bahasa

pemrograman Delphi merupakan bahasa pemrograman yang dikembangkan

dari bahasa pemrograman Pascal. Fungsi dari aplikasi ini sama dengan fungsi

(37)

Delphi 7.0 dapat menangani pembuatan aplikasi sederhana hingga aplikasi

berbasis jaringan. Delphi 7.0 dapat dimanfaatkan untuk membuat aplikasi berbasis

teks, grafis, angka, database maupun web.

Bahasa pemrograman visual memiliki dua hal yaitu object dan kode

program. Objek berbentuk komponen yang dapat dilihat (visual), sedangkan kode

program merupakan sekumpulan teks yang digunakan sebagai perintah yang telah

diatur dengan suatu aturan.

Keunggulan yang dimiliki oleh BorlandDelphi yaitu :

a. Memiliki banyak fitur berupa component yang dapat ditambahkan.

b. Dapat merancang dan membuat tampilan perangkat lunak yang bagus

c. Mudah dalam penulisan coding

(38)

33 III.1 Analisis Sistem

Sistem rangkaian pada perangkat lunak sebelumnya merupakan proses

berkesinambungan (looping), dimana memiliki rangkaian elektronik berbasis

mikrokontroler berupa sistem kontrol yang menangani seluruh proses dari proses

akuisisi data berupa data perubahan posisi dan proses pengendalian gerakan robot

melalui aktuator. Aktuator sendiri adalah komponen penggerak seperti motor DC

yang akan memindahkan posisi robot itu sendiri terhadap lingkungan yang dalam

hal ini adalah environment, yang pada akhirnya informasi ini dijadikan masukan

bagi sistem kontrol. Gambar III.1 adalah bagan sistem perangkat lunak

pergerakkan roda robot mobil pada umumnya

(39)

III.1.1 Analisis Masalah

Sistem pada perangkat lunak yang telah terdefinisikan akan memudahkan

dalam perencanaan perancangan rangkaian. Keluaran atau hasil dari sistem adalah

kecepatan putaran motor DC cenderung stabil, artinya pada saat robot melewati

lintasan berupa tanjakkan, umumnya sinyal Pulse Width Modulation pada motor

DC akan menyempit sehingga robot cenderung berjalan lambat atau tidak kuat

bergerak. Perlunya prediksi gangguan berupa data historian sebelum

menyelesaikan looping sistem. Sehingga nilai banyaknya putaran yang

dikehendaki dapat dicapai.

III.1.2 Analisis Algoritma Konvensional

Dalam keadaan nyata membutuhkan media atau alat yang dapat membaca

atau mendeteksi putaran yang sedang berjalan. Media atau alat ini juga dapat

membantu dalam mengatur putaran yang sedang berlangsung agar menghasilkan

putaran yang konstan. Alat ini bernama optocoupler, alat ini nantinya juga akan

membantu jika pada penerapan algoritma Model Predicitve Control diterapkan

pada sisi hardware. Kondisi awal optocoupler akan mendeteksi putaran motor DC.

Data yang terbaca oleh sensor berupa tegangan digital, kemudian diproses oleh

mikrokontroler. Data tersebut dibandingkan dengan set point, untuk menjadi data

keluaran sinyal Pulse Width Modulation. Jika data lebih kecil dari set point, maka

sinyal Pulse Width Modulation tersebut diperlebar. Setelah itu, sinyal tersebut

akan menggerakkan motor DC sehingga robot dapat berjalan dengan kecepatan

(40)

Pada penerapan ke dalam sistem atau dalam hal ini berupa algoritma yang

nantinya akan disimpan dalam mikrokontroler pada robot mobil beroda

membutuhkan bantuan alat yang bernama optocoupler yang berfungsi agar dapat

membaca bahwa telah terjadi putaran pada roda robot. Namun perlu ada

pembacaan pada algoritma yang tertanam pada robot berupa menghitung putaran

yang sedang terjadi. Dengan melakukan pengidentifikasian akan dimisalkan

berupa piringan yang diberi warna selang – seling hitam dan putih seperti pada

gambar III.2 piringan hitam putih. Piringan tersebut dapat dipasangkan pada roda

robot. Jadi jika pada roda robot mengalami pergerakkan, piringan tersebut juga

ikut berputar mengikuti putaran yang sama dengan roda pada robot mobil.

Piringan hitam putih berguna jika pada saat membutuhkan parameter yang

berkaitan dengan putaran roda. Semakin banyak jumlah warna hitam dan putih

pada piringan, semakin teliti pula dalam hal pencatatan putaran. Dikarenakan

(41)

hitam dan putih 16, maka ketelitian minimumnya merupakan kelipatan 1/16 atau

0,0625. Jika jumlah piringan tersebut dibandingkan dengan piringan yang

memiliki jumlah warna hitam dan putihnya lebih sedikit misal 4 atau 8 maka

ketelitian minimum perhitungan waktu untuk hasil putaran menjadi sebesar 1/4

atau 0,25 hingga 1/8 atau 0,125.

Tabel III.1 Pseudocode membaca piringan hitam putih pada proses membaca putaran Procedure hitung putaran()

deklarasi :

putih, hitam, putaran, t, Rps := integer; timer := time;

If putih < 1 then //piringan putaran pertama

putih += 1;

If hitam <= 16 then //piringan hitam

hitam += 2;

Else If hitam > 16 then //looping

hitam  2; End If;

If hitam == 16 then //per satu kali putaran

putaran += 1; End If;

/* pencatatan timer per 1 detik */

(42)

Gambar III.3 Flowchart saat membaca piringan pada proses membaca putaran

Kelebihan :

1. Waktu untuk mengeksekusi relatif lebih cepat.

(43)

Kekurangan :

1. Jika dengan kondisi lintasan berubah, dalam hal ini menanjak. Kecepatan

putaran roda akan tidak stabil. Dikarenakan belum adanya kontrol yang

dapat menjaga nilai banyaknya putaran pada roda.

2. Waktu tempuh akan lebih lama pada kondisi lintasan menanjak.

3. Tidak adanya variabel yang menampung untuk mengkontrol putaran roda.

III.1.3 Analisis Algoritma Model Predictive Control

Proses pada algoritma Model Predictive Control yang digunakan pertama

kali dilakukan robot mobil beroda adalah start dimana akan menjadi masukan

untuk optocoupler. Optocouler berfungsi untuk membaca putaran roda robot,

putaran ini yang akan menjadi masukan pada mikrokontroller untuk kemudian

dilakukan proses selanjutnya berupa perbaikan agar nilai putaran dapat sesuai

dengan yang diinginkan, berupa putaran yang konstan.

Pada gambar III.4 flowchart implementasi algoritma Model Predictive

Control akan menjelaskan proses kerja rangkaian untuk mengatur kecepatan roda

robot, yaitu:

1. Menentukan terlebih dahulu diameter roda, dan sudut elevasi yang akan

disimulasikan.

2. Proses kerja selanjutnya ialah memutar roda, dengan masukan diameter roda

(44)

3. Saat roda telah berputar, maka akan ada proses pembacaan putaran roda

dengan menghasilkan data berupa kecepatan, percepatan atau akselerasi dan

informasi berupa sudut yang sedang dilalui.

4. Setelah mendapatkan kecepatan dan percepatan atau akselerasi. Akan

dilakukan proses perhitungan yang menghasilkan rata – rata yang diambil dari

kecepatan maupun percepatan yang telah dilalui sebelumnya.

5. Selama roda melakukan perputaran, nilai dari kecepatan sekarang akan

dibandingkan dengan kecepatan rata – rata yang telah dihasilkan pada proses

sebelumnya.

6. Dalam proses perbandingan putaran, akan didapat bahwa putaran yang sedang

terjadi sekarang apakah konstan atau tidak. Jika putaran yang dinilai adalah

konstan maka proses akan kembali(looping) pada proses memutar roda.

Karena mempertahankan putaran yang ada agar putaran yang dihasilkan

konstan. Namun jika dinilai putaran yang ada belum konstan sesuai dengan

rata – rata putaran sebelumnya, maka akan melewati proses naik dan turunkan

sinyal.

7. Proses dinyatakan selesai jika tidak terjadi putaran roda. Namun proses akan

terus menerus berulang dimana putaran roda terus terjadi.

Pada perangkat lunak simulasi algoritma Model Predictive Control tidak

akan membahas bagaimana cara menambahkan dan mengurangi sinyal agar

putaran roda berubah. Karena proses tersebut ada pada level hardware berupa

Pulse Width Modulation yang memang di luar dari bahasan algoritma Model

(45)

Gambar III.4 Flowchart implementasi algoritma MPC

Pada proses naik dan menurunkan sinyal Pulse Width Modulation berupa

proses di luar algoritma Model Predictive Control namun juga turut dijelaskan

pada flowchart gambar III.4 di atas karena juga dapat membantu menjelaskan

proses yang sedang berjalan, jika algoritma Model Predictive Control ini

(46)

Pulse Width Modulation. Pulse Width Modulation akan mengatur cepat atau

lambatnya robot berjalan dengan cara jika nilai Pulse Width Modulation yang

berupa sinyal, lebih kecil daripada set point, maka pada mikrokontroller akan

memperlebar sinyal Pulse Width Modulation, begitu juga sebaliknya. Jika nilai

Pulse Width Modulation yang berupa sinyal, lebih besar daripada set point, maka

pada mikrokontroller akan mempersempit sinyal. Sehingga robot dapat berjalan

stabil. Sinyal yang dimaksud adalah berupa frekuensi listrik pada motor DC.

Sedangkan set point yang dimaksud didapat dari sinyal rata-rata yang diperoleh

saat kecepatan hampir konstan atau memliki percepatan yang tidak berubah.

Kelebihan :

1. Kecepatan putaran roda akan relatif stabil dalam kondisi lintasan yang

berubah, dalam hal ini menanjak. Karena adanya penambahan kontrol

pada putaran yang sedang terjadi.

2. Waktu tempuh relatif lebih cepat pada kondisi lintasan menanjak.

3. Terdapat variabel yang menampung untuk mengkontrol putaran roda.

Kekurangan :

1. Adanya jeda waktu(laging) untuk mengeksekusi pergerakan roda.

2. Perlunya variabel tambahan untuk menjaga kondisi pergerakan roda agar

(47)

Gambar III.5 Bagan sistem perangkat lunak pergerakkan roda robot mobil setelah implementasi algoritma MPC

Pada gambar III.5 Bagan sistem perangkat lunak pergerakkan roda robot

mobil setelah implementasi algoritma Model Predictive Control program pada

mikro 2 berisi implementasi algoritma Model Predictive Control yang

dirancang untuk menghitung data masukan dari roda yang berputar, lalu

mengirimkannya ke mikro 1 secara paralel. Program pada mikro 1 berisi

implementasi algoritma Model Predictive Control yang dirancang untuk

membandingkan masukan serial dari sistem minimum mikrokontroller dengan

masukan dari mikro 2 lalu mengatur lebar sinyal Pulse Width Modulation,

kemudian data dikirim ke motor driver sehingga roda robot dapat berjalan

stabil.

(48)

III.1.3.1 Analisis Keterkaitan Algoritma Model Predictive Control dengan metode Pulse Width Modulation

Pada gambar III.4 sebelumnya yang membahas mengenai flowchart

algoritma Model Predicitve Control namun belum menjelaskan bagaimana proses

atau cara menaikan meupun menurunkan sinyal agar memperoleh hasil putaran

yang mendekati dengan yang diharapkan. Dengan membahas keterkaitan atau

relasi antara algoritma Model Predictive Control dengan metode Pulse Width

Modulation diharapkan dapat memperjelas bagaimana cara kerja maupun sistem

yang akan digunakan pada simulasi perputaran roda robot mobil.

Analisis proses akan memberikan pengaturan kontrol proses dalam

terminologi Model Predictive Control. Input dan Output proses digolongkan

dalam 4 katagori yang berbeda. Penggolongan ini berdasarkan penggunaannya

dalam pengontrolan proses[3], yaitu :

a. Manipulated Variabel (MV) – input proses yang diatur untuk menjaga output

proses tetap pada setpoint.

kemudian dibandingkan dengan putaran berikutnya.

c. DisturbanceVariabel (DV) – input proses yang memberi efek terhadap proses

(49)

Dapat berupa sudut elevasi pada lintasan, diameter roda pada robot mobil,

dan bobot mobil.

d. Constraint (AV) – output proses yang harus dijaga dalam suatu definisi batas

jangkauan operasi yang berlawanan dengan set point.

Proses input dan output dapat juga didefinisikan sebagai teroptimisasi jika

pada proses input atau output tersebut terdapat sebuah pertimbangan

ekonomis atau kinerja untuk menekan proses variabel dalam arah yang

diinginkan hingga beberapa constraint (batasan) proses menjadi aktif. Dalam

hal ini yaitu Pulse Width Modulation (PWM), dengan melihat kembali pada

gambar III.4 flowchart algoritma Model Predicitve Control yaitu proses

menaikan atau menurunkan sinyal. Agar didapatkan hasil putaran yang

mendekati konstan. Jika pada simulasi algoritma Model Predicitve Control

dengan cara melakukan penambahan kecepatan namun sedikit-sedikit atau

(50)

III.1.3.2 Analisis Perhitungan yang Berhubungan Dengan Keadaan Riil

Pada perancangan perangkat lunak simulasi algoritma Model Predictive

Control memerlukan analisis mana-mana saja perhitungan yang dapat mewakili

dengan keadaan sebenarnya. Begitupun juga pula pada algoritma Model

Predictive Control yang akan diembed pada perangkat lunak simulasi ini. Jika

melihat kasus lintasan yang menjadi bahasan pada tugas akhir skripsi berupa

tanjakan, maka pasti ada gaya ke belakang robot mobil beroda karena benda

tersebut mempunyai berat, dengan memiliki persamaan yaitu :

F

blk

= m.g.cos α

Fblk = gaya ke belakang sebuah benda

m = bobot benda

g = gravitasi

α = sudut elevasi tanjakan

sebagai contoh, diketahui :

m = 1kg

g = 32.6

α = 15 0

Fblk = 1 x 32.6 x 15

(51)

jika diambil dalam kondisi nyata, maka akan ada gaya gesek, yang arahnya

melawan arah benda, dengan rumus gaya gesekan :

f

k

= μ

k

.m.g.sin α

dikerjakan gaya apapun, atau memang pada algoritma Model Predictive Control

tidak memperhitungkan gaya yang terjadi. Karena memang tidak ada masukan

berupa tenaga atau usaha agar robot mobil beroda dapat melaju dan memang tidak

ada alat atau media yang dapat terpasang dan menghitung usaha yang sedang

terjadi. Karena hal ini diluar cakupan kontrol algoritma Model Predictive Control.

Perhitungan percepatan laju roda dapat diwakili oleh perubahan sudut, dengan

rumus percepatan benda yaitu :

a = percepatan

g = gravitasi

α = sudut elevasi tanjakan

(52)

maka kecepatan akhir mobil tersebut bisa didapat menggunakan rumus GLBB :

atau dimana s = h . sin α

Vt = kecepatan pada waktu tertentu

V0 = kecepatan awal

s = jarak; h = tinggi

t = waktu

Dalam kondisi nyata bobot merupakan faktor yang dapat memengaruhi

cepat atau lambatnya sebuah benda dapat melaju. Namun dapat pula bobot sebuah

benda tidak memengaruhi dalam perhitungan pada simulasi. Dengan asumsi

benda atau robot mobil beroda pada perangkat lunak simulasi adalah benda titik.

Hal ini dapat diterapkan pada simulasi berupa piksel, dengan menganggap

masukan pada perhitungan diwakili oleh piksel yang sedang dilalui. Selanjutnya

faktor yang kurang lebih juga memengaruhi perhitungan adalah diameter roda.

Jika akan memasukkan diameter roda didalam perhitungan perangkat lunak

simulasi, maka langkah selanjutnya harus memperhitungkan torsi perputaran roda

dengan anggapan sebagai berikut :

1. Roda robot mobil yang akan disimulasikan ada empat buah atau

berapapun dengan ukuran yang sama pada masing-masing roda.

2. Roda dianggap berbentuk silinder dengan jari-jari yang diwakilkan

oleh R.

3. Satu-satunya gaya yang bekerja pada setiap roda hanyalah gaya

gesekan :

(53)

4. Setiap roda mendapatkan beban yang sama dari bobot robot mobil,

atau setiap roda mendapatkan bobot mobil dibagi 4, jadi :

fk= μk.1/4 N = ¼ μk.M.g.sin α

Jadi jika memperhitungkan semua torsi yang bekerja pada keempat roda, menjadi:

Sisanya untuk mencari kecepatan robot mobil beroda dapat menggunakan

rumus GLBB seperti di bawah ini :

atau dimana s = h sin α

Vt = kecepatan pada waktu tertentu

V0 = kecepatan awal

α = sudut elevasi t = waktu

ternyata jika melibatkan ukuran diameter roda, massa total mobil dan massa roda

harus diperhitungkan selain gaya gesek dan sudut elevasinya. Hal ini dapat

menjadikan rumit, karena harus memperhitungkan titik berat benda dan jarak titik

pusat kedua roda. Maka untuk memudahkan pembacaan informasi serta

menjalankan yang hanya dapat berhubungan dengan algoritma yang berada pada

(54)

dari luar sistem perputaran roda untuk kemudian diterapkan pada perangkat lunak

simulasi.

III.1.3.2 Analisis Parameter Eksternal yang Digunakan pada Simulasi

Pada gambar 3.4 flowchart implementasi algoritma Model Predictive

Control terdapat simbol – simbol masukan berupa data yang memerlukan

penjelasan yaitu berupa faktor perhitungan lain yang berkaitan dengan putaran

roda, salah satunya yaitu perhitungan kecepatan berdasarkan besar kecilnya

diameter pada roda robot. Berikut merupakan rumus yang dapat menghasilkan

kecepatan dengan diketahui di awal dari banyaknya putaran per detik, dan

diameter roda.

Keterangan :

V = Velocity atau Kecepatan

φ

= diameter atau diameter roda

π

= konstanta dengan nilai 22/7 atau 3.14

rps = rotational per second atau putaran per detik

sebagai contoh, diketahui :

φ

= 1,8 cm

π

= 22/7 atau 3.14

rps = 2 rps

(55)

dengan menggunakan rumus

V =

φ

*

π

* rps

maka :

V = 1,8 x 3,14 x 2

V = 11,304 cm/s

Untuk melakukan perhitungan mengukur perubahan putaran yang terjadi

pada roda robot juga dapat berdasarkan sudut elevasi dengan menggunakan rumus

perhitungan seperti berikut.

A = V2 *

sin

((

α

*

π

) / 180)

Keterangan :

A = Acceleration atau Percepatan

V = Velocity atau Kecepatan

α

= angle atau sudut elevasi

(56)

π

= phi, konstanta dengan nilai 22/7 atau 3.14

sebagai contoh, diketahui :

V = 1,8

α

= 150

π

= 22/7 atau 3.14

dengan menggunakan rumus

A = V2 *

sin

((

α

*

π

) / 180)

maka :

A = V2 *

sin

((

α

*

π

) / 180)

A = 1,82 x sin ((15 x 3,14) / 180)

A = 3,24 x sin (47,1/180)

A = 3,24 x sin 0,26

(57)

III.1.3.3 Analisis Korelasi Satuan yang Digunakan pada Simulasi

Analisis satuan yang digunakan pada kejadian sebenarnya adalah

satuan yang umum digunakan dan sesuai dengan environment atau hal-hal

sekitarnya, seperti halnya dengan penggunaan satuan untuk kecepatan benda

adalah cm/s. Menggunakan sentimeter per detik dikarenakan environment

sekelilingnya lintasan yang dilalui tidak lebih jauh dari satuan meter bahkan

kilometer. Jarak yang dilalui tidak mencapai angka puluhan meter ataupun

kilometer, maka tepat dan efisien dengan menggunakan satuan cm/s saja.

Dalam penerapan kedalam simulasi perangkat lunak. Didalam layar

yang digunakan juga bisa dikatakan tidak efisien jika menggunakan satuan

cm/s atau sentimeter per detik. Hal ini bisa dianalisis dengan melihat layar

yang digunakan pada saat simulasi memiliki lebar yang terbatas. Maka agar

satuan kecepatan pada saat simulasi tepat dan efisien jika menggunakan

satuan piksel, sesuai dengan karakteristik layar. Satuan kecepatan yang akan

digunakan menggantikan satuan jarak pada kondisi nyata diwakili dengan

satuan piksel per detik.

Tabel III-2 Korelasi Satuan antara Riil dengan Simulasi

Satuan Kondisi real Layar

Jarak Sentimeter Piksel

Kecepatan Cm / s Piksel / detik

(58)

Dengan layar antarmuka, dan spesifikasi yang dimiliki oleh perangkat keras yang

digunakan pada pembangunan perangkat lunak memiliki karakteristik sebagai

berikut :

Resolusi : 1366 x 768 piksel

Kedalaman : 96 Pixel Per Inch (PPI)

Pada Kedalaman 96 PPI dengan artian bahwa setiap 1 inch pada layar

memiliki 96 piksel, namun satuan jarak pada perangkat lunak yang akan

digunakan ialah sentimeter. Perlu adanya perubahan satuan agar penggunaan jarak

pada layar dapat mendekati keadaan nyata.

1 inch≈ 2,54 sentimeter

1 inch≈ 96 piksel

= 37,8 piksel per sentimeter

Maka didapat kedalaman layar dengan 37,8 PPC atau setara dengan 96

PPI. Didalam penggunaan perangkat lunak perhitungan jarak, kecepatan, dan

percepatan sudah dapat menggunakan satuan sentimeter, namun diharuskan

(59)

III.1.4 Analisis Kebutuhan Non Fungsional

Analisis kebutuhan non fungsional merupakan bagian penting lainnya

agar simulasi perangkat lunak dapat berjalan dengan baik. Untuk mengetahui

elemen-elemen yang berhubungan dengan sistem yang sedang berjalan.

III.1.4.1 Kebutuhan Karakteristik Perangkat Keras Pembangun Simulasi

Perangkat keras pendukung dalam membangun simulasi perangkat

lunak ini membutuhkan seperangkat komputer dengan spesifikasi minimum :

1. Processor 1.7 Ghz

2. RAM 1 GB.

3. Harddisk 80 GB.

4. Monitor dengan resolusi minimum 1366 x 768 piksel

III .1.4.2 Kebutuhan Karakteristik Perangkat Lunak Pembangun Simulasi

Perangkat lunak pendukung dalam membangun perangkat lunak simulasi

algoritma Model Predictive Control adalah :

1. Sistem operasi windows xp sp2.

(60)

III.1.4.3 Kebutuhan Karakteristik Perangkat Keras Pengguna Simulasi

Perangkat keras pendukung agar dapat menggunakan simulasi perangkat

lunak algoritma Model Predictive Control kurang lebih membutuhkan

seperangkat komputer dengan spesifikasi minimum :

1. Processor intel 1.7 Ghz.

2. RAM 512 MB.

3. Harddisk20GB.

4. Monitor dengan resolusi minimum 1366 x 768 piksel

III.1.4.4 Kebutuhan Karakteristik Perangkat Lunak Pengguna Simulasi

Perangkat lunak pendukung agar dapat menggunakan simulasi perangkat

lunak algoritma Model Predictive Control dengan spesifikasi minimum sistem

operasi windows xp sp2.

III.1.4.5 Karakteristik Pengguna

Dalam menggunakan simulasi perangkat lunak dibutuhkan pengguna yang

sudah berpengalaman dalam menggunakan komputer atau yang telah mengikuti

training simulasi perangkat lunak ini dengan karakteristik sebagai berikut :

Tabel III.3 Karakteristik Pengguna

Pengguna Tanggung Jawab Hak Akses Tingkat Pendidikan

Umum -- berinteraksi dengan

perangkat lunak

(61)

III.1.5 Analisis Kebutuhan Fungsional

Analisis kebutuhan fungsional ini meliputi Entity Relationship

Diagram(ERD) dan Data Flow Diagram (DFD). Entity Relationship Diagram

menjelaskan kardinalitas antara entitas – enitas dan menjelaskan pula relasi antar

entitas – entitas yang berada pada simulasi perangkat lunak algoritma Model

Predictive Control. Data Flow Diagram berikut ini merupakan alat yang dapat

menggambarkan suatu proses di dalam sistem secara terstruktur dan jelas, serta

dokumentasi dari perangkat lunak yang baik. DFD suatu level dapat diturunkan

menjadi level berikutnya jika memang terdapat proses yang masih dapat

dijelaskan.

III.1.5.1 ERD Perangkat Lunak Implementasi Algoritma MPC

Pembangunan perangkat lunak implementasi algoritma Model Predictive

Control tidak menghasilkan tabel. Data akan ada jika proses perhitungan

dilakukan yaitu disaat proses menghitung kecepatan, percepatan dan sudut

(62)

III.1.5.2 Diagram Konteks Perangkat Lunak Implementasi Algoritma MPC

Untuk menggambarkan analisis perangkat lunak secara umum digunakan

alat bantu yaitu diagram konteks dan data flow diagram. Diagram konteks dari

perangkat lunak simulasi algoritma Model Predictive Control yang akan dibangun

adalah sebagai berikut :

IMPLEMENTASI ALGORITMA

MODEL PREDICTIVE CONTROL

SEBAGAI PENGONTROL KECEPATAN PADA RODA

ROBOT MOBIL

pengguna

info_putaran, info_sudut sekarang

data_permintaan_lintasan data_diameter_roda,

berat_objek,

(63)

III.1.5.3 DFD Level 1

Pada DFD Level 1 akan dibagi menjadi tiga garis besar proses utama,

yaitu pemilihan lintasan, pemilihan diameter roda, dan simulasi.

1. Pemilihan lintasan

Dimana dengan memilih lintasan, dengan sekaligus pengguna memilih sudut

yang akan diperlihatkan pada simulasi perangkat lunak.

2. Penggambaran

Menginputkan jika akan melakukan perubahan diameter roda, dan melakukan

perubahan bentuk berupa letak titik koordinat pada kanvas.

3. Perhitungan

Dalam proses ini akan menampilkan perubahan pergerakan setelah diameter

roda diatur, dan memilih lintasan agar mendapatkan informasi yang terjadi

dari perbandingan antara algoritma Model Predictive Control dengan

algoritma robot konvensional. hasil berupa kecepatan, akselerasi, dan sudut

Gambar

Gambar II.10 Robot Berkaki
Gambar II.12 Robot dalam air
Gambar II.13 Bagan model Proses
Gambar III.1 Bagan sistem perangkat lunak pergerakkan roda robot mobil pada umumnya
+7

Referensi

Dokumen terkait