1. Trang chủ
  2. » Tất cả

(Đồ án hcmute) điều khiển cân bằng hệ con lắc ngược quay áp dụng bộ điều khiển backstepping

102 9 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP NGÀNH CNKT ĐIÊU KHIỂN VÀ TỰ ĐỘNG HÓA ĐIỀU KHIỂN CÂN BẰNG HỆ CON LẮC NGƯỢC QUAY ÁP DỤNG BỘ ĐIỀU KHIỂN BACKSTEPPING GVHD: PGS.TS NGUYỄN MINH TÂM SVTH: VÕ MINH TÀI MSSV: 16151313 SKL 0 Tp Hồ Chí Minh, tháng 08/2020 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO  LUẬN VĂN TỐT NGHIỆP Đề tài : ĐIỀU KHIỂN CÂN BẰNG HỆ CON LẮC NGƯỢC QUAY ÁP DỤNG BỘ ĐIỀU KHIỂN BACKSTEPPING GVHD SVTH MSSV Lớp Chuyên ngành Hệ đào tạo Khóa đào tạo : PGS.TS NGUYỄN MINH TÂM : VÕ MINH TÀI : 16151313 : 16151CL3 : Điều khiển Tự động hóa : Chính Quy : 2016 - 2020 TP Hồ Chí Minh, tháng 08 năm 2020 an Luận Văn Tốt Nghiệp GIỚI THIỆU an Luận Văn Tốt Nghiệp CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc *** Tp Hồ Chí Minh, ngày tháng năm 2020 NHIỆM VỤ LUẬN VĂN TỐT NGHIỆP Họ tên sinh viên: VÕ MINH TÀI MSSV: 16151313 Ngành: CNKT Điều khiển Tự động hóa Lớp: 16151CL3 Giảng viên hướng dẫn: PGS.TS NGUYỄN MINH TÂM ĐT: Ngày nhận đề tài: 24/02/2020 Ngày nộp đề tài: 27/07/2020 Tên đề tài: ĐIỀU KHIỂN CÂN BẰNG HỆ CON LẮC NGƯỢC QUAY ÁP DỤNG BỘ ĐIỀU KHIỂN BACKSTEPPING Các số liệu, tài liệu ban đầu: - Yung-Chih Fu, Jung-Shan Lin, Nonlinear Backstepping Control Design of the Furuta Pendulum, IEEE Conference on Control Applications, tr 96-101, 2005 - Pavol Seman, Boris Rohal’-Ilkiv, Martin Juh´as, Michal Salaj, Swinging up the Furuta pendulum and its stabilization via model predictive control, Journal of Electrical Engineering, vol 64, No 3, tr 152-158, 2013 Nội dung thực đề tài: Thiết kế điều khiển Backstepping điều khiển LQR điều khiển cân hệ lắc ngược mơ mơ hình thực tế Đồng thời, mô điều khiển thực tế hệ lắc ngược phương pháp phương pháp lượng phương pháp lũy thừa vị trí lắc Sinh viên thực nhận dạng thông số động để điều khiển hệ lắc ngược quay Sản phẩm: Mơ hình, file mềm, báo cáo tổng kết TRƯỞNG NGÀNH GIẢNG VIÊN HƯỚNG DẪN an Luận Văn Tốt Nghiệp Lời Mở Đầu Kỹ thuật điều khiển lĩnh vực Điều khiển Tự động khơng đóng vai trị quan trọng q trình tự động hóa giới nói chung nói Việt Nam nói riêng Mọi q trình tự động hóa u cầu ngày cao độ xác, tin cậy, khả làm việc môi trường khắc nghiệt với thời gian dài hệ thống Điều khiển tự động Vì vậy, việc nghiên cứu phát triển hệ thống để đáp ứng yêu cầu việc cần thiết Trong lĩnh vực điều khiển tự động, kỹ thuật điều khiển thông minh, điều khiển đại với ứng dụng mạng nơron, PID kinh điển, logic mờ, điều khiển lai, điều khiển trượt,v.v xem ngành kỹ thuật tương lai Nhờ có giải thuật điều khiển mà máy móc thiết bị, mơ hình nghiên cứu điều khiển tự động hóa, robot ngày đạt sự ổn định tối ưu Đối với sinh viên chuyên ngành Điều khiển Tự động, với sự yêu thích, đam mê, với nhận thấy lĩnh vực mới, hứa hẹn mở nhiều triển vọng Nhằm đóng góp nghiên cứu, người thực định chọn đề tài: “ĐIỀU KHIỂN CÂN BẰNG HỆ CON LẮC NGƯỢC QUAY ÁP DỤNG BỘ ĐIỀU KHIỂN BACKSTEPPING” để tiến hành nghiên cứu Mặc dù người thực đề tài cố gắng hoàn thành nhiệm vụ đề tài đặt thời hạn quy định chắn không tránh khỏi thiếu sót, mong q Thầy/Cơ bạn sinh viên thông cảm Người thực đề tài mong nhận ý kiến đóng góp quý Thầy/Cô bạn sinh viên để đề tài hoàn thiện Xin chân thành cảm ơn! Người thực đề tài Võ Minh Tài i an Luận Văn Tốt Nghiệp Lời Cảm Ơn Trong trình thực đề tài, nhận sự giúp đỡ Qúy thầy/cô bạn, nhờ đề tài hồn thành thời gian quy định Tơi xin chân thành gửi lời cảm ơn đến: PGS TS Nguyễn Minh Tâm, trưởng Khoa Điện – Điện tử người tận tình hướng dẫn, định hướng nghiên cứu, vốn kiến thức chun mơn để tơi hồn thành đồ án tốt nghiệp thời gian TS Nguyễn Văn Đông Hải hỗ trợ trang thiết bị, số trao đổi chun mơn để tơi hồn thành đồ án Tôi xin gửi lời cảm ơn chân thành đến quý thầy cô Khoa Điện – Điện Tử, khoa Đào tạo Chất lượng cao cung cấp cho kiến thức tảng, để tơi hồn thành đồ án Đồng thời, tơi xin gửi lời cảm ơn đến anh Trần Hoàng Chinh, giảng viên Cao đẳng Kỹ thuật Cao Thắng, bạn Võ Anh Khoa, Trần Minh Đức, Nguyễn Văn Hiển, Lư Minh Triết số người khác giúp đỡ tơi suốt q trình làm việc, đóng góp lời khun bổ ích để tơi mau chóng hồn thành đề tài Tôi xin gửi lời cảm ơn đến gia đình tạo điều kiện thuận lợi cho tơi sớm hồn thành đồ án TPHCM, ngày…tháng…năm 2020 Sinh viên thực Võ Minh Tài ii an Luận Văn Tốt Nghiệp Mục Lục Lời Mở Đầu i Lời Cảm Ơn ii Mục Lục iii Danh Mục Hình Ảnh vi Danh Mục Bảng xi Danh Mục Từ Viết Tắt xii Tóm Tắt xiii CHƯƠNG 1: DẪN NHẬP 1.1 Đặt vấn đề 1.2 Lý chọn đề tài 1.3 Đối tượng nghiên cứu 1.4 Giới hạn đề tài 1.5 Dàn ý nghiên cứu .4 1.5.1 Cấu trúc hệ lắc ngược quay 1.5.2 Giải thuật điều khiển 1.5.3 Board STM32F407 Discovery 1.5.4 Phần mềm Phần cứng .4 1.5.5 Ý nghĩa thực tiễn CHƯƠNG 2: TỔNG QUAN VỀ CẤU TRÚC HỆ CON LẮC NGƯỢC QUAY 2.1 Giới thiệu hệ lắc ngược quay 2.2 Mơ tả tốn học hệ lắc ngược quay 2.2.1 Cơ sở khoa học 2.2.2 Thành lập phương trình động học cho hệ lắc ngược quay 2.2.3 Mơ tả tốn học hệ lắc ngược quay dạng phương trình vi phân 14 2.3 Yêu cầu điều khiển hệ lắc ngược quay 16 CHƯƠNG 3: ĐỀ XUẤT GIẢI PHÁP ĐIỀU KHIỂN HỆ CON LẮC NGƯỢC QUAY 18 3.1 Giới thiệu giải thuật điều khiển tuyến tính dạng toàn phương LQR .18 3.2 Giới thiệu nguyên lý ổn định Lyapunov 19 3.2.1 Phương pháp thứ Lyapunov 19 3.2.2 Phương pháp thứ hai Lyapunov 20 3.3 Giới thiệu giải thuật điều khiển Backstepping 21 3.4 Giới thiệu giải thuật swing-up 21 iii an Luận Văn Tốt Nghiệp 3.5 Giải thuật di truyền (GA) 22 3.5.1 Giới thiệu giải thuật di truyền GA 22 3.5.2 Lưu đồ giải thuật thuật toán di truyền 23 3.6 Giới thiệu phần mềm Matlab Matworks 24 3.7 Thiết kế điều khiển LQR cho hệ lắc ngược quay 24 3.8 Thiết lập điều khiển Swing up cho lắc hệ lắc ngược quay 28 3.8.1 Swing up phương pháp lượng [7] 28 3.8.2 Swing up phương pháp lũy thừa góc lắc [25] 29 3.9 Thiết kế điều khiển Backstepping tuyến tính 30 CHƯƠNG 4: THIẾT KẾ PHẦN CỨNG VÀ PHẦN MỀM 33 4.1 Phần cứng 33 4.1.1 Thiết kế mơ hình hệ lắc ngược quay gia cơng khí 33 4.1.2 Giới thiệu board STM32F407 DISCOVERY 34 4.1.3 Lựa chọn động điều khiển 36 4.1.4 Cầu H IR2184 37 4.1.5 Encoder 39 4.1.6 Mạch giao tiếp UART CP2102 39 4.1.7 Khối nguồn 39 4.2 Phần mềm 40 4.2.1 Giới thiệu thư viện lập trình Waijung STM32F4 Matlab 40 4.2.2 Phần mềm Terminal 40 CHƯƠNG 5: NHẬN DẠNG THÔNG SỐ ĐỘNG CƠ SERVO DC 41 5.1 Mô tả toán học động DC 41 5.2 Phương pháp nhận dạng 41 5.3 Thiết lập chương trình nhận dạng 43 5.4 Thu thập liệu xác định thông số thực 44 CHƯƠNG 6: KẾT QUẢ NGHIÊN CỨU 45 6.1 Điều khiển cân hệ lắc ngược quay phương pháp LQR 45 6.1.1 Điều khiển cân hệ lắc ngược quay phương pháp LQR áp dụng Giải thuật di truyền (GA) 45 6.1.2 Phân tích đáp ứng ngõ hệ lắc ngược quay thay đổi ma trận Q R 52 6.2 Điều khiển Swing up ổn định hệ lắc ngược quay giải thuật LQR .64 6.2.1 Swing up phương pháp lượng 64 iv an Luận Văn Tốt Nghiệp 6.2.2 Swing up phương pháp lũy thừa vị trí lắc 65 6.3 Kết điều khiển hệ lắc ngược quay điều khiển Backstepping tuyến tính 67 6.4 Kết điều khiển Swing up điều khiển ổn định hệ lắc ngược quay điều khiển Backstepping tuyến tính 70 6.4.1 Swing up phương pháp lượng ổn định giải thuật Backstepping 70 6.4.2 Swing up phương pháp lũy thừa vị trí ổn định giải thuật Backstepping 71 6.5 So sánh điều khiển LQR điều khiển backstepping tuyến tính 72 CHƯƠNG 7: KẾT LUẬN 73 TÀI LIỆU THAM KHẢO 74 PHỤ LỤC 77 v an Luận Văn Tốt Nghiệp Danh Mục Hình Ảnh Hình 2.1 Một số mơ hình phần cứng lắc .6 Hình 2.2 Mơ hình lắc ngược quay thực tế Hình 2.3 Cấu trúc hệ lắc ngược quay tọa độ Oxyz .7 Hình 2.4 Cấu trúc động DC 11 Hình 2.5 Khối mô tả động DC theo hàm truyền 12 Hình 2.6 Vị trí lắc ngược quay thẳng đứng hướng xuống 16 Hình 2.7 Vị trí hệ lắc ngược quay thẳng đứng hướng lên 16 Hình 3.1 Cấu trúc điều khiển LQR 18 Hình 3.2 Khoảng chia vùng điều khiển swing-up 21 Hình 3.3 Sơ đồ khối giải thuật điều khiển swing-up 22 Hình 3.4 Sơ đồ giải thuật di truyền tổng quát 23 Hình 3.5 Sơ đồ giải thuật di truyền GA 23 Hình 3.6 Sơ đồ cấu trúc hệ thống điều khiển tự động với đối tượng lắc ngược quay, sử dụng điều khiển LQR 24 Hình 3.7 Sơ đồ điều khiển LQR cho hệ lắc ngược quay 27 Hình 3.8 Hệ lắc ngược quay mô tả Matlab .28 Hình 3.9 Chương trình mô swing phương pháp lượng ổn định hệ lắc ngược quay .29 Hình 3.10 Chương trình mơ swing up điều khiển ổn định phương pháp backstepping tuyến tính 32 Hình 4.1 Mơ hình phần cứng hệ thống lắc ngược quay 33 Hình 4.2 Sơ đồ kết nối phần điện hệ thống 34 Hình 4.3 Kit STM32F407 Discovery .35 Hình 4.4 Sơ đồ cấu trúc phần cứng Kit 35 Hình 4.5 Động servo motor DC 24VDC .36 Hình 4.6 Sơ đồ kết nối Encoder 37 Hình 4.7 Sơ đồ nguyên lý mạch cầu H .38 Hình 4.8 Cầu H IR21 38 Hình 4.9 Sơ đồ chân cầu H IR2184 38 Hình 4.10 Encoder 500 xung 39 Hình 4.11 Module truyền tín hiệu CP2102 39 Hình 4.12 Nguồn tổ ong 24VDC - 10A 40 Hình 4.13 Cài đặt thư viện Waijung Blockset 40 Hình 4.14 Giao diện phần mềm Terminal version 1.9b 40 Hình 5.1 Cấu trúc động DC 41 vi an Luận Văn Tốt Nghiệp Trong thí nghiệm mơ hình thực, sau 2.5 giây, góc cánh tay có hình dạng sóng sin với biên độ 0.3 rad Góc cánh tay khơng thể di chuyển sự lựa chọn hàm z1 phương trình (67) Đây điều bất tiện giải thuật backstepping cho hệ thống SIMO Nhưng cải thiện điều cách lựa chọn hàm z1 khác cho kết tốt 6.4 Kết điều khiển Swing up điều khiển ổn định hệ lắc ngược quay điều khiển Backstepping tuyến tính 6.4.1 Swing up phương pháp lượng ổn định giải thuật Backstepping Hình 6.62 Kết mơ đáp ứng góc lệch  (rad)  (rad) Swing up phương pháp lượng ổn định giải thuật Backstepping Hình 6.63 Kết thực tế đáp ứng góc lệch  (rad) Swing up phương pháp lượng ổn định giải thuật Backstepping Hình 6.64 Kết thực tế đáp ứng góc lệch  (rad) Swing up phương pháp lượng ổn định giải thuật Backstepping 70 an Luận Văn Tốt Nghiệp 6.4.2 Swing up phương pháp lũy thừa vị trí ổn định giải thuật Backstepping Hình 6.65 Kết mơ đáp ứng góc lệch  (rad)  (rad) Swing up phương pháp lượng ổn định giải thuật Backstepping Hình 6.66 Kết thực tế đáp ứng góc lệch  (rad) Swing up phương pháp lũy thừa vị trí ổn định giải thuật Backstepping Hình 6.67 Kết thực tế đáp ứng góc lệch  (rad) Swing up phương pháp lũy thừa vị trí ổn định giải thuật Backstepping Kết luận: Sinh viên thực swing up hệ lắc ngược quay phương pháp gồm phương pháp lượng phương pháp lũy thừa vị trí lắc Kết mơ thí nghiệm mơ hình thực trình bày từ Hình 6.62 đến 6.67 Khi 71 an Luận Văn Tốt Nghiệp swing-up lắc vào vùng bất ổn định [-150;150] lắc giữ ổn định điều khiển backstepping Hình 6.62, ta thấy rằng, áp dụng phương pháp lượng để swing up hệ lắc ngược quay giữ ổn định giải thuật LQR, thời gian chuyển tiếp điều khiển swing up backstepping gần 1000 mili giây Trong áp dụng giải thuật swing up lũy thừa vị trí lắc Hình 6.51, ta thấy rằng, thời gian chuyển tiếp điều khiển swing up giải thuật ổn định backstepping 970 mili giây Điều chứng tỏ với phương pháp swing up lũy thừa vị trí lắc tốt swing up phương pháp lượng áp dụng mơ hình hệ lắc ngược quay tác giả 6.5 So sánh điều khiển LQR điều khiển backstepping tuyến tính Kết mơ thực nghiệm mơ hình thực cho thấy điều khiển backstepping tuyến tính cho kết điều khiển ổn định điều khiển LQR Từ Hình 6.49, Hình 6.52 điều khiển ổn định LQR Hình 6.63 Hình 6.66 điều khiển ổn định điều khiển backstepping, ta nhận thấy rằng, điều khiển LQR cho kết điều khiển ổn định so với điều khiển backstepping Thời gian chuyển tiếp điều khiển swing up sang điều khiển cân bằng phương pháp LQR cho kết nhanh hơn, ổn định hơn, độ dao động nhỏ Trong đó, điều khiển phương pháp backstepping thời gian chuyển tiếp dài, dao động nhiều Qua đánh giá giải thuật điều khiển backstepping mà sinh viên lựa chọn cho kết không tốt giải thuật LQR Bởi vì, sinh viên chọn lựa hàm z1 chưa đảm bảo đưa biến x1,x3 Điều cải thiện cách lựa chọn hàm z1 cho kết tốt 72 an Luận Văn Tốt Nghiệp CHƯƠNG 7:KẾT LUẬN Bộ điều khiển Backstepping sinh viên để xuất cho luận án có khả điều khiển hệ kín Các giải thuật swing-up phương pháp lượng swing-up phương pháp lũy thừa vị trí lắc giới thiệu chứng minh hoàn toàn có khả áp dụng vào hệ lắc ngược quay luận án Với điều khiển này, khơng có khả swing-up ổn định lắc từ vị trí thẳng đứng hướng xuống lên vị trí thẳng đứng hướng lên mà cịn đưa cánh tay vị trí ổn định ban đầu Thanh lắc hệ lắc ngược quay hoàn toàn có khả ổn định vùng ổn định hệ thống Điều chứng tỏ rằng, luật điều khiển sinh viên đề xuất có hiệu Sinh viên thực so sánh điều khiển backstepping điều khiển LQR Kết cho thấy luật điều khiển giải thuật backstepping không tốt so với điều khiển LQR Đồng thời, với hai phương pháp swing-up, thời gian chuyển tiếp từ lúc swing up đến chuyển qua điều khiển ổn định phương pháp lũy thừa vị trí lắc cho kết tốt phương pháp lượng Kết mơ kết thí nghiệm thực tế giống Trong kết thực tế, đáp ứng ngõ lắc cánh tay xuất gai nhiễu dao động trình điều khiển Ngun nhân bắt nguồn từ hệ thống khí chưa chuẩn xác, nhiễu động cơ, độ trễ từ tính, v.v Mục tiêu tương lai mà sinh viên muốn hướng để tiếp tục hoàn thành đồ án thiết kế điều khiển backstepping phi tuyến, thiết kế điều khiển cho hệ lắc ngược quay lắc Đồng thời, để cải thiện backstepping tại, sinh viên thực lựa chọn lại hàm z1 để cải thiện chất lượng tín hiệu ngõ hệ thống lắc ngược quay 73 an Luận Văn Tốt Nghiệp TÀI LIỆU THAM KHẢO [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] Iraj Hassanzadeh, Saleh Mobayen, Controller Design for Rotary Inverted Pendulum System Using Evolutionary Algorithms, Mathematical Problems in Engineering, Volume 2011, tr 1-17, 2011 Jen-Hsing Li, Composite Fuzzy Control of a Rotary InvertedPendulum, 2013 IEEE International Symposium on Industrial Electronics, 2013 Philippe Faradja, Guoyuan Qi, Martial Tatchum, Sliding mode control of a Rotary Inverted Pendulum using higher order differential observer, 14th International Conference on Control, Automation and Systems (ICCAS 2014), tr 1123-1127, 2014 Deepak Chandran, Bipin Krishna, V I George, I Thirunavukkarasu, Model identification of rotary inverted pendulum using artificial neural networks, 2015 International Conference on Recent Developments in Control, Automation and Power Engineering (RDCAPE), tr 146-150, 2015 Arturo Rojas-Moreno, Juan Hernandez-Garagatti, Oscar Pacheco-De La Vega, Luis Lopez-Lozano, FO based-LQR stabilization of the rotary inverted pendulum, 2016 Chinese Control and Decision Conference (CCDC), tr 42924297, 2016 Galsanbadam Sainzaya, Fan-Nong Yu, Tung-Lin Hsieh, Chan-Yun Yang, LQR control with refined PID to balance rotary inverted pendulum with timevarying uncertainty, 2017 International Conference on Fuzzy Theory and Its Applications (iFUZZY), 2017 Xuebo Yang, Xiaolong Zheng, Swing up and Stabilization Control Design for an Underactuated Rotary Inverted Pendulum System: Theory and Experiments, IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, Volume: 65, Issue: 9, 2017 Gia Bao Hong, Hai Thanh Nguyen, Minh Tam Nguyen, Thi Thanh Hoang Le, Van Dong Hai Nguyen, Trajectory Tracking for Furuta Pendulum by Incremental Sliding Mode, Robotica & Management, tr 4-7, 2019 Jingwen Huang, TingTing Zhang, You Fan, Jian-Qiao Sun, Control of Rotary Inverted Pendulum Using Model-Free Backstepping Technique, IEEE Access, VOL 7, tr 96965-96973, 2019 Seyed Hassan Zabihifar, Arkady Semenovich Yushchenko, Hamed Navvabi, Robust control based on adaptive neural network for Rotary inverted pendulum with oscillation compensation, Neural Computing and Applications, 2020 74 an Luận Văn Tốt Nghiệp [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] Nguyễn Văn Đông Hải, Ngô Văn Thuyên, Xây dựng điều khiển PID-neuron cho hệ lắc ngược quay, Tạp chí Giáo dục Kĩ thuật, tr 37-45, 2012 Nguyễn Văn Khanh, Nguyễn Vĩnh Hảo, Nguyễn Ngô Phong, ĐIỀU KHIỂN CÂN BẰNG CON LẮC NGƯỢC SỬ DỤNG BỘ ĐIỀU KHIỂN CUỐN CHIẾU, Tạp chí Khoa học Trường Đại học Cần Thơ, tr 18-25, 2014 Nguyễn Văn Sơn, Xây dựng mơ hình hệ lắc ngược dạng quay Simulink Matlab, Tạp chí Đại học Thủ Dầu Một, số 6, tr 48-56, 2015 Lê Quang Vũ, Nguyễn Minh Tâm, Dương Hoài Nghĩa, Điều khiển trượt hệ lắc ngược quay, Tạp chí giáo dục Kĩ thuật, 2017 Vo Anh Khoa, Nguyen Minh Tam, Tran Vi Do, Nguyen Thien Van, Nguyen Van Dong Hai, Model and control algorithm construction for rotary inverted pendulum in laboratory, Journal of Technical Education Science No.49, tr 3240, 2018 Cao Xn Cường, Trần Đình Khơi Quốc, Điều khiển mơ hình lắc ngược sử dụng điều khiển LQR với hai vòng phản hồi, Tạp chí Khoa học cơng nghệ Đại học Đà Nẵng, số 5, tr 16-29, 2018 Nguyễn Văn Đông Hải, Xây dựng điều khiển nhúng tuyến tính hóa vào cho hệ xe lắc ngược, Luận văn Thạc sĩ trường Đại học Bách Khoa TPHCM, 2011 Xiao Qing Ma A Thesis in The Department of Mechanical Engineering, Fuzzy Control for an under-actuated Robotic Manipirlator: Pendubot, August 2001 Li Chun Lai - Yu Yi Fu - Chia-Nan Ko, MQPSO Algorithm Based Fuzzy PID Control for a Pendubot System, International Conference on Artificial Life and Robotics (ICAROB 2017), tr 19-22, Seagaia Convention Center, Miyazaki, Japan, 2017 K Furuta, M Iwase, Swing-up time analysis of pendulum, Bulletin of the Polish Academy of Sciences Technical Sciences Vol 52, No 3, tr 153-163, 2004 Pavol Seman, Boris Rohal’-Ilkiv, Martin Juh´as, Michal Salaj, Swinging up the Furuta pendulum and its stabilization via model predictive control, Journal of Electrical Engineering, vol 64, No 3, tr 152-158, 2013 Trần Hoàng Chinh, Điều khiển PID-Fuzzy cho hệ Pendubot, Luận văn Đại học, trường Đại học Sư phạm Kỹ thuật TPHCM, 2018 https://www.youtube.com/watch?v=EtNSRSThyxM&t=1145s Keyu Lai, Jin Xiao, Xiaoguang Hu, Jianxin Fan, Bing Wu, Modeling and Control for Stability and Rotation Velocity of a Rotary Inverted Pendulum, 75 an Luận Văn Tốt Nghiệp [25] [26] [27] [28] [29] [30] [31] [32] 2015 IEEE 10th Conference on Industrial Electronics and Applications (ICIEA), tr 955-960, 2015 Chih-Hui Chiu, Ya-Fu Peng, The implementation of a rotary inverted pendulum, 2018 IEEE International Conference on Applied System Invention (ICASI), tr 1000-1001, 2018 Tran Thien Dung, Nguyen Nam Trung, Nguyen Van Lanh, Control design using backstepping technique for a cart-inverted pendulum system, International Journal of Engineering and Applied Sciences (IJEAS), Volume6, tr.70-75, 2019 Yung-Chih Fu, Jung-Shan Lin, Nonlinear Backstepping Control Design of the Furuta Pendulum, IEEE Conference on Control Applications, tr 96-101, 2005 Navin John Mathew, K Koteswara Rao, N Sivakumaran, Swing Up and Stabilization Control of a Rotary Inverted Pendulum, the 10th IFAC International Symposium on Dynamics and Control of Process Systems, tr 654-659, 2013 Mahsa Rahmanian, Mohammad Teshnehlab, Mahdi Aliyari Shoorehdeli, An off-line fuzzy backstepping controller for rotary inverted pendulum system, International Conference on Intelligent and Advanced Systems, pp 109-113, 2007 Quanser rotary inverted pendulum workbook Varunendra Kumar Singh, Vijay Kumar, Nonlinear Design for Inverted Pendulum using Backstepping Control Technique, International Journal of Scientific Research Engineering & Technology (IJSRET), Vol 2, tr 807-810, 2014 Jie Wen, Yuanhao Shi, Xiaonong Lu, Stabilizing a Rotary Inverted Pendulum Based on Logarithmic Lyapunov Function, Journal of Control Science and Engineering, vol 2017, tr 1-11, 2017 76 an Luận Văn Tốt Nghiệp PHỤ LỤC I Giới thiệu phần mềm Matlab MathWorks MATLAB ngôn ngữ lập trình bậc cao cho khoa học máy tính, sử dụng phổ biến, rộng rãi nghiên cứu, ứng dụng khoa học tính dễ sử dụng, khả đáp ứng cao Hình I-1 Logo phần mềm Matlab Matlab cho phép tính tốn, phân tích liệu, vẽ đồ thị, hiển thị, mơ phỏng,… chương trình từ đơn giản đến phức tạp Giúp người giải vấn đề tính tốn Trong mơi trường đại học, MATLAB công cụ hàng đầu cho việc nghiên cứu, phát triển khóa học tốn học, công nghệ kỹ thuật, khoa học Trong công nghiệp, MATLAB công cụ lựa chọn để nghiên cứu sản phẩm công nghệ cao với công cụ truy xuất liệu, điều khiển tự động, mạng neural, fuzzy logic, mô phỏng, … công cụ khác I.a Giới thiệu Simulink Simulink công cụ Matlab, giúp tương tác, cung cấp môi trường làm việc cho mơ hình, mơ phỏng, phân tích động học hệ thống Hình I-2 Logo Simulink Matlab Simulink cung cấp giao diện người sử dụng (GUI-Graphical user interface) cho việc xây dựng mơ khối mơ tả đối tượng Với việc chứa đựng thư viện rộng lớn, tính trội, Simulink cho phép mơ tả hệ thống phi tuyến tuyến tính, hệ liên tục hay hệ rời rạc 77 an Luận Văn Tốt Nghiệp I.b Giới thiệu khối hỗ trợ thiết kế mô hệ thống điều khiển tự động Để thiết kế, mô hệ thống điều khiển tự động môi trường Matlab/Simulink, ta tiến hành khởi động phần mềm Matlab, cửa sổ lệnh, gõ lệnh simulink, sau Enter Một cửa sổ xuất hiện, chọn Blank Model Click chọn Library Browser để đến thư viện chứa đựng khối mô hệ thống điều khiển tự động Hình I-3 Thư viện Matlab/Simulink Hình I-4 Một số khối mơ tả hệ thống điều khiển tự động Khối constant: mô tả giá trị mong muốn, số hữu hạn Khối Integrator: Tính tốn ngun phân Khối Discrete Derivative: Tính tốn đạo hàm Khối PID Controller: Bộ điều khiển PID Khối Matlab Function: Tính tốn với ngơn ngữ lập trình C Khối Subsystem: Mơ tả đối tượng, hệ thống Khối Scope: Dao động ký, hiển thị kết II Chương trình GA tìm kiếm thơng số điều khiển LQR Chương trình tìm kiếm thông số điều khiển LQR giải thuật GA: % Programmed by : Huynh Thai Hoang, University of Technology at Ho Chi Minh City % Last updated : November 25, 2005 78 an Luận Văn Tốt Nghiệp clc;%xoa bo man hinh clear all%xoa bo toan bo du lieu truoc rand('state',sum(100*clock)); %progam LQr control rotary inverted pendulum sytem mp = 0.027; % khoi luong lac- da chinh sua Lp = 0.328; % dai lac - da chinh sua Lr = 0.205; Jr = 0.0019; % moment quan tinh cua canh tay Jp = 0.00046617; % moment quan tinh cua lac Lm = 0.1756; % cuon cam dong co Ra = 11.7356; % dien tro dong co Kt = 0.0531; % hang so moment dong co - da chinh sua Kv = 0.0531; % hang so phan dien motor - da chinh sau Cm = 3.7757e-05; % he so ma sat nhot Jm = 0.0195; % Momen quán tinh cua roto dc Tf = 0.0014; % momen ma sat Kf = 0.0014; % momen xoan can Br = 0.0017; % he so ma sat cua canh tay Bp = 0.0001; % he so ma sat cua lac g = 9.80665; % gia toc torng truong R=1; A = [0 1.0000 0; 47.1570 -0.1086 -0.6303; 0 1.0000; 14.1057 -0.0325 -0.8279]; B =[ 0; 1.4698; 0; 1.9306]; J_before=1000; max_generation=20000; ) max_stall_generation=50000; epsilon=0.0001; pop_size=200; % so ca the qun the(so cha me) npar = 4; range=[ 0 0 ; 79 an Luận Văn Tốt Nghiệp 100 100 100 100 ]; dec=[2 2 2]; sig=[4 4 4]; cross_prob = 0.6; mutate_prob = 0.4; elitism = 1; rho=0.02; par=Init(pop_size,npar,range); Terminal=0; generation = 0; stall_generation=0; for pop_index=1:pop_size, Q11=par(pop_index,1); Q22=par(pop_index,2); Q33=par(pop_index,3); Q44=par(pop_index,4); Q=[Q11 0 0; Q22 0; 0 Q33 0; 0 Q44]; K=lqr(A,B,Q,R); sim('test_lqr.slx'); if length(e1)>9500 Q11; Q22; Q33; Q44; J=e1'*e1 + e2'*e2; fitness(pop_index)=1/(J+eps); else J=10^100; fitness(pop_index)=1/(J+eps); end end; [bestfit,bestchrom]=max(fitness); Q110=par(bestchrom,1); Q220=par(bestchrom,2); Q330=par(bestchrom,3); 80 an Luận Văn Tốt Nghiệp Q440=par(bestchrom,4); elitism=1; Jt=1/bestfit+0.001; while ~Terminal generation = generation+1; disp(['generation #' num2str(generation) ' of maximum ' num2str(max_generation)]); pop=Encode_Decimal_Unsigned(par,sig,dec); %ma hoa thap phan (nhiem sac the cua cac ca the) parent=Select_Linear_Ranking(pop,fitness,0.2,elitism,bestchrom); child=Cross_Twopoint(parent,cross_prob,elitism,bestchrom); pop=Mutate_Uniform(child,mutate_prob,elitism,bestchrom); par=Decode_Decimal_Unsigned(pop,sig,dec); for pop_index=1:pop_size, Q11=par(pop_index,1); Q22=par(pop_index,2); Q33=par(pop_index,3); Q44=par(pop_index,4); Q=[Q11 0 0; Q22 0; 0 Q33 0; 0 Q44]; K=dlqr(Ad,Bd,Q,R); sim('test_lqr.slx'); if length(e1)>9500 Q11; Q22; Q33; Q44; J=e1'*e1 + e2'*e2;%+rho*(u'*u); if J

Ngày đăng: 02/02/2023, 09:07

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w