Anda di halaman 1dari 12

PENGENDALI MOTOR

DENGAN METODE
TUNING PID ZIEGLER
4
4.1 Tujuan Praktikum
NICHOLS
1. Mahasiswa mampu mengontrol kestabilan respon motor pada mobile robot
menggunakan metode Tuning PID Ziegler Nichols.
2. Mahasiswa mampu menetapkan parameter PID dengan metode Tuning
Ziegler Nichols.

4.2 Landasan Teori


4.2.1 Metode Tuning PID Ziegler Nichols
Metode ini memiliki 2 tipe, yaitu tipe 1 (open loop) dan tipe 2 (closed
loop).
a. Ziegler-Nichols tipe 1 (open loop)
Ziegler-Nichols open loop. Sistem diberi input step sehingga respon
open loop terbentuk.

Gambar 4.1 Sistem Diberi Input Step (Sumber : slideshare.net)

Kemudian dari respon open loop, diperoleh parameter-paramter ZN tipe 1


(L dan T). Proses desain menentukan parameter L dan T ditunjukan pada
Gambar 4.2.

Buku Petunjuk Praktikum


30
Teknik Robotika Agroindustri
Gambar 4.2 Proses Desain Penentuan Parameter L dan T

(Sumber : Bachri, 2004)

Kemudian ketika parameter L dan T diperoleh, nilai-nilai Kp, Ti, dan Td


bisa dicari dengan menggunakan rumus PID untuk metode ZN tipe 1. Tabel 4.1
menunjukan tabel parameter PID untuk ZN tipe 1.

Tabel 4.1 Parameter PID untuk ZN Tipe 1


Type Of
Kp Ti Td
Controller
P T/L ∞ 0
PI 0.9T/L L/0.3 0
PID 1.2T/L 2L 0.5l

b. Ziegler-Nichols tipe 2 (closed loop)


Dalam metode ZN tipe 2, menggunakan sistem closed loop sebagai
feedback respon. Pada metode ini yang digunakan Kp saja. Sistem dibuat hingga
berosilasi terus menerus dengan mengatur besarnya nilai Kp.

Gambar 4.3 Sistem closed loop dengan Menggunakan Kp


(Sumber : slideshare.net)

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 ditunjukkan pada
gambar 4.4.

Buku Petunjuk Praktikum


31
Teknik Robotika Agroindustri
Gambar 4.4 Proses Mendesain Menentukan Parameter Pcr

(Sumber : slideshare.net)

Setelah mendapatka nilai parameter Kcr dan Pcr, nilai-nilai Kp, Ti, dan Td
dapat dihitung dengan rumus mencari parameter PID untuk ZN tipe 2. Tabel 4.2
menunjukan tabel parameter PID untuk ZN tipe 2. (Fauziansyah, 2015)
Tabel 4.2 Parameter PID Untuk ZN Tipe 2
Type Of
Kp Ti Td
Controller
P 0.5Kcr ∞ 0
PI 0.45Kcr (1/1.2)Pcr 0
PID 0.6Kcr 0.5Pcr 0.125Pcr

Dari penelitian (Wardatul, 2019), proses tuning adalah menentukan


parameter PID (proporsional, integral dan derivatif) dengan melakukan beberapa
percobaan dengan parameter proportional yang berbeda, setelah dari semua
parameter ketemu hasil responnya maka selanjutnya menentukan nilai parameter
proportional yang menghasilkan osilasi yang paling baik.

Chart Title
250
200
150
100
50
0
21

31

46

56
61

71
76

86
91
1
6
11
16

26

36
41

51

66

81

96
101
106
111

-50

Kp 2.9 Target 100

Gambar 4.5 Respon Parameter Kontrol Proporsional 2.9

Buku Petunjuk Praktikum


32
Teknik Robotika Agroindustri
Chart Title
300

200

100

0
1
6

16
21

31
36

46
51

66
71

86
91
96
101
106
111
116
121
11

26

41

56
61

76
81
Kp 3.1 Target 100

Gambar 4.6 Respon Parameter Kontrol Proporsional 3.1

Chart Title
150

100

50

0
16
21

31
36

61
66

81

91
1
6
11

26

41
46
51
56

71
76

86

96
101
106
111
116
-50
Kp 3.3 Target 100

Gambar 4.7 Respon Parameter Kontrol Proporsional 3.3

Menggunakan metode Ziegler Nichols 2 respon motor paling baik adalah


saat osilasi yang bagus. Pada gambar 4.5, gambar 4.6 dan gambar 4.7 adalah
grafik respon kontrol proporsional terhadap kecepatan motor dc dengan
parameter kontrol proportional 2.9, 3.1 dan 3.3 diantara parameter tersebut yang
osilasinya paling baik adalah gambar 4.6 dengan parameter 3.1. Maka dari
itu parameter proportional dijadikan sebagai nilai Kcr. Setelah nilai Kcr
diketahui, selanjutnya adalah menghitung nilai Integral dan Derivatif
menggunakan rumus PID Ziegler Nichols 2 yaitu :

Buku Petunjuk Praktikum


33
Teknik Robotika Agroindustri
4.3 Alat-alat dan Komponen
1. Robot Beroda
2. Arduino Mega 2560
4.4 Prosedur Percobaan
1. Menyiapkan alat dan bahan
2. Membuat program arduino
3. Meng-upload program arduino pada board
4. Mengambil data percobaan
4.5 Listing Program
4.5.1 Program Robot Beroda
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 20, 4);
#include <PID_v1.h>
#include <SoftwareSerial.h>

#define PIN_INPUT 3
#define PIN_OUTPUT 0

unsigned long delayStart = 0;


bool delayRunning = false; bool ledOn = false;
unsigned long DELAY_TIME = 30000; // 2 M

double Setpoint, Input, Output;


double Kp = 0, Ki = 0, Kd = 0;
PID myPID(&Input, &Output, &Setpoint, Kp, Ki, Kd,
DIRECT);

//===========rotary========//
long last = 0;
int stat = 0;
int stat2;
int kunci = 0;
int stat3 = 0;
int stat4;
int stat5 = 0;
int stat6;
int stat7 = 0;
int stat8;
int contar1 = 0;
int contar2 = 0;
int contar3 = 0;
int contar4 = 0;
int nPalas = 8; // the number of blades of the
propeller
int milisegundos = 500; // the time it takes each

Buku Petunjuk Praktikum


34
Teknik Robotika Agroindustri
reading
int kalibrasi1, kalibrasi2, kalibrasi3, kalibrasi4;

void loop()
{
maju (100, 100);
//sisir_kanan();
//Buzzer();
Rotary();
//Suhu();

Input = kalibrasi1;
myPID.Compute();

maju(Output, Output);
Serial.println(Output);
}

void Rotary () {
maju(100, 100);
stat = digitalRead(19);
if (stat2 != stat) { //counts when the state change,
thats from (dark to light) or
//from (light to dark), remmember that IR light is
invisible for us.
contar1++;
stat2 = stat;
}
{
stat3 = digitalRead(18);
if (stat4 != stat3) { //counts when the state
change, thats from (dark to light) or
//from (light to dark), remmember that IR light is
invisible for us.
contar2++;
stat4 = stat3;
}
{ stat5 = digitalRead(2);
if (stat6 != stat5) { //counts when the state
change, thats from (dark to light) or
//from (light to dark), remmember that IR light is
invisible for us.
contar3++;
stat6 = stat5;
}
{ stat7 = digitalRead(3);
if (stat8 != stat7) { //counts when the
state change, thats from (dark to light) or
//from (light to dark), remmember that IR light
is invisible for us.

Buku Petunjuk Praktikum


35
Teknik Robotika Agroindustri
contar4++;
stat8 = stat7;
}
}

if (millis() - last >= milisegundos) {


double rpm1 = ((double)contar1 / nPalas) /
2.0 * 60000.0 / (milisegundos);
double rpm2 = ((double)contar2 / nPalas) /
2.0 * 60000.0 / (milisegundos);
double rpm3 = ((double)contar3 / nPalas) /
2.0 * 60000.0 / (milisegundos);
double rpm4 = ((double)contar4 / nPalas) /
2.0 * 60000.0 / (milisegundos);
contar1 = 0; contar2 = 0;
contar3 = 0; contar4 = 0;
last = millis();
kalibrasi1 = (rpm1 - 8.756) / 1.072; //rumus
kalibrasi
kalibrasi2 = (rpm2 - 8.756) / 1.072; //rumus
kalibrasi
kalibrasi3 = (rpm3 - 8.756) / 1.072; //rumus
kalibrasi
kalibrasi4 = (rpm4 - 8.756) / 1.072; //rumus
kalibrasi
Serial.print(" RPM1 ");
Serial.print(kalibrasi1);
Serial.print(" RPM2 ");
Serial.print(kalibrasi2);
Serial.print(" RPM3 ");
Serial.print(kalibrasi3);
Serial.print(" RPM4 ");
Serial.println(kalibrasi4);
}
}
}
}

Buku Petunjuk Praktikum


36
Teknik Robotika Agroindustri
4.6 Data Percobaan
4.6.1 Respon Kontrol Untuk Parameter Kp sebesar 3.1
Tabel 4.3 Data Hasil Percobaan Untuk Parameter Kp Sebesar 3.1

Penguatan Kp Set Point RPM Jumlah Data


0 6

3,1 100 120 14

255 86

Grafik Respon Untuk Penguatan Kp=3.1

Grafik Respon Untuk Penguatan Kp 3,1


300

250

200

150

100

50

0
1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96 101 106

Nilai RPM Set Point

Gambar 4.6 Grafik Respon Untuk Penguatan Kp=3.1

Buku Petunjuk Praktikum


37
Teknik Robotika Agroindustri
4.6.2 Respon Kontrol untuk Parameter Kp = 1.86, Ki = 0.744, Kd = 1.1625
Tabel 4.4 Data Hasil Percobaan Untuk Parameter Kp = 1.86, Ki = 0.744, Kd = 1.1625
Parameter
Set Point RPM Jumlah Data
Kp Ki Kd
0 16
59 14
60 10
202 13
1,86 0,744 1,1625 100
207 16
210 12
217 12
225 12

Grafik Respon Untuk Penguatan Kp = 1.86, Ki = 0.744, Kd = 1.1625

Grafik Respon Untuk Penguatan Kp = 1.86, Ki = 0.744, Kd =


1.1625
250

200

150

100

50

0
1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 65 69 73 77 81 85 89 93 97 101105

RPM Set Point

Gambar 4.7 Grafik Respon Untuk Penguatan Kp = 1.86, Ki = 0.744, Kd = 1.1625

Buku Petunjuk Praktikum


38 Teknik Robotika Agroindustri
4.7 Analisa Data dan Pembahasan

Buku Petunjuk Praktikum


39 Teknik Robotika Agroindustri
Buku Petunjuk Praktikum
40 Teknik Robotika Agroindustri
4.8 Kesimpulan

4.9 Lembar Evaluasi


No Kegiatan Keterangan Nilai TTD/tanggal
1 Pre-Test

2 Pengambilan
Data
3 Asistensi

4 Post-Test

Buku Petunjuk Praktikum


41 Teknik Robotika Agroindustri

Anda mungkin juga menyukai