Tải bản đầy đủ (.pdf) (10 trang)

Giáo trình kỹ thuật điều khiển 20 ppsx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (397.81 KB, 10 trang )

197
d =
u1
y1 0

Continuous-time model.
Để chuyển đổi giữa các mô hình theo thời gian liên tục và mô hình theo thời
gian rời rạc, dùng các hàm
c2d và d2c

sysd = c2d(sysc,ts): chuyển đổi mô hình liên tục sys
c
thành mô hình rời
rạc
sys
d
, ở đó t
s
là thời gian lấy mẫu.

sysc = d2c(sysd): chuyển đổi mô hình rời rạc sys
d
thành mô hình liên tục
sys
c
.
Khi thực hiện các phép tính toán với các mô hình, các mô hình thường được
chuyển đổi một cách tự động về loại mô hình phù hợp với phép tính toán/hàm sẽ
được thực hiện.

Chú ý: việc chuyển đổi giữa các loại mô hình có thể gây ra sai số, vì vậy cần


tránh việc chuyển đổi nếu có thể.
A.3.3. Các thao tác với mô hình LTI
Phép thao
tác
Lệnh MATLAB Sơ đồ tương đương
Cộng
sys = sys1 + sys2 hoặc
sys = parallel(sys1,sys2)

sys
1

sys
2

+
+

Trừ
sys = sys1 − sys2

sys
1

sys
2

+



Nhân
sys = sys1*sys2 hoặc
sys = series(sys1,sys2)
sys
1

sys
2


Ghép
theo hàng
sys = [sys1 sys2]

sys
1

sys
2

+
+

198
Ghép
theo cột
sys = [sys1 ; sys2]

sys
1


sys
2


Phản hồi
âm
sys = feedback(sys1,sys2,−1)

sys
1

sys
2

+



Phản hồi
dương
sys = feedback(sys1,sys2,+1)

sys
1

sys
2

+

+

A.3.4. Xây dựng mô hình bằng hàm append và connect
Chúng ta có thể xây dựng một mô hình bằng cách kết nối nhiều khối (mô hình),
sử dụng các thao tác với mô hình được mô tả trong bảng trên. Tuy nhiên, điều có
thể thực hiện một cách nhanh chóng hơn bằng cách sử dụng hai hàm
append và
connect. Giả sử chúng ta muốn xây dựng một mô hình từ các mô hình sys
1
,
sys
2
, , sys
N
. Trước hết, dùng hàm append để gộp các mô hình này vào thành
một mô hình có các khối không kết nối với nhau:
»
sys = append(sys1,sys2, ,sysN);
sys
1

sys
2

sys
N


sys
1

1
2
2
3

Các biến vào và ra của
sys là các biến vào và ra của các mô hình sys
1
, sys
2
, ,
sys
N
, và được đánh số theo thứ tự xuất hiện của chúng trong hàm append. Sau
đó, sử dụng hàm connect để kết nối các khối của mô hình:
»
sysc = connect(sys,Q,inputs,outputs)
ở đó:

Q là ma trận định nghĩa kết nối giữa các khối. Phần tử đầu tiên trên mỗi
dòng của ma trận Q là số thứ tự của một lối vào và các phần tử tiếp theo là
số thứ tự, với dấu + hoặc −, của các lối ra sẽ được nối đến lối vào đó. Dấu
199
− có nghĩa là tín hiệu sẽ bị trừ đi tại điểm cộng tín hiệu. Các phần tử
không được dùng đến của ma trận
Q sẽ mang giá trị không.

inputs và outputs là hai vector dùng để xác định những biến vào và ra
nào của mô hình
sys sẽ là các biến vào và ra của mô hình sys

c
.
Trong ví dụ sau đây, mô hình như trong hình vẽ dưới được xây dựng từ ba mô
hình đã được định nghĩa trước là
sys
1
, sys
2
và sys
3
:

sys
2

sys
3

+


sys
1

1
2
3
4
1
2

3

»
sys = append(sys1,sys2,sys3);
» Q = [3 1 –3 ; 4 2 0];
» inputs = [1 2];
» outputs = 2;
» sysc = connect(sys,Q,inputs,outputs);
A.3.5. Trễ của tín hiệu vào
CST cho phép tính tới trễ của tín hiệu vào cho các hệ thống theo thời gian liên
tục trong giới hạn kiểm soát được. Trong không gian trạng thái, một hệ thống
theo thời gian liên tục có độ trễ của các tín hiệu vào đều là
τ
(tính bằng giây)
được mô tả bằng hệ phương trình:
)()()(
)()(
)(
τ
τ
−+=
−+=
ttt
tt
dt
td
DuCxy
BuAx
x


Trong các mô hình sử dụng hàm chuyển, hàm chuyển của hệ thống với độ trễ
τ
là G(s)e
-s
τ
, ở đó G(s) là hàm chuyển của hệ thống trong trường hợp không có
trễ. Nếu mỗi kênh tín hiệu vào có một độ trễ riêng, biểu diễn trong không gian
trạng thái có dạng:
)]( ; ; )( ; )()()(
)]( ; ; )( ; )()(
)(
2211
2211
nn
nn
tutututt
tututut
dt
td
τττ
τττ
−−−+=
−−−+=
D[Cxy
B[Ax
x

Trong CST, để đặt độ trễ của tín hiệu vào cho một mô hình, ta có thể dùng
lệnh set cho thuộc tính InputDelay của mô hình, ví dụ:
»

G = tf([1 0],[1 2 10])
Transfer function:
s

s^2 + 2 s + 10
» set(G,’InputDelay’,0.05) % đặt trễ của tín hiệu vào là 0,05
» G
200
Transfer function:
s
exp(-0.05*s) *
s^2 + 2 s + 10
» sys = ss(-1,[1 2],[2 ; 1],0) % mô hình với 2 biến vào, 2 biến ra
a =
x1
x1 -1

b =
u1 u2
x1 1 2

c =
x1
y1 2
y2 1

d =
u1 u2
y1 0 0
y2 0 0


Continuous-time model.
» set(sys,’InputDelay’,[0.01 0.02]) % trễ cho 2 kênh vào là 0,01 và 0,02
» sys
a =
x1
x1 -1

b =
u1 u2
x1 1 2

c =
x1
y1 2
y2 1

d =
u1 u2
y1 0 0
y2 0 0

Input delays (listed by channel): 0.01 0.02

Continuous-time model.
201

A.4. Phân tích mô hình
A.4.1. Đáp ứng của hệ thống theo thời gian
Để mô phỏng đáp ứng theo thời gian của hệ thống biểu diễn bởi một mô hình,

chúng ta có thể dùng các lệnh sau:

step(sys): tính toán và vẽ đồ thị đáp ứng theo thời gian của hệ thống biểu
diễn bởi mô hình sys với tín hiệu vào của hệ thống là hàm nhảy bậc đơn
vị. Để vẽ đồ thị đáp ứng của mô hình sys trong một khoảng thời gian từ 0
đến một thời điểm t, dùng lệnh step(sys,t). Ví dụ: step(sys,1) sẽ vẽ đồ thị
c
ủa đáp ứng trong 1 giây đầu.

step(sys1,sys2, ): tính toán và vẽ đồ thị đáp ứng theo thời gian của các hệ
thống biểu diễn bởi nhiều mô hình trong cùng một hình vẽ với tín hiệu
vào của hệ thống là hàm nhảy bậc đơn vị.

y = step(sys,t): tính toán các giá trị rời rạc của đáp ứng theo thời gian của
hệ thống biểu diễn bởi mô hình sys với tín hiệu vào của hệ thống là hàm
nhảy bậc đơn vị, theo vector thời gian t. Điều đó có nghĩa y là một vector
mà mỗi phần tử y(i) là giá trị của đáp ứng tại thời điểm t(i).

impulse(sys): tính toán và vẽ đồ thị đáp ứng theo thời gian của hệ thống
biểu diễn bởi mô hình sys với tín hiệu vào của hệ thống là hàm xung đơn
vị. Để vẽ đồ thị đáp ứng của mô hình sys trong một khoảng thời gian từ 0
đến một thời điểm t, dùng lệnh impulse(sys,t). Ví dụ: impulse(sys,1) sẽ
vẽ đồ thị của đáp
ứng trong 1 giây đầu.

impulse(sys1,sys2, ): tính toán và vẽ đồ thị đáp ứng theo thời gian của
các hệ thống biểu diễn bởi nhiều mô hình trong cùng một hình vẽ với tín
hiệu vào của hệ thống là hàm xung đơn vị.

y = impulse(sys,t): tính toán các giá trị rời rạc của đáp ứng theo thời gian

của hệ thống biểu diễn bởi mô hình sys với tín hiệu vào của hệ thống là
hàm xung đơn vị, theo vector thời gian t. Điều đó có nghĩa y là một vector
mà mỗi phần tử y(i) là giá trị của đáp ứng tại thời điểm t(i).

lsim(sys,u,t): tính toán và vẽ đồ thị đáp ứng theo thời gian của hệ thống
biểu diễn bởi mô hình sys với tín hiệu vào của hệ thống được biểu diễn bởi
một hàm rời rạc u theo vector thời gian t. Điều đó có nghĩa u là một
vector mà mỗi phần tử u(i) là giá trị của tín hiệu vào tại thời điểm t(i). Ví
dụ, để vẽ đồ thị đáp ứng theo thời gian của hệ thống biểu diễn bởi mô
hình sys với tín hiệu vào là hàm u(t) = sin(4
π
t) trong khoảng [0,8] với
bước thời gian là 0,1s, dùng các lệnh sau:
»
t = [0:0.1:8];
» u = sin(4*pi*t);
» lsim(sys,u,t);
Nếu sys là một mô hình rời rạc thì khoảng thời gian giữa các điểm trong t
cần phù hợp với khoảng thời gian lấy mẫu của sys. Nếu sys là một mô hình
202
có nhiều biến vào thì u là một ma trận, mỗi dòng tương ứng với một biến
vào.

lsim(sys1,sys2, ,u,t): tính toán và vẽ đồ thị đáp ứng theo thời gian của
các hệ thống biểu diễn bởi nhiều mô hình trong cùng một hình vẽ với tín
hiệu vào của hệ thống được biểu diễn bởi một hàm rời rạc u theo vector
thời gian t.

initial(sys,x0): tính toán và vẽ đồ thị đáp ứng theo thời gian của hệ thống
biểu diễn bởi một mô hình trong không gian trạng thái sys ở điều kiện

không có tác động từ bên ngoài (các tín hiệu vào của hệ thống đều bằng
không), ở đó x
0
là vector chứa các giá trị khởi đầu của các biến trạng thái.
A.4.2. Các điểm không và điểm cực của hàm chuyển
Để tính toán và vẽ đồ thị các điểm không và điểm cực của hàm chuyển của một
hệ thống, chúng ta có thể dùng các hàm sau:

z = zero(sys): hàm trả về vector z là giá trị các điểm không của hàm
chuyển của hệ thống biểu diễn bởi mô hình sys.

p = pole(sys): hàm trả về vector p là giá trị các điểm cực của hàm chuyển
của hệ thống biểu diễn bởi mô hình sys.

pzmap(sys): vẽ đồ thị các điểm không và điểm cực của hàm chuyển của
hệ thống biểu diễn bởi mô hình sys trong mặt phẳng s (mặt phẳng phức).
A.4.3. Quỹ tích nghiệm của phương trình đặc trưng của một hệ thống phản hồi
khi hệ số phản hồi thay đổi
Trong hệ thống điều khiển phản hồi biể
u diễn ở hình vẽ dưới, đáp ứng của hệ
thống có thể điều chỉnh được bằng cách thay đổi hệ số phản hồi K.

G(s)
K
R(s) C(s)
+


Để vẽ đồ thị quỹ tích của các nghiệm của phương trình đặc trưng của hệ
thống trên khi K thay đổi từ 0 đến +∞, sử dụng lệnh sau:

»
rlocus(sys)
ở đó sys là mô hình của hệ thống có hàm chuyển là G(s). Trên đồ thị này, khi
chúng ta nhấn chuột vào một điểm trên các đường quỹ tích của các nghiệm,
chương trình sẽ hiển thị giá trị của K (gain) và nghiệm của phương trình đặc
trưng (pole) tại điểm đó cùng với các giá trị của các số đo hiệu suất của tín hiệu
ra tương ứng, bao gồm phầ
n trăm quá mức (percent overshoot), hệ số cản
(damping) và tần số tự nhiên (frequency) của đáp ứng.


203
A.4.4. Các phương pháp đáp ứng tần số
Các hàm và lệnh sau đây của CST được sử dụng cho việc phân tích hệ thống
bằng các phương pháp đáp ứng tần số:

freqresp(sys,w): tính toán đáp ứng tần số của một hệ thống biểu diễn bởi
mô hình sys tại các tần số được chỉ định bởi vector w. Hàm trả về một
vector chứa các giá trị của đáp ứng tần số tương ứng với các tần số trong
w.

bode(sys): vẽ đồ thị Bode của một hệ thống biểu diễn bởi mô hình sys.

nyquist(sys): vẽ đồ thị Nyquist của một hệ thống biểu diễn bởi mô hình
sys.

nichols(sys): vẽ biểu đồ Nichols của một hệ thống biểu diễn bởi mô hình
sys.

[gm,pm,wg,wp] = margin(sys): tính toán dự trữ gia lượng và dự trữ pha

của một hệ thống được biểu diễn bởi mô hình sys và các tần số tương ứng.
Các giá trị trả về bao gồm dự trữ gia lượng gm, dự trữ pha pm, tần số wg
tại đó góc pha bằng −180
o
và wp là tần số tại đó độ lớn của đáp ứng tần số
bằng một. Nếu chúng ta gọi lệnh margin(sys) (không có các biến chứa
các giá trị trả về), đồ thị Bode của hệ thống được biểu diễn bởi mô hình
sys sẽ được vẽ, trên đó có các đường chỉ ra dự trữ gia lượng (tính theo
dB), dự trữ pha và các tần số tương ứng.
A.5. Thi
ết kế hệ thống điều khiển
A.5.1. Thiết kế trong miền tần số
Lệnh sisotool của CST sẽ mở một giao diện đồ họa cho phép người sử dụng thiết
kế một hệ thống điều khiển phản hồi đơn biến (SISO) bằng các phương pháp bù
trong miền tần số, bao gồm phương pháp sử dụng quỹ tích nghiệm và phương
pháp bù trên
đồ thị Bode. Hệ thống phản hồi được thiết kế bằng sisotool bao gồm
bốn thành phần: quá trình G, bộ tiền lọc (prefilter) F, mạch bù C và khối phản
hồi H. Mạch bù C có thể được đặt phía trước G (bù nối tiếp) hoặc đặt trên nhánh
phản hồi (bù phản hồi). Để thay đổi giữa hai mô hình bù đó, chúng ta chỉ cần
nhấn chuột vào nút FS (Feedback Structure) trong cử
a sổ con biểu diễn mô hình
hệ thống. Nút +/− trong cửa sổ con đó cho phép chuyển đổi giữa hai kiểu phản
hồi âm và dương (Hình A.2).
Để sử dụng sisotool nhằm thiết kế hệ thống điều khiển phản hồi cho một quá
trình được biểu diễn bằng mô hình G, chúng ta có thể sử dụng lệnh sau:
»
sisotool(G)
Khi đó hàm chuyển của bộ lọc F và khối phản hồi H đều sẽ được đặt bằng một.
Hàm chuyển khởi đầu của mạch bù C cũng được đặt bằng một. Nếu chúng ta

muốn khởi đầu với một mạch bù C có hàm chuyển khác một, sử dụng lệnh sau:
»
sisotool(G,C)
hoặc sử dụng lệnh:
204
» sisotool(G,C,H,F)
để gán thêm các mô hình cho khối phản hồi và bộ tiền lọc.


Hình A.2. Giao diện đồ họa của SISOtool
Sau khi cửa sổ của sisotool đã mở ra, trong cửa sổ đó sẽ hiển thị đồ quỹ tích
nghiệm của phương trình đặc trưng của hệ thống và đồ thị Bode của đáp ứng tần
số của hàm chuyển vòng hở. Chúng ta có thể thiết kế trực tiếp trên các đồ thị này
bằng cách dùng chuột đặt ví trí cho các điểm cực trong đồ thị quỹ tích nghiệ
m
hay thay đổi độ lớn của đáp ứng tần số để điều chỉnh dự trữ pha và dự trữ gia
lượng trên đồ thị Bode. Hàm chuyển của mạch bù C sẽ được thay đổi tương ứng.
Ngoài ra, chúng ta còn có thể thay đổi trực tiếp hàm chuyển của mạch bù C hay
bộ lọc F bằng cách chọn Compensators/Edit trên menu của sisotool. Kết quả của
nhữ
ng thay đổi đó sẽ được thể hiện trên các đồ thị.
A.5.2. Thiết kế trong không gian trạng thái
Phương pháp thiết kế hệ thống phản hồi trong không gian trạng thái có thể thực
hiện được với các hàm sau đây của CST:

ctrb(sys): tính ma trận của tính điều khiển được của một hệ thống được
biểu diễn bởi mô hình sys, ở đó sys phải là một mô hình trong không gian
trạng thái.

obsv(sys): tính ma trận của tính quan sát được của một hệ thống được biểu

diễn bởi mô hình sys, ở đó sys phải là một mô hình trong không gian trạng
thái.

place(A,B,p): tính ma trận hệ số phản hồi H để hệ thống điều khiển phản
hồi được biểu diễn bằng phương trình vi phân của vector trạng thái sau
đây:
205
BrxBHA
x
+−= )(
dt
d

có các điểm cực tại các giá trị định trước cho bởi vector p. Nói một cách
khác, hàm place sẽ tính ma trận H sao cho p chính là vector với các phần
tử chính là các giá trị riêng của ma trận (A − BH). Khác với công thức
Ackermann được giới thiệu ở Chương XI vốn chỉ sử dụng được cho các
hệ thống đơn biến, hàm place cho phép chúng ta sử
dụng phương pháp đặt
điểm cực cho cả các hệ thống đa biến.

206
TÀI LIỆU THAM KHẢO

1.
Richard C. Dorf, Modern Control Systems (5
th
edition). Addison-Wesley
Publishing, 1989.
2.

Richard C. Dorf, Robert H. Bishop, Modern Control Systems (9
th
edition).
Addison-Wesley Publishing, 2000.
3.
Chi-Tsong Chen, Analog and Digital Control System Design: Transfer
Functions, State-Space, and Algebraic Methods. Saunders College
Publishing, 1993.
4.
Gene F. Franklin, J. David Powell, Abbas Emami-Naeini, Feedback
Control of Dynamic Systems (4
th
edition). Prentice Hall, 2002.
5.
MATLAB Full Product Family Help for Release 12.1.
6.
MATLAB Control System Toolbox - User's Guide (Version 4.1).
7.
Thomas F. Weiss, MATLAB Tutorial for Systems and Control Theory.
MIT, 1999.

×