Professional Documents
Culture Documents
48-Trịnh Anh Quyền-2020603185
48-Trịnh Anh Quyền-2020603185
Khoa: Cơ Khí
Hà Nội – 2020
PHIẾU HỌC TẬP CÁ NHÂN/NHÓM
I. Thông tin chung
Tên: Trịnh Anh Quyền
Lớp: CĐT 2
Khóa: K15
II.Nội dung học tập
1.Tên chủ đề : Mô hình hóa và khảo sát chất lượng, và thiết kế bộ điều
khiển của hệ thống.
3. Sản phẩm nghiên cứu : Bài thu hoạch và các chương trình mô phỏng
trên Matlab.
III. Nhiệm vụ học tập
1. Hoàn thành tiểu luận, bài tập lớn, đồ án/dự án theo đúng thời gian quy
định
2. Báo cáo sản phẩm nghiên cứu theo chủ đề được giao trước giảng viên
và những sinh viên khác
IV. Học liệu thực hiện tiểu luận, bài tập lớn, đồ án/dự án
1. Tài liệu học tập: Sách Cơ sở hệ thống tự động, tài liệu Matlab
2. Phương tiện, nguyên liệu thực hiện tiểu luận, bài tập lớn, đồ án/dự án
(nếu có): Máy tính.
KHOA/TRUNG TÂM GIÁO VIÊN HƯỚNG DẪN
MỤC LỤC
MỤC LỤC ............................................................................................................ 4
LỜI NÓI ĐẦU ..................................................................................................... 5
TỔNG QUAN ...................................................................................................... 6
1.1.Khái quát về cơ sở hệ thống tự động ........................................................... 6
1.1.1.Các thành phần cơ bản của hệ thống điều khiển.................................... 6
Phần 1: KẾT QUẢ NGHIÊN CỨU ................................................................. 8
2.1.Đề bào và nội dung cần nghiên cứu. ............................................................ 8
2.1.1.Xác định hàm truyền của hệ thống và các dữ kiện bài cho ................... 8
2.2.Mô hình hóa hệ thống. ................................................................................. 9
2.2.1.Phân tích và mô hình hóa theo hệ phi tuyến: ....................................... 10
2.2.2.Phân tích và mô hình hóa theo hệ tuyến tính:...................................... 10
2.3.Khảo sát sự phụ thuộc của đáp ứng hệ thống theo khối lượng cần lắc thay
đổi từ 0.1 đến 1.0 kg......................................................................................... 17
2.4.Thiết điều khiển sớm pha khảo sát sự phụ thuộc chất lượng điều khiển vị
trí theo các tham số điều khiển sớm pha. ......................................................... 20
2.5.Xây dựng mô hình trong matlab simulink ................................................. 27
Phần 2: KẾT LUẬN VÀ BÀI HỌC KINH NGHIỆM ................................. 32
3.1.Kết Luận ..................................................................................................... 32
3.2.Bài học kinh nghiệm .................................................................................. 32
TÀI LIỆU THAM KHẢO ................................................................................ 33
4.1.Tài liệu tham khảo...................................................................................... 33
4.2.Tài liệu học tập ........................................................................................... 33
LỜI NÓI ĐẦU
-Sự phát triển của hệ thống Cơ – điện tử là sự phát triển của các ngành kỹ
thuật điện tử, công nghệ thông tin, ngành kỹ thuật điều khiển và tự động hoá
đã và đang đạt được nhiều tiến bộ mới. Tự động hoá quá trình sản xuất đang
được phổ biến rộng rãi trong các hệ thống công nghiệp trên thế giới nói chung
và ở Việt Nam nói riêng. Mô hình điều khiển con lắc ngược là một mô hình thí
nghiệm hệ thống Cơ – điện tử lý tưởng cho việc ứng dụng thuật toán điều khiển
hiện đại và kỹ thuật điều khiển máy tính. Những năm gần đây lý thuyết điều
khiển mờ có những bước phát triển vượt bậc và ngày càng được ứng dụng nhiều
vào thực tiễn. Việc ứng dụng lý thuyết điều khiển mờ vào điều khiển mô hình
con lắc ngược sẽ mang đến nhiều kiến thức mới và kinh nghiệm bổ ích.
-Hệ thống con lắc ngược là một hệ thống điều khiển kinh điển, nó được sử
dụng trong giảng dạy và nghiên cứu ở hầu hết các trường đại học trên khắp thế
giới. Hệ thống con lắc ngược là mô hình phù hợp để kiểm tra các thuật toán
điều khiển hệ phi tuyến cao trở lại ổn định. Đây là một hệ thống SIMO (Single
Input Multi Output) điển hình vì chỉ gồm một ngõ vào là lực tác động cho động
cơ mà phải điều khiển cả vị trí và góc lệch con lắc ngược sao cho thẳng đứng
(ít nhất hai ngõ ra). Đề tài “Mô hình hóa và khảo sát chất lượng, và thiết kế
bộ điều khiển của hệ thống.” Giúp sinh viên vận dụng sáng tạo những kiến
thức học trên trường lớp, rèn luyện các kỹ năng trong học tập.
TỔNG QUAN
1.1.Khái quát về cơ sở hệ thống tự động
-Khái niệm điều khiển là gì?
Một câu hỏi khá phổ biến với những người mới làm quen với lý thuyết
điều khiển là "Điều khiển là gì?”
+Định nghĩa: Điều khiển là quá trình thu thập thông tin, xử lí thông tin và
tác động lên hệ thống để đáp ứng của hệ thống gần với mục đích định
trước. Điều khiển tự động là điều khiển không cần sự tác động của con người.
-Tại sao phải cần điều khiển?
Có hai lý do chính chúng ta cần phải điều khiển là con người không thỏa
mãn với đáp ứng của hệ thống và con người muốn hệ thống tăng độ chính
xác, tăng năng suất, tăng hiệu quả kinh tế
Ví dụ:
+ Điều chỉnh độ ẩm và nhiệt độ của các căn hộ và các cao ốc tiện nghi
+Trong vận tải:cần điều khiển các xe đến nơi khác an toàn và chính xác
+Trong công nghiệp: sản xuất đòi hỏi sự an toàn, độ chính xác và hiệu
quả kinh tế
- Nội dung 1: Mô hình hóa hệ thống, tìm đáp ứng hệ thống theo thời gian -
cần lắc thay đổi thừ 0.1 đến 1.0 kg - Mục tiêu/chuẩn đầu ra: L2
- Nội dung 3: Thiết điều khiển sớm pha khảo sát sự phụ thuộc chất lượng điều
khiển vị trí theo các tham số điều khiển sớm pha - Mục tiêu/chuẩn đầu ra: L3
-Tiến hành tổng hợp các lực tác động vào xe con lắc theo phương ngang ta được
các phương trình về chuyển động:
-Tổng hợp lực của thanh con lắc theo chiều ngang ta được:
-Tổng hợp các lực vuông góc với thanh con lắc:
Psin(𝜃 ) + Ncos( 𝜃 ) - mgsin( 𝜃 ) = ml𝜃̈ + m𝑥̈ cos(𝜃 ) (1.4)
-Để làm triệt tiêu hai điều kiện P và N ta tiến hành tổng hợp moment tại trọng
tâm thanh con lắc:
(1.8)
cos(𝜃 ) = cos(𝜙 + 𝜋 ) = -1
sin(𝜃 ) = sin( 𝜙 + 𝜋 ) = - 𝜙
𝜃̇ 2 = 𝜙̇ 2 = 0
(𝐼 + 𝑚𝑙 2 )𝑠 2 − 𝑚𝑔𝑙
𝑋(𝑠) = 𝜙(𝑠)
𝑚𝑙𝑠 2
=> { 𝑚𝑙𝑠 2
(1.11)
𝜙(𝑠) = 𝑋(𝑠)
(𝐼 + 𝑚𝑙 2 )𝑠 2 − 𝑚𝑔𝑙
ml
ϕ(s) s
q
=
F(s) 3 b(I + ml2 ) 2 (M + m)mgl bmgl
s + s − s−
q q q
X(s) (I + m𝑙 2 )𝑠 2 − gml
=
F(s) b(I + ml2 ) 3 (M + m)mgl 2 bmgl
s4 + s − s − s
q q q
M=0.5;
m=0.2;
b=0.1;
l=0.3;
I=0.006;
g=9.8;
q=(M+m)*(I+m*l^2)-(m*l)^2;
num=[m*l/q 0];
ton=tf(num,den)
Code matlab:
M=0.5;
m=0.2;
b=0.1;
l=0.3;
I=0.006;
g=9.8;
q=(M+m)*(I+m*l^2)-(m*l)^2;
num=[m*l/q 0];
ton=tf(num,den);
t=0:0.001:1;
step (ton,t);
grid on
M=0.5;
m=0.2;
b=0.1;
l=0.3;
I=0.006;
g=9.8;
q=(M+m)*(I+m*l^2)-(m*l)^2;
num=[(I+m*l^2) 0 -g*m*l];
def=tf(num,den)
Code matlab:
M=0.5;
m=0.2;
b=0.1;
l=0.3;
I=0.006;
g=9.8;
q=(M+m)*(I+m*l^2)-(m*l)^2;
num=[(I+m*l^2) 0 -g*m*l];
t=0:0.001:1;
step (def,t);
grid on
+Nhận xét:
Lúc này con lắc đang ở vị trí cân bằng phía trên, đồ thị tăng vọt vì Φ(s)
đang xét ở mức rất nhỏ, nhưng khi bị lực tác dụng con lắc bị rơi xuống khiến
góc Φ(s) rất lớn. Hệ thống mất ổn định ngay khi có lực tác động vào. Độ vọt lố
của con lắc rất lớn.
+Kết luận:
Khi chưa có bộ điều khiển, khi có lực tác động vào, con lắc không giữ được
vị trí cân bằng ở phía trên tức 𝜃 = 𝜋. Vậy nên yêu cầu cần có bộ điều khiển để hệ
thống được ổn định.
2.3.Khảo sát sự phụ thuộc của đáp ứng hệ thống theo khối lượng cần
lắc thay đổi từ 0.1 đến 1.0 kg.
-Khi khối lượng cần lắc thay đổi sẽ dẫn đến sự thay đổi của hệ thống và đáp
ứng đầu ra của hệ thống. Do vậy ta cần khảo sát sự phụ thuộc của đáp ứng hệ
thống theo sự thay đổi của khối lượng cần lắc. Từ đó đưa ra giá trị khối lượng
cần lắc phù hợp nhất. Ta sẽ nhập code để khảo sát sự thay đổi của đáp ứng đầu
ra khi khối lượng của cần lắc thay đổi. Thay giá trị m = 0.1; 0.2; 0.3; 0.4; 0.5;
0.6; 0.7; 0.8; 0.9; 1.0 kg.
-Biểu diễn sự thay đổi của vị trí cần lắc bằng matlab
Code matlab:
ks=[0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1];
M=0.5;
m=0.2;
b=0.1;
l=0.3;
I=0.006;
g=9.8;
for I=ks;
m=m+I;
q=(M+m)*(I+m*l^2)-(m*l)^2;
num=[m*l/q 0];
ton=tf(num,den);
t=0:0.001:1;
step(ton,t);
hold on;
end;
legend('m=0.1','m=0.2','m=0.3','m=0.4','m=0.5','m=0.6','m=0.7','m=0.8','m=0.9','
m=1.0');
Code matlab:
ks=[0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1];
M=0.5;
m=0.2;
b=0.1;
l=0.3;
I=0.006;
g=9.8;
for I=ks;
m=m+I;
q=(M+m)*(I+m*l^2)-(m*l)^2;
num=[(I+m*l^2) 0 -g*m*l];
def=tf(num,den);
hold on;
t=0:0.01:5;
impulse(def,t);
axis([0 3 0 60]);
end;
legend('m=0.1','m=0.2','m=0.3','m=0.4','m=0.5','m=0.6','m=0.7','m=0.8','m=0.9','
m=1.0');
-Nhận xét:
+Độ dịch chuyển của xe con lắc giảm dần khi khối lượng cần lắc tăng lên.
+Khi khối lượng cần lắc càng tăng thì hệ thống càng nhanh mất đi tính ổn định.
2.4.Thiết điều khiển sớm pha khảo sát sự phụ thuộc chất lượng điều
khiển vị trí theo các tham số điều khiển sớm pha.
Bước 1: Dùng phương pháp quỹ đạo nghiệm số bằng cách sử dụng lệnh rlocus()
trên phần mềm Matlab.
Code matlab:
M=0.5;
m=0.2;
b=0.1;
l=0.3;
I=0.006;
g=9.8;
q=[(M+m)*(I+m*l^2)-(m*l)^2];
num=[m*l/q 0];
ton=tf(num,den);
rlocus(ton);
-Ta thấy rằng 1 nhánh của quỹ đao nghiệm số không nằm hoàn toàn bên phải
mặt phẳng phức nên hệ kín không ổn định. Ở bộ điều khiển ta cần thêm các cực
và zero để hệ thống ổn định.
+Đề xuất: Ta cần thêm 1 bộ điều khiển sớm pha và khảo sát cực, zero của hệ
thống có dạng.
𝑠+𝑧1
C(s)=K
𝑠+𝑝1
𝑧1 = 1, 𝑝1 = 0.001
Code matlab:
M = 0.5;
m = 0.2;
b = 0.1;
I= 0.006;
g = 9.8;
l = 0.3;
q = (M+m)*(I+m*l^2)-(m*l)^2;
ton=tf(num,den);
rlocus(contr*ton);
[z,k] = pzmap(ton*contr);
Hình 1.9: Quỹ đạo nghiệm số của hệ khi đặt bộ điều khiển sớm pha
-Chọn k= 300
Viết tiếp tục vào code matlab:
M=0.5;
m=0.2;
b=0.1;
l=0.3;
I=0.006;
g=9.8;
q=[(M+m)*(I+m*l^2)-(m*l)^2];
num=[m*l/q 0];
k=300;
z1=1;p1=0.0001;
z2=1;p2=50;
num1=[1 z1];
den1=[1 p1];
num2=[1 z2];
den2=[1 p2];
numa=conv(num1,num2);
dena=conv(den1,den2);
pon=tf(numa,dena);
huen=feedback(tinh,k*pon);
impulse(huen);
Hình 1.10:Kết quả mô phỏng khi chưa hoàn thiện bộ điều khiển
+Ta thấy: hệ thống đã ổn định tại vị trí 𝜙=0 nhưng độ vọt lố 0.17rad = 9.74° thời
gian xác lâp khoảng 8s, khó có thể chấp nhận được, vậy nên ta tiếp tục thay đổi
các thông số hệ thống để hệ thống đảm bảo chất lượng hơn.
M=0.5;
m=0.2;
b=0.1;
l=0.3;
I=0.006;
g=9.8;
q=[(M+m)*(I+m*l^2)-(m*l)^2];
num=[m*l/q 0];
tinh=tf(num,den);
k=1000;
z1=10;p1=0.0001;
z2=5;p2=50;
num1=[1 z1];
den1=[1 p1];
num2=[1 z2];
den2=[1 p2];
numa=conv(num1,num2);
dena=conv(den1,den2);
pon=tf(numa,dena);
huen=feedback(tinh,k*pon);
impulse(huen);
Hình 1.11:Kết quả mô phỏng khi hoàn thiện bộ điều khiển
Hệ thống đã ổn định với độ vọt lố khoảng 0,0075rad = 0.46°, thời gian ổn định
khoảng 0.8s, các thông số có thể chấp nhận được.
Vậy bộ điều khiển của ta có dạng :
𝑠+10 𝑠+5
C(s)=1000
𝑠+0.0001 𝑠+50
𝑑2 𝑥 1 1 𝑑𝑥
= ∑ 𝐹𝑥 = (𝐹 − 𝑁 − 𝑏 )
𝑑𝑡 2 𝑀 𝑀 𝑑𝑡
𝑐𝑎𝑟𝑡
𝑑2 𝜃 1 1
= ∑ 𝜏 = (𝑁𝐿 cos(𝜃 ) + 𝑃𝐿 sin(𝜃 ))
𝑑𝑡 2 𝐼 𝐼
𝑝𝑒𝑛𝑑
-Mô hình hóa các phương trình x y bổ xung cho cần lắc:
𝑑 2 𝑥𝑝
𝑚 = ∑ 𝐹𝑥 = 𝑁
𝑑𝑡 2
𝑝𝑒𝑛𝑑
𝑑2 𝑦𝑝
𝑚 = ∑ 𝐹𝑦 = 𝑃 − 𝑚𝑔
𝑑𝑡 2
𝑝𝑒𝑛𝑑
𝑑 2 𝑦𝑝
=>P = m( + 𝑔)
𝑑𝑡2
𝑑𝑥𝑝 𝑑𝑥 𝑑𝜃
= − 𝐿 cos(𝜃)
𝑑𝑡 𝑑𝑡 𝑑𝑡
𝑑 2 𝑥𝑝 𝑑2 𝑥 𝑑𝜃 2 𝑑2 𝜃
= + 𝐿 sin(𝜃) ( ) − 𝐿 cos(𝜃)
𝑑𝑡 2 𝑑𝑡 2 𝑑𝑡 𝑑𝑡 2
+ 𝑦𝑝 = 𝐿 cos(𝜃)
𝑑𝑦𝑝 𝑑𝜃
= −𝐿 sin(𝜃)
𝑑𝑡 𝑑𝑡
𝑑 2 𝑦𝑝 𝑑𝜃 ^2 𝑑2 𝜃
= −𝐿 cos(𝜃 ) ( ) − 𝐿 sin(𝜃)
𝑑𝑡 2 𝑑𝑡 𝑑𝑡 2
-Xây dựng mô hình trong simulink
Ta xây dựng được mô hình mô phỏng hệ thống xe con lắc ngược bằng
simulink như sau:
-sử dụng bộ tạo xung để tạo ra một xung lớn nhưng hữu hạn trong một thời gian
nhỏ nhưng hữu hạn. Độ lớn của xung nhân với độ dài của xung sẽ bằng 1.
-Ta sẽ thấy một số thông báo lỗi liên quan đến các vòng lặp đại số. Do ràng
buộc đại số trong hệ thống này, có những vòng khép kín trong mô hình mà
không có động lực học phải được giải quyết hoàn toàn tại mỗi bước thời gian
trước khi xem xét động lực học. Nói chung, đây không phải là một vấn đề,
nhưng thường các vòng lặp đại số làm chậm quá trình mô phỏng và có thể gây
ra các vấn đề thực sự nếu tồn tại sự không liên tục trong vòng lặp (chẳng hạn
như độ bão hòa, hàm dấu, v.v.)
*Nhận xét:
-Ta nhận thấy rằng con lắc dao động điều hòa do va chạm, và xe máy chuyển
động cùng với chuyển động giật dần đều do con lắc. Các mô phỏng này khác rất
nhiều so với các mô phỏng vòng hở matlabvì Simulink cho phép các hệ thống
phi tuyến hoàn toàn.
Phần 2: KẾT LUẬN VÀ BÀI HỌC KINH NGHIỆM
3.1.Kết Luận
Khi độ dao động vượt quá mức cho phép chúng ta sử dụng mô hình hóa hệ
thống lên matlab để tìm độ dao động và sau đó thiết kế bộ điều khiển sớm pha
để làm giảm đi sự dao động lớn này. Muốn làm được điều đó chúng ta có thể
thay đổi các thộng số Kc,T, a. Nhưng rất có thể sẽ nhận được phản hồi để có
phần trăm vượt quá lớn hoặc thời gian giải quyết rất lâu.