Bài tập lớn học phần KỸ THUẬT ROBOT ( ROBOTIC TECHNIQUES) Robot nghiên cứu: Yaskawa EPX2050 Lời nói đầu Ngày này, đất nước ngày càng phát triển, việc áp dụng khoa học công nghệ, đặc biệt là kỹ thuật Robot trong các nhà máy, phòng thí nghiệm, thậm chí là trong quân sự và dân dụng ngày càng được quan tâm, mở rộng. Do vậy, trong những năm gần đây, các lĩnh vực về nghiên cứu và sản xuất, chế tạo Robot được đẩy mạnh, phát triển. Sự xuất hiện và ứng dụng của Robot vào công nghiệp giúp giảm lượng công việc nặng cho nhân công, giải phóng nguồn nhân lực, tang năng xuất sản xuất, tạo nên nhiều nguồi lợi cho cạnh tranh và phát triển. Để nghiên cứu và hiểu thêm về ứng dụng Robot trong công nghiệp chúng em đã tìm hiểu về Robot EPX 2050 . Với sự tìm hiểu qua các nguồn thông tin cùng với những kiến thức thu được trong quá trình học tập và sự hướng dẫn của cô giáo TS Nguyễn Phạm Thục Anh, chúng em đã tính toán, xây dựng mô hình động học thuận, động học ngược, xây dựng quỹ đạo và xây dựng mô hình động lực học cho Robot EPX 2050. Dù nhận được sự quan tâm hướng dẫn tận tình của cô giáo nhưng trong quá trình thực hiện còn nhiều hạn chế nên báo cáo không thể tránh khỏi những thiết sót. Chúng em mong các thầy cô góp ý để báo cáo được hoàn thiện hơn. Chúng em xin chân thành cảm ơn
BÀI TẬP LỚN KỸ THUẬT ROBOT ROBOT EPX2050 Bài tập lớn học phần KỸ THUẬT ROBOT ( ROBOTIC TECHNIQUES ) Robot nghiên cứu: Yaskawa EPX2050 Giảng viên hướng dẫn: PGS.TS Nguyễn Phạm Thục Anh Nhóm thảo luận: Nhóm Họ tên sinh viên: Đặng Hoàng Bách - 20173657 Trần Việt Hoàng - 20172571 Trần Nguyễn Đức Thọ - 20173389 Lê Hải Triều - 20174280 LỜI CẢM ƠN Kính gửi đến PGS.TS Nguyễn Phạm Thục Anh lời cảm ơn chân thành sâu sắc, cảm ơn cô tận tình hướng dẫn, dạy chúng em tạo điều kiện thuận lợi cho nhóm suốt q trình hồn thành tập lớn học phần Nhóm chúng em xin gửi lời cảm ơn chân thành đến quý thầy cô trường Đại học Bách khoa Hà Nội nói chung, viện Điện mơn Tự Động Hóa Cơng Nghiệp nói riêng giảng dạy truyền đạt kiến thức chuyên ngành cho chúng em thời gian vừa qua Lời nói đầu Ngày này, đất nước ngày phát triển, việc áp dụng khoa học công nghệ, đặc biệt kỹ thuật Robot nhà máy, phịng thí nghiệm, chí quân dân dụng ngày càng quan tâm, mở rộng Do vậy, năm gần đây, lĩnh vực nghiên cứu sản xuất, chế tạo Robot đẩy mạnh, phát triển Sự xuất ứng dụng Robot vào công nghiệp giúp giảm lượng công việc nặng cho nhân cơng, giải phóng nguồn nhân lực, tang xuất sản xuất, tạo nên nhiều nguồi lợi cho cạnh tranh phát triển Để nghiên cứu hiểu thêm ứng dụng Robot cơng nghiệp chúng em tìm hiểu Robot EPX 2050 Với tìm hiểu qua nguồn thông tin với kiến thức thu trình học tập hướng dẫn cô giáo TS Nguyễn Phạm Thục Anh, chúng em tính tốn, xây dựng mơ hình động học thuận, động học ngược, xây dựng quỹ đạo xây dựng mơ hình động lực học cho Robot EPX 2050 Dù nhận quan tâm hướng dẫn tận tình giáo q trình thực cịn nhiều hạn chế nên báo cáo tránh khỏi thiết sót Chúng em mong thầy góp ý để báo cáo hoàn thiện Chúng em xin chân thành cảm ơn! Mục lục Chương 1: Tổng quan chung 1.1 Giới thiệu Robot EPX2050 1.2 Kết cấu khí 1.3 Thông số kỹ thuật Chương 2: Động học thuận 10 2.1 Tính tốn động học thuận 10 2.2 Xây dựng chương trình matlab 13 Chương 3: Ma trận Jacobi 15 3.1 Tính toán ma trận 15 3.2 Xây dựng chương trình matlab 16 Chương 4: Động học đảo vị trí Robot 19 Chương 5: Thiết kế quỹ đạo chuyển động dạng bậc 26 Chương 6: Thiết kế chuyển động cho Robot 28 6.1 Tính tốn mơ hình động học 28 6.2 Mô Simulink 32 Chương 7: Xây dựng mơ hình động lực học cho đối tượng ToolBox Simscape/Matlab 34 7.1 Cài đặt sử dụng 34 7.2 Mơ hình thiết kế 38 7.3 Mô chuyển động 39 Chương 1: Tổng quan chung 1.1 Giới thiệu Robot EPX2050 Hình 1.1 Hình ảnh Robot EPX2050 - Như biết công đoạn phun sơn cơng nghiệp là cơng đoạn có tính độc hại cao người phải tiếp xúc với bột sơn Việc sử dụng Robot sơn là việc làm tất yêu giúp ta giải vấn đề ngồi cịn cắt giảm cơng đoạn phải dùng đến nhân cơng lao động - Nhóm chúng em xin giới thiệu rô-bôt sơn Yaskawa EPX2050 Đây là dịng Robot dùng phổ biến cơng nghiệp sơn, ứng dụng vào nhiều cơng đoạn khác sơn lót, sơn lớp sở, sơn phủ lớp cuối với khả sử dụng nhiều loại sơn khác sơn bột, sơn nước, Robot linh hoạt với hỗ trợ trục, kèm theo option kiểm soát độ dày lớp sơn, khả làm việc liên tục ổn định giúp chất lượng, công suất sơn dây chuyền tăng đáng kể 1.2 Kết cấu khí Hình 1.2 Bản vẽ khí - Robot sơn EPX2050 có trục tốc độ cao, linh hoạt lý tưởng cho ứng dụng sơn phủ oto nhiều ứng dụng khác công nghiệp - Thiết kế cổ tay lõm là lý tưởng cho việc sơn phần có đường viền bề mặt bên trong/bên ngoài; phù hợp để lắp đặt thiết bị phun sơn Đường kính ống bên 50mm tránh can thiệp ống phận/thiết bị, đảm bảo thời gian chu kỳ tối ưu và Robot tiếp cận/truy cập - Trọng tải 15 kg, chiều ngang đạt 2054 mm,chiều cao thẳng đứng 2806 mm Robot có thiết kế nhỏ gọn,linh hoạt chứng nhận dùng mơi trường nguy hiểm - Robot có điều khiển nâng cao NX100-FM: • Bao gồm phần mềm ứng dụng cụ thể cho ứng dụng sơn • Phối hợp hoạt động Robot thiết bị sơn, kể súng phun • Hỗ trợ hướng dẫn kiểm sốt súng khởi động / dừng phun và điều kiện sơn • Tất thơng số vị trí vẽ nộp và lưu • Hỗ trợ mạng chuẩn (như DeviceNet, ControlNet, Profibus-DP Interbus-S), cho phép kết nối với điều khiển thiết bị sơn và điều khiển dây chuyền sản xuất 1.3 Thông số kỹ thuật Hình 1.3 Thơng số kỹ thuật Robot EPX2050 a0 = a1 = o a2 = ( f − ) − − f tf tf tf a3 = − ( f − ) + ( f + ) tf tf - Vậy quỹ đạo cho biến khớp qi là: qi (t ) = i (t ) = 0 + 0t + [ - 2 ( f − 0 ) − 0 − f ]t + [ − ( f − ) + ( f + )]t tf tf tf tf tf Đồ thị góc khớp q , vận tốc q gia tốc q theo thời gian có dạng sau: Hình 5.1 Đồ thị góc khớp, vận tốc gia tốc 27 Chương 6: Thiết kế chuyển động cho Robot 6.1 Tính tốn mơ hình động học - Khai báo biến: % khai báo biến khớp và đạo hàm bậc bậc khớp syms q1 q2 q3 q4 q5 q6 dq1 dq2 dq3 dq4 dq5 dq6 ddq1 ddq2 ddq3 ddq4 ddq5 ddq6 % khai báo trọng tâm mơ men qn tính syms xg1 yg1 zg1 Ix1 Iy1 Iz1 xg2 yg2 zg2 Ix2 Iy2 Iz2 xg3 yg3 zg3 Ix3 Iy3 Iz3 xg4 yg4 zg4 Ix4 Iy4 Iz4 xg5 yg5 zg5 Ix5 Iy5 Iz5 xg6 yg6 zg6 Ix6 Iy6 Iz6 % Khai báo trọng lượng khoảng cách syms m1 m2 m3 m4 m5 m6 g a1 a2 a3 a4 a5 - Các ma trận Pci có từ lấy cột thứ tích ma trận Ti T1 = A1; T2= simplify(A1*A2); T3= simplify(A1*A2*A3); T4= simplify(A1*A2*A3*A4); T5= simplify(A1*A2*A3*A4*A5); T6= simplify(A1*A2*A3*A4*A5*A6); - Khi ta có được: Pc1 = [a1*cos(q1); a1*sin(q1); 0;]; Pc2 = [cos(q1)*(a1 + a2*cos(q2)); sin(q1)*(a1 + a2*cos(q2)); -a2*sin(q2);]; Pc3 = [cos(q1)*(a1 + a3*sin(q2 + q3) + a2*cos(q2)); sin(q1)*(a1 + a3*sin(q2 + q3) + a2*cos(q2)); a3*cos(q2 + q3) - a2*sin(q2);]; 28 Pc4 = [cos(q1)*(a1 + a4*cos(q2 + q3) + a3*sin(q2 + q3) + a2*cos(q2));sin(q1)*(a1 + a4*cos(q2 + q3) + a3*sin(q2 + q3) + a2*cos(q2)); a3*cos(q2 + q3) - a4*sin(q2 + q3) a2*sin(q2);]; Pc5 = [ cos(q1)*(a1 + a4*cos(q2 + q3) + a3*sin(q2 + q3) + a2*cos(q2)); sin(q1)*(a1 + a4*cos(q2 + q3) + a3*sin(q2 + q3) + a2*cos(q2)); a3*cos(q2 + q3) - a4*sin(q2 + q3) a2*sin(q2);]; Pc6 = [a1*cos(q1) + a2*cos(q1)*cos(q2) + a4*cos(q1)*cos(q2)*cos(q3) + a3*cos(q1)*cos(q2)*sin(q3) + a3*cos(q1)*cos(q3)*sin(q2) - a4*cos(q1)*sin(q2)*sin(q3) a5*sin(q1)*sin(q4)*sin(q5) + a5*cos(q1)*cos(q2)*cos(q3)*cos(q5) a5*cos(q1)*cos(q5)*sin(q2)*sin(q3) - a5*cos(q1)*cos(q2)*cos(q4)*sin(q3)*sin(q5) a5*cos(q1)*cos(q3)*cos(q4)*sin(q2)*sin(q5); a1*sin(q1) + a2*cos(q2)*sin(q1) + a4*cos(q2)*cos(q3)*sin(q1) + a3*cos(q2)*sin(q1)*sin(q3) + a3*cos(q3)*sin(q1)*sin(q2) + a5*cos(q1)*sin(q4)*sin(q5) - a4*sin(q1)*sin(q2)*sin(q3) + a5*cos(q2)*cos(q3)*cos(q5)*sin(q1) - a5*cos(q5)*sin(q1)*sin(q2)*sin(q3) a5*cos(q2)*cos(q4)*sin(q1)*sin(q3)*sin(q5) a5*cos(q3)*cos(q4)*sin(q1)*sin(q2)*sin(q5); a3*cos(q2)*cos(q3) - a2*sin(q2) a4*cos(q2)*sin(q3) - a4*cos(q3)*sin(q2) - a3*sin(q2)*sin(q3) a5*cos(q2)*cos(q5)*sin(q3) - a5*cos(q3)*cos(q5)*sin(q2) a5*cos(q2)*cos(q3)*cos(q4)*sin(q5) + a5*cos(q4)*sin(q2)*sin(q3)*sin(q5);]; %tính đạo hàm Pci dPc1=diff(Pc1,q1)*dq1; dPc2=[diff(Pc2,q1) diff(Pc2,q2)]*[dq1;dq2]; dPc3=[diff(Pc3,q1) diff(Pc3,q2) diff(Pc3,q3)]*[dq1;dq2;dq3]; dPc4=[diff(Pc4,q1) diff(Pc4,q2) diff(Pc4,q3) diff(Pc4,q4)]*[dq1;dq2;dq3;dq4]; dPc5=[diff(Pc5,q1) diff(Pc5,q2) diff(Pc5,q3) diff(Pc5,q4) diff(Pc5,q5)]*[dq1;dq2;dq3;dq4;dq5]; dPc6=[diff(Pc6,q1) diff(Pc6,q2) diff(Pc6,q3) diff(Pc6,q4) diff(Pc6,q5) diff(Pc6,q6)]*[dq1;dq2;dq3;dq4;dq5;dq6]; % tính động K1=0.5*(transpose(dPc1)*m1*dPc1 + Iz1*dq1*dq1); K2=0.5*(transpose(dPc2)*m2*dPc2 + Iz2*dq2*dq2); K3=0.5*(transpose(dPc3)*m3*dPc3 + Iz3*dq3*dq3); K4=0.5*(transpose(dPc4)*m4*dPc4 + Iz4*dq4*dq4); K5=0.5*(transpose(dPc5)*m5*dPc5 + Iz5*dq5*dq5); K6=0.5*(transpose(dPc6)*m6*dPc6 + Iz6*dq6*dq6); 29 K=K1+K2+K3+K4+K5+K6; %tính P1=-m1*g*[0 -1]*Pc1; P2=-m2*g*[0 -1]*Pc2; P3=m3*g*[0 1]*Pc3; P4=m4*g*[0 1]*Pc4; P5=m5*g*[0 1]*Pc5; P6=m6*g*[0 1]*Pc6; P=P1+P2+P3+P4+P5+P6; %hàm lagrange L=K-P; %khớp lq1=diff(L,q1); ldq1=diff(L,dq1); dldq1=[ diff(ldq1,dq1) diff(ldq1,q1) diff(ldq1,q2) diff(ldq1,q3) diff(ldq1,q4) diff(ldq1,q5) diff(ldq1,q6)]*[ddq1;dq1;dq2;dq3;dq4;dq5;dq6]; % Momen dat len truc T1=dldq1-lq1; %khơp lq2=diff(L,q2); ldq2=diff(L,dq2); dldq2=[diff(ldq2,dq2) diff(ldq2,q1) diff(ldq2,q2) diff(ldq2,q3) diff(ldq2,q4) diff(ldq2,q5) diff(ldq2,q6)]*[ddq2;dq1;dq2;dq3;dq4;dq5;dq6]; % Momen dat len truc T2=dldq2-lq2; %khớp lq3=diff(L,q3); ldq3=diff(L,dq3); dldq3=[diff(ldq3,dq3) diff(ldq3,q1) diff(ldq3,q2) diff(ldq3,q3) diff(ldq3,q4) diff(ldq3,q5) diff(ldq3,q6)]*[ddq3;dq1;dq2;dq3;dq4;dq5;dq6]; % Momen dat len truc T3=dldq3-lq3; %khớp 30 lq4=diff(L,q4); ldq4=diff(L,dq4); dldq4=[diff(ldq4,dq4) diff(ldq4,q1) diff(ldq4,q2) diff(ldq4,q3) diff(ldq4,q4) diff(ldq4,q5) diff(ldq4,q6)]*[ddq4;dq1;dq2;dq3;dq4;dq5;dq6]; % Momen dat len truc T4=dldq4-lq4; %khớp lq5=diff(L,q5); ldq5=diff(L,dq5); dldq5=[diff(ldq5,dq5) diff(ldq5,q1) diff(ldq5,q2) diff(ldq5,q3) diff(ldq5,q4) diff(ldq5,q5) diff(ldq5,q6)]*[ddq5;dq1;dq2;dq3;dq4;dq5;dq6]; % Momen dat len truc T5=dldq5-lq5; %khớp lq6=diff(L,q6); ldq6=diff(L,dq6); dldq6=[diff(ldq6,dq6) diff(ldq6,q1) diff(ldq6,q2) diff(ldq6,q3) diff(ldq6,q4) diff(ldq6,q5) diff(ldq6,q6)]*[ddq6;dq1;dq2;dq3;dq4;dq5;dq6]; % Momen dat len truc T6=dldq6-lq6; Tính ma trận mơ hình động học % tinh ma tran quan tinh H(q) h11= diff(T1,ddq1); h22= diff(T2,ddq2); h33= diff(T3,ddq3); h44= diff(T4,ddq4); h55= diff(T5,ddq5); h66= diff(T6,ddq6); H1=[h11 0 0 0; h22 0 0; 0 h33 0 0; 0 h44 0; 0 0 h55 0; 31 0 0 h66]; H=simplify(H1);% don gian han H1 %tinh ma tran truong g(q) g11=diff(T1,g); g22=diff(T2,g); g33=diff(T3,g); g44=diff(T4,g); g55=diff(T5,g); g66=diff(T6,g); G1=[g11;g22;g33;g44;g55;g66]; G=simplify(G1);% don gian han G1 %tinh ma trận tương hỗ ly tâm V(q,dq) T=[T1;T2;T3;T4;T5;T6]; ddq=[ddq1;ddq2;ddq3;ddq4;ddq5;ddq6]; V1=T-H*ddq-G*g; V=simplify(V1);% don gian han V1 6.2 Mô Simulink - Chỉnh định tham số điều khiển PD: Kp1 = 33; Kp2 =120;Kp3 = 77;Kp4 = 50;Kp5 = 50;Kp6 = 50; Kd1 = 35;Kd2 =75;Kd3 = 35;Kd4 = 30;Kd5 = 30;Kd6 = 30; 32 Hình 6.1: Sơ đồ khối mơ Simulink - Đáp ứng đầu khớp với giá trị đặt Pi/2 Hình 6.2: Kết mơ 33 Chương 7: Xây dựng mơ hình động lực học cho đối tượng ToolBox Simscape/Matlab 7.1 Cài đặt sử dụng - Để tiến hành mô Robot sau vẽ SolidWorks dựa Toolbox Simscape Matlab, cần cài đặt “Simscape Multibody Link” - Link download cho phiên khác nhau: https://www.mathworks.com/campaigns/offers/download_smlink_confirmation.html? elqsid=1568003686675&potential_use=Student&fbclid=IwAR3f7gYJpVe0_pOYntO kzDLemEtPKj2GvZ01XrdVomMqAnCOpQKWjbFFWRk Sau download hai file dưới, ta tiến hành cài đặt - Copy hai file vào thư mục Bin Matlab (để thuận tiện cài đặt) → Mở matlab với quyền quản trị viên → Gõ lệnh “install_addon(‘tên_toolbox_đã_download’)” → Gõ lệnh “smlink_linksw” để kết thúc trình cài đặt - Chuyển qua Solidworks Sau hoàn tất vẽ liên kết khớp → Add-Ins → Chọn Simscape Multibody Link - Vào Tool/Simscape Multibody Link/Export/Simscape Multibody First Generation 1G → Chọn vị trí lưu → Ta file xml 34 - Sau xuất file Soildworks dạng file xml → Gõ lệnh “mech_import” để chuyển đổi file xml sang file simulink - Sau xuất file ta hình dưới: 35 - Tiếp theo tiến hành thiết kế điều khiển Chuyển đổi giá trị “Number of sensor / actuator ports:” khối Revolute lên giá trị “1” (nhằm thêm điều khiển cho khớp xoay link Robot) Vào thư viện lấy khối để thực thiết kế điều khiển: Joint Actuator, Constant, Slider Gain, Mux - Thiết kế khối sau: 36 - Chúng ta ghép khối với đầu điều khiển khối Revolute(tham số chỉnh định sau) - Chuyển sang chế độ Motion (dạng chuyển động) khối Joint Actuator - Chỉnh giới hạn góc quay cho khớp khối Slider Gain - Về khối điều khiển có dạng sau: 37 Tín hiệu Joint Actuator đưa tới đầu vào điều khiển cho khớp: 7.2 Mơ hình thiết kế 38 Hình 7.3 Mơ hình điều khiển Robot 7.3 Mô chuyển động - Sau đặt giá trị SETPOINT cho tất góc 450, ta thu đáp ứng sau: Hình 7.1 Vị trí ban đầu 39 Hình 7.2 Sau đặt giá trị SP - So sánh giá trị đặt với tín hiệu đầu Hình 7.3 Tín hiệu đặt giá trị đầu 40 Kết luận Qua trình tìm hiểu làm tập lớn, kết hợp với kiến thức giảng dạy lớp, chúng em hiểu rõ và sâu Robot nói chung Robot EPX2050 nói riêng Tuy nhiên, cịn nhiều hạn chế mặt thơng tin kiến thức, báo cáo chúng em khó tránh khỏi việc nhiều thiếu sót q trình thực Kính mong đọc và góp ý để chúng em hồn thiện tương lai Chúng em xin chân thành cảm ơn ! 41