Penalaan Parameter Pengendali PID untuk Pengendalian Kecepatan Motor Arus Searah Menggunakan Metode Algoritma Genetika


Referensi :
Suprapto, B.Y. Azmi, Afnizar. Nora, Febby. Dwijayanti, Suci., (2020). "Penalaan Parameter Pengendali PID untuk Pengendalian Kecepatan Motor Arus Searah Menggunakan Metode Algoritma Genetika dan Jaringan Syaraf Tiruan". Jurnal Riset Sains dan Teknologi, Vol 4, No. 1, Maret 2020, 15 - 23.

Penalaan Parameter Pengendali PID untuk Pengendalian Kecepatan Motor Arus Searah Menggunakan Metode Algoritma Genetika dan Jaringan Syaraf Tiruan


Abstrak[Kembali]
    Dalam proses kendali diperlukan penalaan parameter yang baik sehingga tercapai tujuan pengendalian. Metode yang paling dipakai yaitu métode Ziegler Nichols. Namun terkadang kesulitan métode ini adalah memerlukan pengetahuan tentang model terutama pada sistem orde tinggi khususnya dalam penentuan osilasi pada sistem tersebut. Pada penelitian ini dipergunakan Jaringan Syaraf Tiruan untuk menentukan parameter peluang pindah silang (Pc) dan peluang mutasi (Pm) yang terdapat pada Algoritma Genetika untuk menentukan parameter pengendali Proportional Integral Derivative (PID). Penelitian ini mengambil objek motor arus searah. Dari penelitian ini didapatkan hasil terbaik pada populasi 100 dengan parameter PID yaitu Kp bernilai 1.0309, Ki bernilai 25.9346 dan Kd bernilai 0.0186, dimana nilai fitnes terbaik, yaitu 0.22443 pada generasi ke 64, dengan nilai fitnes rata-rata 11.6918. Respon sistem yang dihasilkan juga tidak memiliki overshot, tidak memiliki peak time, settling time 0.345 detik, dan rise time 10-90% sebesar 0.10977 detik. Sehingga dapat dikatakan bahwa penggunaan Jaringan Syaraf Tiruan yang dikombinasikan dengan Algoritma Genetika dalam menentukan parameter pengendali PID cukup berhasil.  

Pendahuluan[Kembali]
    Dalam kehidupan ini pasti akan menghadapi persoalan yang harus diselesaikan. Begitu pula dengan ilmu pengetahuan, juga memerlukan pemecahan terhadap persoalan yang dihadapi. Pemecahan masalah tersebut biasanya dilakukan dengan melakukan pendekatan agar dapat menyelesaikan masalah secara optimal dan efisien. Didalam permasalahan. Pendekatan tersebut sebagian besar menggunakan prinsip probabilitas. Salah satu metode yang sering digunakan oleh para ilmuwan untuk menyelesaikan berbagai permasalahan optimasi yaitu dengan Algoritma Genetika (AG). Algoritma Genetika merupakan bagian penting saat ini dalam bidang kecerdasan buatan dan riset operasi meskipun pada awalnya bukan digunakan untuk penyelesaian masalah, tetapi sebagai instrumen untuk mensimulasikan evolusi biologis dari sistem alami adaptif namun seiring perkembangan teknologi algoritma ini telah mampu menjadi solusi pemecahan masalah (García-Martínez, Rodriguez, & Lozano, 2018).
    Selain algoritma genetika, metode lain pada kecerdasan buatan yang banyak digunakan yaitu jaringan syaraf tiruan. Penggunaan jaringan syaraf tiruan ini yaitu sebagai klasifikasi (Kalash et al., 2018), pemodelan (Goldberg, 2016), kendali (Heryanto, Suprijono, Suprapto, & Kusumoputro, 2017) dan lain sebagainya. Adapun kelebihan neural network ini adalah kemampuannya bekerja pada sistem yang nonlinier, meniru fungsi syaraf dan otak manusia (Suprapto, Heryanto, Suprijono, & Kusumoputro, 2017). Sehingga dengan kombinasi kedua metode ini diharapkan mampu untuk mengatasi persoalan. 
    Pada penelitian ini digunakan obyek yaitu motor arus searah yang akan dikendalikan kecepatannya. Pengendalian kecepataan ini biasanya menggunakan pengendali Proportional Integral Derivative(PID). Pengendali PID ini memiliki keunggulah yaitu sederhana, kokoh dan dapat diandalkan. Namun permasalahan yang timbul dengan penggunaan PID ini yaitu sulitnya menentukan parameter pada pengendali PID ini. Meskipun ada metode yang cukup handal dan sering dipergunakan saat penalaan parameter ini seperti metode Ziegler Nichols. Metode ini juga masih menggunakan pendekatan pada sistem yang diterapkan. Untuk mengatasi hal tersebut maka pada paper ini dibahas penggunaan algoritma genetika dan jaringan syaraf tiruan untuk penalaan parameter PID pada motor arus searah.
    Tujuan dari makalah ini adalah memaparkan metode selain Ziegler Nichols untuk penalaan parameter pengendali PID untuk pengendalian kecepatan pada motor arus searah. Metode tersebut menggunakan Algoritma Genetika yang digabungkan dengan Jaringan Syaraf Tiruan. Kedua metode ini memiliki kelebihan dalam melakukan optimasi. Metode ini juga telah diterapkan untuk motor arus searah namun kombinasi dengan metode logika samar (Suprapto & Sariman, 2012).

Metodologi Penelitian [Kembali] 

Pada penelitian ini berdasarkan pada blok diagram seperti yang ditunjukkan pada Gambar 1 berikut ini:
Pada diagram blok seperti pada Gambar 1 tersebut, terlihat bahwa Algoritma Genetik ini akan dipergunakan untuk menentukan parameter Kp, Ki dan Kd pada pengendali PID dimana parameter pada Algoritma Genetika seperti peluang, pindah silang, dan peluang mutasi ditentukan menggunakan Jaringan Syaraf Tiruan (Neural Network). Tahapan proses yang akan dilakukan dengan menggunakan algoritma genetika dapat dilihat pada diagram alir Gambar 2 berikut ini :
 

Jika dilihat pada Gambar 2, maka langkah yang pertama dalam algoritma genetika adalah inisialisasi populasi yang bertujuan untuk membangkitkan sebuah populasi yang terdiri dari beberapa kromosom yang terdiri atas beberapa gen. Pada tahap ini, ditentukan ukuran populasi yang diinginkan (population size), merupakan sebuah matrik dua dimensi berukuran banyaknya kromosom dalam populasi x banyaknya gen dalam suatu kromosom. Pada paper ini akan digunakan beberapa ukuran populasi yang berbeda, yaitu 20, 50, 70, 90, dan 100. Setelah menentukan inisialisasi populasi awal, maka masing-masing kromosom yang ada dalam populasi tersebut akan dikodekan menurut banyaknya variabel yang digunakan. Dalam hal ini terdapat tiga buah variabel, yaitu x(1), x(2) dan x(3) yang menggantikan parameter pada PID. Kemudian dilakukan teknik pengkodean terdiri dari proses encoding dan decoding, meliputi penyandian gen dari kromosom, dimana satu gen biasanya mewakili satu variabel. Gen dapat direpresentasikan dalam bentuk string bit, bilangan real, daftar aturan, elemen permutasi, elemen program atau representasi lainnya yang dapat diimplementasikan untuk operator logika. Setelah itu, ditentukan nilai fitness dan fungsi aktivasi. Fungsi fitness ini terdiri dari parameter-parameter optimasi, sebelum dapat dihitung maka setiap parameter harus dihitung dalam nilai aktualnya. Nilai fitness tidak diperbolehkan bernilai negatif (Sait & Youssef, 2000) F(.) = F(P1,P2,…,Pn) (1) Sedangkan fungsi evaluasi ditentukan apa yang hendak dicapai, pada umumnya fungsi evaluasi berguna untuk memaksimalkan atau meminimalkan suatu objektif permasalahan. Persamaan fungsi evaluasi dapat ditulis dalam persamaan 2 berikut : F(.) = min or max [F(P1,P2,…,Pn)] (2) Selanjutnya sampai pada tahap seleksi. Pada tahapan ini digunakan model Seleksi Stocastic Uniform. Di dalam metode Stocastic Uniform ini, individu yang ada digambarkan pada segmen garis yang susunannya harus berurutan. Pada segmen garis tersebut akan ada sejumlah pointer dimana jumlahnya sama dengan jumlah individu yang ingin dilakukan proses seleksi pada segmen tersebut. Jika diketahui N merupakan jumlah individu yang akan dipilih sesuai dengan standar tertentu, maka jarak antar pointer pada segmen tersebut adalah 1/N sedangkan proses pengacakan dilakukan pada posisi pointer yang pertama dengan nilai range [0,1/N]. Tahap berikutnya adalah pindah silang (crossover) yang merupakan operator utama dalam menjalankan algoritma genetika dimana dalam operasinya, operator ini bekerja pada dua kromosom dalam suatu waktu. Kombinasi kedua kromosom ini akan membentuk offspring. Kromosom offspring atau sering disebut dengan kromosom anak terbentuk dan akan mewarisi sebagian sifat kromosom induknya. Sebagai tahap akhir, proses mutasi merupakan tahapan penting karena peranannya dalam menggantikan gen yang hilang disebabkan karena proses seleksi. Proses seleksi ini akan memungkinkan gen yang tidak muncul pada saat inisialisasi populasi. Proses mutasi ini dapat dilakukan pada semua gen yang ada dengan probabilitas tertentu. Hasil akhirnya dari proses mutase ini adalah adanya solusi yang optimum sesuai dengan standar yang telah ditetapkan. Nilai optimum yang dihasilkan oleh metode algoritma genetika ini merupakan parameter Kp, Ki dan Kd dari pengendali PID. Sedangkan masukan dari metode Algoritma Genetika ini hasil dari pelatihan yang dilakukan oleh jaringan syaraf tiruan. Jaringan Syarat Tiruan ini merupakan salah satu metode cerdas yang saat ini paling banyak digunakan karena salah satu kelebihannya yaitu mampu bekerja pada sistem yang memiliki sifat nonlinier tinggi serta mampu untuk meniru perilaku dari sistem otak manusia yang selalu mencoba untuk   mensimulasikan proses pembelajaran pada otak manusia tersebut. Pada paper ini, algoritma pembelajaran yang dipergunakan yaitu Backpropagation Neural Network (BPNN). Algoritma BPNN ini popular karena kemampuannya dalam mempelajari pemetaan multidimensional yang rumit pada sistem nonlinier dan sering disebut dengan “beyond regression”(Hecht-Nielsen, 1988; Rojas & Rojas, 2011). Algoritma ini menggunakan error output untuk mengubah nilai bobotnya dalam arah mundur. Untuk mendapatkan error ini, tahap perambatan maju harus dikerjakan lebih dahulu. Fungsi aktivasi yang sering digunakan adalah fungsi aktivasi sigmoid. Adapun arsitektur dari BPNN yang digunakan pada paper ini dapat dilihat pada Gambar 3 berikut :
Algoritma BPNN ini memiliki proses pelatihan yang sederhana. Apabila keluaran dari sistem memberikan hasil yang salah, maka bobot yang ada pada hidden layer dan input layer akan dikoreksi berdasarkan nilai kesalahan tersebut agar galat (error) yang didapat semakin kecil. Secara garis besar, struktur algoritma BPNN tersebut terdiri atas lapis masukan (input layer) xn, lapis tersembunyi (hidden layer) zm, dan lapis keluaran (output layer) yl seperti yang dapat dilihat pada Gambar 3. Sehingga persamaan pada algoritma BPNN ini dapat dilihat pada Gambar 3 sampai 6 sebagai berikut
 

Dimana zinm merupakan nilai yang masuk pada hidden layer, vnm adalah bobot antara input dan hidden layer, vom yaitu nilai threshold, zm adalah keluaran dari hidden layer, f1 dan f2 adalah fungsi aktivasi yin1 merupakan masukan pada output layer, y1 adalah keluaran dari output layer. Adapun nilai galat yang dari sistem ini seperti pada persamaan 7 berikut ini :
Masukan dari Jaringan syaraf tiruan ini adalah besarnya populasi yang ada pada satu generasi, dan besarnya generasi maksimum yang telah ditentukan. Pada pola pelatihan (learning), digunakan 10 buah data yang akan digunakan sebagai training set. Semakin banyak data yang digunakan, maka pola pelatihan akan semakin baik. Adapun data training seperti terlihat pada Tabel 1 berikut ini
Populasi yang dijadikan data training set berkisar antara 10 sampai 60 populasi. Sedangkan maksimum generasi berkisar antara 60 sampai dengan 100 generasi. Untuk probabilitas crossover (Pc) dan probabilitas mutasi (Pm), nilai dari probabilitas mutasi bernilai lebih kecil daripada probabilitas crossover. Hal itu dikarenakan jika terlalu banyak individu yang dimutasi, akan mengakibatkan hilangnya kemiripan dengan induk sebelumnya. Parameter yang digunakan pada penelitian ini yaitu neuron pada input layer sebanyak 2 buah (pop, gen), Neuron pada hidden layer 3 buah, Neuron pada output layer 2 neuron (pm, pc). Nilai konstanta laju pembelajaran sebesar 0,2. Unjuk kerja dari pelatihan pada jaringan syaraf tiruan ini dilihat berdasarkan nilai Mean Square Error (MSE). Pelatihan optimumnya didapat pada epoch ke 11 dengan nilai MSE sebesar 4.79x 10-07. Pada epoch tersebut didapatkan nilai peluang crossover dan peluang mutasi memiliki range antara 0,3 sampai dengan 0.6. Masing-masing memiliki variasi nilai yang tidak jauh berbeda. Keluaran dari algoritma genetika ini merupakan nilai parameter dari pengendali  PID. Pengendali PID merupakan gabungan dari pengendali proporsional (P), integral (I), dan diferensial (D). Keluaran pengendali PID akan mengubah respon mengikuti perubahan yang ada pada hasil pengukuran sensor dan set point yang ditentukan. Pengendali PID tersebut dapat dilihat pada persamaan 8 berikut ini
 

Sedangkan obyek dari penelitian ini yaitu motor arus searah yang akan dikendalikan kecepatannya. Motor arus searah memerlukan sumber tegangan yang searah pada kumparan medan untuk diubah menjadi energi mekanik. Kumparan medan pada motor arus searah disebut stator ( bagian yang tidak berputar ) dan kumparan jangkar disebut rotor ( bagian yang berputar ). Jika terjadi putaran pada kumparan jangkar dalam pada medan magnet, maka akan timbul tegangan yang berubah-ubah arah pada setiap setengah putaran. Motor Arus Searah yang digunakan pada penulisan ini adalah jenis motor DC pengontrolan jangkar Adapun prinsip kerja motor arus searah ini seperti terlihat pada Gambar 4 berikut ini
Pada motor Arus searah ini seperti pada Gambar 4, daerah kumparan medan yang dialiri arus listrik akan menghasilkan medan magnet yang melingkupi kumparan jangkar dengan arah tertentu. Konversi dari energi listrik menjadi energi mekanik maupun sebaliknya berlangsung melalui medan magnet. Agar proses perubahan energi mekanik dapat berlangsung secara sempurna, maka tegangan sumber harus lebih besar daripada tegangan gerak yang disebabkan reaksi lawan. Dengan memberi arus pada kumparan jangkar yang dilindungi oleh medan maka menimbulkan perputaran pada motor. Torsi yang dihasilkan motor adalah berbanding lurus dengan hasil kali dari arus jangkar 𝑖𝑎 (𝑡) dan fluks celah udara 𝜑, yang berbanding lurus dengan arus medan(K. Ogata, 2002),

dimana 𝐾𝑓 adalah konstanta. Dengan demikian, torsi T dapat ditulis seperti pada persamaan 10 𝑇 = 𝐾𝑓𝑖𝑓𝐾1 𝑖𝑎 (𝑡) dengan nilai torsi motor sebesar 10.2 Nm.(10) Pada motor DC dengan pengontrolan jangkar, arus medan dijaga konstan. Untuk arus medan yang konstan, fluks menjadi konstan, dan torsi menjadi berbanding lurus dengan arus jangkar, sehingga(K. Ogata, 2002) : 𝑇 = 𝐾𝑖𝑎 (𝑡) ( 11 ) dimana K adalah konstanta torsi motor. Pada saat jangkar berputar, suatu tegangan yang berbanding lurus dengan hasil kali fluks dengan kecepatan sudut, terinduksi pada jangkar. Untuk fluks yang konstan, tegangan terinduksi 𝑒𝑏 (𝑡) berbanding lurus dengan kecepatan sudut 𝑑𝜃(𝑡)/𝑑𝑡. Dimana 𝜔(𝑡) = 𝑑𝜃(𝑡) 𝑑𝑡 , maka(K. Ogata, 2002) : 𝑒𝑏 (𝑡) = 𝐾𝑏 𝑑𝜃(𝑡) 𝑑𝑡 = 𝐾𝑏𝜔(𝑡) ( 12 ) dimana 𝐾𝑏 adalah konstanta gaya gerak listrik balik. Kecepatan motor DC dengan pengontrolan jangkar diatur oleh tegangan jangkar 𝑒𝑎(𝑡) yang dicatu oleh suatu penguat ( atau oleh generator yang dicatu oleh suatu penguat ). Persamaannya : 𝐿𝑎 𝑑𝑖𝑎(𝑡) 𝑑𝑡 + 𝑅𝑎𝑖𝑎(𝑡)+ 𝑒𝑏(𝑡) = 𝑒𝑎(𝑡) (13 ) Arus jangkar menghasilkan torsi yang dikenakan pada inersia dan gesekan, sehingga : 𝐽 𝑑𝜔(𝑡) 𝑑𝑡 + 𝑓𝜔(𝑡) = T = 𝐾𝑖𝑎(t) (13 ) Dengan menganggap semua syarat awal nol, dan mencari transformasi Laplace dari persamaan (11), ( 12), dan ( 13 ), diperoleh persamaan :

Dengan menganggap 𝐸𝑎(𝑠) sebagai input dan 𝜔(𝑠) sebagai output, diperoleh fungsi alih sistem 

Hasil dan Pembahasan[Kembali]


Penelitian ini dilakukan melakukan simulasi terhadap plant yang diambil yakni sebuah Motor Arus Searah terkendali Jangkar Merk U.S. Electrical Motors Type Dripproof dengan spesifikasi seperti pada Tabel 2 berikut ini (Thomas & Poongodi, 2009).

Dengan data tersebut maka dilakukan pengujian untuk mencari parameter pengendali PID dengan menggunakan metode Ziegler Nichols dan didapatkan nilai Kp sebesar 1.15476, Ki sebesar 25.213, Kd sebesar 0.01322. Kemudian dilakukan pengujian dengan mengimplementasikan nilai parameter yang didapat tersebut, hasilnya dapat dilihat pada Gambar 5 berikut
 
Dari Gambar 5, dapat kita lihat bahwa dengan pengendali PID yang diberikan oleh metode Ziegler-Nichols (Z-N) sistem tidak memiliki overshot, settling time sebesar 0.458 detik, dan rise time 0-90% sebesar 0.11096 detik. Selanjutnya dilakukan penalaan parameter dengan menggunakan algoritma genetika namun sebelumnya dengan memanfaatkan nilai dari peluang crossover dan peluang mutasi yang memiliki range antara 0,3 sampai dengan 0.6. Kemudian algoritma genetika yang dilakukan menggunakan parameter populasi sebesar 20, 70 dan 100 sedangkan dengan generasi 100 serta metode seleksi menggunakan Stochastic Uniform, mutase metodenya adalah uniform dan crossover berbasisi Scattered.

 
3.1 Pengujian 1 
 Pada pengujian ini, digunakan populasi yang berukuran 20. Hasil dari proses iterasi dapat dilihat pada Gambar 6. terdapat pada subplot 2, dimana x(1) yang mewakili Kp bernilai 4.7777, x(2) yang mewakili Ki bernilai 28.2395 dan x(3) yang mewakili Kd bernilai 0.4390. Sedangkan subplot 1 menunjukkan nilai fitnes terbaik, yaitu 0.84 pada generasi ke 51, dengan nilai fitnes rata-rata 11.5146. Artinya, indeks performasi sistem pada pengujian ini menunjukkan hasil yang tidak baik.
Pada subplot 3 grafik kawasan nilai fitnes untuk masing-masing individu pada generasi terakhir. Terlihat bahwa nilai fitnes terbanyak terdapat pada kawasan 1 sampai 5, yaitu mencapai 10 individu. Kawasan terbanyak kedua adalah 10 sampai 14 sebanyak 4 individu, sisanya masingmasing tidak lebih dari 2 individu. Selain itu, nilai fitnes masing-masing individu pada generasi ke 51 ditunjukkan oleh subplot 4.Dengan menggunakan hasil Kp, Ki dan Kd diatas, menghasilkan respon seperti terlihat pada Gambar 7 berikut
Dari Gambar 7 diatas, terlihat bahwa dengan pengendali PID yang diberikan oleh metode Algoritma Genetika pada Pengujian 1, sistem tidak memiliki overshot, settling time sebesar 0.653 detik dan rise time antara 10-90% sebesar 0.00879 detik. Hasil ini tidak lebih baik daripada hasil yang diberikan oleh metode Ziegler-Nichols, dimana sistem mencapai kondisi stabil pada waktu 0.458 detik.

3.2 Pengujian 2
Pada pengujian 2 digunakan populasi yang berukuran 70. Hasil dari proses iterasi dapat dilihat pada Gambar 8. Masing-masing parameter PID terdapat pada subplot 2, dimana x(1) yang mewakili Kp bernilai 1.5587, x(2) yang mewakili Ki bernilai 25.7211 dan x(3) yang mewakili Kd bernilai 0.0706. Sedangkan subplot 1 menunjukkan nilai fitnes terbaik, yaitu 0.372 pada generasi ke 51, dengan nilai fitnes rata-rata 6.75. Dapat dilihat bahwa indeks performasi sistem pada pengujian ini lebih baik dari pengujian sebelumnya.

 Pada subplot 3 grafik kawasan nilai fitnes untuk masing-masing individu pada generasi terakhir. Terlihat bahwa nilai fitnes terbanyak terdapat pada kawasan dibawah 3, yaitu 40 individu. Selain itu, nilai fitnes masing-masing individu pada generasi ke 51 ditunjukkan oleh subplot 4. Dengan menggunakan hasil Kp, Ki dan Kd diatas, menghasilkan respon seperti pada Gambar 9 berikut

Pada pengujian 2 ini, jumlah populasi adalah 70. Sistem juga tidak memiliki overshot, settling time sebesar 0.506 detik, dan rise time 10-90% sebesar 0.15714 detik. Respon ini menunjukkan bahwa pengujian ini lebih baik daripada kedua pengujian sebelumnya, namun tidak metode Ziegerl-Nichols yang stabil pada waktu 0.458 detik. Dari kedua pengujian ini, belum ditemukan variasi Kp, Ki, dan Kd yang lebih baik dari hasil dengan metode ZiegerlNichols.
 

3.3 Pengujian 3 
Pada pengujian ini, digunakan populasi yang berukuran 90. Hasil dari proses iterasi dapat dilihat pada Gambar 10. Masing-masing parameter PID terdapat pada subplot 2, dimana Kp bernilai 2.3178, Ki bernilai 25.9846 dan Kd bernilai 0.1253. Sedangkan subplot 1 menunjukkan nilai fitnes terbaik, yaitu 0.48741 pada generasi ke 54, dengan nilai fitnes ratarata 9.1864. Pada subplot 3 grafik kawasan nilai fitnes untuk masing-masing individu pada generasi terakhir. Terlihat bahwa nilai fitnes terbanyak terdapat pada kawasan dibawah 10, yaitu lebih dari 60 individu, dan siasanya dibawah 3 individu. Selain itu, nilai fitness masing-masing individu pada generasi ke 54 ditunjukkan oleh subplot 4.

Dengan menggunakan hasil Kp, Ki dan Kd diatas, responnya terlihat seperti pada Gambar 11 berikut

Seperti yang terlihat pada pengujian sebelumnya untuk populasi 90, respon sistem juga tidak memiliki overshot, settling time sebesar 0.418 detik. Ini merupakan hasil yang lebih baik dari ketiga pengujian sebelumnya, termasuk hasil yang diberikan oleh metode Zieger-Nichols, dimana sistem mencapai kondisi stabil pada waktu 0.458 detik. Sedangkan rise time 10-90% sebesar 0.18461 detik. Meskipun menunjukkan grafik respon yang lebih baik, namun indeks performasi sistemnya tidak lebih baik daripada pengujian sebelumnya. Oleh karena itu, pada pengujian selanjutnya, jumlah populasi akan kembali diperbanyak.


3.4 Pengujian 4 

Pada pengujian ini, digunakan populasi yang berukuran 100. Hasil dari proses iterasi dapat dilihat pada Gambar 12. Masing-masing parameter PID terdapat pada subplot 2, dimana Kp bernilai 1.0309, Ki bernilai 25.9346 dan Kd bernilai 0.0186. Sedangkan subplot 1 menunjukkan nilai fitnes terbaik, yaitu 0.22443 pada generasi ke 64, dengan nilai fitnes ratarata 11.6918. Dapat dilihat bahwa indeks performasi sistem pada pengujian ini merupakan indeks performasi terbaik. 


Pada subplot 3 grafik kawasan nilai fitnes untuk masing-masing individu pada generasi terakhir. Terlihat bahwa nilai fitnes terbanyak terdapat pada kawasan dibawah 10, yaitu lebih dari 70 individu. Selain itu, nilai fitnes masing-masing individu pada generasi ke 64 ditunjukkan oleh subplot 4. Dengan menggunakan hasil Kp, Ki dan Kd diatas, respon yang didapatkan yaitu


 Untuk ukuran populasi 100 seperti pada Gambar 13, respon sistem yang dihasilkan juga tidak memiliki overshot, tidak memiliki peak time, settling time 0.345 detik, dan rise time 10- 90% sebesar 0.10977 detik. Pada pengujian terakhir ini, selain indeks performasi yang semakin baik, respon sistemnya juga merupakan yang terbaik dari keempat pengujian dengan Algoritma Genetika.


Berdasarkan pada Gambar 14, hasil respon menunjukkan bahwa metode Algoritma Genetika dan jaringan syaraf tiruan telah dapat digunakan untuk menentukan parameter Kp, Ki, dan Kd pada pengendali PID dengan sangat baik. Hal ini memberikan pilihan lain bagi kita dalam mengoptimalkan besarnya ketiga parameter tersebut, terutama untuk sistem dengan orde tinggi. Karena pada sistem orde tinggi, jika menggunakan metode ZieglerNichols, kita akan menemui kesulitan dalam menentukan Ku dan Ki awal untuk menghasilkan respon sistem yang berisolasi dengan magnitude tetap. Hal ini dapat menghabiskan waktu yang banyak, tidak demikian jika kita menggunakan metode optimasi Algoritma Genetika. Jika dilihat pada Gambar 14 maka parameter pengendali yang didapatkan pada pengujian 4 dengan jumlah populasi 100 didapatkan hasil yang lebih baik dibandingkan metode Ziegler-Nichols. Untuk settling time didapatkan 0.345 detik dibandingkan metode Ziegler-Nichols sebesar 0.458 detik. Rise time 10-90% sebesar 0.10977 detik, ini lebih baik dibandingkan dengan metode Ziegler-Nichols sebesar 0.11096 detik. Hasil respon dapat diperbaiki dengan menambah jumlah populasi.


Kesimpulan[Kembali]

Pada paper ini penalaan parameter pengendali PID telah dapat dilakukan dengan metode lain selain Ziegler-Nichols yaitu dengan metode Jaringan Syaraf Tiruan yang dikombinasikan dengan Algoritma Genetika. Jaringan Syaraf Tiruan dapat digunakan untuk menentukan peluang mutasi dan peluang crossover pada metode Algoritma Genetika. Berdasarkan hasil pengujian didapatkan hasil terbaik ditunjukkan pada pengujian 4 dengan ukuran populasi 100, dimana settling time pada waktu 0.345 detik dan rise time yang dicapai yaitu 0.10977 detik. Hal ini sedikit lebih baik dibandingkan dengan metode Ziegler-Nichols yakni settling time didapatkan 0.458 detik. Rise time sebesar 0.11096 detik. Penelitian yang akan dilakukan pada masa yang akan datang yaitu pemanfaatan metode ini pada beberapa aplikasi.


Daftar Pustaka[Kembali]

  1. García-Martínez, C., Rodriguez, F. J., & Lozano, M. (2018). Genetic algorithms. In Handbook of Heuristics. https://doi.org/10.1007/978-3-319- 07124-4_28 
  2. Goldberg, Y. (2016). A primer on neural network models for natural language processing. Journal of Artificial Intelligence Research. https://doi.org/10.1613/jair.4992 
  3. Hecht-Nielsen, R. (1988). Theory of the backpropagation neural network. Neural Networks. https://doi.org/10.1016/0893- 6080(88)90469-8 
  4. Heryanto, M. A., Suprijono, H., Suprapto, B. Y., & Kusumoputro, B. (2017). Attitude and altitude control of a quadcopter using neural network based direct inverse control scheme. Advanced Science Letters. https://doi.org/10.1166/asl.2017.8328 
  5. K. Ogata. (2002). Modern Control Engineering. Control Engineering. https://doi.org/10.1109/TAC.1972.110 0013 
  6. Kalash, M., Rochan, M., Mohammed, N., Bruce, N. D. B., Wang, Y., & Iqbal, F. (2018). Malware Classification with Deep Convolutional Neural Networks. In 2018 9th IFIP International Conference on New Technologies, Mobility and Security, NTMS 2018 - Proceedings. https://doi.org/10.1109/NTMS.2018.83 28749 
  7. Rojas, R., & Rojas, R. (2011). The Backpropagation Algorithm. In Neural Networks. https://doi.org/10.1007/978- 3-642-61068-4_7 
  8. Sait, S. M., & Youssef, H. (2000). Iterative computer algorithms with applications in engineering: solving combinatorial optimization problems. the IEEE Computer Society. Los Alamitos. 
  9. Suprapto, B. Y., Heryanto, M. A., Suprijono, H., & Kusumoputro, B. (2017). Altitude Control of Heavy-Lift Hexacopter using Direct Inverse Control Based on Elman Recurrent Neural Network. In Proceedings of the 8th International Conference on Computer Modeling and Simulation - ICCMS ’17 (pp. 135–140). https://doi.org/10.1145/3036331.3036 354 
  10. Suprapto, B. Y., & Sariman, D. (2012). Metode Algoritma Genetika dengan Sistem Fuzzy Logic untuk Penentuan Parameter Pengendali PID. Jurnal Rekayasa Elektrika. https://doi.org/10.17529/jre.v10i1.147 
  11. Thomas, N., & Poongodi, D. P. (2009). Position control of DC motor using genetic algorithm based PID controller. In Proceedings of the World Congress on Engineering (Vol. 2, pp. 1–3)

Metode Ziegler-Nichols[Kembali]

Metode Ziegler-Nichols

Ziegler-Nichols pertama kali memperkenalkan metodenya pada tahun 1942. Metode ini memiliki dua cara, metode osilasi dan kurva reaksi. Kedua metode ditujukan untuk menghasilkan respon sistem dengan lonjakan maksimum sebesar 25%. Gambar 11 memperlihatkan kurva dengan lonjakan 25%.
 

Gambar 11 Kurva respons tangga satuan yang memperlihatkan 25 % lonjakan maksimum

Metode Kurva Reaksi

Metode ini didasarkan terhadap reaksi sistem untaian terbuka. Plant sebagai untaian terbuka dikenai sinyal fungsi tangga satuan (gambar 12). Kalau plant minimal tidak mengandung unsur integrator ataupun pole-pole kompleks, reaksi sistem akan berbentuk S. Gambar 13 menunjukkan kurva berbentuk S tersebut. Kelemahan metode ini terletak pada ketidakmampuannya untuk plant integrator maupun plantt yang memiliki pole kompleks.
 
Gambar 12 Respon tangga satuan sistem
 
Gambar 13 Kurva Respons berbentuk S.

Kurva berbentuk-s mempunyai dua konstanta, waktu mati (dead time) L dan waktu tunda T. Dari gambar 13 terlihat bahwa kurva reaksi berubah naik, setelah selang waktu L. Sedangkan waktu tunda menggambarkan perubahan kurva setelah mencapai 66% dari keadaan mantapnya. Pada kurva dibuat suatu garis yang bersinggungan dengan garis kurva. Garis singgung itu akan memotong dengan sumbu absis dan garis maksimum. Perpotongan garis singgung dengan sumbu absis merupakan ukuran waktu mati, dan perpotongan dengan garis maksimum merupakan waktu tunda yang diukur dari titik waktu L.

Penalaan parameter PID didasarkan perolehan kedua konstanta itu. Zeigler dan Nichols melakukan eksperimen dan menyarankan parameter penyetelan nilai Kp, Ti, dan Td dengan didasarkan pada kedua parameter tersebut. Tabel 1 merupakan rumusan penalaan parameter PID berdasarkan cara kurva reaksi.

Tabel 1
Penalaan paramater PID dengan metode kurva reaksi
 
Tipe Kontroler
Kp
Ti
Td
P
T/L
~
0
PI
0,9 T/L
L/0.3
0
PID
1,2 T/L
2L
0,5L
 

Metode Osilasi

Metode ini didasarkan pada reaksi sistem untaian tertutup. Plant disusun serial dengan kontroller PID. Semula parameter parameter integrator disetel tak berhingga dan parameter diferensial disetel nol (Ti = ~ ;Td = 0). Parameter proporsional kemudian dinaikkan bertahap. Mulai dari nol sampai mencapai harga yang mengakibatkan reaksi sistem berosilasi. Reaksi sistem harus berosilasi dengan magnitud tetap(Sustain oscillation) (Guterus, 1994, 9-9). Gambar 14 menunjukkan rangkaian untaian tertutup pada cara osilasi.
Gambar 14 Sistem untaian tertutup dengan alat kontrol proporsional

Nilai penguatan proportional pada saat sistem mencapai kondisi sustain oscillation disebut ultimate gain Ku. Periode dari sustained oscillation disebut ultimate period Tu (Perdikaris, 1991, 433). Gambar 15 menggambarkan kurva reaksi untaian terttutup ketika berosilasi.

Gambar 15 Kurva respon sustain oscillation

Penalaan parameter PID didasarkan terhadap kedua konstanta hasil eksperimen, Ku dan Pu. Ziegler dan Nichols menyarankan penyetelan nilai parameter Kp, Ti, dan Td berdasarkan rumus yang diperlihatkan pada Tabel 2.

Tabel 2
Penalaan paramater PID dengan metode osilasi
 
Tipe Kontroler
Kp
Ti
Td
P
0,5.Ku    
PI
0,45.Ku 1/2 Pu  
PID
0,6.Ku 0,5 Pu 0,125 Pu
 

Metode Quarter - decay

Karena tidak semua proses dapat mentolerir keadaan osilasi dengan amplituda tetap, Cohen-coon berupaya memperbaiki metode osilasi dengan menggunakan metode quarter amplitude decay. Tanggapan untaian tertutup sistem, pada metode ini, dibuat sehingga respon berbentuk quarter amplitude decay (Guterus, 1994, 9-13). Quarter amplitude decay didefinisikan sebagai respon transien yang amplitudanya dalam periode pertama memiliki perbandingan sebesar seperempat (1/4) (Perdikaris, 1991, 434).
Gambar 16 Kurva respon quarter amplitude decay

Kontroler proportional Kp ditala hingga diperoleh tanggapan quarter amplitude decay, periode pada saat tanggapan ini disebut Tp dan parameter Ti dan Td dihitung dari hubungan (Perdikaris, 434, 1990). Sedangkan penalaan parameter kontroler PID adalah sama dengan yang digunakan pada metode Ziegler-Nichols (lihat tabel 1 - untuk metode kurva reaksi dan tabel 2 untuk metode osilasi).

Mencari nilai Kp, Ki, dan Kd Menggunakan Metode Ziegler-Nichols I[Kembali]

% Define your system transfer function (replace with your own)
numerator = [1.2];    % coefficients of the numerator
denominator = [0.00077 0.0005565 1.441225];  % coefficients of the denominator
transferFunction = tf(numerator, denominator);

% Open-loop test parameters
time = 0:0.1:10;  % Adjust the time vector as needed
stepAmplitude = 1;  % Adjust the step input amplitude as needed

% Simulate open-loop response
openLoopResponse = step(transferFunction * stepAmplitude, time);

% Plot the open-loop response
plot(time, openLoopResponse);
xlabel('Time');
ylabel('System Output');
title('Open-Loop Step Response');

% Analyze data to find Ku and Tu
% You can manually analyze the plot or use automated methods.

% Example of manual analysis:
[~, idx_peak] = max(openLoopResponse);
Ku = stepAmplitude / openLoopResponse(idx_peak);  % Ultimate gain
Tu = time(idx_peak);  % Ultimate period

disp(['Ultimate Gain (Ku): ',num2str(Ku)]);
disp(['Ultimate Period (Tu): ',num2str(Tu)]);

% Ziegler-Nichols tuning parameters
Kp = 0.6 * Ku;
Ki = 2 * Kp / Tu;
Kd = Kp * Tu / 8;

% Create PID controller
pidController = pid(Kp, Ki, Kd);

disp(Kp)
disp(Ki)
disp(Kd)

% Simulate the system with the PID controller
sys = feedback(pidController * transferFunction, 0.001);
step(sys);  % Replace with appropriate system response function

ziegler_ku_pu
Ultimate Gain (Ku): 0.67523
Ultimate Period (Tu): 0.5
  kp  0.4051

  ki   1.6206

  kd   0.0253

Transfer Function[Kembali]







Video Percobaan[Kembali]

a. Video Simulasi Optimtool GA



b. Video Simulasi Simulink


c. Video Teori GA



Link Download[Kembali]
Download HTML disini
Download Koding MATLAB disini
Download Jurnal disini
Donwload Video Simulasi Optimtool GA disini
Donwload Video Simulasi Simulink disini
Donwload Video Teori GA disini


Tidak ada komentar:

Posting Komentar