Mô hình hóa và mô phỏng 3D động học nghịch cánh tay robot 6 bậc tự do bằng việc kết hợp phần mềm CAD và công cụ Multibody trong Matlab/Simulink

6 92 1
Mô hình hóa và mô phỏng 3D động học nghịch cánh tay robot 6 bậc tự do bằng việc kết hợp phần mềm CAD và công cụ Multibody trong Matlab/Simulink

Đang tải... (xem toàn văn)

Thông tin tài liệu

Trong bài viết này, tác giả sử dụng phần mềm NX 12.0 để thiết kế mô hình 3D cánh tay Robot 6 bậc tự do và nhập mô hình này sang MATLAB/Simulink thông qua công cụ Multibody để tiến hành mô phỏng bài toán động học nghịch. Kết quả mô phỏng cho thấy sự ưu việt của phương pháp này so với các phương pháp truyền thống trước đây khi đồng thời tận dụng được sức mạnh thiết kế của các phần mềm CAD cùng với khả năng tính toán mạnh mẽ của MATLAB.

TẠP CHÍ ISSN: 1859-316X KHOA HỌC CƠNG NGHỆ HÀNG HẢI KHOA HỌC - CÔNG NGHỆ JOURNAL OF MARINE SCIENCE AND TECHNOLOGY MƠ HÌNH HĨA VÀ MƠ PHỎNG 3D ĐỘNG HỌC NGHỊCH CÁNH TAY ROBOT BẬC TỰ DO BẰNG VIỆC KẾT HỢP PHẦN MỀM CAD VÀ CÔNG CỤ MULTIBODY TRONG MATLAB/SIMULINK 3D MODELING AND INVERSE KINEMATICS SIMULATION OF A 6-DOF ARM ROBOT BY COMBINATION OF CAD SOFTWARE AND MULTIBODY TOOL IN MATLAB/SIMULINK NGUYỄN ĐỨC SANG Viện Cơ khí, Trường Đại học Hàng hải Việt Nam Email liên hệ: sangnd.vck@vimaru.edu.vn Tóm tắt Mơ hình hóa mơ cơng việc thiếu bắt tay vào nghiên cứu Robot Nó cho phép dự báo tượng xảy tối ưu hóa thông số thiết kế trước thực chế tạo Trong báo này, tác giả sử dụng phần mềm NX 12.0 để thiết kế mơ hình 3D cánh tay Robot bậc tự nhập mơ hình sang MATLAB/Simulink thông qua công cụ Multibody để tiến hành mơ tốn động học nghịch Kết mô cho thấy ưu việt phương pháp so với phương pháp truyền thống trước đồng thời tận dụng sức mạnh thiết kế phần mềm CAD với khả tính tốn mạnh mẽ MATLAB Từ khóa: Mơ hình hóa, mô phỏng, cánh tay Robot, động học, động lực học, điều khiển Abstract Modeling and Simulation are essential activities when it comes to studying Robot This helps us predict the phenomenon may occur and optimize design parameters before the prototyping step In this paper, we use NX 12.0 to design a 3D six DoF Robot arm and then import this model into MATLAB/Simulink via Multibody tool to conduct inverse kinematics simulation The results show the superior advantages of this method compared with other conventional ways as it simultaneously utilizes the design power of CAD softwares and computational capacity of MATLAB Keywords: Modeling, simulation, arm Robot, kinematics, dynamics, CAD, MATLAB, Multibody 56 Giới thiệu chung 1.1 Mơ hình hóa mơ Các phương pháp truyền thống để mơ hình hóa mơ Robot chia thành hai hướng Hướng thứ dựa phần mềm thiết kế CAD [6] SolidWorks, Inventor, Unigraphics NX, Với lợi đồ họa, cách thức cho phép mơ hình hóa trực quan giống với mẫu Robot thật nhắc đến yếu tố hình dáng, kích thước hay màu sắc Hơn nữa, việc mơ hoạt hình (animation) chuyển động Robot công cụ CAD hiệu Tuy nhiên, phần mềm đồ họa nên khả lập trình tính tốn chúng hạn chế, khơng có lợi việc áp dụng thuật tốn mơ chuyên sâu động lực học, điều khiển hay tối ưu hóa thiết kế Hướng thứ hai sử dụng phần mềm tính tốn [1], [5], [7] MATLAB, Maple, Visual studio C/C++,… Đối với phương pháp này, việc mơ hình hóa mơ thực thơng qua phương trình tham số hệ thống dựa định luật vật lý học Người thiết kế phải tự xây dựng sở liệu, thuật tốn cách thức lập trình để đạt kết mô mong muốn Do tự xây dựng mơ hình nên người lập trình tự thực mô chuyên sâu tùy theo lực phân tích dựa hỗ trợ tính tốn phần mềm Tuy nhiên, điểm yếu phương pháp trực quan thiếu vắng mơ hình 3D phần mềm tính tốn khơng có khả thiết kế phần mềm CAD 1.2 Mô kết hợp MATLAB phần mềm NX Trong báo này, tác giả sử dụng phương pháp kết hợp hai cách thức giới thiệu Mục 1.1 nhằm tận dụng lợi riêng chúng chương trình mơ thống Phương pháp mơ sử dụng công cụ Multibody MATLAB giới thiệu cách tổng quát cho hệ chuyển động [2] Đóng góp tác giả dựa hướng dẫn tổng quát áp dụng thành công, cụ thể vào mô SỐ 67 (8-2021) TẠP CHÍ ISSN: 1859-316X KHOA HỌC CƠNG NGHỆ HÀNG HẢI JOURNAL OF MARINE SCIENCE AND TECHNOLOGY chuyển động cánh tay Robot bậc tự Sau đó, tác giả diễn giải lại phương pháp mô thành bước chi tiết Mục Từ đó, độc giả hiểu rõ phương pháp dễ dàng vận dụng chúng cho hệ đặc thù mà họ quan tâm Phương pháp mô đề cập đến [9, 10] Tuy nhiên đối tượng nghiên cứu khác Ở [9] Robot song song bậc tự do, [10] Robot bậc tự sử dụng phần mềm thiết kế 3D SolidWorks Như vậy, nghiên cứu với báo củng cố mở rộng thêm minh chứng cho việc sử dụng phương pháp mô đề cập hiệu nên dùng KHOA HỌC - CÔNG NGHỆ phép người dùng tự định nghĩa liệu cần Ngoài ra, ràng buộc khâu khớp mơ hình hóa khớp quay Joint 01, Joint 02 Tất nhiên, công cụ Multibody cung cấp đầy đủ loại khớp có thực tế từ khơng đến sáu bậc tự Để lấy sở tính tốn, cần gắn vào hệ thống hệ tọa độ sở hệ Base Frame hệ gốc phép dịch chuyển hệ tọa độ khối Coordinate Transform Các khối tảng Equation Solving hay Gravity MATLAB cung cấp để tự động giải phương trình ràng buộc mang thơng tin gia tốc trọng trường Như với khối đó, ta xây dựng xong mơ hình 3D nhập từ phần mềm thiết kế sang MATLAB Việc thực tốn mơ liên quan từ hồn tồn thực mơi trường MATLAB Xây dựng mơ hình cánh tay Robot bậc tự kết hợp MATLAB NX a) b) Hình a) Mơ hình Robot NX b) Mơ hình Robot Multibody Để dễ hình dung, ta xem xét mơ hình hóa cánh tay Robot bậc tự Hình Đầu tiên, mơ hình Robot thiết kế phần mềm NX 12.0 Hình 1a, sau file thiết kế dạng step nhập sang môi trường MATLAB/Simulink thông qua công cụ Multibody Hình 1b Về bản, cơng cụ Multibody cung cấp khối để chứa đựng thông tin cần thiết từ file phần mềm thiết kế Trong Hình 1b quan sát thấy khối Base, Link 01, Link 02, khâu nhập từ phần mềm NX sang Các khối chứa thơng tin hình dạng, kích thước, khối lượng, mơ men qn tính, trọng tâm khâu sở liệu phần mềm thiết kế 3D cung cấp Chú ý rằng, MATLAB cho SỐ 67 (8-2021) Hình Mơ hình Robot thực tế Dựa ý tưởng trình bày Mục 1, ta tiến hành xây dựng mơ hình cánh tay Robot bậc tự môi trường MATLAB Hình theo bước sau: Bước 1: Xây dựng hệ tọa độ cần thiết gắn với khâu Robot (Ở sử dụng quy tắc DenavitHartenberg, dù theo quy tắc khác ma trận Craig ma trận nhất) Bước 2: Thiết kế vẽ 3D khâu Robot phần mềm thiết kế dựa theo hệ tọa độ thiết lập bước Bước 3: Nhập mô hình từ phần mềm thiết kế sang MATLAB sử dụng cơng cụ Multibody để thực tốn mơ Việc nhập mơ hình thực cách sử dụng khối tương ứng 57 TẠP CHÍ KHOA HỌC - CÔNG NGHỆ JOURNAL OF MARINE SCIENCE AND TECHNOLOGY Multibody/Simulink, khai báo thông số cần thiết lựa chọn file thiết kế 3D (đuôi stl step) từ phần mềm NX mà công cụ Multibody cho phép đọc Mơ phương trình động học Robot Để thực mô động học, trước tiên ta cần thiết lập hệ phương trình thể mối quan hệ vị trí hướng khâu thao tác vị trí khớp quay Phương trình thiết lập dựa quy tắc Denavit-Hartenberg [8] cách xây dựng hệ tọa độ gắn vào Robot Hình 3, sau xác định tham số động học Bảng miêu tả bước chuyển hệ tọa độ từ khâu cố định (hệ O0) đến khâu thao tác (hệ O6) Từ đó, ta xây dựng ma trận D-H địa phương, thể phép biến đổi từ hệ tọa độ Oi-1 sang hệ tọa độ Oi biểu thức (1) Khi đó, phép chuyển đổi hệ tọa độ từ hệ O0 đến hệ O6 thể tích ma trận D-H địa phương công thức (2)  90 900 -900 900 c3 s H 32   0  0 c5 s H54   0  0 s3 c3 0 0 s5 c5 0 a3 c3  c4 s a3 s3  ; H34   0     0 0 0 ; 0  1 c6 s H56   0  0  s4 c4 1 0  s6 c6 0  d4   1 0 0  d6   1 (1) ux u H 60  H10  q1  H12  q2  H 56  q6    y uz  0 vx vy vz wx wy wz px  p y  pz   1 (2) Từ (2), nhân tung thu gọn lại ta hệ phương trình động học Robot: Bảng Các tham số động học Khớp ISSN: 1859-316X KHOA HỌC CÔNG NGHỆ HÀNG HẢI a d q a1 a2 a3 0 0 0 d4 d6 q1 q2 q3 q4 q5 q6 p x = c1 a1 + a c + a 3c 23 + d 4s 23 + d  c 23c 4s + s 23c   +  d s1s s5   p = s  y  a1 + a c + a c 23 + d s 23 + d (c 23 c s + s 23c )   - d c1s s5   pz = a s + a 3s 23 - d c 23 + d  s 23 c s5 - c 23c5   u x = c1 c 23  c c5 c6 - s 4s  - s 23s c  + s1  s c5 c6 + c4 s6    v y = s1 -c 23  c c5 c6 + s 4s  + s 23s 5c  - c1  -s c5c + c 4s    w z = s 23 c s5 - c 23c5 cij  cos( qi  q j ); sij  sin( qi  q j ); (3) Hình Thiết lập hệ trục tọa độ gắn với Robot c1 s H10   0  0 58 s1 c1 0 a1c1  c2 s a1 s1  ; H12   0     0  s2 c2 0 a2 c2  a2 s2     Trong toán động học nghịch, thành phần ma trận vế phải biểu thức (2) cho trước, ta cần tìm giá trị biến khớp qi Như thấy từ (3), hệ phương trình phi tuyến giải phương pháp hình học Robot có cấu trúc đặc biệt Các hệ trục quay Z4,5,6 cắt chung điểm nên ta phân chia riêng biệt thành tốn độc lập [8] vị trí (liên quan đến biến khớp q1,2,3) toán hướng (liên quan đến biến khớp q4,5,6) Bài toán vị trí cho ta nghiệm: SỐ 67 (8-2021) TẠP CHÍ ISSN: 1859-316X KHOA HỌC CÔNG NGHỆ HÀNG HẢI KHOA HỌC - CÔNG NGHỆ JOURNAL OF MARINE SCIENCE AND TECHNOLOGY   p y  d wy  q1  arctan    px  d wx    k1  k12  k22  k32  q3  2arctan k3  k  q  arctan  s , c  2    (4) 0.08sin  t    0 0.18  0.08cos  t    1  0  (6) Các kích thước Robot có giá trị sau: a1  0.035; a2  0.11; a3  0.02; d4  0.125; d6  0.05 m Với:  k  2a d ;  k2  2a2 a3 ;  2 k3   px  d wx    p y  d wy     pz  d wz    px  d wx  a1c1  2 2 2  p y  d wy  a1 s1  a1  a2  a3  d Bài toán hướng cho ta nghiệm:  q  a cos  w c s  w s s  w c  x 23 y 23 z 23   wx s1  wy s1 q4  asin s5   v c s v s s v c q6  asin x 23 y 23 z 23 s5  0  H 60   0  0 (5) Các nghiệm phương trình (4) (5) dùng để thực tốn mơ động học nghịch dựa mơ hình thiết lập Mục Ở đây, ta giả sử khâu thao tác Robot chuyển động bám theo nửa đường trịn có bán kính r=0,08m thời gian 1s hướng khâu thao tác giữ ln khơng đổi q trình chuyển động Ma trận biểu diễn hệ tọa độ gắn với khâu thao tác so với hệ cố định cho bởi: Để thực mô phỏng, ta cần thêm khối tính tốn động học nghịch khối quỹ đạo khâu thao tác vào mơ hình mục Tồn sơ đồ mơ động học nghịch thể Hình Việc giải tốn động học ngược dựa mơ hình tốn học hệ phương trình cho nhiều tập nghiệm phương trình lượng giác biến khớp thường trả nghiệm Tuy nhiên, cấu trúc vật lý thực tế Robot, có nhiều tập nghiệm từ lý thuyết mà Robot đạt tới không nên chọn (do ràng buộc va chạm vật lý xảy va chạm khâu, giới hạn không gian làm việc, dây dẫn,… bước nhảy đột ngột biến khớp từ kết nghiệm phương trình lượng giác) Kết mơ chuyển động dựa việc lựa chọn tập nghiệm để phù hợp với khả chuyển động thực tế Robot Đồ thị vị trí, vận tốc gia tốc biến khớp thể Hình 6, Quan sát video ta thấy khâu thao tác chuyển động bám theo quỹ đạo mà ta đặt đồng thời hướng khâu thao tác giữ không thay đổi yêu cầu Đồ thị biến khớp thể Hình 6, vị trí góc quay khớp (độ) Hình Sơ đồ mơ tốn động học nghịch SỐ 67 (8-2021) 59 TẠP CHÍ KHOA HỌC - CƠNG NGHỆ theo thời gian Ta thấy khớp đứng yên, khớp khác thay đổi phạm vi hoạt động cho phép chúng chuyển động liên tục khơng có bước nhảy Ở Hình đồ thị vận tốc gia tốc khớp Chúng ta cần lựa chọn động để giá trị nằm giới hạn cho phép động Hơn nữa, giá trị đầu vào cho toán động lực học ngược Như vậy, ta kiểm tra tính đắn lời giải tốn động học nghịch thơng qua kết hợp mô MATLAB/Simulink phần mềm NX với cơng cụ Multibody ISSN: 1859-316X KHOA HỌC CƠNG NGHỆ HÀNG HẢI JOURNAL OF MARINE SCIENCE AND TECHNOLOGY Hình Đồ thị gia tốc khớp (rad/s2) Kết luận Hình Kết mô MATLAB/Simulink Trong báo này, tác giả trình bày việc mơ 3D động học nghịch cánh tay Robot bậc tự thông qua công cụ Multibody MATLAB/ Simulink với mô hình thiết kế nhập từ phần mềm NX 12.0 Kết mô cho thấy việc thiết lập phương trình động học nghiệm tốn động học ngược thực phù hợp với chuyển động thực tế Robot Đồng thời, ta thấy tính trực quan phương pháp mơ tận dụng khả đồ họa phần mềm CAD sức mạnh tính tốn từ MATLAB Tuy nhiên, phương pháp địi hỏi người dùng có kỹ sử dụng thành thạo phần mềm bên cạnh lý thuyết tính tốn chuyển động hệ học Mơ hình xây dựng tiếp tục phát triển cho tốn mơ động lực học điều khiển Lời cảm ơn Nghiên cứu tài trợ Trường Đại học Hàng hải Việt Nam đề tài mã số: DT2021.35 Hình Đồ thị vị trí khớp (độ) TÀI LIỆU THAM KHẢO [1] N.D Sang,Y Takeda, D Matsuura and Y Sugahara, Kinematic Design of Five-bar Parallel Robot by Kinematically Defined Performance Index for Energy Consumption, EucoMes Mechanisms and Machine Science, pp.239-247, 2018 [2] Mathworks, Physical Modeling tutorial, 2019 [3] Michael Schlotter, Multibody System Simulation with Simmechanics, pp.1-23, 2003 [4] Parviz E Nikravesh, Planar Multibody Dynamics, 2nd, CRC Press, 2019 Hình Đồ thị vận tốc khớp (rad/s) [5] Nguyễn Văn Khang, Động lực học hệ nhiều vật, NXB Khoa học kỹ thuật, 2009 [6]https://www.plm.automation.siemens.com/global/ en/products/nx/nx-for-design.html 60 SỐ 67 (8-2021) TẠP CHÍ ISSN: 1859-316X KHOA HỌC CƠNG NGHỆ HÀNG HẢI JOURNAL OF MARINE SCIENCE AND TECHNOLOGY [7]https://www.mathworks.com/help/Robotics/model ing-and-simulation.html [8] Lung-Wentsai, Robot Analysis, The Mechanics of Serial and Parallel Manipulators, John Willey & Sons, INC Publisher, 1999 [9] J Olaya, N Pintor, O.F Aviles, J Chaparro, Analysis of RPS Robotic Platform Motion in SimScape and MATLAB GUI Environment, International Journal of Applied Engineering Research, pp.1460-1468, 2017 SỐ 67 (8-2021) KHOA HỌC - CÔNG NGHỆ [10] M Gouasmi, M Ouali, B Fernini, M Meghatria, Kinematic Modelling and Simulation of a 2-R Robot Using SolidWorks and Verification by MATLAB/Simulink, International Journal of Advanced Robotic Systems, pp 1-13, 2012 Ngày nhận bài: Ngày nhận sửa: Ngày duyệt đăng: 20/4/2021 06/5/2021 17/5/2021 61 ... mơ hình cánh tay Robot bậc tự kết hợp MATLAB NX a) b) Hình a) Mơ hình Robot NX b) Mơ hình Robot Multibody Để dễ hình dung, ta xem xét mơ hình hóa cánh tay Robot bậc tự Hình Đầu tiên, mơ hình Robot. .. bày việc mơ 3D động học nghịch cánh tay Robot bậc tự thông qua công cụ Multibody MATLAB/ Simulink với mơ hình thiết kế nhập từ phần mềm NX 12.0 Kết mô cho thấy việc thiết lập phương trình động học. .. Để thực mô phỏng, ta cần thêm khối tính tốn động học nghịch khối quỹ đạo khâu thao tác vào mơ hình mục Tồn sơ đồ mơ động học nghịch thể Hình Việc giải tốn động học ngược dựa mơ hình tốn học hệ

Ngày đăng: 29/09/2021, 19:25

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

Tài liệu liên quan