Praktikum Sistem Kontrol Digital
Eksperimen 1 : Simulasi Sistem Waktu Diskrit
Tujuan
1. Memahami perbedaan kontrol kontinu dan kontrol digital yang bersifat sistem diskrit.
2. Mensimulasikan waktu diskrit pada kontrol digital dengan Xcos dan Scilab. 3. Menyelesaikan persamaan differensial dengan pendekatan pada domain waktu. 4. Penyederhanaan sistem dengan penyelesaian persamaan sistem menggunakan
transformasi Z, transformasi laplace dan inversinya.
Dasar Teori
Sinyal
Sinyal berisi informasi mengenai keadaan tingkah laku dari sebuah sistem secara fisik. Terdapat 2 tipe dasar sinyal, yaitu:
1. Sinyal waktu kontinyu (continous-time signal). 2. Sinyal waktu diskrit (discrete-time signal).
Sinyal waktu kontinyu
Suatu sinyal x(t) dikatakan sebagai sinyal waktu-kontinyu atau sinyal analog ketika memiliki nilai pada setiap saat seperti ditunjukkan pada Gambar 1.
Sinyal waktu diskrit
Suatu sinyal x(t) dikatakan sebagai sinyal waktu-diskrit ketika memiliki nilai pada rentang waktu tertentu seperti ditunjukkan pada Gambar 2.
Perbedaan sinyal Analog vs Digital terlihat pada Gambar 3.
Gambar 3. Perbedaan Sinyal Analog dan Digital
Macam ragam sinyal uji
Untuk memudahkan analisis suatu respon, digunakan beberapa sinyal uji dengan fungsi waktu sederhana. Pemilihan sinyal uji harus mendekati bentuk input sistem pada kondisi kerjanya. Grafik dari sinyal pengujian terlihat pada Tabel 1. Sinyal-sinyal pengujian :
1. Fungsi Step : berguna untuk menguji respon terhadap ganguan yang muncul tiba-tiba, dan juga melihat kemampuan sistem kontrol dalam memposisikan respon.
2. Fungsi Ramp : fungsi berubah bertahap terhadap waktu, berguna untuk melihat kemampuan sistem kontrol dalam melacak target yang bergerak dengan kecepatan konstan.
3. Fungsi Impuls : berguna untuk menguji respon terhadap gangguan sesaat yang muncul tiba-tiba dan untuk menguji sistem yang responnya berubah dalam selang waktu yang sangat singkat.
4. Fungsi Parabolic: berguna untuk kebutuhan akan akselerasi dan pengujian kemampuan sistem kontrol untuk melacak obyek yang bergerak dengan kecepatan berubah-ubah.
5. Fungsi Sinusoidal : berguna untuk menguji respon sistem yang menerima input berupa sinyal sinusoidal.
Tabel 1. Grafik Fungsi Sinyal-Sinyal Pengujian
Sistem Waktu Diskrit pada Kontrol
Representasi sistem
Model matematis yang menggambarkan hubungan input-output dan kondisi awal sistem (difference equation), hubungan input-output ini sering diubah menjadi bentuk lain melalui suatu transformasi, misalnya dengan transformasi Z. Sistem kontrol umpan balik waktu kontinyu biasanya diperlihatkan pada Gambar 4. Umumnya semua kontroler pada sistem kontinyu dibangun menggunakan elektronika analog.
Plant adalah sistem yang dikontrol. Kontroler adalah perangkat yang
bertugas untuk mengatur, mengendalikan dan memerintahkan agar sistem memiliki performans yang dikehendaki. Kontroler analog, yang ditandai kotak garis putus putus, dapat diganti dengan kontroler digital, seperti ditunjukkan Gambar 5.
Gambar 4. Diagram Blok Sistem Kontrol Digital Waktu Kontinyu (Sumber : http://ermanu.staff.umm.ac.id/ )
Kontroler digital ini akan melakukan tugas yang sama seperti kontroler kontinyu. Perbedaan mendasar antara kedua kontroler adalah bahwa sistem kontrol digital
bekerja dalam bentuk sinyal diskrit ( atau sinyal tercuplik) bukan sinyal kontinyu.
Gambar 5. Diagram Blok Sistem Kontrol Digital Waktu diskrit
(Sumber : http://ermanu.staff.umm.ac.id/ )
Pemodelan sistem kontrol adalah pengembangan deskripsi matematis dari sistem dinamis yang akan di kontrol. persamaan diferensial yang menggambarkan sifat elektromekanis dari motor DC dengan beban inersia. Tujuan utama adalah menunjukkan kepada Anda bagaimana menggunakan perintah dalam Control System Toolbox untuk membangun model linier didasarkan pada persamaan. Beberapa metode yang dapat digunakan untuk diskritisasi dan interpolasi tersaji dalam Tabel 2.
Tabel 2. Metode Diskritisasi Metode Diskritisasi Kegunaan :
Zero-order hold (ZOH)
Diskritisasi eksak dalam kawasan waktu untuk input bentuk tangga
First-order hold (FOH)
Diskritisasi dalam kawasan waktu untuk input ramp.
Impulse-invariant mapping
Diskritisasi kawasan waktu untuk input deretan impuls.
Tidak perlu mencocokkan fasa dalam kawasan frekuensi.
Metode Diskritisasi Kegunaan :
Tustin approximation
Mencocokan kawasan frekuensi antara model waktu kontinyu dan waktu diskrit
Model memiliki dinamika mendekati frekuensi Nyquist.
Zero-pole matching equivalents
Model SISO, dan mencocokan kawasan frekuensi antara model waktu kontinyu dan waktu diskrit.
Eksperimen
Sebuah aktuator pada sistem kontrol adalah Motor DC, yang menghasilkan gerakan rotor dan sepasang roda / drum yang terhubung dengan kabel menghasilkan gerakan translasi. Diagram rangkaian pengaturan Motor DC ditunjukkan pada Gambar 6.
Gambar 6. Diagram Rangkaian Pengaturan Motor DC (sumber: http:// http://ctms.engin.umich.edu/CTMS)
Diasumsikan inputnya ada voltage, yang masuk pada rangkaian armatur, dan outputnya adalah kecepatan putar d(theta)/dt. Rotor dan shaft diasumsikan bernilai rigid, nilai torsi yang dihasilkan proposional dengan kecepatan anguarnya.
Momen Inersia Rotor (J) = 3.2284E-6 kgm2
/s2
Damping Rasio sistem mekanik (b) = 3.5077E-6 Nms Electromotive Force Constant (K=Ke) = 0.0274 V/rad/sec motor torque constant (Kt) = 0.0274 Nm/Amp
electric resistance (R) = 4 ohm electric inductance (L) = 2.75E-6 H input (V)
output (theta) --> kecepatan rotasi motor Rotor diasumsikan bernilai rigid
Eksperimen 1 : Polinomial
Derajat polinomial dalam suatu fungsi dinotasikan sebagai berikut : P(s) = a0+ a1x + a2x2 + ... + anxn
Command pada Scilab untuk polinomial
%s = variabel scilab untuk membentuk polinomial poly = membuat polinomial dr akar atau koefisien coeff = untuk mengekstrak koefisien dari polinomial horner = untuk mengevaluasi polinomial
derivat = menghitung derivasi dari polinomial roots = menghitung akar dari polinomial +, -, * = operasi standar pada polinomial pdiv = polinomial division
/ = melakukan pembagian 2 polinomial inv atau invr = inversi matriks
A.1 Representasi pada scilab, polinomial dengan "akar/root" 3 dan 2
P1 = poly([3 2], 'x') P1 = poly([3 2], 'x', 'r') P1 = ...
A.1.1 Representasi pada scilab, polinomial dengan koefisien
// misal 6 - 5x + x^2 P2 = poly([6 -5 1], 'x', 'c') P2 = ... // MATLAB style pcoeff = [6 -5 1]; P3 = poly(pcoeff($:-1:1), 's', 'c'); pcoeff = coeff(P3);
A.2 Akar polinomial
Fungsi roots menghitung akar-akar dari polinomial // akar dari polinomial P1
R = roots(P1) R = ...
A.3 Penambahan 2 polynomial
P3 = P1 + P2 P3 = ...
A.4 Perkalian 2 Polynomial
P4 = P1 * P2 P4 = ...
A.5 Pembagian 2 Polynomial
x = poly(0, 'x');
p1 = (1 + x^2) * (1 - x); p2 = 1 - x;
prat = p1/p2; typeof(prat) prat.num prat.den P5 = P1 / P2 P5 = ... typeof(P5) ans = ...
A.6 Boolean operation
P1 == P2 ans = ...
A.7 Menampilkan koefisien dari polinomial
coeff(P1) ans = ...
A.8 Derivatif dari polinomial (turunan)
derivat(P1) ans = ...
A.9 Karakteristik Polinomial
C = companion(P1) C = ...
A.10 Akar dari persamaan karakteristik adalan nilai eigenvalue dari matriks companion
roots(P1) ans = ... spec(c) ans = ...
A.11 Mengevaluasi nilai polinomial
res = horner(P3,5.0); res = ...
A.12 Cara 2 : Membentuk polinomial dengan mendefinisikan variabel
x = poly(0,'x') x = ...
P6 = 6 - 5 * x + x^2 roots(P6)
ans = ...
A.12 Membentuk polinomial dari matriks companion
c = [5 -6;1 0]; p7 = poly(c, 'x') p7 = ...
A.13 Pendalaman polinomial
x = poly(0, 'x')
P = (1+2*x+3*x^2)/(4+5*x+6*x^2) P = ...
A.14 Inversi Matriks Polinomial
A.15 Menampilkan numerator dan denumerator
numer(P) ans = ... denom(P) ans = ...
A.16 Derivatif Polinomial
derivat(P) ans = ...
A.17 Menyederhanakan bentuk polinomial
[n, d] = simp((x+1)*(x+2),(x+1)*(x-2),(x+1)*(x-2)) d = ...
n = ...
TUGAS
Carilah nilai akar, koefisien, karakteristik, derivatif dari polinomial berikut ini :
P(x) = x
3- 2x – 5
Eksperimen 2 : Transformasi Laplace (Domain Frekuensi S)
s = %s;
K = 1, T = 1;
SimpleSys = syslin(’c’, K/(1 + T * s)); t = 0:0.01:15;
y1 = csim('step', t, SimpleSys); //step respons scf(1); clf(1); plot(t, y1); u2 = sin(t); y2 = csim(u2,t,SimpleSys); scf(2); clf(2); plot(t,[u2; y2]'); u3 = sin(5*t); y3 = csim(u3, t, SimpleSys); scf(3); clf(3);
plot(t, [u3; y3]'); P = s^2 + 9*s + 9;
OverdampedSystem = syslin('c', 9/P);
// menciptakan LTI system : sistem yang merepresentasikan // hubungan antara input dan output secara linear
s = poly(0, 's'); num = 36;
den = 36 + 3*s + s^2;
TF = syslin('c', num, den); typeof(TF);
t = linspace(0,5,500); // Mencari impuls respons
impul_respons = csim('imp', t, TF); scf(1); clf(1);
plot(t, impul_respons); xgrid(); xtitle('Impulse Res', 'time', 'response');
// Mencari Step Respons
step_respons = csim('step', t, TF); scf(2); clf(2);
plot(t, step_respons); xgrid(); xtitle('Step Respons', 'time', 'response');
// Mencari Ramp Respons
ramp_respons = csim(t, t, TF); scf(3); clf(3);
plot(t, ramp_respons); xgrid(); xtitle('Ramp Respons', 'time', 'response');
Eksperimen 3 : Pemodelan dengan Scilab
Perhatikan Gambar 6 kemudian variasikan untuk nilai: J = 0.01 kgm2 b = 0.1 Nms Kt = 0.01 Nm/Amp Ke = 0.01 V/rad/sec R = 1 ohm L = 0.5 H
Analisis hasilnya berdasarkan grafik yang dihasilkan. Persyaratan desain yang dibutuhkan adalah:
Settling time less than 2 seconds.
Overshoot less than 5%.
Steady-state error less than 1%.
Eksperimen 4 : Pemodelan dengan XCos
Bukalah XCos kemudian buatlah blok seperti Gambar 7. Masukkan nilai pada set context seperti pada Eksperimen 6. Blok (a) adalah superblok yang ada pada Blok (b). Pada step disikan step time = 0, simulation >> setup >> final integration time 3, dan pada scope refresh period diisi 3.
(a)
(b)
Gambar 7. Diagram Blok Pengaturan Kecepatan Motor DC
Analisis
1. Tuliskan dan jelaskan persamaan sistem pengaturan kecepatan Motor DC 2. Jelaskan apa pengaruh masing-masing parameter terhadap performa sistem?
Tugas
1. Apakah yang dimaksud dengan Rise Time, Settling Time, Steady State, Peak Response?
2. Buatlah DC Motor Modelling menggunakan XCOS. Jelaskan tiap-tiap langkah pembuatan model tersebut?