Điều khiển tự động, xe con lắc ngược, hai bánh cân bằng
DANH MỤC HÌNH ẢNH BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN TỰ ĐỘNG ĐIỀU KHIỂN -⸙⸙ - BÁO CÁO CUỐI KÌ MƠN HỌC: ĐIỀU KHIỂN THƠNG MINH ĐỀ TÀI: THIẾT KẾ BỘ ĐIỀU KHIỂN CHO HỆ XE CON LẮC NGƯỢC GVHD: TS Trần Đức Thiện SVTH: Nguyễn Minh Nhựt 20151143 Lê Thành Phước 20151131 Tp Hồ Chí Minh, tháng 05 năm 2023 PHỤ LỤC GVHD: TS TRẦN ĐỨC THIỆN MỤC LỤC MỤC LỤC CHƯƠNG 1: TỔNG QUAN 1.1 Đặt vấn đề: 1.2 Mục tiêu : 1.3 Giới hạn: 1.4 Phương pháp nghiên cứu: 1.5 Cấu hình tệp mơ phỏng: CHƯƠNG 2: CƠ SỞ LÝ THUYẾT HỆ THỐNG 2.1 Mơ hình hố tốn học hệ xe lắc ngược: 2.2 Thiết lập môi trường mô phỏng: 2.3 Kiểm tra tính điều khiển hệ lắc: CHƯƠNG 3: SỬ DỤNG BỘ ĐIỀU KHIỂN MỜ CHO HỆ XE CON LẮC NGƯỢC 3.1 Giới thiệu điều khiển mờ: 3.2 Thiết kế điều khiển mờ cho hệ xe lắc ngược 3.2.1 Chọn biến vào/ra 3.2.2 Hệ số khuếch đại khối tiền xử lí hậu xử lí : 3.2.3 Hệ quy tắc mờ: 3.2.4 Cấu trúc khối Matlab-Function mô tả hệ xe lắc ngược: 10 3.3 Kết mô phỏng: 12 CHƯƠNG 4: THIẾT KẾ BỘ ĐIỀU KHIỂN MẠNG THẦN KINH XẤP XỈ BỘ ĐIỀU KHIỂN MỜ 14 4.1 Giới thiệu: 14 4.2 Cơ sở lý thuyết: 14 4.3 Thiết kế điều khiển mạng thần kinh xấp xỉ điều khiển mờ 16 4.3.1 Lưu đồ hoạt động điều khiển mạng thân kinh 16 4.3.2 Thu thập liệu mạng thần kinh 16 4.4 Kết mô 22 CHƯƠNG 5: THIẾT KẾ BỘ ĐIỀU KHIỂN FUZZY SỬ DỤNG GIẢI THUẬT DI TRUYỀN 23 5.1 Áp dụng giải thuật GA tìm thơng số PID cho hệ lắc: 23 5.2 Cấu trúc điều khiển: 23 5.3 Thiết kế điều khiển cho giải thuật di truyền: 24 5.4 Chương trình giải thuật GA: 25 5.5 Tính tốn thơng số u cầu: 28 5.6 Kết mô phỏng: 29 PHỤ LỤC 31 TÀI LIỆU THAM KHẢO 38 PHỤ LỤC GVHD: TS TRẦN ĐỨC THIỆN DANH SÁCH HÌNH ẢNH Hình Cấu hình thời gian cho mô Hình 2: Mơ tả biến trạng thái hệ xe lắc Hình 3: Khối xử lý mờ Hình 4: Các tập mờ chuẩn hóa biến ngõ vào Hình 5: Các tập mờ chuẩn hóa biến ngõ Hình 6: Đặc tính luật điều khiển mờ: 10 Hình 7: Giá trị đặt ban đầu khối step 10 Hình 8: Mơ hình tổng qt điều khiển FLC lắc ngược 11 Hình 9:Cấu trúc bên khối vận hành 12 Hình 10: Kết mơ điều khiển mờ 12 Hình 11: Cấu trúc tế bào thần kinh tự tạo 14 Hình 12: Cấu trúc mạng thần kinh truyền thẳng nhiều lớp 15 Hình 13: Lưu đồ hoạt động điều khiển mạng thần kinh 16 Hình 14: Sơ đồ hệ thống thu thập liệu cho mạng thần kinh 17 Hình 15: Kết sau thu thập liệu cho mạng thần kinh 17 Hình 16: Kết sau chạy chương trình huấn luyện mạng thần kinh 19 Hình 17: Sơ đồ mạng thần kinh 20 Hình 18: Hàm dạng S lưỡng cực 20 Hình 19: Hàm tuyến tính 20 Hình 20: Sơ đồ mơ hệ thống dùng điều khiển mạng thần kinh xấp xỉ mờ 21 Hình 21: Đồ thị biểu diễn Performance chương trình huấn luyện mạng thần kinh 21 Hình 22: Cấu trúc điều khiển 23 Hình 23: Cấu trúc bên khối điều khiển 24 Hình 24: Sơ đồ vận hành chương trình giải thuật di truyền 26 Hình 25: Chương trình vận hành giải thuật tìm kiếm 27 Hình 26: Đáp ứng ngõ điều khiển mờ 29 Hình 27: Đối chiếu kết vị trí điều khiển 30 Hình 28: : Đối chiếu kết góc lệch điều khiển 30 DANH SÁCH BẢNG GVHD: TS TRẦN ĐỨC THIỆN DANH SÁCH BẢNG Bảng 1: Bảng thông số biến vật lý hệ Bảng 2: Bảng 81 luật mờ theo kinh nghiệm chuyên gia Bảng 3: Bảng mô tả khối sử dụng mô 24 TÔNG QUAN HỆ THỐNG GVHD: TS TRẦN ĐỨC THIỆN CHƯƠNG 1: TỔNG QUAN Đặt vấn đề: 1.1 Hệ xe lắc ngược hệ phi tuyến Single input – Single output (SISO) hệ thống quan tâm nhiều lĩnh vực quan tâm đến học vật lý, hệ điển hình lĩnh vực điều khiển tự động ổn định hệ thống Điều khiển hệ lắc ngược thường đặt mục tiêu đưa góc nghiêng vị trí cân trì góc nghiêng giá trị mong muốn Để làm điều này, thường sử dụng điều khiển (controller) để đọc thông tin góc nghiêng vật nghiên cứu tạo tín hiệu điều khiển để ứng dụng lên hệ thống Hệ lắc ngược nghiên cứu lâu trước, hiển hệ lắc ngược hệ thống thử nghiệm phổ biến điều khiển nhiều phương pháp khác nhau, điển hình luật điều khiển mờ dựa vào khuynh hướng điều khiển người thành công xây dựng theo kinh nghiệm nhiều chuyên gia Trong thu hoạch ta sử dụng phương pháp sau đây: 1.2 - Giải thuật di truyền (GA – Gene Algorithm) - Mạng thần kinh (Neural Network) - Bộ điều khiển mờ Fuzzy kinh nghiệm chuyên gia Mục tiêu : Hoàn thành việc thiết kế điều khiển mờ theo kinh nghiệm chuyên gia Áp dụng giải thuật GA tìm kiếm thơng số tối ưu có khối tiền xử lý hậu xử lý tín hiệu Sử dụng mang thần kinh Neural Network để chép đặc điểm điều khiển mờ Thiết kế điều khiển hệ thống để hiệu chỉnh biến giá trị vị trí x bám giá trị đặt ổn định góc lệch theta trạng thái cân 1.3 Giới hạn: Bài báo cáo tập trung vào việc thiết kế điều khiển đánh giá chất lượng điều khiển Hệ thống thiết kế với vị trí ban đầu vị trí cân khơng ổn định, khơng thiết kế giải thuật nâng lắc trạng thái từ vị trí cân tự nhiên.Vì khơng thể tác động lắc vượt q góc tới hạn TƠNG QUAN HỆ THỐNG 1.4 GVHD: TS TRẦN ĐỨC THIỆN Phương pháp nghiên cứu: Dựa vào kinh nghiệm chuyên gia để thiết kế điều khiển cho luật mờ Phương pháp thử nghiệm chọc lọc theo báo khoa học, tạp trí ngồi ngước Các kiến thức nội dụng học tham khảo sách “Điều khiển thơng minh” chương trình giải thuật GA biên soạn tác giả tác giả Huỳnh Thái Hoàng kiến thức học môn Thầy Trần Đức Thiện 1.5 Cấu hình tệp mơ phỏng: Bước 1: Vào Modeling, chọn Model Settings tổ hợp phím Ctrl + E để vào cửa sổ Configuration Parameters để hiển thị cửa sổ hình sau Bước 2: Cấu hình lại thời gian mô ta chỉnh thời gian cố định 0.01, thời gian dừng 30s TÔNG QUAN HỆ THỐNG GVHD: TS TRẦN ĐỨC THIỆN Hình Cấu hình thời gian cho mô CƠ SỞ LÝ THUYẾT GVHD: TS TRẦN ĐỨC THIỆN CHƯƠNG 2: CƠ SỞ LÝ THUYẾT HỆ THỐNG 2.1 Mơ hình hố tốn học hệ xe lắc ngược: Hình 2: Mơ tả biến trạng thái hệ xe lắc Bảng 1: Bảng thông số biến vật lý hệ Thông số M m l g u Đơn vị Kg Kg m rad m/s2 N Định nghĩa Khối lượng xe Khối lượng vật nặng nhỏ Chiều dài lắc ngược Góc lắc ngược Gia tốc trọng trường Lực tác động Giá trị 0.1 9.81 ❖ Phương trình động lực học hệ xe lắc ngược: Động lắc theo hai phương x,y: 1 1 Tp = mx + my = m( x + l cos )2 + m(−l sin )2 2 2 (1.1) 1 Tp = mx + mlx cos + ml 2 2 (1.2) Tp = Mx 2 (1.3) Động xe: Động hệ thống: T = TC + TP T= 1 ( M + m ) x + mlx cos( ) + ml 2 2 (1.4) Thế hệ thống vật nặng đầu lắc: CƠ SỞ LÝ THUYẾT GVHD: TS TRẦN ĐỨC THIỆN W = mgl cos (1.5) Thế xe so với hệ chuyển động Toán tử Lagrangian: 1 L = ( M + m) x + ml x cos + ml − mgl cos 2 (1.6) Áp dụng cơng thức Euler-lagrange ta có: d L L =U − dt x x (1.7) d L L =0 − dt (1.8) Từ hai biểu thức (1.7) (1.8) ta khai triển phương trình đây: ( M + m) x + ml (cos ) − ml (sin ) = u (1.9) mx cos + ml − mg sin = (1.10) Từ ta có phương trình vi phân: u + ml (sin ) − mg cos sin M + m − m cos (1.11) u cos − ( M + m) g (sin ) + ml cos( )sin( ) ml cos − ( M + m)l (1.12) x= = Đặt biến trạng thái x1 = , x2 = , x3 = x, x4 = x x2 x1 u cos x1 − ( M + m) g sin x1 + ml cos( x1 ) sin( x1 ) x2 x ml cos x1 − ( M + m)l 2 = x3 x4 x u + ml (sin x ) x − mg cos x sin x 4 1 M + m − m cos x1 2.2 (1.13) Thiết lập môi trường mô phỏng: Để thiết lập mơi trường mơ tìm thơng số PID giải thuật GA ta thiết lập mô trường sau Bước 1: Tại tệp Simulink mở ta nhấn chọn vào Modeling cơng cụ, sâu chọn tiếp Model setting để hiển thị hộp thoại Configuration Parameter THIẾT KẾ GIẢI THUẬT DI TRUYỀN GVHD: TS TRẦN ĐỨC THIỆN Cấu trúc điều khiển chia làm phần khối điều khiển khối vận hành khối thu thập tín hiệu, chức thơng số cài đặt khối thể qua hình sau: Hình 23: Cấu trúc bên khối điều khiển ❖ Thông số đặt cho khối: Với khối bão hoà giá trị giới hạn trước sau khối điều khiển Fuzzy từ -1 dến để đảm bảo khoảng giá trị với ngõ vào luật điều khiển Với khối gain ta đặt biến giống với biến ghi chương trình GA, khối To Workspace phải để dạng Array thông số cài đặt phải fixed-step multi-data import export để nhập xuất liệu 5.3 Thiết kế điều khiển cho giải thuật di truyền: Bảng 3: Bảng mô tả khối sử dụng mô Tên khối Địa chọn khối Matlab Function Simulation/ Library Browser/ Simulink/ User-Defined Functions/ MATLAB Function Integrator Simulation/ Library Browser/ Simulink/ Continuous/ Integrator Constant Simulation/ Library Browser/ Simulink/ Commonly Used Blocks/ Constant Khối cộng: (thêm) Simulation/ Library Browser/ Simulink/ Math Operations/ Add 24 THIẾT KẾ GIẢI THUẬT DI TRUYỀN GVHD: TS TRẦN ĐỨC THIỆN Khối lấy liệu theo thời gian chạy (To Workspace) Simulation/ Library Browser/ Simulink/ Sinks/ To Workspace Khối PID điều khiển (PID controller): Simulation/ Library Browser/ Simulink/ Continuous/ PID Controller Khối Scope: Simulation/ Library Browser/ Simulink/ Sinks/ Scope Chương trình giải thuật GA: 5.4 Có thơng số quy trình thiết lập lấy từ chương trình Phụ lục A ❖ Chọn thông số giải thuật GA: - Thế hệ huấn luyện tối đa: 250 - Thế hệ huấn luyện mong muốn: 60 - Kích thước quần thể: 30 - Hệ số xấp hạng tuyến tính 0.2 - Chương trình giải mã thập phân - Lai ghép hai điểm với tỉ lệ di truyền 0.85 tỉ lệ đột biến 0.15 - Phương sai phép đo: 0.0001 - Số nhiễm sắc thể có cá thể: - Khoảng giá trị cho nhiễm sắc thể: 0 0 0;5 1 60 - Trọng số ảnh hưởng định đến sai số J (rho) – tốc độ học: 0.02 ❖ Giải thích thơng số: Số hệ tối đa mà ta muốn giới hạn 250, tức thông số chạy không mong muốn giải thuật vượt qua giá trị 60 mà ta mong muốn train tiếp số hệ vượt 250 dừng chương trình, ngược lại kết khơng có nhiều tiến triển kết dừng giá trị hệ 61 vè đựa kết Kích thước quần thể số thông số PID ta huấn luyện hệ chương trình ta có 30 cần thăm dò Tỉ lệ di truyền chọn 0.85 0.15, hệ số lai ghép an tồn xảy đột biết, làm giảm đa dạng bù lại số lượng cá thể lớn cho kết ý.Đối với trọng số rho, biến đại diện cho mức độ đa dạng tốc độ lai ghép cá thể 25 quần thể, giá trị rho cao quần thể đa dạng ngược lại Khi giá trị rho thấp tốc độ tiến hoá giải thuật nhanh hơn, cá thể khơng đa dạng dẫn đến kết rơi vào cục hạn chế thông số tối ưu Với trọng số rho nhỏ hơn, chương trình tập trung vào khai thác đào sâu thơng số tốt việc tìm khám phá thông số mới, thông số ta đặt 0.02 Ngồi giải thuật GA cịn có biến J hàm dùng để tính sai số, với việc tính tốn cơng thức J chọn theo quan sát kinh nghiệm, su dùng để tính tốn hàm thích nghi theo phương pháp cực tiểu hàm J theo công thức: fitness = J + eps Với eps sai số, phương sai phép đo ❖ Lưu đồ giải thuật di truyền Bắt đầu Chọn thông số cho chương trình GA Đánh giá Mã hố Chọn lọc Lai ghép Đột biên Giải mã Đánh giá Sai Hội tụ Đúng Dừng chương trình Hình 24: Sơ đồ vận hành chương trình giải thuật di truyền (2.11) THIẾT KẾ GIẢI THUẬT DI TRUYỀN GVHD: TS TRẦN ĐỨC THIỆN Mã hoá: nhiệm vụ đưa thơng tin di truyền dạng mà giải thuật xử lý được, có nhiều dạng mã hố mã hố nhị phân, mã hố số ngun, số thực, từ bước sau thực Chọn lọc: chương trình chọn lọc hoạt động giống với phương pháp chọn lọc tự nhiên, giữ lại cá thể tốt đồng thời loại bỏ cá thể có tính trạng xấu, cá thể có cặp NST tốt có nhiều hội bắt cặp với cá thể khác để tạo hệ con, đặc điểm hệ sau có khả thích nghi tốt so với bố mẹ Lai ghép: sau chọn lọc cá thể, hai NST khác bắt cặp ngẫu nhiên để lai ghép tạo nhiễm sắc thể thừa hưởng phần gen từ bố mẹ Đột biến: đột biến q trình ngẫu nhiên, thay đối nhiều gen cá thể, giữ vai trò làm đa dạng NST điểm khác tránh tượng hội tụ sớm Giải mã đoạn NST chuyển thông tin GA xử lý lại dạng gốc từ có đánh giá áp dụng liệu vào mơ hình Đánh giá: loại bỏ cá thể có tính thích nghi khơng cao,kiểm tra tính hội tụ quần thể có hiển lại thơng số tốt kết thúc q trình, khơng tiếp tục lặp lại hệ thống hội tụ ❖ Quy trình chọn thực việc lai ghép cá thể ( Xem chương trình – Phụ lục): Bắt đầu Tính tốn độ tương thích cho hàm J Tạo quần thể ban đầu J