1. Trang chủ
  2. » Luận Văn - Báo Cáo

THIẾT KẾ, CHẾ TẠO VÀ MÔ PHỎNG ROBOT 5 BẬC SỬ DỤNG TOOLBOX ROBOTICS MATLAB

64 366 3

Đ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

Thông tin cơ bản

Định dạng
Số trang 64
Dung lượng 6,27 MB
File đính kèm nhan - tran.rar (6 MB)

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NÔNG LÂM THÀNH PHỐ HỒ CHÍ MINH KHOA CƠ KHÍ CƠNG NGHỆ KHÓA LUẬN TỐT NGHIỆP THIẾT KẾ, CHẾ TẠO VÀ MÔ PHỎNG ROBOT BẬC SỬ DỤNG TOOLBOX ROBOTICS MATLAB Họ tên sinh viên: ĐINH NGỌC TRÂN PHẠM THỊ NHÂN Ngành: CƠ ĐIỆN TỬ Niên khóa: 2014-2018 Tháng 06/2018 THIẾT KẾ, CHẾ TẠO VÀ MÔ PHỎNG ROBOT BẬC SỬ DỤNG TOOLBOX ROBOTICS MATLAB Tác giả Đinh Ngọc Trân Phạm Thị Nhân Khóa luận tốt nghiệp đệ trình đáp ứng yêu cầu cấp Kỹ sư ngành Cơ Điện Tử Giáo viên hướng dẫn: ThS Nguyễn Tấn Phúc Tháng 06 năm 2018 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap LỜI CẢM ƠN Để hồn thành khóa luận này, em xin tỏ lòng biết ơn sâu sắc Thầy ThS.Nguyễn Tấn Phúc, tận tình hướng dẫn suốt trình thực khóa luận tốt nghiệp Em xin chân thành cảm ơn tri ân sâu sắc quý Thầy, Cô khoa Cơ khí cơng nghệ, với Thầy, Cơ trường Đại học Nơng Lâm TP.HCM tận tình truyền đạt kiến thức năm em học tập Với vốn kiến thức tiếp thu trình học khơng tảng cho q trình nghiên cứu khóa luận mà hành trang q báu để em bước vào đời cách vững tự tin Trong q trình thực khóa luận tốt nghiệp khó tránh khỏi sai sót, mong Thầy, Cơ bỏ qua Đồng thời, trình độ lý luận kinh nghiệm thực tiễn hạn chế nên báo cáo khơng thể tránh khỏi thiếu sót, em mong nhận ý kiến đóng góp Thầy, Cơ để em học thêm nhiều kinh nghiệm Em xin chân thành cảm ơn! TP Hồ Chí Minh, tháng năm 2018 Sinh viên thực Đinh Ngọc Trân Phạm Thị Nhân SVTH: Nguyễn Huỳnh Như Vinh Quy 3 GVHD: Nguyễn Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap TÓM TẮT Đề tài nghiên cứu: “Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlab” thực xưởng CK6 Bộ Môn Cơ Điện Tử, trường Đại học Nông Lâm TP.HCM Đề tài thực từ tháng 12 năm 2017 đến tháng năm 2018 với hướng dẫn ThS.NGUYỄN TẤN PHÚC Nội dung đề tài bao gồm: - Thiết kế, chế tạo cánh tay robot bậc Tính tốn chọn động cho cánh tay robot Tính tốn, thiết kế truyền trục vít bánh vít Tính tốn, thiết kế truyền bánh Tính tốn, thiết kế truyền đai Thiết lập giải thuật điều khiển cánh tay robot Viết chương trình matlab điều khiển cho cánh tay robot Khảo nghiệm hoạt động cánh tay SVTH: Nguyễn Huỳnh Như Vinh Quy 4 GVHD: Nguyễn Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap MỤC LỤC SVTH: Nguyễn Huỳnh Như Vinh Quy 5 GVHD: Nguyễn Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap DANH SÁCH CÁC BẢNG SVTH: Nguyễn Huỳnh Như Vinh Quy 6 GVHD: Nguyễn Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap DANH SÁCH CÁC HÌNH SVTH: Nguyễn Huỳnh Như Vinh Quy 7 GVHD: Nguyễn Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap Chương MỞ ĐẦU 1.1 Lí chọn đề tài Trong thời đại cơng nghiệp ngày nay, robot ngày sử dụng phổ biến sản xuất sống ngày Robot có vị trí quan trọng khó thay được, giúp người cơng việc nguy hiểm khó khăn Ngồi sử dụng lĩnh vực thám hiểm không gian, quân sự, giải trí… Lĩnh vực robot ngày chiếm quan tâm nhà nghiên cứu xã hội Thuật ngữ robot sinh từ sân khấu, phân xưởng sản xuất Những robot xuất lần trên NewYork vào ngày 09/10/1922 “Rossum’s Universal Robot” nhà soạn kịch người Tiệp Karen Kapek viết năm 1921, từ robot cách gọi tắt từ robota - theo tiếng Tiệp có nghĩa cơng việc lao dịch Robot loại máy thực công việc cách tự động điều khiển máy tính Robot tác nhân khí, nhân tạo, thường hệ thống khí-điện tử Ngày robot tâm điểm cách mạng lớn sau Internet Robot ngày sử dụng rộng rãi lĩnh vực công nghiệp, y tế, giáo dục đào tạo, giải trí, an ninh quốc phòng, thám hiểm không gian Robot sản phẩm công nghệ có độ phức tạp cao, chứa hàm lượng tri thức vô phong phú tất lĩnh vực khoa học cơng nghệ Từ tình hình thực tế chúng em thực việc “THIẾT KẾ, CHẾ TẠO VÀ MÔ PHỎNG ROBOT BẬC SỬ DỤNG TOOLBOX Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap ROBOTICS MATLAB” Với đề tài chúng em mong muốn đưa đến mơ hình thực tế rõ ràng ứng dụng lĩnh vực giảng dạy 1.2 Mục tiêu đề tài Mục tiêu đề tài bao gồm: - “Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlab” công việc để người thực đề tài nghiên cứu kỹ khái niệm mơ hình, ngun lý làm việc tập lệnh vi xử lý - Sản phẩm đề tài trước hết ứng dụng vào phương tiện giảng dạy trường phát triển rộng sâu ứng dụng vào thực tế sản xuất cơng nghiệp, đặc biết cung cấp nhìn tổng quát vi xử lý tay máy công nghiệp 1.3 Nội dung đề tài Nội dung đề tài sau: - Tìm hiểu nghiên cứu trước dạng robot có khâu xoay - Tìm hiểu toolbox robotics 9.0 matlab - Ứng dụng toolbox robotics để tính tốn động học, động lực học cho robot khâu xoay - Thiết kế, chế tạo robot khâu kích thước 80cm x 80cm x 80cm để kiểm chứng kết tính tốn 1.4 Các nghiên cứu trước đề tài Trong nước Cựu kỹ sư Kiệt trường Đại học Bách Khoa chế tạo thành công robot bậc tự Điểm mạnh robot A.K.B bậc tự nằm giá thành khả sửa chữa Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap Hình 1.1 Robot A.K.B 1.4.2 Nước Đơn cử robot Scorbot ER-5 Cơng ty Intelitek (Mỹ) sản xuất Hình 1.2: Robot Scorbot ER-5 1.5 Lịch sử nghiên cứu 1.5.1 Lịch sử phát triển nước - Robot xuất từ sớm, từ kỉ III trước công nguyên 10 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap Hình 4.15: Tạo giao diện viết code Một số hàm quan trọng sử dụng GUI: Hàm callback lập trình cho nút button, checkbox,edittext,… Mỗi callback viết với cấu trúc sau: function Tag_Callback(hObject, eventdata, handles) Với tag giá trị Tag ta đặt giao diện, hàm chứa bên + hObject hàm truy cập nội function riêng + eventdata hàm xác định thuộc tính function + handles hàm truy cập liên kết function, bao gồm tất cấu trúc người dùng sử dụng đẻ truy xuất qua điều khiển khác Hàm Get cho gọi thuộc tính đối tượng Hàm Set cho phép đặt giá trị thuộc tính đối tượng Xây dựng giao diện phần mềm dựa tảng GUI Matlab 50 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap Hình 4.16 :Giao diện điều khiển ban đầu Robot mơ Hình 4.17: Giao diện điều khiển nhập góc vào Giao diện phần mềm bao gồm: Vị trí 1,2,3,4,5,6,7,8 Edittext với Edittext ô cho phép bạn nhập liệu vào lấy liệu để thực thi việc Forward, inverse nút pushbutton với pushbutton nút nhấn để ta thao tác click chuột vào xử lý nghiệm vụ Giải thuật GUI Matlab: Vị trí : nhập giá trị góc cho khâu (bàn xoay) Vị trí : nhập giá trị góc cho khâu hai Vị trí : nhập giá trị góc cho khâu ba Vị trí : nhập giá trị góc cho khâu bốn 51 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap Vị trí 5: nhập giá trị góc cho tay gắp Vị trí 6: tọa độ trục X Vị trí 7: tọa độ trục Y Vị trí 8: tọa độ trục Z Nguyên lý hoạt động Động học Thuận: Khi ta nhập góc A vào vị trí sau nhấn lệnh Forward làm cho bàn xoay xoay Robot mơ góc A xuất tọa độ vị trí X, Y, Z vị trí 6, ,8 theo động học thuận học Khi ta nhập góc B vào vị trí sau nhấn lệnh Forward làm cánh tay xoay góc B xuất tọa độ vị trí X, Y, Z vị trí 6, ,8 theo động học thuận học Trường hợp tương tự ta nhập tất góc vị trí 1, 2, 3, 4, mong muốn người dùng, sau nhấn Forward Robot mơ xoay vị trí góc, sau xuất tọa độ vị Trí X, Y, Z vị trí 6, 7, theo động học thuận học Ở có nghĩa từ góc Theta_1, Theta_2, Theta_3, Theta_4, Theta_5 ta xác định tọa độ vị trí X, Y, Z 4.5 Lưu đồ giải thuật điều khiển cánh tay Robot 4.5.1 Lưu đồ giải thuật bàn đế Robot (sử dụng step motor): Giải thuật bàn xoay (khâu 1) cánh Robot: người dùng nhập góc X mà bàn xoay (khâu 1) cần phải xoay qua giao diện Gui Matlab, Matlab nhận diện X< cánh tay xuất xuống xung, động hoạt động làm cho bàn xoay (khâu 1) xoay góc ngược chiều kim đồng hồ góc X so với vị trí đứng, ngược lại X>0 bàn xoay (khâu 1) quay góc X chiều kim đồng hồ so với vị trí đứng 52 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap Hình 4.18: Lưu đồ giải thuật bàn xoay (khâu 1) robot 4.5.2 Lưu đồ giải thuật khâu hai, ba, bốn Robot (sử dụng step motor) Giải thuật khâu hai, ba, bốn: người dùng nhập góc Y mà khâu hai, ba, bốn cần phải xoay qua giao diện GUI Matlab, Matlab nhận diện Y< khâu hai, ba, bốn xuất xuống xung, động hoạt động làm cho khâu hai, ba , bốn quay góc hướng 53 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap xuống so với vị trí đứng cánh tay, ngược lại Y>0 khâu hai, ba, bốn quay góc hương lên so với vị trí đứng khâu hai, ba, bốn Hình 4.19: Lưu đồ giải thuật khâu hai, ba, bốn 4.5.3 Giải thuật tay gắp Robot dùng servo motor Vì dùng servo motor nên người dùng cần nhập giá trị khác 0, tay gặp tự động mở để chuẩn bị gặp vật, giá trị lơn độ mở rộng tay gắp lớn, kết thúc lệnh gắp ta cần đưa giá trị 54 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap 4.6 Sơ đồ nguyên lý mạch điều khiển cách tay robot Hình 4.20: Sơ đồ nguyên lý mạch điều khiển cánh tay robot Mạch điều khiển dụng Arduino Uno R3, có nhiệm vụ chứa chương trình điều khiển đồng thời xử lý xuất tín hiệu điểu khiển tồn hệ thống Các chân điều khiển đảo chiều động bàn xoay, khâu hai, khâu ba, khâu bốn tay gắp sau Bàn xoay với chân điều khiển D9 IC Atmega328 kết nối với chân DIR tương ứng driver động cơ, có nhiệm vụ cấp xung từ vi điều khiển cho driver động bước, chân đảo chiều quay (thuận chiều ngược chiều kim đồng hồ) bàn đế D8 kết nối với chân STEP tương ứng driver động để điều khiển chiều Khâu hai với chân điều khiển D5 IC Atmega328 kết nối với chân DIR tương ứng driver động cơ, có nhiệm vụ cấp xung từ vi điều khiển cho driver động bước, chân đảo chiều quay 55 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap (lên xuống) D4 kết nối với chân STEP tương ứng driver động để điều khiển chiều quay Khâu ba với chân điều khiển D3 IC Atmega328 kết nối với chân DIR tương ứng driver động cơ, có nhiệm vụ cấp xung từ vi điều khiển cho driver động bước, chân đảo chiều quay (lên xuống) D2 kết nối với chân STEP tương ứng driver động để điều khiển chiều quay Khâu bốn với chân điều khiển D6 IC Atmega328 kết nối với chân DIR tương ứng driver động cơ, có nhiệm vụ cấp xung từ vi điều khiển cho driver động bước, chân đảo chiều quay (lên xuống) D7 kết nối với chân STEP tương ứng driver động để điều khiển chiều quay Đối với tay gắp sử dụng mortor servo nên có chân điều khiển D12 IC Atmega328 để đóng mở tay gắp 4.7 Khảo nghiệm Thử nghiệm cánh tay hoạt động với giá trị theta = 10 o, theta 2=0o, theta 3=0o, theta 4=0o, theta 5=0o matlab thực hiển thị tọa độ x, y, z , thực giá trị 10 lần đo giá trị thực tế bảng (đơn vị mm) Bảng 4.2 Bảng khảo sát hoạt động robot bậc Số lần 10 Trung bình Phương sai Độ lệch chuẩn Truc x 610 610 611 609 610 610 611 612 610 609 610.2 0.68 0.82 Trục y 222 221 222 223 224 224 221 223 224 223 222.7 0.96 0.97 56 Trục z 193 192 193 193 194 192 194 193 192 193 192.9 0.54 0.73 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap Kết luận: Từ bảng khảo sát cho thấy nhập giá trị theta =10o, theta 2=0o, theta 3=0o, theta 4=0o, theta 5=0o khoảng sai số trục x,y,z 0.97 Chương KẾT LUẬN VÀ ĐỀ NGHỊ 5.1 Kết luận Sau thời gian nghiên cứu thực nhóm hướng dẫn giáo viên hướng dẫn hoàn thành đề tài “Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlab”và đạt số kết sau: Thiết kế cánh tay Robot bậc solidworks Chế tạo khảo nghiệm cánh tay Robot bậc Kết luận: Điều khiển cánh tay robot với tọa độ muốn nhập vào 5.2 Đề nghị Do thời gian có hạn nên thiết kế mơ hình Robot bậc dùng để khảo nghiệm phần mềm Matlab nên có số sai sót dẫn đến sai số so với tính tốn, thiết kế ban đầu Phát triển chế tạo mơ hình gắp vật vị trí muốn 57 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap TÀI LIỆU THAM KHẢO TIẾNG VIỆT [1] Vương Thành Tiên, Bài giảng nguyên lý máy, ĐHNL [2] Nguyễn Hữu Lộc , Bài giảng sở thiết kế máy, Nhà xuất Đại học Quốc gia Thành Phố Hồ Chí Minh [3] Dương Minh Trí, Linh kiện điện tử, Nhà xuất Khoa học kỹ thuật 2004 [4] Nguyễn Viết Đảm,Mô hệ thống viễn thông ứng dụng Matlab, Nhà xuất Bưu Điện 2007 [5] Nguyễn Phùng Quang, Matlab Simulink , Nhà xuất Khoa học kỹ thuật TIẾNG NƯỚC NGOÀI [6] Michael Margolis (2011), Arduino Cookbook 58 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap PHỤ LỤC Code tạo cánh tay robot GUI Matlab function varargout = nhan(varargin) gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, 'gui_Singleton', gui_Singleton, 'gui_OpeningFcn', @nhan_OpeningFcn, 'gui_OutputFcn', @nhan_OutputFcn, 'gui_LayoutFcn', [] , 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end function nhan_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject; guidata(hObject, handles); function varargout = nhan_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output; function Theta_1_Callback(hObject, eventdata, handles) function Theta_1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function Theta_2_Callback(hObject, eventdata, handles) function Theta_2_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) 59 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap set(hObject,'BackgroundColor','white'); end function Theta_3_Callback(hObject, eventdata, handles) function Theta_3_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function Theta_4_Callback(hObject, eventdata, handles) function Theta_4_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function Theta_5_Callback(hObject, eventdata, handles) function Theta_5_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function pushbutton3_Callback(hObject, eventdata, handles) Th_1 = str2double(handles.Theta_1.String)*pi/180; Th_2 = str2double(handles.Theta_2.String)*pi/180; Th_3 = str2double(handles.Theta_3.String)*pi/180; Th_4 = str2double(handles.Theta_4.String)*pi/180; Th_5 = str2double(handles.Theta_5.String)*pi/180; L_1 = 193; L_2 = 400; L_3 = 250; L_4 = 190; L_5 = 110; L(1) = Link([0 L_1 pi/2]); L(2) = Link([0 L_2 0]); L(3) = Link([0 L_3 0]); L(4) = Link([0 L_4 0]); L(5) = Link([0 L_5 0]); 60 Thiết kế, chế tạo mô robot bậc sử dụng toolbox robotics matlap Robot = SerialLink(L); Robot.name = 'nhan'; Robot.plot([Th_1 Th_2 Th_3 Th_4 Th_5]); T = Robot.fkine([Th_1 Th_2 Th_3 Th_4 Th_5]); board = arduino('COM5','Uno'); Code xuất xung xuống khâu (bàn xoay) t2=0; t1=get(handles.Theta_1,'string'); t2=str2num(t1); DIR2 = 8; PWM2 = 9; PUL2 = abs(t2)*(200/360)*144; writeDigitalPin(board,DIR2,1); y = 0; while (y

Ngày đăng: 26/09/2019, 20:54

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

TÀI LIỆU LIÊN QUAN

w