kendali level air

15
KENDALI LEVEL AIR DENGAN MENGGUNAKAN PARAMETER PID CONTROLLER Dede Iskandar 1 , Yuda Bakti Zainal 2 Teknik Elektro, Fakultas Teknik Universitas Jenderal Achmad Yani Cimahi 40533 Email: [email protected] [email protected] Abstract: Proportional Integral Derivative (PID) controller is a feedback controllers that most popular in the industrialized world. Can not be denied, until recently PID control is one of the most widely adopted strategy in controlling process variables in the industry. Based on the survey, 97% found the fact that the industry engaged in the process (such as chemical industry, pulp, food, oil and gas) using the PID as the main component in the control. PID is popular because its structure is simple, and easy tuning parameters are also very easy operation. On the basis of the author tries to give depth to water level control by using PID controllers, where the plant installed an ultrasonic sensor (Ping) to detect a level. The value generated by the sensor is processed by a microcontroller (ATMega8535) then its value is sent to a computer, the computer (Visual Basic 6.0) was performed in the calculation of PID and PID calculation results are then sent back to the microcontroller to be used to drive a motor pump to pump water into the reservoir . In the study tuning parameters Kp, Ti and Td with heuristic methods. Robust condition is obtained when the value of Kp = 30, Ti = 3 and Td = 10. The results of the control parameters are designed still have overshoot, but the isolation is very small, reaching 10,4 seconds settling time and steady state error 0,53%. Keywords: PID controller, water level control, Microcontroller, Ping Ultrasonic. 1. PENDAHULUAN 1.1 Latar Belakang Dunia industri terus berkembang dengan sistem-sistem yang baru dalam bidang manufaktur maupun energi, khususnya sistem kontrol. Saat ini banyak sekali ditawarkan suatu metode kontrol yang efektif dan mudah untuk diimplementasikan, salah satunya kontrol dengan sistem PID (Proporsional Integral Derivative). Kepopuleran PID sebagai komponen kontrol proses dilatarbelakangi terutama oleh kesederhanaan struktur, serta kemudahan dalam melakukan tuning parameter kontrolnya. Pada tingkat pengoperasian, seorang operator tidak dituntut untuk menguasai pengetahuan matematika yang relative rumit, melainkan hanya dibutuhkan pengalaman lapangan saja. Kontrol level air merupakan salah satu dari sekian banyak system yang ada dalam dunia industri. Selain sederhana, sistem tersebut banyak sekali digunakan dalam dunia industri, misalnya: industri kimia, proses produksi minyak dan gas, dan lain-lain. Dengan dukungan sistem SCADA, proses industri dapat dimonitoring dan dikontrol dari jarak jauh, sehingga bisa menghemat biaya, waktu dan tenaga. SCADA akan semakin memberikan gambaran tentang kondisi sebenarnya yang ada dalam dunia industri.

Upload: kemas-rizal

Post on 17-Jan-2017

193 views

Category:

Engineering


18 download

TRANSCRIPT

Page 1: Kendali level air

KENDALI LEVEL AIR DENGAN MENGGUNAKAN PARAMETER PIDCONTROLLER

Dede Iskandar1, Yuda Bakti Zainal2

Teknik Elektro, Fakultas TeknikUniversitas Jenderal Achmad Yani Cimahi 40533

Email: [email protected]@gmail.com

Abstract:Proportional Integral Derivative (PID) controller is a feedback controllers that most

popular in the industrialized world. Can not be denied, until recently PID control is one of themost widely adopted strategy in controlling process variables in the industry. Based on thesurvey, 97% found the fact that the industry engaged in the process (such as chemical industry,pulp, food, oil and gas) using the PID as the main component in the control. PID is popularbecause its structure is simple, and easy tuning parameters are also very easy operation.On the basis of the author tries to give depth to water level control by using PID controllers,where the plant installed an ultrasonic sensor (Ping) to detect a level. The value generated bythe sensor is processed by a microcontroller (ATMega8535) then its value is sent to a computer,the computer (Visual Basic 6.0) was performed in the calculation of PID and PID calculationresults are then sent back to the microcontroller to be used to drive a motor pump to pump waterinto the reservoir .In the study tuning parameters Kp, Ti and Td with heuristic methods. Robust condition isobtained when the value of Kp = 30, Ti = 3 and Td = 10. The results of the control parametersare designed still have overshoot, but the isolation is very small, reaching 10,4 seconds settlingtime and steady state error 0,53%.

Keywords: PID controller, water level control, Microcontroller, Ping Ultrasonic.

1. PENDAHULUAN

1.1 Latar BelakangDunia industri terus berkembang

dengan sistem-sistem yang baru dalambidang manufaktur maupun energi,khususnya sistem kontrol. Saat ini banyaksekali ditawarkan suatu metode kontrol yangefektif dan mudah untuk diimplementasikan,salah satunya kontrol dengan sistem PID(Proporsional Integral Derivative).

Kepopuleran PID sebagai komponenkontrol proses dilatarbelakangi terutamaoleh kesederhanaan struktur, sertakemudahan dalam melakukan tuningparameter kontrolnya. Pada tingkatpengoperasian, seorang operator tidakdituntut untuk menguasai pengetahuan

matematika yang relative rumit, melainkanhanya dibutuhkan pengalaman lapangansaja.

Kontrol level air merupakan salahsatu dari sekian banyak system yang adadalam dunia industri. Selain sederhana,sistem tersebut banyak sekali digunakandalam dunia industri, misalnya: industrikimia, proses produksi minyak dan gas, danlain-lain. Dengan dukungan sistem SCADA,proses industri dapat dimonitoring dandikontrol dari jarak jauh, sehingga bisamenghemat biaya, waktu dan tenaga.SCADA akan semakin memberikangambaran tentang kondisi sebenarnya yangada dalam dunia industri.

Page 2: Kendali level air

Pada penelitian ini akan dilakukanperancangan miniatur kontrol level air,dengan menerapkan sensor ultrasonic untukmengukur ketinggian air dan pembuatansoftware untuk kontrol dan monitoringmenggunakan Visual Basic 6.0.

1.2 Perumusan MasalahPermasalahan pada penelitian ini

adalah:1. Bagaimana cara menerapkan sensor

ultrasonik untuk mengukur level air.2. Bagaimana membuat interface untuk

menggerakan pompa denganmenggunakan inverter.

3. Bagaimana membuat sebuah tampilan dikomputer untuk memonitoring danmenampilkan data akuisi denganmenggunakan Visual Basic 6.0.

4. Bagaimana implementasi PID kontrolerpada kendali level air.

1.3 Batasan MasalahAdapun hal-hal yang membatasi

Penelitian ini adalah:1. Kerja sistem adalah mempertahankan

level ketingian air pada posisi atau levelyang ditentukan dan dapat diatur.

2. Sistem dibuat dalam suatu modul berupaminiatur dengan ukuran tandon32x23x22 cm.

3. Pompa air yang digunakan dengansupply tegangan 3 fasa yang diaturmenggunakan inverter.

4. Sensor yang digunakan untukmendeteksi level air adalah sensorPing Ultrasonik yang bekerjaberdasarkan prinsip pemantulan danpenerimaan gelombang ultrasonik.

5. Sensor ping ultrasonik diletakkan di atastandon

6. Metode pengendalian yang digunakanadalah PID (Proporsional IntegralDerivatif) .

7. Metode tuning kontrol PID yangdigunakan adalah metode trial and error(heuristic method).

8. Mikrokontroler yang digunakan yaitumikrokontroler AVR ATMega8535 yangdiprogram menggunakan Code VisionAVR.

9. Program yang digunakan untuk kendalimenggunakan Microsoft Visual Basic6.0 yang dipasang pada komputer yangnantinya akan dikomunikasikan denganmikrokontroler.

1.4 TujuanAdapun tujuan yang ingin dicapai

dalam penelitian ini adalah:1. Membuat miniatur kendali level air yang

menyerupai modul dalam dunia industri.2. Membuat tampilan kendali dan data

akuisi dari Ms. Visual Basic 6.0 untuksuatu plant yang dikontrol olehMikrokontroler.

3. Membuat suatu sistem kontrol yangmenggunakan sistem kontrol PID yangmemiliki respon cepat dan memiliki nilaierror yang kecil.

4. Mencari parameter kontrol PID yangpaling baik dengan metode heuristik.

2. TEORI PENUNJANG

2.1 Aksi Kontroler PIDKontrol PID merupakan alat standar bagiotomasi industri. Fleksibilitas pada kontrolermembuat kontrol PID digunakan padabanyak situasi. Kontroller juga dapatdigunakan pada selective control maupunkonfigurasi kontroller yang lain. AlgoritmaPID dapat didefinisikan sebagai berikut:

dimana,u(t) = sinyal kontrole(t) = errorKc = gain kontrollerTI = integral timeTD = derivative time

Page 3: Kendali level air

Ada beberapa representasi daritransfer function PID controller : Transfer Function PID controller dalam

domain s dapat dinyatakan sebagaiberikut :

Dengan Kp, Ki , dan Kd masing –masing adalah gain P, I, dan D. Bentukdiatas dapat pula ditulis dalam bentuk lain,sebagai berikut :

Bila dinyatakan dalam domain waktu (t),PID controller dapat ditulis :

Pengendali Proporsional (P)Kontroler proporsional memiliki 2

parameter, pita proporsional (proportionalband) dan konstanta proporsional. Daerahkerja kontroler efektif dicerminkan oleh pitaproporsional [Gunterus,1994], sedangkankonstanta proporsional menunjukkan nilaifactor penguatan terhadap sinyal kesalahan,Kp. Hubungan antara proporsional band(PB) dengan konstanta proporsional (Kp)ditunjukkan secara oleh Persamaan berikut:

Dimana : PB = Proportional BandKp = Gain Proses

Diagram blok pengendali proportionalditujukkan seperti pada gambar 2.9 :

Gambar 2.1 Diagram Blok PengendaliProporsional

Penggunaan mode kontrol proporsionalharus memperhatikan hal – hal berikut :

jika nilai Kp kecil, mode kontrolproporsional hanya mampu melakukankoreksi kesalahan yang kecil, sehinggaakan menghasilkan respon sistem yanglambat.

jika nilai Kp dinaikkan, respon sistemmenunjukkan semakin cepat mencapaikeadaan stabilnya.

Namun jika nilai Kp diperbesar sehinggamencapai harga yang berlebihan, akanmengakibatkan system bekerja tidakstabil, atau respon sistem akanberosilasi.

Kontrol P (Proportional) selalu sebandingdengan besarnya input. Bentuk transferfunction dari kontrol P adalah

U = Kc . edimana ; Kc = gain kontrolproporsional

Pengendali Integral (I)Kontroller integral memiliki karakteristikseperti halnya sebuah integral. Keluarankontroller sangat dipengaruhi olehperubahan yang sebanding dengan nilaisinyal kesalahan. Keluaran kontroller inimerupakan jumlahan yang terus menerusdari perubahan masukannya. Kalau sinyalkesalahan tidak mengalami perubahan,keluaran akan menjaga keadaan sepertisebelum terjadinya perubahan masukan.Diagram blok mode kontrol integralditunjukkan oleh gambar 2.12.

Gambar 2.2 Diagram Blok PengendaliIntegral

Kontroler integral mempunyai beberapakarakteristik berikut ini: Keluaran kontroler butuh selang waktu

tertentu, sehingga kontroler integralcenderung memperlambat respon.

Page 4: Kendali level air

Ketika sinyal kesalahan berharga nol,keluaran kontroler akan bertahan padanilai sebelumnya.

Jika sinyal kesalahan tidak berharga nol,keluaran akan menunjukkan kenaikanatau penurunan yang dipengaruhi olehbesarnya sinyal kesalahan dan nilai Ki.

Konstanta integral Ki berharga besar,offset akan cepat hilang. Saat nilai Kibesar akan berakibat peningkatan osilasidari sinyal keluaran kontroller .

Transfer function dari unit control integraladalah :

Dimana :TI = integral timee = error (input dari unit control)Kc = gain dari controller

Pegendali Diffrensial (D)Keluaran kontroller differensial memilikisifat seperti halnya suatu operasi derivatif.Perubahan yang mendadak pada masukankontroller, akan mengakibatkan perubahanyang sangat besar dan cepat. Diagram blokpengendali difrensial ditunjukkan olehgambar 2.11.

Gambar 2.3 Diagram Blok PengendaliDiferensial

Karakteristik dari kontroller differensialadalah sebagai berikut: Kontroler ini tidak dapat menghasilkan

keluaran bila tidak ada perubahan atauerror sebagai sinyal kesalahan untukmasukannya.

Jika sinyal error berubah terhadapwaktu, maka keluaran yang dihasilkankontroller tergantung pada nilai Td danlaju perubahan sinyal kesalahan.

Kontroller differensial mempunyaikarakter untuk mendahului, sehinggakontroller ini dapat menghasilkankoreksi yang signifikan sebelumpembangkit error menjadi sangat besar.Jadi controller differensial dapatmengantisipasi pembangkit error,memberikan aksi yang bersifat korektif,dan cenderung meningkatkan stabilitassistem [Ogata, 1997].

Transfer function dari unit controldifferential adalah :

dimana,KC = gaine = errorTD = derivative timeUnit pengendali differensial yang

bersifat reaktif sangat tepat bagipengendalian temperatur karena mampubereaksi secara cepat terhadap perubahaninput. Sebaliknya mode control D tidakdapat dipakai untuk process variable yangberiak (mengandung noise) sepertipengendalian level dan flow, karena riak dangelombang akan dideferensialkan menjadipulsa-pulsa yang tidak beraturan. Akibatnya,control valve terbuka dan tertutup secaratidak beraturan dan sistem menjadi kacau.Selain itu, mode control D tidak dapatmegeluarkan output bila tidak adaperubahan input. Sehingga, control D tidakpernah dipakai sendirian. Unit control Dselalu dipakai dalam kombinasinya denganP dan I, menjadi mode control PD ataumode control PID.

Keluaran kontroller PID merupakanpenjumlahan dari keluaran kontrollerproporsional, kontroller integral dankontroller differensial. Gambar diatasmenunjukkan hubungan input dan outputpada mode control PID. Karakteristikkontroller PID sangat dipengaruhi olehkontribusi besar dari ketiga parameter P, I

Page 5: Kendali level air

dan D. Penngaturan nilai konstanta Kp, Ti,dan Td akan mengakibatkan penonjolan sifatdari masing-masing elemen.

Gambar 2.4 Diagram Blok Pengendali PID.Satu atau dua dari ketiga konstanta

tersebut dapat disetting lebih menonjoldibanding yang lain sehingga konstantayang menonjol itulah akan memberikankontribusi lebih dominan pada respon sistemsecara keseluruhan [Gunterus, 1994].Pengaruh nilai Kp, Ti dan Td pada responsistem adalah : Kp yang kecil akan membuat pengendali

menjadi sensitif dan cenderungmembawa loop berosilasi, sedangkan Kpyang besar akan meninggaakan offsetyang besar juga.

Ti yang kecil bermanfaat untukmenghilangkan offset tetapi jugacenderung membawa sistem menjadilebih sensitf dan lebih mudah berosilasi,seangkan Ti yang besar belum tentuefektif menghilangkan offset dan jugacenderung membuat sistem menjadilambat.

Td yang besar akan membawa unsur Dmenjadi lebih menonjol sehingga responcenderung cepat, sedangkan Td yangkecil kurang memberi nilai ekstra padasaat – saat awal.

2.2 Kontroler PID Diskrit

Kontroler Proporsional IntegralDerivatif (PID) adalah kontroler yangmenggabungkan kontroler proporsional,integral dan derivatif. Kontroler ini

direpresentasikan dengan persamaan sebagaiberikut:

dimana Kp adalah konstanta proporsional, Timenyatakan waktu integral dan Tdmenyatakan waktu derivatif. Persamaandiatas adalah persamaan dalam domainwaktu. Untuk memudahkan penulisan dalamprogram, maka persamaan diatasdikonversikan ke dalam bentuk diskrit,dengan menggunakan finite differential ordepertama yang direpresentasikan dalampersamaan berikut:

dan

Sehingga persamaannya menjadi:

Dimana:

Apabila,

Maka persamaan kontroler PID dalambentuk diskrit adalah sebagai berikut:

Dimana:Sn = Jumlah seluruh nilai error padainterval 0 hingga nTs

S n-1 = Sn sebelumnya,en = error sekarang,en-1 = error sebelumnya,mn = output sekarang.

3. PERANCANGAN

Dalam bab ini akan dijelaskanmengenai perancangan system secarakeseluruhan. Bab ini dibagi menjadi empat

Page 6: Kendali level air

bagian besar yaitu pada bagian pertamamembahas mengenai desain sistem,kemudian dilanjutkan dengan bagian keduayang menjelaskan mengenai perangkat keras(hardware) yang digunakan. Pada bagianketiga membahas mengenai perancanganmekanik, dan yang terakhir adalahperancangan perangkat lunak (software)yang digunakan untuk mengolah informasiyang didapat dari perangkat keras.

3.1 Desain SistemSystem kendali yang baik adalah

suatu system yang dapat melakukan suatuproses koreksi sendiri serta dapatmemperbaiki error pada system itu sendiri.Pada perancangan system kendali ini,digunakan rangkaian AVR ATMega8535yang berfungsi sebagai otak dari system ini.Untuk plantnya menggunakan sebuahpompa motor AC 3 phasa yang dikontrololeh debuah inverter altivar 12, sedangkanuntuk feedback-nya menggunakan sensorultrasonic yang nantinya akan dibandingkannilainya dengan besarnya set point. Secaragaris besar cara kerja alat ini dapat dilihatpada blok diagram dibawah ini:

Gambar 3.1. Blok Diagram System Secara Keseluruhan

Pembuatan kontrol PID ini bertujuanuntuk mengontrol sebuah plant. Plant disiniadalah sebuah pengendalian level air(pompa motor AC 3 phasa). Kontrol PID iniakan dihubungkan dengan beberaparangkaian lainnya supaya dapatmengendalikan level air yaitu denganmengatur kecepatan putaran pompa tersebut.Diantaranya adalah rangkaian DAC yangberfungsi untuk mengubah nilai digitalmenjadi nilai analog, sebuah inverter yangberfungsi untuk mengatur kecepatan putaranpompa motor, sebuah pompa motor ACyang digunakan untuk memompa air agarlevel air sesuai yang diinginkan, sebuah

sensor ultrasonic yang berfungsi mendeteksiketinggian level air, selain itu terdapat pularangkaian mikrokontroler dan rangkaianRS232 yang digunakan untukmenghubungkan alat ke komputer.

3.2 Perancangan HardwarePada perancangan hardware ini akan

dibagi menjadi beberapa bagian, diantaranyameliputi: Mikrokontroler, DAC (digital toanalog converter), Inverter altivar 12,Pompa motor AC 3 phasa, SensorUltrasonic, LCD, dan RS232.

3.2.1 Mikrokontroler

Page 7: Kendali level air

Modul Mikrokontroler inimerupakan bagian yang terpenting karenarangkaian ini adalah pengendali dariinput/output rangkaian lain, selain itu modulini terdiri dari rangkaian Clock dan Reset.

Pada pembuatan alat ini, digunakanmikrokontroler ATMega8535 yang memiliki8 kB flash memory yang membutuhkantegangan supply (Vcc) sebesar +5V danakan bekerja pada frekuensi oscillator yangdipakai. Mikrokontroler ini mempunyaioscillator internal yang dapat digunakansebagai penghasil clock yang menggerakanCPU. Oscillator yang digunakan yaituberupa oscillator Crystal, oscillator Crystalini dihubungkan pararel denganMikrokontroler ATmega8535.

Gambar 3.2 Sistem MinimumMikrokontroler

Pada sistem ini akan dipakaiOscillator Crystal dengan frekuensi 11,0592MHz dan dipakai dua buah kapasitor 22pfyang dihubungkan dengan XTAL 1 danXTAL 2 pada Mikrokontroler. PemilihanCrystal dengan frekuensi ini adalah denganpertimbangan agar lebih cepat dalammelakukan proses perhitungan.

Selain itu Mikrokontroler memilikisaluran reset aktif tinggi (High) sehinggasaluran reset ini harus dijaga agar tetapberada pada kondisi rendah (Low). Pin RST

digunakan untuk me-reset program (mulaikeadaan awal 0000H) dengan memberikansinyal high pada pin. Namun digunakansebuah resistor pull-down yang dihubungkandengan ground agar pin RST tidak beradapada kondisi mengambang (floating). Agarmikrokontroler direset pada saatdihubungkan dengan sumber tegangan,maka pin reset dihubungkan dengan VCCmelalui kapasitor 10nF.

Mikrokontrol ini diprogram denganmenggunakan bahasa pemrogramanCodeVision AVR. Pada mikrokontroler initerdapat pembagian port yang digunakansebagai kontrol yaitu: Port A, dihubungkan ke rangkaian DAC

0800. Port B, PB.0 dihubungkan ke sensor

ultrasonic. Port C, dihubungkan dengan LCD. Port D, PD.0 dan PD.1 digunakan untuk

komunikasi serial RS232 yangdihubungkan dengan komputer. PD.2dihubungkan dengan relay yangdigunakan untuk men-trigger inverter.

Berikut ini adalah gambar koneksiport ATMega 8535 dengan rangkaianlainnya:

Gambar 3.3 Koneksi Port ATMega 8535

3.2.2 DAC

Page 8: Kendali level air

Pada pembuatan rangkaian DAC inidigunakan sebuah IC DAC 0800 yangbekerja pada system 8 bit yang memiliki 16pin dan sebuah IC UA741CN 8 pin yangberfungsi untuk mengubah arus menjaditegangan. Besarnya tegangan yang akandihasilkan oleh DAC (tegangan yangdiinginkan sebesar 10V) dapat dihitungdengan perumusan sebagai berikut:

Vref / Rref = I(3.1)

Vref = 10VI = 2mA (datasheets)

Rref = Vref / IRref = 10V / 2mAjadi, Rref = 5 KΩ, RL = Rref

Berikut ini adalah gambar rangkaiandari DAC 0800:

Gambar 3.4 Rangkaian DAC 0800

Rangkaian DAC 0800 ini akandihubungkan dengan inverter altivar 12untuk mengontrol kecepatan pompa motorAC 3 phasa.

3.2.3 Sensor Ping UltrasonicSistem sensor ultrasonik digunakan

sebagai masukan dari proses pengontrolanrobot terbagi atas dua bagian, yaitu untukperangkat keras dan lunak (kontroller).1. Sensor Ultrasonic (Hardware)

Sensor ultrasonik menggunakanmodul jadi dari PARALLAX. Dengan 1buah pin kontrol yaitu sebuah pin I/O.

Gambar 3.7 PING))) Ultrasonic RangeFinder

Pada perancangan alat ini menggunakansensor ultrasonik yang dipasang pada bagianatas tandon yang digunakan untukmengamati perubahan level.

Sensor ultrasonik ini mengirim datake mikrokontroller secara terus-menerussehingga sensor ultrasonik akan aktif dalampengiriman data. Output dari modul iniberupa data pwm sehingga data jarak samadengan duty cycle dari sinyal output.Semakin jauh objek maka semakin besarduty cycle. Untuk mengaktifkan sensormaka modul diberi triger pulsa maka sensorakan mengeluarkan sinyal pwm dan dutycycle tersebut sebagai jarak objek dengansensor.2. Sensor Ultrasonic (Software)

Mikrokontroller memberikan sinyalpulsa high pada pin triger pulse input darisensor untuk mengaktifkan sensorultrasonik. Untuk menghitung lebar pulsemengunakan timer0. Timer0 aktif ketikaregister TCCR0B diisi dengan nilai 4H yangberarti bahwa timer berjalan denganfrekuensi 43,2 KHz. Pin echo pulse outputterhubung dengan pin-pin padamikrokontroler. Ketika pin echo pulseoutput high maka timer0 aktif dan ketika pinecho kembali bernilai low maka timer0dimatikan dan data TCNT0 diambil sebagaidata jarak. Sementara jika timer menghitungsampai terjadi overflow dan masuk ke dalaminterrupt overflow, maka jarak dianggapmaksimal, yaitu 255.

Page 9: Kendali level air

START

Inisialisasi timerTimer/counter=0

Set_kirim=1

Set_kirim=0

Echo=1

Delay 5uS

1

Ya

Tidak

1

Stop TimerTimer Counter=255

Stop Timer

Data_us=timer/counter

Start Timer

TimerOverflow?

Echo=0

Kirimdata_us

STOP

Ya

Tidak

Ya

Tidak

Gambar 3.8 Flowchart Kontrol SensorUltrasonik

Gambar 3.9 List Program SensorUltrasonik

Pin trigger dan echo dari modulultrasonik dihubungkan dengan PORTB.0pada mikrokontroler ATMega 8535. Pintrigger diberi sinyal ”high” minimal selama5us. Selanjutnya ditunggu sampai pin echomenjadi ”high”, yang menunjukkan bahwamodul sensor telah memancarkangelombang ultrasonik. Saat pin echoberubah menjadi ”high”, timer0 yangdigunakan untuk menghitung lebar pulsadijalankan. Selanjutnya ditunggu sampai pinecho kembali menjadi ”low” atau timer0

overflow. Data jarak dapat diambil padaregister TCNT0 yang merupakan registercounter untuk timer0. Bila timer0menghitung sampai terjadi overflow tetapipin echo tetap high, maka akan dianggapsebagai jarak maksimal, dan program akanmasuk ke dalam subrutin interrupt timer0overflow. Di dalam subrutin tersebut, timerakan dihentikan dan data dianggapmaksimal, yaitu 255. Selanjutnya datasensor dikirimkan melalui komunikasiserial.Perhitungan Pengukuran:a. Jarak = (Lebar Pulsa / 29.034uS)/2

(dalam cm),b. Dimana : 1/29.034 = 0.34442, sehingga :c. Jarak = (Lebar Pulsa x 0.034442)/2

(dalam cm)

Gambar 3.10 Lebar Pulsa Ultrasonik(datasheet)

3.2.4 Serial RS232Pada perancangan alat ini digunakan

fasilitas RS-232, dengan tujuan supaya alatini dapat berkomunikasi dengan komputer.Sedangkan perangkat yang digunakan untukdapat berkomunikasi dengan komputeradalah IC MAX 232. IC ini berfungsimengirimkan data yang sudah diproses olehmikrokontroler ke dalam komputer.

Page 10: Kendali level air

Berikut ini adalah rangkaian besertanilai-nilai kapasitor diambil dari datasheetMAXIM RS-232.

Gambar 3.14 Rangkaian RS-232Penggunaan serial port ini memilikibeberapa alasan, yaitu sebagaiberikut:

Dibutuhkan jumlah kabel yang lebihsedikit, hanya menggunakan 3 kabel,yaitu saluran Transmit Data, saluranReceive Data dan saluran Ground.

Kebanyakan mikrokontroler sudahdilengkapi dengan SCI (SerialComunication Interface) yang dapatdigunakan untuk komunikasi denganport serial komputer.

3.3 Perancangna MekanikPlant yang digunakan adalah

miniature kendali level air. Berikut inigambar mekaniknya:

Gambar 3.15 Bentuk Mekanik MiniaturKendali Level Air

Dimensi dari desain mekaniktersebut adalah 50x40x100 cm untukkerangkanya dan 32x23x22 cm untuktandonnya serta 50x36x30 cm untuk dimensibak penampung sumbernya.

3.4 Perancangan SoftwarePerancangan software merupakan

bagian yang menentukan bekerja atautidaknya sebuah alat, karena software iniberfungsi mengatur kerja suatu alat agardapat bekerja sesuai dengan keinginanpengguna. Dalam perancangan alat inipembuatan software dibagi dua, pertamapembuatan software yang ditulis padaVisual Basic 6.0 yang berfungsi untukmemonitoring dan mengeksekusi programkontrol PID, kedua pembuatan softwareyang ditulis pada Code Vision AVR yangkemudian akan diisikan ke dalammikrokontroler, mikrokontroler sendiriberfungsi mengatur kerja suatu system,termasuk Sensor Ultrasonic, LCD, DAC,dan RS232.

3.4.1 Program Visual Basic 6.0Program Visual Basic digunakan

untuk menerima pulsa yang dikirimkan olehmikrokontroler, kemudian pulsa tersebutdihitung untuk mendapatkan sebuah level airdari pulsa yang dikirimkan tersebut.

Setelah didapatkan data berupa levelair, data tersebut kemudian diproses denganmenggunakan perhitungan PID controllerdengan men-set nilai Kp, Ki, dan Kd,kemudian hasil dari perhitungan tersebutdikirimkan kembali ke mikrokontroler untukmengendalikan kecepatan pompa motor.

Flowchart dari program Visual Basicdapat dilihat pada gambar 3.16.

Page 11: Kendali level air

Gambar 3.16 Flowchart Program VisualBasic

Pengendalian level air dalam systemini menggunakan kontrol PID denganpemrograman Visual Basic. Aturanpenyepadanan alat control (controllertuning) menggunakan nilai penguatan/gainproporsional (Kp), waktu integral (Ti) danwaktu derivative (Td).

Untuk mendapatkan respon yangbaik yang dihasilkan oleh PID controllerharus diketahui nilai-nilai dari konstanta-konstanta, yaitu: Kp, Ki, Kd. Dimanadiketahui bahwa Ki = 1/Ti dan Kd = Td.Nilai Kp, Ki, Kd didapatkan dengan cara-cara mencoba-coba dengan berbagai nilai,kemudian dipilih yang terbaik.

Rumus PID controller pada systemini menggunakan program Visual Basicadalah sebagai berikut:

Private Sub pidloop()pv = MSComm1.inputdfilter = 10 'Nilai filter untuk

menurunkan efek derivatifinputd = pv + (inputlast - pv) * (rate /

60)inputlast = pvinputdf = inputdf + (inputd - inputdf)

* dfilter / 60output = (sp - inputdf) * (gain / 100)

+ feedback ‘Perhitungan PIDIf output > 100 Then ' batas output

antara 0 dan 100%output = 100

End IfIf output < 0 Thenoutput = 0

End Iffeedback = feedback - (feedback -

output) * reset / 60MSComm1.output = "" +

Chr$(output)End Sub

3.4.2 Program CodeVision AVR 2.05.3Berikut ini adalah flowchart dari

pengolahan data dari sensor yang kemudiandikirimkan ke komputer:

Gambar 3.17 Flowchart Program UntukKirim Data ke Komputer

Page 12: Kendali level air

Untuk listing program CodeVisionAVR dari flowchart tersebut adalah:while (1)

waktu=(count*0.090422453703703703703703703703704); //dari ultrasoniclevel=((40-

((waktu*0.3498)*1.7/2.5))*100);

sprintf(baris,"level=%3.2f cm ",level);//nilai ditampilkan ke LCD

lcd_gotoxy(0,1);lcd_puts(baris);delay_ms(500);lcd_clear();

printf("%4d",level); //nilai dikirim kekomputer

Berikut ini adalah flowchart daripengolahan data dari komputer kemudiandiproses dan dihitung oleh mikrokontrolerdan selanjutnya hasil dari perhitungantersebut dikeluarkan ke PortA yangdihubungkan dengan rangkaian DAC untukmenggerakkan pompa motor.

START

Simpan Nilai keEEPROM

Hitung Nilai dariEEPROM

Keluarkan kePortA (DAC)

Ada Nilai?

STOP

Inisialisasi PortSerial (UCSRA.7)

Baca DataSerial

Ya

Tidak

Tampilkan Nilaike LCD

Gambar 3.18 Flowchart Program UntukTerima Data dari Komputer

Untuk listing program CodeVisionAVR dari flowchart tersebut adalah:while (1)

while (UCSRA.7) //apakah ada data baru

yang belum dibaca dari komputer?data=UDR; //perubahan input dari

komputer disimpan didata EEPROMsprintf(tulis,"%3d",data); //nilai

ditampilkan ke LCDlcd_gotoxy(0,0);lcd_puts(tulis);

DAC=(data*255/100); //nilaidikeluarkan ke PortA DAC

PORTA=DAC;

4. ANALISA

4.1 Pengujian dan Analisa PerformansiTuning Parameter Kontrol PID

Simulasi dilakukan denganmemberikan masukan set point secara step.Hal ini bertujuan untuk mengetahui responsistem terhadap perubahan masukan setpoint. Tahap-tahap yang dilakukandisesuaikan dengan metode tuning trial anderror (Heuristic Methode), dimana tuningparameter pengendali dimulai dengan hanyamenggunakan pengendali P, kemudian baruditambahkan pengendali I dan terakhirditambahkan dengan pengendali D.Pemberian nilai parameter disesuaikandengan karakteristik respon sistem yangdiperoleh. Uji performansi yang pertamakali dilakukan adalah dengan memasukkaninput berupa besaran step yang dalam hal iniberupa nilai level.

Pengujian dan analisa dilakukanterhadap sistem yang menggunakanpengendalian PID yang diterapkan padaclose loop pengendalian level air. Untuk itukita mencoba memasukkan nilai Kp, Ti danTd sesuai dengan keinginan sampai

Page 13: Kendali level air

didapatkan hasil respon PID yang terbaikuntuk sistem pengendalian level air. Kitalihat hasil responnya dengan memasukkanparameter P kemudian ditambah I danterakhir ditambahkan D.

Pengujian untuk Kp = 30, Ti = 3, Td = 10

Gambar 4.14 Respon tuning parameterkontrol PID sistem pengendalian level air

dengan Kp = 30, Ti = 3, Td = 10

Dapat dilihat dari hasil responparameter kontrol PID diatas denganpemberian set point 15 cm pada 10,4 detiksudah steady. Dari semua uji dengan metodeHeuristik yang telah diberikan, nilai Kp =30, Ti = 3 dan Td = 10 memberikan hasilrespon yang terbaik daripada pemberiannilai Kp, Ti dan Td yang lain. Dengan nilai-nilai yang telah diberikan dapatmenghasilkan respon yang baik untukparameter kontrol level air. Tetapi masihmengalami overshoot.

Tabel 4.6 Respon Parameter Kontrol Pid Dengan Metode Heuristik Untuk Pengendalian LevelAir.

Set PointUji Metode Heuristik Error

(%)

SettlingTime

(detik)

SteadyState

BerisolasiKp Ti Td

15

cm

40 0 0 5,47% 8 Ya Tidak

40 8 0 1,67% - Tidak Ya40 6 20 0,2% 22,4 Ya Ya40 5 15 0,53% 15,9 Ya Ya40 4 13 0% 14,3 Ya Ya40 3 10 0,13% 11,8 Ya Kecil30 3 10 0,53% 10,4 Ya Sangat Kecil30 4 13 1% 13,8 Ya Kecil30 5 15 0,8% 17,9 Ya Ya30 6 20 0,8% 22,5 Ya Ya30 8 0 1,87% - Tidak Ya30 0 0 7,47% 7 Ya Tidak

Dari tabel respon uji dengan metodeHeuristik, dapat diperoleh beberapakarakteristik performansinya. Denganmetode tuning trial and error (Heuristicmethode) saat diberikan nilai Kp = 40; Ti =0 ; Td = 0 didapatkan settling time 8 detikdengan error steady state 5,47% danmemiliki overshoot. Kita melakukan uji

dengan metode Heuristik yang lain dengannilai Kp, Ti dan Td yang berbeda-beda. Padauji yang kedua dengan Kp = 40; Ti = 8 danTd = 0, juga mengalami overshoot lebihbesar dari uji sebelumnya, dapat dilihat padatabel 4.6. Pada saat Kp = 40; Ti = 5; Td = 15respon pengendalian sudah mulai lambat,karena memerlukan waktu yang lama untukmencapai steady yaitu 15,9 detik dan

Page 14: Kendali level air

overshoot yang bernilai kecil. Berikutnyanilai Kp = 40, Ti = 4 dan Td = 13 diperoleherror steady state 0 dan settling timememerlukan waktu yang lama 14,3 detik.Settling time pada detik ke-11,8 dengan Kp= 40; Ti = 3; Td = 10, terjadi overshoot danerror steady state 0,13%. Untuk Kp = 30; Ti= 6; Td = 20 pengendalian yang dirancangmasih mengalami overshoot dengan settlingtime pada detik ke-22,5.

Dari semua uji dengan metodeHeuristik Kp = 40; Ti = 3 dan Td = 10merupakan respon yang paling baik karenaovershoot kecil dan settling time masih besar11,8 detik tetapi error steady state 0,13%.Pada analisa ini dilakukan pengujiansebanyak 12 kali dengan merubah-ubah nilaiKp, Ti dan Td sehingga mendapatkan hasilyang terbaik. Dari hasil respon parameterkontrol PID untuk pengendalian level air,pengendalian yang baik adalah Kp = 30; Ti= 3; Td = 10. Dikatakan baik karenaovershoot kecil dengan settling time yangcukup cepat 10,4 detik. Karena jikadigunakan pengendalian P saja atau PI saja,sistem pengendalian ini belum baik. Karenamemiliki error yang tinggi dan berisolasi.tetapi untuk steady state-nya tidakmemerlukan waktu yang lama.

Uji tracking set pointSetelah melakukan uji dengan

metode Heuristik, kemudian dilakukan ujitracking set point menggunakan Kp = 30; Ti= 3 dan Td = 10 dengan level air yangbervariasi.

Gambar 4.20 Respon tuning parameterkontrol PID sistem pengendalian level air

dengan tracking set point.

Dari gambar 4.20 di atas didapatkanrespon parameter kontrol PID metodeHeuristik untuk mengendalikan level air.

Dari hasil respon di atas dapat dilihatbahwa parameter kontrol PID yang telahdirancang dapat menghasilkan respon yangbaik. Nilai Kp, Ti dan Td yang dipakaiuntuk uji tracking set point adalah Kp = 30,Ti = 3 dan Td = 10 karena dari hasil ujidengan metode Heuristik respon inimenghasilkan isolasi yang sangat kecil.Maka untuk uji tracking set pointmenggunakan nilai Kp, Ti dan Td yangsama. Dengan set point yang bervariasi,dimulai dari level air sebesar 15 cm.Parameter kontrol PID yang telah dirancangsudah baik tapi masih ada isolasi meskipunsangat kecil.

5. KESIMPULAN

Berdasarkan percobaan dan analisayang telah dilakukan, diperoleh kesimpulansebagai berikut:1. Penalaan parameter kendalil PID untuk

mengendalikan level air mampumemberikan respon pengendalian yangbaik dengan Kp = 30, Ti = 3 dan Td =10. Memiliki overshoot kecil dan errorsteady state = 3.

2. Dari hasil uji tracking set point denganKp = 30, Ti = 3 dan Ti = 10 parameterkendali PID yang telah dirancang bisamengikuti tracking set point denganbaik, meskipun masih memilikiovershoot.

3. Dengan menerapkan kontroler PID padasistem kontrol level air dapatmempercepat respon sistem terhadapperubahan sinyal input (set point) danmemperkecil sinyal kesalahan (error).

4. Dari percobaan dan analisa diketahuibahwa respon kontroler yang sesuaidengan yang diinginkan adalah denganmenggunakan elemen PID.

5. Untuk mengoperasikan PID controllersangatlah mudah, hanya melakukan

Page 15: Kendali level air

tuning parameternya dengan caramencoba-coba (trial and error) untukmenghasilkan sistem kontrol yangdiinginkan.

DAFTAR PUSTAKA

1. Retna Prasetya dan Catur Edi Widodo.Interfacing port parallel dan port serialkomputer dengan visual basic 6.0.Penerbit ANDI, Yogyakarta. 2004

2. Heri Andrianto. Pemrogramanmikrokontroler AVR ATMega16menggunakan bahasa C (CodeVisionAVR). Penerbit Informatika, Bandung.2008

3. M. Ary Heryanto, ST. dan Ir. WisnuAdi P. Pemrograman bahasa C untukMikrokontroler ATMega8535. PenerbitANDI, Yogyakarta. 2008

4. Syahban Rangkuti. MikrokontrolerATMEL AVR. Simulasi dan Praktekmenggunakan ISIS Proteus danCodeVision AVR. Penerbit Informatika,Bandung. 2011

5. Ranti Permatasari. Penalaan ParameterKontrol PID Dengan Metode Heuristic.Teknik Fisika ITS, Surabaya.

6. Thiang, Yohanes TDS, Andre Mulya.Pengaturan Level Ketinggian AirMenggunakan Kontrol PID. FakultasTeknologi Industri, Jurusan TeknikElektro, Universitas Kristen Petra.