You are on page 1of 6

Lưu Như Hòa KSTN-ðKTð-K50

Hệ thống rời rạc

Một hệ thống analog có mô hình như hình vẽ:

Bộ ñiều khiển analog (trong khung vuông) ñược thay thế bằng bộ ñiều khiển số:

Làm nhiệm vụ tương tự như 1 bộ ñiều khiển analog,tuy nhiên nó làm việc với tín hiệu rời
rạc.

Ở mô hình trên ta thấy có cả khối digital và analog trong cùng 1 mô hình,ñể chỉ phải làm
việc với các hàm rời rạc,ta chuyển khối analog về khối digital tương ñương.
Lưu Như Hòa KSTN-ðKTð-K50

Tín hiệu clock là ñể ñồng bộ xung của bộ DAC và ADC ,khi có 1 xung của clock thì
DAC và ADC mới phát tín hiệu ra.Hàm H2(s) cần tìm ñể tín hiệu ra của nó (tín hiệu rời
rạc) cũng trùng với tín hiệu ra của hệ analog trên ( sau khi lấy mẫu có tín hiệu rời rạc)
Ta dùng phương pháp ‘zoh’
Mô hình ñược thay thế bằng:

>> num=[1]; den=[1 1 0];


>> sysc=tf(num,den)
Transfer function:
1
-------
s^2 + s
Ví dụ:
>> T=1;
1
G p ( s) = sysd=c2d(sysc,T,'zoh')
s ( s + 1)
0.3679 z + 0.2642 Transfer function:
G( z) = 2 0.3679 z + 0.2642
z − 1.368 z + 0.3679 ----------------------
z^2 - 1.368 z + 0.3679

Sampling time: 1
Lưu Như Hòa KSTN-ðKTð-K50

Step Response
1.4
num=[1]; den=[1 1 0];
sysc=tf(num,den);
1.2
sysd=c2d(sysc,1,'zoh');
sys=feedback(sysd,[1]);
1 T=[0:1:20]; step(sys,T)

0.8
Amplitude

0.6

0.4

0.2

0
0 2 4 6 8 10 12 14 16 18 20
Time (sec)

Tín hiệu ra liên tục của nó là: (ta xét trong miền thời gian liên tục)

Step Response
1.5
numg=[1]; deng=[1 1 0];
sysg=tf(numg,deng);
[nd,dd]=pade(1,2);
sysp=tf(nd,dd);
sysi=tf([1],[1 0]);
sys1=series(1-sysp,sysi);
1 syso=series(sys1,sysg);
sys=feedback(syso,[1]);
t=[0:0.1:20];
Amplitude

hold on;
step(sys,t);
hold off;
0.5

0
0 2 4 6 8 10 12 14 16 18 20
Time (sec)
Lưu Như Hòa KSTN-ðKTð-K50

Khi thời gian lấy mẫu càng bé thì ñáp ứng của hệ rời rạc càng giống với ñáp ứng của hệ
liên tục.

num=[1]; den=[1 1 0];


sysc=tf(num,den);
hold on;
for samp=[1 0.5 0.2 0.01]
sysd=c2d(sysc,samp,'zoh');
sys=feedback(sysd,[1]);
T=[0:samp:20];step(sys,T);
end
legend('Time Sampling = 1','Time Sampling = 0.5','Time Sampling = 0.2','Time Sampling = 0.01');
hold off;

Nhìn vào hình dưới ñây ta thu ñược kết luận trên.
Lưu Như Hòa KSTN-ðKTð-K50

Khảo sát tính ổn ñịnh của hệ thống rời rạc

Ta xét hệ thống có hàm truyền:


K
G p ( s) = ,theo bài trên ta có,khi chuyển qua hệ rời rạc với thời gian lấy mẫu là:
s ( s + 1)
T = 1(s)

K (0.3679 z + 0.2642)
Ta có: G ( z ) = .
z 2 − 1.368 z + 0.3679
ðiểm cực của hàm truyền hệ kín tương ứng là nghiệm của 1 + G ( z ) .
ðặt a=0.3679;b=0.2642; Ta có :
K (az + b) z 2 + ( Ka − 1 − a ) z + Kb + a
G( z) = ; 1 + G ( z ) = =0
z 2 − (1 + a ) z + b z 2 − (1 + a ) z + a
Với K=1;

>> a=.3679;b=.2642; >> num=[1]; den=[1 1 0];


>> k=1; sysc=tf(num,den);
>> p=[1 -1-a+k*a a+k*b] T=1;
sysd=c2d(sysc,T,'zoh');
p= sys=feedback(sysd,1);
>> pole(sys)
1.0000 -1.0000 0.6321
ans =
>> roots(p)
0.5000 + 0.6182i
ans = 0.5000 - 0.6182i
>> abs(ans)
0.5000 + 0.6181i
0.5000 - 0.6181i ans =

>> abs(ans) 0.7951


0.7951
ans = >> pzmap(sys)

0.7950
0.7950

Ta thấy ñiểm cực của hệ kín nằm trong ñường tròn z = 1 nên hệ kín rời rạc ổn ñịnh với
K=1.
Lưu Như Hòa KSTN-ðKTð-K50

Pole-Zero Map
1

0.8

0.6

0.4

0.2
Imaginary Axis

-0.2

-0.4

-0.6

-0.8

-1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Real Axis

Khi K biến thiên từ 0 → ∞ thì các ñiểm cực của hàm truyền hệ kín biến thiên như sau:
>> [Gm,Pm,Wcg,Wcp] = margin(sysd)
>> rlocus(sysd)
Gm =
Root Locus
1.5 2.3927

1 Pm =

30.3747
0.5
Imaginary Axis

0
Wcg =

1.3245
-0.5

Wcp =
-1
0.7719

-1.5
-2.5 -2 -1.5 -1 -0.5 0 0.5 1
Real Axis

Ta thấy có 1 giá trị K gh mà khi K > K gh thì ñiểm cực chạy ra ngoài ñường tròn ñơn vị,hệ
mất ổn ñịnh.Ta có ñộ dữ trữ biên ñộ khi K=1 chính là K gh =2.3927.Vậy ñể hệ ổn ñịnh thì:
0 < K < 2.3927 .

You might also like