Transcript

DESAIN KENDALI PID DENGAN METODA

ZIEGLER-NICHOLS DAN COHEN-COON

MENGGUNAKAN MATLAB DAN ARDUINO

PADA PLANT LEVEL AIR

Laporan ini disusun untuk memenuhi salah satu syarat

mata kuliah Sistem Kendali Digital

Diploma III Program Studi Teknik Elektronika

Jurusan Teknik Elektro

Oleh

Fauzan Fauziansyah

131311045

POLITEKNIK NEGERI BANDUNG

2015

i

ABSTRAK

Kendali level air biasa ditemui di dunia industri, salah satunya digunakan

pada penentuan level air pengisian tangki. Dengan adanya kendali level air,

pengisian air yang berlebih bisa diatasi. Salah satu cara merancang kendali level

air bisa dengan menggunakan kendali PID (Proportional Integral Derivative).

Dalam merancang kendali PID, dibutuhkan nilai-nilai Kp, Ki, dan Kd. Nilai-nilai

tersebut bisa didapatkan dengan menggunakan metoda Ziegler-Nichols dan

metoda Cohen-Coon. Setiap metoda memiliki ciri yang berbeda, sehingga respon

yang dihasilkan pasti akan berbeda pula. Untuk mengetes metoda mana yang

paling cocok untuk digunakan, hasil desain setiap metoda langsung direalisasikan

ke plant level air dengan menggunakan matlab dan arduino. Metoda Ziegler-

Nichols tipe 1 merupakan metoda terbaik untuk kendali level air karena respon

yang dihasilkan sesuai dengan yang diinginkan sebelumnya. Pengaplikasian

metoda ini bisa digunakan nantinya saat memasuki dunia kerja, sehingga

kesalahan-kesalahan yang terjadi dalam pengisian air ke dalam tangki bisa

diminimalisir.

Kata kunci : Kendali level air, kendali PID, Ziegler-Nichols, Cohen-Coon

ii

ABSTRACT

Water level control is usually found in the industrial world, one of them is

used in determining the water level filling the tank. With the water level control,

filling excessive water can be solved. One of the way to design water level control

can use PID (Proportional Integral Derivative) controller. In designing the PID

controller, the values of Kp, Ki, and Kd are needed. The values can be obtained

by using Ziegler-Nichols and Cohen-Coon method. Each method has different

characteristic, so that the result of the response would be different anyway. For

testing the method which is most suitable to be used, the result of each method

design directly realized to the water level plant using matlab and arduino.

Ziegler-Nichols type 1 method is the best method for water level control because

the result of the response is suitable that expected before. Application of this

method can be used later when entering the world of work, so the errors that

occur in filling the water into the tank can be minimized.

Keywords : Water level control, PID controller, Ziegler-Nichols, Cohen-Coon

iii

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Allah SWT atas berkat dan

karunia-Nyalah laporan akhir praktikum Sistem Kendali Digital yang berjudul,

“Desain Kendali PID dengan Metoda Ziegler-Nichols dan Cohen-Coon

menggunakan Matlab dan Arduino pada Plant Level Air” ini dapat diselesaikan

dengan tepat waktu.

Ada kendala dan kesulitan dalam pembuatan laporan ini dan penulis tidak

bisa menyelesaikan sendiri tanpa bantuan dari berbagai pihak. Pada kesempatan

ini penulis mengucapkan terimakasih kepada :

1. Allah SWT yang selalu memberikan rahmat dan hidayah-Nya sehingga

penulis bisa menyelesaikan laporan akhir praktikum Sistem Kendali Digital

ini.

2. Kedua orang tua yang telah membantu secara moril maupun materil sehingga

laporan ini dapat terselesaikan.

3. Bapak Feriyonika, ST., MSc.Eng. selaku dosen mata kuliah Sistem Kendali

Digital yang telah memberikan bimbingan selama praktikum.

4. Ibu Iyom dan Pak Tete yang telah membantu memfasilitasi kebutuhan selama

praktikum di lab kendali.

5. Dessy Erdinsyah Putri dan Ahmad Fajar Munawar selaku partner kelompok

yang telah bekerja sama selama praktikum.

6. Rekan-rekan kelas 2B D3 Teknik Elektronika 2013 yang telah sama-sama

berjuang selama praktikum.

7. Semua pihak yang telah membantu dan mendukung yang tidak bisa penulis

sebutkan satu persatu.

Penulis memanjatkan doa semoga segala bimbingan, bantuan, dorongan,

dan semangat yang diberikan kepada penulis akan mendapat pahala dari Allah

SWT.

iv

Banyak kekurangan dari laporan ini dan penulis mengharapkan komentar

yang membangun agar laporan selanjutnya bisa lebih baik. Semoga laporan ini

bermanfaat bagi para pembaca.

Bandung, Juli 2015

Penulis

v

DAFTAR ISI

ABSTRAK ........................................................................................................... i

ABSTRACT ....................................................................................................... ii

KATA PENGANTAR ...................................................................................... iii

DAFTAR ISI ...................................................................................................... v

DAFTAR TABEL ............................................................................................ vii

DAFTAR GAMBAR ....................................................................................... viii

BAB I PENDAHULUAN ................................................................................... 1

BAB II LANDASAN TEORI ............................................................................. 3

2.1 Kendali PID (Proportional Integral Derivative) ......................................... 3

2.1.1 Sistem Kendali PID .......................................................................... 3

2.1.2 Cara Mentuning Manual Parameter PID .......................................... 4

2.2 Metoda Ziegler-Nichols ............................................................................... 4

2.2.1 Ziegler-Nichols tipe 1 (open loop) ................................................... 4

2.2.2 Ziegler-Nichols tipe 2 (closed loop)................................................. 5

2.3 Metoda Cohen-Coon .................................................................................... 6

2.4 Plant Level Air ............................................................................................. 8

BAB III PERANCANGAN ................................................................................ 9

3.1 Konfigurasi Plant Closed Loop ................................................................... 9

3.2 Desain dengan Ziegler-Nichols tipe 1 ........................................................ 10

3.2.1 Respon Closed Loop....................................................................... 10

3.2.2 Proses Desain ................................................................................. 11

3.3 Desain dengan Ziegler-Nichols tipe 2 ........................................................ 12

3.3.1 Respon Closed Loop....................................................................... 12

3.3.2 Proses Desain ................................................................................. 13

3.4 Desain dengan Cohen-Coon ...................................................................... 14

3.4.1 Respon Closed Loop....................................................................... 14

3.4.2 Proses Desain ................................................................................. 15

3.5 Konfigurasi Plant untuk Script Matlab dan Arduino ................................. 16

3.6 Script Matlab .............................................................................................. 17

3.6.1 Flowchart Script Matlab ................................................................. 18

3.6.2 Script Matlab .................................................................................. 19

3.7 Script Arduino ............................................................................................ 20

3.7.1 Flowchart Script Arduino ............................................................... 21

3.7.2 Script Arduino ................................................................................ 22

vi

BAB IV HASIL DAN ANALISA .................................................................... 25

4.1 Hasil Desain Metoda Ziegler-Nichols tipe 1 ............................................. 25

4.1.1 Hasil Desain ................................................................................... 25

4.1.2 Hasil Tuning ................................................................................... 25

4.2 Hasil Desain Metoda Ziegler-Nichols tipe 2 ............................................. 26

4.2.1 Hasil Desain ................................................................................... 26

4.2.2 Hasil Tuning ................................................................................... 27

4.2.3 Hasil Tuning dengan Mengubah-ubah Setpoint ............................. 27

4.3 Hasil Desain Metoda Cohen-Coon ............................................................ 28

4.3.1 Hasil Desain ................................................................................... 28

4.4 Analisa Metoda ZN tipe 1, ZN tipe 2, dan Cohen-Coon ........................... 29

4.5 Hasil Respon Script Matlab ....................................................................... 29

4.5.1 Hasil Respon .................................................................................. 29

4.5.2 Hasil Respon saat diberi gangguan ................................................ 29

4.6 Hasil Respon Script Arduino ..................................................................... 30

4.6.1 Realisasi pada Plant ....................................................................... 30

4.6.2 Tampilan LCD................................................................................ 30

BAB V KESIMPULAN DAN SARAN ............................................................ 32

5.1 Kesimpulan ................................................................................................ 32

5.2 Saran .......................................................................................................... 32

DAFTAR PUSTAKA ....................................................................................... 33

vii

DAFTAR TABEL

Tabel II.1 Tabel parameter PID .......................................................................... 4

Tabel II.2 Tabel parameter PID untuk ZN tipe 1 ................................................ 5

Tabel II.3 Tabel parameter PID untuk ZN tipe 2 ................................................ 6

Tabel II.4 Tabel parameter PID untuk Cohen-Coon ........................................... 7

viii

DAFTAR GAMBAR

Gambar I.1 Macam-macam toren air .................................................................. 1

Gambar II.1 Blok diagram sistem kendali PID ................................................... 3

Gambar II.2 Sistem diberi input step .................................................................. 4

Gambar II.3 Proses desain penentuan parameter L dan T .................................. 5

Gambar II.4 Sistem closed loop dengan menggunakan Kp saja ......................... 5

Gambar II.5 Proses desain menentukan parameter Pcr ....................................... 6

Gambar II.6 Sistem open loop diberi input step ................................................. 6

Gambar II.7 Sinyal steady-state kembali diberi input step ................................. 7

Gambar II.8 Proses desain menentukan parameter gp, τ, dan τd ......................... 7

Gambar II.9 Plant level air.................................................................................. 8

Gambar III.1 Konfigurasi plant closed loop ....................................................... 9

Gambar III.2 Blok simulink closed loop ZN tipe 1 .......................................... 10

Gambar III.3 Respon closed loop ZN tipe 1 ..................................................... 10

Gambar III.4 Proses desain dengan metoda ZN tipe 1...................................... 11

Gambar III.5 Blok simulink closed loop ZN tipe 2 .......................................... 12

Gambar III.6 Respon closed loop ZN tipe 2 ..................................................... 12

Gambar III.7 Proses desain dengan metoda ZN tipe 2...................................... 13

Gambar III.8 Blok simulink closed loop Cohen-Coon ..................................... 14

Gambar III.9 Respon closed loop Cohen-Coon ................................................ 15

Gambar III.10 Proses desain dengan metoda Cohen-Coon .............................. 15

Gambar III.11 Konfigurasi plant untuk script matlab dan arduino .................. 17

Gambar III.12 Penggunaan potensiometer sebagai setpoint ............................. 17

Gambar III.13 Flowchart script matlab ............................................................. 18

Gambar III.14 Arduino dengan shield dan LCD ............................................... 20

Gambar III.15 Flowtchart script arduino .......................................................... 21

Gambar IV.1 Blok simulink hasil desain ZN tipe 1 .......................................... 25

Gambar IV.2 Respon hasil desain ZN tipe 1..................................................... 25

Gambar IV.3 Respon hasil tuning ZN tipe 1..................................................... 26

Gambar IV.4 Blok simulink hasil desain ZN tipe 2 .......................................... 26

ix

Gambar IV.5 Respon hasil desain ZN tipe 2..................................................... 27

Gambar IV.6 Respon hasil tuning ZN tipe 2..................................................... 27

Gambar IV.7 Respon hasil tuning ZN tipe 2 dengan merubah setpoint ........... 28

Gambar IV.8 Blok simulink hasil desain Cohen-Coon ..................................... 28

Gambar IV.9 Respon hasil desain Cohen-Coon ............................................... 28

Gambar IV.10 Hasil respon dengan script matlab ............................................ 29

Gambar IV.11 Hasil respon dengan script matlab saat diberi gangguan .......... 29

Gambar IV.12 Realisasi pada plant dengan stand alone controller ................. 30

Gambar IV.13 Tampilan LCD untuk setpoint 2,5 mbar ................................... 31

Gambar IV.14 Tampilan LCD untuk setpoint 5 mbar ...................................... 31

1

BAB I

PENDAHULUAN

Perkembangan fasilitas-fasilitas umum di sekitar kita semakin maju. Hal-

hal praktis mulai muncul bermunculan seiring dengan kesibukan-kesibukan yang

dihadapi manusia. Salah satu contoh fasilitas tersebut adalah adanya tangki

penampungan air. Selain di dunia industri, rumah-rumah di sekitar pun sekarang

ada yang memakai tangki penampungan air. Tangki penampungan air atau sering

disebut toren sangat umum dipakai di perumahan. Fungsinya cukup vital sebagai

cadangan air yang siap digunakan untuk kebutuhan rumah tangga sehari-hari,

terutama bila terjadi masalah dengan pompa air atau karena pemadaman listrik[1].

Macam-macam toren air ditunjukan pada gambar I.1.

Gambar I.1 Macam-macam toren air

Umumnya toren air dikontrol secara otomatis oleh suatu mekanisme

pengaturan yang akan mengisi air bila volume air tinggal sedikit dan

menghentikannya bila sudah penuh[2]. Cukup merepotkan bila kontrol pengisian

air dilakukan manual oleh penghuni rumah. Karena selain harus menunggu sekian

2

lama sampai air mulai naik hingga keluar di keran air, juga air yang sudah penuh

berpotensi terbuang disebabkan penghuni rumah lupa untuk mematikan pompa

air.

Saat ini banyak sekali ditawarkan sistem kontrol yang efektif dan mudah

untuk diimplementasikan. Salah satunya kontrol dengan sistem PID (Proportional

Integral Derivative)[3]. Kepopuleran PID sebagai komponen kontrol

dilatarbelakangi terutama oleh kesederhanaan struktur, serta kemudahan dalam

melakukan tuning parameter kontrolnya.

Pada praktikum kali ini, akan dilakukan pengendalian plant level air

dengan menggunakan sistem kendali PID. Dalam sistem kendali PID dibutuhkan

nilai-nilai Kp, Ki, dan Kd yang bisa didapatkan dengan menggunakan beberapa

metoda seperti Ziegler-Nichols dan Cohen-Coon. Setelah nilai Kp, Ki, dan Kd

didapatkan, selanjutnya langsung direalisasikan ke modul PID dan plant level air

untuk dilihat respon yang dihasilkan. Namun nilai Kp, Ki, dan Kd yang didapat

dari beberapa metoda tersebut merupakan nilai-nilai pendekatan sehingga masih

harus dilakukan manual tuning untuk menghasilkan respon yang diinginkan. Hasil

respon yang menggunakan modul PID merupakan respon kontinyu, kemudian

dengan menggunakan script matlab sinyal kontinyu diubah menjadi sinyal digital.

Setelah sistem kendali sudah sesuai dengan yang diinginkan, script matlab

diterjemahkan ke dalam script arduino sehingga saat proses pengendalian tidak

lagi menggunakan komputer atau laptop, namun ditambahkan LCD pada arduino

untuk melihat respon yang dihasilkan.

3

BAB II

LANDASAN TEORI

2.1 Kendali PID (Proportional Integral Derivative)

2.1.1 Sistem Kendali PID

Sistem kendali PID (Proportional Integral Derivative) merupakan

kontroler untuk menentukan presisi suatu sistem instrumentasi dengan

karakteristik adanya umpan balik (feedback) pada sistem tesebut[4].

Sistem kendali PID terdiri dari tiga buah cara pengaturan yaitu kontrol P

(Proportional), D (Derivative) dan I (Integral), dengan masing-masing

memiliki kelebihan dan kekurangan. Dalam implementasinya masing-

masing cara dapat bekerja sendiri maupun digabung. Blok diagram sistem

kendali PID ditunjukan pada gambar II.1.

Gambar II.1 Blog diagram sistem kendali PID

Adapun persamaan sistem kendali PID adalah :

𝑃𝐼𝐷 = 𝐾𝑝. 𝑒 𝑡 + 𝐾𝑖 𝑒 𝑡 𝑑𝑡 + 𝐾𝑑𝑑𝑒(𝑡)

𝑑𝑡

Dengan :

PID = output dari kendali PID

Kp = konstanta proporsional

Ki = Kp/Ti

Ti = konstanta integral

Kd = Kp.Td

Td = konstanta derivatif

e(t) = error

4

Dalam perancangan sistem kendali PID yang perlu dilakukan

adalah mengatur parameter P, I atau D agar tanggapan sinyal keluaran

sistem terhadap masukan tertentu sebagaimana yang diinginkan.

2.1.2 Cara Mentuning Manual Parameter PID

Cara mentuning parameter-parameter PID bisa dilakukan dengan

melihat tabel parameter PID. Dengan menganalisa respon yang dihasilkan,

nilai-nilai Kp, Ki, dan Kd bisa diubah-ubah sesuai dengan tabel. Tabel

parameter PID ditunjukan pada tabel II.1.

Tabel II.1 Tabel parameter PID

2.2 Metoda Ziegler-Nichols

Salah satu metoda mencari parameter-parameter PID adalah dengan

metoda Ziegler-Nichols[5]. Metoda ini memilki 2 tipe, yaitu tipe 1 (open

loop) dan tipe 2 (closed loop)[6].

2.2.1 Ziegler-Nichols tipe 1 (open loop)

Dalam metoda ini, digunakan sistem open loop. Sistem diberi input

step sehingga respon open loop terbentuk.

Gambar II.2 Sistem diberi input step

Dari respon open loop yang dihasilkan, parameter-paramter ZN

tipe 1 (L dan T) dapat didapatkan. Proses desain menentukan parameter L

dan T ditunjukan pada gambar II.3.

5

Gambar II.3 Proses desain penentuan parameter L dan T

Setalah parameter L dan T didapatkan, nilai-nilai Kp, Ti, dan Td

bisa dicari dengan menggunakan rumus-rumus parameter PID untuk

metoda ZN tipe 1. Tabel II.2 menunjukan tabel parameter PID untuk ZN

tipe 1.

Tabel II.2 Tabel parameter PID untuk ZN tipe 1

2.2.2 Ziegler-Nichols tipe 2 (closed loop)

Dalam metoda ZN tipe 2, digunakan sistem closed loop. Namun

yang digunakan hanya Kp saja. Sistem dibuat hingga berosilasi terus

menerus dengan mengatur besarnya nilai Kp.

Gambar II.4 Sistem closed loop dengan menggunakan Kp saja

Besarnya nilai Kp saat respon sistem berosilasi terus menerus

merupakan nilai Kcr. Dari respon yang dihasilkan, parameter lain ZN tipe

2 selain Kcr, yaitu Pcr dapat dicari. Proses desain menentukan parameter

Pcr ditunjukan pada gambar II.5.

6

Gambar II.5 Proses desain menentukan parameter Pcr

Setelah parameter Kcr dan Pcr didapatkan, nilai-nilai Kp, Ti, dan

Td bisa dihitung dengan menggunakan rumus-rumus parameter PID untuk

ZN tipe 2. Tabel II.3 menunjukan tabel parameter PID untuk ZN tipe 2.

Tabel II.3 Tabel parameter PID untuk ZN tipe 2

2.3 Metoda Cohen-Coon

Dalam menentukan parameter-parameter PID tidak hanya dengan

metoda Ziegler-Nichols saja. Ada metoda lain untuk menentukan parameter-

parameter tersebut. Metoda tersebut adalah metoda Cohen-Coon. Cohen-

Coon biasanya hanya digunakan untuk sistem open loop[7]. Cohen-Coon bisa

dipakai untuk plant yang memiliki deadtime yang besar[8].

Sistem open loop diberi input step sampai respon mencapai titik

steady-state.

Gambar II.6 Sistem open loop diberi input step

Setelah respon mencapai steady-state, respon kembali diberi input

step. Sinyal perubahan yang dihasilkan adalah sinyal yang akan dipakai untuk

mendesain.

7

Gambar II.7 Sinyal steady-state kembali diberi input step

Dalam proses penentuan parameter PID dengan metoda Cohen-Coon,

perubahan sinyal saat diberi input step yang kedua merupakan sinyal yang

digunakan untuk proses desain. Gambar II.8 menunjukan proses penentuan

parameter-parameter gp, τ, dan τd.

Gambar II.8 Proses desain menentukan parameter gp, τ, dan τd

Dimana gp dicari dengan menggunakan rumus,

gp = 𝐶ℎ𝑎𝑛𝑔𝑒 𝑖𝑛 𝑃𝑉

𝐶ℎ𝑎𝑛𝑔𝑒 𝑖𝑛 𝐶𝑂

Setelah parameter-parameter gp, τ, dan τd didapatkan, nilai-nilai Kp,

Ti, dan Td bisa dihitung dengan rumus-rumus parameter PID untuk Cohen-

Coon. Tabel parameter PID untuk Cohen-Coon ditunjukan pada tabel II.4.

Tabel II.4 Tabel parameter PID untuk Cohen-Coon

8

2.4 Plant Level Air

Plant level air terdiri dari tangki level air, pompa air, dan sensor.

Ketinggian air/level air ditentukan oleh satuan mbar (milibar). Terdapat 2

pilihan untuk pengaturan keluaran sensornya, pertama 0,2V/mbar dan kedua

0,66V/mbar. Gambar II.9 menunjukan gambar plant level air.

Gambar II.9 Plant level air

9

BAB III

PERANCANGAN

Perancangan sistem dilakukan dengan beberapa tahapan, dimulai dari

mendesain PID dengan metoda Ziegler-Nichols tipe 1, tipe 2, dan metoda Cohen-

Coon. Dari ketiga metoda tersebut, parameter PID dengan hasil respon terbaik

digunakan dalam script matlab dan script arduino.

3.1 Konfigurasi Plant closed loop

Dalam melakukan proses desain kendali PID dengan metoda ZN tipe

1 dan CC, sistem yang dibuat adalah sistem open loop. Namun untuk plant

level air tidak bisa digunakan sistem open loop karena air yang mengisi

tangki bisa melebihi kapasitas tangki airnya. Sehingga untuk melakukan

proses desain kendali PID harus dibuat sistem closed loop.

Untuk proses desain kendali PID dengan metoda ZN tipe 2 sistem di

buat closed loop. Dengan demikian, ketiga metoda tersebut menggunakan

sistem closed loop. Konfigurasi plant closed loop ditunjukan pada gambar

III.1.

Gambar III.1 Konfigurasi plant closed loop

10

3.2 Desain dengan Ziegler-Nichols tipe 1

3.2.1 Respon closed loop

Setelah sistem closed loop dibuat, sistem dihubungkan dengan

arduino-matlab dengan blok simulink seperti pada gambar III.2.

Gambar III.2 Blok simulink closed loop ZN tipe 1

Untuk sinyal dari setpoint harus menggunakan pembagi tegangan

sebelum masuk ke arduino. Lalu di blok simulink dikalikan lagi dengan 2

untuk mengembalikan ke sinyal semula. Kemudian, karena yang

dikendalikan level air maka keluaran yang diharapkan adalah dalam satuan

mbar (bukan tegangan). Sehingga dikalikan lagi dengan 5 karena keluaran

sensornya sebesar 0.2V/mbar. Artinya setiap tegangan 1V sebanding

dengan 5 mbar level air. Gambar III.3 menunjukan respon closed loop ZN

tipe 1.

Waktu (s)

Gambar III.3 Respon closed loop ZN tipe 1

Leve

l air

(mb

ar)

11

Untuk waktu pada Matlab berbeda dengan waktu sebenarnya.

Karena akan di realisasikan ke plant, maka yang digunakan adalah waktu

sebenarnya. Perbandingan waktu Matlab dengan waktu sebenarnya adalah

500 waktu Matlab sama dengan 50 detik waktu sebenarnya. Artinya setiap

1 detik waktu sebenarnya sebanding dengan 10 waktu Matlab.

3.2.2 Proses desain

Setelah respon closed loop didapat, langkah selanjutnya yaitu

melakukan proses desain menggunakan metoda ZN tipe 1, seperti yang

ditunjukan pada gambar III.4.

Waktu (s)

Gambar III.4 Proses desain dengan metoda ZN tipe 1

L = 1053-1000 = 53

T = 1833 – 1053 = 780

Nilai L dan T yang didapat dikonversikan ke waktu sebenarnya. Menjadi,

L = 5,3 dan T = 78

Setelah nilai L dan T didapat, dimasukan ke rumus-rumus PID untuk

Ziegler-Nichols tipe-1. Maka akan didapat.

𝐾𝑝 = 1,2 ×𝑇

𝐿= 1,2 ×

78

5,4= 17,33

𝑇𝑖 = 2𝐿 = 2 × 5,3 = 10,6

𝑇𝑑 = 0,5𝐿 = 0,5 × 5,3 = 2,65

Leve

l air

(mb

ar)

12

3.3 Desain dengan Ziegler-Nichols tipe 2

3.3.1 Respon closed loop

Setelah sistem closed loop dibuat, sistem dihubungkan dengan

arduino-matlab dengan blok simulink seperti pada gambar III.5.

Gambar III.5 Blok simulink closed loop ZN tipe 2

Karena yang dikendalikan adalah plant level air maka keluaran

yang diharapkan adalah dalam satuan mbar (bukan tegangan). Sehingga

dikalikan lagi dengan 2,5 karena keluaran sensornya sebesar 0,4V/mbar

(seharusnya 0,2V/mbar). Artinya setiap tegangan 1V sebanding dengan

2,5 mbar level air. Pada blok PID, nilai Ti dan Td di off-kan. Nilai Kp

diatur sampai respon yang dihasilkan berosilasi terus menerus. Respon

closed loop dengan metoda ZN tipe 2 ditunjukan pada gambar III.6.

Waktu (s)

Gambar III.6 Respon closed loop ZN tipe 2

Leve

l air

(mb

ar)

13

Untuk waktu pada Matlab berbeda dengan waktu sebenarnya.

Karena akan di realisasikan ke plant, maka yang digunakan adalah waktu

sebenarnya. Perbandingan waktu Matlab dengan waktu sebenarnya adalah

100 waktu Matlab sama dengan 9 detik waktu sebenarnya. Artinya setiap 1

detik waktu sebenarnya sebanding dengan 11,11 waktu Matlab.

3.3.2 Proses desain

Setelah didapat respon closed loop, langkah selanjutnya yaitu

melakukan proses desain menggunakan ZN tipe-2, seperti ditunjukan pada

gambar III.7.

Waktu (s)

Gambar III.7 Proses desain dengan metoda ZN tipe 2

Nilai Kp saat respon berosilasi terus menerus merupakan nilai Kcr.

Namun nilai yang tertulis pada blok PID tidak sepenuhnya akurat.

Sehingga untuk mendapat nilai yang akurat, nilai Kcr dicari dengan

menghitung perbandingan nilai keluaran dengan nilai masukannya.

Vin = 30mV

Vout = 5,23V

Kcr= 5,23/0,03

Kcr = 174,3

Pcr = x1-x0 = 31,22-16,32 = 14,9

Nilai Pcr dikonversikan ke waktu sebenarnya.

Pcr=14,9/11,11

Pcr = 1,341134113

Leve

l air

(mb

ar)

14

Setelah nilai Pcr dan Kcr didapat, dimasukan ke rumus-rumus PID untuk

Ziegler-Nichols tipe-2. Maka akan didapat.

𝐾𝑝 = 0,6𝐾𝑐𝑟 = 0,6 × 174,3 = 104,58

𝑇𝑖 = 0,5𝑃𝑐𝑟 = 0,5 × 1,34 = 0,67

𝑇𝑑 = 0,125𝑃𝑐𝑟 = 0,125 × 1,34 = 0,167

3.4 Desain dengan Cohen-Coon

3.4.1 Respon closed loop

Setelah sistem closed loop dibuat, sistem dihubungkan dengan

arduino-matlab dengan blok simulink seperti pada gambar III.8.

Gambar III.8 Blok simulink closed loop Cohen-Coon

Karena yang dikendalikan adalah plant level air maka keluaran

yang diharapkan adalah dalam satuan mbar (bukan tegangan). Sehingga

dikalikan lagi dengan 2,5 karena keluaran sensornya sebesar 0,4V/mbar

(seharusnya 0,2V/mbar). Artinya setiap tegangan 1V sebanding dengan

2,5 mbar level air. Pada blok PID, nilai Ti dan Td di off-kan. Nilai Kp

diatur menjadi 1, diberi setpoint pertama. Setelah simulink di run tunggu

respon mencapai steady-state, kemudian respon kembali diberi setpoint

yang lebih tinggi dari setpoint pertama sehingga terlihat perubahan

responnya, maka akan didapat closed loop respon seperti gambar III.9.

15

Waktu (s)

Gambar III.9 Respon closed loop Cohen-Coon

Untuk waktu pada Matlab berbeda dengan waktu sebenarnya.

Karena akan di realisasikan ke plant, maka yang digunakan adalah waktu

sebenarnya. Perbandingan waktu Matlab dengan waktu sebenarnya adalah

100 waktu Matlab sama dengan 9 detik waktu sebenarnya. Artinya setiap 1

detik waktu sebenarnya sebanding dengan 11,11 waktu Matlab.

3.4.2 Proses desain

Setelah didapat respon closed loop, langkah selanjutnya yaitu

melakukan proses desain menggunakan Cohen-Coon, seperti ditunjukan

pada gambar III.10.

Waktu (s)

Gambar III.10 Proses desain dengan metoda Cohen-Coon

Dengan metoda Cohen-Coon dapat diperoleh nilai-nilai :

A = Perubahan PV = 7,82-3,068 = 4,212

B = Perubahan CO = 12,04-7,633 = 4,407

gp = 𝐴

𝐵 =

4,212

4,407 = 0,9557522124

Leve

l air

(mb

ar)

Leve

l air

(mb

ar)

16

τd = 954,7-951,1 = 3,6

Dikonversikan ke waktu sebenarnya

τd = 3,6/11,11 = 0,3240324032

τ 0,63*A = 0,63*4,212 = 2,65356

jika diukur dari Y = 0,

τ 3,6+2,65356 = 6,25356

τ = 1209-954,7 = 254,3

Dikonversikan ke waktu sebenarnya

τ = 254,3/11,11 = 22,88928893

Setelah nilai-nilai gp, τd, dan τ didapat, dimasukan ke rumus-rumus PID

untuk Cohen-Coon. Maka akan didapat.

𝐾𝑐 =1,35

𝑔𝑝 τ

τd+ 0,185 =

1,35

0,956

22,89

0,32+ 0,185 = 100,04

𝑇𝑖 = 2,5τd ×τ + 0,185τd

τ + 0,611τd= 2,5 × 0,32 ×

22,89 + 0,185 × 0,32

22,89 + 0,611 × 0,32= 0,81

𝑇𝑑 = 0,37τd ×τ

τ + 0,185τd= 0,37 × 0,32 ×

22,89

22,89 + 0,185 × 0,32

= 0,12

3.5 Konfigurasi Plant untuk Script Matlab dan Arduino

Modul PID bukan digunakan sebagai pengendali, tetapi hanya

dibutuhkan Kp-nya saja sebagai pengali 2. Output PID yang masuk ke

arduino dibatasi dari 0-10V. Namun tegangan arduino maksimal hanya 5V,

sehingga pada program output PID dibagi 2. Lalu output arduino dimasukan

ke modul PID untuk dikembalikan lagi ke nilai sebenarnya (dikali 2). Setelah

itu baru ke modul amplifier dan ke plant level air. Gambar III.11 menunjukan

konfigurasi plant untuk script matlab dan arduino.

Set point yang digunakan bukan berupa modul set point, namun

menggunakan potensiometer dengan tegangan dari arduino (0-5V), seperti

ditunjukan pada gambar III.12.

17

Gambar III.11 Konfigurasi plant untuk script matlab dan arduino

Gambar III.12 Penggunaan potensiometer sebagai setpoint

3.6 Script Matlab

Setelah dilakukan proses desain kendali PID dengan menggunakan 3

metoda di atas, nilai-nilai Kp, Ti, dan Td setelah dilakukan manual tuning

yang menghasilkan respon terbaik atau sesuai dengan yang diinginkan

digunakan dalam script matlab dan arduino. Metoda yang menghasilkan

respon terbaik yaitu metoda Ziegler-Nichols tipe 1 dengan nilai-nilai Kp =

30; Ti = 10,6; Td = 0,02.

Untuk menentukan time sampling, dilakukan perbandingan antara

waktu matlab dengan waktu sebenarnya. Didapat bahwa 100 detik waktu

matlab sama dengan 5 detik waktu sebenarnya, sehingga time sampling yang

digunakan sebesar 0,05 detik.

18

3.6.1 Flowchart script matlab

Sebelum membuat script, terlebih dahulu dibuat flowchart

programnya. Gambar III.13 menunjukan flowchart script matlab.

Gambar III.13 Flowchart script matlab

START

INISIALISASI Menetukan nilai time

sampling, Kp, Ki, Kd, error awal differensial

dan integral, koneksikan arduino-matlab, set pin

input-output arduino

START = 1

Baca setpoint, process value Cari error, error integral, dan

error differensial

Hitung PID

Batasi agar tidak

>10 dan <0

Kirim hasil perhitungan PID ke pin output

Plot respon

Set Error sebelum = error

Error integral sebelum = error integral

Start = 1

FINISH

Ya

Tidak

19

3.6.2 Script matlab

Setelah flowchart dibuat, script matlab dibuat sesuai dengan flowchart.

clf Ts = 0.05; pinMode(a,6,'output') pinMode(a,13,'output') digitalWrite(a,13,1);

Kp = 30; Ki = 2.83; Kd = 0.6;

error_sebelum = 0; errorI_sebelumnya = 0;

y1=0; y2=0; t=0; x=0;

start = digitalRead(a,10); while(start==1) x=x+1;

SP = analogRead(a,0); SP = SP*0.0049; PV = analogRead(a,5); PV = PV*0.0049;

error = SP-PV;

errorI_sekarang = ((error + error_sebelum)/2)*Ts; errorI = (errorI_sekarang) + (errorI_sebelumnya);

errorD = (error - error_sebelum)/Ts;

outP = Kp*error; outI = Ki*errorI; outD = Kd*errorD; outPID = outP + outI + outD;

if outPID > 10 outPID = 10; else outPID=outPID; end

if outPID < 0 outPID = 0; else outPID=outPID; end

20

outPID=outPID/2; outPID = round(outPID*51);

analogWrite(a,6,outPID);

y1 = [y1,SP]; y2 = [y2,PV]; t = [t,x]; plot(t,y1,t,y2); axis([0 x+100 0 3]); grid drawnow; error_sebelum=error; errorI_sebelumnya=errorI;

start = digitalRead(a,10); end analogWrite(a,6,0);

3.7 Script Arduino

Script arduino tidak berbeda dengan script matlab, yang berbeda

hanya bahasa yang digunakannya. Dalam membuat script arduino, tinggal

menerjemahkan script matlab menjadi script arduino. Selebihnya, seperti

besarnya nilai time sampling, Kp, Ti, dan Td cara menghitung error,

menghitung PID sama saja.

Fungsi dari digunakannya script matlab yaitu agar membuat sistem

yang dibuat terlihat seperti sistem kendali sebenarnya. Dengan tanpa adanya

komputer, hanya arduino saja yang berfungsi sebagai embedded system

ditambah dengan LCD sebagai tampilan Proccess Value (PV) dan Set Point

(SP). Hal ini dinamakan stand alone controller. Gambar III.14 menunjukan

tampilan arduino sebagai embedded system ditambah dengan shield dan LCD.

Gambar III.14 Arduino dengan shield dan LCD

21

3.7.1 Flowchart script arduino

Sama halnya dengan script matlab, script arduino juga harus dibuat

flowchart terlebih dahulu sebelum dibuat programnya. Gambar III.15

menunjukan flowchat script arduino.

Gambar III.15 Flowtchart script arduino

START

INISIALISASI Menetukan nilai time

sampling, Kp, Ki, Kd, error awal differensial

dan integral, nama-nama variabel, set pin input-

output arduino

Baca setpoint, process value Cari error, error integral, dan

error differensial

Hitung PID

Batasi agar tidak

>10 dan <0

Kirim hasil perhitungan PID ke pin output

Tampilkan ke LCD

Set Error sebelum = error

Error integral sebelum = error integral

X=n?

FINISH

Tentukan banyaknya pengulangan

X=0:n

Ya

Tidak

22

3.7.2 Script arduino

Setelah flowchart dibuat, script arduino dibuat sesuai dengan flowchart.

#include <LiquidCrystal.h>

int output = 6; //untuk menset pin 6 sebagai output

float Ts = 0.05; //waktu sampling

// Nilai Kp, Ti,Td

float Kp = 30;

float Ti = 10.6;

float Td = 0.02;

// Definisi variabel untuk perhitungan PID

float Setpoint, Feedback, Setpoint1, Feedback1;

float error;

float errorD, errorD1;

float errorI, errorIsekarang, errorIsekarang1, errorIsekarang2;

float outP, outI, outD, outPIDsebelum;

float errorsebelum = 0;

float errorIsebelum = 0;

int outPID;

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {

// put your setup code here, to run once:

pinMode(6,OUTPUT);

lcd.begin(16,2);

}

void loop() {

// put your main code here, to run repeatedly:

Setpoint = analogRead(A0); //baca setpoint dari potensio

Setpoint1 = (Setpoint*0.0049)/0.3;

//Membatasi nilai agar setpoint tidak >3 atau <0

if(Setpoint1>=10)

{

Setpoint1=10;

}

else

23

{

Setpoint1=Setpoint1;

}

Feedback = analogRead(A4); //baca umpan balik

Feedback1 = (Feedback*0.0049)/0.3;

//Hitung error

error = Setpoint1 - Feedback1;

//Menghitung error Integral

errorIsekarang = error + errorsebelum;

errorIsekarang1 = errorIsekarang/2;

errorIsekarang2 = errorIsekarang1*Ts;

errorI = errorIsekarang2 + errorIsebelum;

//Menghitung error Diferensial

errorD1 = error - errorsebelum;

errorD = errorD1/Ts;

//Kendali PID

outP = Kp*error;

outI = (Kp/Ti)*errorI;

outD = (Kp*Td)*errorD;

outPIDsebelum = outP + outI + outD;

outPID=outPIDsebelum ;

//Membatasi nilai agar PID tidak >10 atau <0

if(outPID>=10)

{

outPID=10;

}

else if(outPID<=0)

{

outPID=0;

}

else

{

outPID=outPID;

24

}

outPID = (outPID*0.5)*51;

//Menuliskan hasil perhitungan PID ke pin 6

analogWrite(6,outPID);

errorsebelum=error;

errorIsebelum=errorI;

//Menuliskan ke LCD

lcd.setCursor(0,0);

lcd.print("SP=");

lcd.setCursor(4,0);

lcd.print(Setpoint1);

lcd.setCursor(10,0);

lcd.print("mbar");

lcd.setCursor(0,1);

lcd.print("PV=");

lcd.setCursor(4,1);

lcd.print(Feedback1);

lcd.setCursor(10,1);

lcd.print("mbar");

delay(500);

}

25

BAB IV

HASIL DAN ANALISA

4.1 Hasil Desain Metoda Ziegler-Nichols tipe 1

4.1.1 Hasil desain

Setelah didapat nilai-nilai Kp, Ti, dan Td, nilai-nilai tersebut

direalisasikan ke modul PID. Lalu dihubungkan kembali dengan arduino-

matlab dengan blok simulink seperti pada gambar IV.1 dan respon hasil

desain ditunjukan pada gambar IV.2.

Gambar IV.1 Blok simulink hasil desain ZN tipe 1

Waktu (s)

Gambar IV.2 Respon hasil desain ZN tipe 1

4.1.2 Hasil tuning

Untuk mendapat respon sesuai yang diinginkan, nilai-nilai Kp, Ti,

dan Td diubah-ubah sesuai dengan tabel parameter PID. Nilai-nilai yang

diubah yaitu Kp menjadi 30 dan Td menjadi 0,02 sedangkan nilai Ti tetap.

Nilai Kp diubah (dinaikkan) maksudnya adalah mengurangi rise time agar

Leve

l air

(mb

ar)

26

air yang masuk ke tangki tidak terlalu cepat. Lalu nilai Td diubah

(dikurangi) hampir mendekati 0 maksudnya adalah untuk menghilangkan

tekanan dari pompa air, agar air mengisi tangki secara smooth. Respon

hasil tuning ditunjukan pada gambar IV.3.

Waktu (s)

Gambar IV.3 Respon hasil tuning ZN tipe 1

4.2 Hasil Desain Metoda Ziegler-Nichols tipe 2

4.2.1 Hasil desain

Setelah didapat nilai-nilai Kp, Ti, dan Td, nilai-nilai tersebut

direalisasikan ke modul PID. Lalu dihubungkan kembali dengan arduino-

matlab dengan blok simulink seperti pada gambar IV.4 dan respon hasil

desain ditunjukan pada gambar IV.5.

Gambar IV.4 Blok simulink hasil desain ZN tipe 2

Leve

l air

(mb

ar)

27

Waktu (s)

Gambar IV.5 Respon hasil desain ZN tipe 2

4.2.2 Hasil tuning

Untuk mendapat respon sesuai yang diinginkan, nilai-nilai Kp, Ti,

dan Td diubah-ubah sesuai dengan tabel parameter PID. Nilai-nilai yang

diubah yaitu Td menjadi mendekati 0 (nol) atau Td dimatikan. Maksudnya

adalah untuk mengurangi tekanan dari pompa agar air mengisi tangki

secara smooth. Gambar IV.6 menunjukan respon hasil tuning.

Waktu (s)

Gambar IV.6 Respon hasil tuning ZN tipe 2

4.2.3 Hasil tuning dengan mengubah-ubah setpoint

Setelah respon hasil tuning didapat, dicoba dengan mengubah-ubah

setpoint dan melihat respon yang terjadi. Saat setpoint dinaikan dari nilai

sebelumnya, respon yang terjadi sesuai dengan hasil tuning, akan tetapi

saat setpoint diturunkan dari nilai sebelumnya, responnya lambat saat

menuju ke setpoint yang diinginkan. Hal itu dikarenakan kecepatan

pengosongan tangki dipengaruhi oleh valve. Respon hasil tuning dengan

mengubah-ubah setpoint ditunjukan pada gambar IV.7.

Leve

l air

(mb

ar)

Leve

l air

(mb

ar)

28

Waktu (s)

Gambar IV.7 Respon hasil tuning ZN tipe 2 dengan merubah setpoint

4.3 Hasil Desain Metoda Cohen-Coon

4.3.1 Hasil desain

Setelah didapat nilai-nilai Kc/Kp, Ti, dan Td, nilai-nilai tersebut

direalisasikan ke modul PID. Untuk nilai Kc harus dibagi 2 agar sistem

tidak terlalu berosilasi. Kc = 100,0387431/2 = 50,01937153

Lalu dihubungkan kembali dengan arduino-matlab dengan blok simulink

seperti gambar IV.8 dan respon hasil desain ditunjukan pada gambar IV.9.

Gambar IV.8 Blok simulink hasil desain Cohen-Coon

Waktu (s)

Gambar IV.9 Respon hasil desain Cohen-Coon

Leve

l air

(mb

ar)

Leve

l air

(mb

ar)

29

4.4 Analisa Metoda ZN tipe 1, ZN tipe 2, dan Cohen-Coon

Setelah dicoba melakukan proses desain dengan menggunakan metoda

ZN tipe 1, ZN tipe 2, dan Cohen-Coon ternyata menghasilkan respon yang

berbeda-beda. Dilihat dari responnya, metoda ZN tipe 1 menghasilkan respon

yang paling baik dibandingkan dengan metoda ZN tipe 2 dan Cohen-Coon.

Sehingga parameter-parameter Kp, Ti, dan Td yang didapat dari metoda ZN

tipe 1 akan digunakan untuk script matlab dan script arduino. Besarnya nilai

Kp = 30; Ti = 10,6; Td = 0,02.

4.5 Hasil Respon Script Matlab

4.5.1 Hasil Respon

Gambar IV.10 menunjukan hasil respon dengan script matlab.

Waktu (s)

Gambar IV.10 Hasil respon dengan script matlab

4.5.2 Hasil Respon saat diberi gangguan

Hasil respon dengan script matlab saat diberi gangguan ditunjukan pada

gambar IV.11.

Waktu (s)

Gambar IV.11 Hasil respon dengan script matlab saat diberi gangguan

Ke

luar

an

(V)

Ke

luar

an

(V)

30

Saat plant diberi ganggun dengan membuka atau menutup valve,

respon akan naik saat valve ditutup namun akan kembali ke titik steady-

state. Lalu saat valve dibuka, respon turun namun akan kembali ke titik

steady-state. Hal ini menunjukan bahwa sistem kendali level air ini

tangguh.

4.6 Hasil Respon Script Arduino

4.6.1 Realisasi pada plant

Realisasi pada plant untuk ditampilkan di LCD pada arduino

ditambahkan dengan shield arduino dan LCD. Catu daya arduino tidak

dari laptop, tetapi menggunakan adaptor charger handphone. Sehingga

sistem tidak lagi menggunakan komputer atau stand alone controller.

Gambar IV.12 menunjukan realisasi pada plant dengan stand alone

controller.

Gambar IV.12 Realisasi pada plant dengan stand alone controller

4.6.2 Tampilan LCD

Setelah program berhasil dijalankan, dan tampilan LCD berjalan

dengan baik. Setpoint pertama diatur di ketinggian 2,5 mbar. Sebelum air

mencapai titik stabil di ketinggian 2,5 mbar, terjadi overshoot terlebih

dahulu. Gambar IV.13 menunjukan tampilan LCD untuk setpoint 2,5

mbar.

31

Gambar IV.13 Tampilan LCD untuk setpoint 2,5 mbar

Kemudian setpoint dinaikan menjadi 5 mbar. Sama halnya dengan

setpoint 2,5 mbar, sebelum air mencapai titik stabil di 5 mbar, terjadi

overshoot terlebih dahulu. Tampilan LCD untuk setpoint 5 mbar

ditunjukan pada gambar IV.14.

Gambar IV.14 Tampilan LCD untuk setpoint 5 mbar

Gambar yang diambil hanya sampel saja, karena pada

kenyataannya nilai PV naik turun akibat adanya goncangan yang

disebabkan oleh pompa air.

32

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari sepanjang praktikum yang dilakukan, dapat disimpulkan bahwa :

a. Dalam merancang sistem kendali level air, bisa menggunakan kendali

PID yang nilai-nilai Kp, Ti, dan Td dicari dengan 3 metoda yang berbeda,

yaitu Ziegler-Nichols tipe 1, Ziegler-Nichols tipe 2, dan Cohen-Coon.

b. Sistem kendali yang dibuat dengan ketiga metoda tersebut merupakan

sistem kendali kontinyu.

c. Dari ketiga metoda tersebut memiliki kelebihan dan kekurangan masing-

masing. Dilihat dari respon yang dihasilkan, metoda Ziegler-Nichols tipe

1 merupakan metoda yang menghasilkan respon terbaik pada plant level

air dengan nilai Kp = 30; Ti = 10,6; Td = 0,02.

d. Nilai-nilai Kp, Ti, dan Td yang diperoleh dari metoda Ziegler-Nichols

tipe 1 digunakan untuk sistem kendali digital dengan script matlab dan

script arduino.

e. Pada script matlab masih menggunakan komputer/laptop untuk

mengamati responnya. Sedangkan pada script arduino, respon yang

dihasilkan diamati dengan tampilan LCD sehingga tidak lagi

menggunakan komputer/laptop yang disebut dengan stand alone

controller.

5.2 Saran

Untuk penyempurnaan dan pengembangan praktikum ke depannya, diberikan

saran-saran sebagai berikut.

a. Dalam proses melakukan desain lebih teliti lagi dalam pembuatan garis-

garis pada sinyal yang didesain.

b. Perbanyak latihan dalam melakukan manual tuning agar respon yang

dihasilkan sesuai dengan yang diinginkan.

33

DAFTAR PUSTAKA

[1] "Kontrol Level Tangki Air",

https://irfanramadhan4.wordpress.com/2012/03/27/kontrol-level-tangki-air/

(diakses tanggal 6 Juli 2015)

[2] "Cara Kerja Kontrol Level Tangki Air",

http://www.instalasilistrikrumah.com/cara-kerja-kontrol-level-tangki-air/

(diakses tanggal 6 Juli 2015)

[3] Iskandar, Dede dan Yuda Bakti Zainal. "Kendali Level Air dengan

menggunakan Parameter PID Controller". Bandung: Universitas Jenderal

Achmad Yani.

[4] "Pengertian Kendali PID",

http://catatan-elektro.blogspot.com/2011/11/pengertian-kendali-pid.html

(diakses tanggal 7 Juli 2015)

[5] "Pengenalan Metode Ziegler-Nichols pada Perancangan Kontroler pada PID".

http://www.elektroindonesia.com/elektro/tutor12.html (diakses tanggal 7

Juli 2015)

[6] Bakar, Suheri dan Feriyonika."Desain Kendali PID dengan Ziegler-Nichols".

(Gambar hidup)

[7] "Metoda Tuning Ziegler-Nichols",

http://instrumentationsystem.blogspot.com/2011/05/metoda-tuning-ziegler-

nichols.html (diakses tanggal 7 Juli 2015)

[8] Feriyonika. "Desain Kendali PID dengan Cohen dan Coon (CC)". (Gambar

hidup)


Top Related