Nguy n Văn Quang – C đi n t 5 ơ
Bài t p PTTĐ mô t trên Matlab
Bài 1: Xe l a.
Đi u ki n ta có 1 h kh i l ng, lò xo và ch ng rung nh sau. ượ ư
Ph ng trình đ ng l c h c c a h th ng trên làươ
(1)
Bi n đ i Laplace t (1), ta có ế
Hàm truy n gi a d ch chuy n X(s) và đ u vào F(s) bây gi
L y các giá tr
M = 1kg
b = 10 N.s/m
k = 20 N/m
F(s) = 1
L p các giá tr trên vào hàm truy n ta có
Tr c h t ta kh o sát đáp ng b c thang đ n v c a h th ng h . T o m t m-file cóướ ế ơ
các l nh nh sau: ư
num=1;
den=[1 10 20];
plant=tf(num,den);
step(plant)
Ch y m-file này ta s có đ th nh sau. ư
Thay đ i các giá tr c a M, b, k ta có
num=1;
den=[1 5 100];
plant=tf(num,den);
step(plant)
Ch y m-file này ta s có đ th nh sau. H1 ư
Lu t đi u khi n P
. Hàm truy n đi u khi n vòng kín v i lu t đi u khi n P bây gi là:
Ch n Kp = 300 và thêm vào m-file đo n mã l nh sau:
Kp=300;
contr=Kp;
sys_cl=feedback(contr*plant,1);
t=0:0.01:2;
step(sys_cl,t)
Ch y m-file trong MATLAB ta đ c k t qu nh sau. ượ ế ư
Thay đ i Kp= 1000 và thêm vào vào m-file đo n mã l nh nh sau: ư
Kp=1000;
contr=Kp;
sys_cl=feedback(contr*plant,1);
t=0:0.01:2;
step(sys_cl,t)
Ch y m- file ta đ c k t qu nh sau: H2 ượ ế ư
Thay đ i Kp= 50 và thêm vào vào m-file đo n mã l nh nh sau: ư
Kp=50;
contr=Kp;
sys_cl=feedback(contr*plant,1);
t=0:0.01:2;
step(sys_cl,t)
Ch y m- file ta đ c k t qu nh sau: H3 ượ ế ư
Nh v y n u tăng P thì s làm gi m th i gian quá đ , tăng overshoot, và gi m steady-ư ế
state error. Và ng c l iượ
Đi u khi n t l -tích phân
Tr c khi xây d ng b đi u khi n PID, chúng ta xem xét t i lu t đi u khi n PI . Nhướ ư
b ng t ng k t, ta th y r ng lu đi u khi n I làm gi m th i gian quá đ , nh ng làm ế ư
tăng đ quá đi u ch nh và kéo dài th i gian đ n n đ nh c a h th ng, nh ng l i kh ế ư
đ c steady-state error. V i h th ng trên, chuy n thành hàm truy n vòng kín v i lu tượ
đi u khi n PI ta đ c hàm truy n m i: ượ
Bây gi ta ch n l i Kp = 30, Ki = 70. T o m-file v i các dòng l nh sau.
Kp=30;
Ki=70;
contr=tf([Kp Ki],[1 0]);
sys_cl=feedback(contr*plant,1);
t=0:0.01:2;
step(sys_cl,t)
Ch y ch ng trình trong MATLAB ta đ c đ th sau. ươ ượ
Gi nguyên giá tr Kp=30 và thay đ i Ki= 300 . T o dòng l nh trong m- file ta đ c ượ
Kp=30;
Ki=300;
contr=tf([Kp Ki],[1 0]);
sys_cl=feedback(contr*plant,1);
t=0:0.01:2;
step(sys_cl,t)
Ch y ch ng trình trong MATLAB ta đ c đ th sau. H4 ươ ượ
Nh vây là đúng nh quy lu t trong b ng đi u khi n I làm gi m th i gian quá đ ,ư ư
nh ng làm tăng đ quá đi u ch nh và kéo dài th i gian đ n n đ nh c a h th ng,ư ế
nh ng l i kh đ c steady-state error.ư ượ
Đi u khi n t l -tích phân-vi phân(PID)
Bây gi ta xét đ n b đi u khi n PID. Hàm truy n c a h th ng trên v i b đi u ế
khi n PID vòng kín bây gi là: