Thiết kế quỹ đạo chuyển động cho các khớp của Robot theo quỹ đạo dạng bậc 3.. Chiếc robot công nghiệp được đưa vào ứng dụng đầu tiên, năm 1961 ở một nhà máy ô tô của General Motors tại T
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
BÀI TẬP LỚN
KỸ THUẬT ROBOT
Họ và tên Mã số sinh viên
HÀ NỘI, 1/2022
Trang 2MỤC LỤC
CHƯƠNG 1 GIỚI THIỆU ROBOT MH3BM 1
1.1 Lịch sử hình thành Robot 1
1.2 Robot MH3BM 1
1.3 Ứng dụng trong công nghiệp 2
1.4 Thông số kĩ thuật 2
1.5 Hình ảnh và video làm việc thực tế 6
CHƯƠNG 2 ĐỘNG HỌC THUẬN VỊ TRÍ 8
2.1 Xác định các khớp, thanh nối và khai báo các hệ trục 8
2.2 Xác định bảng D-H 10
2.3 Xác định các ma trận 11
2.4 Xây dựng giao diện tính toán 12
CHƯƠNG 3 MA TRẬN JACOBY 14
3.1 Ma trận Jacoby 14
3.2 Xây dựng giao diện tính toán 17
CHƯƠNG 4 ĐỘNG HỌC ĐẢO VỊ TRÍ 19
4.1 Động học đảo của robot MH3BM 19
CHƯƠNG 5 THIẾT KẾ QUỸ ĐẠO CHUYỂN ĐỘNG 22
5.1 Lý thuyết 22
5.2 Thiết kế quỹ đạo 22
CHƯƠNG 6 XÂY DỰNG MÔ HÌNH ĐỘNG LỰC HỌC CHO ĐỐI TƯỢNG TRÊN TOOLBOX SIMSCAPE/MATLAB 30
6.1 Thiết kế trên Solid Work 30
6.2 Kết nối Solid Work và Matlab 33
6.3 Thiết kế bộ điều khiển PID 34
CHƯƠNG 7 PHỤ LỤC 41
7.1 Giao diện động học thuận 41
7.2 Giao diện tính ma trận Jacoby 46
7.3 Thiết kế quỹ đạo 53
Trang 3DANH MỤC HÌNH VẼ
Hình 1.1 Robot MH3BM ngoài thực tế 2
Hình 1.2 Góc nhìn từ phía trước 3
Hình 1.3 Góc nhìn từ phía trên 3
Hình 1.4 Góc nhìn từ cạnh ngang 4
Hình 1.5 Thông số kỹ thuật của Robot MH3BM 5
Hình 1.6 Bộ điều khiển FS100 cho robot MH3BM 5
Hình 1.7 Thông số kỹ thuật của bộ điều khiển FS100 6
Hình 2.1 Trường hợp chéo nhau 8
Hình 2.2 Trường hợp song song 8
Hình 2.3 Trường hợp cắt nhau 8
Hình 2.4 Cách đặt vị trí tâm O0 9
Hình 2.5 Trường hợp khớp i là khớp tịnh tiến 9
Hình 2.6 Gán các hệ trục tọa độ cho robot MH3BM 10
Hình 2.7 Giao diện ban đầu 13
Hình 2.8 Giao diện sau khi tính toán 13
Hình 3.1 Giao diện ban đầu 17
Hình 3.2 Giao diện sau khi tính toán ma trận Jacoby 18
Hình 5.1 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 1 24
Hình 5.2 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 2 25
Hình 5.3 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 3 26
Hình 5.4 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 4 27
Hình 5.5 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 5 28
Hình 5.6 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 6 29
Hình 6.1 Phần đế robot 30
Hình 6.2 Thanh nối 1 30
Hình 6.3 Thanh nối 2 31
Hình 6.4 Thanh nối 3 31
Hình 6.5 Thanh nối 4 32
Hình 6.6 Thanh nối 5 32
Hình 6.7 Khâu tác động cuối 33
Hình 6.8 Robot MH3BM hoàn chỉnh 33
Hình 6.9 Thêm Toolbox vào solid work 34
Hình 6.10 Mô hình trong simulink 34
Hình 6.11 Mô hình điều khiển không gian khớp của thuật toán PID 35
Hình 6.12 Bộ PID cho khớp 1 35
Hình 6.13 Bộ PID cho khớp 2 36
Trang 4Hình 6.14 Bộ PID cho khớp 3 36
Hình 6.15 Bộ PID cho khớp 4 37
Hình 6.16 Bộ PID cho khớp 5 37
Hình 6.17 Bộ PID cho khớp 6 37
Hình 6.18 Kết nối bộ điều khiển vào mô hình động lực học 38
Hình 6.19 Đáp ứng vị trí khớp 1 38
Hình 6.19 Đáp ứng vị trí khớp 2 39
Hình 6.19 Đáp ứng vị trí khớp 3 39
Hình 6.19 Đáp ứng vị trí khớp 4 39
Hình 6.19 Đáp ứng vị trí khớp 5 40
Hình 6.19 Đáp ứng vị trí khớp 6 40
Trang 5DANH MỤC BẢNG BIỂU
Bảng 2-1 Bảng D-H của Robot MH3BM 10Bảng 2-2 Các thông số từ Datasheet 11Bảng 6-1 Thông số PID 35
Trang 6ĐỀ TÀI
Tìm hiểu tính toán Robot MH3BM với các yêu cầu:
1 Giới thiệu về Robot nhóm nghiên cứu, các ứng dụng trong công nghiệp, kết cấu cơ khí, các thông số kỹ thuật cơ bản Yêu cầu có hình ảnh hoặc clip hoạt động
2 Tính toán động học thuận vị trí Robot Xây dựng chương trình phần mềm trên MatLab để nhập dữ liệu, hiển thị kết quả
3 Tính toán ma trận Jacoby (thông qua JH) và viêt chương trình trên MatLab
4 Tính toán động học đảo vị trí Robot
5 Thiết kế quỹ đạo chuyển động cho các khớp của Robot theo quỹ đạo dạng bậc 3
6 Xây dựng mô hình động lực học cho đối tượng trên ToolBox Simscape/MatLab
Trang 7CHƯƠNG 1 GIỚI THIỆU ROBOT MH3BM 1.1 Lịch sử hình thành Robot
Thuật ngữ “robot” lần đầu tiên xuất hiện năm 1922 trong tác phẩm
“Rossum’s Universal Robots” của Karel Capek Theo tiếng Séc thì robot là người làm tạp dịch Trong tác phẩm này nhân vật Rossum và con trai ông đã tạo ra những chiếc máy gần giống như con người để hầu hạ con người
Hơn 20 năm sau, ước mơ viễn tưởng của Karel Capek đã bắt đầu hiện thực Ngay sau chiến tranh thế giới thứ 2, ở Hoa Kỳ đã xuất hiện những tay máy chép hình điều khiển từ xa trong các phòng thí nghiệm về vật liệu phóng xạ
Vào giữa những năm 1950 bên cạnh các tay máy chép hình cơ khí đó, đã xuất hiện các loại tay máy chép hình thủy lực và điện từ, như tay máy Minotaur I, hoặc tay máy Handyman của General Electric Năm 1954 George C.Devol đã thiết
kế một thiết bị có tên là “cơ cấu bản lề dùng để chuyển hàng hóa theo chương trình” Đến năm 1956 Devol cùng với Joseph F.Engelber, một kĩ sư trẻ của công nghiệp hàng không, đã tạo ra loại robot công nghiệp đầu tiên năm 1959 ở công ty Unimation Chỉ đến năm 1975 công ty Unimation mới bắt đầu có lợi nhuận từ sản phẩm robot đầu tiên này
Chiếc robot công nghiệp được đưa vào ứng dụng đầu tiên, năm 1961 ở một nhà máy ô tô của General Motors tại Trenton, New Jersey
Năm 1967 Nhật Bản mới nhập chiếc robot đầu tiên từ công ty AMF của Hoa Kỳ (American Machine and Foundry Company) Đến năm 1990 có hơn
40 công ty Nhật Bản, trong đó có những công ty khổng lồ như Hitachi và Mitsibishi, đã đưa ra thị trường quốc tế nhiều loại robot nổi tiếng
Từ những năm 1980, nhất là vào những năm 1990, do áp dụng rộng rãi các tiến bộ kỹ thuật về vi xử lý và công nghệ thông tin, số lượng robot công nghiệp đã gia tăng, giá thành đã giảm rõ rệt, tính năng đã có nhiều bước tiến vượt bậc Nhờ vậy robot công nghiệp đã có vị trí quan trọng trong các dây truyền tự động sản xuất hiện đại
1.2 Robot MH3BM
Robot trong báo cáo này là robot MH3BM của hãng Yaskawa là tập đoàn hàng đầu thế giới trong sản xuất và cung cấp các sản phẩm trong lĩnh vực robot công nghiệp, biến tần, truyền động điện…Trong lĩnh vực robot công nghiệp, hãng
đã sản xuất tất cảcác loại robot như: robot gắp (Handling), robot nâng bốc, đóng gói (Picking/packing, palletizing) Robot hàn, hàn điểm (Arc handling, spot welding), Robot sơn (Painting), Robot lắp ráp (Assembly/distributing)…
Robot MH3BM là mô hình robot tốc độ cao được ứng dụng xử lý trong ngành dược phẩm, hóa chất và y tế và cho các ứng dụng khác trong điều kiện môi trường khắc nghiệt
Cánh tay robot công nghiệp MH3BM có khả năng tải trọng (3 kg), tốc độ chuyển động và phạm vi làm việc tốt nhất (cho phép một lượt đầy đủ của trục S chính) là duy nhất và tốt nhất trong lớp Cáp nguồn được dẫn hướng qua tấm đế
Trang 8thông qua ổ cắm Robot, cáp ứng dụng có thể được dẫn qua cánh tay robot, vừa giúp cài đặt dễ dàng vừa dễ lau chùi Lớp phủ và bề mặt đặc biệt cho phép làm sạch bằng hydro peroxide Cấu trúc kèm theo được niêm phong để cung cấp bảo
vệ xâm nhập phù hợp với IP67 cho cổ tay và chuẩn cho các trục chính Nó tuân thủ tiêu chuẩn phòng sạch ISO loại 5, không cho phép tạo bụi hoặc bám dính
Hình 1.1 Robot MH3BM ngoài thực tế
1.3 Ứng dụng trong công nghiệp
Robot MH3BM được ứng dụng cho các dây chuyền sản xuất tự động, hoạt động trong các môi trường khắc nghiệt như:
• Các quá trình trong sản xuất dược phẩm (pha chế), sản xuất thuốc, thử nghiệm lâm sàng
• Môi trường hóa chất
Trang 9Hình 1.2 Góc nhìn từ phía trước
Hình 1.3 Góc nhìn từ phía trên
Trang 10Hình 1.4 Góc nhìn từ cạnh ngang
Trang 11Hình 1.5 Thông số kỹ thuật của Robot MH3BM
Hình 1.6 Bộ điều khiển FS100 cho robot MH3BM
Trang 12Hình 1.7 Thông số kỹ thuật của bộ điều khiển FS100
1.5 Hình ảnh và video làm việc thực tế
• Hình ảnh thực tế:
Trang 13• Video hoạt động thực tế:
https://www.youtube.com/watch?v=pJKJay1kjUM
Trang 14CHƯƠNG 2 ĐỘNG HỌC THUẬN VỊ TRÍ
Khi robot có số bậc tự do > 2 sẽ gây khó khăn cho việc tính toán trực tiếp, do
đó ta sử dụng phương pháp Denavit – Hartenberg với 6 bước:
• Xác định số khớp và thanh nối của Robot
• Khai báo các hệ trục tọa độ trên mỗi thanh nối OiXiYiZi (i=0n)
2.1 Xác định các khớp, thanh nối và khai báo các hệ trục
Theo tài liệu của hãng, robot MH3BM là robot có 6 trục tự do Trước khi xác định bảng Denavit – Hartenberg, ta cần xác định các hệ trục tọa độ cho các khớp
− Xác định trục Zi
• Khớp (i+1) tịnh tiến: Zi là trục mà theo nó khớp (i+1) trượt
• Khớp (i+1) quay: Zi là trục mà xung quanh nó khớp (i+1) quay
− Xác định trục Xi
• Trường hợp 1: Zi-1 và Zi chéo nhau
Hình 2.1 Trường hợp chéo nhau
• Trường hợp 2: Zi-1 // Zi
Hình 2.2 Trường hợp song song
• Trường hợp 3: Zi-1 X Zi
Hình 2.3 Trường hợp cắt nhau
Trang 15➢ Chú ý:
• Tâm O0 có thể đặt ở vị trí cố định bất kỳ trên đế, hoăc điểm cố định trên Robot
Hình 2.4 Cách đặt vị trí tâm O 0
• Tâm On đặt tại vị trí chọn trên khâu tác động cuối
• Nếu khớp i là khớp tịnh tiến, tâm Oi đặt ở điểm cuối thanh nối i
Hình 2.5 Trường hợp khớp i là khớp tịnh tiến
➢ Cuối cùng ta gắn hệ trục tọa độ cho Robot MH3BM như hình Hình 2.6
Trang 16Các thông số của bảng D-H được xác định theo các quy tắc như sau:
- d i: khoảng cách giữa 2 trục X i−1 và X i theo trụcZ i−1
- i: góc quay từ thanh nối X i−1đến trục X i quanh trục Z i−1 theo chiều dương -
i
a : khoảng cách giữa 2 trục Z i−1và Z i theo trục X i
-i: góc quay từ thanh nối Z i−1đến Z i quanh trục X itheo chiều dương
➢ Ta được bảng D-H như sau:
Trang 17cos cos sin sin sin cossin cos cos sin cos sin
Trang 182.4 Xây dựng giao diện tính toán
Thiết kế giao diện tính toán các giá trị trên từ dữ liệu nhập vào là các góc
1, 2, 3, 4, 5, 6
Ta có màn hình giao diện như sau:
Trang 19Hình 2.7 Giao diện ban đầu
Hình 2.8 Giao diện sau khi tính toán
• Các Text Box giúp ta nhập giá trị góc theta, ngoài ra khi nhập góc có giá trị vướt quá khoảng giới hạn sẽ được chỉnh lại bằng giá trị max hoặc min tương ứng
• Nút “Clear” xóa các giá trị cũ và nhập giá trị mới để tính với các giá trị mới khác nhau
• Nút “Tính” sau khi nhập đủ các thông số góc theta1 đến theta6 ấn nút thì hiện kết quả ở bảng “Ma trận T06”
Trang 20CHƯƠNG 3 MA TRẬN JACOBY 3.1 Ma trận Jacoby
Ta có công thức tìm ma trận Jacoby thông qua ma trận HJ :
0
0 6
Các phần tử của ma trận HJ được xác định như sau:
❖ Đầu tiên ta xác định các ma trận iT6theo các hệ tọa độ lần lượt từ khâu cuối trở về gốc ta có:
Trang 233.2 Xây dựng giao diện tính toán
Thiết kế giao diện tính toán các giá trị trên từ dữ liệu nhập vào là các góc
1, 2, 3, 4, 5, 6
tương tự như ở phần động học thuận vị trí
Ta có màn hình giao diện như sau:
Hình 3.1 Giao diện ban đầu
Trang 24Hình 3.2 Giao diện sau khi tính toán ma trận Jacoby
• Các Text Box giúp ta nhập giá trị góc theta, ngoài ra khi nhập góc có giá trị vướt quá khoảng giới hạn sẽ được chỉnh lại bằng giá trị max hoặc min tương ứng
• Nút “Clear” xóa các giá trị cũ và nhập giá trị mới để tính với các giá trị mới khác nhau
• Nút “Tính” sau khi nhập đủ các thông số góc theta1 đến theta6 ấn nút thì hiện kết quả ở bảng “Ma trận Jacoby”
Trang 25CHƯƠNG 4 ĐỘNG HỌC ĐẢO VỊ TRÍ
Động học đảo vị trí Robot là để tìm các biến khớp khi biết tọa độ vị trí tay Robot
4.1 Động học đảo của robot MH3BM
Vì robot MH3BM có 6 bậc tự do nên ta phải dùng phương pháp phân ly biến để giải bài toán động học đảo:
Trang 28CHƯƠNG 5 THIẾT KẾ QUỸ ĐẠO CHUYỂN ĐỘNG
5.1 Lý thuyết
Thiết kế quỹ đạo chuyển động cho robot có liên quan trực tiếp đến bài toán điều khiển robot Các quỹ đạo được thiết kế phải đảm bảo về mặt logic, tức là có thể thực hiện được Lấy ví dụ, nếu quỹ đạo có 2 điểm liền kề cách quá xa nhau, hoặc có điểm nằm ngoài phạm vi hoạt động của robot, thì quỹ đạo đó được cho là không thực hiện được Ngoài ra, quỹ đạo cũng phải liên tục về vị trí và không có các điểm nhảy về vận tốc, gia tốc có thể gây hỏng hóc robot trong quá trình điều khiển
Yêu cầu thiết kế quỹ đạo chuyển động của Robot là:
• Quỹ đạo thiết kế cần liên tục về vị trí
• Không có vị trí mà có sự sai khác quá lớn về vận tốc và gia tốc Quỹ đạo là các đường cong có dạng đa thức Trên lí thuyết, đa thức bậc càng cao thì quỹ đạo di chuyển càng chính xác, tuy nhiên đối với bài toán điều khiển robot, các quỹ đạo có dạng đa thức bậc 3, bậc 5 được dùng nhiều hơn cả:
Đề bài yêu cầu thiết kế quỹ đạo dạng đa thức bậc 3 cho robot
5.2 Thiết kế quỹ đạo
Cho hai điểm A, B bất kỳ trong không gian làm việc, biết tọa độ tương ứng của 2 điểm và hướng của các khâu thao tác Thiết kế quỹ đạo chuyển động từ A đến B dạng đa thức bậc 3
Chọn quỹ đạo thiết kế là hàm đa thức bậc 3 theo thời gian như sau:
q (t)=a +a t+a t +a tRobot MH3BM có 6 khớp quay, do đó ta có được hệ phương trình về quỹ đạo của 6 khớp tương ứng (i=1, 2, …, 6):
Trang 292[ (B) (A)]
a(t) (B) 0 a 2a t 3a t
Thay vào (*) ta tính được hệ số của đa thức cho mỗi khớp như sau:
1
2 1
1
(t) 100 22.5t 7.5t(t) 45t 22.5t
Trang 30Hình 5.1 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 1
2
(t) 20 30t 10t(t) 60t 30t(t) 60 60t
Trang 31Hình 5.2 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 2
Một cách tương tự, ta tính được phương trình quỹ đạo, vận tốc và gia tốc của các khớp 3, 4, 5, 6 như sau:
3) Khớp 3
3
2 3
Trang 32Hình 5.3 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 3
4) Khớp 4
4
2 4
Trang 33Hình 5.4 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 4
5) Khớp 5
5
2 5
Trang 34Hình 5.5 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 5
6) Khớp 6
6
2 6
Trang 35Hình 5.6 Đồ thị quỹ đạo, vận tốc và gia tốc khớp 6
Trang 36CHƯƠNG 6 XÂY DỰNG MÔ HÌNH ĐỘNG LỰC HỌC CHO ĐỐI
TƯỢNG TRÊN TOOLBOX SIMSCAPE/MATLAB
Để xây dựng mô hình động lực học cho robot trên Matlab nhóm thực hiện bằng việc thiết kế trên Solid work sau đó chuyển về phần mềm Matlab
6.1 Thiết kế trên Solid Work
Sử dụng phần mềm Solid Work 2020 ta thiết kế robot MH3BM ta thiết kế các phần của Robot MH3BM
Hình 6.1 Phần đế robot
Hình 6.2 Thanh nối 1
Trang 37Hình 6.3 Thanh nối 2
Hình 6.4 Thanh nối 3
Trang 38Hình 6.5 Thanh nối 4
Hình 6.6 Thanh nối 5
Trang 39▪ Simscape Multibody Link: sử dụng cho tùy phiên bản Matlab khác nhau
▪ Thư viện Simscape trong Matlab
Sau khi cài đặt xong ta liên kết Matlab và Solid work
Trang 40Hình 6.9 Thêm Toolbox vào solid work
Sau đó vào mục Tools – Simscape Multibody Link – Export chọn
“Simscape Multibody” để tạo file xml (Trong báo cáo này đặt tên là MH3BM.xml)
Tiếp theo ta chuyển mô hình đã vẽ vào Simulink bằng cách viết lệnh
“smimport(‘MH3BM’)” Sau khi chuyển đổi hoàn tất ta được mô hình trong Simulink
Hình 6.10 Mô hình trong simulink
6.3 Thiết kế bộ điều khiển PID
Ta có mô hình điều khiển Robot trong không gian khớp theo thuật toán PID
Trang 41Hình 6.11 Mô hình điều khiển không gian khớp của thuật toán PID
Bảng thông số của bộ PID cho từng khớp như sau:
Trang 42Hình 6.13 Bộ PID cho khớp 2
Hình 6.14 Bộ PID cho khớp 3
Trang 43Hình 6.15 Bộ PID cho khớp 4
Hình 6.16 Bộ PID cho khớp 5
Hình 6.17 Bộ PID cho khớp 6
Trang 44Hình 6.18 Kết nối bộ điều khiển vào mô hình động lực học
Sau khi kết nối xong, ta mô phỏng và thu được kết quả sau:
Hình 6.19 Đáp ứng vị trí khớp 1
Trang 45Hình 6.20 Đáp ứng vị trí khớp 2
Hình 6.21 Đáp ứng vị trí khớp 3
Hình 6.22 Đáp ứng vị trí khớp 4
Trang 46Hình 6.23 Đáp ứng vị trí khớp 5
Hình 6.24 Đáp ứng vị trí khớp 6
Kết luận : Xây dựng mô hình động lực học cho đối tượng Robot MH3BM
trên Toolbox simscape multibody/Matlab đã thành công, phù hợp với yêu cầu mô phỏng