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

(Luận văn thạc sĩ hcmute) tổng quan về omni direction robot

101 3 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 LUẬN VĂN THẠC SĨ PHẠM LÊ LONG TRIỀU TỔNG QUAN VỀ OMNI DIRECTION ROBOT NGÀNH: KỸ THUẬT ĐIỆN SKC007430 Tp Hồ Chí Minh, tháng 10/2017 Luan van 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 LUẬN VĂN THẠC SỸ PHẠM LÊ LONG TRIỀU TỔNG QUAN VỀ OMNI DIRECTION ROBOT NGÀNH: KỸ THUẬT ĐIỆN – 60520202 Tp Hồ Chí Minh, tháng 10/2017 Luan van 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 LUẬN VĂN THẠC SỸ PHẠM LÊ LONG TRIỀU TỔNG QUAN VỀ OMNI DIRECTION ROBOT NGÀNH: KỸ THUẬT ĐIỆN – 60520202 Hƣớng dẫn khoa học: PGS.TS NGUYỄN THANH PHƢƠNG Tp Hồ Chí Minh, tháng 10/2017 Luan van Luan van Luan van LÝ LỊCH KHOA HỌC I LÝ LỊCH SƠ LƢỢC: Họ & tên: PHẠM LÊ LONG TRIỀU Giới tính: Nam Ngày, tháng, năm sinh: 10-03-1991 Nơi sinh: Đồng Nai Quê quán: Quảng Nam Dân tộc: Kinh Chỗ riêng địa liên lạc: Tổ 25b,Ấp trần cao vân,Xã Bàu Hàm 2,Thống Nhất,Đồng Nai Điện thoại quan: Điện thoại riêng: 0968228908 Fax: E-mail: longtrieu719@gmail.com II QUÁ TRÌNH ĐÀO TẠO: Đại học: Hệ đào tạo: Đại học quy Thời gian đào tạo từ 09/2009 đến 10/ 2014 Nơi học (trƣờng, thành phố): Đại học Sƣ Phạm Kỹ Thuật, Tp Hồ Chí Minh Ngành học: Sƣ Phạm Kỹ Thuật Điện cơng nghiệp Tên đồ án, luận án môn thi tốt nghiệp:ỨNG DỤNG MẠNG WAVELET TRONG DỰ BÁO NGẮN HẠN PHỤ TẢI ĐIỆN KHU VỰC TP.HCM Ngày & nơi bảo vệ đồ án, luận án thi tốt nghiệp: 20/04/2014, Đại học sƣ phạm kỹ thuật Tp Hồ Chí Minh Ngƣời hƣớng dẫn: TS.Lê Chí Kiên III Q TRÌNH CƠNG TÁC CHUYÊN MÔN KỂ TỪ KHI TỐT NGHIỆP ĐẠI HỌC: Thời gian Từ 11/2014 đến 6/2017 Từ 7/2017 đến Nơi công tác Trung Tâm Phát Triển Qũy Đất Huyện Thống Nhất, Tỉnh Đồng Nai Công ty Cổ Phẩn Sản Xuất Kinh Doanh Thiết Bị Điện TTC i Luan van Công việc đảm nhiệm Nhân Viên Kỹ sƣ Điện LỜI CAM ĐOAN Tơi cam đoan cơng trình nghiên cứu Các số liệu, kết nêu luận văn trung thực chƣa đƣợc công bố cơng trình khác Tp Hồ Chí Minh, ngày……tháng……năm 2017 (Ký tên ghi rõ họ tên) Phạm Lê Long Triều ii Luan van LỜI CẢM ƠN Trong thời gian học tập nghiên cứu trƣờng, Tơi hồn thành đề tài tốt nghiệp cao học Có đƣợc thành này, Tơi nhận đƣợc nhiều hỗ trợ giúp đỡ tận tình thầy cơ, gia đình, quan bạn bè thời gian học tập vừa qua Tơi xin bày tỏ lịng biết ơn chân thành đến Thầy PGS.TS Nguyễn Thanh Phƣơng, Trƣờng Đại học Kỹ Thuật Cơng Nghệ TP.HCM, ngƣời tận tình hƣớng dẫn, giúp đỡ, truyền đạt kinh nghiệm để Tơi hồn thành luận văn Xin chân thành cảm ơn đến tất q Thầy Cơ trƣờng Đại Học Sƣ Phạm Kỹ Thuật Tp Hồ Chí Minh trang bị cho tơi lƣợng kiến thức bổ ích, đặc biệt xin chân thành cảm ơn q Thầy Cơ Khoa Điện – Điện Tử tạo điều kiện thuận lợi hỗ trợ cho Tơi q trình học tập nhƣ thời gian làm luận văn tốt nghiệp Tôi xin gởi lời cảm ơn chân thành đến đồng nghiệp, gia đình, bạn bè giúp đỡ cho tơi nhiều để vƣợt qua khó khăn, tạo cho Tơi niềm tin nỗ lực phấn đấu để hoàn thành luận văn Xin chân thành cảm ơn ! Tp Hồ Chí Minh, tháng 10/2017 Học viên thực Phạm Lê Long Triều iii Luan van TÓM TẮT Đề tài ― TỔNG QUAN VỀ OMNIDIRECTION ROBOT ‖ đƣợc tiến hành khoảng thời gian 1,5 năm trƣờng Đại Học Sƣ Phạm Kỹ Thuật TP.HCM Sau thời gian nghiên cứu đề tài đƣợc triền khai tập trung giải vấn đề sau:  Tìm hiểu mơ hình toán học robot di động đa hƣớng bánh (OMR)  Tìm hiểu phƣơng pháp điều khiển trƣợt tích phân (Integal Sliding Mode Control – ISMC) cho robot di động đa hƣớng bánh  Mô robot bám theo quỹ đạo tham chiếu điều khiển sử dụng Matlab Simulink cho robot di động đa hƣớng bánh (OMR)  Xây dựng mơ hình thực nghiệm  Nhận xét kết đạt đƣợc hạn chế mô hình iv Luan van ABSTRACT Thesis ―OVERVIEW OF OMNIDIRECTIONAL ROBOT ‖ has been done for one and a half years at HO CHI MINH University of Technology And Education The thesis‘s content focused on:  Learn about mathematical model of the three-wheel mobile omnidirectional robot (OMR)  Learn about Integal Sliding Mode Control for the three-wheel mobile omni-directional robot (OMR)  Simulation of the reference robot trajectory using Matlab Simulink for OMR  Construct model experiment  Comment on the results and limitations of the model v Luan van /////////////////////////////////////////////////////////////////////////////////////////// */ if (val == 0) // tien { Serial.println(" ,Tien "); lcd.setCursor(0, 0); lcd.print("Tien "); digitalWrite(52,0); digitalWrite(in1_1, 1); // dc1 digitalWrite(in2_1, 0); analogWrite(pwm_1, 160 ); digitalWrite(in1_2, 1); digitalWrite(in2_2, 0); // dc2 analogWrite(pwm_2, 80 ); digitalWrite(in1_3, 0); digitalWrite(in2_3, 1); // dc3 analogWrite(pwm_3, 80 ); } if (val == 1) // lui { Serial.println(" ,Lui"); 71 Luan van //dco quay thuan ; lcd.setCursor(0, 0); lcd.print("Lui "); digitalWrite(52,0); digitalWrite(in1_1, 0); // dc1 digitalWrite(in2_1, 1); analogWrite(pwm_1, 160 ); digitalWrite(in1_2, 0); digitalWrite(in2_2, 1); // dc2 analogWrite(pwm_2, 80 ); digitalWrite(in1_3, 1); digitalWrite(in2_3, 0); // dc3 analogWrite(pwm_3, 80 ); } if (val == 2) // sang phai { Serial.println(" ,Sang phai "); //dco quay thuan ; lcd.setCursor(0, 0); lcd.print("Sang phai "); digitalWrite(52,0); 72 Luan van analogWrite(pwm_1, ); // dc1 digitalWrite(in1_2, 1); digitalWrite(in2_2, 0); // dc2 analogWrite(pwm_2, 255 ); digitalWrite(in1_3, 1); digitalWrite(in2_3, 0); // dc3 analogWrite(pwm_3, 255 ); } if (val == 3) // sang trai { Serial.println(" ,Sang trai"); //dco quay thuan ; lcd.setCursor(0, 0); lcd.print("Sang trai "); digitalWrite(52,0); analogWrite(pwm_1, ); // dc1 digitalWrite(in1_2, 0); digitalWrite(in2_2, 1); // dc2 analogWrite(pwm_2, 255 ); digitalWrite(in1_3, 0); digitalWrite(in2_3, 1); // dc3 analogWrite(pwm_3, 255 ); 73 Luan van } if (val == 4) // dung { Serial.println(" ,Dung "); lcd.setCursor(0, 0); lcd.print("Dung "); analogWrite(pwm_1, ); analogWrite(pwm_2, ); analogWrite(pwm_3, ); t=0; //dco quay thuan ; } if (val == 5) // thuan { Serial.println(" ,Quay Thuan "); //dco quay thuan ; lcd.setCursor(0, 0); lcd.print("Quay Thuan "); digitalWrite(52,0); digitalWrite(in1_1, 1); // dc1 digitalWrite(in2_1, 0); analogWrite(pwm_1, 100 ); digitalWrite(in1_2, 0); 74 Luan van digitalWrite(in2_2, 1); // dc2 analogWrite(pwm_2, 100 ); digitalWrite(in1_3, 1); digitalWrite(in2_3, 0); // dc3 analogWrite(pwm_3, 100 ); } if (val == 6) // nghich { Serial.println(" ,Quay nghich "); //dco quay nghich lcd.setCursor(0, 0); lcd.print("Quay Nghich "); digitalWrite(52,0); digitalWrite(in1_1, 0); // dc1 digitalWrite(in2_1, 1); analogWrite(pwm_1, 100 ); digitalWrite(in1_2, 1); digitalWrite(in2_2, 0); // dc2 analogWrite(pwm_2, 100 ); digitalWrite(in1_3, 0); digitalWrite(in2_3, 1); // dc3 75 Luan van analogWrite(pwm_3, 100 ); } } } // gan gia tri if (val == 10) { digitalWrite(52,0); //lcd.clear(); Serial.print(","); // x0 Serial.print(x_dat); Serial.print(",");// Serial.print(x_thuc); Serial.print(","); // y0 Serial.print(y_dat); Serial.print(",");// Serial.print(y_thuc); Serial.print(","); // goc Serial.print(gochientai); Serial.print(",");// kp 76 Luan van Serial.print(kp); Serial.print(","); //ki Serial.print(ki); Serial.print(","); // kd Serial.print(kd); Serial.print(","); // u1 Serial.print(u1); Serial.print(","); // u2 Serial.print(u2); Serial.print(","); // u3 10 Serial.println(u3); lcd.setCursor(0, 0); lcd.print("x="); lcd.print(x_thuc); lcd.setCursor(0, 1); lcd.print("y="); lcd.print(y_thuc); 77 Luan van x_dat = a1*(25*sin(t)+35)+ a2*(25*sin(t)+35)+x; // A1 =0, x = y_dat = a1*(25*cos(t)+35)+ a2*(25*sin(0.5*t)+35)+y; // t= 0, x = -50 + fuzzy->setInput(1, quangduonght); fuzzy->setInput(2, de); fuzzy->setInput(3, quangduonght); fuzzy->setInput(4, de); fuzzy->setInput(5, quangduonght); fuzzy->setInput(6, de); fuzzy->fuzzify(); float outputP_tam = fuzzy->defuzzify(1); float outputD_tam = fuzzy->defuzzify(2); float outputI_tam = fuzzy->defuzzify(3); kp = outputP_tam *10 ; ki = outputI_tam *0.001; kd = outputD_tam *100; x_thuc = khoangcach_x0(); y_thuc = khoangcach_y0(); if(x_thuc >100) { x_thuc = 100; 78 Luan van } if(y_thuc >100) { y_thuc = 100; } //sua tam gochientai = goc(); //gochientai = 237; error_x = x_thuc - x_dat; error_y = y_thuc - y_dat; quangduonght = sqrt(error_x*error_x + error_y*error_y); quangduonght = quangduonght / 100; if(quangduonght > 1){ quangduonght = 1; } if(quangduonght < 0){ quangduonght = 0; } v1 =(kp*error_y)+ki*(error_y+preError_y)+kd*(error_y- preError_y); v2 =- (sqrt(3)/2)*kp*error_x+ki*(error_x+preError_x)+kd*(error_xpreError_x)+(0.5)*(kp*error_y)+ki*(error_y+preError_y)+kd*(error_y-preError_y); v3 = (sqrt(3)/2)*kp*error_x+ki*(error_x+preError_x)+kd*(error_x- 79 Luan van preError_x)+(0.5)*(kp*error_y)+ki*(error_y+preError_y)+kd*(error_y-preError_y); preError_y = error_y; preError_x = error_x; duty1 = abs(v1); duty2 = abs(v2); duty3 = abs(v3); if(duty1 > 1500){ duty1 = 1500; } if(duty2 > 1500){ duty2 = 1500; } if(duty3 > 1500){ duty3 = 1500; } u1 = map(duty1, 0, 1500, 60 , 250); u2 = map(duty2, 0, 1500, 60 , 250); u3 = map(duty3, 0, 1500, 60 , 250); // chuong trinh chinh //11111111111111//////////////*****************/////////////// if (gochientai < (gocdat + 10)) { 80 Luan van //dco quay nghich digitalWrite(in1_1, 0); digitalWrite(in2_1, 1); analogWrite(pwm_1, 100 ); // dc1 digitalWrite(in1_2, 1); digitalWrite(in2_2, 0); analogWrite(pwm_2,100 ); //dc2 digitalWrite(in1_3, 0); digitalWrite(in2_3, 1); analogWrite(pwm_3, 100); // dc3 } //22222222222222222222222222222222222222222 if (gochientai > (gocdat - 10)) { //dco quay thuan ; digitalWrite(in1_1, 1); digitalWrite(in2_1, 0); analogWrite(pwm_1, 100); // dc1 digitalWrite(in1_2, 0); digitalWrite(in2_2, 1); analogWrite(pwm_2, 100); //dc2 81 Luan van digitalWrite(in1_3, 1); digitalWrite(in2_3, 0); analogWrite(pwm_3, 100); // dc3 } //3333333333333333333333333333 if (gochientai = (gocdat - 10) ) { // bam xung cho dong co if (v1 > 0) { digitalWrite(in1_1, 1); // dc1 digitalWrite(in2_1, 0); analogWrite(pwm_1, u1 +3); } if (v1 < 0) { digitalWrite(in1_1, 0); // dc1 digitalWrite(in2_1, 1); analogWrite(pwm_1, u1+3); } if (v1 == 0) { analogWrite(pwm_1, ); } // dong co 82 Luan van if (v2 > 0) { digitalWrite(in1_2, 0); digitalWrite(in2_2, 1); // dc2 analogWrite(pwm_2, u2 ); } if (v2 < 0) { digitalWrite(in1_2, 1); digitalWrite(in2_2, 0); // dc2 analogWrite(pwm_2, u2 ); } if (v2 == 0) { analogWrite(pwm_2, ); } // dong co if (v3 > 0) { digitalWrite(in1_3, 1); digitalWrite(in2_3, 0); // dc3 analogWrite(pwm_3, u3 ); } if (v3 < 0) { digitalWrite(in1_3, 0); digitalWrite(in2_3, 1); // dc3 83 Luan van analogWrite(pwm_3, u3); } if (v3 == 0) { analogWrite(pwm_3, ); } } } } Code Pidc.m V = kp* [ex;ey] + ki*[tpex;tpey] + kd * [dhex;dhey] u1 = V'*[0;1] + pdthe; u2 = V'*[-sqrt(3)/2;-0.5] + pdthe; u3 = V'*[sqrt(3)/2;-0.5] + pdthe; sys(1) = u1; sys(2) = u2; sys(3) = u3; Code Quangduong.m ex = u(1); ey = u(2); u = sqrt(ex*ex + ey*ey) sys(1) = u; 84 Luan van S K L 0 Luan van ... định chọn đề tài ― Tổng Quan Về Omni Direction Robot? ?? Sử dụng lý thuyết ổn định Lyapunov, điều khiển trƣợt tích phân (ISMC) đƣợc thiết kế để điều khiển chuyển động Omnidirection Robot, sử dụng phần... ĐÀO TẠO TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH LUẬN VĂN THẠC SỸ PHẠM LÊ LONG TRIỀU TỔNG QUAN VỀ OMNI DIRECTION ROBOT NGÀNH: KỸ THUẬT ĐIỆN – 60520202 Hƣớng dẫn khoa học: PGS.TS NGUYỄN... Robot omni chạy theo quỹ đạo hình vng 54 Hình 6: Robot omni chạy theo quỹ đạo hình trịn .55 xi Luan van Chƣơng 1: TỔNG QUAN 1 Tổng Quan Về RoBot Theo trình phát triển xã hội, nhu cầu tự động

Ngày đăng: 02/02/2023, 10:03

Xem thêm: