1. Trang chủ
  2. » Giáo Dục - Đào Tạo

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

135 2 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 SKL007187 Tp Hồ Chí Minh, tháng 08/2020 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 Luận Văn Tốt Nghiệp GIỚI THIỆU 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 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 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 yê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 q 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 Luận Văn Tốt Nghiệp Lời Cảm Ơn Trong q trình thực đề tài, tơi nhận sự giúp đỡ Qúy thầy/cô bạn, nhờ đề tài hoà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 chuyên 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 chuyên 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, 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 đỡ suốt 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 Luận Văn Tốt Nghiệp Mục Lục Lời Mở Đầu Lời Cảm Ơn Mục Lục Danh Mục Hình Ảnh Danh Mục Bảng Danh Mục Từ Viết Tắt Tóm Tắt CHƯƠNG 1: DẪN NHẬP 1.1Đặt vấn đề 1.2Lý chọn đề tài 1.3Đối tượng nghiên cứu 1.4Giới hạn đề tài 1.5Dàn ý nghiên cứu 1.5.1Cấu trúc hệ lắc ngư 1.5.2Giải thuật điều khiển 1.5.3Board STM32F407 Dis 1.5.4 Phần mềm Phần cứng 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.1Giới thiệu hệ lắc ngược quay 2.2Mơ tả tốn học hệ lắc ngược quay 2.2.1Cơ sở khoa học 2.2.2Thành lập phương trình 2.2.3Mơ tả toán học hệ l 2.3Yêu cầu điều khiển hệ lắc ngược quay CHƯƠNG 3: ĐỀ XUẤT GIẢI PHÁP ĐIỀU KHIỂN HỆ CON LẮC NGƯỢC QUAY 3.1Giới thiệu giải thuật điều khiển tuyến tính dạng toàn ph 3.2Giới thiệu nguyên lý ổn định Lyapunov 3.2.1Phương pháp thứ c 3.2.2Phương pháp thứ hai củ 3.3Giới thiệu giải thuật điều khiển Backstepping 3.4Giới thiệu giải thuật swing-up iii Luận Văn Tốt Nghiệp 3.5 Giải thuật di truyền (GA) 3.5.1 Giới thiệu giải thuật di 3.5.2 Lưu đồ giải thuật t 3.6 Giới thiệu phần mềm Matlab Matworks 3.7 Thiết kế điều khiển LQR cho hệ lắc ngược qu 3.8 Thiết lập điều khiển Swing up cho lắc quay 3.8.1 Swing up phương 3.8.2 Swing up phương 3.9 Thiết kế điều khiển Backstepping tuyến tính CHƯƠNG 4: THIẾT KẾ PHẦN CỨNG VÀ PHẦN MỀM 4.1 Phần cứng 4.1.1 Thiết kế mơ hình hệ co 4.1.2 Giới thiệu board STM32F407 DISCOVERY 4.1.3 Lựa chọn động điều 4.1.4 Cầu H IR2184 4.1.5 Encoder 4.1.6 Mạch giao tiếp UART CP2102 4.1.7 Khối nguồn 4.2 Phần mềm 4.2.1 Giới thiệu thư viện lập 4.2.2 Phần mềm Terminal CHƯƠNG 5: NHẬN DẠNG THÔNG SỐ ĐỘNG CƠ SERVO DC 5.1 5.2 5.3 5.4 Mơ tả tốn học động DC Phương pháp nhận dạng Thiết lập chương trình nhận dạng Thu thập liệu xác định thông số thực CHƯƠNG 6: KẾT QUẢ NGHIÊN CỨU 6.1 Điều khiển cân hệ lắc ngược quay ph 6.1.1 Điều khiển cân h áp dụng Giải thuật di truyền (GA) 6.1.2 Phân tích đáp ứng ngõ Q R 6.2 Điều khiển Swing up ổn định hệ lắc ngược q 6.2.1 Swing up phương iv 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 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 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 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) phương pháp lượng ổn định giải thuật  (rad) Swing up 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 Luận Văn Tốt Nghiệp 0 swing-up lắc vào vùng bất ổn định [-15 ;15 ] 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 z 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 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 hồn tồ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 hồn tồ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 Nguyên 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 z để cải thiện chất lượng tín hiệu ngõ hệ thống lắc ngược quay 73 Luận Văn Tốt Nghiệp TÀI LIỆU THAM KHẢO [1] Iraj Hassanzadeh, Saleh Mobayen, Controller Design for Rotary Inverted Pendulum System Using Evolutionary Algorithms, Mathematical Problems in Engineering, Volume 2011, tr 1-17, 2011 [2] Jen-Hsing Li, Composite Fuzzy Control of a Rotary InvertedPendulum, 2013 IEEE International Symposium on Industrial Electronics, 2013 [3] 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 [4] 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 [5] 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 4292-4297, 2016 [6] Galsanbadam Sainzaya, Fan-Nong Yu, Tung-Lin Hsieh, Chan-Yun Yang, LQR control with refined PID to balance rotary inverted pendulum with time-varying uncertainty, 2017 International Conference on Fuzzy Theory and Its Applications (iFUZZY), 2017 [7] 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 [8] 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 [9] 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 [10] 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 Luận Văn Tốt Nghiệp [11] 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 [12] 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 [13] 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 [14] 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 [15] 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 32-40, 2018 [16] Cao Xuân 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 [17] 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 [18] Xiao Qing Ma A Thesis in The Department of Mechanical Engineering, Fuzzy Control for an under-actuated Robotic Manipirlator: Pendubot, August 2001 [19] 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 [20] K Furuta, M Iwase, Swing-up time analysis of pendulum, Bulletin of the Polish Academy of Sciences Technical Sciences Vol 52, No 3, tr 153163, 2004 [21] 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 [22] 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 [23] https://www.youtube.com/watch?v=EtNSRSThyxM&t=1145s [24] Keyu Lai, Jin Xiao, Xiaoguang Hu, Jianxin Fan, Bing Wu, Modeling and Control for Stability and Rotation Velocity of a Rotary Inverted Pendulum, 75 Luận Văn Tốt Nghiệp 2015 IEEE 10th Conference on Industrial Electronics and Applications (ICIEA), tr 955-960, 2015 [25] 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 [26] 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 [27] Yung-Chih Fu, Jung-Shan Lin, Nonlinear Backstepping Control Design of the Furuta Pendulum, IEEE Conference on Control Applications, tr 96-101, 2005 [28] 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 [29] 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 [30] Quanser rotary inverted pendulum workbook [31] 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 [32] 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 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 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 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; Jp = 0.00046617; Lm = 0.1756; Ra = 11.7356; Kt = 0.0531; Kv = 0.0531; Cm = 3.7757e-05; Jm = 0.0195; Tf = 0.0014; Kf = 0.0014; Br = 0.0017; Bp = 0.0001; g = 9.80665; R=1; A=[0 47.1570 14.1057 B=[0; 1.4698; 0; 1.9306]; J_before=1000; max_generation=20000; max_stall_generation=50000; epsilon=0.0001; pop_size=200; npar = 4; range=[ 79 Luận Văn Tốt Nghiệp 100 dec=[2 2 sig=[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; 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 Q22 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 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; 0 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: 26/12/2021, 17:45

Xem thêm:

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

TÀI LIỆU LIÊN QUAN

w