Ứng dụng vi mạch điện tử Arduino Mega trong cài đặt thuật toán điều khiển ổn định vị trí con lắc ngược quay

70 2K 4
Ứng dụng vi mạch điện tử Arduino Mega trong cài đặt thuật toán điều khiển ổn định vị trí con lắc ngược quay

Đ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

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP ĐẶNG TRUNG DŨNG ỨNG DỤNG VI MẠCH ĐIỆN TỬ ARDUINO MEGA TRONG CÀI ĐẶT THUẬT TOÁN ĐIỀU KHIỂN ỔN ĐỊNH VỊ TRÍ CON LẮC NGƯỢC QUAY LUẬN VĂN THẠC SĨ KỸ THUẬT ĐIỆN TỬ THÁI NGUYÊN - 2014 i ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP ĐẶNG TRUNG DŨNG ỨNG DỤNG VI MẠCH ĐIỆN TỬ ARDUINO MEGA TRONG CÀI ĐẶT THUẬT TOÁN ĐIỀU KHIỂN ỔN ĐỊNH VỊ TRÍ CON LẮC NGƯỢC QUAY Chuyên ngành: KỸ THUẬT ĐIỆN TỬ Mã số: 60.52.02.03 LUẬN VĂN THẠC SĨ KỸ THUẬT ĐIỆN TỬ PHÒNG QUẢN LÝ ĐÀO TẠO SAU ĐẠI HỌC NGƯỜI HƯỚNG DẪN KHOA HỌC TS. Nguyễn Văn Chí KHOA ĐIỆN TỬ TRƯỞNG KHOA THÁI NGUYÊN - 2014 ii LỜI CAM ĐOAN Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi, các số liệu, kết quả nêu trong luận văn này là trung thực và là công trình nghiên cứu của riêng tôi, luận văn này không giống hoàn toàn bất cứ luận văn hoặc các công trình đã có trước đó. Thái Nguyên, ngày tháng năm 2014 Tác giả luận văn Đặng Trung Dũng iii LỜI CẢM ƠN Trong suốt quá trình học tập và tốt nghiệp, tôi đã nhận được sự giúp đỡ tận tình của các thầy cô trong bộ môn Đo lường điều khiển - Khoa Điện tử - Trường Đại học Kỹ thuật công nghiệp - Đại học Thái Nguyên. Tôi xin bày tỏ lòng biết ơn đối với các thầy cô giáo và Phòng quản lý đào tạo sau đại học vì sự giúp đỡ tận tình này. Tôi đặc biệt gửi lời cảm ơn đến thầy giáo TS. Nguyễn Văn Chí đã tận tình giúp đỡ, hướng dẫn tôi trong thời gian thực hiện đề tài. Cảm ơn sự giúp đỡ của gia đình, bạn bè và các đồng nghiệp trong thời gian qua. Mặc dù đã cố gắng, song do điều kiện thời gian và kinh nghiệm còn nhiều hạn chế nên không thể tránh khỏi thiếu sót. Vì vậy, tôi rất mong nhận được sự đóng góp ý kiến của các thầy cô cũng như của các bạn bè, đồng nghiệp. Tôi xin chân thành cảm ơn! Thái Nguyên, ngày tháng năm 2014 Tác giả luận văn Đặng Trung Dũng iv MỤC LỤC LỜI CAM ĐOAN ii LỜI CẢM ƠN iiii MỤC LỤC ivv BẢNG THUẬT NGỮ VIẾT TẮT vii DANH MỤC HÌNH VẼ vii DANH MỤC BẢNG BIỂU ixx MỞ ĐẦU 1 Chương 1. GIỚI THIỆU VỀ VI MẠCH ARDUINO MEGA 2560 3 1.1. Giới thiệu về Arduino 3 1.1.1. Giới thiệu chung 3 1.1.2. Giới thiệu về Arduino Mega 2560 4 1.1.3. Các thông số cơ bản của Arduino 2560 [2] 4 1.2. Cài đặt Arduino Mega 7 1.3. Thiết lập giao tiếp giữa Matlab/Simulink và Arduino [4], [5] 10 1.4. Kết luận chương 1 13 Chương 2. THUẬT TOÁN ĐIỀU KHIỂN CON LẮC NGƯỢC QUAY KRI PP-300 14 2.1. Hệ thống con lắc ngược quay và những ứng dụng đã được phát triển 14 2.2. Giới thiệu về con lắc ngược quay Kri PP-300 16 2.2.1. Tổng quan hệ thống con lắc ngược quay Kri PP-300 16 2.2.2. Những bài toán sử dụng hệ thống con lắc ngược quay Kri PP-300 17 2.3. Hệ thống con lắc ngược quay Kri PP-300 có tại Bộ môn Đo lường điều khiển…20 2.3.1. Phần mềm hệ thống (System sofwave) 21 2.3.2. Hệ thống máy tính (Personal Computer System) 21 2.3.3. Bo mạch điều khiển UC96 (Universal Controller UC96 Microcontroller Board) 22 2.3.4. Bo mạch công suất điều khiển động cơ (Motor Driver Board) 22 2.3.5. Bộ nguồn (Power Supply) 23 v 2.3.6. Bộ con lắc ngược quay Kri PP-300 (Inverted Pendulum Apparatus Kri PP-300) 24 2.4. Thuật toán điều khiển hệ thống con lắc ngược quay Kri PP-300 28 2.4.1. Mô hình toán hệ thống 28 2.4.2. Xác định tham số của mô hình 31 2.4.3. Thiết kế bộ điều khiển 34 2.5. Kết luận chương 2 38 Chương 3. ỨNG DỤNG VI MẠCH ĐIỆN TỬ ARDUINO MEGA TRONG CÀI ĐẶT THUẬT TOÁN ĐIỀU KHIỂN ỔN ĐỊNH VỊ TRÍ CON LẮC NGƯỢC QUAY KRI PP - 300 39 3.1. Sơ đồ khối hệ thống con lắc ngược quay Kri PP-300 39 3.2. Nhiệm vụ của các khối 40 3.3. Hệ thống điều khiển trên Matlab/Simulink 42 3.3.1. Khối con lắc ngược quay - Rotary Inverted Pendulum: 43 3.3.2. Bộ điều khiển cân bằng - Balance controller: nhằm ổn định con lắc ở vị trí cân bằng, được thiết kế trên Matlab/Simulink như Hình 3.8: 44 3.3.3. Bộ điều khiển Swing up - Swing up controller 44 3.3.4. Khóa chuyển đổi bộ điều khiển - Switch 45 3.4. Chương trình cho Arduino mega 2560 46 3.5. Kết quả điều khiển 53 3.5.1. Kết quả trên bộ điều khiển có 3 biến trạng thái 53 3.5.2. Kết quả trên bộ điều khiển có 4 biến trạng thái 55 3.5.3. Video kết quả thực nghiệm 57 3.6. Kết luận chương 3 57 KẾT LUẬN VÀ ĐÁNH GIÁ 54 1.1. Kết luận 58 1.2. Đóng góp của luận văn 59 1.3. Hướng phát triển của đề tài 59 TÀI LIỆU THAM KHẢO 60 vi BẢNG THUẬT NGỮ VIẾT TẮT Từ viết tắt Từ hoặc nhóm từ Từ tiếng anh ADC Biến đổi tương tự - số Analog Digital Converter COM Cổng nối tiếp LQR Linear-Quadratic regulator PWM Điều chế độ rộng xung Pulse Width Modulation PID Bộ điều khiển vi tích phân tỉ lệ Proportional Integral Derivative UAV Máy bay không người lái Unmanned aerial vehicle USB Chuẩn kết nối nối tiếp Universal Serial Bus VDC Điện áp một chiều Volts Direct Current vii DANH MỤC HÌNH VẼ Hình 1.1. Đầu vào ra số trên Arduino Mega 2560 5 Hình 1.2. Đầu ra PWM trên Arduino Mega 2560 6 Hình 1.3. Cổng Communication trên Arduino Mega 2560 6 Hình 1.4. Đầu vào tương tự trên Arduino Mega 2560 7 Hình 1.5. Vi mạch Arduino Mega 2560 8 Hình 1.6. Cáp USB chuẩn A-B 8 Hình 1.7. Download phần mềm Arduino Sofwave 9 Hình 1.8. Download phần mềm Arduino Sofwave 9 Hình 1.9. Cài đặt phần mềm Arduino Sofwave 10 Hình 1.10. Matlab/Simulink R2012a 10 Hình 1.11. Cài đặt Target installer 11 Hình 1.12. Cài đặt Target installer 11 Hình 1.13.Cài đặt Target installer 12 Hình 1.14. Cài đặt Arduino IO Library 12 Hình 2.1. Cầu trục 14 Hình 2.2. Xe hai bánh tự cân bằng 15 Hình 2.3. Tên lửa khi rời bệ phóng 15 Hình 2.4. Mô hình con lắc ngược quay Kri PP-300 16 Hình 2.5. Mô phỏng hệ thống cẩu tháp 17 Hình 2.6. Cân bằng con lắc 18 Hình 2.7. Swing up và cân bằng con lắc 18 Hình 2.8. Swing up và cân bằng con lắc ở vị trí bất kỳ cho trước 19 Hình 2.9. Tổng quan về Kri PP-300 20 Hình 2.10. Phần mền hệ thống 21 Hình 2.11. Hệ thống máy tính 21 Hình 2.12. Bo mạch điều khiển UC96 22 Hình 2.13. Mạch công suất 22 Hình 2.14. Bộ nguồn 23 viii Hình 2.15. Bộ con lắc ngược 24 Hình 2.16. Cảm biến góc quay 24 Hình 2.17. Trống quay 25 Hình 2.18. Encoder 25 Hình 2.19. Vị trí Encoder 27 Hình 2.20. Bộ nguồn 27 Hình 2.21. Arduino mega 2560 28 Hình 2.22. Mô hình toán học con lắc ngược quay 28 Hình 2.23. Cánh tay con lắc 31 Hình 2.24. Mô tả khối lượng cánh tay và quả lắc 32 Hình 2.25. Sơ đồ khối bộ điều khiển hệ thống vòng hở 36 Hình 2.26. Sơ đồ khối bộ điều khiển hệ thống vòng kín 36 Hình 2.27. Bộ điều khiển sử dụng phương pháp gán điểm cực 37 Hình 3.1. Sơ đồ khối kết nối Arduino mega 2560 điều khiển con lắc ngược quay Kri PP-300 39 Hình 3.2. Chân đọc tín hiệu Encoder trên Arduino mega 2560 40 Hình 3.3. Chân xuất ra tín hiệu điều khiển động cơ trên Arduino mega 2560 40 Hình 3.4. Chân đọc tín hiệu góc quay con lắc trên Arduino mega 2560 41 Hình 3.5. Sơ đồ khối điều khiển hệ thống trên Matlab/Simulink 42 Hình 3.6. Mô hình mô phỏng hệ thống con lắc 43 Hình 3.7. Mô hình xử lý tín hiệu Anpha, Anpha_dot, Beta, Beta_dot 43 Hình 3.8. Mô hình bộ điều khiển cân bằng cho con lắc ngược quay 44 Hình 3.9. Mô hình bộ điều khiển Swing up 44 Hình 3.10. Mô hình xử lý Swing up 45 Hình 3.11. Mô hình khóa chuyển đổi bộ điều khiển (Switch) 45 Hình 3.12. Đáp ứng góc của cánh tay và góc của con lắc với 3 biến điều khiển 53 Hình 3.13. Đáp ứng vận tốc của cánh tay và góc của con lắc với 3 biến điều khiển 54 Hình 3.14. Đáp ứng góc của cánh tay và góc của con lắc với 4 biến điều khiển55 Hình 3.15. Đáp ứng vận tốc của cánh tay và góc của con lắc với 4 biến điều khiển.56 ix DANH MỤC BẢNG BIỂU Bảng 2.1. Bảng tham số của hệ thống con lắc ngược quay 29 Bảng 2.2. Bảng tham số khối lượng con lắc 31 Bảng 2.3. Bảng khảo sát tham số K u 32 Bảng 2.4. Bảng hệ số K t , K b , R a của động cơ 33 Bảng 2.5. Bảng giá trị hệ số J 0 , C 0 , J 1 , C 1 33 [...]... tại này là ứng dụng vi mạch điện tử Arduino Mega để cài đặt thuật toán điều khiển ổn định vị trí con lắc ngược quay, qua đó phát triển thêm phương thức ứng dụng vi mạch điện tử mới trong quá trình điều khiển hệ thống Các mục tiêu cụ thể của đề tài: - Tìm hiểu về vi mạch điện tử Arduino Mega và ứng dụng nhúng các trình điều khiển trên nó - Tìm hiểu về con lắc ngược quay và phương pháp điều khiển cân... hợp vi mạch điện tử Arduino Mega cài đặt thuật toán điều khiển ổn định vị trí con lắc ngược quay Kri PP - 300 có tại trung tâm thí nghiệm của Trường Đại học kỹ thuật công nghiệp – Đại học Thái Nguyên 3 Đối tượng và phạm vi nghiên cứu 2 Đối tượng và phạm vi nghiên cứu chính của đề tài là: Ứng dụng vi mạch điện tử Arduino MEGA 2560 trong cài đặt thuật toán điều khiển ổn định vị trí con lắc ngược quay. .. toán điều khiển cân bằng con lắc ngược quay Kri PP-300 thông qua Matlab/Simulink 6 Bố cục của luận văn: Nội dung chính của luận văn được trình bày trong 04 chương như sau: Chương 1: Giới thiệu về vi mạch Arduino mega 2560 Chương 2: Thuật toán điều khiển con lắc ngược quay Kri PP-300 Chương 3: Ứng dụng vi mạch điện tử Arduino Mega trong cài đặt thuật toán điều khiển ổn định vị trí con lắc ngược quay. .. cứu kỹ hơn vi c ứng dụng vi mạch điện tử Arduino Mega tạo ra hệ thống có mạch điều khiển với độ chính xác, ổn định cao, góp một phần nhỏ vào vi c phát triển, ứng dụng vi mạch điện tử Arduino Ứng dụng vi mạch Arduino Mega để cài đặt tình điều khiển phục hồi lại hoạt động của mô hình con lắc ngược quay Kri PP-300 có tại trung tâm thí nghiệm của Trường, giúp cho thuận tiện hơn trong vi c cài đặt và thử... kín về phần mềm và phần cứng, không cho phép chỉnh định thay đổi chương trình điều khiển Hơn 10 năm qua mô hình đã không còn chạy được do phần mềm bị hỏng, vi mạch điều khiển hỏng Với những ưu điểm của vi mạch điện tử Arduino như trên, tác giả đã mạnh dạn lựa chọn đề tài Ứng dụng vi mạch điện tử Arduino MEGA trong cài đặt thuật toán điều khiển ổn định vị trí con lắc ngược quay 2 Mục tiêu của luận... tính toán, cài đặt thuật toán vào vi mạch Arduino để xử lý, điều khiển con lắc ngược quay Kri PP-300 tại phòng thí nghiệm bộ môn Đo lường - điều khiển, khoa Điện Tử 2.1 Hệ thống con lắc ngược quay và những ứng dụng đã được phát triển Hệ thống con lắc ngược là hệ thống phức tạp có tính phi tuyến cao và không ổn định Hiện nay có rất nhiều nhà nghiên cứu đã sử dụng các thuật toán điều khiển khác nhau để điều. .. cho ra đời bộ kit Arduino Mega ADK dùng để phát triển các ứng dụng trên hệ điều hành Android Tuy nhiên tại Vi t Nam vi mạch điện tử Arduino chưa được biết đến nhiều, chưa có nhiều ứng dụng được phát triển trên loại vi mạch này [1] 4 1.1.2 Giới thiệu về Arduino Mega 2560 Bo mạch điện tử Arduino Mega 2560 là một Vi mạch điện tử điều khiển dựa trên nền tảng của chíp ATmega 2560, Arduino Mega 2560 tích hợp... nhằm điều khiển con lắc ở vị trí ổn định dưới Hình 2.5 Mô phỏng hệ thống cẩu tháp 18 + Cân bằng con lắc Hình 2.6 Cân bằng con lắc Ứng dụng điều khiển cân bằng con lắc ngược nghiên cứu phát triển các thuật toán ổn định hệ thống tuyến tính và tuyết tính tại các vùng ổn định và cả vùng không ổn định để đưa ra giải pháp tối ưu nhất cho các thuật toán điều khiển + Swing up và cân bằng con lắc Hình 2.7 Swing... các thuật toán điều khiển khác nhau phục vụ cho công tác nghiên cứu, đào tạo của Bộ môn, Khoa và Nhà trường 5 Phương pháp nghiên cứu Nghiên cứu, tìm hiểu những ứng dụng được phát triển trên vi mạch điện tử Arduino Mega; Nghiên cứu tìm hiểu có chế hoạt động, thuật toán điều khiển cân bằng con lắc ngược quay thông qua mô hình thực; Khảo sát, thực nghiệm trên vi mạch điện tử Arduino Mega cài đặt thuật toán. .. Cài đặt Arduino IO Library 13 1.4 Kết luận chương 1 Chương này của luận văn trình bày về nội dung nhằm đánh giá tổng quan về vi mạch điện tử Arduino với các ưu điểm cũng như cách thức cài đặt, kết nối vi mạch điện tử Arduino với phần mềm Arduino và với Matlab/Simulink Qua đó làm rõ thêm khả năng có thể kết nối, mở rộng điều khiển đối với vi mạch điện tử Arduino, khả năng “nhúng” các ứng dụng điều khiển . vi mạch Arduino mega 2560 Chương 2: Thuật toán điều khiển con lắc ngược quay Kri PP-300 Chương 3: Ứng dụng vi mạch điện tử Arduino Mega trong cài đặt thuật toán điều khiển ổn định vị trí con. khiển ổn định vị trí con lắc ngược quay 2. Mục tiêu của luận văn Mục tiêu chính của đề tại này là ứng dụng vi mạch điện tử Arduino Mega để cài đặt thuật toán điều khiển ổn định vị trí con lắc. 38 Chương 3. ỨNG DỤNG VI MẠCH ĐIỆN TỬ ARDUINO MEGA TRONG CÀI ĐẶT THUẬT TOÁN ĐIỀU KHIỂN ỔN ĐỊNH VỊ TRÍ CON LẮC NGƯỢC QUAY KRI PP - 300 39 3.1. Sơ đồ khối hệ thống con lắc ngược quay Kri PP-300

Ngày đăng: 06/11/2014, 00:05

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan