Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi...

10
1/10 MATEMATIKA DALAM TEKNIK KONTROL Oleh: Ahmad Riyad Firdaus Politeknik Batam Polinomial Matlab menyediakan fungsi operasi standar dari polinom, seperti akar polynomial, evaluasi, dan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, seperti pencocokan kurva dan ekspansi fraksi parsial. Fungsi Deskripsi Conv Perkalian polynomial Deconv Pembagian polynomial Poly Polynomial dengan akar-akar tertentu Polyder Turunan polynomial Polyfit Pencocokan kurva polynomial Polyval Evaluasi polynomial Polyvalm Evaluasi matrik polynomial Residue Ekspansi fraksi parsial Roots Mencari akar-akar polynomial 1. Representasi MATLAB Penggambaran polynomial sebagai vector baris yang terdiri atas koefisien-koefisien polinomnya. Sebagai contoh, persamaan berikut: 5 2 ) ( 3 - - = x x x p Kita masukan kedalam MATLAB sebagai berikut: >>P=[1 0 -2 5]; 2. Akar Polinomial Fungsi roots menghitung akar-akar dari polynomial: >>r=roots(p); r= 2.0964 -1.0473+1.1359i -1.0473-1.1359i Yang disempan dalam bentuk vector kolom. Fungsi poly mengembalikan ke koefisien polinomnya: >>p2=poly(r); p2= 1 8.8818e-16 -2 -5 3. Evaluasi polinomial Fungsi polyval mengevaluasi polynomial pada suatu nilai tertentu. Untuk mengevaluasi p pada s=5, maka digunakan: >>polyval(p,5) ans = 110 fungsi ini juga memungkinkan untuk mengevaluasi polynomial dalam bentuk matrik. Dalam kasus 5 2 ) ( 3 - - = x x x p menjadi I X X X p 5 2 ) ( 3 - - = , dimana X adalah matriks square,

Transcript of Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi...

Page 1: Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, ... domain waktu ke domain frekuensi atau variable

1/10

MATEMATIKA DALAM TEKNIK KONTROL

Oleh: Ahmad Riyad Firdaus

Politeknik Batam

Polinomial

Matlab menyediakan fungsi operasi standar dari polinom, seperti akar polynomial, evaluasi,

dan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut,

seperti pencocokan kurva dan ekspansi fraksi parsial.

Fungsi Deskripsi

Conv Perkalian polynomial

Deconv Pembagian polynomial

Poly Polynomial dengan akar-akar tertentu

Polyder Turunan polynomial

Polyfit Pencocokan kurva polynomial

Polyval Evaluasi polynomial

Polyvalm Evaluasi matrik polynomial

Residue Ekspansi fraksi parsial

Roots Mencari akar-akar polynomial

1. Representasi MATLAB

Penggambaran polynomial sebagai vector baris yang terdiri atas koefisien-koefisien

polinomnya. Sebagai contoh, persamaan berikut:

52)( 3 −−= xxxp

Kita masukan kedalam MATLAB sebagai berikut: >>P=[1 0 -2 5];

2. Akar Polinomial

Fungsi roots menghitung akar-akar dari polynomial:

>>r=roots(p);

r=

2.0964

-1.0473+1.1359i

-1.0473-1.1359i

Yang disempan dalam bentuk vector kolom. Fungsi poly mengembalikan ke koefisien

polinomnya: >>p2=poly(r);

p2=

1 8.8818e-16 -2 -5

3. Evaluasi polinomial

Fungsi polyval mengevaluasi polynomial pada suatu nilai tertentu. Untuk mengevaluasi p

pada s=5, maka digunakan: >>polyval(p,5)

ans = 110

fungsi ini juga memungkinkan untuk mengevaluasi polynomial dalam bentuk matrik. Dalam

kasus 52)( 3 −−= xxxp menjadi IXXXp 52)( 3 −−= , dimana X adalah matriks square,

Page 2: Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, ... domain waktu ke domain frekuensi atau variable

2/10

dan I adalah matriks identitas. Misalkan, dibuat matriks square X dan evaluasi polynomial p

pada X: >>X=[2 4 5;-1 0 3;7 1 3];

>>Y=polyval(p,X)

Y=

377 179 439

111 81 136

490 253 639

4. Perkalian dan Pembagian Polinomial

Perkalian polinom dan pembagiannya berhubungan dengan operasi konvolusi dan

dekonvolusi. Fungsi conv dan deconv digunakan untuk menjalankan operasi ini. Misalkan

ada dua buah polynomial, 32)( 2 ++= sssa dan 654)( 2 ++= sssb . Untuk menghitung

hasil kalinya kita gunakan: >>a=[1 2 3]; b=[4 5 6];

>>c=conv(a,b)

c=

4 13 28 27 18

Gunakan dekovolusi untuk membagi a(s) kembali kepada pengalinya: >>[q,r]=deconv(c,a)

q=

4 5 6

r=

0 0 0 0 0

5. Turunan Polinom

Fungsi polyder digunakan untuk menghitung turunan (derivasi) setiap polynomial. Untuk

mendapatkan turunan polynomial 52)( 3 −−= xxxp , maka:

>>p=[1 0 -2 5];

>>q=polyder(p)

q=

3 0 -2

Polyder juga menghitung turunan perkalian atau pembagian dua polynomial. Sebagai contoh,

kita buat dua polynomial a dan b:

>>a=[1 3 5]; b=[2 4 6];

Turunan perkalian a*b dengan fungsi polyder menggunakan satu argument keluaran: >>c=polyder(a,b)

c=

8 30 56 38

Turunan dari pembagian a/b dengan memanggil polider menggunakan dua argument

keluaran: >>[q,d]=polyder(a,b)

q=

-2 -8 -2

d=

4 16 40 48 36

6. Ekspansi Fraksi Parsial

Page 3: Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, ... domain waktu ke domain frekuensi atau variable

3/10

Fungsi residu digunakan untuk mencari rasio ekspasi parsial dari dua polynomial. Sangat

berguna untuk menggambarkan system dalam bentuk fungsi transfer. Untuk polynomial a

dan b, dirumuskan sebagai fungsi transfer berikut ini:

s

n

n kps

r

ps

r

ps

r

sa

sb+

−++

−+

−= K

2

2

1

1

)(

)(

Dimana r adalah vector kolom residu, p adalah lokasi kutub (pole) vector kolom dan k adalah

vector baris. Misalkan diperoleh fungsi transfer berikut ini:

86

84)(

2++

+−=

ss

ssG

Digunakan fungsi residu untuk mencari nilai r, p dan k: >>b=[-4 8]; a=[1 6 8];

>>[r,p,k]=residue(b,a)

r=

-12

8

p=

-4

-2

k=

[]

Untuk mengembalikan ke bentuk aslinya, kita gunakan fungsi yang sama tetapi argument

keluarannya berbeda. >>[b2,a2]=residue(r,p,k)

b2=

-4 8

a2=

1 6 8

Contoh lain:

Diberikan fungsi transfer sebagai berikut:

6116

6352

)(

)()(

23

23

+++

+++==

sss

sss

sA

sBsH

Untuk mencari r, p dan k digunakan cara seperti contoh sebelumnya: >>num=[2 5 3 6];

>>den=[1 6 11 6];

>>[r,p,k]=residue(num,den)

r=

-6.0000

-4.0000

3.0000

p=

-3.0000

-2.0000

-1.0000

k=

2

Hasil di atas memperlihatkan fraksi parsial dari fungsi transfer di atas:

21

3

2

4

3

6

)(

)(+

++

+

−+

+

−=

ssssA

sB

Untuk mengembalikan ke bentuk semua:

Page 4: Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, ... domain waktu ke domain frekuensi atau variable

4/10

>>[num,den]=residue(r,p,k)

num=

2.0000 5.0000 3.0000 6.0000

den=

1.0000 6.0000 11.0000 6.0000

7. Transformasi Laplace

Transformasi laplace digunakan untuk mengubah system fisis atau suatu fungsi dalam

domain waktu ke domain frekuensi atau variable kompleks. Dalam MATLAB, sintaks yang

digunakan transformasi laplace adalah sebagai berikut:

L=Laplace(F)

L=Laplace(F,t)

L=Laplace(F,w,z)

Dekripsi:

• L=Laplace(F)

Adalah transformasi laplace dari symbol scalar F dengan variable default t. Variable

tersebut mengembalikan fungsi ke variable s.

F=F(t) � L=L(s)

Jika F=F(s), fungsi Laplace akan mengembalikan fungsi dalam t ;L=L(t)

Transformasi laplace dalam fungsi matematika nya adalah sebagai berikut:

∫∞

−=

0)()( dtetFsL

st

Dimana t merupakan variable simbolik domain t dalam fungsi F

• L=Laplace(F,t)

Membuat L fungsi dari t sebagai pengganti default s.

∫∞

−=

0)()( dxexFtL

tx

L menghasilkan symbol scalar.

• L=Laplace(F,w,z)

Membuat fungsi L dari z dan F sebagai fungsi w sebagai pengganti variable s dan t

∫∞

−=

0)()( dwewFsL

zw

Contoh-contoh: >>syms t a %inisialisasi variable

>>laplace(t*exp(-a*t))

ans=

1/(s+a)^2

>>syms t a b

>>laplace(exp(-a*t)*cos(b*t))

ans=

(s+a)/((s+a)^2+b^2)

>>pretty(ans)

s+a

Page 5: Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, ... domain waktu ke domain frekuensi atau variable

5/10

-------------

(s+a)2+ b

2

>>syms t

>>f=t^4

>>laplace(f)

ans=

24/s^5

>>syms s

>>g=i/sqrt(s)

>>laplace g

ans=

(pi/t)^(1/2)

>>syms t a x

>>f=exp(-a*t)

>>laplace(f,x)

ans=

1/(x+a)

8. Inverse Transformasi Laplace

Inverse laplace digunakan untuk mengembalikan suatu fungsi dari domain frekuensi atau

variable kompleks ke domain waktu. Dalam MATLAB, sintaks yang digunakan adalah:

F=iLaplace(L)

F=iLaplace(L,t)

F=iLaplace(L,y,x)

Deskripsi:

• F=iLaplace(L)

Merupakan invers transformasi laplace dari symbol scalar F dengan variable default s.

variable tersebut mengembalikan fungsi ke variable t. transformasi laplace dari fungsi s

dan mengembalikan ke fungsi t.

L=L(s) � F=F(t)

Jika L=L(t), iLaplace megembalikan fungsi dalam x:

F=F(x)

Oleh definisi:

∫∞+

∞−

=

jc

jc

st dsesLtF )()(

Dimana c adalah angka real terpilih sehingga singularitas L(s) adalah sebelah kiri sumbu

hayal dari bidang s (variable kompleks)

• F=iLaplace(L,t)

Menghasilkan F fungsi dari y sebagai pengganti default t:

Page 6: Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, ... domain waktu ke domain frekuensi atau variable

6/10

∫∞+

∞−

=

jc

jc

sy dseyLyF )()(

y adalah obyek simbolik (scalar)

• F=iLaplace(L,y,x)

Mengambil F sebagai fungsi dari x dan L fungsi dari y sebagai pengganti variable default

t dan s

∫∞+

∞−

=

jc

jc

xy dyeyLxF )()(

Contoh-contoh: >>syms s a b

>>ilaplace((s+a)/(s+a)^2+b^2)

ans=

Exp(-a*t)*cos(b*t)

>>syms s

>>ilaplace(1/s^2)

ans=

t

>>syms s a

>>ilaplace(1/(s+a)^2)

ans=

exp(-a*t)*t

>>syms t a

>>g=1/(t-a)^2

>>ilaplcae(g)

ans=

x*exp(a*x)

>>syms x u

>>syms a real

>>f=1/(u^2-a^2)

>>simplify(ilaplcae(f,x))

ans=

sinh(x*abs(s))/abs(s)

>>syms s

>>F=(s^2+2*s+2)/((s+1)*(s+2));

>>f=ilaplace(F)

f=

dirac(t)+exp(-t)-2*exp(-2*t)

>>syms s

>>F=(1/((s+1)^2*(s+2)));

>>f=ilaplace(F)

f=

exp(-2*t)+(t-1)*exp(-t)

Page 7: Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, ... domain waktu ke domain frekuensi atau variable

7/10

>>syms s

>>A=((1-s-s^2)/s*(s+1)*(s+2)));

>>b=ilaplcace(A);

b=

½-exp(-t)-1/2*exp(-2*t)

>>syms

>>G=(s^2+9*s+19)/((s+1)*(s+2)*(s+4));

>>g=ilaplcae(G)

g=

11/3*exp(-t)-5/2*exp(-2*t)-1/6*exp(-4*t)

>>syms s

>>F=(2*s+12)/(s^2+2*s+5);

>>f=ilaplace(F)

f=

2*exp(-t)*cos(2*t)+5*exp(-t)*sin(2*t)

9. Konversi Model

Ada 4 bentuk konversi yang banyak digunakan dalam teknik control, yaitu:

A. State space to transfer function (ss2tf)

B. Transfer function to state space (tf2ss)

C. Continuous to discrete (c2d)

D. Discrete to continuous (d2c)

A. State space to transfer function (ss2tf)

State space to transfer function (ss2tf) merupakan sebuah fungsi untuk mengubah model

system dari model ruang keadaan (state space) ke model fungsi alih (transfer function).

Sintaks: [n,d]=ss2tf(A,B,C,D)

Sebagai contoh:

1. Ambil sebuah matriks ruang keadaan dari system

[ ]

=

+

−−−

=

3

2

1

3

2

1

3

2

1

001

005.121

04.25

0

03247.51026.25008.5

100

010

x

x

x

y

u

x

x

x

x

x

x

&

&

&

Dimana matriks:

A=

−−− 03247.51026.25008.5

100

010

B=

− 005.121

04.25

0

C= [ ]001 dan D=0

Maka untuk mengubah matriks pemodelan system dari ruang keadaan (state space) ke fungsi

alih (transfer function) adalah:

Page 8: Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, ... domain waktu ke domain frekuensi atau variable

8/10

>>A=[0 1 0;0 0 1;-5.008 -25.1026 -5.03247]

>>B=[0;25.04;-121.005]

>>C=[1 0 0]

>>D=0;

>>[n,d]=ss2tf(A,B,C,D)

n=

0 0 25.0400 5.0080

d=

1.000 5.0325 25.1026 5.00800

Artinya, fungsi alih dari ruang keadaan (state space) model system tersebut adalah:

008.51026.250325.5

008.504.25

)(

)(23 +++

+=

sss

s

sU

sY

2. Untuk system MIMO (Multiple Input Multiple Output) atau system yang memiliki

masukan dan keluaran lebih dari satu, maka sintaks MATLAB yang digunakan

adalah:

[n,d]=ss2tf(A,B,C,D,iu)

Dengan iu merupakan masukan yang lebih dari satu. Untuk ilustrasi, diberikan contoh

sebagai berikut:

=

+

−−=

2

1

2

1

2

1

2

1

2

1

10

01

10

10

425

10

x

x

y

y

u

u

x

x

x

x

&

&

Matriks:

A=

−− 425

10 B=

10

10 C=

10

01 D=[0 0;0 0]

Maka untuk mengubah matriks pemodelan system dari ruang keadaan (state space) ke fungsi

alih (transfer function) adalah: >>A=[0 1;-25 -4]

>>B=[0 1;0 1]

>>C=[1 0;0 1]

>>D=[0 0;0 0]

>>%Fungsi Alih untuk masukan pertama

>>[n,d]=ss2tf(A,B,C,D,1)

n=

0 1 4

0 0 -25

n=

1 4 25

>>%Fungsi alih untuk masukan ke dua

>>[num,den]=ss2tf(A,B,C,D,2)

num=

Page 9: Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, ... domain waktu ke domain frekuensi atau variable

9/10

0 1.0000 5.0000

0 1.0000 -25.0000

den=

1 4 25

Sehingga fungsi alih untuk masukan pertama adalah:

254

25

)(

)(

254

4

)(

)(

2

1

2

2

1

1

++

−=

++

+=

sssU

sY

ss

s

sU

sY

Sedangkan fungsi alih untuk masukan kedua adalah

254

25

)(

)(

254

5

)(

)(

2

1

2

2

2

1

++

−=

++

+=

ss

s

sU

sY

ss

s

sU

sY

B. Transfer function to state space (tf2ss)

Transfer function to state space (tf2ss) merupakan sebuah fungsi untuk mengubah model

system dari fungsi alih ke model system ruang keadaan (state space).

Sintaks: [A,B,C,D]=tf2ss(n,d)

Sebagai contoh:

Sebuah fungsi alih dari system dengan satu masukan dan dua keluaran dituliskan sebagai

berikut:

14.0

12

32

)(2

2

++

++

+

=ss

ss

s

sH

Sintaks MATLAB nya adalah: >>n=[0 2 3;1 2 1]

>>d=[1 0.4 1]

>>[A,B,C,D]=tf2ss(n,d)

A=

-0.4000 -1.0000

1.0000 0

B=

1

0

C=

2.0000 3.0000

1.6000 0

D=

0

Page 10: Matematika dalam Teknik Kontrol · PDF filedan turunan. Sebagai tambahan, fungsi-fungsi berikut diberikan untuk aplikasi lebih lanjut, ... domain waktu ke domain frekuensi atau variable

10/10

Tugas dan pertanyaan

Sebuah benda dengan massa 10 kg mengalami gaya sebesar F sehingga bergerak dengan

percepatan a, kecepatan v dan mengalami perubahan posisi sebesar x (gaya gesek diabaikan).

1. Tentukan fungsi alih system, jika masukannya F dan keluarannya adalah kecepatan. Buat

model system dalam ruang keadaan (state space) menggunakan MATLAB.

2. Tentukan fungsi alih system, jika masukannya F dan keluarannya adalah perubahan

posisi. Buat model system dalam ruang keadaan (State space) menggunakan MATLAB

Sebuah rangkaian RLC dihubungkan secara seri, seperti gambar di bawah ini:

Dengan masukan adalah tegangan vi dan keluarannya adalah tegangan vo pada kapasitor. Jika

nilai R=1 KOhm, L=1mH dan C=1µF,

1. Tentukan model system dengan menggunakan fungsi alih dari rangkaian listrik RLC

2. Tentukan model system tersebut dalam ruang keadaan (state space) dengan

menggunakan MATLAB

F m

vi vo