Tải bản đầy đủ (.pdf) (33 trang)

Bài tập lớn robot công nghiệp kuka robot (6r)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.26 MB, 33 trang )

Bài tập lớn Robot Cơng nghiệp

KuKa Robot (6R)

LỜI NĨI ĐẦU
Ngày nay robot đã được áp dụng rộng rãi trong hầu hết các lĩnh vực như sản
xuất, công nghiệp, công nghệ cao như vũ trụ, hàng không, giao thông vận tải…
Các nước phát triển đã xuất hiện 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 và xu hướng này đã đạt được khá nhiều kết quả
khả quan. Chính vì thế việc nghiên, ứng dụng và phát triển các hệ thống sản
xuất tự động linh hoạt ngày càng trở nên cấp thiết, nhất là các loại robot. Robot
cơng nghiệp có cấu trúc động học nối tiếp tuy đã được nghiên cứu và phát triển
mạnh song những tính tốn và ứng dụng của nó ln luôn là một lĩnh vực rất
phong phú, đa dạng và đây cũng là loại robot thông dụng nhất hiện nay. Trong
đó có KUKA KR - một loại tay máy 6 bậc tự do hoạt động rất linh hoạt, được
ứng dụng nhiều lĩnh vực sản xuất và trong công nghiệp. Trong đồ án này sẽ
nghiên cứu loại robot này về các phần động học, động lực học, miền làm việc
cũng như phần mơ phỏng lập trình sử dụng các phần mềm hỗ trợ.

Hà Nội, 5/2011
Vũ Ngọc Trọng
Cơ điện tử 2 – K52

Vũ Ngọc Trọng – CDT2_K52

1


Bài tập lớn Robot Cơng nghiệp

KuKa Robot (6R)



CHƯƠNG 1

TÌM HIỂU TỔNG QUAN VỀ ROBOT CHUỖI HỞ
1.1. Sự ra đời của robot
Thuật ngữ “robot” lần đầu tiên xuất hiện năm 1922 trong tác phẩm
“Rossum’s Universal Robot” của Karel Capek. Theo tiếng Séc thì robot là
người làm tạp dịch. Trong tác phẩm này, nhân vật Rossum và con trai của ông
đã tạo ra những chiếc máy gần giống như con người để hầu hạ con người.
Hơn 20 năm sau, ngay sau chiến tranh thế giới lần thứ 2, ở Hoa Kì đã xuất
hiện những tay máy chép hình điều khiển từ xa trong các phịng thí nghiệm về
vật liệu phóng xạ.
Chiếc robot công nghiệp được đưa vào ứng dụng đầu tiên, năm 1961 ở một
nhà máy ô tô của General Motors tại Trenton, New Jersey Hoa Kì.
Năm 1967 Nhật Bản mới nhập chiếc robot công nghiệp đầu tiên từ công ty
AMF của Hoa Kì (American Machine and Foundry Company). Đến năm 1990
đã có hơn 40 cơng ty Nhật Bản, trong đó có những công ty khổng lồ như
Hitachi và Mitsubishi đã đưa ra thị trường nhiều loại robot nổi tiếng. Cho đến
nay, công nghệ chế tạo robot đã phát triển mạnh và được ứng dụng nhiều trong
đời sống và sản xuất.
1.2. Phân loại robot
1.2.1. Phân loại theo số bậc tự do (BTD) trong trường cơng tác
Robot có 2 loại chuyển động cơ bản làm chuẩn :
- Chuyển động thẳng theo các trục X, Y, Z trong không gian Đề-các với các
khớp lăng trụ hay khớp trượt, kí hiệu là P hoặc T.
- Chuyển động quay quanh các trục X, Y, Z kí hiệu là R.
Tùy số BTD và và cách tổ hợp T-R, robot sẽ hoạt động trong trường công tác
với các hình khối khác nhau. Ví dụ: Robot có trường làm việc là hình trụ như
RRT, RTT…
1.2.2. Phân loại theo cấu trúc động học

Một phương pháp phân loại Robot chính là phân loại theo câu trúc hình học
của chúng.
Một robot được gọi là robot chuỗi hở (robot tuần tự - serial robot) nếu cấu
trục động học của chúng có dạng một chuỗi động hở; gọi là robot song song

Vũ Ngọc Trọng – CDT2_K52

2


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

(parallel robot) nếu cấu trúc động học của chúng có dạng một chuỗi đóng; và
gọi là robot hỗn hợp nếu nó bao gồm cả 2 loại này.
1) Robot chuỗi hở (robot nối tiếp – Serial Manipulators)
Đây là dạng phổ biến nhất của robot cơng nghiệp. Thường có dạng cấu trúc
giống cánh tay người, là một chuỗi các khâu rắn liên kết với nhau bằng các
khớp (joints) có dạng như vai, khuỷu tay và cổ tay. Robot này có ưu điểm chính
là vùng làm việc (workspace) rộng và linh động. Dưới đây ta đưa ra các bộ
phận chính của một robot cơng nghiệp:
- Cấu trúc cơ khí gồm các khâu
(links) và khớp (joints),
- Cơ cấu chấp hành (actuators) tác
động tại các khớp làm tay máy
chuyển động,
- Cảm biến (sensors) dùng để đo
lường các trạng thái của tay máy
(cảm biến trong) và trạng thái môi

trường (cảm biến ngoài) nếu cần,
- Một hệ thống điều khiển (có cả
Hình 1.1. IRB660-palletiser của hãng
máy tính) để điều khiển và giám
ABB Robotics.
sát chuyển động của tay máy.
Nhược điểm:
- Đặc điểm cố hữu là độ cứng vững thấp để tạo một cấu trúc động học.
- Sai số tích lũy được khuếch đại từ khâu trước sang khâu sau.
- Do phải mang và chuyển động cùng các bộ dẫn động (thường là các động cơ)
có khối lượng lớn nên tốc độ nên tốc độ làm việc không cao.
- Khả năng mang tải khơng cao.
Robot loại này u cầu phải có ít nhất 6 BTD trong không gian (ứng với 6
BTD của đối tượng làm việc) để có thể tiếp cận được đối tượng ở vị trí bất kì
với khả năng định hướng trong miền làm việc của nó. Chính vì vậy chủ yếu là
robot có 6 khớp, như các loại robot Stanford (RRTRRR), KUKA (6R), Elbow
(6R), Puma (6R) …với ứng dụng chính trong cơng nghiệp hiện nay là lắp ráp,
vận chuyển phơi và sản phẩm trong q trình sản xuất.

Vũ Ngọc Trọng – CDT2_K52

3


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

2) Robot song song (Parallel Manipulator)
Loại robot song song điển hình thường có bàn chân di chuyển được nối với

giá cố định bằng một số nhánh hay chân. Do vậy, các khâu chỉ chịu lực kéo
hoặc lực nén, không phải chịu uốn. Thường số chân chính bằng số BTD, các
chân được điều khiển bằng một nguồn phát động đặt trên giá cố định hoặc ngay
trên thân của chân.
Ưu điểm:
- Khả năng chịu tải lớn vì tải trọng được
chia cho các chân,
- Tốc độ cao hơn và chính xác hơn, cấu
trúc gọn nhẹ hơn,
- Do tốc độ cao và chính xác cao nên có
thể hoạt động như một máy phay, ngày
nay đã được áp dụng vào việc phay các
bề mặt gia công cần độ chính xác cao,
năng suất.
- Nhiều ứng dụng: Mơ phỏng tạo song, Hình 1.2. ABB’s IRB340 palletising robot
ghế lái máy bay (Steward, 1965), bàn khung lắp ráp (Reinholtz và Gokhale,
1987), bàn điều khiển dao, gá của máy phay (Arai, 1991), các thiết bị định điểm
(Gosselin và Hamel, 1994), các máy chuyển động có chân bước (Waldron,
1984).
Tuy nhiên nó cũng có một số nhược điểm vì gặp phải một số trở ngại như
khơng gian làm việc nhỏ, các chân có thể va chạm lẫn nhau cũng như việc thiết
kế rất khó khăn.
3) Robot di chuyển (Mobile Robot)
Đơn giản như loại ôtô, xe đạp với các bánh lái có 2 BTD. Hiện nay dùng
trong chuyên chở vật liệu trong nhà may rộng, bệnh viện, văn phịng …
4) Robot giống người (Humanoid Robot)
Nói một cách đơn giản, robot này có dạng hình dáng con người, 2 chân, 2
tay, đầu, và dung các cơ cấu đó với chuyển động như các bộ phận của con
người.


Vũ Ngọc Trọng – CDT2_K52

4


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

Các kiểu phân loại khác như phân loại theo Hệ thống truyền động, theo
Phương pháp điều khiển, theo Đặc điểm hoạt động… tùy các tiêu chí đặt ra mà
robot được phân loại nhằm nêu bật tiêu chí đó.
1.3. Tay máy (Manipulator)
Thuật ngữ “tay máy” và robot trong quan niệm của nhiều nhà chuyên mơn
trong lĩnh vực này khơng có sự khác biệt. Để thuận tiện trong trình bày, ở đây
ta hiểu:
Tay máy là một dạng robot có cấu tạo mơ phỏng theo những đặc điểm cấu
tạo cơ bản của cánh tay người. Cũng có thể hiểu tay máy là tập hợp các bộ phận
và cơ cấu cơ khí được thiết kế để hình thành các khối có chuyển động tương đối
nhau, được gọi là các khâu động. Trong đó phần liên kết giữa các khâu động
được gọi là các khớp động hay còn gọi là các phần tử thực sự thực hiện các
chuyển động để vận hành tay máy như động cơ điện, xylanh dầu ép, xylanh khí
nén ,… Phần quan trọng khác trên các tay máy là bộ phận hay khâu tác động
cuối để thao tác trên đối tượng làm việc – thường là các tay gắp hoặc các đầu
công cụ chuyên dùng.
Tay máy hay có thể gọi là cánh tay cơ khí của robot cơng nghiệp thơng
thường là một chuỗi động hở được tạo thành từ nhiều khâu được kết nối với
nhau nhờ các khớp động. Khâu cuối của tay máy thường có dạng một tay gắp
hoặc được gắn dụng cụ cơng tác. Mỗi khâu động trên tay máy có nguồn dẫn
động riêng, năng lượng và chuyển động truyền đến cho chung được điều khiển

trên cơ sở tín hiệu nhận được từ bộ phận phản hồi là các cảm biến nhằm thông
báo trạng thái hoạt động của các khâu chấp hành, trong đó vấn đề được đặc biệt
quan tâm là vị trí vận tốc dịch chuyển của khâu cuối – khâu thể hiện kết quả
tổng hợp các chuyển đông của các khâu thành phần.
1.4. Một số robot chuỗi hở thường gặp
1.4.1. Tay máy tọa độ vng góc (Cartesian robot/ Gantry robot)
Robot hoạt động trong hệ tọa độ này được minh họa như hình vẽ gồm ba
chuyển động định vị X,Y,Z theo các trục tọa độ vng góc:
Loại robot này thích hợp với công việc gắp vật thể và đặt chúng vào vị trí
khác. Các ứng dụng có thể là đóng gói, lắp ráp máy móc, cầm nắm các máy
cơng cụ hoặc hàn theo hình cung. Đối với loại robot này, cánh tay được tạo
thành từ 3 khớp trượt mà trục của chúng trùng với hệ trục tọa độ Đê-các.
Vũ Ngọc Trọng – CDT2_K52

5


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

Ưu điểm:
- Không gian làm việc lớn, có thể
dài đến 20m,
- Đối với loại gắn trên trần sẽ dành
được diện tích sàn lớn cho các
công việc khác,
- Hệ thống điều khiển đơn giản.
Hạn chế: Việc thêm vào các loại cần
trục hay các loại thiết bị vận chuyển vật

liệu khác trong không gian làm việc Hình 1.3. Tay máy tọa độ vng góc
của robot khơng được thích hợp (Cartesian Robot)
lắm.Việc duy trì vị trí của các cơ cấu dẫn động và các thiết bị dẫn động điện đối
với loại trên đều gặp nhiều trở ngại.
1.4.2. Tay máy tọa độ trụ (Cylindrical robot)
Trong ba chuyển động chính , robot được trang bị hai chuyển động tịnh tiến
và một chuyển động quay.
Sử dụng trong công nghệ lắp ráp,
cầm nắm các máy công cụ, hàn
điểm. Loại robot này, trục có dạng
hệ tọa độ trụ.
Ưu điểm :
- Có khả năng chuyển động ngang
và sâu vào trong các máy sản xuất,
- Cấu trúc theo chiều dọc của máy
Hình 1.4. Tay máy tọa độ trụ (Cylinderical
để lại nhiều khoảng trống cho sàn,
Robot)
- Kết cấu vững chắc, có khả năng
mang tải lớn,
- Khả năng lặp lại tốt.
Nhược điểm duy nhất là giới hạn tiến về phía trái và phía phải do kết cấu cơ
khí và giới hạn các kích cỡ của cơ cấu tác động theo chiều ngang.

Vũ Ngọc Trọng – CDT2_K52

6


Bài tập lớn Robot Công nghiệp


KuKa Robot (6R)

1.4.3. Tay máy tọa độ cầu (Spherical/Polar robot)
Robot loại này được bố trí có ít nhất hai
chuyển động quay trong ba chuyển động
định vị. Dạng robot này là dạng sử dụng
điều khiển servo sớm nhất.
Được sử dụng để cầm nắm các dụng cụ,
hàn điểm, đánh bóng, hàn hơi hoặc hàn
theo cung. Trục của robot tạo thành hệ tọa
độ cầu.
1.4.4. Tay máy toàn khớp bản lề
Hình 1.5. Tay máy tọa độ cầu (Polar
Loại cấu hình dễ thực hiện nhất được
Robot)
ứng dụng cho robot là dạng khớp nối bản
lề và kế đó là dạng ba trục thẳng, gọi tắt là dạng SCARA (Selective Compliance
Assembly Robot Arm). Dạng này và dạng tọa độ trụ là phổ cập nhất trong ứng
dụng cơng nghiệp bởi vì chúng cho phép các nhà sản xuất robot sử dụng một
cách trực tiếp và dễ dàng các cơ cấu tác động quay như các động cơ điện, động
cơ dầu ép, khí nén.
Được sử dụng để gắp nhả vật, đóng gói, lắp ráp hay cầm nắm máy cơng cụ.
Robot có 2 khớp xoay song song với nhau cho phép thao tác trên mặt phẳng.
Ưu điểm :
- Mặc dù chiếm diện tích làm
việc ít song tầm vươn khá lớn,
tỉ lệ kích thước - tầm vươn
được đánh giá cao.
- Về mặt hình học, cấu hình dạng

khớp nối bản lề với ba trục
quay bố trí theo phương thẳng
Hình 1.6. Robot SCARA
đứng là dạng đơn giản và có
hiệu quả nhất trong trường hợp yêu cầu gắp đặt và đặt chi tiết theo
phương thẳng. Trong trường hợp này bài toán tọa độ hoặc quỹ đạo
chuyển động đối với robot chỉ cần giải quyết ở hai phương x và y còn lại
bằng cách phối hợp ba chuyển động quay quanh ba trục song song với
trục z.
Vũ Ngọc Trọng – CDT2_K52

7


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

1.4.5. Về KUKA Robotics

Hình 1.7. Robot KUKA KR 6/2 và 15/2 của KUKA Robotics

Vũ Ngọc Trọng – CDT2_K52

8


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)


KUKA được thành lập vào năm 1898 tại
Augsburg, Đức, tên là Keller und Knappich
Augsburg . Có cơng ty mẹ là KUKA Roboter
GmbH, đặt tại Augsburg - Đức, KUKA
Robotics là một trong những nhà sản xuất hàng
đầu thế giới về robot công nghiệp với khối
lượng hàng năm đạt gần 10.000 con. Dải robot 5
và 6 trục có tải trọng từ 3kg đến 570 kg và tầm
với từ 635mm đến 3700mm, đều được điều
khiển từ một nền tảng bộ điều khiển dựa trên
PC; riêng KUKA KR 1000 – robot khỏe nhất Hình 1.8. KUKA KR 1000 – robot
khỏe nhất thế giới của KUKA
thế giới của KUKA, là loại robot có 6 trục được
làm bằng titan. Khả năng nâng của nó lên đến
1000 kg và tầm với là 3200 mm. Và nó được thiết kế nhắm tới các ứng dụng
đặc biệt nặng. Do vậy, nó rất lý tưởng cho các ngành công nghiệp như sản xuất
vật liệu xây dựng, ôtô và giặt là.
Robot của KUKA được sử dụng rộng rãi trong nhiều ngành công nghiệp,
gồm sản xuất thiết bị gia dụng, sản xuất ô tô, không gian, sản xuất hàng tiêu
dùng, chế biến thực phẩm, dược, y, đúc khuôn, nhựa, và trong nhiều ứng dụng
phức hợp khác như vận chuyển vật, lắp ráp, đóng gói, xếp-dỡ pallet, hàn, uốn,
đánh bóng bề mặt. Thơng tin chi tiết về tập đồn có tại trang web
www.kukarobotics.com.

Vũ Ngọc Trọng – CDT2_K52

9



Bài tập lớn Robot Cơng nghiệp

KuKa Robot (6R)

Vài hình ảnh khác về robot của hãng KUKA :

Hình 1.9. Zepnick Solutions đã chọn
KUKA Robotics cung cấp Robot bằng
thép không gỉ KUKA KR 15 SL cho hệ
thống xử lý và đóng gói thực phẩm
mới của cơng ty.

Hình 1.11. Một khoang làm
việc của robot đang bỏ bánh
mì nhặt từ băng chuyền vào
hộp.

Vũ Ngọc Trọng – CDT2_K52

Hình 1.10. Một khoang làm việc của robot
hãng KUKA đang thao tác với các thùng đồ
uống.

Hình 1.12. Hệ thống robot tự động
phục vụ cho các quầy bar của hãng
Motoman đang dùng một trong 2 bộ
kẹp để lấy cốc.

10



Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

1.5. Ứng dụng của robot
Ứng dụng chủ yếu của robot công nghiệp là hàn và lắp ráp. Gần 25% robot
công nghiệp là robot hàn. Các robot lắp ráp chiếm 33% dân số robot trên thế
giới, có mặt nhiều nhất trong các nhà máy sản xuất xe hơi và đồ điện tử.

Hình 1.13. Robot hàn Motoman EA1400

.

Hình 1.14. Các cánh tay robot hàn.

Vũ Ngọc Trọng – CDT2_K52

11


Bài tập lớn Robot Cơng nghiệp

KuKa Robot (6R)

CHƯƠNG 2

TÍNH TỐN ĐỘNG HỌC VÀ ĐỘNG LỰC HỌC ROBOT
KUKA 6 BẬC TỰ DO
2.1. Tính tốn động học robot KUKA 6 bậc tự do

Đây là bước cơ sở cho việc
thiết kế sơ bộ robot, từ đó có
thể giải bài tốn điều khiển
robot theo các quỹ đạo. Từ đây
ta mới có đủ các thơng số để
điều khiển robot theo một quỹ
đạo cho trước hoặc với lực cho
trước ta thu được một quỹ đạo
chuyển động nhất định.
Dưới đây là phần tính tốn
động học cho Robot 6 bậc tự do
mà cụ thể ứng dụng giải bài
toán động học cho Robot
Hình 2.1. Các khớp của Robot KUKA
KUKA KR6/2.
Thực chất của việc giải bài toán động học là đi giải 2 bài toán động học sau:
+ Bài toán động học thuận: Biết các góc quay của các khớp, tìm vị trí và hướng
của khâu chấp hành cuối cùng.
+ Bài tốn động học ngược: Cho biết vị trí của khâu chấp hành cuối, tìm các
góc quay của các khớp tương ứng, tức là tìm các thơng số điều khiển cho từng
khâu để đảm bảo vị trí của khâu chấp hành.
Do tính chất của cơng việc của từng robot mà quỹ đạo hoạt động của nó tạo
ra một số bài tốn về điều khiển như sau:
- Nếu khơng quan tâm đến quỹ đạo chuyển động mà chỉ quan tâm đến việc
trong khoảng thời gian cho trước, robot đi tới đúng vị trí điểm làm việc.
Do vậy mà bài tốn trở nên đơn giản hơn. Nó chỉ cần thỏa mãn các điều

Vũ Ngọc Trọng – CDT2_K52

12



Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

kiện trong phần thiết kế quỹ đạo là được; tức là vận tốc điểm đầu và
điểm cuối bằng 0.
- Do điều kiện làm việc mà khi di chuyển từ điểm đầu đến điểm cuối,
chúng bắt buộc phải đi qua một số điểm trung gian nhất định. Dạng này
chúng ta có thể dung phép nội suy để tạo ra một quỹ đạo trơn đi qua các
điểm đó. Điều kiện liên tục về quỹ đạo và vận tốc được thảo mãn.
- Khâu chấp hành phải đi theo một quỹ đạo cho trước và có thể biết trước
luật chuyển động dọc theo quỹ đạo nào đó. Đây là bài toán điều khiển
robot đi theo một quỹ đạo với vận tốc biết trước.
Ở đây chúng ta trình bày phần tính tốn cho trường hợp này: Điều khiển
robot đi theo một quỹ đạo cho trước.
2.1.1. Phương trình động học thuận
Trục
1

Giới hạn chuyển động

2
3
4

 1850
+1150 tới -550
+700 tới -2100


Tốc độ (0/sec)
152

 3500

152
152
250

5

 1300

357

6

 3500

660

Bảng 2.1. Giới hạn chuyển động của các khớp của robot KUKA

1) Bộ thông số DH
Ta xây dựng mối quan hệ động học thông qua bộ thông số DH :
Theo Denavit & Hartenberg, hai ông đã đề xuất dùng ma trận thuần nhất 4x4
để mô tả quan hệ giữa 2 khâu liên tiếp trong cơ cấu không gian.
Trước hết, xác định bộ thông số cơ bản giữa 2 trục quay của 2 khớp động i+1
và i:

- ai là độ dài đường vng góc chung giữa 2 trục khớp động i+1 và i,
- i là góc chéo giữa 2 trục khớp động i+1 và i,
- di là khoảng cách đo dọc trục khớp động i kể từ đường vng góc chung
giữa trục khớp động i+1 và trục khớp động i tới đường vng góc chung
giữa trục khớp động i và trục khớp động i-1.
- θi là góc giữa 2 đường vng góc nói trên.
Vũ Ngọc Trọng – CDT2_K52

13


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

Biến khớp :
- Nếu khớp động i là khớp quay thì θi là biến khớp
- Nếu khớp động i là tịnh tiến thì di là biến khớp
Để kí hiệu biến khớp, ta dùng thêm dấu * và trong trường hợp khớp tịnh tiến
thì ai được xem là bằng 0.
Hình 2.2 biểu diễn các khớp
quay đặt trên robot KUKA KR 6/2.
Trong đó có thể gọi các khớp
A1, A2, A3 lần lượt là khớp hông
(waist), khớp bả vai (shoulder),
khớp khuỷu tay (elbow); tập hợp cả
3 khớp này gọi là cánh tay (arm),
các khớp A1, A2, A3 này quyết
định vị trí của khâu chấp hành cuối
(Điểm P trên hình 2.3 dưới đây).

Các khớp A4, A5, A6 còn lại
được gọi chung là khớp cổ tay
(wrist), chúng quyết định hướng
của khâu chấp hành cuối và có tâm
quay tại điểm P.
Hình 2.2. Các khớp của Robot KUKA KR 6/2.
2) Thiết lập các hệ tọa độ
Khi gắn các hệ tọa độ với các khâu, có một số lưu ý sau:
Gốc của hệ tọa độ gắn liền với khâu thứ i (gọi là hệ tọa độ thứ i) đặt tại giao
điểm giữa 2 đường vng góc chung (ai) và trục khớp động i+1. Trường hợp 2
trục giao nhau thì gốc hệ tọa độ lấy trùng với giao điểm đó. Nếu 2 trục song
song với nhau thì chọn gốc hệ tọa độ là điểm bất kì trên trục khớp động i+1.
Trục zi của hệ tọa độ thứ i nằm dọc theo trục khớp động i+1.
Trục xi của hệ tọa độ thứ i nằm dọc theo đường vng góc chung và hướng
từ khớp động i đến khớp động i+1. Trường hợp 2 trục giao nhau thì hướng của
trục xi trùng với hướng của vectơ tích zi zi-1, tức là vng góc với mặt phẳng
chứa zi, zi-1 và phương của vectơ tích có hướng.

Vũ Ngọc Trọng – CDT2_K52

14


Bài tập lớn Robot Cơng nghiệp

KuKa Robot (6R)

Hình vẽ sau đây thể hiện các hệ tọa độ đặt trên robot KUKA KR 6/2 và các
thông số động học theo bảng DH:


Hình 2.3. Sơ đồ bố trí các hệ tọa độ và các thông số động học cho Robot KUKA.

Sau khi gắn các hệ trục tọa độ trên các khâu và khớp của robot theo nguyên
tắc đã trình bày ở trên, ta có các thơng số cho bảng DH như sau:
Khâu

θi

di

ai

i

Khớp

1
2
3
4
5
6

θ1*
θ2*
θ3*
θ4*
θ5*
θ6*


0
0
0
d4 = 600
0
d6 = 125

a1 = 300
a2 = 650
a3 = 155
0
0
0

900
00
900
-900
900
00

R
R
R
R
R
R

Bảng 2.2. Bảng thông số DH.


Vũ Ngọc Trọng – CDT2_K52

15


Bài tập lớn Robot Cơng nghiệp

KuKa Robot (6R)

3) Mơ hình biến đổi
Trên cơ sở đã xây dựng các hệ tọa độ với 2 khâu động liên tiếp như trên đã
trình bày, ta có thể thiết lập mối quan hệ giữa 2 hệ tọa độ liên tiếp theo 4 bước
sau đây:
1 - Quay quanh trục zi-1 một góc θi
2 - Tịnh tiến dọc trục zi-1 một đoạn di
3 - Tịnh tiến dọc trục xi-1 (đã trùng với xi) một đoạn ai
4 - Quay quanh trục xi một góc αi.
Bốn bước này được biểu diễn bằng tích các ma trận thuần nhất sau:
(2.1)
Ai = R(z,θi).Tp(0,0,di).Tp(ai,0,0).R(x,αi)
Sau khi thực hiện các phép nhân các ma trận đơn giản (quay, tịnh tiến), ta có:

Ci
S
A i   i
 0

 0

Si Ci

Ci Ci
Si

a iCi 
a iSi 

(2.2)
di 

0
0
1 
Thay các giá trị trong bảng DH vào cơng thức Ai ta tính được các ma trận Ai
như sau:
 C2 S2 0 a 2C2 
C1 0 S1 a1C1 
S
 S 0 C a S 
C 2 0 a 2S2 
1
1
1 1
2
0
1



A1 
A2 

0 1 0
0
0 
0 1
0 




1 
0 0
1 
0 0 0
0
C3 0 S3 a 3C3 
C 4 0 S4 0 
 S 0 C a S 
S
0 C4 0 
3
3
3 3
4
2
3



A3 
A4 

 0 1 Ci d 4 
0 1 0
0 




1 
0
1
0 0
0 0 0
C5 0 S5 0 
C6 S6 0 0 
 S 0 C 0 
S
C6 0 0 
5
5
6
4
5




A5 
A6 
0
 0 1 0 0

0 1 d6 




0 0 1
0
 0 0 0 1

Vũ Ngọc Trọng – CDT2_K52

SiSi
CiSi
C i

16


Bài tập lớn Robot Cơng nghiệp

KuKa Robot (6R)

4) Phương trình động học
Ma trận Ti là tích các ma trận Ai và là ma trận mơ tả vị trí và hướng của hệ
tọa độ gắn liền với khâu thứ i, so với hệ tọa độ cố định: Ti = A1A2…Ai, i = 1..n
Trong trường hợp i = n, với n là số hiệu chỉ hệ tọa độ gắn liền với điểm tác
động cuối (End-Effector) thì ta có:
Tn = A1A2…An cũng chính là ma trận trạng thái cuối TE: TE = Tn

n x

n
hay:  y
nz

0

px 
sy a y py 
  Tn
sz a z pz 

0 0 1
Ở đây ta gọi tọa độ điểm cuối là D(dx, dy, dz) còn điểm P quyết định vị trí của
sx

ax

D.
Vì vậy vị trí và hướng của khâu chấp hành cuối được cho bởi ma trận :
n x sx a x d x 
n s a d 
y
y
0
0
1
2
3
4
5

(2.3)
A 6  A1. A 2 . A3 . A 4 . A 5 . A 6   y y
 n z sz a z d z 


0 0 0 1
- Nhân 3 ma trận đầu với nhau ta được: 0 A 3  0 A1.1 A 2 .2 A 3 

C1C23

SC
  1 23
 S23

 0

S1 C1S23
C1 S1S23
0

C23

0

0

C1  a1  a 2C2  a 3C23  

S1  a1  a 2C2  a 3C23  


a 2S2  a 3S23

1


(2.4)

- Nhân 3 ma trận còn lại: 3 A 6 3 A 4 .4 A 5 .5 A 6 
 C4C5C6  S4S6 C4C5S6  S4C6
S C C  C S S C S  C C
4 6
4 5 6
4 6
 4 5 6

S5C6
S5S6

0
0

Ta có phương trình cân bằng sau:
0

C4S5
S4S5
C5
0

d 6C 4S5 

d 6S4S5 
 (2.5)
d 4  d 6 C5 

1


A 6 0 A 3 .3 A 6

Trong các phương trình trên: Ci  cosθi
Cij  cos(θi+ θj)
Vũ Ngọc Trọng – CDT2_K52

(2.6)
Si  sinθi
Sij  sin(θi+ θj)
17


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

Thay các phương trình (2.3), (2.4), (2.5) vào PT (2.6) và cân bằng các phần tử
ta có hệ 12 phương trình:
nx = C1[C23(C4C5C6 – S4S6) – S23S5C6] + S1(S4C5C6 + C4S6)
ny = S1[C23(C4C5C6 – S4S6) – S23S5C6] – C1(S4C5C6 + C4S6)
nz = S23(C4C5C6 – S4S6) + C23S5C6
sx = C1[-C23(C4C5C6 + S4S6) + S23S5C6] + S1(-S4C5S6 + C4C6)
sy = S1[-C23(C4C5C6 + S4S6) + S23S5C6] – C1(-S4C5S6 + C4C6)

sz = - S23(C4C5C6 + S4S6) – C23S5S6
ax = C1(C23C4S5 + S23C5) + S1S4S5
ay = S1(C23C4S5 + S23C5) – C1S4S5
az = S23C4S5 + C23C5
dx = C1[a1 + a2C2 + a3C23 + d4S23 + d6(C23C4S5 + S23C5)] + d6S1S4S5
dy = S1[a1 + a2C2 + a3C23 + d4S23 + d6(C23C4S5 + S23C5)] – d6S1S4S5
dz = a2S2 + a3S23 + d4C23 + d6(S23C4S5 – C23C5).
Như vậy khi biết được các giá trị của θi ta hồn tồn có thể xác định được
hướng và vị trí của khâu chấp hành cuối bằng cách thay các giá trị này vào 12
phương trình trên.
Bài tồn động học thuận có thể dùng MATLAB để lập một hàm hoặc chương
trình chung để giải ra 12 nghiệm cả dưới dạng chữ hoặc tính tốn với số, được
trình bày ở phần phụ lục.
2.1.2. Phương trình động học ngược
Theo phương pháp chung khi giải bài toán động học ngược, với n = 6, khó
khăn là ở chỗ làm sao xác định được phương trình nào trong các hệ phương
trình để tính ra được các góc θi ở dạng cơng thức với các kí hiệu tổng qt.
Có thể nói chưa có một thuật tốn chung nào mà nhờ đó có thể tìm ra được
tập nghiệm của bài tốn động học ngược cho mọi robot. Phương pháp giới thiệu
sau đây có thể xác định được θi dễ dàng và trực giác hơn: Phương pháp “các
nhóm 3”:
Như đã biết, vị trí của một điểm hoàn toàn được xác định trong hệ tọa độ
khơng gian 3 chiều, nên có thể phân robot ra những nhóm 3, nói chung được
viết thành n = 3+3+3+… Tuy nhiên, gốc tọa độ của những nhóm 3 kể từ nhóm
thứ 2 trở đều là đối tượng cần được xác định. Cịn đối với những robot dùng
trong cơng nghiệp thường có khơng q 6 BTD nên việc phân nhóm 3+3 lại
Vũ Ngọc Trọng – CDT2_K52

18



Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

phù hợp với các thao tác trong thực tế. Thao tác đầu tiên là robot đưa bàn kẹp
đến gần vị trí làm việc. Có thể gọi tên là thao tác “thơ”. Sau đó bàn kẹp được xê
dịch nhỏ và xoay hướng sao cho phù hợp với công việc, gọi là thao tác “tinh”.
Vậy các nhóm 3+3 tương ứng với các thao tác “thơ + tinh”.
Việc giải bài toán động học ngược trở nên đơn giản hơn nhưng phải lưu ý
đến các vấn đề sau:
- Đối với nhóm 3 thực hiện thao tác “thơ” thì thường chỉ quan tâm đến vị
trí, mà khơng quan tâm đến định hướng nên các thành phần của các vectơ
n, s, a đều bằng 0.
- Đối với các nhóm 3 thực hiện thao tác “tinh” thì ngược lại, cho các thành
phần của vectơ p bằng 0.
Nhược điểm của phương pháp này, như đã nói ở trên, gốc tọa độ của các
nhóm 3, kể từ nhóm thứ 2 trở đi đều là những vị trí cần xác định hoặc cho
trước. Thông thường người ta cho trước chúng như những điểm tựa cơng nghệ.
Mặc dù có thể dùng hệ 12 PT trong phần tính tốn động học thuận trên để
giải bài toán động học ngược nhưng do chúng đều là các phương trình phi
tuyến nên rất khó giải. Tuy vậy, ở đây KUKA là loại robot có đặc điểm 6 khớp
đều là khớp quay, trong đó tâm trục quay của 3 khớp cuối giao nhau tại 1 điểm,
thông thường với cấu trúc này thì mỗi điểm trong khơng gian robot sẽ có 8 khả
năng để đạt được đến điểm này, hay nói cách khác, với mỗi điểm xác định thì
bài tốn động học ngược sẽ có 8 nghiệm.
Vì vậy, để giải bài toán động học ngược ta chia làm 2 bước, bước 1 dựa vào
phương pháp hình học giải tích để tìm các góc liên quan đến vị trí của khâu
chấp hành cuối (θ1, θ2, θ3) – “Phương trình động học ngược – Vị trí” sau đó
bước 2 có nhiệm vụ tính nốt các góc cịn lại từ các góc đã tìm được – “Phương

trình động học ngược – Hướng”.
Từ các thành phần của phương trình (2.6) và 12 phương trình thành phần ta
có thể biết được vị trí của điểm tâm quay cổ tay (điểm P trên hình 1.15):
 p x  d x  d 6a x 
 p   d  d a 
6 y
 y  y
 p z   d z  d 6a z 

Vũ Ngọc Trọng – CDT2_K52

(2.7)

19


Bài tập lớn Robot Cơng nghiệp

KuKa Robot (6R)

1) Phương trình động học ngược - Vị trí (Position)
Trên hình vẽ 2.4 là hình chiếu bằng của cánh tay robot trong 2 trường hợp
của góc θ1.

Hình 2.4. Hình chiếu bằng của cánh tay

- Góc θ1 được tính từ Py và Px:
(2.8)
θ1 = atan2(Py, Px);
0

Theo hình vẽ, θ1 có 2 nghiệm là θ1 và (θ1 + 180 ), cũng đều thỏa mãn nghiệm
của phương trình (2.8). Trường hợp Px = Py = 0, phương trình (2.8) sẽ có vơ số
nghiệm, do vậy hàm atan2 sẽ chọn nghiệm của θ1 = 0.
- Góc θ3 được tính dựa vào hình 2.5:

Hình 2.5. Hình chiếu vng góc với mặt phẳng cánh tay

Vũ Ngọc Trọng – CDT2_K52

20


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

Sử dụng định lí hàm số cos, ta có:

với

q 2 + r 2 = a 22  a 32  d 42  2a 2 a 32  d 42 .cos(180  3 )

(2.9)

 3  atan2( 1  D32 , D3 )  atan2(d 4 ,a 3 );

(2.10)

D3 


q 2  r 2  a 22  a 32  d 24
2a 2 a 32  d 42

;

(2.11)

- Góc θ2 tính dựa vào góc ψ và γ như trên hình vẽ 2.5.
Ta có: a 32  d 24 = a 22  q 2 + r 2  2a 2 q 2 + r 2 .cos

(2.12)

   atan2( 1  D 22 , D 2 );

với

D2 

a 32  d 24  a 22  q 2  r 2
2a 2 q  r
2

2

(2.13)

;

(2.14)


Từ đó:
θ2 = γ  ψ = atan2(r,q) – atan2( 1  D 22 ,D 2 );

(2.15)

Như vậy, các góc (θ1, θ2, θ3) đã tính được và tổ hợp của chúng sẽ cho ra 8
nghiệm của bộ (θ1, θ2, θ3).
2) Phương trình động học ngược - Hướng (Orientation)
Hướng của khâu chấp hành cuối (gắn dụng cụ) được giải sau khi đã biết
được các góc vị trí (θ1, θ2, θ3).
Trong công thức (2.6), nếu chỉ xét đến thành phần định hướng (ma trận R3x3),
ta có:
0

R 6 0 R 3 .3 R 6

3 R 6  (0 R 3 )T .0 R 6

(2.16)

0

R6 đã được giải từ phần động học thuận, cịn 0R3 đã có khi giải ra các góc
(θ1,θ2,θ3) theo PT động học ngược – vị trí ở trên.
Cịn 3R6 bao gồm các thành phần ma trận quay của (θ4,θ5,θ6) theo (2.5) và là
các giá trị cần được xác định:
3

 C4C5C6  S4S6
R 6  S4C5C6  C4S6



S5C6

Vũ Ngọc Trọng – CDT2_K52

C 4C5S6  S4C6
S4C5S6  C4C6
S5S6

C 4S5 
S4S5 

C5 

(2.17)

21


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

Giả sử các thành phần của tích của 2 ma trận vế phải (2.16) sau khi tính được
là ma trận [bij]3x3 :
 C1C23 S1C23 S23   n x s x a x   b11 b12 b13 
(0R3)T.0R6 =  S1
C1
0  .  n y s y a y  =  b 21 b 22 b 23  (2.18)

 



 C1S23 S1S23 C23   n z s z a z   b31 b32 b33 
Từ đó, sau khi nhân được vế phải theo (2.18) ra các giá trị bij rồi đồng nhất
với các phần tử của (2.17) ta có được các nghiệm (θ4,θ5,θ6):
Có 2 bộ nghiệm của (θ4, θ5, θ6):
θ4 = atan2(b23, b13) + 1800;
θ4 = atan2(b23, b13);
θ5 = atan2





2
1  b33
,b33 ;

θ6 = atan2(b32, -b31);

Vũ Ngọc Trọng – CDT2_K52





2
θ5 = atan2  1  b33

,b33 ;

θ6 = atan2(b32, -b31) + 1800;

22


Bài tập lớn Robot Cơng nghiệp

KuKa Robot (6R)

CHƯƠNG 3

CHƯƠNG TRÌNH MƠ PHỎNG KẾT QUẢ TÍNH TỐN
3.1. Mơ phỏng sử dụng thư viện OpenGL với MFC
– Công cụ để mô phỏng :
+ Ngơn ngữ lập trình C++ : Xây dựng giao diện bằng MFC.
+ Tìm hiểu lập trình đồ họa OpenGL để mô phỏng qua các khối đồ họa.
– Phần mềm sử dụng:
+ Visual Studio 2008
+ SolidWorks 2010
+ Matlab R2010b với Robotics Toolbox for Matlab (release 8)
Copyright Peter Corke 1992-2008
3.1.1. Giới thiệu về OpenGL
OpenGL (Open Graphics Library) là một thư viện đồ họa tốc độ cao và độc
lập với hệ thống giao diện các hệ điều hành. Tiền thân của OpenGL là IRIS GL
do hãng Silicon Graphic Library Inc phát triển cho các WorkStation đồ họa tốc
độ cao từ năm 1982.Sau đó từ năm 1992 thì OpenGL đã trở thành một chuẩn
cơng nghiệp và đắc tính kỹ thuật của OpenGL do ủy ban kỹ thuật ARB
(Architectural Review Board ) phê chuẩn.


Hình 3.1. Khối lập phương rỗng và đặc vẽ bằng OpenGL.

OpenGL là một tiêu chuẩn kỹ thuật đồ họa có mục đích định ra một giao diện
lập trình ứng dụng (tiếng Anh: API) đồ họa 3 chiều. OpenGL cũng có thể được
Vũ Ngọc Trọng – CDT2_K52

23


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

dùng trong các ứng dụng đồ họa 2 chiều. Giao diện lập trình này chứa khoảng
250 hàm để vẽ các cảnh phức tạp từ những hàm đơn giản. Nó được dùng rộng
rãi trong các trị chơi điện tử. Ngồi ra nó cịn dùng trong các ứng dụng CAD,
thực tế ảo, mô phỏng khoa học, mơ phỏng thơng tin, phát triển trị chơi.
OpenGL cịn có một đối thủ cạnh tranh là DirectX của Microsoft.
3.1.2. Giới thiệu ngơn ngữ lập trình Visual C++
Visual C++ là một trong các ngơn ngữ lập trình thuộc dịng Visual Studio
của hãng Microsoft, phát triển dựa trên nền tảng là ngơn ngữ lập trình hướng
đối tượng C++. Visual C++ ra đời khoảng những năm 1990 và càng ngày càng
được sử dụng rộng rãi nhất là các ứng dụng trong kỹ thuật như là lập trình
nhúng, lập trình điều khiển và lập trình mơ phỏng. Việc tạo ra các giao diện
phức tạp và trình bày đẹp đối với Visual C++ khá là đơn giản, và đây chính là
thế mạnh của Visual C++ trong việc trợ giúp đắc lực cho người lập trình khi
xây dựng những dự án lớn hoặc trong kỹ thuật lập trình hệ thống.

Hình 3.2. Giao diện VC++ và tạo Project MFC.


Vũ Ngọc Trọng – CDT2_K52

24


Bài tập lớn Robot Công nghiệp

KuKa Robot (6R)

MFC là lớp nền tảng của Microsoft (Microsoft Foundation Classes), là một
công cụ mạnh trong lập trình ứng dụng cho hầu hết các lĩnh vực vì nó có giao
diện đáp ứng mọi nhu cầu của người sử dụng trong việc thiết kế các giao diện
của chương trình mơ phỏng.
3.1.3. Giới thiệu phần mềm đồ họa SolidWorks
Phần mềm SolidWorks là một phần mềm hỗ trợ thiết kế cơ khí (CAD) cho
phép ta vẽ và thể hiện các đối tượng trong không gian 3 chiều (3D) một cách
trực quan với giao diện thân thiện dễ sử dụng cũng như với hệ thống Help rất
chi tiết và dễ hiểu ; nó cịn cho phép lưu và mở file dưới nhiều dạng khác nhau
giúp liên kết đến nhiều phần mềm khác nhau. Ở đây ta lựa chọn định dạng file
STL(Standard Template Library) để chuẩn bị cho việc mơ phỏng.

Hình 3.3. Tạo file STL từ Solidwork (2010)

Vũ Ngọc Trọng – CDT2_K52

25



×