You are on page 1of 69

TRƯỜNG ĐẠI HỌC KỸ THUẬT – CÔNG NGHỆ CẦN THƠ

KHOA KỸ THUẬT CƠ KHÍ

BÀI GIẢNG

ROBOT CÔNG NGHIỆP

Biên soạn: Huỳnh Minh Vũ

Năm 2019
LỜI NÓI ĐẦU

Bài giảng Robot công nghiệp được biên soạn để phục vụ cho việc giảng
dạy, nghiên cứu của giảng viên và sinh viên ngành Công nghệ kỹ thuật cơ điện
tử, Công nghệ kỹ thuật điều khiển và tự động hóa... Bài giảng này cung cấp
kiến thức cơ bản về lĩnh vực robot và hy vọng có thể giúp cho người yêu thích
robot có thể hiểu về robot, biết về các loại robot được sử dụng trong nền công
nghiệp hiện đại hiện nay. Tài liệu này được biên soạn ngắn gọn bao gồm 5
chương:
 Chương 1: Tổng quan về robot công nghiệp
 Chương 2: Các phép biến đổi thuần nhất
 Chương 3: Động học robot
 Chương 4: Động lực học robot
 Chương 5: Mô phỏng và điều khiển robot
Để hoàn thành bài giảng Robot công nghiệp tác giả đã cố gắng hết sức và
làm việc với tinh thần trách nhiệm cao, song quá trình biên soạn không tránh
khỏi những thiếu sót, mong nhận được ý kiến phản hồi từ bạn đọc để bài giảng
được hoàn thiện hơn.
Tác giả

i
MỤC LỤC

LỜI NÓI ĐẦU .................................................................................................... i


DANH SÁCH HÌNH ........................................................................................ iv
DANH MỤC BẢNG ........................................................................................ vi
DANH MỤC TỪ VIẾT TẮT .......................................................................... vii
Chương 1 TỔNG QUAN VỀ ROBOT CÔNG NGHIỆP .................................. 1
1.1 Lịch sử hình thành và phát triển .............................................................. 1
1.2 Các ứng dụng điển hình ........................................................................... 2
1.3 Kí hiệu biểu diễn qui ước......................................................................... 3
1.4 Bậc tự do của robot công nghiệp ............................................................. 4
1.5 Cấu hình robot công nghiệp phổ biến ...................................................... 5
1.5.1 Robot toàn khớp xoay ....................................................................... 5
1.5.2 Robot tọa độ cầu ............................................................................... 6
1.5.3 Robot SCARA .................................................................................. 7
1.5.4 Robot tọa độ trụ ................................................................................ 9
1.5.5 Robot tọa độ vuông góc .................................................................. 10
1.6 Cấu trúc cơ bản của robot công nghiệp ................................................. 11
Chương 2 CÁC PHÉP BIẾN ĐỔI THUẦN NHẤT ........................................ 14
2.1 Hệ tọa độ thuần nhất .............................................................................. 14
2.2 Các phép biến đổi ma trận ..................................................................... 15
2.2.1 Phép biến đổi tịnh tiến .................................................................... 15
2.2.2 Phép quay quanh các trục tọa độ .................................................... 16
2.2.3 Ma trận chuyển đổi thuần nhất ....................................................... 18
2.3 Biến đổi hệ tọa độ .................................................................................. 18
2.4 Mối quan hệ giữa các hệ tọa độ ............................................................. 19
Chương 3 ĐỘNG HỌC ROBOT ..................................................................... 23
3.1 Chuyển đổi Denavit – Hartenberg (DH) ............................................... 24
3.2 Động học thuận robot ............................................................................ 26
3.3 Động học ngược robot ........................................................................... 31
3.3.1 Động học ngược vị trí ..................................................................... 31

ii
3.3.2 Động học ngược hướng: Động học cổ tay khớp cầu ...................... 35
Chương 4 ĐỘNG LỰC HỌC ROBOT............................................................ 41
4.1 Nhiệm vụ và phương pháp phân tích động lực học ............................... 41
4.2 Động lực học với phương trình Euler – Lagrange ................................. 41
4.3 Cấu trúc và tính chất phương trình động lực học .................................. 46
4.4 Ứng dụng phương trình động lực học để mô hình hóa robot ................ 47
Chương 5 MÔ PHỎNG VÀ ĐIỀU KHIỂN ROBOT ...................................... 50
5.1 Kỹ thuật mô phỏng và điều khiển robot ................................................ 50
5.2 Giới thiệu công cụ Simmechanics ......................................................... 50
5.3 Xây dựng mô hình 3D cho robot sử dụng phần mềm Inventor ............. 52
5.4 Lập trình mô phỏng và điều khiển chuyển động mỗi khớp ................... 55
TÀI LIỆU THAM KHẢO ............................................................................... 60
PHỤ LỤC ........................................................................................................ 61

iii
DANH SÁCH HÌNH

Hình 1.1 Ứng dụng robot công nghiệp trong hàn kim loại................................ 2
Hình 1.2 Ứng dụng robot công nghiệp trong lắp ráp sản phẩm ........................ 2
Hình 1.3 Ứng dụng robot công nghiệp trong máy CNC ................................... 3
Hình 1.4 Ứng dụng robot trong y học................................................................ 3
Hình 1.5 Kí hiệu qui ước của khớp robot .......................................................... 4
Hình 1.6 Robot toàn khớp xoay ......................................................................... 5
Hình 1.7 Cấu trúc robot toàn khớp xoay ........................................................... 5
Hình 1.8 Không gian làm việc robot toàn khớp xoay........................................ 6
Hình 1.9 Robot tọa độ cầu ................................................................................. 6
Hình 1.10 Cấu trúc robot tọa độ cầu .................................................................. 7
Hình 1.11 Không gian làm việc robot tọa độ cầu .............................................. 7
Hình 1.12 Robot SCARA .................................................................................. 8
Hình 1.13 Cấu trúc robot SCARA ..................................................................... 8
Hình 1.14 Không gian làm việc robot SCARA ................................................. 8
Hình 1.15 Robot tọa độ trụ ................................................................................ 9
Hình 1.16 Cấu trúc robot tọa độ trụ ................................................................... 9
Hình 1.17 Không gian làm việc robot tọa độ trụ ............................................. 10
Hình 1.18 Robot tọa độ vuông góc .................................................................. 10
Hình 1.19 Cấu trúc robot tọa độ vuông góc..................................................... 11
Hình 1.20 Không gian làm việc robot tọa độ vuông góc ................................. 11
Hình 1.21 Cấu trúc cơ bản của robot công nghiệp .......................................... 11
Hình 2.1 Biểu diễn một điểm trong không gian .............................................. 14
Hình 2.2 Hệ trục tọa độ vuông góc với các góc quay theo chiều dương ......... 16
Hình 2.3 Phép quay khi thứ tự quay thay đổi .................................................. 17
Hình 2.4 Phép tịnh tiến hệ tọa độ .................................................................... 18
Hình 2.5 Quan hệ giữa các hệ tọa độ ............................................................... 20
Hình 3.1 Hệ tọa độ theo chuyển đổi DH ......................................................... 25
Hình 3.2 Tay máy hai khâu phẳng ................................................................... 26
Hình 3.3 Robot ba khâu tọa độ trụ ................................................................... 28

iv
Hình 3.4 Cổ tay khớp cầu ................................................................................ 29
Hình 3.5 Robot tọa độ trụ với khớp cầu ở cổ tay............................................. 30
Hình 3.6 Robot hai bậc tự do ........................................................................... 32
Hình 3.7 Tay máy ba khâu tọa độ trụ .............................................................. 35
Hình 3.8 Khớp cổ tay ....................................................................................... 36
Hình 3.9 Tay máy ba khâu phẳng .................................................................... 39
Hình 3.10 Mô hình tay máy RT ....................................................................... 39
Hình 3.11 Robot ba khâu phẳng ...................................................................... 39
Hình 3.12 Robot ba khâu toàn khớp xoay ....................................................... 40
Hình 3.13 Robot ba khâu tọa độ vuông góc .................................................... 40
Hình 3.14 Mô hình robot SCARA ................................................................... 40
Hình 4.1 Hệ vật nặng - lò xo............................................................................ 42
Hình 4.2 Tay máy hai khâu phẳng ................................................................... 43
Hình 4.3 Mô hình hóa từ phương trình động lực học ...................................... 48
Hình 4.4 Mô hình hóa tay máy hai khâu phẳng trên MATLAB/Simulink...... 48
Hình 4.5 Mô hình tay máy một bậc tự do ........................................................ 49
Hình 4.6 Tay máy hai khâu RT ....................................................................... 49
Hình 5.1 Đế của robot SCARA ....................................................................... 53
Hình 5.2 Khâu thứ nhất của robot SCARA ..................................................... 53
Hình 5.3 Khâu thứ hai của robot SCARA ....................................................... 54
Hình 5.4 Khâu thứ ba của robot SCARA ........................................................ 54
Hình 5.5 Robot SCARA hoàn chỉnh trên Inventor .......................................... 55
Hình 5.6 Mô hình robot SCARA trên MATLAB/Simulink ............................ 55
Hình 5.7 Quỹ đạo hoạt động của robot SCARA ............................................. 56
Hình 5.8 Kết quả thực hiện quỹ đạo chữ CTUT .............................................. 56
Hình 5.9 Đáp ứng của góc thứ nhất ................................................................. 57
Hình 5.10 Đáp ứng của góc thứ hai ................................................................. 57
Hình 5.11 Đáp ứng của khớp tịnh tiến............................................................. 57

v
DANH MỤC BẢNG

Bảng 3.1 Thông số DH của tay máy hai khâu phẳng ...................................... 26
Bảng 3.2 Thông số DH của cơ cấu ba khâu tọa độ trụ .................................... 28
Bảng 3.3 Thông số DH của cổ tay khớp cầu ................................................... 30
Bảng 3.4 Thông số DH khớp cổ tay ................................................................ 36
Bảng 5.1 Một số khối hay sử dụng trong thư viện Simmechanics .................. 51
Bảng 5.2 Thông số của robot SCARA khi giải bài toán động học ngược ....... 58

vi
DANH MỤC TỪ VIẾT TẮT

Thuật ngữ viết tắt Diễn giải


SCARA Selective Compliance Assembly Robot Arm
IR Industrial Robot
DH Denavit Hartenberg
AMF Americal Machine and Foundry Company
DOF Defree Of Freedom
CAD Computer Aided Design
PID Proportional Integral Derivative

vii
Chương 1 TỔNG QUAN VỀ ROBOT CÔNG NGHIỆP

1.1 Lịch sử hình thành và phát triển


Do nhu cầu nâng cao năng suất và chất lượng sản phẩm ngày càng đòi
hỏi ứng dụng rộng rãi các phương tiện tự động hoá sản xuất. Xu hướng tạo ra
những dây chuyền về thiết bị tự động có tính linh hoạt cao đang hình thành.
Các thiết bị này đang thay thế dần các máy tự động “cứng” chỉ đáp ứng một
việc nhất định trong lúc thị trường luôn luôn đòi hỏi thay đổi mặt hàng về
chủng loại, về kích cỡ và về tính năng…Điều này dẫn đến nhu cầu ứng dụng
robot để tạo ra các hệ thống sản xuất tự động linh hoạt.
Thuật ngữ Robot xuất hiện vào năm 1920 trong một tác phẩm văn học
của nhà văn Tiệp Khắc có tên là Karel Capek.
Thuật ngữ Industrial Robot (IR) xuất hiện đầu tiên ở Mỹ do công ty
AMF (Americal Machine and Foundry Company) quảng cáo mô phỏng một
thiết bị mang dáng dấp và có một số chức năng như tay người được điều khiển
tự động thực hiện một số thao tác để sản xuất thiết bị có tên là Versatran.
Quá trình phát triển của robot công nghiệp được tóm tắt như sau:
 Từ những năm 1950, Mỹ xuất hiện viện nghiên cứu robot đầu tiên.
 Vào đầu những năm 1960, xuất hiện sản phẩm đầu tiên có tên gọi là
Versatran của công ty AMF.
 Ở Anh người ta bắt đầu nghiên cứu và chế tạo IR theo bản quyền của
Mỹ từ những năm 1967.
 Ở Châu Á, Nhật Bản bắt đầu nghiên cứu ứng dụng IR từ những năm
1968.
 Từ những năm1970, việc nghiên cứu nâng cao tính năng của robot đã
được chú ý nhiều hơn và cũng bắt đầu xuất hiện ở các nước Đức, Ý,
Pháp, Thụy Điển.
Từ những năm 80, nhất là vào những năm 90, 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 với nhiều tính năng vượt bậc. Chính vì vậy mà robot công
nghiệp đã có vị trí quan trọng trong các dây chuyền tự động sản xuất hiện đại.
Đến nay, trên thế giới có khoảng trên 200 công ty sản xuất IR trong số
đó có 80 công ty của Nhật, 90 công ty của Tây Âu, 30 công ty của Mỹ và một
số công ty của Nga, Tiệp Khắc…

1
1.2 Các ứng dụng điển hình
Từ khi mới ra đời robot công nghiệp được áp dụng trong nhiều lĩnh vực
dưới góc độ thay thế sức người. Nhờ vậy các dây chuyền sản xuất có năng
suất và hiệu quả sản xuất tăng lên rõ rệt.
Trong ngành cơ khí, robot được sử dụng nhiều trong công nghệ đúc,
công nghệ hàn, cắt kim loại, sơn, phun phủ kim loại, lắp ráp sản phẩm…

Hình 1.1 Ứng dụng robot công nghiệp trong hàn kim loại
Đặc biệt, trong ngành công nghiệp sản xuất ô tô thường áp dụng trong
lắp ráp, hàn…các chi tiết của ô tô.

Hình 1.2 Ứng dụng robot công nghiệp trong lắp ráp sản phẩm
Cùng với sự phát triển của các loại máy CNC thì robot công nghiệp là
công cụ hữu ích cho việc lắp ráp, gá đặt, di chuyển phôi cho các máy CNC.

2
Hình 1.3 Ứng dụng robot công nghiệp trong máy CNC
Ngày nay, việc sử dụng các tiện ích từ robot đến các lĩnh vực quân sự, y
học,…rất được quan tâm. Nhờ khả năng hoạt động ổn định và chính xác, robot
đặc biệt là tay máy được dùng trong kĩ thuật dò tìm, bệ phóng, và trong các ca
phẫu thuật y khoa với độ tin cậy cao.

Hình 1.4 Ứng dụng robot trong y học


Ngoài ra, tuỳ thuộc vào các ứng dụng cụ thể khác mà robot được thiết kế
để phục vụ cho các mục đích khác nhau, tận dụng được các ưu điểm lớn của
chúng đồng thời thể hiện khả năng công nghệ trong quá trình làm việc.
1.3 Kí hiệu biểu diễn qui ước
Một robot công nghiệp bao gồm các khâu được liên kết với nhau bởi các
khớp. Khớp nối thông thường là khớp loại 5 (khớp xoay hoặc tịnh tiến). Khớp
xoay hay còn gọi là khớp bản lề chỉ cho phép chuyển động xoay giữa hai khâu
và kí hiệu là R (Revolute). Khớp trượt hay còn gọi là khớp tịnh tiến cho phép

3
chuyển động trượt (tịnh tiến) giữa hai khâu và kí hiệu là P (Prismatic). Biểu
diễn qui ước hai loại khớp trên được trình bày như Hình 1.5.

Hình 1.5 Kí hiệu qui ước của khớp robot


Mỗi khớp robot được trình bày như là một liên kết giữa hai khâu. Trục
của khớp được định nghĩa là zi nếu khớp thực hiện mối liên kết giữa khâu thứ i
và khâu thứ i + 1 và được đặt trùng với trục quay của khớp xoay hoặc trùng
với phương tịnh tiến của khớp trượt. Thông số khớp được định nghĩa là θ cho
khớp xoay và d cho khớp trượt.
Ngoài ra, còn có nhiều kí hiệu để biểu diễn các khớp của robot công
nghiệp, tùy vào từng tác giả.
1.4 Bậc tự do của robot công nghiệp
Bậc tự do (DOF - Defree Of Freedom) là số khả năng chuyển động của
một cơ cấu (chuyển động xoay hoặc tính tiến). Để dịch chuyển được một vật
thể nào đó trong không gian cơ cấu chấp hành của robot phải đạt được một số
bậc tự do nhất định. Nói chung, cơ hệ của một robot là một cơ cấu hở do đó
bậc tự do của robot có thể tính theo công thức (1.1).
5
W  6n   i. pi (1.1)
i 1

Trong đó:
 n là số khâu động
 pi là số khớp loại i (i = 1,2…5: Số bậc tự do bị hạn chế)
Đối với các cơ cấu có các khâu được nối với nhau bằng khớp xoay hoặc
tính tiến (khớp động loại 5) thì số bậc tự do bằng số khâu động. Để định vị và
định hướng khâu chấp hành cuối của robot trong không gian ba chiều cần có 6
bậc tự do, trong đó 3 bậc tự do để định vị và 3 bậc tự do để định hướng. Một
số công việc đơn giản có thể yêu cầu số bậc tự do ít hơn.

4
1.5 Cấu hình robot công nghiệp phổ biến
Mặc dù có nhiều cách sử dụng khớp xoay và khớp trượt để xây dựng
chuỗi động học nhưng trong thực tế có một vài cách sắp xếp phổ biến.
1.5.1 Robot toàn khớp xoay
Robot toàn khớp xoay sử dụng các khớp bản lề cho toàn bộ các khớp.
Một loại robot toàn khớp xoay được trình bày như Hình 1.6. Robot này có các
trục z1 và z2 song song với nhau và cùng nhau vuông góc với trục z0, còn có
tên gọi khác là robot khớp khủy tay. Cấu trúc và các thuật ngữ tương ứng với
robot toàn khớp xoay được trình bày như Hình 1.7. Không gian làm việc của
loại robot này được trình bày như Hình 1.8.

Hình 1.6 Robot toàn khớp xoay

Hình 1.7 Cấu trúc robot toàn khớp xoay

5
Hình 1.8 Không gian làm việc robot toàn khớp xoay
1.5.2 Robot tọa độ cầu
Bằng cách thay thế khớp thứ ba của robot toàn khớp xoay bằng khớp tịnh
tiến ta được robot tọa độ cầu như Hình 1.9. Thuật ngữ robot tọa độ cầu có
được từ việc xem xét không gian làm việc của robot này. Với robot này thì tất
cả các điểm mà cơ cấu tác động cuối với tới sẽ tạo nên hình dạng một khối cầu
không hoàn chỉnh. Cấu trúc và không gian làm việc của kiểu robot này được
trình bày như Hình 1.10 và Hình 1.11.

Hình 1.9 Robot tọa độ cầu

6
Hình 1.10 Cấu trúc robot tọa độ cầu

Hình 1.11 Không gian làm việc robot tọa độ cầu


1.5.3 Robot SCARA
Robot SCARA (Selective Compliance Assembly Robot Arm) là một
robot đặc biệt. Nó bao gồm hai khớp xoay và một khớp tịnh tiến. Và ba khớp
này song song với nhau và thường tay gắp hay cơ cấu chấp hành cuối vuông
góc với mặt đất được trình bày như Hình 1.12. Robot này thường dùng để lắp
ráp chi tiết trên mặt phẳng. Cấu trúc và không gian làm việc robot này được
trình bày như Hình 1.13 và Hình 1.14.

7
Hình 1.12 Robot SCARA

Hình 1.13 Cấu trúc robot SCARA

Hình 1.14 Không gian làm việc robot SCARA

8
1.5.4 Robot tọa độ trụ
Robot tọa độ trụ được biểu diễn như Hình 1.15. Ở đây, khớp thứ nhất là
khớp xoay tạo ra chuyển động xoay quanh đế của robot trong khi đó khớp thứ
hai và thứ ba là khớp trượt. Cấu trúc của robot tọa độ trụ được trình bày như
Hình 1.16. Không gian làm việc của robot này là một khối trụ không hoàn
chỉnh như Hình 1.17.

Hình 1.15 Robot tọa độ trụ

Hình 1.16 Cấu trúc robot tọa độ trụ

9
Hình 1.17 Không gian làm việc robot tọa độ trụ
1.5.5 Robot tọa độ vuông góc
Robot tọa độ vuông góc hay còn gọi là robot Cartesian có ba khớp đầu
tiên là ba khớp trượt theo ba phương vuông góc với nhau được trình bày như
Hình 1.18. Cấu trúc và không gian làm việc robot này được trình bày như
Hình 1.19 và Hình 1.20.

Hình 1.18 Robot tọa độ vuông góc

10
Hình 1.19 Cấu trúc robot tọa độ vuông góc

Hình 1.20 Không gian làm việc robot tọa độ vuông góc
1.6 Cấu trúc cơ bản của robot công nghiệp

Hình 1.21 Cấu trúc cơ bản của robot công nghiệp


Một robot công nghiệp nên được xem xét không chỉ là một tập hợp các
liên kết cơ khí, mà phải bao gồm một hệ thống gồm nhiều thành phần như
được thể hiện trong Hình 1.21. Các thành phần bao gồm: cánh tay cơ khí, tay
11
gắp, cảm biến bên trong và cảm biến bên ngoài, giao diện máy tính, và thiết bị
điều khiển. Phần mềm lập trình có thể xem như một phần không thể thiếu của
hệ thống tổng thể, bởi vì robot sẽ được lập trình và kiểm soát để tạo ra các
hoạt động lên phạm vi ứng dụng và hiệu suất của chúng.

12
BÀI TẬP CHƯƠNG 1
1.1 Liệt kê 10 ứng dụng của robot trong thực tế. Chọn một loại robot phù
hợp cho mỗi ứng dụng.
1.2 Tìm 03 bài báo viết về ứng dụng trí tuệ nhân tạo trong robot công
nghiệp.
1.3 Tìm hiểu một vài địa chỉ Internet của các công ty sản xuất robot:
ABB: https://www.abb.com/robotics
ADEPT: https://www.adept.com
KUKA: https://www.kuka.com
FANUS Robotics: https://www.fanuc.com/product/robot.html
DENSO Robotics: http://www.densorobotics.com

13
Chương 2 CÁC PHÉP BIẾN ĐỔI THUẦN NHẤT

2.1 Hệ tọa độ thuần nhất


Để biểu diễn 1 điểm trong không gian 3 chiều, người ta dùng vector
điểm. Vector điểm thường được kí hiệu bằng các chữ viết thường như u, v,
x…để mô tả vị trí của điểm U, V, X…
Tuỳ thuộc hệ qui chiếu được chọn mà 1 điểm trong không gian có thể
được biểu diễn bằng các vector điểm khác nhau. Trong Hình 2.1, cả vE và vF
là hai vector khác nhau mặc dù cả hai vector cùng mô tả điểm V.

Hình 2.1 Biểu diễn một điểm trong không gian


Nếu gọi i, j, k là vector đơn vị của hệ tọa độ nào đó thì ta có vector điểm
là v, biểu diễn cho tọa độ điểm V (như Hình 2.1) như sau:
   
v  ai  bj  ck (2.1)

với a, b, c là tọa độ vị trí điểm V.


Nếu quan tâm đồng thời vấn đề vị trí và định hướng, ta phải biểu diễn
vector v trong không gian 4 chiều:

x
 
  y
v (2.2)
z
 
 w
x y z
Trong đó:  a;  b;  c, với w là hằng số thực (hằng số tỉ lệ).
w w w
Nếu w = 1, thì x = a, y = b, z = c, hệ tọa độ không gian 4 chiều trùng với
hệ tọa độ không gian 3 chiều, hệ tọa độ có w = 1 gọi là hệ tọa độ thuần nhất.

14
2.2 Các phép biến đổi ma trận
Cho u là vector biểu diễn điểm cần biến đổi, h là vector dẫn được biểu
diễn bằng ma trận chuyển đổi H. Khi đó vector biểu diễn điểm sau chuyển đổi
là v:
 
v  H .u (2.3)
2.2.1 Phép biến đổi tịnh tiến
Giả sử cần tịnh tiến một điểm hay một vật thể theo vector dẫn:
   
h  ai  bj  ck (2.4)

Ma trận chuyển đổi tịnh tiến tổng quát:

1 0 0 a
0 1 0 b
H  Trans(a, b, c)    (2.5)
0 0 1 c
 
0 0 0 1

Gọi u là vector biểu diễn điểm cần tịnh tiến:

u  x y z 1 (2.6)

Khi đó v là vector biểu diễn điểm đã biến đổi tịnh tiến được xác định:

1 0 0 a  x   x  a
0 1 0 b   y   y  b
v  H .u   .     (2.7)
0 0 1 c  z  z  c
     
0 0 0 1 1   1 

Kí hiệu: v  Trans ( a , b, c ).u

Ví dụ 2.1
   
Cho điểm U được biểu diễn bởi vector u  2i  3 j  2k và vector dẫn
   
h  4i  3 j  7k . Tìm vector v biểu diễn điểm V sau khi thực hiện phép tịnh
tiến.

1 0 0 4   2 6
0 1 0 3  3  0 
v  H .u    .       Trans (4, 3,7).u
0 0 1 7   2  9 
     
0 0 0 1  1  1 

15
2.2.2 Phép quay quanh các trục tọa độ
Giả sử ta cần quay một điểm hay vật thể quanh trục x một góc α, quanh
trục y một góc β và quanh trục z một góc γ ta lần lượt ta có các ma trận chuyển
động quay như sau:

1 0 0 0
0 cos   sin  0
Rot  x,     (2.8)
0 sin  cos  0
 
0 0 0 1

 cos  0 sin  0
 0 1 0 0
Rot  y,     (2.9)
  sin  0 cos  0
 
 0 0 0 1

cos   sin  0 0
 sin  cos  0 0
Rot  z,     (2.10)
 0 0 1 0
 
 0 0 0 1

Hình 2.2 Hệ trục tọa độ vuông góc với các góc quay theo chiều dương
Ví dụ 2.2
   
Cho điểm U được biểu diễn bởi vector u  7i  3 j  2k . Thực hiện quay
điểm U quanh trục z một góc 900 (Rot(z, 90)), sau đó tiếp tục quay quanh y
một góc 900 (Rot(y, 90)). Tìm vector w biểu diễn điểm W sau khi thực hiện lần
lượt hiện hai phép quay.

16
0 1 0 0  7   3
1 0 0 0   3   7 
v  Rot ( z,90).u   . 
0 0 1 0 2  2 
     
0 0 0 1  1   1 

0 0 1 0   3  2 
0 1 0 0   7  7 
w  Rot ( y,90).v   . 
 1 0 0 0  2  3
     
0 0 0 1   1  1 

Ta có thể tính: w  Rot ( y ,90).Rot ( z ,90).u


Nếu đổi thứ tự quay quanh trục y một góc 900 trước và quay quanh trục z
một góc 900 sau ta sẽ được w '  w , khi đó:

0 0 1 0  7   2 
0 1 0 0   3   3 
v '  Rot ( y,90).u   . 
 1 0 0 0   2   7 
     
0 0 0 1  1   1 

0 1 0 0   2   3 
1 0 0 0   3   2 
w '  Rot ( z,90).v   . 
0 0 1 0   7   7 
     
0 0 0 1  1   1 

Và ta có: w '  Rot ( z ,90).Rot ( y ,90).u

Sau khi thực hiện thay đổi thứ tự của các phép quay, rõ ràng ta thấy:
Rot ( z ,90).Rot ( y ,90).u  Rot ( y ,90).Rot ( z ,90).u

Hình 2.3 Phép quay khi thứ tự quay thay đổi

17
2.2.3 Ma trận chuyển đổi thuần nhất
Ma trận chuyển đổi thuần nhất là một ma trận 4x4 được định nghĩa như
là một sự sắp xếp thành các vector tọa độ thuần nhất từ một hệ tọa độ khác.
Ma trận chuyển đổi thuần nhất có thể biểu diễn như sau:

 Rotation  3 x3 | Translation  3x1 


 
H   |   (2.11)
 0 1x3 | 1 

2.3 Biến đổi hệ tọa độ


Giả sử cần tịnh tiến gốc tọa độ Descartes O(0, 0, 0) theo một vector dẫn
   
h  4i  3 j  7k .
Kết quả phép biến đổi ta được OT là:

1 0 0 4  0   4 
0 1 0 3 0   3
OT  H .O   . 
0 0 1 7  0   7 
     
0 0 0 1  1   1 

Nghĩa là gốc tọa độ ban đầu có tọa độ O(0, 0, 0) đã chuyển đổi đến gốc
tọa độ mới có tọa độ OT so với hệ tọa độ cũ. Tuy nhiên trong phép biến đổi
này các trục tọa độ của OT vẫn song song và cùng hướng với các trục của hệ
tọa độ O.

Hình 2.4 Phép tịnh tiến hệ tọa độ


Nếu tiếp tục thực hiện phép biến đổi A  Rot ( y ,90).Rot ( z , 90) đối với
hệ tọa độ OT thì ta được hệ tọa độ hoàn toàn mới.

18
 Nếu chọn hệ quy chiếu là hệ tọa độ gốc (hệ tọa độ cố định) thì ta
thực hiện các phép biến đổi từ phải sang trái.

 Nếu chọn hệ quy chiếu là hệ tọa độ trung gian (hệ tọa độ hiện tại)
thì ta thực hiện các phép biến đổi từ trái sang phải.

Như vậy, hai kết quả của hai phép quay là giống nhau nhưng ý nghĩa vật
lý là khác nhau.
2.4 Mối quan hệ giữa các hệ tọa độ
Giả sử ta có ba hệ tọa độ A, B ,C thì mối quan hệ giữa các hệ tọa độ
được biểu diễn như sau:

 B có mối quan hệ với A qua phép biến đổi H BA .


 C có mối quan hệ với B qua phép biến đổi H CB .

Giả sử có điểm P trong hệ tọa độ C được biểu diễn bằng vector Pc, như
Hình 2.5. Mối quan hệ của điểm P trong hệ tọa độ A được xác định như sau:
Chúng ta có thể biến đổi PC thành PB như sau:

PB  H CB .PC (2.12)

Sau đó biến đổi PB thành PA như sau:

PA  H BA .PB (2.13)

19
Kết hợp (2.12) và (2.13) ta có (2.14).

PA  H BA .H CB .PC (2.14)
1
Tính chất: H BA   H AB 

Hình 2.5 Quan hệ giữa các hệ tọa độ

20
BÀI TẬP CHƯƠNG 2
   
2.1 Cho điểm U được biểu diễn bởi vector u  2i  5 j  3k và vector dẫn
T
h  1 3 5 1 . Tìm vector v biểu diễn điểm V sau khi thực hiện
phép tịnh tiến.
T
2.2 Cho điểm N được biểu diễn bởi vector u  3 2 7 1 . Thực hiện
quay điểm N quanh trục y một góc -900 (Rot(y, -90)). Tìm vector k biểu
diễn điểm K sau khi thực hiện phép quay.
T
2.3 Cho điểm M được biểu diễn bởi vector điểm v   2 4 1 1 tịnh
T
tiến M theo vector dẫn h  1 2 1 1 sau đó tiếp tục quay điểm đã
biến đổi quanh trục x một góc 900. Xác định vector m biểu diễn điểm
M sau hai phép biến đổi.
2.4 Cho phép biến đổi H  Rot ( z,90).Rot ( y,45).Trans(6, 6,7) thực hiện so
T
với tọa độ gốc và vector u   6 6 7 1 trong hệ tọa độ gốc. Tìm
phép biến đổi H và tìm vector v là điểm có được từ vector u sau khi
thực hiện phép biến đổi H.
2.5 Cho ma trận chuyển đổi thuần nhất T. Tìm ma trận nghịch đảo của T.

0 0 1 1
0 1 0 2
T  
 1 0 0 3
 
0 0 0 1

Gợi ý:
Nếu có ma trận chuyển đổi thuần nhất T:

 nx ox ax px 
n oy ay py 
T  y 
 nz oz az pz 
 
0 0 0 1

Thì ta có ma trận nghịch đảo của T là T-1 được xác định theo công thức:
 
 nx n y nz  p.n  p.n  px nx  p y n y  pz nz
 o o o  p .o  
1  x y z  với: p.o  px ox  p y o y  pz oz
T   
 ax a y az  p.a  p.a  px ax  p y a y  pz az
 
0 0 0 1 

21
2.6 Cho ma trận biến đổi từ hệ tọa độ {A} về hệ tọa độ {B} như sau:

1 0 0 1
0 cos   sin  2
HA  
B 
0 sin  cos  3
 
0 0 0 1

a) Tìm chuyển đổi H BA .


T
b) Cho θ = 450 và điểm P trong tọa độ {B} là PB  1 5 1 .
Tìm điểm P trong hệ tọa độ {A}.

22
Chương 3 ĐỘNG HỌC ROBOT

Một chuỗi cơ cấu máy có n khớp sẽ có n + 1 khâu động. Các khớp được
đánh số từ 1 đến n và các khâu động được đánh số từ 0 đến n bắt đầu từ khâu
cố định (giá). Bằng cách đánh số thứ tự thế này, khớp thứ i sẽ kết nối với khâu
i – 1 và i. Khi khớp i được tác động, khâu i sẽ di chuyển. Giá của tay máy sẽ
không di chuyển khi các khớp được tác động. Trong thực tế, tay máy có thể
được cố định lên một giá có thể di chuyển được. Bằng cách áp dụng các kỹ
thuật được trình bày trong chương này, việc phân tích động học trong trường
hợp giá di chuyển được thực hiện một cách dễ dàng. Tương ứng với khớp thứ i
sẽ có thông số của khớp i, được kí hiệu là q. Trong trường hợp là khớp quay,
qi là góc quay và qi là khoảng dịch chuyển tương ứng với khớp trượt.
Để khảo sát chuyển động của các khâu, phương pháp hệ tọa độ tham chiếu
thường xuyên được sử dụng. Bằng cách “gắn cứng” lên mỗi khâu động thứ i
một hệ tọa độ vuông góc (Oxyz)i, còn gọi là hệ tọa độ tương đối và gắn cứng,
với giá cố định hệ tọa độ vuông góc (Oxyz)0 còn gọi là hệ tọa độ tuyệt đối hay
hệ tọa độ cơ sở, từ đó có thể khảo sát chuyển động của một khâu bất kỳ trên
cánh tay robot hoặc một điểm bất kỳ thuộc khâu.
Giả định rằng H ii 1 là ma trận chuyển đổi thuần nhất mô tả vị trí và hướng
của hệ tọa độ Oixiyizi so với hệ tọa độ Oi–1xi–1yi-1zi–1. Ma trận H ii 1 không phải
là ma trận hằng số, nó phụ thuộc vào hình dạng của robot. Tuy nhiên với giả
thuyết rằng tất cả các khớp của robot điều là khớp loại 5 thì ma trận H ii 1 là
một hàm biểu thức với một biến số khớp. Nói cách khác:
H ii 1  H ii 1  qi  (3.1)

Khi đó ma trận của các chuyển đổi có thể viết lại như sau:
H10  H10  q1 
H 20  H10  q1  H 21  q2  ,
(3.2)
...
H n0  H10  q1  H 21  q2  ... H nn 1  qn  .

Về nguyên tắc, động học robot chỉ là việc thiết lặp các ma trận chuyển
đổi của các khâu H ii 1 và nhân các ma trận lại với nhau. Tuy nhiên, khi robot
có nhiều khâu, khớp thì việc thiết lập các ma trận trên thực sự không dễ dàng,
khi đó việc tìm ra một phương pháp đơn giản để thiết lập các ma trận đó là cần
thiết.

23
3.1 Chuyển đổi Denavit – Hartenberg (DH)
Vào năm 1955, Denavit và Hartenberg đăng tải một bài báo của tạp chí
Cơ học ứng dụng ASME (Journal fo Applied Mechanics). Từ các phương
pháp giải trong bài báo này, việc ứng dụng trong phương pháp giải quyết bài
toán được đưa vào biểu diễn và mô hình hóa robot để tìm ra phương trình di
chuyển. Phương pháp này trở thành phương pháp tiêu biểu để biểu diễn và mô
hình hóa robot. Mô hình Denavit - Hartenberg (DH) là cách biểu diễn đơn giản
mô hình các khâu và khớp của robot và có thể sử dụng cho bất kỳ cấu hình
robot nào, kể cả bài toán phức tạp hay đơn giản.
Trong chuyển đổi Denavit - Hartenberg hay chuyển đổi DH, ma trận
chuyển đổi H ii 1 được biểu diễn như là kết quả của việc nhân các ma trận lại
với nhau:
H ii 1  Rot  z ,  i  Trans  z , d i  Trans  x, ai  Rot  x,  i 
cos  i  sin i 0 0  1 0 0 0
 sin  cos  i 0 0  0 1 0 0 
 i

 0 0 1 0  0 0 1 di 
  
 0 0 0 1  0 0 0 1
1 0 0 ai  1 0 0 0
0 1 0 0  0 cos  i  sin  i 0 (3.3)
x  
0 0 1 0  0 sin  i cos  i 0
  
0 0 0 1  0 0 0 1
cos  i  sin i cos  i sin  i sin  i ai cos  i 
 sin  cos  i cos  i  cos  i sin  i ai sin i 
 i 
 0 sin  i cos  i di 
 
 0 0 0 1 

Ở đây, bốn thông số ai, αi, di và θi. là bốn thông số tương ứng với khâu
thứ i. Bốn thông số này được gọi là góc quay khớp (join angle), chuyển vị
khâu (link offset), độ dài khâu (link length) và góc xoắn khâu (link offset). Khi
ma trận H ii 1 là hàm một biến, ba trong bốn thông số trên sẽ là hằng số.

Nguyên tắc đặt hệ tọa độ theo phép chuyển đổi DH


Trong chuyển đổi DH, ma trận chuyển đổi thuần nhất tồn tại bốn thông
số (ai, αi, di và θi). Các thông số này có được nhờ vào phép đặt hệ tọa độ lên
các khớp như Hình 3.1.

24
Hình 3.1 Hệ tọa độ theo chuyển đổi DH
Phương pháp đặt hệ tọa độ theo chuyển đổi DH, được dựa trên Hình 3.1
như sau:
 Chọn trục zi dọc theo đường tâm khớp i + 1.
 Gốc tọa độ Oi là giao điểm của trục tọa độ zi với đường vuông góc
chung của zi-1 và zi. Nếu zi và zi-1 cắt nhau thì gốc tọa độ Oi là điểm
đó. Nếu zi song song với zi-1 thì Oi là điểm bất kì dọc theo zi.
 Chọn trục xi dọc theo đường vuông góc chung của zi và zi-1, có
chiều từ khớp i sang khớp i + 1. Nếu zi và zi-1 cắt nhau thì xi thì
vuông góc với mặt phẳng tạo bởi zi và zi-1.
 Chọn trục yi sao cho (Oxyyz)i là tam diện thuận (theo quy tắc bàn
tay phải).
 Đối với hệ tọa độ cơ sở (Oxyyz)0 chỉ có duy nhất trục z0 là xác định,
các trục còn lại chọn tùy ý.
Khi đó các thông số trong ma trận DH được xác định như sau:
 ai là khoảng cách dọc theo trục xi từ Oi đến giao điểm giữa hai trục
zi-1 và xi (độ dài đoạn vuông góc chung của hai trục z).
 αi là góc giữa hai trục zi và zi-1 khi quay trục xi theo chiều dương
quy ước (ngược chiều kim đồng hồ).
 di là khoảng cách dọc theo trục zi-1 từ Oi-1 đến giao điểm của zi-1 và
xi với trục zi-1.
 θi là góc giữa hai trục xi-1 và xi khi quay quanh trục zi-1 theo chiều
dương quy ước.

25
3.2 Động học thuận robot
Trong phần này, phương trình của bài toán động học thuận được trình
bày. Bài toán động học thuận thiết lặp mối quan hệ giữa các thông số khớp với
vị trí và hướng của khâu tác động cuối. Thông số khớp là góc quay đối với
khớp quay và là độ dịch chuyển (hay chuyển vị) đối với khớp trượt. Chuyển
đổi Denavit - Hartenberg được sử dụng nhằm đưa ra một phương pháp phân
tích đồng nhất, đơn giản cho các chuyển đổi thuần nhất. Đương nhiên, việc
phân tích động học thuận robot có thể thực hiện thông thường bằng các ma
trận chuyển đổi đơn.Tuy nhiên, khi số lượng khâu và khớp của robot rất nhiều
thì việc thực hiện bằng phương pháp thông thường gặp nhiều khó khăn.
Nói một cách đơn giản, bài toàn động học thuận là bài toán tìm vị trí và
hướng của khâu tác động đầu cuối khi biết được thông số các khớp tay máy.
Ví dụ 3.1 Tay máy hai khâu phẳng
Xét tay máy hai khâu phẳng như Hình 3.2. Các hệ trục tọa độ được đặt
theo qui ước DH.

Hình 3.2 Tay máy hai khâu phẳng


Khi đó, thông số khớp theo qui ước DH được trình bày như Bảng 3.1.
Bảng 3.1 Thông số DH của tay máy hai khâu phẳng
Khâu ai i di i
1 l1 0 0 1*

2 l2 0 0 2*

26
Ma trận chuyển đổi thuần nhất được xác định như (3.4) và (3.5).
c1  s1 0 l1c1 
 s c1 0 l1s1 
H1   1
0
(3.4)
0 0 1 0 
 
0 0 0 1 

c 2  s 2 0 l2 c 2 
 s c 2 0 l2 s 2 
H 21   2 (3.5)
 0 0 1 0 
 
 0 0 0 1 

Ma trận chuyển đổi thuần nhất tổng quát được xác định như (3.6).
 c12  s12 0 l1c1  l2 c12 
 s c12 0 l1s1  l2 s12 
H 2  H1 H 2   12
0 0 1
(3.6)
 0 0 1 0 
 
 0 0 0 1 

với c1  cos 1 ; c12  cos 1   2  ; s1  sin 1 ; s12  sin 1   2  .

Có thế thấy rằng, cột cuối cùng trong ma trận H 20 là tọa độ của điểm O2
trong hệ tọa độ cơ sở, đồng thời là tọa độ của khâu tác động cuối. Phần ma
trận xoay của H 20 biểu diễn hướng của hệ tọa độ O2x2y2z2 trong hệ tọa độ cơ
sở.
x  l1c1  l2 c12 (3.7)

y  l1s1  l2 s12 (3.8)

Ví dụ 3.2 Tay máy ba khâu tọa độ trụ


Xem xét robot tọa độ trụ ba khâu như Hình 3.3. Trục z0 nằm dọc theo
trục khớp thứ nhất. Gốc tọa độ O0 được chọn bất kỳ trên trục z0. Trục x0 cũng
được chọn bất kỳ. Trong hình 3.1, trục x0 được chọn sao cho x0 vuông góc với
mặt phẳng giấy. Tương tự với các hệ trục còn lại trên các khớp. Thông số
khớp DH được xác định như Bảng 3.2. Khi đó các ma trận chuyển đổi được
xác định như sau:
c1  s1 0 0 
s c1 0 0 
H1   1
0
(3.9)
0 0 1 d1 
 
0 0 1 1

27
1 0 0 0
0 0 1 0 
H2  
1
(3.10)
0 0 1 d 2 
 
0 0 0 1

1 0 0 0
0 1 0 0 
H 32   (3.11)
0 0 1 d3 
 
0 0 0 1

Khi đó ma trận chuyển đổi H 30 được xác định:

 c1 0  s1  s1d 3 
s 0 c1 c1d3 
H 3  H1 H 2 H 3   1
0 0 1 2
(3.12)
0 1 0 d1  d 2 
 
0 0 0 1 
Bảng 3.2 Thông số DH của cơ cấu ba khâu tọa độ trụ
Khâu ai i di i
1 0 0 d1 θ1
2 0 -90 d2 0
3 0 0 d3 0

Hình 3.3 Robot ba khâu tọa độ trụ

28
Ví dụ 3.3 Cổ tay khớp cầu
Xét cơ cấu cổ tay như Hình 3.4. Thông số DH được trình bày như Bảng 3.3.
Ma trận chuyển đổi được xác định như sau:
c4 s4 0 0
s c4 0 0 
H 43   4 (3.13)
0 1 1 0
 
0 0 0 1

 c5 0 s5 0
s 0 c5 0 
H5   5
4
(3.14)
0 1 0 0
 
0 0 0 1

 c6  s6 0 0
s c6 0 0 
H6   6
5
(3.15)
0 0 1 d6 
 
0 0 0 1

Khi đó ma trận chuyển đổi H 63 được xác định:

H 63  H 43 H 54 H 65
 R63 O63 
  (3.16)
0 1
 c4c5c6  s4 s6 c4c5 s6  s4 s5 c4 s5 c4 s5 d 6 
s c c  c s  s4c5 s6  c4 c6  s4 s5 c4 s5 d 6 
= 4 5 6 4 6
  s4 c6  s5 s6 c5 c5 d6 
 
 0 0 0 1 

Hình 3.4 Cổ tay khớp cầu

29
Bảng 3.3 Thông số DH của cổ tay khớp cầu
Khâu ai i di i
4 0 -90 0 θ4
5 0 90 0 θ5
6 0 0 d6 θ6

Ví dụ 3.4 Robot tọa độ trụ với cổ tay khớp cầu


Xem xét cơ cấu tay máy tọa độ trụ với khớp cầu ở cổ tay như Hình 3.5.
Thông số khớp theo qui tắc DH được trình bày trong như Bảng 3.2 và Bảng
3.3. Khi đó ma trận chuyển đổi được tính như sau:
 r11 r12 r13 dx 
r r22 r23 d y 
H6  H3 H6 = 
0 0 3 21
(3.17)
 r31 r32 r33 dz 
 
0 0 0 1 

Trong đó:
r11  c1c4 c5c6  c1s4 s6  s1 s5c6 ; r13  c1c4 s5  s1c5
r21  s1c4 c5c6  s1s4 s6  c1s5c6 ; r23  s1c4 s5  c1c5
r31   s4 c5 c6  c4 s6 ; r33   s4 s5
r12  c1c4 c5 s6  c1s4 c6  s1s5c6 ; d x  c1c4 s5 d 6  s1c5 d 6  s1d3
r22   s1c4 c5 s6  s1s4 s6  c1s5 c6 ; d y  s1c4 s5 d 6  c1c5 d 6  c1d 3
r32  s4 c5c6  c4 c6 ; d z   s4 s5 d 6  d1  d 2

Hình 3.5 Robot tọa độ trụ với khớp cầu ở cổ tay


30
3.3 Động học ngược robot
Trong khi bài toán động học thuận là để xác định vị trí và hướng của
khâu tác động cuối khi biết thông số của các khớp thì bài toán động học ngược
phải xác định thông số khớp khi đã biết vị trí và hướng của khâu tác động
cuối. Thông thường, việc giải bài toán động học ngược thì khó hơn nhiều so
với việc giải bài toán động học thuận. Bài toán động học ngược có thể phát
biểu một cách tổng quát như sau:
Cho trước ma trận thuần nhất 4x4:
 R O
H   (3.18)
0 1 
Xác định nghiệm phương trình (3.19).
Tn0 (q1 , q2 ,...qn )  H10  q1  H 21  q2  ... H nn1  qn   H (3.19)

ở đây H biểu diễn vị trí và hướng mong đợi của khâu tác động cuối. Việc giải
bài toán ngược nhằm tìm ra các thông số khớp để điều khiển robot đến vị trí
và hướng mong đợi.
Từ phương trình ma trận (3.19) sẽ rút ra được 12 phương trình phi tuyến
với n biến số, các phương trình đó có thể được trình bày như sau:
Tij ( q1 , q2 ,...qn )  hij (3.20)

Việc tìm nghiệm trực tiếp từ các phương trình (3.20) thật sự là rất khó
khăn. Vì vậy việc phát triển một kỹ thuật hiệu quả và mang tính hệ thống để
có thể áp dụng cho phần lớn các loại tay máy là cần thiết. Trong khi bài toán
động học thuận chỉ có nghiệm duy nhất nhờ vào các phương trình động học
thuận thì bài toán động học ngược có hoặc không tồn tại nghiệm. Việc loại bỏ
các nghiệm không cần thiết có thể thực hiện dựa vào đặc điểm hình học của
tay máy. Ví dụ như chuyển động của khớp xoay thì không có thể lớn hơn 360o.
Mặc dù việc giải bài toán tổng quát của động học thuận là tương đối
khó khăn. Nhưng chúng ta cũng cần nhận ra rằng một tay máy thông thường
có 6 khớp với 3 khớp đầu mô tả vị trí của tay máy và 3 khớp cuối cùng mô tả
hướng. Vì vây bài toán động học ngược có thể phân chia thành động học
ngược vị trí và hoạt động ngược hướng.
3.3.1 Động học ngược vị trí
Việc giải bài toán động học ngược vị trí là bài toán tìm vị trí 3 khớp đầu
tiên của tay máy, gồm có phương pháp hình học và phương pháp đại số. Khác

31
với bài toán động học thuận, bài toán động học ngược có thể có nhiều nghiệm
khác nhau.
Ví dụ 3.5 Động học ngược vị trí robot hai bậc tự do
Xét tay máy hai khâu phẳng như Hình 3.6. Chúng ta có thể giải bài toán
động học ngược vị trí bằng phương pháp đại số và phương pháp hình học.

Hình 3.6 Robot hai bậc tự do


Phương pháp đại số
Giả sử ta có ma trận thuần nhất 4x4:
 R O
H   (3.21)
 0 1 

với R là ma trận xoay, O (x, y, z) là vị trí cho bởi của khâu cuối.
Đồng nhất hệ số của hai ma trận (3.6) và (3.21) ta được phương trình
(3.22) và (3.23).
xc  l1c1  l2 c12 (3.22)

yc  l1s1  l2 s12 (3.23)

Tính toán góc 2 :

Bình phương hai phương trình (3.22) và (3.23) ta có:


xc2  l12 c 2 1  l22 c 212  2l1l2 c1c12 (3.24)

yc2  l12 s 21  l22 s 212  2l1l2 s1 s12 (3.25)

32
Cộng hai vế phương trình (3.24) và (3.25) ta có:

xc2  yc2  l12 c 21  s 21   l22 c 212  s 212   2l1l2 c1c12  s1s12  (3.26)

xc2  yc2  l12  l22  2l1l2  c1 c1c2  s1 s2   s1  s1c2  c1s2  (3.27)

xc2  yc2  l12  l22  2l1l2 c 21c2  c1s1s2  s 21c2  c1s1s2  (3.28)

xc2  yc2  l12  l22  2l1l2 c2 c 21  s 21  (3.29)

xc2  yc2  l12  l22  2l1l2 c2 (3.30)

xc2  yc2  l12  l22


c2  (3.31)
2l1l2

 xc2  yc2  l12  l22 


2

s2   1    (3.32)
 2l l 
1 2

Từ (3.31) và (3.32), ta có (3.33).


  xc2  yc2  l12  l22  xc2  yc2  l12  l22 
2

2  a tan 2  1   ,  (3.33)
 2 l l   2 l l 
 1 2 1 2

Tính toán góc 1 :

c1 xc  l1c 21  l2 c 21c 2  l2 c1s1s 2 (3.34)

s1 yc  l1 s 21  l2 s 21c 2  l2 c1s1s 2 (3.35)

c1 xc  s1 yc  l1  c 21  s 21   l2 c 2  s 21  c 21  (3.36)

c1 xc  s1 yc  l1  l2 c 2 (3.37)

 s1 xc  l1s1c1  l2 s1c1c 2  l2 s 21s 2 (3.38)

c1 yc  l1s1c1  l2 c1s1c 2  l2 c 21s 2 (3.39)

 s1 xc  c1 yc  l2 s 2  s 21  c 21  (3.40)

 s1 xc  c1 yc  l2 s 2 (3.41)

c1 xc2  s1 xc yc  xc  l1  l2c 2  (3.42)

 s1 xc yc  c1 yc2  yc l2 s 2 (3.43)

c1 ( xc2  yc2 )  xc (l1  l2 c2 )  yc l2 s2 (3.44)

33
xc l1  l2 c2   ycl2 s2
c1  (3.45)
xc2  yc2

 x l  l c   y l s 
2

s1   1   c 1 2 2 2 2 c 2 2  (3.46)


 x y c c

Từ (3.45) và (3.46), ta có (3.47).


  xc l1  l2 c2   ycl2 s2  xc l1  l2 c2   yc l2 s2 
2

1  a tan 2  1   ,  (3.47)
  xc2  yc2  xc2  yc2 


Phương pháp hình học


Từ hình Hình 3.6, áp dụng các công thức lượng giác cơ bản ta dễ dàng có
được kết quả bài toán động học ngược vị trí của robot hai bậc tự do như sau:
1  a tan 2  xc , yc   a tan 2 l1  l2 c2 , l2 s2  (3.48)

Áp dụng định lí Cosin cho tam giác OPK ta có:


xc2  yc2  l12  l22
cos 2  (3.49)
2l1l2

sin 2   1 cos 2 2 (3.50)

Từ (3.49) và (3.50) ta có:


  xc2  yc2  l12  l22  xc2  yc2  l12  l22 
2

2  a tan 2  1   ,  (3.51)
 2 l l   2 l l 
 1 2 1 2

Ví dụ 3.6 Động học ngược vị trí tay máy ba khâu tọa độ trụ
Xét tay máy ba khâu tọa độ trụ được bố trí như Hình 3.7, bài toán động
học ngược vị trí được giải bằng phương pháp hình học.
Từ Hình 3.7, áp dụng các công thức lượng giác cơ bản ta có:
1  a tan 2 xc , yc  (3.52)

d 2  zc  d1 (3.53)

d 3  xc2  yc2 (3.54)

34
Hình 3.7 Tay máy ba khâu tọa độ trụ
Nhận xét thấy, việc giải bài toán động học ngược vị trí bằng phương
pháp hình học tương đối dễ dàng so với sử dụng phương pháp đại số, tuy
nhiên trong một số bài toán thì phương pháp đại số tỏ ra hiệu quả hơn.
3.3.2 Động học ngược hướng: Động học cổ tay khớp cầu
Xét khớp cổ tay như Hình 3.8. Thông số DH của khớp cổ tay được xác
định theo. Khi đó ma trận chuyển đổi thuần nhất giữa các khớp cổ tay được
tính như sau:
c4 0 s4 0
s 0 c4 0 
H4   4
3
(3.55)
0 1 1 0
 
0 0 0 1

 c5 0  s5 0
s 0 c5 0 
H 54   5 (3.56)
0 1 0 0
 
0 0 0 1

 c6  s6 0 0
s c6 0 0 
H6   6
5
(3.57)
0 0 1 d6 
 
0 0 0 1

35
Khi đó ma trận chuyển đổi H 63 được xác định:

H 63  H 43 H 54 H 65
 R63 O63 
  (3.58)
0 1
 c4c5c6  s4 s6 c4c5 s6  s4c6 c4 s5 c4 s5 d 6 
s c c  c s  s4 c5 s6  c4c6  s4 s5  s4 s5 d 6 
= 4 5 6 4 6
 s5c6  s5 s6 c5 c5 d 6 
 
 0 0 0 1 

Bảng 3.4 Thông số DH khớp cổ tay


Khâu ai i di i
1 0 90 0 θ4
2 0 -90 0 θ5
3 0 0 d6 θ6

Hình 3.8 Khớp cổ tay


Xét bài toán động học ngược hướng của robot tọa độ trụ với cổ tay khớp
cầu như Hình 3.5. Bảng thông số DH cho robot tọa độ trụ với khớp cầu ở cổ
tay được xác định từ Bảng 3.2 và Bảng 3.4. Lưu ý rằng kết quả ở phương trình
(3.16) và (3.58) là khác nhau do kết cấu cổ tay được đặt ban đầu là khác nhau.
Ma trận quay R63 được tách ra từ ma trận thuần nhất:

 c4 c5 c6  s4 c6 c4 c5 s6  s4 c6 c4 s5 
R   s4 c5c6  c4 s6
3
6  s4 c5 s6  c4 c6  s4 s5  (3.59)
 s5c6  s4 s4 c5 

36
Ma trận R30 được xác định nhờ vào giải bài toán ngược vị trí, khi đó
được xác định nên các phần tử trong ma trận R63 cũng xác định. Vì vậy,
phương trình xác định ba thông số khớp cổ tay được cho như sau:
 c1r11  s1r21 c1r12  s1r22 c1r13  s1r23 
R  ( R ) R  
3
6
0 T
3  r31  r32 r33 

(3.60)
  s1r11  c1r21  s1r12  c1r22  s1r13  c1r23 

với R là ma trận quay xác định từ ma trận thuần nhất cho trước. Đồng nhất các
phần tử của ma trận R63 trong hai phương trình (3.59) và (3.60) sẽ xác định
được thông số khớp cổ tay.
c4 s5  c1r13  s1r23
s4 s5  r33
c5   s1r13  c1r23 (3.61)
s5 c6   s1r11  c1r21
s5 s6  s1r12  c1r22

Nếu cả hai phương trình đầu tiên trong (3.61) không đồng thời bằng 0 thì
thông số khớp 5 được xác định:

 5  a tan 2(  s1r13  c1r23 ,  1  ( s1r13  c1r23 ) 2 ) (3.62)

Tương ứng với giá trị dương được chọn trong phương trình (3.62), thông
số khớp còn lại được xác định như sau:
 4  a tan 2( c1r13  s1r23 , r33 )
(3.63)
 6  a tan 2(  s1r11  c1r21 , s1r12  c1r22 )

Các nghiệm khác xác định một cách tương tự. Nếu s5 = 0 thì trục z3 và
trục z5 trùng nhau. Đây là cấu hình kì dị, khi đó chỉ có giá trị 4  6 được xác
định, vì vậy, có thể chọn giá trị bất kỳ cho 4 và xác định lại 6 .

Bài toán động học ngược hoàn chỉnh của robot trụ 6 bậc tự do có cổ tay
khớp cầu, không có khoảng lệch vai có thể được phát biểu như sau.
Cho trước ma trận chuyển đổi thuần nhất, tọa độ tâm khớp cổ tay được
xác định là:
xc  Ox  d 6 r13
yc  Oy  d 6 r23 (3.64)
zc  Oz  d 6 r33

37
Tập hợp các thông số khớp được xác định bởi các phương trình:
1  a tan 2( xc , yc )
d 2  zc  d1
d3  xc 2  yc 2
(3.65)
 4  a tan 2( c1r13  s1r23 , r33 )
5  a tan 2(  s1r13  c1r23 ,  1  ( s1r13  c1r23 ) 2 )
 6  a tan 2(  s1r11  c1r21 , s1r12  c1r22 )

38
BÀI TẬP CHƯƠNG 3
3.1 Xét tay máy ba khâu phẳng như Hình 3.9. Xác định các ma trận
chuyển đổi thuần nhất theo qui tắc DH.

Hình 3.9 Tay máy ba khâu phẳng


3.2 Cho robot có sơ đồ bố trí như Hình 3.10. Giải bài toán động học thuận
theo qui tắc DH.

Hình 3.10 Mô hình tay máy RT


3.3 Cho robot có sơ đồ bố trí như Hình 3.11. Giải bài toán động học thuận
theo qui tắc DH.

Hình 3.11 Robot ba khâu phẳng


3.4 Cho robot ba khâu toàn khớp xoay có sơ đồ bố trí như Hình 3.12. Giải
bài toán động học thuận theo qui tắc DH.

39
Hình 3.12 Robot ba khâu toàn khớp xoay
3.5 Cho robot ba khâu tọa độ vuông góc có sơ đồ bố trí như Hình 3.13.
Giải bài toán động học thuận theo qui tắc DH.

Hình 3.13 Robot ba khâu tọa độ vuông góc


3.6 Cho robot SCARA có sơ đồ bố trí như Hình 3.14. Giải bài toán động
học thuận theo qui tắc DH.

Hình 3.14 Mô hình robot SCARA


3.7 Giải bài toán động học ngược vị trí của tay máy ba khâu tọa độ trụ và
tay máy ba khâu toàn khớp xoay theo phương pháp đại số.

40
Chương 4 ĐỘNG LỰC HỌC ROBOT

4.1 Nhiệm vụ và phương pháp phân tích động lực học


Với những mục đích thiết kế và điều khiển, cần thiết phải có một mô
hình toán học mô tả động lực học của hệ thống. Vì thế, trong chương này ta sẽ
xác lập phương trình chuyển động của tay máy dưới dạng phương trình vi
phân. Phương pháp áp dụng ở đây là xây dựng phương trình chuyển động của
cơ hệ dựa trên quan hệ năng lượng, xuất phát từ nguyên lý bảo toàn và chuyển
hóa năng lượng trên cơ sở xác lập quan hệ giữa động năng và thế năng của cơ
hệ tay máy, sau đó sử dụng phương trình vi phân của chuyển động trên cơ hệ
với các đại lượng tham gia vào phương trình gồm lực, quán tính và năng
lượng.
Việc nghiên cứu động lực học robot thường giải quyết hai nhiệm vụ
chính sau:
1. Xác định moment và lực trong quá trình chuyển động. Khi đó qui luật
biến đổi của biến khớp qi xem như đã biết.
Việc tính toán lực cũng như moment trong cơ cấu tay máy là nhiệm vụ
tất yếu trong việc lựa chọn công suất động cơ, tính toán kiểm tra độ bền, độ
cứng vững, đảm bảo độ tin cậy cho robot.
2. Xác định các sai số động, tức là sai số xuất hiện so với qui luật chuyển
động trong chương trình.
Có nhiều phương pháp nghiên cứu động lực học robot, nhưng phổ biến
nhất là phương pháp cơ học Lagrange, cụ thể là phương trình Lagrange-Euler.
Trong phạm vi nội dung của học phần này, chúng ta tìm hiểu nhiệm vụ
thứ nhất, từ đó tạo cơ sở cho việc lập trình và điều khiển robot.
4.2 Động lực học với phương trình Euler – Lagrange
Hàm Lagrange của một hệ thống năng lượng được định nghĩa:
LK P (4.1)
Trong đó: K tổng động năng của hệ.
P tổng thế năng của hệ.
K và P đều là những đại lượng vô hướng, nên có thể chọn bất kỳ hệ tọa
độ nào để giải bài toán đơn giản.

41
Xét một robot có n khâu ta có:
n
K   Ki (4.2)
i 1

n
P   Pi (4.3)
i 1

Trong đó, Ki và Pi là động năng và thế năng của khâu thứ i xét trong hệ
tọa độ đã chọn.
Phương trình Lagrange thiết lập cho một cơ hệ bảo toàn được xác định
như công thức (4.4).
d  L  L
   (4.4)
dt  q  q

Trong đó, q là vector biểu diễn tọa độ suy rộng của các khâu qi, τ là biểu
diễn các lực suy rộng của các khớp trên tay máy, L là hàm Lagrange.
Ví dụ 4.1 Động lực học hệ vật nặng - lò xo
Tìm mối quan hệ giữa lực và gia tốc của hệ thống vật nặng lò xo như
Hình 4.1, dựa vào phương trình Lagrange. Giả sử bỏ qua ma sát.

Hình 4.1 Hệ vật nặng - lò xo


Trục x là chiều di chuyển của xe, cũng là biến trong hệ thống. Khi vật chỉ
di chuyển tịnh tiến ta có:
1 1
K  mv 2  mx 2
2 2
1
P  kx 2
2
1 1
L  K  P  mx 2  kx 2
2 2

42
Đạo hàm hàm Lagrange ta có:
L
 mx
x
d
 mx   mx
dt
L
  kx
x
Vậy phương trình di chuyển của xe là:
F  mx  kx
Ví dụ 4.2 Động lực học tay máy hai khâu phẳng

Hình 4.2 Tay máy hai khâu phẳng


Để xác định phương trình động lực học của tay máy hai khâu phẳng như
Hình 4.2, chúng ta giả sử khối lựơng của các khâu đặt ở cuối mỗi khâu.
Các biến khớp là:
T
q  1  2  (4.5)

Và vector lực tổng thể là:


T
   1  2  (4.6)

với  1 , 2 là moment cung cấp bởi các cơ cấu chấp hành.

Thế năng và động năng


Với khâu 1, động năng và thế năng là:
1
K1  m1l1212 (4.7)
2
P1  m1 gl1 sin 1 (4.8)

43
Với khâu 2, ta có:
x2  l1 cos 1  l2 cos 1   2  (4.9)

y2  l1 sin 1  l2 sin 1   2  (4.10)

x2  l11 sin 1  l2 1  2 sin 1   2 


  (4.11)

y 2  l11 cos 1  l2 1  2 cos 1   2 


  (4.12)

Do vậy, khi bình phương vận tốc ta có:

v22  x22  y 22  l1212  l22 1  2  2l1l2 12  12 cos  2
2
    (4.13)

Động năng của khâu 2 là:


1 1 1 1
m2 v22  m2l1212  m2l22 1  2  m2l1l2 12  12 cos  2 (4.14)
2
K2 
2 2 2
  2
 
Thế năng của khâu 2 là:
P2  m2 gy2  m2 g l1 sin 1  l2 sin 1   2   (4.15)

Phương trình Lagrange


L  K  P  K1  K 2  P1  P2
1 1 1
  m1  m2  l1212  m1l1212  m2l1212
2 2 2
(4.16)
1
 m2l22 1  2  m2l1l2 12  12 cos  2
2

2
   
  m1  m2  gl1 sin 1  m2 gl2 sin 1   2 

Xác định các thành phần phương trình động lực học:
L
  m1  m2  l121  m2l22 1  2  m2l1l2 21  2 cos  2
    (4.17)
1

d L
  m1  m2  l121  m2l22 1  2  m2l1l2 21  2 cos  2
   
dt 1 (4.18)
 m l l 2    2 sin 
2 1 2  1 2 2  2

L
   m2  m2  gl1 cos 1  m2 gl2 cos 1   2  (4.19)
1

L
  m2l22 1  2  m2l1l21 cos  2
  (4.20)
 2

44
d L
 m2l22 1  2  m2l1l21 cos  2  m2l1l212 sin  2
  (4.21)
dt  2

L
  m2l1l2 12  12 sin  2  m2 gl2 cos 1   2 
  (4.22)
 2

Cuối cùng, theo phương trình Lagrange, động lực học của tay máy hai
khâu phẳng được đưa ra bởi hai phương trình vi phân phi tuyến sau:

 1   m1  m2  l12  m2l22  2m2l1l2 cos  2  1   m2l22  m2l1l2 cos  2  2
(4.23)
 m2l1l2 212  22 sin  2   m1  m2  gl1 cos 1  m2 gl2 cos 1   2 
 
 2   m2l22  m2l1l2 cos  2  1  m2l222
(4.24)
 m2l1l212 sin 2  m2 gl2 cos 1   2 

Phương trình động lực học của tay máy hai khâu phẳng có thể viết dưới
dạng ma trận như sau:

1   m2l1l2 212  22 sin  2 


 
M q     
 m2l1l212 sin  2
 2    (4.25)
 m  m2  gl1 cos 1  m2 gl2 cos 1   2    1 
 1  
 m 2 gl 2 cos 1   2    2 

 m  m2  l12  m2l22  2m2l1l2 cos  2 m2l22  m2l1l2 cos  2 


M q   1  (4.26)
 m2l22  m2l1l2 cos  2 m2l22 

Động lực học của robot dưới dạng tiêu chuẩn có thể viết như sau:
M  q  q  V  q, q   G  q    (4.27)

với M  q  là ma trận quán tính (ma trận vuông đối xứng), V  q, q  là vector
hướng tâm và G  q  là vector trọng lực.

Khi đó phương trình động lực học của tay máy hai khâu phẳng có thể
viết lại như sau:

 M 11 M 12  1  V1   G1   1 
M     (4.28)
 21 M 22  2  V2  G2   2 

45
Trong đó:
M 11   m1  m2  l12  m2l22  2m2l1l2 cos  2
M 12  m2l22  m2l1l2 cos  2
(4.29)
M 21  m2l22  m2l1l2 cos  2
M 22  m2l22

V1   m2l1l2 212  22 sin  2


  (4.30)
V2  m2l1l212 sin  2

G1   m1  m2  gl1 cos 1  m2 gl2 cos 1   2 


(4.31)
G2  m2 gl2 cos 1   2 

4.3 Cấu trúc và tính chất phương trình động lực học
Trong phần này, chúng ta sẽ xem xét chi tiết cấu trúc và tính chất của
phương trình động lực học cánh tay robot. Cấu trúc của phương trình động lực
học sẽ cho chúng ta biết dạng của quy luật điều khiển robot. Bộ điều khiển sẽ
đơn giản và hiệu quả nếu chúng ta biết các tính chất của cánh tay robot công
nghiệp. Trong thực tế, cánh tay robot công nghiệp luôn bị tác động bởi ma sát
và các đối tượng nhiễu. Vì vậy mô hình cánh tay máy tổng quát được xác định
dưới dạng động lực học như sau:
M  q  q  V  q, q   F  q   G  q    d   (4.32)

với q là vector các biến khớp và τ là vector lực tác động . M(q) là ma trận quán
tính (ma trận vuông, đối xứng). V  q, q  là vector hướng tâm và G(q) là vector
trọng lực. Nhiễu tác động là τd, đây là một biến phi tuyến. Ngoài ra, có thêm
ma sát được tính như công thức (4.33).
F  q   Fv q  Fd (4.33)

với Fv là ma trận hệ số ma sát nhớt và Fd là ma sát động.


Trong một số tài liệu động lực học cánh tay robot được viết như sau:
M  q  q  N  q, q    d   (4.34)

với N  q, q  là thành phần biểu diễn tất cả giá trị phi tuyến, được tính như công
thức (4.35).
N  q, q   V  q, q   F  q   G  q  (4.35)

46
Trong phần trước, chúng ta đã xác định động lực học robot theo thời
gian với biến q(t).
M  q  q  V  q, q   Fv q  Fd  G  q    d   (4.36)

hoặc:
M  q  q  N  q, q    d   (4.37)

với thành phần phi tuyến là:


N  q, q   V  q, q   Fv q  Fd  G  q  (4.38)

Chúng ta gọi đây là phương trình động lực học cánh tay máy trong
không gian khớp hoặc đơn giản là động lực học trong không gian khớp.
4.4 Ứng dụng phương trình động lực học để mô hình hóa robot
Sau khi thực hiện tính toán bài toán động lực học robot, chúng ta có thể
sử dụng trực tiếp các mô hình toán thu được để xây dựng đối tượng trong việc
mô phỏng và đưa ra các ý tưởng trong vấn đề điều khiển.
Tất nhiên, việc xác định các thông số của robot là rất khó khăn, vì vậy
chúng ta chỉ xây dựng đối tượng robot có tính chất mô phỏng để thực hiện các
giải thuật điều khiển. Vì trong thực tế, các thông số của mô hình động lực học
tay máy chịu ảnh hưởng của rất nhiều các yếu tố như: độ chính xác trong gia
công cơ khí, ảnh hưởng của các tác nhân có tính chất như nhiễu, các sai số mô
hình khi thực hiện tính toán...
Trong mục này, bằng các phần mềm hỗ trợ mô phỏng MATLAB, chúng
ta thực hiện mô hình hóa các robot từ các phương trình động học và động lực
học. Từ cơ sở này có thể thực hiện thiết kế và chế tạo các robot thực thi các
mục tiêu đề ra.
Do tính chất phức tạp trong điều khiển, vấn đề của những nhà nghiên cứu
là làm sao có thể tìm giải thuật điều khiển cho robot khi mà tất cả các khâu từ
thiết kế đến thi công đều gặp nhiều khó khăn. Một công cụ rất hữu hiệu được
đưa ra là mô hình toán của robot, nền tảng của mô hình toán là bài toán động
lực học được xét đến. Mức độ chính xác, độ chênh lệch sai số mô hình phụ
thuộc nhiều vào quá trình tính toán động lực học, trong đó không loại trừ các
khả năng ảnh hưởng của nhiễu và các vấn đề khác liên quan đến động lực học
cơ hệ.
Chúng ta xét lại Ví dụ 4.2, từ bài toán động lực học xây dựng cho tay
máy hai khâu phẳng, cấu hình RR thu được mô hình toán của đối tượng tay

47
máy này. Xét trên lĩnh vực điều khiển, hệ robot là các hệ phi tuyến, chính vì
vậy việc điều khiển và sử dụng các giải thuật phải tuân theo các nguyên tắc
điều khiển hệ phi tuyến.
Xây dựng mô hình tay máy hai khâu phẳng trong MATLAB/Simulink:

Hình 4.3 Mô hình hóa từ phương trình động lực học


Để mô phỏng thành công, chúng ta cần chọn các thông số của robot thích
hợp. Các thông số này có thể thu thập số liệu hay lựa chọn theo các tài liệu đã
được công bố.

Hình 4.4 Mô hình hóa tay máy hai khâu phẳng trên MATLAB/Simulink
Trong mô hình này, gồm có hai ngõ vào là moment động cơ của hai
khớp, ngõ ra là hai góc của hai khớp. Bài toán đặt ra làm sao điều khiển hai
khớp của động cơ bám với tín hiệu góc đã đặt trước.

48
BÀI TẬP CHƯƠNG 4
4.1 Dựa trên phương trình Euler – Lagrange hãy xây dựng phương trình
động lực học cho tay máy một bậc tự do như Hình 4.5.

Hình 4.5 Mô hình tay máy một bậc tự do


4.2 Dựa trên phương trình Euler – Lagrange hãy xây dựng phương trình
động lực học cho tay máy hai khâu RT như Hình 4.6.

Hình 4.6 Tay máy hai khâu RT


4.3 Từ phương trình động lực học của mô hình tay máy một bậc tự do đã
xây dựng ở bài tập 4.1. Hãy mô hình hóa mô hình tay máy một bậc tự
do bằng công cụ MATLAB/Simulink.

49
Chương 5 MÔ PHỎNG VÀ ĐIỀU KHIỂN ROBOT

5.1 Kỹ thuật mô phỏng và điều khiển robot


Mô phỏng là kỹ thuật hiện đại, được áp dụng trong nhiều lĩnh vực nghiên
cứu và sản xuất.
Khi nghiên cứu về điều khiển robot, ta có thể thực hiện điều khiển trực
tiếp robot hoặc điều khiển mô phỏng. Điều khiển mô phỏng là dùng các mô
hình tính toán động học và động lực học của robot kết hợp với các phương
pháp đồ họa trên máy tính để mô tả về kết cấu và hoạt động của cánh tay
robot.
Nghiên cứu về mô phỏng hoạt động của robot trên máy tính giúp cho các
nhà thiết kế nhanh chóng lựa chọn được các phương án thiết kế robot, có thể
kiểm tra khả năng hoạt động của robot trên máy tính, kiểm tra sự phối hợp của
robot với các thiết bị khác trong dây chuyền sản xuất. Điều này có ý nghĩa
quan trọng trong quá trình thiết kế, chế tạo robot mới hoặc bố trí dây chuyền
sản xuất.
Qua mô phỏng người thiết kế có thể đánh giá tương đối đầy đủ khả năng
làm việc của phương án thiết kế mà không cần chế tạo thử nghiệm mô hình
robot. Nó cũng xem như là phương tiện đối thoại, hiệu chỉnh thiết kế theo yêu
cầu đa dạng của người sử dụng.
Phương pháp lập trình mô phỏng cũng giúp người thiết kế chọn được
quỹ đạo công nghệ hợp lý của robot trong quá trình làm việc với một đối
tượng cụ thể hay phối hợp với các thiết bị khác trong một công đoạn sản xuất
được tự động hóa.
Hiện nay có nhiều phần mềm công nghiệp và các phần mềm nghiên cứu
khác nhau để mô phỏng điều khiển robot, phạm vi ứng dụng và giá thành của
chúng cũng khác nhau. Trong phạm vi bài giảng này, chúng ta sẽ nghiên cứu
ứng dụng mô phỏng và điều khiển robot bằng công cụ Simmechanics.
5.2 Giới thiệu công cụ Simmechanics
Ở các hệ thống cơ khí phức tạp thường tồn tại các ràng buộc cơ khí hoặc
các khâu dẫn động trong hệ thống thì việc sử dụng phương pháp Newton -
Euler dựa trên việc phân tích lực và moment đặt lên các phần tử của hệ thống
hoặc phương pháp Euler - Lagrange dựa trên cân bằng năng lượng trong hệ
thống để xây dựng hệ phương trình toán học mô tả hệ thống gặp nhiều khó
khăn mà công cụ Simmechanics lại có thể đáp ứng được các yêu cầu của vấn

50
đề này. Simmechanics là phần mềm mô hình hoá dạng sơ đồ khối cho thiết kế
và mô phỏng kỹ thuật các phần chính của các máy cơ khí nói riêng hay các hệ
thống máy móc nói chung.
Các khối trong thư viện của Simmechanics thường được sử dụng trong
mô phỏng và điều khiển robot được trình bày trong Bảng 5.1.
Bảng 5.1 Một số khối hay sử dụng trong thư viện Simmechanics
Tên Mô tả Mục đích
Khối Biểu diễn một vật thể cứng tùy ý.
Body
Khối Biểu diễn một điểm cố định trên nền hoặc giá đỡ,
Ground nơi đặt gốc của hệ tọa độ World.

Khối Khối Prismatic biểu diễn một bậc tự do tịnh tiến


Prismatis đơn dọc một trục được xác định giữa hai Body.

Khối Khối Revolute miêu tả một bậc tự do quay đơn


Revolute quanh một trục xác định giữa hai Body.

Khối Tác dụng lực (chuyển động tịnh tiến) hoặc moment
Body Actuator (chuyển động quay) vào một Body.

Khối Tác động lực (chuyển động tịnh tiến), moment


Joint Actuator (chuyển động quay) hoặc tạo chuyển động cho một
khớp tịnh tiến hoặc xoay.

Khối Đo sự chuyển động của Body. Khối Body Sensor


Body Senser dò tìm vị trí, vận tốc và gia tốc của Body đã được
biểu diễn bởi khối Body.

Khối Đo chuyển động và lực/moment của một khớp tịnh


Joint Sensor tiến hoặc xoay.

Công cụ Simmechanics giúp mô hình hoá và mô phỏng các hệ thống cơ


khí cùng với các thông số để khai báo từng khâu với đặc tính khối lượng, các

51
vị trí chuyển động của chúng, các ràng buộc động học, các hệ trục tọa độ, thiết
lập các khối tạo chuyển động với điều kiện ban đầu của chúng và đo chuyển
động của các khâu. Thực chất, Simmechanics là một phần của mô hình hoá
các vấn đề vật lý với công cụ MATLAB/Simulink, hoàn thiện việc mô hình
hoá và thiết kế hệ thống trên cơ sở những nguyên tắc vật lý cơ bản.
Simmechanics có thư viện cung cấp các khối thay thế các thành phần có tính
chất vật lý và các yếu tố liên quan trực tiếp.
Simmechanics có 3 ứng dụng chính:
 Mô hình hoá hệ thống cơ khí sử dụng các khối chuẩn trong thư
viện của Simmechanics.
 Khảo sát hoạt động của cơ cấu cơ khí bằng 4 phương pháp mà
Simmechanics cung cấp, bao gồm động học thuận (Forward
Kinematic); động học ngược (Inverse Kinematic); phân tích động
học để tìm lực và moment; phân tích và tìm trạng thái cân bằng
của hệ thống.
 Mô phỏng hệ thống cơ khí với Simmechanics.
Để mô phỏng và điều khiển robot đầu tiên cần thiết kế mô hình 3D của
robot trên phần mềm 3D (công cụ Simmechanics hỗ trợ ba phần mềm:
Inventor, Solidwork và Creo), trong phạm vi bài giảng này sử dụng phần mềm
Inventor 2019. Sau đó, tiến hành xuất mô hình 3D của robot thành các khối
bên MATLAB/Simulink bằng công cụ Simmechanics. Tiếp theo, tiến hành đặt
thêm các khối tín hiệu tham khảo (thông số khớp của robot), bộ điều khiển, cơ
cấu chấp hành và cảm biến cho robot để tiến hành mô phỏng điều khiển. Để có
được thông số khớp của robot cần phải giải bài toán động học ngược robot.
5.3 Xây dựng mô hình 3D cho robot sử dụng phần mềm Inventor
Autodesk Inventor là phần mềm xây dựng mô hình 3D, thiết kế, hình mẫu
và kiểm tra ý tưởng các sản phẩm. Inventor tạo ra các nguyên mẫu mô phỏng
chuẩn xác khối lượng, áp lực, độ ma sát, tải trọng,…của các đối tượng sản
phẩm trong môi trường 3D. Các công cụ mô phỏng, phân tích được tích hợp
trong Inventor cho phép người dùng thiết kế từ khuôn đúc cơ bản đến nâng
cao như thiết kế chi tiết máy, trực quan hóa sản phẩm. Inventor còn được tích
hợp CAD và các công cụ giao tiếp thiết kế nhằm nâng cao năng suất làm việc
của CAD và giảm thiếu phát sinh lỗi, tiết kiệm thời gian.
Trong phần này robot được chọn để mô phỏng và điều khiển là robot
SCARA, robot này gồm có hai khớp xoay và một khớp tịnh tiến. Để xây dựng
được mô hình robot SCARA trên phần mềm Inventor trước tiên cần có các

52
thông số cơ bản của robot, đối với robot này hai thông số quan trọng là chiều
dài khâu thứ nhất và khâu thứ hai được chọn lần lượt là 0.5m và 0.4m, các
phần còn lại thiết kế sao cho tương thích với robot.
Tiến hành thiết kế đế cho robot và gốc tọa độ được đặt theo qui tắc DH
như Hình 5.1. Kích thước của đế mang tính tương đối sao cho phù hợp với
khâu thứ nhất của robot. Đế của robot hay còn được gọi là khâu (link) 0 của
robot SCARA.

Hình 5.1 Đế của robot SCARA


Khâu (link) thứ nhất của robot SCARA có chiều dài 0.5m, với hệ tọa độ
Oxy được đặt trước như Hình 5.2. Các khớp xoay được thiết kế sao cho phù
hợp để lắp ráp với đế và khâu thứ hai.

Hình 5.2 Khâu thứ nhất của robot SCARA


Khâu (link) thứ hai của robot có chiều dài 0.4m, với hệ tọa độ Oxy được
đặt trước như Hình 5.3. Tương tự như khâu thứ nhất khớp xoay và khớp tịnh
tiến của khâu thứ hai cũng phải thiết kế sao cho phù hợp với khâu thứ nhất và
khâu thứ ba

53
Hình 5.3 Khâu thứ hai của robot SCARA
Trong Hình 5.4 là khâu thứ ba của robot SCARA,với hai hệ tọa độ là của
khâu tịnh tiến và của khâu chấp hành đầu cuối. Khâu thứ ba của robot là khâu
với chuyển động tịnh tiến dọc theo trục z, khâu thứ ba được gắn thêm khâu
chấp hành đầu cuối là tay kẹp để gắp vật.

Hình 5.4 Khâu thứ ba của robot SCARA


Robot SCARA lắp ráp hoàn chỉnh trên phần mềm Inventor với các hệ tọa
độ đặt theo qui tắc DH được trình bày như Hình 5.5. Từ mô hình 3D hoàn
chỉnh của robot SCARA sẽ được xuất thành các khối trong phần mềm
MATLAB/Simulink dựa trên công cụ Simmechanics, ngoài ra còn có khối
khác thêm vào để được mô hình điều khiển hoàn chỉnh. Mô hình điều khiển
robot SCARA hoàn chỉnh trên phần mềm MATLAB/Simulink được trình bày
như Hình 5.6.

54
Hình 5.5 Robot SCARA hoàn chỉnh trên Inventor

Hình 5.6 Mô hình robot SCARA trên MATLAB/Simulink


5.4 Lập trình mô phỏng và điều khiển chuyển động mỗi khớp
Như đã trình bày ở các phần trên, để mô phỏng điều khiển robot SCARA
chuyển động theo một quỹ đạo đặt trước ta cần phải giải bài toán động học
ngược của robot này để biết được các góc khớp của robot khi thực hiện quỹ
đạo đặt. Trong phần này robot sẽ thực hiện quỹ đạo theo chữ CTUT như Hình
5.7, để thực hiện được quỹ đạo này ta chia quỹ đạo thành 24 điểm và giải bài
toán động học ngược cho từng điểm để mô phỏng điều khiển robot thực hiện
quỹ đạo trên.

55
Hình 5.7 Quỹ đạo hoạt động của robot SCARA
Để đơn giản hóa bài toán điều khiển robot SCARA thực hiện theo quỹ
đạo chữ CTUT ta có thể xem robot này như tay máy hai khâu phẳng hoạt động
trong không gian Oxy, như vậy quỹ đạo chữ CTUT sẽ thực hiện trong không
gian Oxy. Bài toán động học ngược của tay máy hai khâu phẳng đã được trình
bày cụ thể ở Chương 3. Dựa vào kết quả tính toán động học ngược và tọa độ
của các điểm ta có được kết quả của các góc khớp khi thực hiện quỹ đạo chữ
CTUT được trình bày như Bảng 5.2.
Để có thể mô phỏng điều khiển robot SCARA thực hiện quỹ đạo trên,
ngoài việc thực hiện tính toán các góc của các khớp còn phải điều chỉnh bộ
điều khiển PID cho hợp lý. Kết quả việc mô phỏng điều khiển robot SCARA
được hiện theo quỹ đạo chữ CTUT được trình bày như Hình 5.8.

Hình 5.8 Kết quả thực hiện quỹ đạo chữ CTUT
56
Đáp ứng ngõ ra của các khớp xoay và khớp tịnh tiến của robot SCARA
được trình bày như Hình 5.9 và Hình 5.10 và Hình 5.11.

Hình 5.9 Đáp ứng của góc thứ nhất

Hình 5.10 Đáp ứng của góc thứ hai

Hình 5.11 Đáp ứng của khớp tịnh tiến

57
Bảng 5.2 Thông số của robot SCARA khi giải bài toán động học ngược

Step
Điểm Xc Yc Zc
time
1 0 0.25 0.3 −0.2 −1.418 130.072 0.2
2 10 0.15 0.3 −0.2 10.573 138.052 0.2
3 20 0.15 0.5 −0.2 27.282 110.106 0.2
4 40 0.25 0.5 −0.2 19.491 104.108 0.2
5 50 0.25 0.5 −0.19 19.491 104.108 0.19
6 56 0.3 0.5 −0.19 16.550 100.079 0.19
7 64 0.3 0.5 −0.2 16.550 100.079 0.2
8 70 0.35 0.5 −0.2 14.278 95.379 0.2
9 80 0.35 0.3 −0.2 −8.387 119.588 0.2
10 110 0.35 0.5 −0.2 14.278 95.379 0.2
11 140 0.4 0.5 −0.2 12.680 90.000 0.2
12 150 0.4 0.5 −0.19 12.680 90.000 0.19
13 156 0.45 0.5 −0.19 11.767 83.901 0.19
14 164 0.45 0.5 −0.2 11.767 83.901 0.2
15 170 0.45 0.3 −0.2 −11.299 107.083 0.2
16 190 0.55 0.3 −0.2 −11.022 92.508 0.2
17 200 0.55 0.5 −0.2 12.086 69.130 0.2
18 220 0.55 0.5 −0.19 12.086 69.130 0.19
19 226 0.6 0.5 −0.19 13.476 60.000 0.19
20 234 0.6 0.5 -0.2 13.476 60.000 0.2
21 240 0.65 0.5 -0.2 15.974 48.986 0.2
22 250 0.7 0.5 -0.2 20.302 34.412 0.2
23 260 0.65 0.5 -0.2 15.974 48.986 0.2
24 270 0.65 0.3 -0.2 -7.915 75.152 0.2

Trong đó các điểm 5, 6, 12, 13, 18 và 19 thể hiện sự chuyển động của
khớp tịnh tiến, không ảnh hưởng đến quỹ đạo thực hiện mô phỏng điều khiển
theo chữ CTUT của robot SCARA.

58
BÀI TẬP CHƯƠNG 5
5.1 Thiết kế mô hình 3D của robot toàn khớp xoay, tiếp theo tiến hành
xuất mô hình robot này sang MATLAB/Simulink dựa trên công cụ
Simmechanics, sau đó điều khiển robot toàn khớp xoay thực hiện quỹ
đạo đặt trước.
5.2 Thiết kế mô hình 3D của robot tọa độ cầu, tiếp theo tiến hành xuất mô
hình robot này sang MATLAB/Simulink dựa trên công cụ
Simmechanics, sau đó điều khiển robot tọa độ cầu thực hiện quỹ đạo
đặt trước.
5.3 Thiết kế mô hình 3D của robot tọa độ trụ, tiếp theo tiến hành xuất mô
hình robot này sang MATLAB/Simulink dựa trên công cụ
Simmechanics, sau đó điều khiển robot tọa độ trụ thực hiện quỹ đạo
đặt trước.
5.4 Thiết kế mô hình 3D của robot SCARA, tiếp theo tiến hành xuất mô
hình robot này sang MATLAB/Simulink dựa trên công cụ
Simmechanics, sau đó điều khiển robot SCARA thực hiện quỹ đạo đặt
trước.
5.5 Thiết kế mô hình 3D của robot tọa độ vuông góc, tiếp theo tiến hành
xuất mô hình robot này sang MATLAB/Simulink dựa trên công cụ
Simmechanics, sau đó điều khiển robot tọa độ vuông góc thực hiện
quỹ đạo đặt trước.
5.6 Thiết kế mô hình 3D của robot song song, tiếp theo tiến hành xuất mô
hình robot này sang MATLAB/Simulink dựa trên công cụ
Simmechanics, sau đó điều khiển robot song song thực hiện quỹ đạo
đặt trước.

59
TÀI LIỆU THAM KHẢO

[1] Ngô Quang Hiếu, Kỹ thuật robot, NXB Đại học Cần Thơ, 2016.

[2] Nguyễn Trường Thịnh, Kỹ thuật robot, NXB Đại học Quốc gia, 2014.

[3] Phạm Đăng Phước, Robot công nghiệp, Đại học Đà Nẵng, 2007.

[4] Mark W. Spong, Robot modeling and control, Wiley, 2005.

[5] Frank L. Lewis, Robot manipulator control theory and practice, 2004.

60
PHỤ LỤC

MỘT SỐ BIỂU THỨC LƯỢNG GIÁC THƯỜNG SỬ DỤNG

1. Công thức lượng giác cơ bản


sin       sin  cos       cos 

sin      sin  cos       cos 

   
sin      cos  cos       sin 
2  2 

   
sin      cos  cos      sin 
2  2 
2. Công thức cộng
sin  a  b   sin a.cos b  cos a.sin b
cos  a  b   cos a.cos b  sin a.sin b
3. Công thức tính atan2(x, y)
arctan  y / x  , x0

arctan  y / x    , x  0, y  0
arctan y / x   ,
a tan 2  x, y      x  0, y  0
 / 2, x  0, y  0
 / 2, x  0, y  0

Undefined , x  0, y  0

4. Định lí Cosin
Trong tam giác ABC bất kì với BC = a, CA = b và AB = c ta có:
Công thức:

a 2  b 2  c 2  2bc cos A
b2  a 2  c 2  2ac cos B
c 2  a 2  b 2  2ab cos C

61

You might also like