BẢNG BIẾN ĐỔI Z

Download Report

Transcript BẢNG BIẾN ĐỔI Z

Ý NGHĨA CỦA ĐiỀU KHIỂN SỐ
• Điều khiển chủ yếu là dùng thiết bị số (máy
tính, vi xử lý, PLC)
Ý NGHĨA CỦA ĐIỀU KHIỂN SỐ
• Các hệ thống điều khiển phân bố, nối mạng
MÔ HÌNH HỆ KHÔNG LIÊN TUC
(Hệ thời gian rời rạc-discrete time system)
Tín hiệu rời rạc
Khi hệ thống điều khiển có sự tham gia của máy tính thì tín hiệu được máy
tính xử lý là tín hiệu số, kết quả của chuyển đổi tín hiệu liên tục u(t) thành tín
hiệu rời rạc u*(t) bởi chuyển đổi ADC thông qua khóa lấy mẫu chu kỳ Ts và
lượng tử hóa.
Tín hiệu rời rạc này chuyển đổi bởi mạch cài và DAC, gọi chung là mạch giữ
bậc 0 (zero order hold), trở thành tín hiệu liên tục uh(t)
CHU KỲ LẤY MẪU
• Chọn chu kỳ lấy mẫu Ts</m , m là khổ sóng tối đa của
tín hiệu được lấy mẫu
• Thực tế chọn Ts nhỏ hơn giá trị /m chừng 10 lần do tín
hiệu thực sự thường có khổ sóng không giới hạn
• Tín hiệu cần thiết thường có xen lẫn nhiễu tần số cao do đó
cần phải có bộ lọc làm suy giảm thành phần tần số cao này,
nếu không sẽ gây ra aliasing (frequency folding)
BIẾN ÑỔI Z
u*(t) = u(tk) ở các thời điểm tk=kTs, ngoài ra u*(t) =0


k 0
k 0
u (t)  u(t)  δ(t  kT s )   u(kTs) δ(t  kT s )
*
Lấy biến đñổi Laplace hai vế


k 0
0
u ( kT s )  u k , e
U ( s )   u ( kT s )   ( t  kT s ) e
*

  u ( kT s ) e
Đặt
 st
 sT s
 z


k 0
0
  u ( kT s )   ( t  kT s ) e
 skT s
k 0
ze
 sT s
, u ( kT s )  u k , U ( s )  U ( z )
*

U (z)   uk z
k 0
k
 là hàm xung Dirac
 st
BIẾN ĐỔỈ Z
Biến ñổi Z của xk-m (trễ m chu kỳ) là z-m X(z)

z  X (z) 

Biến ñổi Z của xk+m là
Biến ñổi Z của
akx
k
m
m

i0
là X(z/a)
k
Biến ñổi của
 xlà X(z).z/(z-1)
i
i0
Biến ñổi kxk là -z dX(z)/dz
Giới hạn ñầu: x(0) = lim X(z) z -> 
Giới hạn cuối: x() = lim(z-1)X(z), z  1
i 
xi z 

Biến đổi z
Ví dụ: biến đổi z của tín hiệu nấc lấy mẫu

X (z)   z
k
 1 z
1
 z
2
 ..  z
n
k 0
Nhân z với hai vế rồi trừ với biểu thức cũ
( z  1) X ( z )  z
z
X (z) 
z 1
Ví dụ: biến đổi Z của akxk là


k 0
k
a xk z
k

z
  xk ( )
a
k 0
k
z
 X( )
a
z
Ví dụ: biến đổi Z của e-kT là biến đổi của 1.(e-T)k
Ví dụ: dùng Matlab
>> syms t z ; ztrans (t)
ans =
z/(z-1)^2
e
z
X (z) 
e
T
T
1

z
ze
T
BẢNG BIẾN ĐỔI Z
Laplace
Z
Hàm thời gian
1
1
Xung Dirac
1
z
Hàm nấc
s
z 1
1
Tz
s
( z  1)
2
t
z
1
ze
sa
1
(s  a)
2
Te
2
 aT
 aT
(z  e
e-at
z
 aT
)
2
te-at
BẢNG BIẾN ĐỔI Z
Laplace
(e
b
(s  a)  b
2
2
z  (2e
2
2
 aT
 aT
z  (e
2
sa
(s  a)  b
2
Hàm thời gian
Z
z  (2e
2
 aT
sin bT ) z
cos bT ) z  e
 aT
cos bT ) z
cos bT ) z  e
 aT
a
(1  e
s(s  a)
( z  1)( z  e
ba
( s  b )( s  a )
z
ze
 aT

 2 aT
 2 aT
e
e
)z
 aT
 at
sin bt
cos bt
1 e
 at
)
z
ze
 at
 bT
e
 at
 e
 bt
Hàm truyền z hệ rời rạc
Hệ rời rạc biểu thị bằng phương trình sai phân
c(k+n)+an-1c(k+n-1)+…+a1c(k+1)+a0c(k)=
bmr(k+m)+bm-1r(k+m-1)+..+b1r(k+1)+b0r(k)
Lấy biến đổi Z hai vế, giả sử sơ kiện bằng 0
znC(z) + an-1zn-1C(z) +..+ a1zC(z) = bmzmR(z) + bm-1zm-1R(z) +..+ b1zR(z) + b0R(z)
Hàm truyền Z:
G (z) 
C (z)
R(z)
b m z  b m 1 z
m

z  a n 1 z
n
n 1
m 1
 a n 1 z
 ..  b1 z  b 0
n 1
 ..  a 1 z  a 0
Phương trình trạng thái hệ rời rạc
Phương trình trạng thái hệ rời rạc
Từ hàm truyền hệ rời rạc ta có thể viết phương trình
trạng thái dưới dạng sau
x(k+1) = Fx(k) + Gr(k)
y(k) = Cx(k) + Dr(k)
Các ma trận được tạo ra giống như hệ liên tục
Ví dụ:
4 z  12 z  13 z  7
3
G (z) 
2
( z  1) ( z  2 )
2
4 z  12 z  13 z  7
3

2
z  4z  5z  2
3
2
MÔ HÌNH HỆ KHÔNG LIÊN TUC
(Hệ thời gian rời rạc-discrete time system)
Phương trình trạng thái hệ rời rạc, ví dụ
Dạng first companion
 x 1 ( k  1)   0

 
x 2 ( k  1)  0

 
 x 3 ( k  1)   2
y ( k )  1
Dạng Jordan
0
5
 x1 ( k ) 


4  x2 (k )  4u (k )


 x 3 ( k ) 
7
G (z)  4 
 x 1 ( k  1)   1

 
x 2 ( k  1)  0

 
 x 3 ( k  1)   0
y ( k )  2
1
0   x1 ( k )   0 

  
1 x2 (k )  0 u (k )

  
4   x 3 ( k )   1 
1
2
( z  1)
1
1
0
2

1
z 1

3
z2
0   x1 ( k )   0 

  
0 x2 (k )  1 u (k )

  
2   x 3 ( k )   1 
 x1 ( k ) 


3 x 2 ( k )  4u ( k )


 x 3 ( k ) 
Ví dụ MATLAB
>> htz = tf ([4 -12 13 -7] ,conv ([1 -2], conv ([1 -1], [1 -1])))
Transfer function:
4 z^3 - 12 z^2 + 13 z - 7
------------------------z^3 - 4 z^2 + 5 z - 2
Sampling time: unspecified
>> ptttz = canon (htz, 'companion')
a=
x1 x2 x3
x1 0 0 2
x2 1 0 -5
x3 0 1 4
b=
u1
x1 1
x2 0
x3 0
c=
x1 x2 x3
y1 4 9 17
d=
u1
y1 4
Sampling time: unspecified
Discrete-time model.
Hàm truyền Z từ phương trình trạng thái
Tương tự như với hệ liên tục, hàm truyền Z tính theo công thức
X(z) = (zI-F)-1 zx0 + (zI-F)-1 gU(z)
Y(z) = c (zI-F)-1 zx0 + [c (zI-F)-1g+d]U(z)
Nếu x0 = 0
G (z) 
Y (z)
1
 c ( zI  F ) g  d
U (z)
Tính x(k) và y(k)
Từ phương trình trạng thái x(k+1) = Fx(k) + gu(k)
Ta suy ra x(1) = Fx(0) + gu(0) ; x(2)=Fx(1)+gu(1)…
k 1
x (k )  F x (0) 
k

i0
F
k 1  i
gu ( i )
Đáp ứng hệ thống
Đặt (k) = Fk , (0) = I , (k) gọi là ma trận chuyển trạng thái
k 1
x (k )   (k ) x (0) 
  ( k  1  i ) gu ( i )
i0
Tính (k)
Dùng Z đảo
(k)= Z-1[(zI-F)-1z]
Ví dụ:
 0
F 
  0 . 16
1

 1
 z
1
( zI  F )  
 0 . 16
1 

z  1
1
Tính đáp ứng dùng Z đảo
z 1

 ( z  0 . 2 )( z  0 . 8 )

 0 . 16

 ( z  0 . 2 )( z  0 . 8 )

( z  0 . 2 )( z  0 . 8 ) 

z

( z  0 . 2 )( z  0 . 8 ) 
1/ 3
 4/3

 z  0 .2 z  0 .8

 0 .8 / 3 0 .8 / 3


 z  0 .2 z  0 .8
5/3 
z  0 .2 z  0 .8 
1/ 3
4/3 


z  0 .2 z  0 .8 
1
5/3

1
 4
k
k
(

0
.
2
)

(

0
.
8
)

3
 (k )   3
 0 .8
0 .8
k
k

(  0 .2 ) 
(  0 .8 )
3
 3
k 
(  0 .8 ) 
3
3

1
4
k
k
(  0 .2 )  (  0 .8 ) 
3
3

5
(  0 .2 ) 
k
5
Tính đáp ứng dùng Z đảo
Cho g = [1 1]T ,c=[1 0], x0= [1 –1]T , u(t)=1(t), ta tính được
y (k )  
17
(  0 .2 ) 
6
k
22
9
Dùng MATLAB
>> t=0:0.1:10;
>> u=ones(size(t));
>> F=[0 1;-0.16 -1];
>> g=[1;1];
>> c=[1 0];
>> d=0;rr=ss(F,g,c,d,0.1);
>> [y,x]=lsim(rr,u,t,x0);
>> stairs(t,y)
(  0 .8 ) 
k
25
18
k
Dùng công thức  a
j0
j

1 a
k 1
1 a
;a  1
Tính Fk dùng định lý Cayley Hamilton
 0
F  
 1
1 

 2
1   2   1
F
k
  0 I  1F
Các hệ số tính từ phương trình
 k   0   1
k
Suy ra
k 1
 1
 0  (1  k )(  1) k
 1   k (  1) k
F
k
 (1  k )
 (  1) 
k

k
 k 

1 k
Hàm truyền hệ liên tục lấy mẫu
1 e
Khâu ZOH có hàm truyền
 sT
T là thời gian lấy mẫu
s
Biến đổi Z của hệ thời gian rời rạc là
G (z)  Z (
1 e
s
ký hiệu GhoG(z)
 sT
G ( s )) 
z 1
z
Z(
G (s)
s
)
Tính đáp ứng dùng hàm truyền z
Y (z)

R(z)
D ( z )G h 0 G ( z )
1  D ( z ) G h 0 GH ( z )
Với các thông số: D(z) = 1, H(s) = 1, G(s) =1/s(s+1); T = 1, r(t) là hàm nấc
G h 0G ( z )  (
 (
z 1
z

)Z
z 1
z
)Z

z 1 
1
 G(s) 
 (
)Z  2


z
 s 

 s ( s  1) 

1
1 
z 1 
Tz
z
z
 1



(
)


2
2
T 


s
s  1
z
z 1
z e
s

 ( z  1)

z (T  1  e
T
)  (1  e
( z  1)( z  e
T
T
)
 Te
T
)
Tính đáp ứng dùng hàm truyền z
Với T=1
G h 0G ( z ) 
Y (z)

R(z)
Y (z) 
z 1
z
2
 1 . 3679 z  0 . 3679
2
0 . 3679 z  0 . 2642
z
2
 z  0 . 6321
 z  0 . 6321
 0 . 3679 z
1
 z
 0 . 8944 z
6
 0 . 8015 z
Dùng Matlab
>> lt = tf([1],[1 1 0]);
>> ltd = c2d(lt,1,'zoh')
>> htdk = feedback(ltd,1)
>> stairs(t,y)
z
0 . 3679 z  0 . 2642
z
>> [y,t]=step(ltdk);
0 . 3679 z  0 . 2642
2
 1 . 3996 z
0 . 3679 z

z
3
3
 2z
2
 1 . 3996 z
2
 0 . 2642 z
 1 . 6321 z  0 . 6321
4
 1 . 1469 z
7
Transfer function:
0.3679 z + 0.2642
Transfer function:
0.3679 z + 0.2642
----------------------
-----------------
z^2 - 1.368 z + 0.3679
z^2 - z + 0.6321
5
Tính đáp ứng dùng hàm truyền z
1.4
1.2
1
0.8
0.6
0.4
0.2
0
0
5
10
15
20
25
PTTT hệ liên tục thời gian rời rạc
Hệ liên tục có tín hiệu vào là u+(t) từ khâu ZOH, pttt hệ liên tục :

x ( t )  Ax ( t )  bu
y ( t )  cx ( t )  du
Giải pttt
x (t )  e
A ( t  t0 )
t
x (t 0 )   e

(t )
(t )
A ( t  )
bu

( ) d 
t0
u+(t) = u(kT), kT< = t < = (k+1)T
Trong khoảng thời gian kT< = t < = (k+1)T
x (t )  e
A ( t  kT )
t
x ( kT )  [  e
A ( t  )
bd  ]u ( kT )
kT
x (( k  1) t )  e
AT
x ( kT )  [
( k 1) T

e
A [( k  1 ) T   )
kT
 Fx ( kT )  gu ( kT )
Đặt  = -kT,  = T-
T
g  e
0
A
bd 
bd  ]u ( kT )
PTTT hệ liên tục thời gian rời rạc
Ví dụ: cho hệ rời rạc với
D(z) 
G (s) 
k1 z
2
 k2 z  k3
z ( z  1)
1
s ( s  5)
, T  0 .1s
Phương trình trạng thái hệ liên tục
0
A  
0
1 
0 
,
b

 1  , c  1
 5

 
Dùng định lý Cayley Hamilton tính eAt
F  e
AT

1
 
0

1
(1  e
5
e
 5T
 5T

1
 
0



T 1
 5
(1  e
)d

T
0 5
A
g  e
bd   
T
 5
0
d

e

0
e
At
0

1
 
0

1
(1  e
5
e
5t
5t




0 . 0787 
0 . 6065 

1
1  5T

1
(
T


e

5
5
5
  
1
 5T
(1  e
)



5



 0 . 0043 


 0 . 0787 




PTTT hệ liên tục thời gian rời rạc
PTTT khối D(z) dạng đồng hành thứ hai
 x 3 ( k  1) 
0
 x ( k  1)    1

 4

k3
0   x3 ( k ) 



 x (k )
k  k e(k )
1
 4

 2
1
 x3 ( k ) 
1 
  k1e ( k )
x
(
k
)
 4

u ( k )  0
e(k) là tín hiệu sai lệch: e(k) = r(k) - y(k) = r(k)-x1(k)
Phương trình trạng thái hệ kín
 x1 ( k  1)  1  0 . 0043 k 1

 
x 2 ( k  1)
 0 . 0787 k 1


 x 3 ( k  1)  
 k3

 
 x 4 ( k  1)    ( k 1  k 2 )
y ( k )  1 0
0
 x1 ( k ) 


x2 (k )

0 
 x3 ( k ) 


 x4 (k )
0 . 0787
0
0 . 6065
0
0
0
0
1
0 . 0043   x1 ( k ) 


0 . 0787 x 2 ( k )


0   x3 ( k ) 


1   x4 (k )
 0 . 0043 k 1 


0 . 0787 k 1

 r (k )


k3


 k1  k 2 
Dùng Matlab
b=
u1
>> T=0.1; K1=1; K2=1; K3=1;
>> A=[0 1;0 -5]; b =[0;1]; c=[1 0]; d=0;
>> AR =[0 0;1 1]; BR=[K3;K1+K2]; CR=[0 1]; DR=K1;
>> pttt1=ss (A,b,c,d);
>> pttt1r = c2d(pttt1,T,'zoh');
>> pttt2r = ss(AR,BR,CR,DR,T);
x1 0.004261
x2 0.07869
x3
1
x4
2
c=
x1 x2 x3 x4
>> PTTTK = feedback(pttt1r*pttt2r,1)
y1 1 0 0 0
a=
d=
x1
x1
x2
x3
x4
0.9957 0.07869
0 0.004261
x2 -0.07869 0.6065
0 0.07869
x3
-1
0
0
0
x4
-2
0
1
1
u1
y1 0
Sampling time: 0.1
Discrete-time model.
HÀM TRUYỀN Z HỆ CÓ TRỄ
Hàm truyền rời rạc:
Y (z)
U (z)

  G ho ( s ) G ( s ) e
 tds
  (1  z
1
1
t s 
) Z  G (s ) e d 
s

Đặt td=NTs+Ts , 0  1
Y (z)
U (z)
1
 (1  z ) z
N
1
 T s 
Z  G (s ) e s 
s

HÀM TRUYỀN Z HỆ CÓ TRỄ- VÍ DỤ
G (s ) 
Y (z)
1
sa
 (1  z
1
)z
U (z)

1
(1  z
1
)z
N
a
N
 e  Ts 

Z
 s (s  a ) 


 e  Ts e  Ts
Z

 s
sa






 e  LTs1 e
 g (t)  u (t  T )

L 
 g  ( t ) 1 u ( t   T )
 s 1
 s e   T s 
 Ts
1
1
 Ts  s  a 



e
1
L
 g 2 (t)  e
L 
  g 2 (t)  e
s

a


a ( t  T )
a ( t  T )
u (t  T )
u (t  T )
u(t) là hàm nấc đơn vị
Tìm biến đổi z các hàm rời rạc g1(kT) và g2(kT)
HÀM TRUYỀN Z HỆ CÓ TRỄ- VÍ DỤ

Z ( g 1 ( kT )) 
 g 1 ( kT ) z
k
z
1
z
2
z
3
 ...
k 0
1
 z (1  z
1
z
Z ( g 2 ( kT ))  e
2
z
3
1
1 
 ...)  z 
1
1 z
 a ( T   T ) 1
z
e
a (2T  T )  2
z
1


 z 1
e
 a (3T  T ) 3
z
 ...
Đặt thông số mới m=1-
Z ( g 2 ( kT ))  e
Sau cùng:
e
 amT
e
 amT
1

 amT  1
z e
z 1 e
1 
 aT 1
z e
 amT  aT  2
e
 2 aT  2
z
z
 ...
e
 amT  2 aT  3
e
z

 amT
 e
z 

 aT 1 
 aT
1  e z  z  e
1
1
Y (z)
U (z)
 a
(1  e
 amT
)z  e
 amT
N 1
(z  e
 aT
z
)
e
 aT

 ...
BẢNG BIẾN ĐỔI CÓ TRỄ
e
 Ts
1
z 1
s
e
 Ts
s
2e
z 1
2
 Ts
s
e
mT
T
3
 Ts
2
e
 Ts
 Ts
1
b  a
[
 Ts
s (s  a )
2
 aT
e
 amT
z  e
(1  e
s (s  a )
ae
2
 amT
z  e
( s  a )( s  b )
ae
( z  1)
 m 2 z 2  ( 2 m  2 m 2  1) z  ( m  1) 2 


3
( z  1)


s  a
e
T

 aT
 amT

e
z  e
)z  (e
( z  1)
2

amT  1
a ( z  1)
 bT
 amT
( z  1)( z  e
T
 bmT
 aT

 e
 aT
)
)
e
 amT
a (z  e
 aT
)
PTTT Hệ rời rạc có trễ
x ( t )  Ax ( t )  bu ( t  t d )
Xét hệ SISO có thời gian trễ ttdd
 NT   T , 0    1, m  1  
Nếu N = 0, ta thêm biến trạng thái xn+1
 x ( k  1) 
F




0
 x n  1 ( k  1) 
g1   x(k )   g 2 


u (k )
0   x n 1 ( k )   1 
T
F  e
AT
, g1  e
AmT
e
mT
A
bd  , g 2 
0
e
A
bd 
0
Nếu N>0,ta thêm N+1 biến trạng thái
 x ( k  1) 
F
 x n  1 ( k  1) 

0



 x n  2 ( k  1) 
 ..
:
   ..



 x n  N ( k  1) 
0


 0
 x n  N  1 ( k  1) 
g1
g2
0
..
0
1
0
..
..
..
..
..
..
..
..
..
0
0
0
0
0
0
..
..
0   x (k )  0 
  x n 1 ( k )   
0 

0
 x
 
(
k
)
n2


.. 
   : u (k )
..  :
 0 

1   xn N (k )   
  1 
0   x
 n  N 1 ( k ) 
PTTT Hệ rời rạc có trễ
VÍ DỤ
Hệ rời rạc
x 1 ( t )   x 1 ( t )  u ( t  1 . 5 )
N  1,
Fe
  0 .5,
1
,
T  1 sec
m  0 .5
 0 . 3679
0 .5
g2 
e

d  1  e
 0 .5
 0 . 3935
0
0 .5
g1  e
 0 .5
e

d  e
 0 .5
e
1
 0 . 2387
0
Phương trình rời rạc
x1(k+1)=0.3679x1(k)+0.2387u(k-2)+0.3935u(k-1)
Đặt biến x2(k)=u(k-2), x3(k)=u(k-1)
 x 1 ( k  1)   0 . 3679

 
x 2 ( k  1) 
0

 
 x 3 ( k  1)   0
y ( k )  [1
0
0 ]x ( k )
0 . 2387
0
0
0 . 3935 

1

0 
 x1 (k ) 


x 2 (k ) 


 x 3 ( k ) 
0 
 
0 u (k )
 
 1 