ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CƠ KHÍ BỘ MÔN CƠ ĐIỆN TỬ CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM ĐỘC LẬP – TỰ DO – HẠNH PHÚC NHIỆM VỤ ĐỒ ÁN MÔN HỌC THIẾT KẾ BỘ ĐIỀU KHIỂN CON LẮC NGƯỢC Giáo viên hướng dẫn:PGS.TS .Nguyễn Tấn Tiến Sinh viên thực hiện: Phan Đông Phong MSSV: 20701797 Lê Công Tú MSSV: 20702819 Ngày nhận đồ án: Ngày hoàn thành đồ án: NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Giáo Viên Hướng Dẫn NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Giáo Viên Phản Biện
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ
MINH TRƯỜNG ĐẠI HỌC BÁCH
KHOA
-KHOA CƠ KHÍ BỘ MÔN CƠ ĐIỆN TỬ CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM ĐỘC LẬP – TỰ DO – HẠNH PHÚC NHIỆM VỤ ĐỒ ÁN MÔN HỌC THIẾT KẾ BỘ ĐIỀU KHIỂN CON LẮC NGƯỢC Giáo viên hướng dẫn:PGS.TS Nguyễn Tấn Tiến Sinh viên thực hiện: Phan Đông Phong MSSV: 20701797 Lê Công Tú MSSV: 20702819 Ngày nhận đồ án:
Ngày hoàn thành đồ án:
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Giáo Viên Hướng Dẫn
Trang 2NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Giáo Viên Phản Biện
Trang 3LỜI NÓI ĐẦU
Trong thực tế, nhiều công trình có mô hình ở dạng con lắc ngược như nhà cao tầng, tháp
vô tuyến, giàn khoan, công trình biển…Cùng với sự phát triển của khoa học kỹ thuật, các công trình ngày càng lớn về chiều dài và chiều cao Sự gia tăng về quy mô kết cấu sẽ dẫn đến các đáp ứng động lực phức tạp của kết cấu và sẽ sinh ra các dao động Các dao động này thường có ảnh hưởng xấu đến điều kiện làm việc, làm giảm độ bền của công trình, vì vậy nghiên cứu các dao động này và làm giảm dao động có hại là vấn đề đang được quan tâm
Đề tài nghiên cứu là bài toán cân bằng mô hình con lắc ngước trong đồ án 1 là một sự vận dụng những kiến thức được trang bị trong môn: điều khiển hệ thống, cơ lý thuyết, sức bền vật liệu…Trong đề tài sẽ nghiên cứu về bộ điều khiển LQR
Do điều kiện cũng như kiến thức còn hạn chế,em không tiến hành làm thực tế mà dùng các phần mềm hỗ trợ: Matlab (Simulink và Simmechanic), SolidWork, để mô hình hóa việc điều khiển,như là một bước kiểm tra về lí thuyêt tiếp thu được trong quá trình học tập
Trên tinh thần đó,với sự góp ý và hướng dẫn của thầy Nguyễn Duy Anh, em đã tiến hành thực hiện đồ án này.Em xin chân thành cảm ơn sự giúp đỡ ,hướng dẫn của thầy đã bổ sung cho
em nhiều kiến thức quý báo.Cảm ơn các thầy cô trong bộ môn đã cho em cơ hội tìm hiểu,học tập, thử nghiệm kiến thức mình có được từ chính thầy cô đã truyền đạt lại cho em.Cảm ơn các thành viên lớp CK07CD đã đóng góp những ý kiến chân thành giúp tôi hoàn thành đồ án này
Trong quá trình thực hiện không tránh khỏi những thiếu sót.Mong nhận đươc sự đóng góp ý kiến từ các bạn và thầy cô để hoàn thiện hơn trong những đề tài tiếp theo
Trân trọng
Tp HCM Ngày 14 tháng 06 năm 2010 Phan Đông Phong
Lê Công Tú
Trang 4MỤC LỤC
Chương I :
Lý thuyết về con lắc ngược ….……… 5 Chương II:
Chương III:
Mô hình hóa động học con lắc ngược bằng Simmechanic và Solidwork……… ……… 8 Chương IV:
Mô hình hóa và mô phỏng điều khiển con lắc ngược bằng
Chương V:
Phụ Lục
Trang 5Chương I :
LÝ THUYẾT VỀ CON LẮC NGƯỢC
1.1 GIỚI THIỆU CHUNG
x
M
l,m
F
θ
Hình 1: Con lăc ngược
Hệ thống con lắc ngược bao gồm các bộ phận như hình vẽ:
1 Khối lượng thân xe M
2 Khối lượng con lắc m
3 Độ giảm chấn giữa xe và đường β
4 Chiều dài con lắc l
5 Moment quán tính con lắc J
θ , x lần lượt là góc lệch của con lắc theo phương thẳng đứng và chuyển vị của xe Thiết kế bộ điều khiển cho (F) để xe đi đến vị trí mong muốn với con lắc luôn thẳng đứng.
Các thành phần thiết kế cho theo yêu cầu sau
)
1.2 NGUYÊN TẮC HOẠT ĐỘNG CHÍNH:
Nguyên lý giữ cân bằng:
Trang 6Hình 2: Con lắc dao động
Từ vị trí thẳng đứng nếu có 1 tác động vào con lắc sẽ gây ra mất cân bằng
Bắt đầu di chuyển :
Hình 3: Con lắc di chuyển Khi bắt đầu di chuyển , do tác động của lực quán tính con lắc sẽ bị nghiêng về phía ngược chiều chuyển động Để con lắc luôn giữ được trạng thái cân bằng trong quá trình di chuyển cần phải tạo ra góc nghiêng dự trữ cùng chiều chuyển động hợp lý để khi con lắc di chuyển, lực quán tính sẽ kéo nó trở lại vị trí thẳng đứng Quá trình này được điều khiển thông qua tác dụng lực F vào phần xe phía dưới
Trang 7Chương II :
BỘ ĐIỀU KHIỂN LQR (Linear Quadratic Regulator) 2.1 Tổng quan về LQR:
LQR là thuật toán điều khiển được xây dựng dựa trên cơ sở nguyên lý phản hồi trạng thái Bộ điều khiển nhận tín hiệu vào là trạng thái của hệ thống và tín hiệu mẫu sau đó tính toán và chuyển thành tín hiệu điều khiển cho quá trình
Hình 4: Nguyên lý bộ điều khiển LQR Một hệ thống bất kì có thể được mô tả dưới dạng một hệ phương vi phân
x t Ax t Bu t
y t Cx t Du t
Đáp ứng của hệ thống phụ thuộc vào ma trận hồi tiếp K.Tính toán bộ điều khiển là đi tìm
gí trị của K dựa yều cầu Chúng ta cần tìm ma trận K cho luật điều khiển:
u= - Kx(t) Thỏa mãn chỉ tiêu chất lượng J đạt cực tiểu:
J = 1
2∫ 0
∞
(x T Qx+u T Ru)dt
Với Q , R là ma trận vuông xác định dương
Ta có ma trận tối ưu K cho luật điều khiển :
K = R-1BTS Trong đó S là nghiệm của phương trình Riccatti:
ATS + SA – SBR-1BTS + Q = ´S
Tìm K:
Việc giải bài toán tìm nghiệm của phương trình Riccatti là phức tạp nên ta dùng hàm
có sẳn trong Matlab để tìm nghiệm phương trình:
[K,S] = lqr (A,B,Q,R);
Trong đó:
Trang 8K: ma trận độ lợi hồi tiếp tối ưu theo yêu cầu cực tiểu chỉ tiêu chất lượng S: nghiệm phương trình Riccatti
A,B: Ma trận trong phương trình trạng thái của hệ thống con lắc ngược Q,R: Ma trận trọng lượng trong biểu thức chỉ tiêu chất lượng J
2.2 Ưu và nhược điểm của bộ điều khiển LQR
Đối với những bài toán MIMO nhiều đầu vào và ra, bộ điều khiển đòi hỏi tính toán phức tạp thì LQR là lựa chọn số một
Tuy nhiên do lấy nhiều tín hiệu phản hồi của đầu ra nên gặp sai số và nhiễu từ các cảm biến Đối với mô hình con lắc ngược cần phải điều khiển vị trí và góc nghiêng nên dùng phương pháp LQR là thích hợp
Các tín hiệu nhiễu sẽ được khắc phục nhờ các bộ lọc nhiễu
Chương III :
MÔ HÌNH HÓA ĐÔNG HỌC CON LẮC NGƯỢC BẰNG SOLIDWORK VÀ
SIMMECHANIC 3.1 Mô hình hóa dạng toán hoc:
u
x x
Mô hình hóa dạng sơ đồ khối dùng Solidwork và Simmechanic
3.2 Vẽ mô hình trên Solidwork:
Đây là mô hình Assemly của con lắc ngược được hoàn thành bằng phần mềm Solidwork
Trang 9Hình 6: Mô hình con lắc trong Solidwork Sau khi ta có được mô hình ta xuất sang Matla Sau khi Matlap sử lí xong ta sẽ có được mô hình hóa con lắc dưới dạng sơ đồ khối trong Simulink
Hình
Simukink Thêm các ràng buộc, ma sát và các cổng input, output ta được mô hình Simulink
Trang 10Hình 8: Mô hình hóa dạng lưu đồ con lắc bằng Simmechanics
Hình 9: Mô hình hóa con lắc 3D trong Matlap
Chương IV :
MÔ PHỎNG ĐIỀU KHIỂN CON LẮC NGƯỢC BẰNG MATLAP-SIMULINK 4.1 Xét đáp ứng của hệ hở
Trang 11Hình 10: Đáp ứng vị trí Hình 11: Đáp ứng góc nghiêng con lắc Vậy hệ không tự cân bằng
4.2 Xét đáp ứng của hệ kín
Thiết kế bộ điều khiển LQR cho hệ thống theo 3 yêu cầu:
Xe đi đến vị trí mong muốn với con lắc luôn ở trạng thái cân bằng
Góc nghiêng của con lắc khi xe đã đạt tới vị trí mong muốn không vượt quá 0.05 (rad) so với phương thẳng đứng
Thời gian đáp ứng của hệ trong khoảng 15s
Giải quyết vần đề nhiễu:
Bốn cảm biến lấy tín hiệu phản hồi gây ra sai số lớn do nhiễu, để khắc phục ta thêm vào bộ lọc nhiễu Kalman
Môi trường luôn tác động vào hệ các loại nhiễu cơ học
Từ những yêu cầu như trên ta xây dựng được mô hình của hệ :
Trang 12Hình 12: Bộ điều khiển con lắc ngược 4.2.1 Bộ điều khiển LQR :
Hình 13: Bộ điều khiển LQR Hình 14: Bên trong bộ điều khiển
Các yêu cầu cần tính toán:
Tính ma trận hồi tiếp K theo hệ số đáp ứng của vị trí của xe và góc nghiêng con lắc
Tìm các cực của hệ thống
Trong matlap có hộ trợ ta tìm ma trận độ lơi K bởi hàm lqr(), do đó ta có:
K = lqr(A,B,Q,R);
Ac = [(A-B*K)];
p = eig(Ac);
Tương ứng với các hệ số đáp ứng là x=15; y=2 ta tính được
K= [-3.8730 -6.1825 73.4533 13.0612]
Các cực của hệ:
p = -5.6865 + 0.1467i -5.6865 - 0.1467i
-0.8332 + 0.8291i -0.8332 - 0.8291i
4.2.2 Bộ lọc nhiễu:
Trang 13Hình 14: Bộ lọc nhiễ và sơ đồ bên trong
Bộ lọc được sử dụng ở đây là bộ lọc Kalman
Ở trên mô hình hóa hoạt động của mạch lọc Kalman Chúng ta có tín hiệu đo được, chúng ta có mô hình của tín hiệu đo được (đòi hỏi tuyến tính) và sau đó là áp dụng vào trong hệ thống phương trình của mạch lọc để ước lượng trạng thái quan tâm Thực ra tín hiệu đo là không khó, phương trình đã có sắn, cái chung ta cần chính là mô hình hoá
hệ thống Để có thể ứng dụng một cách hiểu quả mạch lọc Kalman thì chúng ta phải mô hình hóa được một cách tuyến tính sự thay đổi của trạng thái cần ước lượng
4.3 Giản đồ biểu thị đáp ứng của hệ thống:
Hình 16: Đáp ứng vị trí và sai số của hệ khi không nhiễu
Trang 14Hình 17: Đáp ứng vị trí và sai số của hệ khi có nhiễu Hình 18: Đáp ứng góc nghiêng của con lắc khi không nhiễu : Hình 19: Đáp ứng góc nghiêng của con lắc khi có nhiễu
Trang 15Bảng so sánh khi ta thay đổi hệ số x,y :
-3.4775 65.7265 11.6249
5.9839 0.5265 0.36 0.06 -5.6982 + 0.3867i
-5.6982 - 0.3867i -0.5013 + 0.4991i -0.5013 - 0.4991i
-4.2204 67.9777 12.0347
5.0369 0.5262 0.37 0.06 -5.7009 + 0.4259i
-5.7009 - 0.4259i -0.5956 + 0.5930i -0.5956 - 0.5930i
-4.2244 68.0570 12.0423
5.0447 0.5258 0.4 0.082 -5.7055 + 0.4841i
-5.7055 - 0.4841i -0.5947 + 0.5920i -0.5947 - 0.5920i
-5.1483 70.6826 12.5323
4.2345 0.5262 0.42 0.11 -5.7008 + 0.4259i
-5.7008 - 0.4259i -0.7085 + 0.7051i -0.7085 - 0.7051i
-5.5120 71.9553 12.7426
4.0259 0.5247 0.43 0.12 -5.7172 + 0.6092i
-5.7172 - 0.6092i -0.7452 + 0.7409i -0.7452 - 0.7409i Lưu ý: con lắc di chuyển từ x = 0 tới x= 1 (m)
Nhận xét:
Thời gian đáp ứng vị trí khoảng 7s, độ vọt lố thấp 5%, sai số xác lập bằng 0
Đáp ứng góc nghiêng của con lắc khoảng 1s , độ lệch lớn nhất trong quá trình di chuyển 0,17 rad, sai số xác lập bằng 0
Khi có nhiễu thì hệ thống vẫn đáp ứng tốt, hệ dao động quanh vị trí cân bằng với sai số xác lập 1%
Khi thay đổi hệ số đáp ứng vị trí(x) và góc nghiêng(y) thì các cực của hệ cũng thay đổi Nếu các hệ số đáp ứng càng lớn thì hệ càng đáp ứng nhanh tuy nhiên độ vọt lố lớn , nếu các hệ số đáp ứng nhỏ thì thời gian đáp ứng chậm nhưng độ vọt lố nhỏ
Đáp ứng vị trí xe Đáp ứng góc nghiêng con lắc Thời gian
đáp ứng
Sai số xác lập
Độ vọt lố Thời gian
đáp ứng (s)
Sai số xác lập (%)
Độ vọt lố
Không có
nhiễu
Trang 16CHƯƠNG V :
KẾT LUẬN 5.1 Những thành quả đạt được:
Thực hiện được mô hình mô phỏng trên MatLab,thể hiện được kết quả cần khảo sát
Thực hiện đươc mô hình mô phỏng 3D Simmechanic, quan sát chuyển động của con lắc ngược
Kiểm chứng sự đáp ứng của bộ điều khiển LQR và hạn chế tối đa các nhược điểm của LQR bằng cách dùng bộ lọc nhiễu
Hiểu rõ hơn về lí thuyết điều khiển,cũng như vận dụng lí thuyết điều khiển vào hệ thống
Tiến hành mô phỏng,tiết kiêm được chi phí thử nghiệm
5.2 Những hạn chế trong quá trình làm
Thời gian và kiến thức hạn chế,không có điều kiện tìm hiểu sâu hơn về các công cụ
hỗ trợ để mô phỏng được tốt hơn
Chưa tìm ra giải thuật tối ưu để tính toán cho bộ điều khiển LQR
Chỉ mô phỏng con lắc chạy trên một đường thẳng cố định
Chưa có điều kiện làm thực tế để kiểm tra lí thuyết mô phỏng được
5.3 Hướng phát triển:
Mô phỏng như là một bước kiểm tra trước khi đi vào làm thực tế
Tìm giải thuật tự hiệu chỉnh thông số bộ điều khiển để đáp ứng được tốt hơn
Dựa trên nền tảng này để làm con lắc ngược có thể chạy theo mọi hướng trên mặt phẳng ngang
Tiến hành làm thực tế để hiểu rõ hơn về lí thuyết điều khiển
Trang 17Hình 20: Lưu đồ tiến hành PHỤ LỤC
Tài Liệu Tham Khảo
1 Lý Thuyết Điều Khiển Tự Động _NGUYỄN THỊ PHƯƠNG HÀ - HUỲNH THÁI
2 MatLab và Simulink Dành Cho Kỹ Sư Điều Khiển Tự Động_NGUYỄN PHÙNG
3 Mô Phỏng 3D Và Tính Toán Hệ Cơ_Cơ Điện Tử Với Simmechanic
Nhà Xuất Bản Đai học Bách Khoa Hà Nội PHỤ LỤC 2: Code
M = 2.5;
m = 0.3;
b = 0.15;
i = 0.006;
g = 9.8;
l = 0.25;
p = i*(M+m)+M*m*l^2;
A = [0 1 0 0;
0 -(i+m*l^2)*b/p (m^2*g*l^2)/p 0;
0 0 0 1;
0 -(m*l*b)/p m*g*l*(M+m)/p 0];
B = [ 0;
(i+m*l^2)/p;
0;
m*l/p];
C = [1 0 0 0;
0 0 1 0];
D = [0;
0];
x=10; %he so dap ung vi tri
y=35; %he so dap ung goc quay
Q=[x 0 0 0;
0 0 0 0;
0 0 y 0;
0 0 0 0];
R =1;
K = lqr(A,B,Q,R)%-[250 -20.0000 103 -31]
Ac = [(A-B*K)];
p = eig(Ac) w1=sqrt(real(p(1))^2+imag(p(1))^2);
e1=abs(real(p(1))/w1);
Trang 18e2= abs(real(p(3))/w2);
time_xac_lap_goc=3/(w1*e1) time_xac_lap_vitri=3/(w2*e2)
end