Trang 1 MỤC LỤC Phần 1 Tổng quan về bài tập lớn 2 I Đề bài 2 II Danh sách thành viên 2 III Danh sách các file đính kèm 2 Phần 2 Giới thiệu về phần mềm Easy Rob 3 I Kỹ thuật mô phỏng robot 3 II Giới th[.]
MỤC LỤC Phần Tổng quan tập lớn I Đề II Danh sách thành viên III Danh sách file đính kèm Phần Giới thiệu phần mềm Easy-Rob I Kỹ thuật mô robot II Giới thiệu phần mềm Easy-Rob III Giao diện phần mềm Easy-Rob Các menu chính: Các công cụ: IV Lưu đồ giải thuật tốn mơ sử dụng Easy-Rob V ERPL – Ngơn ngữ lập trình Easy-ROB Phần Tổng quan robot khớp nối 11 Phần Mô robot khớp nối sử dụng phần mềm Easy-ROB 14 I Xây dựng hệ trục tọa độ 14 II Thiết kế hình dáng Robot 15 III Thiết kế cấu chấp hành gắn vào tay robot 17 IV Thiết kế đối tượng làm việc cho robot 19 V Lập trình cho robot 20 Phần Chạy thử mô 23 KẾT LUẬN 24 Trang Phần Tổng quan tập lớn I Đề Với đề u cầu, nhóm chúng em thực mơ robot khớp nối bậc tự sử dụng phần mềm Easy-Rob II Danh sách thành viên Nhóm tập lớn số 40 bao gồm thành viên: Sinh viên Lê Hải Đăng Đặng Nam Thành Chu Đức Anh III MSSV Nhiệm vụ 20090710 Thiết kế cấu chấp hành cho robot, viết chương trình điều khiển robot 20093609 Trình bày tổng quan mẫu robot, thiết kế đối tượng làm việc cho robot 20090055 Thiết kế mơ hình 3D cho robot Danh sách file đính kèm Tên file haleda.cel haleda.rob haleda_o.tol haleda_b.tol haleda_m.tol haleda_s.tol haleda_c.tol haleda.bod Mô tả File tổng hợp, mô tả kết cấu robot + cơng cụ chấp hành, đối tượng làm việc, chương trình robot + file hỗ trợ khác File cel bao gồm tồn file phía File mơ tả kết cấu 3D, thông tin cấu trúc robot Các file mô tả cấu chấp hành gắn vào điểm cuối tay robot, ứng với trạng thái Mở(O), gắp vật lớn(B), vật trung bình(M), vật nhỏ(S) đóng hồn tồn(C) File mơ tả đối tượng làm việc robot Ở hệ cọc + đĩa mơ tả tốn “tháp Hà Nội” Các file lưu trữ góc nhìn, phục vụ cho việc mơ haleda_home_1.vie haleda_home_2.vie haleda_home_3.vie haleda_hanoix3.prg File chứa code điều khiển robot khớp nối thực giải toán “tháp Hà Nội” với đĩa Elbow_robot.mpg Video demo Trang Phần Giới thiệu phần mềm Easy-Rob I Kỹ thuật mô robot Mô kỹ thuật đại, áp dụng nhiều lĩnh vực nghiên cứu sản xuất Khi nghiên cứu điều khiển robot, ta thực điều khiển trực tiếp robot điều khiển mô Điều khiển mô dùng mơ hình tính tốn động học động lực học robot kết hợp với phương pháp đồ họa máy vi tính để mơ tả kết cấu hoạt động cánh tay robot Nghiên cứu mơ hoạt động robot máy tính giúp cho nhà thiết kế nhanh chóng lựa chọn phương án hình- động học robot, kiểm tra khả hoạt động robot hình, kiểm tra phối hợp robot với thiết bị khác dây chuyền Điều có ý nghĩa trình thiết kế chế tạo robot bố trí dây chuyền sản xuất Qua mơ người thiết kế đánh giá tương đối đầy đủ khả làm việc phương án thiết kế mà khơng cần chế thử Nó xem phương tiện đối thoại, hiệu chỉnh thiết kế theo yêu cầu đa dạng người sử dụng Phương pháp lập trình mơ giúp người thiết kế chọn quỹ đạo công nghệ hợp lý robot trình làm việc với đối tượng cụ thể hay phối hợp thiết bị khác công đoạn sản xuất tự động hóa Hiện có nhiều phần mềm công nghiệp phần mềm nghiên cứu khác để mô robot, phạm vi ứng dụng giá thành chúng khác Ở nghiên cứu phương pháp mô robot dùng phần mềm EasyRob II Giới thiệu phần mềm Easy-Rob Easy-Rob công cụ mô robot sử dụng đồ họa khơng gian ba chiều (3D) hình ảnh hoạt động Một hệ thống 3D-CAD sử dụng đơn giản cho phép tạo khối hình học khối trụ, khối cầu, khối chữ nhật, khối tam giác… để vẽ kết cấu robot Trong Easy-Rob dùng chuột để quay tịnh tiến robot đến tọa độ tùy ý Easy-Rob có chức phóng to, thu nhỏ đối tượng vẽ nhiều phần mềm khác… Chương trình cho phép thiết kế robot đến 12 bậc tự Chuyển động robot điều khiển theo biến khớp tọa độ Đề Các Có thể mô tả động học robot theo kiểu DH hệ tọa độ toàn cục (Universal Coordinates) Easy-Rob có sẵn trình điều Trang khiển động học thuận ngược cấu hình robot thơng dụng, thiết kế ta cần khai báo kiểu động học thích hợp Trong trường hợp robot có kết cấu đặc biệt có khâu bị động gắn với chuyển động khớp cần phải giải toán động học ngược xác định hàm toán học mơ tả phụ thuộc ngơn ngữ C sau dùng tập tin Make.exe C để dịch thành tập tin thư viện liên kết động er_kin.dll (Easy-Rob kinematic Dynamic link library), chạy chương trình, Easy-Rob liên kết với tập tin thực kiểu động học khai báo chương trình điều khiển Easy-Rob có số lệnh điều khiển riêng, chương trình viết theo kiểu xử lý tuần tự, tập tin dạng text, soạn thảo chương trình trình soạn thảo Các cơng cụ gắn khâu chấp hành cuối thay đổi Chúng ta viết chương trình chuyển động cho robot theo quỹ đạo mong muốn, kiểm tra khả vươn tới cánh tay, xác định vùng làm việc robot… Robot mơ cầm nắm thả đối tượng làm việc Các chuyển động robot ghi vào tập tin thực lại Phần mềm cho phép ta xem hệ tọa độ gắn khâu robot, xem quỹ đạo chuyển động điểm cuối công cụ gắn khâu chấp hành cuối Phần mềm cịn có nhiều tiện ích khác như: cho phép ta lập trình điều khiển robot phương pháp dạy học, thiết kế đối tượng làm việc robot, có cửa sổ tọa độ giá trị góc quay khớp thời điểm robot hoạt động Việc sử dụng phần mềm Easy-Rob để mô robot giúp hai khả nghiên cứu: - Mơ lại robot có đối tượng làm việc Đánh giá khả làm việc mức độ linh hoạt robot, xác định thông số điều khiển, quỹ đạo chuyển động để dùng điều khiển thực - Nghiên cứu thiết kế động học, kích thước kết cấu robot máy tính để chọn phương án động học tốt đảm bảo cho robot hoàn thành nhiệm vụ yêu cầu Trang Tóm lại, thấy việc sử dụng phần mềm Easy-ROB có số ưu điểm sau: dễ dàng thiết kế robot, cấu chấp hành, đối tượng làm việc dạng 3D xem quỹ đạo chuyển động điểm cuối tay robot, xem hệ tọa độ gắn khâu robot thực mô chuyển động robot thao tác chuột, câu lệnh thay đổi vị trí robot, thay đổi giá trị biến khớp mô hoạt động gắp/thả vật robot tương tự thực tế khuyết điểm so với phương pháp mô khác: giải tốn động học vị trí, quỹ đạo chuyển động, không mô tả robot mặt động lực học chưa cho phép xây dựng điều khiển cụ thể, chưa thể tự thiết kế quỹ đạo chuyển động cho robot, điều khiển chuyển động coi lý tưởng … Trang III Giao diện phần mềm Easy-Rob Giao diện phần mềm có dạng sau: Các menu chính: File: quản lý tác vụ đối tượng file: mở, lưu, xóa, sửa Robotics: dùng để nhập thông số động học, động lực học, xác định vị trí dụng cụ, xác định vị trí robot thơng số khác Với robotics menu dễ dàng tạo chương trình điều khiển robot tạo robot Simulate: cho phép điều khiển tay việc di chuyển Robot đến vị trí khác (Home, Joint, Cartesian position), chạy chương trình robot, ghi lại reset tất vị trí robot, làm tăng giảm tốc độ mô robot… 3D-CAD: Menu 3D CAD cung cấp công cụ để vẽ kết cấu robot không gian ba chiều, để thiết kế công cụ, đối tượng làm việc Để vẽ kết cấu robot, dựa vào khối hình học đơn giản lắp ghép chúng lại để tạo nên hình dáng khác robot Cũng nhóm nhiều đối tượng vẽ riêng lẻ thành đối tượng sử dụng nhiều lần thay đổi kích thước chúng Các đối tượng vẽ menu này, import từ phần mềm CAD khác AutoCad, ProEngineer , lưu vào file định dạng đuôi *.STL, liên kết trực tiếp với Easy-Rob Trang Các cơng cụ: Phục vụ việc render hình ảnh khối mô phỏng, bật tắt hiển thị sàn, reset vị trí robot điểm khởi động … Quản lý việc chạy chương trình mơ phỏng: run, stop, pause … tăng, giảm bước di chuyển, đánh giá sai số xem giá trị động học Thực thoa tác chuột: bật/tắt việc thay đổi góc nhìn chuột, điều chỉnh hướng/vị trí cấu chấp hành, điều chỉnh khớp, di chuyển thân robot …… Bật/Tắt thành phần hệ: robot, công cụ, đối tượng Bật/Tắt hiển thị trục tọa độ, cửa sổ chương trình … Bật/Tắt việc hiển thị trục tọa độ chiều, xác định vị trí đối tượng … Di chuyển robot đến số vị trí đặc biệt: Trang IV Lưu đồ giải thuật tốn mơ sử dụng Easy-Rob Khởi động chương trình Thiết kế hệ tọa độ Thiết kế hình dáng robot Xây dựng chương trình điều khiển robot Chạy mơ Trang V ERPL – Ngơn ngữ lập trình Easy-ROB Ghi chú: Đơn vị chiều dài: mét (m), góc : độ (0) phần trăm (%) Đơn vị tốc độ : m/s Vị trí tương đối hệ tọa độ gắn khâu chấp hành cuối xác định gồm : X, Y, Z : tọa độ vị trí A, B, C : góc Hướng khâu chấp hành cuối xác định theo góc A, B, C là” Rot (A,B,C) = Rot (X,A) Rot(Y,B) Rot(Z,C) Một số lệnh hay dùng chương trình: PROGRAMFILE: Bắt đầu chương trình ENDPROGRAMFILE : Kết thúc chương trình CALL fct_name: Gọi hàm có tên fct_name định nghĩa sẵn có chương trình CALL FILE filename : Gọi file chương trình có tên filename, file phải có cấu trúc giống chương trình FCT fct_nane() : Bắt đầu định nghĩa hàm có tên fct_name() ENDFCT : Kết thúc định nghĩa hàm ! : Các ghi chương trình TOOL X Y Z A B C [m, deg] : định tọa độ điểm cuối dụng cụ so với khâu chấp hành cuối PTP X Y Z A B C [m, deg] : di chuyển robot đến điểm (tọa độ tuyệt đối) theo kiểu điều khiển điểm PTP_REL dX dY dZ dA dB dC [m, deg] : di chuyển robot đến điểm (tọa độ tương đối) theo kiểu điều khiển điểm LIN X Y Z A B C [m, deg] : di chuyển robot đến điểm (tọa độ tuyệt đối) theo kiểu điều khiển đường thẳng LIN_REL dX dY dZ dA dB dC [m, deg] : di chuyển robot đến điểm (tọa độ tương đối) theo kiểu điều khiển đường thẳng CIRC X Y Z A B C [X2 Y2 Z2] [m, deg] : di chuyển robot đến điểm (tọa độ tuyệt đối) theo kiểu điều khiển đường cong, qua điểm trung gian [X2 Y2 Z2] : Điểm trung gian CIRC _REL dX dY dZ dA dB dC [dX2 dY2 dZ2] [m, deg] : di chuyển robot đến điểm (tọa độ tương đối) theo kiểu điều khiển đường cong Trang WAIT x [sec] : Robot dừng hoạt động x giây ERC TRACK ON,OFF: thể quỹ đạo chuyển động ERC LOAD TOOL filename: gọi tool file (*.tol) ERC LOAD VIEW filename: gọi view file (* vie) ERC LOAD ROBOT filename: gọi robot file (* rob) ERC LOAD BODY filename: gọi body file (* bod) ERC LOAD TAGS filename: gọi tag file (* tag) ERC GRAB BODY bodyname : dụng cụ cầm lấy vật thể có tên bodyname ERC GRAB BODY_GRP: dụng cụ cầm lấy nhóm vật thể có tên bodyname ERC RELEASE BODY bodyname : dụng cụ thả vật thể có tên bodyname ERC RELEASE BODY_GRP: dụng cụ thả nhóm vật thể có tên bodyname ERC ROBOT_BASE XYZ ABC [m,deg] : di chuyển gốc tọa độ robot đến vị trí Trang 10 Phần Tổng quan robot khớp nối Robot khớp nối (Elbow robot) có dạng điển sau Robot có khớp khớp quay quanh trục Z Khâu Rot (z,θi) Tran(z, di) Tran (x,ai) θ1 d1 θ2 a2 θ3 a3 θ4 a4 θ5 0 θ6 d6 Bảngthông số D-H robot khớp nối Trang 11 Rot (x,αi) 90o 0 -90o 90o Trong ví dụ này, ta chọn cụ thể thông số để tiến hành mô phỏng: d1 = 0.6m ; d6 = 0.15m ; a2 = 0.6m ; a3 = 0.3m; a4 = 0.25m Ma trận biểu diễn quan hệ khung tọa độ i-1 i sau: c i s i 1 Ai i 0 0 s i c i s i s i c i c i c i s i s i c i 0 c i s i di Từ bảng D-H ta xác định ma trận biểu diễn mối quan hệ khung tọa độ khớp i-1, i c1 s1 A1 0 0 c1 0.6 0 s1 c s 0.6 c s c 0.6 s A2 0 s c0 0 0 c3 s s c3 A3 0 0 0.3 c3 0.3 s3 c s 0.25 c s c 0.25 s A4 1 0 c5 s5 A5 0 0 0 c5 0 0 1 c6 s6 s c6 A6 0 0 s5 0 0.15 Trang 12 Phép biến đổi tay robot so với thân robot nhận sau: R TH 0 A1.1 A2 A3 A4 A5 A6 ma trận 4x4 với than số ci si cột thứ cột thứ hai cột thứ ba cột thứ tư Trang 13 Phần Mô robot khớp nối sử dụng phần mềm EasyROB I Xây dựng hệ trục tọa độ Trước hết cần tạo file để lưu trữ thông tin cấu hình robot Ta thực việc thơng qua menu File>Load>Robot File Đặt tên cho robot (ở haleda.rob) lưu lại file menu File>Save>Robot File Để thiết kế hệ trục tọa độ cho robot, ta sử dụng menu Robotics > Robot Motion+ Kinematics > Kinemanic Data Tiếp theo, thực nhập thông số cần thiết cho khớp Do khớp khớp chủ động, quay quanh trục Z nên ta chọn hình nhập thông số khớp 1: Tiếp tục cho khớp lại từ 2-6, cuối ta thu bảng D-H hoàn chỉnh cách vào menu Robotics > Robot Motion+ Kinematics > Kinemanic Data > Kinematic Information Trang 14 kết thúc bước ta thu hệ trục tọa độ robot, hệ ứng với khớp chuyển động II Thiết kế hình dáng Robot Ta thực vào menu 3D-CAD > select Group > Robot Group để thiết kế hình dáng robot trước Thực tiếp 3D-CAD > Creat/Import new 3D body Ở nối ta coi trụ trịn, nên chọn tiếp Cylinder Chọn vị trí tuyệt đối khâu Trang 15 Nhập thông số khâu, gắn phận vào khớp làm tương tự cho khớp lại, ta thực xong việc dựng hình 3D cho robot Trang 16 III Thiết kế cấu chấp hành gắn vào tay robot Tương tự thiết kế thân robot, ta cần chọn Group làm việc Tool Group Ở ta thiết kế công cụ, tương ứng với file tol để phục vụ mô phỏng: haleda_o.tol mơ tả trạng thái bàn kẹp mở hồn tồn, không gắp vật haleda_b.tol mô tả trạng thái bàn kẹp gắp đĩa to Trang 17 haleda_m.tol mô tả trạng thái bàn kẹp gắp đĩa trung bình haleda_s.tol mô tả trạng thái bàn kẹp gắp đĩa bé đĩa haleda_c.tol mô tả bàn kẹp trạng thái đóng, khơng gắp vật Trang 18 IV Thiết kế đối tượng làm việc cho robot Tương tự thiết kế thân robot, ta cần chọn Group làm việc Body Group Ở ta xây dựng mơ hình gồm đế, đế gắn cọc thẳng đứng, đĩa cọc 1, mơ tốn tháp Hà Nội lever Mục tiêu toán di chuyển toàn tầng tháp từ cọc sang cọc với luật sau: di chuyển tầng từ cọc sang cọc kia, đĩa to khơng đặt phía đĩa bé Ta có mơ sau Trang 19 V Lập trình cho robot Việc lập trình cho sử dụng ngôn ngữ ERPL thực cách dạy cho robot cần phải thực chuyển động nào, thao tác Sau chương trình tự sinh code lệnh để lần sau, robot dựa vào mà thực xác hành động lập trình sẵn Dưới tồn nội dung file chương trình robot khớp nối thực việc giải toán tháp Hà Nội lever 3, gồm công đoạn sau, tương ứng với đoạn code: bắt đầu đưa robot đến vị trí cọc 1, gắp đĩa nhỏ đưa robot đến vị trí cọc 3, thả đĩa nhỏ đưa robot đến vị trí cọc 1, gắp đĩa trung bình đưa robot đến vị trí cọc 2, thả đĩa trung bình đưa robot đến vị trí cọc 3, gắp đĩa nhỏ đưa robot đến vị trí cọc 2, thả đĩa nhỏ lên đĩa trung bình đưa robot đến vị trí cọc 1, gắp đĩa lớn đưa robot đến vị trí cọc 3, thả đĩa lớn đưa robot đến vị trí cọc 2, gắp đĩa nhỏ đưa robot đến vị trí cọc 1, thả đĩa nhỏ đưa robot đến vị trí cọc 2, gắp đĩa trung bình đưa robot đến vị trí cọc 3, thả đĩa trung bình lên đĩa lớn đưa robot đến vị trí cọc 1, gắp đĩa nhỏ đưa robot đến vị trí cọc 3, thả đĩa nhỏ lên đĩa trung bình đĩa lớn kết thúc PROGRAMFILE ! prgfln D:\setup\EASY_ROB\proj\haleda_hanoix3.prg ERC LOAD VIEW haleda_home_1 ERC LOAD TOOL haleda_o PTP_AX 0.0000 0.0000 0.0000 0.0000 ERC LOAD VIEW haleda_home_2 PTP_AX 46.0000 ERC LOAD TOOL haleda_s ERC GRAB BODY dianho PTP_AX 46.0000 PTP_AX -46.0000 PTP_AX -46.0000 ERC RELEASE BODY dianho ERC LOAD TOOL haleda_o PTP_AX -46.0000 6.5000 0.0000 0.0000 -45.0000 -33.0000 90.0000 90.0000 16.9000 16.9000 2.5000 -61.3800 -61.3800 -39.0000 -17.0000 -17.0000 -33.0000 90.0000 90.0000 90.0000 90.0000 90.0000 90.0000 16.9000 -61.3800 -17.0000 90.0000 90.0000 Trang 20 ... cứu khác để mô robot, phạm vi ứng dụng giá thành chúng khác Ở nghiên cứu phương pháp mô robot dùng phần mềm EasyRob II Giới thiệu phần mềm Easy- Rob Easy- Rob công cụ mô robot sử dụng đồ họa không... hình robot Ta thực việc thông qua menu File>Load >Robot File Đặt tên cho robot (ở haleda .rob) lưu lại file menu File>Save >Robot File Để thiết kế hệ trục tọa độ cho robot, ta sử dụng menu Robotics... XYZ ABC [m,deg] : di chuyển gốc tọa độ robot đến vị trí Trang 10 Phần Tổng quan robot khớp nối Robot khớp nối (Elbow robot) có dạng điển sau Robot có khớp khớp quay quanh trục Z Khâu Rot (z,θi)