disusun untuk memenuhi salah satu syarat untuk menyelesaikan tugas mata kuliah
Sistem Kendali Digital
Semester 7
Oleh :
Juwita Sugitriana
NIM
: 111354011
Kelas
: 4A-EK
ABSTRAK
Juwita Sugitriana: Sistem Kendali PID pada Modul Kendali Level Air. Laporan
Akhir: Program Studi D4 Teknik Elektronika. Politeknik Negeri Bandung, 2015.
Kata Kunci : Kendali PID, Level Air, Ziegler Nichols, Matlab, Arduino UNO
ABSTRACT
Juwita Sugitriana: PID Control System on Water Level Control Module. Laporan
Akhir: Electronics Engineering Departement. State Polytechnic of Bandung, 2015.
The output is not always same with the design. Need a controller to make an
stable output. PID Controller is a controller system. PID Controller designed by
Matlab 2013 software. Simulink and script on matlab is connected with Arduino
UNO module to help design of PID tunning on water level module. There is two
method to decrease value of rise time, overshoot, steadystate error and settling of
response, that method is Ziegler Nichols type 1 methode and Ziegler Nichols type 2
method. Water level controller can be applicated to industries like oil filling tank,
dam, bottle or glass of drink, etc. Water level Controller can be applicated to
flooding detection system, water tank pump, etc.
Key Word : PID Controller, Water Level, Ziegler Nichols, Matlab, Arduino UNO
ii
KATA PENGANTAR
Puji dan syukur penulis panjatkan kehadirat ALLAH SWT karena atas rahmat
dan bimbingan-Nya laporan akhir dengan judul SISTEM KENDALI PID PADA
MODUL KENDALI LEVEL AIR dapat diselesaikan. Laporan ini dibuat untuk
mata kuliah Sistem Kendali Digital, program studi D4 Teknik Elektronika, Jurusan
Teknik Elektro, Politeknik Negeri Bandung.
Selama pelaksanaan pembuatan laporan, penulis banyak mendapatkan
bantuan dan bimbingan dari berbagai pihak. Oleh karena itu penulis mengucapkan
banyak terima kasih kepada pihak - pihak berikut :
1. Orang tua dan keluarga yang telah memberikan dukungan moril maupun materil.
2. Bapak Feriyonika, S.T., M.Sc. Eng. selaku dosen pembimbing yang memberikan
nasihat dan bimbingan yang sangat bermanfaat kepada penulis dalam
menyelesaikan laporan akhir ini.
3. Rekan-rekan EC-D4 2011 yang selalu memberikan dukungan dan semangat
kalian kepada penulis.
4. Seluruh pihak yang membantu dan mendukung yang tidak dapat disebutkan satu
persatu.
Penulis menyadari dalam penyusunan laporan akhir ini masih jauh dari
sempurna, masih banyak kekurangan yang didasari keterbatasan penulis sendiri, oleh
karena itu kritik atau saran sangat diharapkan untuk mendukung penulisan laporan
yang lebih baik.
Akhir kata penulis berharap, laporan ini dapat memberikan manfaat khususnya
untuk penulis sendiri dan umumnya untuk pembaca guna dapat membuat tulisan
yang lebih baik lagi.
Bandung, Januari 2015
Penulis
iii
DAFTAR ISI
ABSTRAK ..................................................................................................................... i
ABSTRACT .................................................................................................................. ii
KATA PENGANTAR ................................................................................................. iii
DAFTAR ISI ................................................................................................................ iv
DAFTAR TABEL ........................................................................................................ vi
DAFTAR GAMBAR .................................................................................................. vii
BAB I PENDAHULUAN ............................................................................................. 1
1.1.
1.2.
1.3.
Tujuan ............................................................................................................. 2
1.4.
2.2.
2.2.1.
2.2.2.
2.3.
2.4.
3.2.
3.3.
3.3.1.
3.3.2.
3.3.3.
3.3.4.
3.3.5.
3.3.6.
3.4.
3.3.7.
3.3.8.
3.3.9.
4.2.
4.3.
4.4.
PID-Arduino ................................................................................................. 28
Simpulan ....................................................................................................... 31
5.2.
Saran ............................................................................................................. 31
DAFTAR TABEL
Tabel 2. 1. Respon Kendali PID terhadap Perubahan Konstanta Parameter ................ 4
Tabel 3. 1. Parameter Output seharusnya (0,2 V/ mbar) ............................................ 16
Tabel 3. 2. Hasil Pengujian (0,2 V/ mbar) .................................................................. 17
Tabel 3. 3. Parameter Output seharusnya (0,6 V/ mbar) ............................................ 17
Tabel 3. 4. Hasil Pengujian (0,6 V/ mbar) .................................................................. 17
vi
DAFTAR GAMBAR
Gambar 2. 1. Kurva S. ................................................................................................. 6
Gambar 2. 2. Penentuan parameter L dan T ................................................................ 7
Gambar 2. 3. Blok Diagram Sistem Loop Tertutup .................................................... 8
Gambar 2. 4. Matlab 2013 ........................................................................................... 9
Gambar 2. 5. Konfigurasi Arduino UNO .................................................................. 10
Gambar 3. 1. Diagram Blok Sistem Kendali Level Air............................................. 11
Gambar 3. 2. Modul Catu Daya (Power Supply) ...................................................... 13
Gambar 3. 3. Modul Setpoint (RVG-5). .................................................................... 13
Gambar 3. 4. Modul PID-5 ........................................................................................ 14
Gambar 3. 5. Modul Power Amplifier ....................................................................... 15
Gambar 3. 6. Modul TWP-1 ...................................................................................... 15
Gambar 3. 7. Modul DPT-5 ....................................................................................... 16
Gambar 3. 8. Modul Arduino UNO ........................................................................... 18
Gambar 3. 9. Model Simulink untuk mencari parameter PID ................................... 18
Gambar 3. 10. Model Simulink untuk mencari parameter Pcr dan Kcr .................... 19
Gambar 4. 1. Hasil respon modul Kendali level air selama 10 menit ...................... 20
Gambar 4. 2. Hasil respon untuk menentukan nilai L dan T ..................................... 21
Gambar 4. 3. Modul Level Kendali Air..................................................................... 22
Gambar 4. 4. Hasil Respon PID dengan metode Ziegler-Nichols 1 .......................... 23
Gambar 4. 5. Hasil respon modul Kendali level air yang berosilasi ......................... 24
Gambar 4. 6. Hasil respon untuk menentukan nilai Pcr ............................................ 24
Gambar 4. 7. Modul Kendali Level Air close loop ................................................... 25
Gambar 4. 8. Hasil Respon PID dengan metode Ziegler-Nichols 2 .......................... 26
Gambar 4. 9. Hasil Respon Sistem Level Air menggunakan Script pada Matlab ..... 28
Gambar 4. 10. Hasil respon sistem menggunakan Program Arduino ....................... 30
vii
BAB I
PENDAHULUAN
Arduino
UNO
merupakan
mikrokontroler
yang
digunakan
untuk
sebelumnya, dengan modul kendali level air. Arduino yang telah menerima
perintah dari Matlab akan memberikan perintah-perintah terbut pada modul/plant
yang dihubungkan dengan Arduino UNO.
Pada laporan akhir ini penulis melakukan eksperimen mengenai sistem
kendali PID dengan melakukan suatu perancangan/ manual tunning pada modul
sistem kendali level air. Manual tunning dilakukan untuk menemukan algoritma
PID. Metode yang digunakan untuk mendapatkan parameter PID yaitu dengan
menggunakan metode Ziegler Nichols tipe 1 dan tipe2. Setelah parameterparameter PID (Kp, Ti, Td) didapat, selanjutnya nilai dari parameter tersebut di
gunakan ke modul PID. Respon sistem akan di analisis dan akan diperbaiki
dengan teknik manual tuning. Oleh karena itu, dilakukan percobaan dengan
judul Sistem Kendali PID pada Modul Kendali Level Air.
1.3. Tujuan
Tujuan dari percobaan ini adalah melakukan pengujian dan penerapan sistem
kendali PID pada suatu modul sistem kendali level air dengan menggunakan dua
metoda yaitu metoda Ziegler Nichols tipe 1 dan 2.
BAB II
DASAR TEORI
Overshoot
Settling Time
S-S Error
Kp
Berkurang
Bertambah
Minor Change
Berkurang
Ki
Berkurang
Bertambah
Bertambah
Menghilangkan
Kd
Minor Change
Berkurang
Berkurang
Minor Change
) ......................................... (1)
[5]
. Metode Ziegler
terbagi menjadi dua metode yiatu Metode Ziegler Nichols Tipe 1 (open loop) dan
Tipe 2 (close loop).
[5]
( ) ......................................... (2)
......................................... (3)
......................................... (4)
......................................... (5)
......................................... (6)
Mathworks,
Inc.yang
dalam
perkembangan
selanjutnya
10
Feri Djuandi mengatakan bahwa Arduino tidak hanya sekedar sebuah alat
pengembangan, tetapi ia adalah kombinasi dari hardware, bahasa pemrograman
dan Integrated Development Environment (IDE) yang canggih. IDE adalah
sebuah software yang sangat berperan untuk menulis program, meng-compile
menjadi kode biner dan meng-upload ke dalam memory microcontroller. Ada
banyak projek dan alat-alat dikembangkan oleh akademisi dan profesional
dengan menggunakan Arduino, selain itu juga ada banyak modul-modul
pendukung (sensor, tampilan, penggerak dan sebagainya) yang dibuat oleh pihak
lain untuk bisa disambungkan dengan Arduino. Arduino berevolusi menjadi
sebuah platform karena ia menjadi pilihan dan acuan bagi banyak praktisi. [9]
BAB III
METODOLOGI PENELITIAN
Input
Proses
Catu Daya
Setpoint
PID
Output
Penguat
Plant
Keterangan:
1. Blok Input
Blok input terdiri dari modul catu daya dimana catu daya menyuplai
tegangan untuk seluruh modul sebesar +15V.
2. Blok Proses
Blok proses terdiri dari modul Reverence Variabel Generator (setpoint),
modul PID dan modul (penguat daya).
3. Blok Output
Blok output merupakan output dari plant yang merupakan modul level
kendali air.
11
12
13
Hasil pengujian Power Supply berjalan dengan baik, hal ini dibuktikan
dengan pengetesan menggunakan multimeter.
Pada variable maksimal, input +15 V, output yang dihasilkannya adalah +15V.
14
15
tangki
pertama
yang terhubung
dengan
input
yang
akan
16
Modul DPT berjalan kurang presisi dan tidak akurat, hal ini dibuktikan
dengan pengetesan menggunakan multimeter.
Berdasarkan parameter yang ditentukan, seharusnya hasil pengukuran
seperti berikut:
Tabel 3. 1. Parameter Output seharusnya (0,2 V/ mbar)
mbar
Output
200 mV
400 mV
600 mV
17
mbar
Output
240 mV
532 mV
760 mV
mbar
Output
200 mV
400mV
600 mV
mbar
Output
0,8V
1,7V
2,66 V
18
presisi karena walaupun nilainya memiliki selisih yang besar, tetapi setiap
kenaikan atau perbedaan setiap mbar nya memiliki kenaikan yang konstan.
3.3.1. Modul Arduino UNO
Modul Arduino ini bekerja seperti Arduino UNO pada umumnya.
Akan tetapi, tegangan output pada modul Arduino UNO ini senilai dua kali
lipat dari output Arduino UNO yaitu 5 Volt maka total output yang dihasilkan
modul ini adalah 10 Volt. Tegangan keluaran dari modul ini dikalikan dua
karena driver motor pada plant kendali level air membutuhkan tegangan lebih
dari lima untuk beroperasi.
19
Pada metode ini sistem kendali level air diatur pada sistem kendali
terbuka (open loop). Pada Simulink Matlab, scope akan memperlihatkan
respon berupa Kurva S. Dengan menggunakan metode tipe 1 untuk
mendapatkan parameter L dan T.
Gambar 3. 10. Model Simulink untuk mencari parameter Pcr dan Kcr
Pada metode ini sistem kendali level air diatur menjadi sistem tertutup/
rangkaian feedback. Pada simulink Matlab, scope akan menunjukkan grafik
yang berosilasi. Parameter Kp pada modul PID diatur agar
BAB IV
DATA PENGUJIAN DAN ANALISA
31
21
Dengan menggunakan data cursor maka didapat batas untuk nilai T yaitu
2561 dan L yaitu 249,8. Setelah dihitung dan dibandingkan dengan waktu yang
diatur dari simulink dan waktu sebenarnya maka didapat nilai T = 219,5 dan nilai
L = 21,43, maka:
( ) ......................................... (2)
Kp
)
......................................... (3)
Ti
......................................... (4)
Ki
......................................... (5)
Td
......................................... (6)
Kd
Apabila nilai-nilai Kp, Ti dan Td sudah dihitung, dengan simulink yang sama,
maka langkah selanjutnya adalah melakukan proses tunning pada modul PID
yang terhubung langsung dengan modul Kendali level air. Keluaran
diumpanbalikkan ke modul PID.
22
23
24
25
......................................... (4)
Ki
......................................... (9)
Td
......................................... (6)
Kd
Apabila nilai-nilai Kp, Ti dan Td sudah dihitung, dengan simulink yang sama,
maka langkah selanjutnya adalah melakukan proses tunning pada modul PID
yang terhubung langsung dengan modul Kendali level air. Keluaran
diumpanbalikkan ke modul PID.
26
ketika respon diturunkan hingga setengahnya maka respon juga akan mengikuti
sampai steady state.
Setpoint yang digunakan yaitu 0,7 volt. Ketika setpoint diatur maka respon
akan mengikuti agar menuju steady state. Saat setpoint dinaikan maka respon
juga akan naik. Begitu pula ketika respon diturunkan hingga setengahnya maka
respon juga akan mengikuti sampai steady state.
27
//Kendali PID
outP = Kp*error;
outI = Ki*errorI;
outD = Kd*errorD;
outPIDsebelum = outP + outI + outD;
outPID = outPIDsebelum*51;
outPID = outPID*0.5;
//Membatasi nilai agar PID tidak
>255 atau <0
if(outPID>=255)
{
outPID=255;
}
else if(outPID<=0)
{
outPID=0;
}
else
{
outPID=outPID;
}
//Menuliskan hasil perhitungan PID
ke pin 5
analogWrite(5,outPID);
errorsebelum=error;
errorIsebelum=errorI;
//code untuk menampilkan di serial
monitor
Serial.print ("Setpoint = ");
Serial.print (Setpoint1);
Serial.print ("Feedback = ");
Serial.println (Feedback1);
}
28
Gambar 4. 9. Hasil Respon Sistem Kendali Level Air menggunakan Script pada Matlab
Dengan menggunakan Script diatas maka respon yang dihasilkan seperti yang
tampak pada gambar 4.9.
4.4. PID-Arduino
Arduino UNO dapat digunakan sebagai perangkat untuk menjalankan sistem
serta dapat menunjukkan hasil respon sistem kendali level air. Arduino bekerja
tanpa terhubung dengan komputer. Arduino mendapatkan supply daya dari jalajala. Hal ini menunjukkan bahwa Arduino bekerja secara standalone atau tanpa
bantuan komputer ketika memulai pengoperasian sistem. Instalasi dilakukan
dengan cara mengupload Arduino dengan program berikut:
float
Setpoint,
Feedback,
Feedback1;
float error;
float Kp = 300;
float
float Ki = 344.8;
Setpoint1,
errorI,
errorIsekarang,
errorIsekarang1, errorIsekarang2;
float Kd = 9;
float errorsebelum = 0;
29
int errorIsebelum = 0;
int outPID;
errorD = errorD1/Ts;
//Kendali PID
void setup () {
outP = Kp*error;
outI = Ki*errorI;
outD = Kd*errorD;
Serial.begin(9600);
//hanya
untuk
outPID = outPID*0.5;
void loop () {
atau <0
if(outPID>=255)
analogRead(A2);
//baca
outPID=255;
Setpoint1 = Setpoint*0.0049;
else if(outPID<=0)
umpan balik
Feedback1 = Feedback*0.0049;
outPID=0;
}
//Hitung error
else
{
outPID=outPID;
errorIsekarang = error+errorsebelum;
errorIsekarang1 = errorIsekarang/2;
errorIsekarang2 = errorIsekarang1*Ts;
errorI
errorIsekarang2
pin 5
+
analogWrite(5,outPID);
errorIsebelum;
errorsebelum=error;
//Menghitung error Diferensial
errorIsebelum=errorI;
30
Serial.print (Setpoint1);
//code untuk menampilkan di serial
monitor
Serial.println (Feedback1);
Saat proses upload program ke Arduino berhasil, plant akan menyala sesuai
dengan setpoint yang diatur melalui modul setpoint (RVG-5). Respon Arduino tidak
berupa grafik melainkan berupa deret bilangan seperti gambar 4.10 yang
menunjukkan proses berjalannya respon pada sistem level air.
Gambar 4. 10.
BAB V
SIMPULAN DAN SARAN
5.1. Simpulan
Berdasarkan proses pengujian, pengambilan data dan analisa percobaan yang
telah dilakukan mengenai Sistem Kendali PID pada Sistem Kendali Level Air,
dapat disimpulkan bahwa:
1. Sistem Kendali Level Air dapat menggunakan sistem kendali PID Dengan
Metode Ziegler Nichols 1 atau 2. Akan tetapi terdapat kelebihan dan
kekurangannya.
2. Apabila Sistem Kendali Level Air menggunakan metode tipe 1 hasil dari
respon akan lebih stabil dibandingkan dengan tipe 2 tetapi proses pengambilan
data untuk mencari parameter Kp, Ki dan Kd membutuhkan waktu yang lebih
lama dibanding tipe 2.
3. Hasil respon setelah di tunning menggunakan parameter PID yang dihasilkan
dari metode Ziegler Nichols tipe 2 kurang baik karena osilasi yang dihasilkan
tercampur dengan noise dari gelombang air yang tidak tenang.
4. Pada metode Trial dan Error pengubahan parameter-parameter respon dilakukan
agar respon bisa mencapai steady state dengan risetime dan overshoot yang kurang
serta sedikitnya steady state error.
5.2. Saran
Demi penyempurnaan, keakuratan dan pengembangan kajian ilmiah ini, maka
penulis memberikan saran, sebagai berikut:
1. Melakukan praktikum sesuai prosedur dengan langkah-langkah yang benar.
2. Lebih teliti dan jeli dalam melakukan tunning terutama pada saat menentukan
parameter-parameter PID.
31
32
DAFTAR PUSTAKA
[1]. Maharani. Aldea Steffie, Setiono. Budi, dan Sumardi, Aplikasi Kontrol Pid
Untuk Pengendalian Ketinggian Level Cairan Dengan Menggunakan
TCP/IP, Skripsi, Universitas Diponegoro, 2007.
[2]. Ferdinando. Hany, Desain PID Controller dengan Software Matlab, Jurnal,
Universitas Kristen Petra, 2007.
[3]. Menghubungkan Arduino dengan Matlab,
http://waterfilling.blogspot.com/2014/07/menghubungkan-arduino-denganmatlab.html. Diakses 10 Januari 2015.
[4]. Pengertian Kendali PID,
http://catatan-elektro.blogspot.com/2011/11/pengertian-kendali-pid.html.
Diakses 10 Januari 2015.
[5]. Metoda Tunning Ziegler Nichols,
http://instrumentationsystem.blogspot.com/2011/05/metoda-tuning-zieglernichols.html. Diakses 10 Januari 2015.
[6]. Matlab R2013a,
http://www.behdadsoft.com/Matlab-R2013a.html. Diakses 10 Januari 2015
[7]. Pengantar untuk Pemrograman Matlab,
https://inaseptiana.files.wordpress.com/2014/11/modul-pengantar
pemrograman-matlab.pdf. Diakses 10 Januari 2015.
33