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

Nhận dạng thông số của rôbôt bằng giải thuật PSO

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 (4.41 MB, 101 trang )


Trang ii




LI CAM ĐOAN

Tôi cam đoan đây là công trình nghiên cứu của tôi.
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công
bố trong bất kỳ công trình nào khác.
Tp. Hồ Chí Minh, ngày… tháng … năm 2013


Đặng Thị Mỹ Chi

Trang iii




LI CM N

Em xin cảm ơn thầy TS. Nguyễn Minh Tâm trong suốt thời gian làm luận văn
đã tận tình chỉ bảo cũng như cung cấp cho em nhiều tài liệu quý giá giúp em hoàn
thành luận văn này.
Em cũng xin chân thành cảm ơn các thầy, cô trong quá trình giảng dạy em ở
lớp cao học kĩ thuật điện tử khóa 2010A, và các thầy cô trong bộ môn Kĩ Thuật Điện
Tử - Khoa Điện Điện Tử của Trường Đại Học Sư Phạm Kĩ Thuật Tp HCM đã trang bị
cho em những kiến thức và nền tảng để em có thể thực hiện và hoàn thành luận văn
này.


Và cuối cùng em xin gửi lời biết ơn tới cha me, các bạn đồng nghiệp, các bạn
cùng lớp đã trao đổi và góp ý, tạo mọi điều kiện thuận lợi cho em trong suốt quá trình
thực hiện luận văn .

Xin chân thành cảm ơn.
Đặng Thị Mỹ Chi

Trang iv




TÓM TT LUN VĂN
Tên đề tài: Nhận dạng thông số của robot bằng giải thuật PSO
Địa điểm nghiên cứu: Trường Đại Học Sư Phạm Kĩ Thuật tp. Hồ Chí Minh
Thời gian: 2011 - 2013
Luận văn trình bày về việc xác định thông số quán tính trong phương trình động
lực học của cánh tay robot 3 bậc tự do gồm 3 khớp xoay sử dụng thuật toán bầy đàn
PSO (Particle Swarm Optimization). Đề tài đã được thực hiện bằng phương pháp mô
phỏng bằng chương trình Simulink và Matlab. Đồng thời tiến hành đánh giá và so sánh
độ chính xác của thuật toán bầy đàn PSO với thuật toán di truyền GA (Genetic
Algorithm).
Kết quả của luận văn là đã xác định được mô hình động lực học của cánh tay
robot 3 bậc tự do, xây dựng thành công mô hình mô phỏng để nhận dạng được 13
thông số quán tính của cánh tay robot bằng thuật toán bầy đàn PSO và thuật toán di
truyền GA. Sai số trong việc nhận dạng của hai phương pháp PSO và GA đều được
tính toán, từ việc so sánh sai số của hai thuật toán cho ta thấy rằng phương pháp ước
lượng thông số của PSO có độ chính xác tốt hơn so với phương pháp GA.
.


Trang v





THESIS SUMMARY
Name of subject: Dynamic identification of arm robot 3 DoF using PSO
Study location: University of Technical Education in HCMC
Time: 2011 -2013
This thesis deals with the dynamic modeling and identification of an arm robot having
3 DoF (Degrees of Freedom) of 3 rotation joints. PSO (Particle Swarm Optimization)
technique and GA (Genetic Algorithm) were used to estimate 13 distinct inertia
parameters of motion equation of the above arm robot. The study was conducted by
simulation using Simulink and Matlab.
The results of the thesis show that the dynamic model of the 3 DoF robot arm was
defined; simulation models were successfully built to identify the 13 inertial
parameters of the robot arm using swarm algorithm PSO and genetic algorithm GA.
The identification errors of both PSO and GA methods were calculated to compare the
performance of these two algorithms. This showed that the method for estimating
parameters using PSO have better accuracy than GA.

Trang vi




MC LC
Trang tựa TRANG
Quyết định giao đề tài

Lý lịch cá nhân i
Lời cam đoan ii
Cảm tạ iii
Tóm tắt iv
Mục lục vi

Danh sách các chữ viết tắt viii
Danh sách các hình ix
Danh sách các bảng xi
Chưng 1: Tổng quan
1.1 Tổng quan về hướng nghiên cứu 1
1.2 Kết quả nghiên cứu trong và ngoài nước 2
1.3 Mục tiêu và đối tượng nghiên cứu. 4
Chưng 2: C s lý thuyết
2.1 Lý thuyết về robot 6
2.1.1 Giới thiệu chung về Robot 6
2.1.2 Các thông số về cánh tay robot 7
a. Bậc tự do của robot (DOF: Degrees Of Freedom) 7
b. Hệ tọa độ (co-ordinate frames) 7
c. Các phép biến đổi thuần nhất 8
2.1.3 Phương trình động học của robot (Kinematic Equations) 9
2.1.4 Động lực học của robot (dynamic of robot) 12
a. Cơ học Lagrange với các vấn đề động lực của robot. 13
b. Phương trình động lực học của cánh tay robot n bậc tự do 13
2.2 Các phương pháp nhận dạng thông số động lực học cho robot 15
2.2.1 Tổng quan về các phương pháp nhận dạng thông số động lực học của robot 15
2.2.2 Các phương pháp nhận dạng thông số động lực học 17
2.3 Thuật toán bầy đàn (PSO: Particle Swarm Optimization) 22

Trang vii





2.3.1. Giới thiệu về thuật toán PSO: 22
2.3.2 Xây dựng giải thuật PSO: 25
a) Các bước trong giải thuật PSO: 25
b) Lưu đồ giải thuật của thuật toán PSO: 26
c) Những vấn đề cần quan tâm khi xây dựng giải thuật PSO 27
2.3.3 Đặc điểm và ứng dụng của giải thuật PSO 31
2.4. Sơ lược về thuật toán di truyền GA (Genetic Algorithm) 32
2.4.1 Giới thiệu về thuật toán di truyền GA . 32
2.4.2. Thuật toán di truyền – GA (Genetic algorithm). 33
Chưng 3: Mô phng nhn dng thông s quán tính ca cánh tay robot 3 bc.

3.1. Cấu trúc của cánh tay robot 3 bậc tự do gồm 3 khớp xoay 42
3.1.1 Các thông số Denavit-Hartenberg của cánh tay robot 3 bậc 42
3.1.2 Phương trình động lực học của cánh tay robot 3 bậc 43
3.1.3 Các thông số mô hình cần nhận dạng 51
3.2 Nhận dạng các thông số quán tính 54

3.2.1. Sơ đồ khối của thuật toán nhận dạng bằng PSO 56
3.2.2. Sơ đồ mô hình mô phỏng phương trình động lực học của cánh tay robot. 55
3.2.3. Thuật toán PSO để nhận dạng thông số 56
3.2.4. Thuật toán GA trong việc nhận dạng các thông số 60
3.3 Tiến trình mô phỏng 64
3.4 Kết quả mô phỏng và nhận xét 65
3.5 Đánh giá kết quả nhận dạng 77

Chưng 4: Kết lun 81

Tài liệu tham khảo 83
Phụ lục 1. Code chương trình PSO được viết trên Matlab 86
Phụ lục 2. Code chương trình GA được viết trên Matlab 98


Trang viii




DANH SÁCH
CÁC CH VIT TT/ Kệ HIU KHOA HC

1. DOF (Degrees Of Freedom)
2. DH (Denavit- Hartenberg)
3. PSO (Particle Swarm Optimization)
4. GA (Genetic Algorithm)
5. NST (Nhiễm Sắc Thể)

Trang ix




DANH SÁCH CÁC HÌNH
HÌNH TRANG
Hình 2.1 Các tọa độ suy rộng của robot 8
Hình 2.2 Chiều dài và góc xoắn của 1 khâu 10
Hình 2.3 Các thông số của khâu: θ, d, a và α. 11
Hình 2.4 Khái niệm về sự thay đổi điểm tìm kiếm của PSO. 24

Hình 2.5 Chuyển động của cá thể 28
Hình 2.6 Sự tiến hóa trong tự nhiên 32
Hình 2.7 Phương pháp giải bài toán dùng GA 33
Hình 2.8 Lưu đồ giải thuật di truyền trong bài toán kỹ thuật 34
Hình 2.9 Mã hóa số thực 36
Hình 2.10 Lai ghép rời rạc 36
Hình 2.11 Lai ghép BLX-

37
Hình 2.12 Lai ghép số học
5.0

37
Hình 2.13 Lai ghép đường thẳng 38
Hình 2.14 Lai ghép trực giác 38
Hình 2.15 Đột biến ngẫu nhiên 38
Hình 2.16 Đột biến không đồng nhất 39
Hình 3.1 Sơ đồ cánh tay robot 3 bậc tự do 3 khớp xoay (RRR) 42
Hình 3.2 Hệ thống nhận dạng sử dụng PSO 54
Hình 3.3 Mô hình mô phỏng hệ thống nhận dạng bằng PSO 55
Hình 3.4 Tín hiệu mô men tham chiếu và momen nhận dạng
được bằng PSO theo quĩ đạo mô phỏng (1) và (2). 66
Hình 3.5 Tín hiệu mô men tham chiếu và momen nhận
dạng được bằng PSO theo quĩ đạo mô phỏng (3) và (4). 67
Hình 3.6 Tín hiệu mô men tham chiếu và momen nhận
dạng được bằng PSO theo quĩ đạo mô phỏng (5) và (6) 68
Hình 3.7 Tín hiệu mô men tham chiếu và momen nhận dạng được
bằng GA theo quĩ đạo mô phỏng (1) và (2) 69

Trang x





Hình 3.8 Tín hiệu mô men tham chiếu và momen nhận dạng được
bằng GA theo quĩ đạo mô phỏng (3) và (4) 70
Hình 3.9 Tín hiệu mô men tham chiếu và momen nhận dạng
được bằng GA theo quĩ đạo mô phỏng (5) và (6) 71
Hình 3.10 Sai số của quá trình nhận dạng bằng PSO ứng với
6 quĩ đạo mô phỏng 73
Hình 3.11 Sai số của quá trình nhận dạng bằng GA ứng với
6 quĩ đạo mô phỏng 74
Hình 3.12 Momen tính được với các thông số nhận dạng được
bằng phương pháp PSO ứng với 3 quĩ đạo đánh giá 78
Hình 3.13 Momen tính được với các thông số nhận dạng được
bằng phương pháp GA ứng với 3 quĩ đạo đánh giá 79

Trang xi




DANH SÁCH CÁC BNG

BNG TRANG
Bng 3.1: Bảng thông số DH của cánh tay robot 3 bậc RRR 42
Bng 3.2 Các biến để nhận dạng các thông số quán tính. 53
Bng 3.3 Một số trường hợp mô phỏng để lựa chọn hệ số c1, c2
của thuật toán PSO 58
Bng 3.4 Một số trường hợp mô phỏng để lựa chọn hệ số w

của thuật toán PSO 58
Bng 3.5 Một số trường hợp mô phỏng để lựa chọn kích thước
quần thể của thuật toán PSO 59
Bng 3.6 Một số trường hợp mô phỏng để lựa chọn số vòng
lặp tối đa của thuật toán PSO 60
Bng 3.7 Một số trường hợp mô phỏng để lựa chọn hệ số lai chéo
của thuật toán GA 62
Bng 3.8 Một số trường hợp mô phỏng để lựa chọn hệ số đột biến
của thuật toán GA 63
Bng 3.9 Một số trường hợp mô phỏng để lựa chọn kích thước quần thể
của thuật toán GA 63
Bng 3.10 Một số trường hợp mô phỏng để lựa chọn số vòng lặp tối đa
của thuật toán GA 64
Bng 3.11 Giá trị ước lượng được của các thông số a bằng
thuật toán PSO và GA 75
Bng 3.12 Giá trị ước lượng được của các thành phần của
ma trận quán tính bằng phương pháp PSO và GA 76
Bng 3.13: Trị trung bình (mean), độ lệch chuẩn và phương sai
của các giá trị ước lượng được 77
Bng 3.14: Sai số (RAE) của mỗi phương pháp theo các quĩ đạo đánh giá 80

HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh
Tâm
Trang 1
Chưng 1
TNG QUAN

1.1 Tổng quan về hưng nghiên cứu
Ngày nay, với sự phát triển vượt bậc của khoa học và công nghệ, con người đã
chế tạo ra vô số những loại robot công nghiệp nói chung và cánh tay robot nói riêng

với nhiều tính năng hữu dụng để phục vụ con người trong hầu hết các lĩnh vực trong
đời sống của chúng ta. Robot công nghiệp ngày càng đóng vai trò quan trọng không
những trong các dây chuyền sản xuất hiện đại mà còn trong nhiều lĩnh vực khác như
y tế, quốc phòng [1] v.v Do đó, việc nâng cao tính năng cũng như hiệu quả hoạt
động của robot luôn luôn là một yêu cầu cấp thiết và là mục tiêu chính của các nhà
nghiên cứu.
Để nâng cao tính năng hoạt động của robot, ta cần có một phương pháp điều
khiển robot một cách hiệu quả. Việc thiết kế hệ thống điều khiển thường dựa trên
mô hình robot và hiệu quả của nó phụ thuộc trực tiếp vào độ chính xác của các
thông số động lực học của robot. Tuy nhiên, các mô hình và hệ thống điều khiển
robot được xem là các hệ thống phức tạp, bởi vì nó có liên quan đến tính phi tuyến,
số trục hoặc số bậc của robot, việc thay đổi theo môi trường làm việc, đặc tính phi
tuyến của tải… và có nhiều thông số của mô hình mà ta khó có thể xác định một
cách trực tiếp được như các thông số có liên quan đến quán tính và ma sát trong
phương trình động lực học của robot. Vì vậy việc xác định các thông số động lực
học cần được tiến hành để xây dựng các thuật toán điều khiển hiệu quả hơn và vấn
đề này đang ngày càng thu hút nhiều sự quan tâm của các nhà nghiên cứu [22]. Tuy
nhiên, cho đến nay vẫn chưa có nhiều nghiên cứu về việc nhận dạng các thông số
động lực học cho robot nói chung và cánh tay robot nói riêng.
Bên cạnh đó, với ưu điểm tìm kiếm và tối ưu hóa của thuật toán bầy đàn, hiện
nay đã có rất nhiều nhà nghiên cứu trên thế giới cũng như trong nước đã nghiên cứu
và ứng dụng thuật toán bầy đàn (PSO: Particle Swarm Optimization) trong nhiều
ứng dụng khác nhau. Trong lĩnh vực robot, đã có các nghiên cứu ứng dụng thuật
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh
Tâm
Trang 2
toán PSO để tìm kiếm các thông số tối ưu cho việc điều khiển robot ví dụ như các
thông số của bộ điều khiển PID [4]; và tìm kiếm các thông số động học của robot
[21]. Do đó, PSO sẽ là một công cụ hiệu quả để xác định các thông số tối ưu trong
phương trình động lực của robot. Vì vậy đề tài này được thực hiện nhằm để đánh

giá khả năng ước lượng các thông số của mô hình robot của thuật toán PSO. Sau
đây là tóm tắt một số kết quả nghiên cứu trong và ngoài nước có liên quan đến việc
nhận dạng thông số động lực học của cánh tay robot và thuật toán PSO.
1.2 Kết qu nghiên cứu trong vƠ ngoƠi nưc
- Năm 2004, các thành viên của IEEE là Dragan Kostic, Bram de Jager và Ron
Hesen đã thực hiện một nghiên cứu với đề tài “Modeling and Identification for
high-performance robot control: an RRR- robotic arm case study” [11]. Nghiên
cứu này đã giải thích về qui trình để xác định được mô hình động học và động
lực học đúng cho việc thiết kế điều khiển robot, tiến hành thực nghiệm để nhận
dạng các thông số quán tính và thông số ma sát của mô hình sử dụng ma trận
hồi qui tuyến tính qua phép biến đổi phương trình động lực học ngược và đánh
giá bằng phương pháp ước lượng bình phương cực tiểu.
- Năm 2007, Katayon Radkhah, Dana Kulic và Elilzabeth Croft ở khoa cơ điện
tử, trường đại học British Columbia, Vancouver, Canada đã thực hiện một
nghiên cứu về đề tài “Dynamic Parameter identification for the CRS A460
robot” [12]. Nghiên cứu này thực hiện việc nhận dạng các thông số động lực
học của robot bằng ma trận hồi qui tuyến tính của phương trình động lực học,
tối ưu hóa các thông số bằng công cụ Optimization toolbox của matlab và đánh
giá bằng phương pháp bình phương cực tiểu.
- Năm 2008, Nidal Farhat, Vicente Mata, Alvaro Page và Francisco Valero ở
trường đại học Politecnica de Valencia, Tây Ban Nha đã nghiên cứu về đề tài
“indentification of dynamic parameters of a 3-DOF RPS parallel manipulator”
[17]. Đề tài tiến hành nhận dạng các thông số quán tính của phương trình động
lực học bằng phương trình hồi qui tuyến tính của phương trình động lực học
ngược, đánh giá bằng phương pháp ước lượng bình phương cực tiểu.
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh
Tâm
Trang 3
- Năm 2010, Jun Wu, Jingsong Wang và Zheng You ở viện khoa học và công
nghệ, trường đại học Tsinghua, Bắc Kinh, Trung Quốc đã nghiên cứu tổng quan

về việc nhận dạng thông số động lực học của robot. [9]
- Năm 2011, Zafer Bingul và Oguzhan Karahan ở bộ môn cơ điện tử, trường đại
học Kocaeli, Thổ Nhĩ Kỳ đã nghiên cứu về đề tài “Dynamic identification of
Staubli RX-60 robot using PSO and LS methods” [8]. Nghiên cứu này đã tiến
hành xác định các thông số quán tính cho 3 link đầu tiên của robot Staubli RX-
60, sử dụng thuật toán PSO và phương pháp bình phương cực tiểu (LS). Trong
nghiên cứu này, họ sử dụng mô hình động lực học ngược để tiến hành nhận
dạng các thông số qua 6 lần thử nghiệm và so sánh kết quả của hai phương pháp
này. Với kết luận là kết quả nhận dạng bằng phương pháp PSO thì tốt hơn so
với phương pháp bình phương cực tiểu với độ chính xác được xác định theo
mức độ sai lệch là trong ngưỡng từ 0,016 – 0,2526 đối với phương pháp nhận
dạng bằng LS và từ 0,0409 – 0,0806 đối với phương pháp PSO.
- Năm 2011, Tayebeh Mostajabi và Javad Poshtan ở khoa kỹ thuật điện tử,
trường đại học khoa học và công nghệ Iran, Tehran, Iran đã thực hiện đề tài thạc
sĩ về “Control and System indentification via Swarm and Evolutionary
Algorithms” [10]. Nghiên cứu này giới thiệu tổng quát về việc nhận dạng và
điêu khiển hệ thống bằng các thuật toán tối ưu như PSO (Particle Swarm
Opitmization), ACO (Ant Colony Opitmization), BFOA (Bacterial Foraging
Optimization Algorithm), WOA (Wasp Optimization Algorithm) và BOA (Bee
Optimization Algorithm).
- Năm 2012, tiến sĩ Mehrzad Namvar và cộng sự Hossein Jahandideh ở khoa cơ
điện tử trường đại học công nghệ Tehran, Iran đã nghiên cứu về đề tài “Use of
PSO in parameter estimation of robot dynamics” [7]. Nghiên cứu này áp dụng
thuật toán PSO để nhận dạng các thông số quán tính trong phương trình động
lực học của cánh tay robot 3 bậc gồm 1 khớp xoay và 2 khớp trượt bằng phương
trình hồi qui tuyến tính từ phương trình động lực học ngược, sử dụng công cụ
Optimization toolbox của matlab, và so sánh kết quả giữa phương pháp tối ưu
bằng thuật toán PSO và các phương pháp ước lượng bằng bình phương cực tiểu
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh
Tâm

Trang 4
(LS), tổng bình phương cực tiểu (TLS) và RLS (Robust Least Squares). Nghiên
cứu này chỉ ra rằng phương pháp PSO đã cho ra kết quả ước lượng tốt hơn các
phương pháp khác kể trên.
Một số nghiên cứu trong nước:
- Năm 2011, Huỳnh Đức Chấn, trường ĐH Lạc Hồng Đồng Nai đã thực hiện
nghiên cứu về đề tài “ng dụng giải thuật bầy đàn để xác định thông số bộ PID
trong điều khiển tốc độ động cơ không đồng bộ ba pha”[4]. .Nghiên cứu này đã
ứng dụng thuật toán PSO để nhận dạng được 2 thông số K
p
và K
I
của bộ PID
trong điều khiển tốc độ động cơ không đồng bộ ba pha.
1.3 Mc tiêu vƠ đi tưng nghiên cứu.
- Mục tiêu nghiên cứu
Mục đích nghiên cứu của đề tài này là, nghiên cứu về mô hình cánh tay robot,
giới thiệu tổng quan về các nghiên cứu về nhận dạng thông số động lực học từ trước
đến nay. Áp dụng phương pháp nhận dạng thông số bằng giải thuật bầy đàn (PSO:
Particle Swarm Optimization) để nhận dạng thông số quán tính của cánh tay robot 3
bậc tự do gồm 3 khớp xoay. Việc tìm kiếm các thông số tối ưu được thực hiện hoàn
toàn bằng thuật toán PSO mà không cần sử dụng đến phương trình hồi qui tuyến
tính của phương trình động lực học.
So sánh và đánh giá kết quả nhận dạng với phương pháp nhận dạng bằng giải
thuật di truyền (GA: Genetic algorithm). Nghiên cứu được tiến hành bằng phương
pháp mô phỏng bằng chương trình Matlab và Simulink.
- Đối tượng nghiên cứu
Đề tài tập trung nghiên cứu các vấn đề sau
- Nghiên cứu, tìm hiểu về mô hình cánh tay robot, phương trình động lực học.
- Tìm hiểu tổng quan về các phương pháp nhận dạng thông số động lực học

của cánh tay robot.
- Nghiên cứu về thuật toán bầy đàn PSO và giải thuật di truyền GA.
- Tiến hành mô phỏng bằng chương trình Matlab để tìm ra thông số quán tính
của cánh tay robot 3 bậc tự do gồm 3 khớp xoay bằng thuật toán bầy đàn
PSO và giải thuật di truyền GA.
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh
Tâm
Trang 5
- Đánh giá và nhận xét về phương pháp nhận dạng bằng thuật toán bầy đàn
PSO so với giải thuật di truyền GA.
- Bố cục của đề tài
Đề tài được thực hiện với 4 chương chính. Chương 1 giới thiệu tổng quan về lí do
chọn đề tài, các nghiên cứu trong và ngoài nước có liên quan và nhiệm vụ nghiên
cứu.
Chương 2 trình bày cơ sở lý thuyết tổng quát về mô hình động lực học của cánh tay
robot, thuật toán bầy đàn PSO và thuật toán di truyền GA.
Chương 3 trình bày chi tiết về các vấn đề sau:
- Cách xác định mô hình động lực học của cánh tay robot RRR có 3 bậc tự do.
- Xây dựng mô hình mô phỏng phương trình động lực học của cánh tay robot
RRR.
- Cách sử dụng thuật toán PSO và GA để nhận dạng các thông số của mô hình
động lực học của cánh tay robot.
- Trình bày một số kết quả mô phỏng và so sánh đánh giá hiệu quả nhận dạng
của hai phương pháp PSO và GA.
Cuối cùng, chương 4 là kết luận về đề tài nghiên cứu, những giới hạn và hướng phát
triển tiếp theo của đề tài.


HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh Tâm


Trang 6
Chưng 2
C S Lụ THUYT

2.1 Lý thuyết về robot
2.1.1 Gii thiu chung về Robot [2]
- Robot là một loại máy móc được điều khiển tự động, được lập trình sẵn, sử dụng
vào nhiều mục đích khác nhau, có khả năng vận động theo nhiều hơn 3 trục, có
thể cố định hoặc di động tùy theo những ứng dụng của nó trong công nghiệp tự
động.
- Quá trình phát triển của robot bắt đầu từ những cơ cấu, máy móc bắt chước các
hoạt động cơ bắp của con người. Đầu thập kỷ 60, một công ty của Mỹ AMF
(American Machine and Foundry Company) đã giới thiệu một loại máy tự động
vạn năng được gọi là “Người máy công nghiệp” (Industrial Robot). Ngày nay
người ta đặt tên người máy công nghiệp (hay robot công nghiệp) cho những loại
thiết bị có dáng dấp và một vài 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 hay còn gọi là cánh tay robot.
- Tính năng làm việc của robot ngày càng được nâng cao, nhất là khả năng nhận
biết và xử lý. Năm 1967 ở trường Đại học tổng hợp Stanford (Mỹ) đã chế tạo ra
mẫu robot hoạt động theo mô hình “mắt-tay”, có khả năng nhận biết và định
hướng bàn kẹp theo vị trí vật kẹp nhờ các cảm biến. Năm 1974 Công ty Mỹ
Cincinnati đưa ra loại robot được điều khiển bằng máy vi tính, gọi là robot T3
(The Tomorrow Tool: Công cụ của tương lai). Robot này có thể nâng được vật
có khối lượng đến 40 KG.
- Có thể nói, Robot là sự tổ hợp khả năng hoạt động linh hoạt của các cơ cấu điều
khiển từ xa với mức độ “tri thức” ngày càng phong phú của hệ thống điều khiển
theo chương trình số cũng như kỹ thuật chế tạo các bộ cảm biến, công nghệ lập
trình và các phát triển của trí khôn nhân tạo,
- Việc nâng cao tính năng hoạt động của robot không ngừng phát triển. Các robot
được trang bị thêm các loại cảm biến khác nhau để nhận biết môi trường xung

quanh, cùng với những thành tựu to lớn trong lĩnh vực Tin học - Điện tử đã tạo
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh Tâm

Trang 7
ra các thế hệ robot với nhiều tính năng đăc biệt. Số lượng robot ngày càng gia
tăng, giá thành ngày càng giảm. Nhờ vậy, robot ngày càng có vai trò quan trọng
trong các dây chuyền sản xuất hiện đại.
- Các hệ thống điều khiển robot được xem như là các hệ thống phức tạp, việc thiết
kế hệ thống điều khiển liên quan đến việc xác định mô hình động học của hệ
thống. Nó phức tạp bởi việc điều khiển liên quan đến tính phi tuyến, số trục hoặc
số bậc của robot và việc thay đổi theo môi trường làm việc. Và vì mô hình lý
thuyết cho hệ thống này không hoàn toàn giống với môi trường làm việc thực tế
của hệ thống điều khiển.
- Cánh tay robot (tay máy) là kết cấu cơ khí gồm các khâu liên kết với nhau bằng
các khớp động để có thể tạo nên những chuyển động cơ bản của robot. Nguồn
động lực là các động cơ điện (một chiều hoặc động cơ bước), các hệ thống xy
lanh khí nén, thuỷ lực để tạo động lực cho tay máy hoạt động. Dụng cụ thao tác
được gắn trên khâu cuối của robot, dụng cụ của robot có thể có nhiều kiểu khác
nhau như: dạng bàn tay để nắm bắt đối tượng hoặc các công cụ làm việc như mỏ
hàn, đá mài, đầu phun sơn
2.1.2 Các thông s về cánh tay robot
a. Bc t do ca robot (DOF: Degrees Of Freedom)
Bậc tự do là số khả năng chuyển động của một cơ cấu (chuyển động quay hoặc
tịnh tiến). Để dịch chuyển được một vật thể 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. Số bậc tự do mà một cơ cấu có được là số
biến vị trí độc lập phải được xác định để xác định vị trí của tất cả các thành phần
của cơ cấu. Đối với robot công nghiệp điển hình, vì cơ cấu thường là một chuỗi
động học mở và vị trí của mỗi khớp được xác định bởi một biến riêng biệt nên số
lượng của các khớp bằng số bậc tự do. [3]
b. H ta độ (co-ordinate frames) [2]

Mỗi robot thường gồm nhiều khâu (link) liên kết với nhau qua các khớp (joint)
tạo thành một xích động học xuất phát từ một khâu cơ bản đứng yên. Hệ tọa độ gắn
với khâu cơ bản gọi là hệ toạ độ cơ bản (hay hệ toạ độ chuẩn). Các hệ toạ độ trung
gian khác gắn với các khâu động gọi là hệ toạ độ suy rộng. Trong từng thời điểm
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh Tâm

Trang 8
hoạt động, các toạ độ suy rộng xác định cấu hình của robot bằng các chuyển dịch
dài hoặc các chuyển dịch góc cuả các khớp tịnh tiến hoặc khớp quay (xem hình
2.1). Các toạ độ suy rộng còn được gọi là biến khớp.

Hình 2.1: Các tọa độ suy rộng của robot [2]
Các khâu của robot thường thực hiện hai chuyển động cơ bản sau :
• Chuyển động tịnh tiến theo hướng x,y,z trong không gian Đề-các, thông thường
tạo nên các hình khối, các chuyển động này thường ký hiệu là T (Translation) hoặc
P (Prismatic).
• Chuyển động quay quanh các trục x,y,z ký hiệu là R (Rotation).
Tuỳ thuộc vào số khâu và sự tổ hợp các chuyển động (R và T) mà tay máy có các
kết cấu khác nhau với vùng làm việc khác nhau.
c. Các phép biến đổi thuần nhất [2]
Phép biến đổi thuần nhất mô tả quan hệ về vị trí và hướng giữa robot và vật thể.
H ta độ thuần nhất :
Để biểu diễn một điểm trong không gian ba chiều, người ta dùng Vectơ điểm (Point
vector). Vectơ điểm thường được ký hiệu bằng các chữ viết thường như u, v, x1 . . .
để mô tả vị trí của điểm U, V, X1
Nếu i, j, k là các vec tơ đơn vị của một hệ toạ độ nào đó, ta có
= + + 


(2.1)

với a, b, c là toạ độ vị trí của điểm V trong hệ đó.


HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh Tâm

Trang 9
Phép biến đổi tịnh tiến (T: Translation)
Gọi u là vectơ điểm biểu diễn điểm cần biến đổi tịnh tiếnu =

x y z

T
, h là vectơ
dẫn


= + + 


được biểu diễn bằng một ma trận T gọi là ma trận chuyển đổi.
= 

, , 

=

1 0 0 
0 1 0 
0 0 1 
0 0 0 1


(2.2)
v là vectơ biểu diễn điểm sau khi đã biến đổi. Ta có:
v = Trans(a,b,c) u (2.3)
Phép quay (Rotation) quanh các trc to độ: [3]
Giả sử ta cần quay một điểm hoặc một vật thể xung quanh trục toạ độ nào đó với
góc quay θ
o
, ta lần lượt có các ma trận chuyển đổi như sau :


, 
0

=

1 0 0 0
0 cos  sin  0
0 sin  cos  0
0 0 0 1

(2.4)


, 
0

=

cos  0 sin  0

0 1 0 0
sin  0 cos  0
0 0 0 1

(2.5)


, 
0

=

cos  sin  0 0
sin  cos  0 0
0 0 1 0
0 0 0 1

(2.6)
2.1.3 Phưng trình động hc ca robot (Kinematic Equations)
Bất kỳ một robot nào cũng có thể coi là một tập hợp các khâu (links) gắn liền với
các khớp (joints). Ta đặt trên mỗi khâu của robot một hệ toạ độ. Sử dụng các phép
biến đổi thuần nhất có thể mô tả vị trí tương đối và hướng giữa các hệ toạ độ này.
Denavit. J. đã gọi biến đổi thuần nhất mô tả quan hệ giữa một khâu và một khâu kế
tiếp là một ma trận A. Nghĩa là ma trận A là một mô tả biến đổi thuần nhất bởi phép
quay và phép tịnh tiến tương đối giữa hệ toạ độ của hai khâu liền nhau. A
1
mô tả vị
trí và hướng của khâu đầu tiên; A
2
mô tả vị trí và hwớng của khâu thứ hai so với

khâu thứ nhất. [2] Như vậy vị trí và hướng của khâu thứ hai so với hệ toạ độ gốc
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh Tâm

Trang 10
được biểu diễn bởi ma trận T
2
= A
1
.A
2
và tương tự, A
3
mô tả khâu thứ ba so với
khâu thứ hai nên ta có T
3
= A
1
.A
2
.A
3
; v.v
Nếu một robot có 6 khâu ta có mô tả mối quan hệ về hướng và vị trí của khâu chấp
hành cuối đối với hệ toạ độ gốc là T
6
= A
1
.A
2
.A

3
.A
4
.A
5
.A
6
.
Chuyển vị T
6
như vậy sẽ bao gồm các phần tử :

6
=







0






0







0
0 0 0 1

(2.7)
Các thông số Denavit- Hartenberg (DH):
Một robot bao gồm nhiều khâu cấu thành từ các khâu nối tiếp nhau thông qua các
khớp động. Gốc chuẩn (base) của một robot là khâu số 0 và không tính vào số các
khâu. Khâu 1 nối với khâu chuẩn (khâu 0) bởi khớp 1 và không có khớp ở đầu mút
của khâu cuối cùng. Bất kỳ khâu nào cũng được đặc trưng bởi hai kích thước:
Độ dài pháp tuyến chung: a
n
.
Góc giữa các trục trong mặt phẳng vuông góc với a
n
: α
n
.

Hình 2.2: Chiều dài và góc xoắn của 1 khâu [2]
Mỗi trục sẽ có hai pháp tuyến với nó, mỗi pháp tuyến dùng cho mỗi khâu (trước và
sau một khớp). Vị trí tương đối của hai khâu liên kết như thế được xác định bởi d
n

là khoảng cách giữa các pháp tuyến đo dọc theo trục khớp n và θ
n

là góc giữa các
pháp tuyến đo trong mặt phẳng vuông góc với trục.
d
n
và θ
n
thường được gọi là khoảng cách và góc giữa các khâu.
Để mô tả mối quan hệ giữa các khâu ta gắn vào mỗi khâu một hệ toạ độ.

HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh Tâm

Trang 11
Nguyên tắc chung để gắn hệ tọa độ lên các khâu như sau: [5]
+ 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 a
n
với trục
khớp thứ n+1. Trường hợp hai trục khớp cắt nhau, gốc toạ độ sẽ đặt tại chính điểm
cắt đó. Nếu các trục khớp song song với nhau, gốc toạ độ được chọn trên trục khớp
của khâu kế tiếp, tại điểm thích hợp.
+ Trục z của hệ toạ độ gắn lên khâu thứ n đặt dọc theo 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 vectơ 

× 
1
.
Trường hợp khớp quay thì θ
n
là các biến khớp, trong trường hợp khớp tịnh tiến thì
d

n
là biến khớp và a
n
bằng 0.
+ Trục y được chọn theo qui tắc bàn tay phải.
Các thông số a
n
, α
n
, d
n
và θ
n
được gọi là bộ thông số Denavit- Hartenberg.

Hình 2.3: Các thông số của khâu: θ, d, a và α.[3]
Trình tự thiết lập hệ phương trình động học của robot:
Để thiết lập hệ phương trình động học của robot, ta tiến hành theo các bước sau [2] :
Bước 1
: Chọn hệ toạ độ cơ sở, gắn các hệ toạ độ mở rộng lên các khâu.
Việc gắn hệ toạ độ lên các khâu đóng vai trò rất quan trọng khi xác lập hệ
phương trình động học của robot, thông thường đây cũng là bước khó nhất. Trong
thực tế, các trục khớp của robot thường song song hoặc vuông góc với nhau, đồng
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh Tâm

Trang 12
thời thông qua các phép biến đổi của ma trận A ta có thể xác định các hệ toạ độ gắn
trên các khâu của robot.
Khi gắn hệ toạ độ lên các khâu, phải tuân theo các phép biến đổi của ma trận
A

n
đó là bốn phép biến đổi: A
n
= Rot(z,θ) Trans(0,0,d) Trans(a,0,0) Rot(x,α). Nghĩa
là ta coi hệ toạ độ thứ n+1 là biến đổi của hệ toạ độ thứ n; các phép quay và tịnh
tiến của biến đổi này phải là một trong các phép biến đổi của A
n
, các thông số DH
cũng được xác định dựa vào các phép biến đổi này. Trong quá trình gắn hệ tọa độ
lên các khâu, nếu xuất hiện phép quay của trục z
n
đối với z
n-1
quanh trục y
n-1
thì vị
trí ban đầu của robot đã giả định là không đúng, ta cần chọn lại vị trí ban đầu khác
cho robot.
Bước 2
: Lập bảng thông số DH (Denavit Hartenberg).
Bước 3
: Dựa vào các thông số DH xác định các ma trận A
n
.
Bước 4
: Tính các ma trận T và viết các phương trình động học của robot.
2.1.4 Động lc hc ca robot (dynamic of robot)[5]
Nghiên cứu động lực học robot là công việc cần thiết khi phân tích cũng như tổng
hợp quá trình điều khiển chuyển động. Việc nghiên cứu động lực học robot thường
giải quyết hai nhiệm vụ sau đây :

1/ Xác định momen và lực động xuất hiện trong quá trình chuyển động. Khi đó qui
luật biến đổi của biến khớp q
i
(t) coi như đã biết.
2/ Xác định các sai số động lực học, tức là sai lệch so với qui luật chuyển động
theo chương trình. Lúc này cần khảo sát phương trình chuyển động của robot có
tính đến đặc tính động lực của động cơ và các khâu.
Có nhiều phương pháp nghiên cứu động lực học robot, nhưng thường gặp hơn cả
là phương pháp cơ học Lagrange, cụ thể là dùng phương trình Lagrange - Euler. Đối
với các khâu, khớp của robot, với các nguồn động lực và kênh điều khiển riêng biệt,
không thể bỏ qua các hiệu ứng trọng trường (gravity effect), quán tính (inertia),
tương hỗ (Coriolis), ly tâm (centripetal) mà những khía cạnh này chưa được xem
xét đầy đủ trong cơ học cổ điển; Cơ học Lagrange nghiên cứu các vấn đề nêu trên
như một hệ thống khép kín nên đây là nguyên lý cơ học thích hợp đối với các bài
toán động lực học robot.
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh Tâm

Trang 13
a. Cơ học Lagrange với các vấn đề động lực của robot.[5]
Hàm Lagrange của một hệ thống năng lượng được định nghĩa như trong biểu thức
(2.8):
L = K – P (2.8)
Trong đó: K là tổng động năng của hệ thống; P là tổng thế năng.
K và P đều là những đại lượng vô hướng nên có thể chọn bất cứ hệ toạ độ thích hợp
nào để bài toán được đơn giản. Đối với một robot có n khâu, ta có:
=





=1
 à =




=1
;i=1…n; n là số bậc tự do (2.9)
 đây, Ki và Pi là động năng và thế năng của khâu thứ i. Ta biết mỗi đại lượng Ki
và Pi là một hàm số phụ thuộc nhiều biến số:


= 



, 


à 

= 




(2.10)
Với qi là toạ độ suy rộng của khớp thứ i. Nếu khớp thứ i là khớp quay thì q
i
là góc

quay θ
i
, còn nếu là khớp tịnh tiến thì q
i
là độ dài tịnh tiến d
i
.
Ta định nghĩa: Lực tác dụng lên khâu thứ i (i=1, 2, , n) với quan niệm là lực tổng
quát (Generalized forces), nó có thể là một lực hoặc một momen (phụ thuộc vào
biến khớp qi là tịnh tiến hoặc quay), được xác định bởi:


=










(2.11)
Phương trình (2.11) trên được gọi là phương trình Lagrange-Euler, hay thường được
gọi tắt là phương trình Lagrange.
b. Phưng trình chuyển động (phưng trình động lc hc) ca cánh tay
robot có n bc t do [5]
Phương trình Euler-Lagrange dạng tổng quát được viết như trong biểu thức (2.12):



=










(2.12)
Trong đó L được xác định theo biểu thức (2.8).
Ta có tổng động năng của cơ cấu có n link (khâu) như trong biểu thức (2.13).
=
1
2

(






+ 







)

=1
(2.13)
Trong đó, I
i
là inertia tensor của link I quanh trọng tâm m
i
được biểu diễn theo hệ
tọa độ chuẩn (frame 0) và được xác định theo biểu thức (2.14).
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh Tâm

Trang 14


= R
0
i


(R
0
i
)

(2.14)
Khi đó, 


là Inertia tensor của link i được biểu diễn theo frame được gắn trên cơ cấu
được định nghĩa theo biểu thức (2.15)


=






























(2.15)
v
i
là vector vận tốc tuyến tính của trọng tâm của link i được biểu diễn theo frame 0.


= 




() (2.16)
Trong đó:





=


1
,   à  

1

× 

,   à  

(2.17)
p
ok
là vector vị trí của trọng tâm của link k được biểu diễn theo frame 0.
b
k-1
: là vector đơn vị theo chiều của trục quay của khớp k-1 được biểu diễn theo
frame 0.
ω
i
là vector vận tốc quay của link i quanh trọng tâm m
i
được biểu diễn theo frame 0.


= 




() (2.18)
Trong đó


()
=


0,   à  

1
,   à    

(2.19)
Phương trình của tổng động năng được viết lại như sau:
=
1
2






(




)






+








T









=1
 (2.20)
Đặt: =
1
2


()
D(q) được gọi là ma trận quán tính (inertia matrix).





=




(




)






+


















=1
=




(




)






+










0



(
0

)








=1
(2.21)
Tổng thế năng của robot có n link [6]:
=




=1
=









=1
(2.22)
Trong đó: p
oi
là vector vị trí của trọng tâm của link i được biểu diễn theo frame 0.
Khi đó, hàm Lagrange được viết lại như sau biểu thức (2.23):
HVTH: Đặng Thị Mỹ Chi GVHD: TS. Nguyễn Minh Tâm

Trang 15
=
1
2
















=1
=
1
2
 


()


=1

=1











=1
(2.23)

Trong đó, d
ij
là phần tử thứ ij của D(q)
Lúc này, phương trình Euler-Lagrange được viết lại như sau:


=








+

=1
 
(


()




=1

=1

1
2


()


)



+



(2.24)
Hoặc dưới dạng:


=








+


=1
 



=1

=1




+ 

(2.25)
Trong đó:


=


()



1
2


()



(2.26)


=



(2.27)
Phương trình Euler-Lagrange còn được viết lại dưới dạng rút gọn:




+ 

, 

+ 



=  (2.28)
Trong đó:



, 



=




=1


(2.29)




=


1
, 
2
, , 



(2.30)




: inertia matrix (ma trận quán tính)



, 

: vector vận tốc




: vector gia tốc trọng trường.
2.2 Các phưng pháp nhn dng thông s động lc hc cho robot[9]
2.2.1 Tổng quan về các phưng pháp nhn dng thông s động lc hc ca
robot
Do tầm quan trọng của việc điều khiển dựa vào mô hình, việc nhận dạng các
thông số động lực học đã thu hút rất nhiều sự quan tâm. Các thuật toán điều khiển
dựa vào mô hình cũng như việc đánh giá kết quả mô phỏng của mô hình và độ
chính xác của thuật toán tìm đường đều phụ thuộc vào các thông số của mô hình
động học. Đặc biệt trong lĩnh vực cơ điện tử của robot, việc điều khiển dựa trên mô
hình là yếu tố cơ bản cho việc nâng cao tính chính xác và độ tin cậy của mô hình.

×