1. Trang chủ
  2. » Giáo án - Bài giảng

Giáo trình Matlap Chương 6_1

9 143 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 9
Dung lượng 321,6 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Rõ ràng làđ nh y theo b tăng nhanh bên ngoài ωB.

Trang 1

ms = [1 2*z*wn wn^2];

sys = tf(ts,ms);

t = 0:0.02:4;

c = step(sys,t);

plot(t,c)

T s đ kh i ta có:

d s ) 1 de ( s

d )

s ( R

) s ( C

=

Ph ng trìnhđ c tính là:

s2 + (de + 1)s + d = s2+ 2ωnζs + 2

n ω

V i 2= wn = 0.28 và z = ζ = 4.0906 ta có d = 16.733 và e = 0.077

n

ω

Khi có m t hàm truy n ta có th xác đ nh h s t t ζ và t n s t nhiên ωnb ng

l nh damp.

Ví d : Cho h có hàm truy n:

3 s 2 s

1 s 5 s 2 ) s (

2

+ +

+ +

= Tìm h s t t ζ và t n s t nhiên ωn Các l nh MATLAB (l u trong ct6_22.m)

nh sau:

h = tf([2 5 1],[1 2 3]);

damp(h)

Eigenvalue Damping Freq (rad/s)

1.00e+000 + 1.41e+000i 5.77e 001 1.73e+000

1.00e+000 1.41e+000i 5.77e 001 1.73e+000

2 Đáp ng trong mi n th i gian c a h th ng:

khi không có kích thích d u vào nh ng t n t i các giá tr ban đ u c a vec t

c a m t h th ng (l u trong ct6_23.m)nh sau:

clc

a = [ 0.5572 0.7814;0.7814 0];

c = [1.9691 6.4493];

x0 = [1 ; 0]

sys = ss(a,[],c,[]);

initial(sys,x0)

Trang 2

b Đáp ng xung Dirac: Ta tìm đáp ng c a h th ng v i xung nh hàm

impulse Các l nh MATLAB (l u trongct6_24.m)nh sau:

clc

a = [ 0.5572 0.7814;0.7814 0];

b = [1 1;0 2];

c = [1.9691 6.4493];

sys = ss(a,b,c,0);

impulse(sys)

kênh th 2

c Đáp ng đ i v i hàm b c nh y: Đ tìm đáp ng c a h th ng đ i v i

nh sau:

clc

a = [ 0.5572 0.7814;0.7814 0];

b = [1 1;0 2];

c = [1.9691 6.4493];

sys = ss(a,b,c,0);

step(sys)

kênh th 2

d Đáp ng v i tín hi u b t k : Đ tìm đáp ng c a h th ng đ i v i hàm

b t kì ta dùng hàmlsim Các l nh MATLAB (l u trong ct6_26.m) nh sau:

clc

[u,t] = gensig( square ,4,10,0.1);

H = [tf([2 5 1],[1 2 3]) ; tf([1 1],[1 1 5])]

lsim(H,u,t)

sau 0.1s trong 10 chu k

3 Đáp ng trong mi n t n s c a h th ng: Cho m t hàm truy n c a m t h

ng v i giá tr max c a G(ω) g i là ωrvà có tr s là:

2 n

r =ω 1−2ζ ω

Đ v đ c tính t n biên pha c a m t h th ng ta dùng l nh freqs.

Trang 3

Ví d : Cho hàm truy n c a m t h th ng là:

4 s 2 s

4 )

s (

+ +

= Tìm đ c tính t n biên pha c a h th ng b ng các l nh MATLAB(l u trong

ct6_27.m):

w = 0:0.01:3;

ms = [1 2 4];

ts = [4];

freqs(ts,ms,w);

Ta cũng có th t o đ th nh sau(l u trong ct6_28.m):

ts = [4];

ms = [1 2 4];

w = 0:0.01:3;

g = freqs(ts,ms,w);

mag = abs(g);

pha = angle(g);

subplot(2,1,1);

loglog(w,mag);

grid on;

subplot(2,1,2);

semilogx(w,pha);

grid on

Ng c l i khi có đ c tính t n biên pha ta có th tìm l i đ c hàm truy n b ng

l nh invfreqs.

Ví d : Tìm hàm truy n c a h th ng(l u trong ct6_29.m):

ts = [1 2 3 2 1 4];

ms = [1 2 3 2 3];

[h,w] = freqz(b,a,64);

[tsm,msm] = invfreqz(h,w,4,5)

Ta cũng có th xây d ng đ c tính t n th c o

Ví d : Cho hàm truy n :

10 s 9 s 5 4 s

10 )

s (

+ + +

= Tìmđ c tính t n th c o c a h b ng các l nh MATLAB (l u trong ct6_30.m):

ts = [10];

ms = [1 4.5 9 10];

w = [1:0.01:3];

Trang 4

h = freqs(ts,ms,w);

t = real(h);

a = imag(h);

subplot(2,1,1);

plot(w,t)

subplot(2,1,2);

plot(w,a)

Đ v đ th Bode c a h th ng ta dùng hàm bode Đ th th nh t nh t

là đ c tính biên t n logarit, đ c chia theo dB Đ th th hai là đ c tính pha

t n logarit chia theo đ

Các d ng c a l nh bode g m:

bode(sys)

bode(sys,w)

[bien, pha, w] = bode(sys)

Đ v đ th Bode c a m t h th ng ta dùng các l nh MATLAB(l u trong

ct6_31.m) nh sau:

clc

g = tf([1 0.1 7.5],[1 0.12 9 0 0]);

figure(1)

bode(g)

figure(2)

bode(g,{0.1 , 100})

gd = c2d(g,0.5)

figure(3)

bode(g, r ,gd, b )

Hàm margin cho bi t d tr n đ nh c a h th ng D tr biên gm là h s khuy ch đ i Fr mà n u ta thêm vào hàm truy n đ t c a h h thì h kín v a

đ t đ c gi i h n n đ nh D tr pha pm đ c đ nh nghĩa là kho ng cách góc pha ϕr t i 180° Hàm cho bi t gm t i t n s đ o pha wcg và pm t i t n s c t

pha wcp Hàm allmargin có tác d ng r ng h n hàm margin Các k t qu tr v

c a allmargin g m:

GMFrequency: giá tr t n s mà t i đó đ th pha c t đ ng th ng n m ngang 180°

GainMargin: d tr biên giá tr đ o c a biên đ t i t n s GMFrequency

PMFrequency: giá tr t n s mà t i đó đ th biên c t đ ng th ng n m ngang 0 dB( ng v i h s khuy chđ i 1)

Trang 5

PhaseMargin: d tr pha kho ng cách góc (> 0) t v trí PMFrequency

đ n 180°

DelayMargin: d tr th i gian tr giá tr th i gian tr mà n u v t quá,

h th ng s m t nđ nh

DMFrequency: giá tr t n s ng v i DelayMargin

Stable: =1 khi mach vòng kín nđ nh; b ng 0 trong các tr ng h p khác Cácđ i l ng này có th đ c đ c t đ th t o b i margin Đ xác đ nh

d tr n đ nh c a m t h th ng c th ta dùng các l nh MATLAB(l u trong

ct6_32.m) nh sau:

clc

sys = zpk([],[ 1 1 1],4)

margin(sys)

allmargin(sys)

K t qu h th ng n đ nh Nó có DelayMargin = 0.3s Bây gi ta gán cho sys

m t kho ng th i gian tr là stabil.DelayMargin + 0.01, nghĩa là v t quá th i gian tr n đ nh 0.01s K t qu tính toan m i c a allmargin s thông báo tính

không n đ nh c a h th ng Các l nh MATLAB (l u trong ct6_33.m) nh sau:

clc

sys = zpk([],[ 1 1 1],4)

margin(sys)

stabil = allmargin(sys)

sys.ioDelay = stabil.DelayMargin + 0.01;

newstabil = allmargin(sys)

M t kh năng khác đ mô t đ c tính t n s là đ th Nyquist Nó bi u

di n các giá tr th c và o thu c hàm truy n đ t ph c c a m ch vòng h F0(jω) trong d i t n s ω = 0 ÷ ∞ trên h to đ ph c Đ ng cong do các đi m t o thành đ c g i là qu đ o biên pha F0(jω) Trên c s tiêu chu n n đ nh Nyquist ta có th rút ra k t lu n v tính n đ nh c a h kín(có ph n h i đ n v âm) t đ th Nyquist Đ v đ th Nyquist ta dùng hàm Nyquist Ta có các

l nh MATLAB(l u trong ct6_34.m) nh sau:

clc

H = tf([2 5 1],[1 2 3])

nyquist(H)

Trang 6

§3 Đ C TÍNH C A H TH NG ĐI U KHI N

1 Tính n đ nh: Tiêu chu n n đ nh nói r ng h s n đ nh n u các nghi m

c a ph ng trình đ c tính có ph n th c âm Ph ng trình đ c tính là đa th c

m u s c a hàm truy n Do v y ch c n tính nghi m c a đa th c đ c tính b ng

l nh roots là ta có th xác d nh h nđ nh hay không

Ví d : Xét tính n đ nh c a h có ph ng trình đ c tính là:

s4 + 10 s3+ 35s2+ 50s + 24

Các l nh MATLAB là:

a = [1 10 35 50 24];

roots(a)

ans =

4.0000

3.0000

2.0000

1.0000

Nh v y h nđ nh

2 Đ nh y: Đ nh y c a h th ng đ c đo b ng t s ph n trăm s thay đ i

c a hàm truy n theo s thay đ i ph n trăm c a thông s b Ví d đ nh y c a hàm truy n T(s) theo b đ c xác đ nh b ng:

b

) s ( T b

) s ( T b

/ b

) s ( T / s ( T

STb

=

= Khi ∆b g n đ n 0 ta có:

) s ( T

b b

) s ( T

STb

=

Đ nh y tĩnh là giá tr c a S khi t→0 Đ nh y đ ng đ c tính b ng cách thay s

b ng jω và v đ ng S theo ω Biên đ c a S(jω) đo sai s c a h th ng

Ví d : Kh o sát h đi u khi n nh hình v sau:

K

Thi t b

B bù

) 1 s (

b +

Sensor h

-

Trang 7

Trong đó b có tr đ nh m c là 4 và h có tr đ nh m c là 0,5 Tìm đ nh y T(s) theo b, v modul hàm đ nh y theo ω v i hai giá tr bù là K = 2 và K = 0.5 Tìm

đ nh y T(s) theo h, v modul c a hàm đ nh y theo h v i K = 2 và K = 0.5 Hàm truy n c a h th ng là:

Kbh 1

s

Kb )

Ts

+ +

=

V i b = 4 và h = 0.5 ta có ωB= 1 + 2K

Đ nh y c a T(s) theo b khi b = 4 và h = 0.5 là:

K 2 1 s

1 s Kbh

1 s

1 s )

s ( T

b b

) s ( T

STb

+ +

+

= +

+

+

=

=

K 2 1 s

K 2 Kbh

1 s

Kbh )

s ( T

h b

) s ( T

STh

+ +

= +

+

=

=

Các l nh MATLAB (l u trong ct6_35.m) nh sau:

k1 = 1;

k2 = 0.5;

ts = [1 1];

ms1 = [1 1+2*k1];

ms2 = [1 1+2*k2];

w = 0:0.01:15;

stb1 = abs(freqs(ts,ms1,w));

stb2 = abs(freqs(ts,ms2,w));

subplot(2,1,1);

plot(w,stb1,w,stb2);

title( Do nhay cua T theo b );

ts1 = 2*k1;

ts2 = 2*k2;

stb1 = abs(freqs(ts1,ms1,w));

stb2 = abs(freqs(ts2,ms2,w));

subplot(212);

plot(w,stb1,w,stb2);

title( Do nhay cua T theo h );

Hình trênđ ng có ng v i K = 0.5 và hình d i đ ng cao ng v i K = 2

T hình v ta th y r ng đ nh y c a h th ng theo b gi m khi h s khu ch đ i c a vòng h K tăng trong khi đ nh y theo h tăng khi K tăng Rõ ràng làđ nh y theo b tăng nhanh bên ngoài ωB

3 Sai s xác l p: Kh o sát h nh hình v :

Trang 8

H(s)

G(s)

Hàm truy n c a h kín là:

) s ( G ) s ( H 1

) s ( G )

s ( R

) s ( C

+

=

Sai s c a h kín là:

E(s) = R(s) – H(s)C(s) =

) s ( G ) s ( H 1

) s ( R +

S d ng đ nh lí giá tr cu i ta có:

) s ( H ) s ( G 1

) s ( sR lim

e s

ss = → ∞ +

Đ u vào b c nh y đ n v :

p s

ss

K 1

1 )

s ( H ) s ( G lim 1

1 e

+

= +

=

Đ u vào tăng tuy n tính đ n v :

v s

ss

K

1 ) s ( H ) s ( sG lim 1

1

+

=

→∞

Đ u vào parabol đ n v :

a 2

s

ss

K

1 ) s ( H ) s ( G s lim 1

1

+

=

→∞

Ta có th dùng Symbolic Math đ tính các gi i h n trên

§4 PHÂN TÍCH VÀ THI T K QU Đ O NGHI M

Ph ng pháp kinh đi n đ tham s hoá khâu đi u khi n c a vòng đi u

h nh là ph ng pháp qu đ o nghi m Qu đ o nghi m là qu đ o đi m c c,

h p thành b i các đi u c c c a h th ng, ph thu c vào h s khuy ch đ i

ph n h i k va đ c bi u di trên m t ph ng ph c v i ph n th c Re(λ) = σ trên

tr c hoành x và ph n o Im(λ) = ω trên tr c tung y Đ v đ c qu đ o

nghi m c a h th ng ta dung hàm rlocus Ta xét h th ng sau:

c G

k

0

G

M

G

Trang 9

Cú pháp c a rlocus là

rlocus(sys[,k])

[r, k] = rlocus(sys)

r = rlocus(sys, k)

Mô hình sys trong l nh trên là hàm truy n đ t c a h th ng h GoGcGM

đ c xác đ nh b ng l nh MATLAB:

sys = sysM*sysO*sysC

báo riêng Đi u đó có nghĩa là sys đ c ghép n i b i các mô hình riêng l Khi

dùng rlocus v qu đ o đi m c c ta tìm các giá tr liên quan đ n đi m c c b t

kì năm tên qu đ o b ng cách nh p chu t vào m t đi m trên qu đ o Lúc đó

clc

sys = zpk([],[ 0.1 1 j 1+j ], 1)

rlocus(sys)

[r, k] = rlocus(sys)

sgrid

Đ tr c quan ta có th dùng công c thi t k b ng cách nhâp l nh

Ngày đăng: 24/12/2015, 15:36

TỪ KHÓA LIÊN QUAN

w