You are on page 1of 21

Kho st ng dng MATLAB trong iu khin t ng

KHO ST S N NH CA H THNG
L THUYT:
H thng n nh trng thi h, s n nh trng thi kn nu biu
Nyquist khng bao im (-1+i0) trn mt phng phc.
H thng khng n nh trng thi h, s n nh trng thi kn nu biu
Nyquist bao im (-1+i0)p ln ngc chiu kim ng h (p l s cc GH nm
phi mt phng phc).
T du nhc ca ca s MATLAB, ta nhp:
num = [nhp cc h s ca t s theo chiu gim dn ca s m].
den = [nhp cc h s ca mu s theo chiu gim dn ca s m].
nyquist(num,den)
Bi tp 1:
GH(s) =

k
(vi k =10, t =1)
1st

num = 10;
den = [-1 1];
nyquist(num,den)
Kt qu:

Nyquist Diagrams
5
4
3

Im aginary Ax is

2
1
0
-1

(A)

-2
-3
-4
-5
0

4
Real Ax is

10

Kho st ng dng MATLAB trong iu khin t ng


Nhn xt: hm truyn vng h c 1 cc nm bn phi mt phng phc. Biu Nyquist
khng bao im A (-1+j0).
im 1 k hiu (+) nm trn trc thc m (Real Axis), im 0 nm trn trc o
(Imaginary Axis).
Kt lun: h khng n nh.
* Dng lnh margin tm bin d tr v pha d tr.
T du nhc ca ca s lnh MATLAB ta dng lnh margin:
num = 10;
den = [-1 1];
margin(num,den);
Bode Diagrams
Gm = 0 dB, Pm = 0 (unstable closed loop)
20

Phase (deg); Magnitude (dB)

15
10
5
0
80
60
40
20
0

10

Frequency (rad/sec)

Kt lun:
d tr bin (Gm = 0 dB).
d tr pha (Pm = 0).
Warning: Closed loop is unstable (h vng kn khng n nh).
Bi tp 2:
GH(s) =

(k = 10, t = 1)
s(1st)

num = 10;
den = [-1 1 0];
nyquist(num,den)

Kho st ng dng MATLAB trong iu khin t ng

Nyquist Diagrams
1000
800
600

(A)

Imaginary Ax is

400
200
0
-200
-400
-600
-800
-1000
0

10

Real Ax is

Nhn xt: hm truyn vng h c 1 cc nm bn phi mt phng phc v 1 cc nm ti


gc ta . Biu Nyquist khng bao im A (-1+j0).
im 1 k hiu (+) nm trn trc thc m (Real Axis) , im 0 nm trn trc o
(Imaginary Axis).
Kt lun: h khng n nh.
* Dng lnh margin tm bin d tr v pha d tr.
T du nhc ca ca s lnh MATLAB ta dng lnh margin:
num = 10;
den = [-1 1 0];
margin(num,den)

Kho st ng dng MATLAB trong iu khin t ng

Bode Diagrams
Gm = 0 dB, Pm = 0 (unstable closed loop)
60

Phase (deg); Magnitude (dB)

40
20
0
-20

-20
-40
-60
-80
-1

10

10

Frequency (rad/sec)

Kt lun:
d tr bin (Gm = 0 dB).
d tr pha (Pm = 0).
Warning: Closed loop is unstable (h vng kn khng n nh).
Bi tp 3:
GH(s) =

k
( t1s +1)( t2s +1) (k =10, t1 = 1, t2 = 2)

num = 10;
den = [2 3 1];
nyquist(num,den)

Kho st ng dng MATLAB trong iu khin t ng

Nyquist Diagrams

Im aginary Ax is

(A)

-2

-4

-6
0

10

Real Ax is

Nhn xt: hm truyn vng h c 2 cc nm bn tri mt phng phc. Biu Nyquist


khng bao im A (-1+j0).
im 1 k hiu (+) nm trn trc thc m (Real Axis) , im 0 nm trn trc o
(Imaginary Axis).
Kt lun: h thng n nh.
* Dng lnh margin tm bin d tr v pha d tr.
T du nhc ca ca s MATLAB dng lnh margin.
num = 10;
den = [2 3 1];
margin(num,den)

Kho st ng dng MATLAB trong iu khin t ng

Bode Diagrams
Gm = Inf, Pm=38.94 deg. (at 2.095 rad/sec)
20

Phase (deg); Magnitude (dB)

10
0
-10
-20

-50
-100
-150
0

10

Frequency (rad/sec)

Kt lun: h thng n nh.


d tr bin (Gm = ).
d tr pha (Pm = 38.94), ti tn s ct bin 2.095 rad/sec.
Bi tp 4:
GH(s) =

k
s( t1s +1)( t2s +1)

num = 10;
den = [2 3 1 0];
nyquist(num,den)

(k = 10 t1=1, t2 =2)

Kho st ng dng MATLAB trong iu khin t ng

Nyquist Diagrams
1000
800
600

Imaginary Ax is

400
200
0
-200

(A)

-400
-600
-800
-1000
-30

-25

-20

-15

-10

-5

Real Ax is

Nhn xt: hm truyn vng h c 2 cc nm bn tri mt phng phc v 1 cc zero.


Biu Nyquist bao im A(-1+j0).
im 1 k hiu (+) nm trn trc thc m (Real Axis) , im 0 nm trn trc o
(Imaginary Axis).
Kt lun: h khng n nh.
* Dng lnh margin tm bin d tr v pha d tr.
T du nhc ca ca s MATLAB ta dng lnh margin kim chng li h:
num = 10;
den = [2 3 1 0];
margin(num,den)

Kho st ng dng MATLAB trong iu khin t ng

Bode Diagrams
Gm = 0 dB, Pm = 0 (unstable closed loop)
60
40
Phase (deg); Magnitude (dB)

20
0
-20
-40

-100
-150
-200
-250
-1

10

10

Frequency (rad/sec)

Kt lun: h thng khng n nh.


d tr bin (Gm = 0 dB).
d tr pha (Pm = 0)
Bi tp 5:
GH(s) =

k
s( t1s + 1)( t2s + 1)( t3s + 1)

num = 10;
den = [6 11 6 1 0];
nyquist(num,den)

( t1 =1, t2 = 2, t3 = 3, k = 10)

Kho st ng dng MATLAB trong iu khin t ng

Nyquist Diagrams
1000
800
600

Im aginary Ax is

400
200
0

(A)

-200
-400
-600
-800
-1000
-60

-50

-40

-30

-20

-10

Real Ax is

Nhn xt: hm truyn vng h c 3 cc nm bn tri mt phng phc v 1 cc zero.


Biu Nyquist bao im A (-1+i0).
im 1 k hiu (+) nm trn trc thc m (Real Axis) , im 0 nm trn trc o
(Imaginary Axis).
Kt lun: h khng n nh.
* Dng lnh margin tm bin d tr v pha d tr.
T du nhc ca ca s MATLAB, dng lnh margin kim chng li h:
num = 10;
den = [6 11 6 1 0];
margin(num,den)

Kho st ng dng MATLAB trong iu khin t ng

Bode Diagrams
Gm = 0 dB, Pm = 0 (unstable closed loop)

Phase (deg); Magnitude (dB)

50
0
-50

-100

-200

-300
-2

-1

10

10

10

Frequency (rad/sec)

Kt lun: h thng khng n nh.


d tr bin (Gm = 0 dB).
d tr pha (Pm = 0).
Bi tp 6: Sau y l dng bi tp tng qut vi t v mu ca mt hm truyn l cc s
liu m ta phi nhp vo.
Chng trnh:
%%Tap tin khao sat on dinh he thong
%%PHAM QUOC TRUONG - DT: 9230774
function ondinh()
promptstr={'Nhap tu so num:','Nhap mau so den:'};
inistr={'',''};
dlgTitle='Nhap du lieu';
lineNo=1;
result=inputdlg(promptstr,dlgTitle,lineNo,inistr);
num=str2num(char(result(1)));
den=str2num(char(result(2)));
[z,p,k]=residue(num,den); %Tim cac cuc p
z=roots(num)
%Tim cac zero z
zplane(z,p)
%Ve cuc va zero

Sau khi chy chng trnh ta c kt qu:

Bn hy nhp s liu vo:

Kho st ng dng MATLAB trong iu khin t ng

Ga s ta nhp s liu sau v chn OK:

Kt qu ngoi ca s MATLAB Command Windows


z=
0 + 3.0000i
0 - 3.0000i
Hnh v cc v zero:

Kho st ng dng MATLAB trong iu khin t ng

Imaginary Part

-1

-2

-3
-4

-3

-2

-1

0
Real Part

Kho st h thng theo tiu chun Hurwitz


N LI L THUYT:
Xt Phng trnh c trng:
F(s) = ansn+an-1++a0 vi an 0
1. iu kin cn h n nh:
Cc h s aj (j = 0, n-1) cng du vi an.
aj 0 (j = 0,,n)
2. Tiu chun Hurwitz:
iu kin cn v h n nh (cc nghim ca phng trnh t trng nm bn
tri mt phng phc) l tt c cc nh thc Hurwitz Dk u cng du (k = 0..n)
3. Tiu chun Routh:
iu cn v h n nh l tt c cc phn t ca ct 1 bng Routh u cng
du, nu c s i du th s ln i du th s ln i du bng s nghim phi mt
phng phc.

Bi tp 7:Cho h thng iu khin phn hi:

Kho st ng dng MATLAB trong iu khin t ng

s+1
s

2
s2 + 4s + 3

Dng gin Bode kho st n nh ca h thng trn.


Kho st h xem h c n nh hay khng.
Trc tin ta dng lnh serieskt ni 2 h thng:
num1 = [1 1];
den1 = [1 0];
num2 = 2;
den2 = [1 4 3];
[num,den] = series(num1,den1,num2,den2)
num =
0 0
den =

Hm truyn ni tip l:
2s + 2
GH(s) = 3
s + 4s2 + 3s
Dng gin Bode kho st n nh:
num = [2 2];
den = [1 4 3 0];
margin(num,den)

Kho st ng dng MATLAB trong iu khin t ng

Bode Diagrams
Gm = Inf, Pm=77.748 deg. (at 0.65148 rad/sec)
20
Phase (deg); Magnitude (dB)

0
-20
-40
-60

-100
-120
-140
-160
-180
-1

10

10

10

Frequency (rad/sec)

Kt lun:
Bin d tr: Gm =
Pha d tr Pm = 77.74 ti tn s ct bin wb = 0.65
Vy h thng n nh.
V biu Nyquist:
nyquist(num,den)
Nyquist Diagrams

60

Imaginary Ax is

40
20

-20
-40

-60
-1

-0.9

-0.8

-0.7

-0.6

-0.5

Real Ax is

-0.4

-0.3

-0.2

-0.1

Kho st ng dng MATLAB trong iu khin t ng


Bn cnh ta c th kho st n nh bng tiu chun i s:
Phng trnh c trng: s3 + 4s2 +5s + 2 = 0
Trc tin ta gi hurwitz t ca s lnh:(lin h PQT c chng trnh)
hurwitz
Cho biet so bac cao nhat cua ham: 3
Cho biet he so a(0): 1
Cho biet he so a(1): 4
Cho biet he so a(2): 5
Cho biet he so a(3): 2
Cac dinh thuc Hurwitz:
D[1] = 1
D[2] =

D[3] =

18

D[4] =

36

- HE THONG ON DINH. -

Bi tp 8: Kho st h thng:
+
_

2s + 1
s

10
s+5

1
s +1
Trc tin, ta kt ni h thng:
T ca s lnh ca MATLAB, ta nhp lnh:
num1 = [2 1];
den1 = [1 0];
num2 = 10;
den2 = [1 5];
[num,den] = series(num1,den1,num2,den2)
V ta s c:
num =
0

20

10

Kho st ng dng MATLAB trong iu khin t ng


den =
1

5 0
Ta nhp tip:
numc = [20 10];
denc = [1 5 0];
numd = 1;
dend = [1 1];
[num,den] = feedback(numc,denc,numd,dend)
(nu sau dend, c 1 tc l hi tip dng)
num =
0

20

30

10

25

10

den =
1

Hm truyn ca h thng l: G(s)H(s) =


V gin Bode ca h:
num = [20 30 10];
den = [1 6 25 10];
bode(num,den)

20s2 + 30s + 10
s3 + 6s2 + 25s + 10

Bode Diagrams

10

Phase (deg); Magnitude (dB)

5
0
-5
-10

20
0
-20
-40
-60
-80
-1

10

10

Frequency (rad/sec)

Tnh bin d tr v pha d tr ca h:

10

10

Kho st ng dng MATLAB trong iu khin t ng


margin(num,den)
Bode Diagrams
Gm = Inf, Pm=103.14 deg. (at 20.347 rad/sec)
10

Phase (deg); Magnitude (dB)

5
0
-5
-10

0
-50
-100
-150
0

10

10

Frequency (rad/sec)

Kt lun:
H n nh.
Bin d tr: Gm = .
Pha d tr: Pm = 103.14o ti tn s ct bin l 20.347 rad/sec.
Ch : Sau khi vo ca s lp trnh, ta lp chng trnh kho st h c phng trnh
c trng theo tiu chun i s (tiu chun Hurwitz) xem h c n nh hay khng.
Trong ca s lnh (ca s lm vic), gi lnh hurwitz (chng trnh c
son tho trong phn lp trnh mang tn Hurwitz) s c nhng hng ch:
cho biet so bac cao nhat cua ham:
(nhp vo h s an)
cho biet he so a(0):
...
cho biet he so a(n):
Di dy l phn nh vo ca s lp trnh
%%%%%%%%%%% PHAM QUOC TRUONG - MSSV: 97102589 %%%%%%%%%%%
%%%%%%%%%%%
DT: 9230774
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function Hurwitz()
%
% * Cong dung: Xet tinh on dinh cua he thong theo tieu chuan Hurwitz.
%
% * Cach su dung:
% Truoc tien, nhap vao da thuc dac trung f theo dang:
%
f = [a(n) a(n-1) a(n-2) ..... a(1) a(0)]
% voi a(n), a(n-1), a(n-2), ....., a(1),a(0) la cac he so cua da
thuc dac trung.

Kho st ng dng MATLAB trong iu khin t ng


% Sau do, goi lenh Hurwitz(f)

XIN VUI LONG LIN H PHM QUC TRNG C CHNG TRNH


Chy chng trnh cc v d:
V d 1: Cho phng trnh c trng:
F(s) = s4 + 3s3 + 2s2 + 2s + 1
Hurwitz
Cho biet so bac cao nhat cua ham: 4 (nhp xong nhn Enter)
Cho biet he so a(0) = 1
Cho biet he so a(1) = 3
Cho biet he so a(2) = 2
Cho biet he so a(3) = 2
Cho biet he so a(4) = 1
Sau khi nhp cc h s, MATLAB s t ng gii v cho ta kt qu:
Cac dinh thuc Hurwitz:
D[1] = 1
D[2] =

D[3] =

D[4] =

-1

D[5] =

-1

HE THONG KHONG ON DINH.

V d 2: Cho phng trnh c trng:


F(s) = 5s4 + 8s3 + 21s2 + 10s + 3
Hurwitz
Cho biet so bac cao nhat cua ham: 4
Cho biet he so a(0) = 5
Cho biet he so a(1) = 8
Cho biet he so a(2) = 21
Cho biet he so a(3) = 10
Cho biet he so a(4) = 3
Cac dinh thuc Hurwitz:
D[1] = 5
D[2] =

D[3] = 118
D[4] = 988
D[5] = 2964

Kho st ng dng MATLAB trong iu khin t ng


- HE THONG ON DINH. V d 3: Cho phng trnh c trng:
F(s) = s5 + 10s4 + 16s3 + 160s2 + s + 10
hurwitz
Cho biet so bac cao nhat cua ham: 5
Cho biet he so a(0) = 1
Cho biet he so a(2) = 10
Cho biet he so a(3) = 16
Cho biet he so a(4) = 160
Cho biet he so a(5) = 1
Cho biet he so a(6) = 10
Sau khi nhp cc h s, MATLAB s t ng gii v cho ta kt qu:
Cac dinh thuc Hurwitz:
D[1] = 1
D[2] =

10

D[3] =

D[4] =

D[5] =

D[6] =

HE THONG O BIEN ON DINH.

Kho st h thng theo tiu chun Routh


Chng trnh:(lin h PQT)
%%%%%%%%%%%%%%%%%% PHAM QUOC TRUONG MSSV:97102589 %%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
Dien thoai: 9230774
%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Chy chng trnh cc v d:


V d 1: Cho phng trnh c trng
F(s) = s4 + 3s3 + 2s2 + 2s + 1
routh
- CHUONG TRINH TAO HAM ROUTH Cho biet so bac cao nhat cua he: 4
Cho biet he so a(0) = 1
Cho biet he so a(1) = 3
Cho biet he so a(2) = 2

Kho st ng dng MATLAB trong iu khin t ng


Cho biet he so a(3) = 2
Cho biet he so a(4) = 1
- HE THONG KHONG ON DINH. V d 2: Cho phng trnh c trng
F(s) = s5 + s4 + 4s3 + 4s2 + 2s +1
routh
- CHUONG TRINH TAO HAM ROUTH Cho biet so bac cao nhat cua he: 5
Cho biet he so a(0) = 1
Cho biet he so a(1) = 1
Cho biet he so a(2) = 4
Cho biet he so a(3) = 4
Cho biet he so a(4) = 2
Cho biet he so a(5) = 1
- HE THONG KHONG ON DINH. V d 3: Cho phng trnh c trng
F(s) = s5 + 10s4 + 16s3 + 160s2 + s + 10
routh
- CHUONG TRINH TAO HAM ROUTH Cho biet so bac cao nhat cua he: 5
Cho biet he so a[0] = 1
Cho biet he so a[1] = 10
Cho biet he so a[2] = 16
Cho biet he so a[3] = 160
Cho biet he so a[4] = 1
Cho biet he so a[5] = 10
- HE THONG ON DINH. -

Kho st ng dng MATLAB trong iu khin t ng

You might also like