Xây dựng chương trình tính toán động học, động lực học cho tay máy nối tiếp theo phương pháp số. Dựa trên các thuật toán xây dựng phần mềm trên matlab sử dụng Guide Giới thiệu về Simmechanics, chuyển mô hình CAD sang mô hình Simmechanics
Trang 1MỤC LỤC 1
DANH MỤC CÁC TỪ VIẾT TẮT 3
DANH MỤC HÌNH ẢNH 4
MỞ ĐẦU 6
CHƯƠNG 1: TỔNG QUAN VỀ TAY MÁY 8
1 Tay máy 8
2 Kết cấu của tay máy 8
3 Phân loại tay máy 9
3.1 Tay máy kiểu tọa độ đề các: 9
3.2 Tay máy kiểu tọa độ trụ 9
3.3 Tay máy kiểu tọa độ cầu 10
3.4 SCARA 10
3.5 Tay máy kiểu tay người 10
CHƯƠNG 2: ĐỘNG HỌC VÀ ĐỘNG LỰC HỌC TAY MÁY 12
I ĐỘNG HỌC TAY MÁY 12
1 Bài toán động học thuận 12
2 Bài toán động học ngược 19
II.ĐỘNG LỰC HỌC TAY MÁY 29
1 Động lực học thuận 31
2 Động lực học ngược 34
CHƯƠNG 3: LẬP TRÌNH TÍNH TOÁN ĐỘNG HỌC, ĐỘNG LỰC HỌC 36
I XÂY DỰNG GIAO DIỆN CHƯƠNG TRÌNH 36
1 Tổng quan về lập trình GUI trong Matlab 36
2 Xây dựng giao diện chương trình 42
II.LẬP TRÌNH TÍNH TOÁN ĐỘNG HỌC, ĐỘNG LỰC HỌC 45
CHƯƠNG 4: MÔ HÌNH HÓA VÀ MÔ PHỎNG ROBOT 46
I SIMULINK 46
II.GÓI CÔNG CỤ SIMMECHANICS 51
1 Thư viện Bodies 52
Trang 22 Thư viện Constraints & Drivers 58
3 Thư viện Force Elements 60
4 Thư viện Joints 60
5 Thư viện Sensors & Actuators 62
6 Thư viện Utilities 62
III MÔ HÌNH HÓA, MÔ PHỎNG ROBOT 63
1 Liên kết SimMechanics Link với Solidworks 63
2 Mô hình hóa robot dựa vào Solidworks 64
3 Mô phỏng robot 66
CHƯƠNG 5: KẾT QUẢ THỬ NGHIỆM, ĐÁNH GIÁ, KẾT LUẬN 67
1 Kết quả thử nghiệm, đánh giá 67
2 Kết luận 71
TÀI LIỆU THAM KHẢO 72
PHỤ LỤC………73
Trang 3DANH MỤC CÁC TỪ VIẾT TẮT
DH Denavit Hartenberg
GUI Graphical User Interface
GUIDE Graphical User Interface Development Environment
CS Coordinate system
CG Center of gravity
Trang 4DANH MỤC HÌNH Ả
Hình 1.1: Tay máy kiểu tọa độ đề các 8
Hình 1.2:Tay máy kiểu tọa độ trụ 8
Hình 1.3: Tay máy kiểu tọa độ cầu 9
Hình 1.4: Tay máy kiểu SCARA 9
Hình 1.5: Tay máy kiểu tay người 9
Y Hình 2.1 Bài toán động học thuận, động học ngược 11
Hình 2.2 12
Hình 2.3: a,b,c 13
Hình 2.5: Hình biểu diễn khớp và khâu 14
Hình 2.4 a,b,c 14
Hình 2.6: Sơ đồ thiết lập hệ tọa độ các khâu 15
Hình 2.7: Tay máy n khâu 17
Hình 2.8: Tay máy 4 khâu 19
Hình 2.9: Sơ đồ thuật toán xác định véc tơ tọa độ suy rộng 23
Hình 2.10: Sơ đồ thuật toán giải bài toán động học ngược 25
Hình 2.11 26
Hình 2.12 27
Hình 2.13: Bài toán động lực học thuận, động lực học ngược trong không gian khớp 29
Hình 2.14: Bài toán động lực học thuận, động lực học ngược trong không gian thao tác 29
Hình 2.15: Sơ đồ thuật toán giải bài toán động lực học thuận 32
Hình 2.16: Sơ đồ thuật toán giải bài toán động lực học ngược 34
Hình 3.1: Hộp thoại GUIDE Quick Start 36
Hình 3.2: Giao diện khi tạo GUI mới 37
Hình 3.3: Cửa sổ Inspector của một Push Button 39
Hình 3.4: Gọi các hàm của các đối tượng 41
Hình 3.5: Giao diện chính của chương trình 42
Hình 3.6: Tính toán động học thuận 42
Hình 3.7: Tính toán động học ngược 43
Hình 3.8: Tính toán động lực học thuận 43
Hình 3.9: Tính toán động học ngược 44
Hình 3.10: Giao diện phục vụ mô phỏng 44
Hình 4.1: Thư viện simulink 45
Trang 5Hình 4.2: Bảng thiết lập tham số của khối From File 46
Hình 4.3: Bảng thiết lập tham số của khối XY-Graph 46
Hình 4.4: Bảng thiết lập tham số của khối Mux 47
Hình 4.5: Bảng thiết lập tham số của khối Demux 48
Hình 4.6: Môi trường hiển thị của khối Scope 48
Hình 4.7: Bảng thiết lập tham số của khối Scope 49
Hình 4.8: Khối Embedded MATLAB Function 49
Hình 4.9: Thư viện SimMechanics 51
Hình 4.10: Các thành phần trong thư viện Bodies 51
Hình 4.11: Bảng tham số của khối Body 52
Hình 4.12: Bảng tham số Position của khối Body 53
Hình 4.13: Bảng tham số Orientation của khối Body 54
Hình 4.14: Thiết lập Visualization của khối Body 55
Hình 4.15: Bảng tham số của khối Ground 56
Hình 4.17: Khối thư viện Constraints & Drivers 57
Hình 4.24: Khối thư viện Force Elements 59
Hình 4.25: Khối thư viện Joints 60
Hình 4.32: Add-Ins của Solidwork 63
Hình 4.33: Chuyển file CAD assembly thành Physical Modeling XML file 63
Hình 4.34: Tạo mô hình SimMechanics từ file Physical Modeling XML 64
Hình 4.35: Hộp thoại Import Physical Modeling XML 64
Trang 6MỞ ĐẦU
Trong sự nghiệp công nghiệp hóa và hiện đại hóa đất nước, khoa học vàcông nghệ đóng vai trò hết sức quan trọng, đặc biệt là lĩnh vực Cơ điện tử và tựđộng hóa các hệ thống sản xuất Cùng với sự hội nhập, phát triển của khoa học
và công nghệ nước nhà, việc ứng dụng các loại robot nhằm mục đích nâng caonăng suất, giải phóng sức lao động của con người ngày càng được quan tâm vàứng dụng rộng rãi Đi đôi với nó là nhu cầu đào tạo nguồn nhân lực chất lượngcao, phục vụ cho công cuộc công nghiệp hóa và hiện đại hóa đất nước Chính vìthế, phần lớn các trường đại học hiện nay đã và đang nghiên cứu, mở rộng việcđào tạo nhân lực ngành Cơ điện tử, để có thể khai thác, sử dụng, vận hành các
hệ thống robot và cao hơn nữa đó là nghiên cứu thiết kế các hệ thống robotmade in Việt Nam thay thế cho các hệ thống tự động nhập khẩu đắt tiền
Từ thập niên 90 trở lại đây, các nghiên cứu ứng dụng robot công nghiệpngày càng nhiều, trong đó phải kể đến robot có cấu trúc nối tiếp Để có thể xâydựng bài toán điều khiển robot trước hết chúng ta cần phải giải bài toán độnghọc và động lực học của robot Kết quả của các bài toán này là những tham sốđầu vào quan trọng cho tất cả các nghiên cứu tiếp theo về robot Hiện tại, việcgiải lớp bài toán này phần lớn được thực hiện thủ công bằng tay đòi hỏi rấtnhiều kỹ năng tính toán, bên cạnh đó hiệu quả của việc tính toán theo phươngpháp này thấp, khả năng xảy ra sai sót rất lớn do khối lượng tính toán rất lớn,các phép toán ma trận khá phức tạp, thường chỉ giải quyết được trong nhữngtrường hợp đơn lẻ, cụ thể Ở bộ môn Cơ học ứng dụng, Viện Cơ khí, Đại họcBách khoa Hà Nội cũng đã xây dựng chương trình ROBOTDYN phục vụ choviệc tự động hóa tính toán các bài toán trên Tuy nhiên, đây là sản phẩm đặc thùcủa họ, và việc tiếp cận khai thác phần mềm này là rất khó khăn, nếu không nói
là không thể đối với sinh viên
Với mục đích tạo ra công cụ tự động hóa tính toán động học, động lực học,
và mô phỏng động học robot thuận tiện cho quá trình học tập, nghiên cứu củasinh viên, cũng như quá trình giảng dạy của giáo viên, em chọn đề tài mang tên:
Trang 7“Xây dựng chương trình tính toán động học, động lực học hệ tay máy hở tổng quát”
Do thời gian không cho phép, nên phạm vi của đồ án là các hệ tay máy hởdưới 5 bậc tự do đã xác định trước cấu hình theo phương pháp Denavit-Hartenberg, và đồ án sẽ tập trung giải quyết các nội dung chủ yếu sau:
- Tìm hiểu phương pháp tính toán động học, động lực học tay máy phục vụcho việc xây dựng chương trình
- Xây dựng chương trình tính toán động học, động lực học, mô phỏng độnghọc tay máy
- Tìm hiểu phương pháp, cách thức mô hình hóa tay máy dựa vào gói công
cụ SimMechanics của Matlab và phần mềm đồ họa Solidworks
Trong quá trình thực hiện đồ án này, do kiến thức về robot có hạn, thời gian
và tài liệu nghiên cứu còn ít nên đồ án của em vẫn còn nhiều thiếu sót, vì vậy rấtmong được sự góp ý của thầy cô và các bạn để đồ án được hoàn thiện hơn
Em xin chân thành cảm ơn thầy Nguyễn Hoàng Long, thầy Nguyễn HữuPhúc và toàn thể các thầy cô trong bộ môn Robot đặc biệt & Cơ điện tử đã giúp
em hoàn thành đồ án này
Hà Nội, ngày…tháng…năm 2012
Sinh viên thực hiện
Trang 8CHƯƠNG 1: TỔNG QUAN VỀ TAY MÁY
1 Tay máy
Tay máy là phần cơ sở, quyết định khả năng làm việc của Robot côngnghiệp Đó là cơ cấu cơ khí gồm các khâu, khớp, chúng hình thành cánh tay đểtạo ra các chuyển động cơ bản, cổ tay tạo nên sự khéo léo, linh hoạt và bàn tay
để trực tiếp hoàn thành các thao tác trên đối tượng
2 Kết cấu của tay máy
Ý tưởng ban đầu của việc thiết kế và chế tạo tay máy là phỏng theo các cấutạo và chức năng của tay người.Về sau, đây không còn là điều kiện bắt buộcnữa Tay máy hiện nay rất đa dạng và nhiều loại với dáng vẻ khác rất xa do vớitay người Tuy nhiên trong kỹ thuật robot người ta vẫn dùng các thuật ngữ quenthuộc, như vai (Shoulder), cánh tay (Arm), cổ tay (Wrist), bàn tay (Hand) và cáckhớp (Ariculation), … để chỉ tay máy và các bộ phận của nó
Trong thiết kế và sử dụng tay, máy người ta thường quan tâm đến các thông
số có ảnh hưởng lớn đến khả năng làm việc của chúng, như:
- Sức nâng, độ cứng vững, lực kẹp của tay máy
- Tầm với hay vùng làm việc: kích thước và hình dáng vùng mà phần công
tác có thể vươn tới.
- Sự khéo léo, nghĩa là khả năng định vị và định hướng phần công tác
trong vùng làm việc Thông số này liên quan đến số bậc tự do của phần công tác.
Các tay máy có đặc điểm chung về kết cấu là được cấu tạo bởi một số khâu(Links), được nối với nhau nhờ các khớp (Joints), tạo thành chuỗi động học.Một đầu của chuỗi động học được nối với giá (base), còn đầu kia nối với phầncông tác Mỗi khâu hình thành cùng với khớp phía trước nó một cặp khâu–khớp.Tùy theo kết cấu mà mỗi loại khớp đảm bảo cho khâu nối sau nó các khả năngchuyển động nhất định
Mỗi khớp được đặc trưng bởi 2 tham số:
Trang 9- Các tham số không thay đổi trong quá trình làm việc của tay máy được
gọi là các tham số
- Các tham số thay đổi khi tay máy làm việc, gọi là các biến khớp.
Hai loại khớp thông dụng trong kỹ thuật tay máy là khớp trượt và khớpquay Chúng đều là khớp có một bậc tự do
3 Phân loại tay máy
Tuy theo số lượng và cách bố trí các khớp có thể tạo ra tay máy kiểu tọa độ
đề các, tọa độ trụ, tọa độ cầu, SCARA và kiểu tay người
3.1 Tay máy kiểu tọa độ đề các:
Tay máy này còn được gọi là kiểu chữ
nhật, dùng 3 khớp trượt, cho phép phần
công tác thực hiện một cách độc lập các
chuyển động thẳng, song song với 3 trục
tọa độ Vùng làm việc của tay máy có
dạng hộp chữ nhật Do sự đơn giản về
kết cấu, tay máy kiểu này có độ cứng
vững cao, độ chính xác được đảm bảo đồng đều trong toàn bộ vùng làm việc,nhưng ít khéo léo.Vì vậy, tay máy kiểu đề các được dùng chủ yếu trong vậnchuyển và lắp ráp
3.2 Tay máy kiểu tọa độ trụ
Khác với tay máy kiểu đề các ở khớp
đầu tiên : Dùng khớp quay thay thế cho
khớp tịnh tiến Vùng làm việc của nó có
dạng trụ rỗng Khớp trượt nằm ngang cho
phép tay máy “thò” được vào khoảng rỗng
nằm ngang Độ cứng vững cơ học của tay
máy trụ tốt, thích hợp với tải nặng, nhưng
độ chính xác định vị và góc trong mặt
phẳng nằm ngang giảm khi tầm với tăng
Hình 1.1: Tay máy kiểu tọa độ đề các
Hình 1.2:Tay máy kiểu tọa độ trụ
Trang 103.3 Tay máy kiểu tọa độ cầu
Khác kiểu trụ do khớp thứ 2 được thay thế bằng khớp quay Nếu quỹ đạochuyển động của các phần công tác được
mô tả trong tọa độ cầu thì mỗi bậc tự do
tương ứng với khả năng chuyển động và
vùng làm việc của nó là khối cầu rỗng Độ
cứng vững của loại tay máy này thấp hơn 2
loại tay máy trên và độ chính xác định vị
phụ thuộc vào tầm với Tuy nhiên, loại này
có thể “ nhặt ” được cả vật dưới nền
3.4 SCARA
Đây là kiểu tay máy có cấu tạo đặc biệt,
3 đều có trục song song vơi nhau Kết cấu
này làm tay máy cứng vững hơn theo
phương ngang Loại này chuyên dùng cho
công nghệ lắp ráp với tải trọng nhỏ, theo
phương thẳng đứng Vùng làm việc của
SCARA là một phần của hình trụ rỗng
3.5 Tay máy kiểu tay người
Có cả 3 khớp là khớp quay, trong đó
trục thứ nhất vuông góc với 2 trục kia Do
sự tương tác với tay người, khớp thứ 2
được gọi là khớp vai, khớp thứ 3 gọi là
khớp khủy tay Với kết cấu này, không có
sự tương ứng giữa khả năng chuyển động
của các khâu và số bậc tự do Tay máy làm
Hình 1.4: Tay máy kiểu SCARA Hình 1.3: Tay máy kiểu tọa độ
Hình 1.5: Tay máy kiểu tay người
Trang 11việc rất khéo léo, nhưng độ chính xác định vị phụ thuộc vị trí của phần công táctrong vùng làm việc Vùng làm việc của tay máy kiểu này gần giống một khốicầu.
Trang 12CHƯƠNG 2: ĐỘNG HỌC VÀ ĐỘNG LỰC HỌC TAY MÁY
Động học tay máy nghiên cứu chuyển động các khâu của robot về phươngdiện hình học, không quan tâm tới các lực và moment gây ra chuyển động Độnghọc tay máy giải quyết 2 vấn đề:
- Bài toán động học thuận: Căn cứ vào các biến khớp để xác định vùng làm
việc của phần công tác và mô tả chuyển động của phần công tác trong vùng làmviệc của nó
- Bài toán động học ngược: Xác định các biến khớp để đảm bảo chuyển
động cho trước của phần công tác
Động học thuận
Động học ngược
Tham số của các khâu
Hình 2.1 Bài toán động học thuận, động học ngược
1 Bài toán động học thuận
Bài toán động học thuận nhằm mô tả thế (vị trí và hướng) của phần côngtác dưới dạng hàm số của biến khớp
Giải quyết bài toán động học thuận của robot thực chất là chúng ta chotrước cấu hình của robot và quy luật chuyển động của các khâu, từ đó chúng taxác định quy luật chuyển động của bàn kẹp (điểm tác động cuối): vị trí bàn kẹp,vận tốc bàn kẹp, gia tốc chuyển động bàn kẹp, vận tốc góc, gia tốc góc v.v…
Để giải bài toán động học thuận ta có thể dùng phương pháp hình học giảitích Phương pháp này thường chỉ áp dụng cho các cơ cấu đơn giản Để giải cácbài toán tổng quát ta cần một phương pháp giải chung Có 2 phương pháp chính
Trang 13được sử dụng phổ biến: Phương pháp Denavit-Hartenberg và phương phápCraig Trong nội dung đồ án xin trình bày phương pháp Denavit-Hartenberg.
1.1 Phép biến đổi thuần nhất và ma trận biến đổi thuần nhất
Cho 2 hệ quy chiếu R0 {Ox y z0 0 0}và R1 {Ox y z1 1 1}
như hình vẽ Tọa độđiểm P trong hệ quy chiếu R0 là rp, trong hệ
Hình 2.2
Trang 14(1.8)Thì phương trình (2.7) có thể viết dưới dạng:
r Tu (1.9)
1.2 Các ma trận quay cơ bản thuần nhất và ma trận tinh tiến thuần nhất
Các ma trận quay cơ bản trong không gian thuần nhất:
0 os( ) sin( ) 0 ( ) ( , )
0 sin( ) os( ) 0
Rx
c Rot x
Rz
c Rot z
Trang 150 0 1
0 0 0 1
T
a b
c)
Trang 16Trong hình trên, khâu i-1 và khâu i được nối với nhau bằng khớp i Trục z i-1
được chọn là trục của khớp thứ i Tham số thứ nhất i , là góc quay trục x i-1
quanh trục z i-1 đến trục x i'/ /x i Tham số thứ 2 là di, là khoản cách giữa trục x i' vàtrục x i Nếu khớp i là khớp quay thì i là biến, còn d i là hằng số Nếu khớp I làkhớp tịnh tiến thì khoảng cách d i là biến, còn i là hằng số
Cách chọn các hệ trục tọa độ có gốc tại khớp thứ i:
1) Trục z i1được chọn dọc theo hướng của trục khớp động thứ i
2) Trụcxi1được chọn dọc theo đường vuông góc chung của 2 trục z i1 và2
i
z , hướng từ trụcz i2đến trụcz i1 Nếu trụcz i1cắt trụcz i2thì hướng củatrục x i1 được chọn tùy ý miễn là vuông góc với trụcz i1 Khi đó 2 trục2
i
z và z i1 song song với nhau, giữa 2 trục này có nhiều đường pháptuyến chung, ta có thể chọn trụcx i1hướng theo pháp tuyến chung nàocũng được
3) Gốc tọa độ Oi-1 được chọn tại giao điểm của trụcx i1và trụcz i1
4) Trụcy i1được chọn sao cho hệ (Oxyz)i-1 là hệ quy chiếu thuận
5) Đối với hệ tọa độ (Oxyz)0 theo quy ước trên ta chỉ chọn được trục z0,còn trục xo chưa có trong quy ước trên Ta có thể chọn trục x0 tùy ý,miến là x0 và z0 vuông góc với nhau
6) Đối với hệ trục (Oxyz)n, do không có khớp n+1, nên theo quy ước trên
ta không thể xác định được trục z n Trục z n không được xác định duy
nhất, trong khi trục x n lại không được chọn theo pháp tuyến của trục z n-1 Trường hợp này, nếu khớp n là khớp quay, ta có thể chọn trục z n song
song với trục z n-1 Ngoài ra ta có thể chọn tùy ý sao cho hợp lý
1.3.2 Các tham số động học Denavit-Hartenberg.
Trang 17Hình 2.6: Sơ đồ thiết lập hệ tọa độ các khâu
Vị trí của hệ tọa dộ khớp (Oxyz)i , đối với hệ tọa độ khớp (Oxyz)i-1đượcxác định bởi bốn tham số Denavit-Hartenberg: i, , ,d a i i i như sau:
- i: góc quay quanh trục z i1 để trục x i1 chuyển đến trục x i' (x i'/ /x i)
- d i: dịch chuyển tịnh tiến dọc theo trục z i1để gốc tọa độ Oi-1 chuyển đếnđiểm O i', giao điểm của trục x i và z i1
- a i: dịch chuyển tịnh tiến dọc theo trục x i để điểm O i' chuyển đến điểm O i
- i: góc quay quanh trục x i sao cho trục z i'1 (z i'1 / / )z i chuyển đến trục z i
Do hệ trục tọa độ (Oxyz)i-1 gắn liền vào khâu thứ i-1, còn hệ tọa độ (Oxyz)i
gắn vào khâu thứ i, cho nên vị trí của khâu thứ i đối với khâu thứ i-1 được xácđịnh bởi 4 tham số Denavit-Hartenberg
1.3.3 Ma trận Denavit-Hartenberg.
Ta có thể chuyển hệ tọa độ khớp (Oxyz)i-1 sang hệ tọa độ khớp (Oxyz)i bằngbốn phép biến đổi cơ bản như sau:
- Quay quanh trục z i-1 một góci
- Dịch chuyển tịnh tiến dọc trục z i-1 một đoạn d i
- Dịch chuyển tịnh tiến dọc trục x i một đoạn a i
- Quay quanh trục x i một góc i
Trang 18Ma trận của phép biến đổi, ký hiệu Hi là tích của bốn ma trận biến đổi cơ bản
và có dạng như sau:
Quay hệ tọa độ xung quanh trụcz i1 một góc 1 ta được ma trận biến đổi:
cos( ) sin( ) 0 0 sin( ) cos( ) 0 0 ( , )
1.3.4 Phương trình xác định vị trí và hướng của khâu thao tác
Với ma trận trên ta có thể xác định được:
Trang 19- Vị trí của gốc tọa độ của hệ tọa độ (Oxyz)i trong hệ tọa độ (Ox )yz i1 trong
- Hướng của vật rắn gắn với hệ tọa độ (Ox )yz i trong hệ tọa tọa độ (Ox )yz i1trong
- Bằng cách chuyển dần hệ quy chiếu (Oxyz)n từ O n về O n1,O n2, và
cuối cùng là hệ quy chiếu cố định (Ox )yz 0 ta sẽ xác định được vị trí của gốc tọa
độ O n và hướng của khâu thứ n trong hệ quy chiếu cố định
Hình 2.7: Tay máy n khâu
Áp dụng liên tiếp phép biến đổi đối với robot n khâu ta có :
1 2 (0)
n E n
2 Bài toán động học ngược
Bài toán động học thuận cho phép xác định thế của phần công tác, và có thể
cả vùng làm việc của nó theo quan hệ với các thông số động học của các cặpkhâu- khớp Bài toán động học ngược nhằm xác định bộ thông số động học đểđảm bảo chuyển động cho trước của phần công tác Các bài toán ngược thường
Trang 20- Có thể gặp nghiệm vô định, vì các liên kết thừa (giống như liên kết siêu
tĩnh)
- Có thể có nghiệm tìm được bằng toán học, nhưng lại không chấp nhận
được về mặt vật lý, do các ràng buộc về kết cấu
Tính đa nghiệm của bài toán động học ngược không chỉ phụ thuộc vào cácbiến khớp (số bậc tự do) mà cả vào số lượng các tham số khác không trong kếtcấu
Việc tìm các nghiệm phù hợp đòi hỏi ở người thiết kế một trực giác về mặttoán học và về kết cấu để dự đoán những đặc điểm hoặc khu vực khả dĩ giảmđược số nghiệm cần lựa chọn
2.1 Không gian thao tác và không gian cấu hình của Robot.
Xét mô hình robot như hình 2.13 Vị trí khâu thao tác được xác định bởi sáutham số p p p x, y, z, , , Trong đóp[ ,p p p x y, z]Txác định vị trí của điểm thao tác
E, còn α[ ] Txác định hướng của khâu thao tác Trong số sáu tọa độ trên,trong nhiều trường hợp chỉ quan tâm đến một
số tọa độ trong số đó, ký hiệu các tọa độ cần
quan tâm là x x1 , , , 2 x m (m 6):
x x1 , , , 2 x mT
x
Các tọa độx x1 , , , 2 x m được gọi là các tọa độ
thao tác Tập hợp các tọa độ thao tác tạo thành
không gian Euclide m chiều và được gọi là không gian thao tác của Robot
Trang 21Các tọa độ q q1, , ,2 q được gọi là các tọa độ khớp Tập hợp các tọa độ n
2.2 Bài toán động học ngược
Khi giải bài toán động học thuận robot ta xác định được quan hệ:
Khi m = n ta quy ước gọi là robot cấu trúc không dư hoặc robot chuẩn Nếu
m < n gọi là robot có cấu trúc dư hoặc robot dư dẫn động
2.3 Các phương pháp giải bài toán ngược
Các phương pháp giải bài toán động học ngược được phân loại thành 2
nhóm: các phương pháp giải tích và các phương pháp số.
Phương pháp giải tích cho phép tìm ra kết quả q là biểu thức giải
tích đối với x Các phương pháp này cho kết quả chính xác và nhanh chóngnhưng quá trình tính toán, thành lập phương trình giải tích phức tạp và không cócách giải tổng quát cho mọi robot
Phương pháp số là phương pháp tính gần đúng với sai số cho phép
được sử dụng với sự hỗ trợ của máy tính Phương pháp này cho ta cách giải tổngquát cho mọi robot, cho kết quả chính xác cần thiết nhưng đưa ra kết quả chậm
2.3.1 Phương pháp giải tích
Với phương pháp này, khi giải bài toán động học thuận bằng phương pháp matrận Denavit-Hartenberg ta có ma trận biến đổi xác định vị trí của khâu thao tác là:
Trang 22Từ đó xác định được ma trận côsin chỉ hướng của khâu thao tác và véc tơ
định vị điểm thao tác E là các hàm của các tọa độ suy rộng Nếu sử dụng
Từ đó ta xác định được ma trận côsin chỉ hướng của khâu thao tác Véc tơ xác
định vị trí của điểm thao tác E có dạng:
(0) (0) (0)
r r A u (1.26)
Mặt khác từ nhiệm vụ công nghệ của robot ta có ma trận cấu hình của khâu
thao tác (ma trận côsin chi hướng của khâu thao tác đó và véc tơ xác định vị trí
của điểm thao tác) dưới dạng hàm của các tọa độ thao tác:
2.3.2.1 Xác định véc tơ vận tốc và véc tơ gia tốc suy rộng
Giả sử ta đã xác định được quan hệ giữa các tọa độ thao tác và các tọa độ
khớp: x = f(q), xm, qm (1.20)
Trang 23Khi m < n robot có số bậc tự do n, lớn hơn số tọa độ xác định vị trí của khâuthao tác Khi đó robot được gọi là robot dư dẫn động Đạo hàm 2 vế của biểuthức (2.9) theo thời gian ta được:
Hệ phương trình (2.10) là hệ tuyến tính dư ẩn số với q.Với một giá trị vận
tốc của khâu thao tác và một cấu hình của tay máy sẽ có vô số nghiệm là vận tốccủa vector suy rộng Để giải hệ phương trình này cần sử dụng lý thuyết ma trận nghịch đảo suy rộng
Định nghĩa ma trận nghịch đảo suy rộng:
Ma trận nghịch đảo suy rộng của ma trận A R m n
Trang 24q t( )J q( ) ( )x t (1.27)
q t( )J q( ) ( )x t J q J q( ) ( ) ( ) x t
(1.28)Trong trường hợp robot không dư dẫn động, trong 2 biểu thức trên ta thay matrận tựa nghịch đảo J + (q)bằngJ -1 (q).
2.3.2.2.
Xác định véc tơ tọa độ suy rộng
Từ các công thức (12) và (13) cho phép ta xác định được véc tơ suy rộng và véc tơ gia tốc suy rộng, nếu biết được q(t) tại thời điểm khảo sát và các quy luật( ), ( ), ( )
x t x t x t
Đế xác định q(t) ta giả sử robot làm việc trong khoảng thời gian t=0 đến t=T.Chia khoảng thời gian đó thành N khoảng bằng nhau :
T t N
Như thế ta có :
1
(t k ) ( )t k ( ( )) ( )t k t k t k 0,1, ,N
Trang 25Từ các công thức trên ta có sơ đồ thuật toán :
Hình 2.9: Sơ đồ thuật toán xác định véc tơ tọa độ suy rộng
Kết quả thu được khá thô, vì vậy cần nâng cao độ chính xác của q(t) tại thờiđiểm t = tk+1 Khi đó ta sử dụng thuật toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng
Phương pháp hiệu chỉnh gia lượng
Giả sử ta đã biếtq = q(t ) k k Trước tiên ta xác định giá trị gần đúng q k+1
Trang 26Sau đó ta xác định véc tơ chính xác hơn của qk +1 theo công thức :
k k k
q q q (1.36)Nếu qk1 thì thay (1.36) vào (1.35) và tiếp tục giải hệ phương trình
Nếu qk1 thì dừng lại và lấy : qk 1 qk 1
Biết được qk+1 ta suy ra được q k1 , q k1
Đánh giá sai số
Từ các yêu cầu công nghệ ta cóx x t ( ) Mặt khác từ bài toán động học thuận ta
cóx = f(q ) k k Do đó để đánh giá sai số của phương pháp ta đưa vào các côngthức xác định sai số của dich chuyển, vận tốc, gia tốc
Trang 282.4 Ma trận Jacobi giải tích và ma trận Jacobi hình học
T
d dt d
Trang 29Trạng thái vận tốc của khâu thao tác được xác định bởi vận tốc điểm định vị và vận tốc góc của khâu thao tác :
p J q q ωJqq J q q (1.41)Trong đó :
T
b R
( )
T b
J q được gọi là ma trận jacobi hình học
2.4.3 Mối quan hệ giữa Jacobi giải tích và Jacobi hình học
Ma trận Jacobi giải tích và Jacobi hình học khác nhau ở thành phần ma trậnkhối J qR( )vàJ qa( )
Nếu sử dụng các góc Roll- Pitch- Yaw
Trang 30Từ đó suy ra vận tốc góc của khâu thao tác:
0 sin( ) cos( )cos( )
0 cos( ) sin( )cos( )
0 sin( ) cos( )cos( )
0 cos( ) sin( )cos( ) ,
Từ đó suy ra quan hệ giữa v và x:
Trang 31Động lực học tay máy nghiên cứu quan hệ giữa lực, mô men, năng lượng,với các tham số chuyển động của nó Nghiên cứu động lực học phục vụ cho cácmục đích :
- Mô phỏng hoạt động của tay máy, để khảo sát, thử nghiệm quá trình làm
việc của nó mà không phải dùng tay máy thật
- Phân tích, tính toán kết cấu của tay máy.
- Phân tích, thiết kế hệ thống điều khiển tay máy.
Động lực học thuận và ngược trong không gian khớp
Bài toán động lực học thuận
Bài toán động lực học ngược
Trang 32Bài toán động lực học thuận
Bài toán động lực học ngược
1 ( ), ( ), , ( ) 2 n
x t x t x t
Động học ngược
1 ( ), ( ), , ( ) 2 n
x t x t x t
Hình 2.14: Bài toán động lực học thuận, động lực học ngược trong
không gian thao tác
Hệ phương trình vi phân chuyển động (Trang 97- [1]):
Trang 33 Fv : Lực ma sát nhớt.
Fs : Lực ma sát Culông.
Fv, Fs đều là các ma trận đường chéo.
Phương trình vi phân chuyển động của robot là phương trình vi phân phi
tuyến phức tạp Việc giải phương trình này ta sử dụng phương pháp số
1 Động lực học thuận
Bài toán động lực học thuận tính toán các tọa độ suy rộng từ các mô men tác
dụng lên các khâu Hai phương pháp cơ học hay được sử dụng là phương pháp
Newton- Euler và phương pháp Lagrange
Từ phương trình vi phân chuyển động của Robot (2.1), giả sử ma trận khối
lượng không suy biến ,biến đổi x1 q, x2 q ta được hệ phương trình :
Đây là hệ phương trình vi phân cấp 1 Hệ phương trình này có thể giải bằng
phương pháp số Thuật toán giải được xây dựng trên thuật toán Runge- Kutta
Runge- Kutta là một thuật toán số dùng tìm nghiệm của phương trình vi phân
Đây là phương pháp thông dụng nhất trong họ các phương pháp Runge-Kutta,
thường được gọi là Runge-Kutta cấp 4:
0
( , ), ( o )
y f t y y t y (2.6)
Trang 34Theo phương pháp Runge- Kutta :
- Xác định sai số của phương pháp Runge-Kutta :
Để xác định sai số của phương pháp này, người ta thường thực hiện bằngcách tính 2 lần như sau :
Lần 1 : Tính bằng công thức với bước h nhận được y n h
Lần 2 : Tính với bước h/2 nhận được 2/2
h n
y
Sai số được xác định bởi :
/2 2