BÀI GIẢNG
KỸ THUẬT ROBOT
Trang 2NỘI DUNG
CHƯƠNG 1: TỔNG QUAN VỀ ROBOT
CHƯƠNG 2: CÁC PHÉP BIẾN ĐỔI
CHƯƠNG 3 ĐỘNG HỌC THUẬN ROBOT
CHƯƠNG 4 ĐỘNG HỌC NGƯỢC ROBOT
Trang 3CHƯƠNG 1:
TỔNG QUAN VỀ
ROBOT
Trang 41.1 Lịch sử phát triển của robot
1738 Vịt máy Vaucanson
Trang 51.1 Lịch sử phát triển của robot
1774 Thư kí máy
Trang 61.1 Lịch sử phát triển của robot
1890 búp bê biết nói Edison
Trang 71.1 Lịch sử phát triển của robot
1926 bộ phim đầu tiên về robot của Đức Metropolis
Trang 81.1 Lịch sử phát triển của robot
1939 người máy roboter
Trang 91.1 Lịch sử phát triển của robot
1938 Pollar phát minh ra tay máy cơ khí phục vụ cho việc sơn
1947 robot vận hành bằng vô tuyến điều khiển servo đầu tiên ra đời
1948 máy điều khiển từ xa
Trang 101.1 Lịch sử phát triển của robot
1968 R.S Mosher chế tạo ra robot đi bằng bốn chân
Trang 111.1 Lịch sử phát triển của robot
1983 Odetics Inc phát triển xe di chuyển bằng sáu chân
1985 Robot đi tự động đầu tiên ở đại học Ohiox
Trang 121.1 Lịch sử phát triển của robot
1996 hãng Honda trình diễn robot Asimo
Trang 131.1 Lịch sử phát triển của robot
Trang 143 định luật khi chế tạo robot
Robot không được tổn thương con người
Robot phải tuân theo sự điều khiển của con
người nhưng không được chống lại định luật 1
Robot phải bảo vệ sự tồn tại của nó
Trang 16Định nghĩa robot
A robot is a mechanical or virtual, artificial agent It is usually
an electromechanical system, which, by its appearance or movements, conveys a sense that it has intent or agency of its own The word robot can refer to both physical robots and virtual software agents, but the latter are usually referred to as
bots to differentiate- Aliiiance for Telecommunications
Solutions
Trang 17Định nghĩa robot
A robot device is an instrumented mechanism used in science or industay to take the place of a human being It may or may not physically resemble a human or perfome its tasks in a human way, and the line separating robot devices from merely automated machinery is not always easy to define In general, the more sophisticated and individualized the machine, the more likely it is
to be classed as a robot device
(Encyclopacdia Britannica)
Trang 181.2 Phân loại robot: hai loại
Robot công nghiệp: là một tay máy robot có
thể hoạt động đa mục đích, có thể lập trình
được và điều có thể đặt cố định hoặc di động,
sử dụng cho các ứng dụng tự động hóa công
nghiệp
Robot dịch vụ: là robot vận hành tự động hoặc
bán tự động để thực hiện công việc trong giải trí
và sản xuất Có hai loại:
Robot dịch vụ cá nhân
Robot dịch vụ chuyên nghiệp
Trang 19Robot công nghiệp
Robot hàn trong công nghệ sản xuất cơ khí
Trang 20Robot công nghiệp
Robot được sử dụng trong công đoạn cấp liệu và lắp ráp
Trang 21Robot công nghiệp
Các ứng dụng Robot trong các lĩnh vực thám hiểm, quân sự,
vệ tinh
Trang 22Robot dịch vụ
Robot nhện Robot dạng người
Trang 23Robot dịch vụ
Robot chó Robot rắn
Trang 24Robot dịch vụ
Robot hút bụi Robot lau kính
Trang 25Robot dịch vụ
Robot phục vụ trong bệnh viện dã chiến COVID-19
Trang 26Robot dịch vụ
Robot phục vụ trong nhà hàng
Trang 271.3 Cấu trúc của một hệ thống robot
Phần cứng
Phần mềm
Trang 28Cấu trúc của robot công nghiệp
Trang 29Cấu trúc của robot công nghiệp
Cánh tay máy: thành phần chính là các khâu liên kết nhau bởi các khớp
Trang 30Cấu trúc của robot công nghiệp
Khớp: liên kết giữa hai khâu, có chức năng truyền chuyển động để thực hiện di chuyển của robot
Chủ yếu gồm 2 loại: khớp tịnh tiến và khớp quay
Trang 31Cấu trúc của robot công nghiệp
Trang 32 Khâu chấp hành cuối: được gắn lên cổ tay robot
để giúp robot thực hiện các thao tác Thường có
2 dạng: cơ cấu bàn kẹp và cơ cấu dụng cụ
Trang 33Cấu trúc của robot công nghiệp
Cơ cấu truyền động: giúp robot chuyển động và thay đổi tư thế
Thường là động cơ điện, thủy lực, khí nén
Trang 34Cấu trúc của robot công nghiệp
Cảm biến: nhận biết và thu thập thông tin về
trạng thái thực của robot Ví dụ góc quay, vận
tốc góc, gia tốc, lực tác động…
Bộ điều khiển: thu thập và xử lý thông tin từ cảm biến, đưa ra quyết định đến cơ cấu truyền động, truyền thông giao tiếp với thiết bị ngoại vi
Trang 35Cấu trúc của robot công nghiệp
Trang 36Cấu trúc của robot công nghiệp
Bậc tự do là số khớp quay và tịnh tiến
Ba bậc
Trang 37Bậc tự do của Robot công nghiệp
Robot Scara 4 bậc
Trang 38Tóm lại
Trang 39CHƯƠNG 2:
CÁC PHÉP BIẾN
ĐỔI
Trang 402.1 Định nghĩa
Biểu diễn một điểm
Trang 412.1 Định nghĩa
Biểu diễn một vecto
Trang 432.1 Định nghĩa
Biểu diễn một hệ trục trong hệ trục
Trang 44Các kí hiệu
𝐴𝑃 : điểm P trong hệ tọa độ A
𝐵𝐴𝑅 : ma trận xoay R biểu diễn A liên quan B
𝑇𝐵𝐴 : ma trận dịch chuyển T biểu diễn A liên quan B
Trang 452.2 Biểu diễn sự chuyển vị
Các khâu của robot thường thực hiện hai chuyển động
cơ bản:
Chuyển động tịnh tiến, ký hiệu là T
Chuyển động quay, ký hiệu là R
Trang 462.2 Biểu diễn sự chuyển vị
Biểu diễn sự chuyển động tịnh tiến
Ma trận chuyển vị T là:
Trang 472.2 Biểu diễn sự chuyển vị
Điểm đặt mới của hệ trục là:
Trang 482.2 Biểu diễn sự chuyển vị
Biểu diễn sự quay quanh một trục:
Trang 492.2 Biểu diễn sự chuyển vị
Quay xung quanh trục x một góc θ
Trang 502.2 Biểu diễn sự chuyển vị
Tọa độ điểm P mới là:
Với ma trận xoay quay quanh trục x:
Trang 512.2 Biểu diễn sự chuyển vị
Ma trận xoay quay quanh trục y
Trang 522.2 Biểu diễn sự chuyển vị
Ma trận xoay quay quanh trục z
Trang 532.2 Biểu diễn sự chuyển vị
Ví dụ: Cho điểm u biểu diễn bởi
Quay u xung quanh z một góc 90𝑜 được v Tìm v? Giải:
Trang 542.2 Biểu diễn sự chuyển vị
Phép chuyển đổi bao gồm 1 xoay và 1 tịnh tiến
- Với là thành phần của vecto tịnh tiến
- Các thành phần r là của phép xoay
Trang 552.2 Biểu diễn sự chuyển vị
Ví dụ: Một hệ tọa độ B được tạo ra từ hệ tọa độ A bằng cách xoay quanh trục Z một góc 30𝑜, tịnh
tiến theo trục X 4 đơn vị và theo trục Y 3 đơn vị Tìm ma trận chuyển đổi 𝑇𝐵𝐴
Trang 562.2 Biểu diễn sự chuyển vị
Cho hệ tọa độ A ban đầu Sau mỗi phép chuyển đổi ta có hệ tọa độ tương ứng lần lượt là B,C,D,U
Ta có các phương trình chuyển đổi là:
Trang 58Bài tập
Bài 2 Cho điểm trong hệ tọa độ A Điểm được tạo ra từ bằng cách quay quanh trục Z một góc 30𝑜, tịnh tiến 10 đơn vị theo trục X và 5
đơn vị theo trục Y Tìm
Biết
Gợi ý:
Trang 59Bài tập
Bài 3 Cho hệ tọa độ A Xoay A quanh Z một góc
30𝑜 và quanh X một góc 30𝑜, được hệ tọa độ mới
B Tìm phép xoay?
Gợi ý:
Trang 60Bài tập
Bài 4 Cho hệ tọa độ A Xoay A quanh X một góc
30𝑜 và quanh Z một góc 30𝑜, được hệ tọa độ mới
B Tìm phép xoay?
Gợi ý:
Trang 61Nhận xét bài 3 và bài 4
Thứ tự các phép quay là quan trọng, các ma trận được sử dụng để diễn tả các phép quay, không được hoán chuyển khi nhân các ma trận với nhau
Trang 63Bài tập
Bài 6 Cho điểm P trong hệ tọa độ A Quay điểm P quanh trục Y góc 30𝑜 và sau đó quay quanh trục X một góc 45𝑜 Tìm ma trận xoay?
Trang 64Bài tập
Bài 7 Cho các ma trận dịch chuyển sau Tìm 𝑇𝐵𝐶 ?
Trang 65CHƯƠNG 3 ĐỘNG HỌC
THUẬN ROBOT
Trang 663.1 Giới thiệu
Vấn đề cần giải quyết?
Trang 670 0
p a
O n
p a
O n
p a
O n
T
z z
z z
y y
y y
x x
x x
6
Trang 683.2 Trình tự thiết lập phương trình động học
0 Đánh số khâu và khớp
1 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên
các khâu
2 Lập bảng thông số DH (Denavit Hartenberg)
3 Dựa vào các thông số DH xác định các ma trận An
4 Tính các ma trận T và viết các phương trình động
học của robot
Trang 690 Đánh số khâu và khớp
Trang 700 Đánh số khâu và khớp
Trang 711 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở
rộng lên các khâu
Quy tắc bàn tay phải để xác định các hệ trục tọa
độ
Trang 721 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
Quy tắc bàn tay phải để xác định chiều của góc quay quanh một trục tọa độ
Trang 731 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
- Các hệ toạ độ Oxyz phải tuân theo qui tắc bàn tay phải
- Gắn hệ toạ độ lên các khâu Gốc của hệ toạ độ gắn lên khâu thứ n đặt tại giao điểm của pháp tuyến an với trục khớp thứ n+1
- Trục z của hệ toạ độ gắn lên khâu thứ n trùng phương với trục khớp thứ n+1
- Trục x thường được đặt dọc theo pháp tuyến chung và hướng từ khớp n đến n+1 Trong trường hợp các trục khớp cắt nhau thì trục x chọn theo tích vector
1 n
z
Trang 741 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
Lưu ý:
- Gốc chuẩn của 1 robot là khâu 0 (cố định), không tính vào số khâu
- Khâu 1 nối với gốc chuẩn bởi khớp 1
- Không có khớp ở khâu cuối cùng
Trang 751 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
Trang 761 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
Trục 𝑧𝑖−1 được đặt dọc theo trục khớp thứ i Trục 𝑧𝑖 được đặt dọc theo trục khớp thứ i+1
Trang 771 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
Trục 𝑧𝑖−1 được đặt dọc theo trục khớp thứ i Trục 𝑧𝑖 được đặt dọc theo trục khớp thứ i+1
Trang 781 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
Xác định 𝑂𝑖: kẻ đường vuông góc chung giữa
𝑧𝑖−1 và 𝑧𝑖 Khoảng cách giữa 𝑧𝑖−1 và 𝑧𝑖 là 𝑎𝑖
𝑂𝑖 là giao điểm giữa 𝑎𝑖 và 𝑧𝑖
Trang 791 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở
rộng lên các khâu
Xác định 𝑥𝑖: đặt dọc theo 𝑎𝑖, hướng từ 𝑧𝑖−1 đến 𝑧𝑖
Trang 801 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
Xác định 𝑦𝑖: theo quy tắc bàn tay phải
Trang 811 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở
rộng lên các khâu
Chọn gốc 𝑂0, 𝑥0 𝑣à 𝑦0 : trục của hệ {0} trùng với trục của hệ {1} tại vị trí ban đầu khi các biến khớp bằng 0
Trang 821 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
Ví dụ 1
Trang 831 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
Ví dụ 2
Trang 841 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên các khâu
Ví dụ 3
Trang 852 Bộ thông số DH (Denavit Hartenberg)
Trang 863.2 Trình tự thiết lập phương trình động học
2 Bộ thông số DH (Denavit Hartenberg)
Mỗi khâu được đặc trưng bởi 2 kích thước:
- Khoảng cách giữa hai trục 𝑧𝑖−1 và 𝑧𝑖 đo dọc theo 𝑥𝑖 : 𝑎𝑖
- Góc giữa hai trục 𝑧𝑖−1 và 𝑧𝑖: 𝛼𝑖
Mỗi khớp được đặc trưng bởi 2 kích thước:
- Khoảng cách giữa hai khâu 𝑥𝑖−1 và 𝑥𝑖: 𝑑𝑖
- Góc giữa hai khâu 𝑥𝑖−1 và 𝑥𝑖 : 𝜃𝑖
- Các thông số ai, αi, di và θi được gọi là bộ thông số DH
Trang 872 Bộ thông số DH (Denavit Hartenberg)
Trang 882 Bộ thông số DH (Denavit Hartenberg)
Trang 892 Bộ thông số DH (Denavit Hartenberg)
Ví dụ 1: Một tay máy gồm 3 khớp nối phẳng
Trang 902 Bộ thông số DH (Denavit Hartenberg)
Ví dụ 2
Trang 912 Bộ thông số DH (Denavit Hartenberg)
Ví dụ 3
Trang 922 Bộ thông số DH (Denavit Hartenberg)
Ví dụ 4
Trang 932 Bộ thông số DH (Denavit Hartenberg)
Ví dụ 5: Robot SCARA
Trang 943.2 Trình tự thiết lập phương trình động học
0 Đánh số khâu và khớp
1 Chọn hệ tọa độ cơ sở, gắn các hệ tọa độ mở rộng lên
các khâu
2 Lập bảng thông số DH (Denavit Hartenberg)
3 Dựa vào các thông số DH xác định các ma trận An
4 Tính các ma trận T và viết các phương trình động
học của robot
Trang 953.3 Trình tự thiết lập phương trình động học
3 Xác định ma trận A
Trang 963.3 Trình tự thiết lập phương trình động học
3 Xác định ma trận A
- Quay quanh zn-1 một góc θn
- Tịnh tiến dọc theo zn-1 một đoạn dn
- Tịnh tiến dọc theo xn-1 một đoạn an
- Quay quanh xn-1 một góc xoắn αn
Bốn phép biến đổi thuần nhất này thể hiện quan hệ của hệ tọa độ thuộc khâu thứ n so với hệ tọa độ thuộc khâu n-1 và tích của chúng được gọi là ma trận A:
A n = Rot(z,θ)Trans(0,0,d)Trans(a,0,0)Rot(x,α)
Trang 973.3 Trình tự thiết lập phương trình động học
3 Xác định ma trận A
A n = = Rot(z,θ)Trans(0,0,d)Trans(a,0,0)Rot(x,α)
Trang 980 0
0 cos
sin 0
0 sin
cos 0
0 0
0 1
1 0 0 0
1 0 0
0 0 1 0
0 0 1
1 0 0
0
0 1 0
0
0 0 cos
sin
0 0 sin
cos
α α
α α
d
a θ
θ
θ θ
0 0
cos sin
0
sin sin
cos cos
cos sin
cos sin
sin cos
sin cos
d α
α
θ a
α θ
α θ
θ
θ a
α θ
α θ
θ
A n
Trang 99i n
1 i
A T
Ta đã biết: Tn = A1.A2.A3 An
Trang 100Ví dụ 1
Robot 3 bậc
Trang 101Ví dụ 1
Ma trận chuyển hệ trục như sau:
Kết quả:
Trang 102Ví dụ 2
Robot 3 bậc RTR
Trang 103Ví dụ 3
Robot 3 bậc tự do
Trang 104Ví dụ 4
Robot SCARA
Trang 105CHƯƠNG 4
ĐỘNG HỌC
NGƯỢC ROBOT
Trang 1064.1 Giới thiệu
Tính toán tập hợp tất cả giá trị các biến khớp
Trang 1074.1 Giới thiệu
Tồn tại nhiều nghiệm
Trang 1084.1 Giới thiệu
Điều kiện tồn tại nghiệm: vị trí và hướng của
cơ cấu chấp hành phải nằm trong không
gian công tác của cánh tay robot
Trang 1104.1 Giới thiệu
Phương pháp giải bài toán động học ngược:
- Phương pháp đại số
- Phương pháp hình học
Trang 1114.2 Ví dụ
Ví dụ 1: Dùng phương pháp đại số để giải cánh tay robot 2 bậc tự do RR
Phương trình động học thuận:
Trang 1122 ) (
) ( 122 122 12 12 12 1 2 12 1 12 1
2 2
2 2
s s c c l l s
c l s
c l p
px y
2 1
2 2
2 1
2 2
2
2 l l
l l
l p
2 1
2 2
2 2
Trang 1132 a c c
2 2
s
),
(2
2
2 c
s
Trang 114p s
c l
c l s
l
s l l
c l
1
1 1
2 2 2
2
2 2 1
2 2
s s c
c
c12 1 2 1 2 s12 s1c2 c1 s2
(l 2 c 2 +l 1 )c 1 - l 2 s 2 s 1 =p x
l 2 s 2 c 1 +(l 2 c 2 +l 1 )s 1 =p y
Trang 1154.2 Ví dụ
Giải phương trình ta được:
Từ đó suy ra:
2 2 1
2 2
2 1
2 2 1
2 2
1 2
2 2
2
2 2 1
2 2
2 2
1 2
2
1
2
) (
c l l l
l
s l p l
c l p
l c
l s
l
s l l
c l
p s
l
p l
c l
(2
2 2 1
2 2
2 1
2 2 1
2 2
1 2
2 2
2
2 2 1
2 2
1 2
2
2 2
1
2
) (
c l l l
l
s l p l
c l p
l c
l s
l
s l l
c l
l c
l p
s l p
Trang 1164.2 Ví dụ
Cuối cùng ta tìm được:
Kết quả có hai trường hợp
),
1(
(2
Trang 117Ví dụ 1:Lập trình cho cánh tay robot 2 bậc RR
Trang 118Ví dụ 2: Dùng phương pháp đại số để giải cánh tay robot 3 bậc tự do RRR
0 0
0 1
0 0
0
0
12 2 1
1 123
123
12 2 1
1 123
123
3
c l c l s
c T
Trang 119Ví dụ 2: Dùng phương pháp đại số để giải cánh tay robot 3 bậc tự do RRR
l p
2 1
2 2
2 2
2 2
2 1
2 2
2
2 l l
l l
p
p
Trang 120Ví dụ 2: Dùng phương pháp đại số để giải cánh tay robot 3 bậc tự do RRR
Từ đó cũng tính được sin θ2 như sau:
Từ đó ta được:
=>
Tiếp theo là tìm góc θ1 Ta có hệ phương trình:
Thay vào ta lập được phương trình ma trận
(2
2 a c c
),
(2
p s
c l
c l s
l
s l l
c l
1
1 1
2 2 2
2
2 2 1
2 2
Trang 121Ví dụ 2: Dùng phương pháp đại số để giải
cánh tay robot 3 bậc tự do RRR
Giải nghiệm ta được:
Từ đó ta tìm được góc khớp θ1 như sau:
2 1 2
2
2 2 1
2 2 1
) (
) (
) (
s l l
c l
s l p l
c l
2 1 2
2
2 2 1
2 2 1
) (
) (
) (
s l l
c l
s l p l
c l
Trang 122Ví dụ 2:Lập trình cho cánh tay robot 3 bậc RRR
Trang 123Ví dụ 3: Dùng phương pháp đại số để giải cánh tay robot 4 bậc tự do RRRR
Trang 124Ví dụ 3: Dùng phương pháp đại số để giải
4 3 2 1
n n n n
Trang 125Ví dụ 3: Dùng phương pháp đại số để giải cánh tay robot 4 bậc tự do RRRR
𝑐1 = 𝑝𝑦
𝑝𝑥
tan(θ1)= 𝑝𝑦
𝑝𝑥 θ1=atan2(py,px)
Trang 126Ví dụ 3: Dùng phương pháp đại số để giải cánh tay robot 4 bậc tự do RRRR
Trang 127⇔ 𝑛𝑥2 + 𝑛𝑦2 = 𝑎32 ∙ (𝑐232 +𝑠232 ) +𝑎22∙ (𝑐22 +𝑠22) +2𝑎3𝑎2(𝑐23𝑐2 + 𝑠23𝑠2)
⇔ 𝑛𝑥2 + 𝑛𝑦2 = 𝑎32+𝑎22 + 2𝑎3𝑎2 ∙ 𝑐3
⇔ 𝑐3= 𝑛𝑥2+𝑛𝑦2−𝑎3
2 −𝑎222𝑎3𝑎2
Trang 128Ví dụ 3: Dùng phương pháp đại số để giải cánh tay robot 4 bậc tự do RRRR
Trang 129Ví dụ 3: Dùng phương pháp đại số để giải
𝑎3𝑐3+ 𝑎2
Trang 130Ví dụ 3: Dùng phương pháp đại số để giải cánh tay robot 4 bậc tự do RRRR
Trang 132 “ Graphical User Interface Development
Environment ” : môi trường lập trình trực quan giao diện người dùng.
GUI là công cụ để lập các giao diện đồ hoạ người dùng trực quan “VISUAL”, giúp lập trình viên tạo các nút bấm, menu điều khiển chương trình theo hướng sự kiện
Trang 133 Lấy giá trị thuộc tính của đối tượng điều khiển Cú pháp:
bien = get(handles Tên tag_dieu_khien , ' ten thuoc tinh ')
a= get ( handles edit40, ‘String')
b= get ( handles edit43, ‘String')
Gán giá trị thuộc tính cho đối tượng điều khiển Cú pháp:
set(handles Tên tag_dieu_khien , ' ten_thuoc_tinh ',
gia_tri )
set ( handles edit44, ‘string', 20)
Trang 134 Biến đổi từ chuỗi sang số Cú pháp:
str2num (GIA TRI) a= str2num(a)