VIỆN KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM VIỆN CƠ HỌC TRẦN HOÀNG NAM GIẢI BÀI TOÁN NGƯỢC ĐỘNG HỌC, ĐỘNG LỰC HỌC VÀ ĐIỀU KHIỂN TRƯỢT RÔBỐT DƯ DẪN ĐỘNG DỰA TRÊN THUẬT TOÁN HIỆU CHỈNH GIA LƯỢ
Trang 1VIỆN KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM
VIỆN CƠ HỌC
TRẦN HOÀNG NAM
GIẢI BÀI TOÁN NGƯỢC ĐỘNG HỌC, ĐỘNG LỰC HỌC VÀ ĐIỀU KHIỂN TRƯỢT RÔBỐT DƯ DẪN ĐỘNG
DỰA TRÊN THUẬT TOÁN HIỆU CHỈNH GIA LƯỢNG
VÉC TƠ TỌA ĐỘ SUY RỘNG
TÓM TẮT LUẬN ÁN TIẾN SĨ KỸ THUẬT
HÀ NỘI - 2010
Trang 2Công trình được hoàn thành tại:
VIỆN CƠ HỌC - VIỆN KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM
Người hướng dẫn khoa học :
1 GS TSKH Nguyễn Văn Khang, Trường ĐH Bách khoa Hà Nội
2 PGS TS Nguyễn Phong Điền, Trường ĐH Bách khoa Hà Nội
Phản biện 1: GS.TSKH Nguyễn Cao Mệnh, Viện Cơ học
Phản biện 2: GS.TS Phan Nguyên Di, Học viện Kỹ thuật Quân sự Phản biện 3: PGS.TS Ninh Quang Hải, Trường ĐH KIến Trúc Hà Nội
Luận án được bảo vệ trước hội đồng chấm luận án cấp Viện
họp tại Viện Cơ Học - Viện Khoa học và Công nghệ Việt Nam
Vào hồi 8 giờ 30 ngày 06 tháng 8 năm 2010
Có thể tìm hiểu luận án tại :
Trang 3CÁC CÔNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ:
1 Nguyen Van Khang, Do Tuan Anh, Nguyen Phong Dien, Tran Hoang Nam : “In fluence of trajectories on the joint torques of kinematically redundant
manipulators” Vietnam Journal of Mechanics, vol 29 (2007), No.2, pp 65-72
2 Nguyen Van Khang, Nguyen Phong Dien, Nguyen Van Vinh, Tran Hoang Nam : “Inverse kinematic and dynamic analysis of redundant measuring manipulator
BKHN-MCX-04” Vietnam Journal of Mechanics, vol 32 (2010), No.1, pp
15-26
3 Nguyễn Văn Khang, Nguyễn Quang Hoàng, Lê Đức Đạt, Trần Hoàng Nam :
“Về một thuật toán điều khiển trượt robot dư dẫn động” Tạp chí Tin học và Điều khiển học, Tập 24 (2008), No.3, Tr.269-280
4 Nguyễn Văn Khang, Lê Đức Đạt, Trần Hoàng Nam: “Về một phương pháp số
giải bài toán động học ngược robot dạng chuỗi” Tuyển tập Hội nghị Cơ học toàn quốc lần thứ 8, Tập 1, Tr 250-259 NXB Bách khoa, Hà Nội 2007
5 Nguyễn Quang Hoàng, Nguyễn Văn Khang, Trần Hoàng Nam: “Bài toán động
học ngược rôbốt dư dẫn động có chú ý đến sự cố kẹt khớp” Tuyển tập Hội nghị
Cơ học toàn quốc, Tập 2, Tr 282-290, NXB Khoa học tự nhiên và Công nghệ,
Hà Nội 2009
6 Nguyễn Văn Khang, Nguyễn Quang Hoàng, Trần Hoàng Nam: “Về bài toán
động lực học ngược rôbốt dư dẫn động” Tuyển tập Hội nghị Khoa học Công nghệ Cơ khí chế tạo toàn quốc lần thứ hai, Phân ban “Tự động hóa và Cơ điện tử”, Tr 41-48, Hà Nội 2009
7 Nguyen Van Khang, Nguyen Quang Hoang, Tran Hoang Nam: “On an efficient method for improving accuracy of the inverse kinematics of robotic
manipulators” International Conference on Engineering Mechanics and Automation (ICEMA 2010), Hanoi, July 1-2, 2010
Trang 4MỞ ĐẦU
1 Tính cấp thiết của đề tài nghiên cứu
Theo các tài liệu về rôbốt, một rôbốt được gọi là dư dẫn động khi số tọa độ suy rộng nhiều hơn số tọa độ tối thiểu xác lập nên vị trí và hướng của khâu thao tác Nhờ tính dư dẫn động mà rôbốt dư dẫn động có khả năng tránh được các điểm kỳ dị, các giới hạn của biến khớp, các vật cản …
Khi nghiên cứu rôbốt ta phải giải quyết các bài toán về động học, động lực học và bài toán điều khiển Trong các bài toán này thì các bài toán ngược là các bài toán khó, nhất là đối với các bài toán ngược của rôbốt dư dẫn động Bài toán ngược của rôbốt dư dẫn động ở nước ta hãy còn ít được nghiên cứu Do đó việc nghiên cứu, tìm ra phương pháp mới giải bài toán ngược là việc làm cấp thiết và vì vậy tác giả đã chọn đề tài
nghiên cứu là: ”Giải bài toán ngược động học, động lực học và điều khiển trượt rôbốt
dư dẫn động dựa trên thuật toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng”
2 Mục đích nghiên cứu
Xây dựng một thuật toán đưa lại độ chính xác cao khi giải các bài toán ngược động học, động lực học và điều khiển dạng trượt rôbốt dư dẫn động
3 Đối tượng và nội dung nghiên cứu
Đối tượng nghiên cứu của luận án là các rôbốt dư dẫn động
Nội dung nghiên cứu là khảo sát bài toán động học ngược, bài toán động lực học ngược và bài toán điều khiển trượt rôbốt dư dẫn động
4 Các phương pháp nghiên cứu
• Phương pháp tự động hóa thiết lập các phương trình động học và động lực học của hệ nhiều vật
• Phương pháp mô phỏng số dựa trên phần mềm đa năng MATLAB và MAPLE
• Phương pháp thực nghiệm
5 Những đóng góp mới của luận án
Đã đề xuất “thuật toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng” và áp dụng nó
để giải các bài toán ngược động học, động lực học và điều khiển chuyển động của rôbốt
dư dẫn động bằng phương pháp trượt Đã tiến hành giải một số ví dụ minh họa chứng
tỏ tính ưu việt của phương pháp giải bài toán ngược khi sử dụng thuật toán “hiệu chỉnh gia lượng véc tơ tọa độ suy rộng” so với khi giải bài toán mà không sử dụng thuật toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng
6 Bố cục của luận án
Luận án có 142 trang Ngoài các phần mở đầu, kết luận chung, tài liệu tham khảo, các công trình liên quan đến luận án, nội dung chính của luận án được trình bày trong 4 chương :
Chương 1: “Tính toán động học ngược rôbốt dư dẫn động bằng thuật toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng”
Chương 2: “Tính toán động lực học ngược rôbốt dư dẫn động trong không gian thao tác dựa trên thuật toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng”
Chương 3: “Điều khiển trượt rôbốt dư dẫn động dựa trên thuật toán số hiệu chỉnh gia lượng véc tơ tọa độ suy rộng”
Trang 5Chương 4: “Động lực học và điều khiển trượt rôbốt đo BKHN-MCX-04” Là
chương áp dụng các kết quả nghiên cứu lý thuyết cho một mô hình rôbốt đo
BKHN-MCX-04 mới được chế tạo
CHƯƠNG 1
TÍNH TOÁN ĐỘNG HỌC NGƯỢC RÔBỐT DƯ DẪN ĐỘNG
BẰNG THUẬT TOÁN HIỆU CHỈNH GIA LƯỢNG
VÉCTƠ TỌA ĐỘ SUY RỘNG
Từ việc giải bài toán động học thuận ta xác định được quan hệ
x = f(q) (1.1)
còn khi giải bài toán ngược ta phải xác định quan hệ hình thức được suy ra từ biểu thức (1.1) dưới dạng
1.1 Phương pháp khai triển Taylor
Trong các cuốn sách [48, 51] đã trình bày một thuật toán số như sau:
q( tk+1) =q( tk) +q& ( tk) Δ t (1.3) Trong đó q&(tk) được xác định từ công thức
) t ( )) t ( ( ) t
k 1
k+ =q +J− q x Δ
q & & (1.5) Kết quả tính toán véc tơ tọa độ suy rộng theo (1.5) là khá thô Do đó ta phải tìm cách cải tiến công thức (1.5) để có độ chính xác cao hơn
1.2 Các công thức xác định véc tơ vận tốc và véc tơ gia tốc suy rộng
Từ bài toán động học thuận, ta có hệ thức
m 1 m
n
1 2
1 1 1
q
f
q
f q
f
f
q
f q f )
(
q
f q
Và suy ra:
Trang 6) t ( )) t ( ( ) t ( )) t ( ( ) t
q&& = + && +&+ & (1.11)
Để áp dụng được công thức (1.11) cần phải tính được J&+(q( t ))
J& & & & (1.14)
Ma trận J&( )q được tính bằng cách đạo hàm trực tiếp các phần tử của ma trận J( )q
theo thời gian Thế (1.14) vào (1.11) ta tìm được gia tốc q&&( t )
1.3 Các công thức xác định véc tơ tọa độ suy rộng
Áp dung khai triển Taylor đối với qk+1 quanh giá trị qk ta có
) t ( 2
1 t )
t t
3 Tính q& ( t = 0 ) =q&0 theo (1.10) và tính q&&(t = 0)=q&&0 theo (1.11)
4 Tính qk+1theo (1.14), rồi tính q&k+1,q&&k+1 theo(1.10) và (1.11)
Ta thấy việc tính qk+1 theo (1.16) là khá thô Vì vậy ta cần có một thuật toán xác định
1
k+
q chính xác hơn Trong luận án đã đưa ra thuật toán hiệu chỉnh gia lượng véc tơ tọa
độ suy rộng qk+1 khi biết qk Sơ đồ khối của thuật toán này được trình bầy trên hình 1.1
1.4 Đánh giá sai số
Để đánh giá sai số của phương pháp ta đưa vào các công thức xác định sai số của dịch chuyển, của vận tốc và của gia tốc như sau
1 k k k k k k k k
k k k k k k
k k k k k
) ( ) ( ) t )
t ) t
) ( ) t )
t ) t
) ( ) t )
t ) t
q q J x x x e
q f x x x e
2 k 1
Độ lớn của các chuẩn của các véc tơ etk),e& tk),e&& tk) cho biết độ chính xác của thuật
toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng
Trong chương trình tính toán ta sẽ dùng chuẩn Euclid
etk) = e12tk) + e22 tk) +L+ e2m tk)
Trang 7Hình 1.1 Sơ đồ khối giải bài toán động học ngược
Trang 8Cho biết chiều dài của các khâu là:
a1 = 0.55(m); a2 = 0.50(m); a3 = 0.45(m); a4 = 0.40(m); a5 = 0.20(m) Phương trình chuyển động của điểm thao tác E là:
xE = 0.8+0.1cos(2t) (m); yE = - 0.8+0.1sin(2t) (m)
Bàn kẹp của rôbốt phải luôn tạo với phương thẳng đứng 1 góc ϕ=1(rad)
Qua việc áp dụng thuật toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng ta tìm được quy luật chuyển động của các khớp động là :
0 1 2 3 4 5 6 7 8 9 10 -2
-1 0 1 2 3 4
-1.5 -1 -0.5 0 0.5 1 1.5
-2 -1 0 1 2
-2 0 2 4 6
-8 -6 -4 -2 0 2 4
Trang 90 1 2 3 4 5 6 7 8 9 10 -1
0 1 2 3
0.2 0.4 0.6 0.8 1
x [m]
Hình 1.10.Dạng chuyển động của rôbốt theo kết quả tính toán
Các ví dụ trong luận án đã chứng tỏ tính ưu việt của phương pháp giải bài toán ngược động học rôbốt dư dẫn động khi sử dụng thuật toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng (đạt độ chính xác cỡ 10-15) so với phương pháp giải không sử dụng thuật toán (chỉ đạt độ chính xác 10-4)
CHƯƠNG 2
TÍNH TOÁN ĐỘNG LỰC HỌC NGƯỢC RÔBỐT DƯ DẪN ĐỘNG TRONG KHÔNG GIAN THAO TÁC DỰA TRÊN THUẬT TOÁN HIỆU CHỈNH GIA LƯỢNG VÉC TƠ TỌA ĐỘ
SUY RỘNG 2.1 Phương trình động lực học của rôbốt
Trong các tài liệu về rôbốt ta đã có biểu thức:
τ q g q q q C q q
M( ) && + ( , & ) & + ( ) = (2.1) trong đó :
• q∈ R n là véctơ biến khớp (tọa độ suy rộng),
• M(q) ∈ R n×n là ma trận khối lượng,
• C(q,q& ) ∈ R n×n là ma trận liên quan lực coriolis, lực ly tâm,
Trang 10• g(q) ∈ R n là véctơ lực do trọng lực,
• τ∈ R n là véctơ lực/mômen dẫn động từ các động cơ
2.1 Giải bài toán ngược động lực học rôbốt dư dẫn động trong không gian thao tác
Khi tính toán, thiết kế rôbốt ta thường phải xác định các lực/mômen dẫn động cần thiết tác động trên các khâu của rôbốt để khâu thao tác của rôbốt có thể làm việc theo
một chương trình đã định trước Bài toán này được gọi là bài toán động lực học ngược
Mối liên hệ giữa vị trí của bàn kẹp với các biến khớp có dạng
q& = +( ) & (2.4) Đạo hàm 2 vế của (2.4) theo thời gian, ta được
q&& =J+(q)x&& +J&+(q)x& (2.5)
dt
d )
(q J q
J&+ = +
Sử dụng thuật toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng chúng ta sẽ xác định
được q, q&, q&& tại các thời điểm khác nhau
Do phương trình động lực học của rôbốt có dạng (2.1), nên sử dụng file số liệu các véc tơ q,q&,q&& của bài toán động học ngược thì từ (2.1) ta có thể xác định được
mômen/lực cần thiết tương ứng với chuyển động mong muốn x(t) của bàn kẹp
Vì vậy ta có các bước tiến hành tính mômen/lực của động cơ để bàn kẹp chuyển
động theo một quy luật x(t) định trước như sau:
1 Giải bài toán động học ngược để xác định các tọa độ, vận tốc và gia tốc suy rộng q,q&,q&& của các khớp động từ phương trình chuyển động của bàn kẹp
) t ( ),
Trang 11Hình 2.1 Sơ đồ khối giải bài toán động lực học ngược rôbốt dư dẫn động
CHƯƠNG 3 ĐIỀU KHIỂN TRƯỢT RÔBỐT DƯ DẪN ĐỘNG DỰA TRÊN THUẬT TOÁN HIỆU CHỈNH GIA LƯỢNG
VÉC TƠ TỌA ĐỘ SUY RỘNG
Trọng tâm của chương là trình bày điều khiển trượt rôbốt dư dẫn động dựa trên thuật toán hiệu chỉnh gia lượng véc tơ tọa độ suy rộng [19, 49, 50]
Sai
Đúng
Trang 123.1 Bài toán điều khiển chuyển động của rôbốt
Nhiệm vụ của bài toán điều khiển chuyển động rôbốt là đảm bảo cho khâu thao tác luôn bám theo quỹ đạo cho trước trong không gian thao tác
Từ đó ta có các dạng hệ thống điều khiển như sau:
• Hệ thống điều khiển trong không gian khớp
• Hệ thống điều khiển trong không gian thao tác
a Bài toán điều khiển trong không gian khớp
Bài toán này được phân thành 2 bài toán nhỏ:
• Bài toán động học ngược: Cho xd, tìm q=f−1 (xd)
• Hệ thống điều khiển trong không gian khớp được thiết kế đảm bảo vị trí khớp q luôn bám theo vị trí mong muốn qd, sao cho lượng sai lệch q − qd → min
Ưu điểm của phương pháp này là bộ điều khiển tác động trực tiếp đến hệ thống truyền động của các khớp Nhược điểm của nó là khó đảm bảo độ chính xác cho vị trí của khâu thao tác do sự tồn tại các sai lệch trong cơ cấu dẫn động (khe hở của các
khớp, ma sát v.v) và thiếu thông tin về sai lệch x−xd trong quá trình điều khiển
b Bài toán điều khiển trong không gian thao tác
Hệ thống điều khiển trong không gian thao tác có chức năng làm cho sai số giữa x
và xd bằng không
x − xd → 0
Trong đó xd là véc tơ vị trí mong muốn của khâu thao tác, x là véc tơ phản hồi vị
trí thực tế của khâu thao tác
Ưu điểm của hệ thống điều khiển này là nó tác động trực tiếp tới các biến của
không gian thao tác x Nhược điểm là khối lượng tính toán sẽ lớn do đó thời gian điều
khiển sẽ lâu
3.2 Điều khiển trượt rôbốt dư dẫn động
Phương trình động lực học của rôbốt có dạng
τ d q g q q q C q q
M( ) && + ( , & ) & + ( ) + = (3.1)
Trang 13g(q) - véctơ chứa các lực do trọng trường,
d - véctơ chứa các lực/mômen do kích động nhiễu,
τ - lực/mômen của động cơ dẫn động
Để sử dụng điều khiển dạng trượt, ta đưa vào ký hiệu véc tơ sai số bám được xác định bởi
) t ( ) t ( ) t ( q qd
và véc tơ sai số suy rộng như sau
) t ( ) t ( Λe e
trong đó
) , , , ( diag λ1 λ2 λn
q& −& =& −& + =& + = (3.6)
do đó
) t ( ) t ( ) t ( q qr
s& = && − && (3.7)
Để tìm luật điều khiển, ta chọn hàm Lyapunov như sau
s q M
2
1 ) (
V & = T &+ T & (3.9)
C & & = & + & & (3.12) Thế (3.12 ) vào (3.10), ta được
d q g q q q C q q M s q q C τ s q
M( ) & = − ( , & ) − ( ) &&r− ( , & ) &r − ( ) − (3.13) Thay (3.13) vào (3.9) ta được
( ) , ( ) (
Trang 14Căn cứ vào (3.15) ta chọn luật điều khiển (mômen cần thiết để đảm bảo chuyển động theo chương trình) như sau
) sgn(
) ( ) , ( ) (
1 ), sgn( s ), , sgn( s ) s
sgn(
) sgn(s = , và Kpd, Ks là các ma trận thực đối xứng xác định dương, K =KT >0
pd = diag k , k , , k
s 22 s 11 s
−
−
1 i
i i i n
1 i
i ii s n
1 i
2 i
i i i ii s n
1 i
2 i
ii
k V&
với các sai lệch giữa mô hình thực sử dụng trong (3.1) và các thông số mô hình sử dụng trong bộ điều khiển (3.16) như sau
~
q g q g q g
q q, C q q, C q q, C
q M q M q M
i = M~(q)q&& +C~(q,q&)q& +~g(q) ρ
Như vậy, để đảm bảo V & ≤ 0 thì ta phải chọn các phần tử của Ks sao cho
Do đặc điểm của hàm sgn(si) là không liên tục tại giá trị si = 0, do đó ở bộ điều
khiển sẽ xảy ra hiện tượng chattering Để khử chattering ta thay hàm dấu sgn(s) bằng
hàm bão hoà sat (s/ ξ )
T n 2
1 / ), sat s / ), , sat s / )]
s sat [ )
1 x x
) x ( sat
Trang 15M q q C q q q g q( ) && + ( , ) & & + ( ) +d(t) =τ(t )k
Thu đượcq(tk 1+), (tq& k 1+ )
Trang 16CHƯƠNG 4
BÀI TOÁN NGƯỢC ĐỘNG HỌC, ĐỘNG LỰC HỌC
VÀ ĐIỀU KHIỂN TRƯỢT RÔBỐT ĐO BKHN-MCX-04
Rôbốt đo BKHN-MCX-04 đã được thiết kế và chế tạo để tiến hành các bài toán động học ngược, động lực học ngược và điều khiển chuyển động
4.1 Kết cấu của rô bốt đo BKHN-MCX-04
Rôbốt đo BKHN-MCX-04 có hình dạng như hình 4.1 và có các thông số hình học như trong bảng 4.1
+ +
− +
−
− +
+ +
− +
−
−
=
S a S a C d d S
S C
C S
C S a C S a S S d C S C C S S C C C S
C C a C C a S C d C S C C S S C S S C C C
23 3 2 2 234 5 1 234
5 234
5 234
23 1 2 1 2 234 1 5 234 5 1 5 1 234 1 5 1 5 234 1
23 1 3 2 1 2 234 1 5 234 5 1 5 1 234 1 5 1 5 234 1 5
D
Quỹ đạo đối