ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP
LUẬN VĂN THẠC SĨ KỸ THUẬT
NGÀNH KỸ THUẬT ĐIỆN TỬ
ĐỀ TÀI: ĐIỀU KHIỂN RÔ BỐT TRÊN QUỸ ĐẠO CHO
TRƯỚC DẠNG PHỨC TẠP ỨNG DỤNG NỘI SUY SPLINE
HỌC VIÊN: LÊ TRỌNG NGHĨA
LỚP: K13KTĐT
THÁI NGUYÊN, NĂM 2013
BẢNG TÓM TẮT LUẬN VĂN CAO HỌC
Ngành : Kỹ thuật điện tử - Khóa 13
1. Tên luân văn:
ĐIỀU KHIỂN RÔ BỐT TRÊN QUỸ ĐẠO CHO TRƯỚC DẠNG
PHỨC TẠP ỨNG DỤNG NỘI SUY SPLINE
2. Người thực hiện: KS. Lê Trọng Nghĩa
3. Thông tin liên quan
Email: [email protected]
Điện thoại di động: 0168.209.1582
4. Tóm tắt nội dung:
MỞ ĐẦU
1. Lý do chọn đề tài
Hiện nay, công nghệ rôbốt được ứng dụng vô cùng rộng rãi trong nhiều lĩnh
vực như công nghiệp, cứu hộ, y tế, Các rôbốt được thiết kế ngày càng thông minh
và có khả năng thực hiện những thao tác đa dạng với quỹ đạo chuyển động phức
tạp. Bài toán điều khiển rôbốt thường căn cứ vào các mục tiêu thiết kế rôbốt để lựa
chọn phương pháp phù hợp. Với các rôbốt có thiết kế phức tạp, để đạt được mục
tiêu của bài toán có thể phải sử dụng kết hợp nhiều phương pháp khác nhau cho
nhiều khâu như: Điều khiển cân bằng, điều khiển quỹ đạo chuyển động, điều khiển
chấp hành, … Đây là lĩnh vực đang được nhiều nhà khoa học quan tâm nghiên cứu.
Trong khuôn khổ một luận văn thạc sĩ, tác giả chỉ đề cập và tập trung vào giải
trên quỹ đạo cho trước dạng phức tạp.
Mô phỏng: Tính toán và chạy mô phỏng trên máy tính để kiểm chứng kết quả
nghiên cứu.
4. Nội dung nghiên cứu
Nội dung nghiên cứu gồm 3 chương
Chương 1 Cơ sở chung về bài toán điều khiển rôbốt: Trình bày các kiến thức
cơ sở, cấu trúc, các phương thức, phương pháp điều khiển rôbốt từ đó xác định
hướng nghiên cứu là bài toán điều khiển rôbốt trên quỹ đạo dạng phức tạp
Chương 2 Nội suy spline và khả năng ứng dụng cho bài toán điều khiển
rôbốt: Trình bày nguyên lý cơ bản của bài toán động học rôbốt, đặc điểm của bài
toán điều khiển quỹ đạo chuyển động, cơ sở về nội suy spline và khả năng ứng dụng
cho bài toán điều khiển quỹ đạo dạng phức tạp
Chương 3 Xây dựng thuật toán điều khiển rôbốt trên quỹ đạo cho trước ứng
dụng nội suy spline: Ứng dụng nội suy spline để xây dựng thuật toán điều khiển
rôbốt trên quỹ đạo phức tạp trong không gian hai chiều và ba chiều. Mô phỏng và
so sánh với một số phương pháp khác
CHƯƠNG 1 CƠ SỞ CHUNG VỀ BÀI TOÁN ĐIỀU KHIỂN RÔBỐT
1.1. Cấu trúc tổng quan của rôbốt
Các rôbốt công nghiệp ngày nay thường được cấu thành bởi hệ thống sau:
Hình 1.1: Sơ đồ cấu trúc tổng quan của rôbốt
- Tay máy: Là cơ cấu cơ khí gồm các khâu, khớp hình thành cánh tay để tạo
ra các chuyển động cơ bản gồm:
+ Bệ (thân) - Base
+ Khớp - thanh nối: joint- link
+ Cổ tay – wrist: Tạo nên sự khéo léo, linh hoạt.
+ Bàn tay - hand: Trực tiếp hoàn thành các thao tác trên đối tượng.
- Cơ cấu chấp hành: Tạo chuyển động cho các khâu của tay máy. Nguồn động
lực của cơ cấu chấp hành là động cơ ( hình 1.2).
Môi trường
- Đối tượng
động xoay theo các hướng khác nhau và cho rôbốt định vị đa dạng các vị trí.
Hình 1.2: Cơ cấu chấp hành
Quan hệ chuyển động giữa các phần tử khác nhau của tay máy như: Cổ tay, cánh
tay được thực hiện qua một chuỗi các khớp nối. Các chuyển động bao gồm
chuyển động quay, chuyển động tịnh tiến…
Các rôbốt công nghiệp ngày nay hầu hết thường được đặt trên đế và thân đế
này được gắn chặt xuống nền. Gắn vào cổ tay có thể là một bàn kẹp (gripper) hoặc
một số công cụ khác dùng để thực hiện các nhiệm vụ khác nhau (như mũi khoan,
đầu hàn, đầu phun sơn ) và chúng được gọi chung là “end effector”.
Sự chuyển động của rôbốt bao gồm chuyển động của thân và cánh tay,
chuyển động của cổ tay. Những khớp kết nối chuyển động theo 2 dạng trên gọi là
bậc tự do. Ngày nay thông thường các rôbốt được trang bị từ 4 đến 6 bậc tự do
(hình 1.3)
Hình 1.3: Hình ảnh rôbốt thực tế
Dựa vào hình dáng vật lý hoặc khoảng không gian mà cổ tay có thể di
chuyển tới mà người ta chia rôbốt thành bốn hình dạng cơ bản sau :
Rôbốt cực (H 1.4a) .
Rôbốt Decac (H 1.4b) .
Rôbốt trụ (H 1.4c).
Rôbốt tay khớp (H 1.4d) .
a
b
c
d
Hình 1.4: Phân loại rôbốt cơ bản.
Bảng 1.1: Các dạng cơ bản của các khớp rôbốt
Hình 1.6 mô tả hình dạng của không gian làm việc của rôbốt:
Input link
Output link
Ghi dữ
liệu
Động học
thuận
Động học
ngược
Mặt phẳng
quỹ đạo
Bộ
điều khiển
Nguồn động lực
Vị trí
vật lý
Máy tính
Chạy
Khóa
chuyển mạch
Servo
Sai số vị tríC :
D
B
A
Hình 1.7: Sơ đồ khối tổ chức kỹ thuật của rôbốt
Cơ cấu
chấp hành
Lưu giữ
kết quả
Chế độ
dạy học
Số bậc tự do của rôbốt công nghiệp sẽ tương ứng với số khớp hoặc số thanh
1.3.2.5. Điều khiển bù phi tuyến.
1.3.3. Các phương pháp điều khiển
1.3.3.1. Phương pháp điều khiển động lực học ngược
1.3.3.2. Phương pháp điều khiển phản hồi phân ly phi tuyến
1.3.3.3. Phương pháp điều khiển thích nghi theo sai lệch
1.3.3.4. Phương pháp điều khiển thích nghi theo mô hình mẫu
1.3.3.5. Phương pháp điều khiển ĐLH ngược thích nghi
1.3.3.6. Điều khiển trượt
1.4. Kết luận chương 1
Bộ điều
khiển
rôbốt
Phản hồi
Quỹ đạo đặt
Tín hiệu điều
khiển
Quỹ đạo thực
Hình 1.10: Sơ đồ khối mô tả hệ thống điều khiển
Các phương pháp trình bày ở trên là những phương pháp điều khiển kinh
điển, đã được công bố trong nhiều công trình trước đây và được ứng dụng thực tế.
Mỗi phương pháp đều có những ưu nhược điểm riêng và cần phân tích trước khi
ứng dụng cho các bài toán cụ thể để đạt hiệu quả cao nhất.
Trong trường hợp riêng là bài toán điều khiển quỹ đạo chuyển động của
rôbốt, từ các phân tích ở trên ta nhận thấy có rất nhiều phương pháp khả thi. Mặc dù
vậy, để đạt được độ chính xác và độ tin cậy cao không phải là điều dễ dàng do nhiều
nguyên nhân như: Tín hiệu điều khiển không liên tục (đảo dấu ngẫu nhiên), hiện
tượng rung (dao động với tần số khá cao xung quanh mặt trượt) do các yếu tố trễ và
quán tính của bộ phận truyền động (các hiện tượng nhảy cấp lập bập) làm lệch quỹ
đạo chuyển động. Hay nói cách khác, với các quỹ đạo chuyển động phi tuyến dạng
phức tạp thì việc điều khiển bám sát quỹ đạo là không dễ dàng. Vì vậy, luận văn sẽ
Theo đó, toạ độ của điểm M thuộc một khâu bất kỳ, được xác định bởi bán
kính vecto
(0)
M
r
. Với các thành phần (hình chiếu) của nó trong hệ tọa độ cơ sở
(oxyz)
0 lần lượt là
(0) (0) (0)
M M M
x ,y ,z
được gọi là tọa độ tuyệt đối của điểm M.
- Toạ độ của điểm M thuộc khấu thứ k được xác định bởi bán kính vectơ
k
O M
uuuuur
với các thành phần tương ứng của nó trong hệ toạ độ (oxyz), gắn cứng với
khâu lần lượt là:
(k) (k) (k)
M M M
x ,y ,z
được gọi là tọa độ tương đối của điểm M.
- Nếu M là điểm cố định trên khâu thì tọa độ tương đối của M sẽ không thay
đổi khi khâu chuyển động.
- Dưới dạng ma trận ta có thể biểu diễn:
(0) (k)
M M
(0) (0) (0) (0) (0) T (k) (k) (k) (k) (0) T
Do tay máy là một chuỗi động hở của nhiều khâu, ta dễ nhận thấy rằng có
nhiều cách phối hợp chuyển động của các khâu thành viên để làm thay đổi vị trí
của các khâu cuối bên trong vùng không gian hoạt động của nó. Nói cách khác,
tuỳ thuộc vào tập hợp các yếu tố chuyển động, gọi là các toạ độ suy rộng, có thể
là chuyển vị góc ở các khớp quay hoặc chuyển vị dài ở các khớp tịnh tiến của các
khâu thành viên mà ta có những cách khác nhau để đưa các khâu tác động cuối tới
vị trí và hướng mong muốn.
Gọi q
1
, q
2
, q
n
là các toạ độ suy rộng tương ứng với các yếu tố chuyển
động tương đối giữa các khâu, ta có thể biểu diễn:
x
M
= x
M
(q
1
, q
2
, , q
n
)
y
M
= x
M
(t), y
M
= y
M
(t), z
M
= z
M
(t). Sự thay
đổi vị trí của điểm M theo thời gian trong không gian hoạt động của tay
m
á
y
cho
ta khái niệm quỹ đạo (trajcetory) của điểm.
2.4. Cơ sở lý thuyết của phép biến đổi hệ tọa độ
Phép biến đổi hệ toạ độ được sử dụng để biến đổi các thành phần của
vectơ khi chuyển từ
hệ
toạ
độ này sang hệ toạ độ khác.
Ví dụ, trong hệ trục toạ độ vuông góc (OXYZ) có các vectơ đơn vị lần lượt
tương ứng là i, J,
k.
y
, a
z
được gọi là các toạ độ vuông góc hay các thành
phần của vectơ a với:
x y z
a =a.cos(a,x), a =a.cos(a,y),a =a.cos(a,z)
(2.4)
Khi biết các thành phần của véctơ a theo các trục X, Y, Z, ta có thể tính
thành phần của nó theo hướng u bất kỳ. Để làm việc này, ta lấy hình chiếu cả hai
về của phương trình (2.1) trên hướng u và sử dụng định lý về hình chiếu của tổng
hình học, ta nhận được kết quả.
u x y z
a =a .cos(u,x) + a .cos(u,y) + a .cos(u,z)
(2.5)
Như vậy thành phần của vectơ a theo một phương bất kỳ có thể biểu diễn
qua các thành phần của nó trên các trục của một hệ toạ độ vuông góc, và ta cũng
nhận thấy rằng phép biểu diễn đó là tuyến tính. Tính chất này đặc trưng cho các
vectơ và là cơ sở để xác định một vectơ.
Trong công thức (2.5) ta thay a
u
, a
x
, a
y
, a
z
, bằng các biểu thức của nó ở công thức
x
, a
y
, a
z
. Hãy thử tìm mối quan hệ giữa các thành phần
của vectơ a trong hai hệ trục toạ độ (Oxyz) và (Oxyz)
1
.
Hãy xem các hướng x
1
, y
1
và z
1
như hướng u đã xét ở trên ta có thể tìm
thấy lời giải ở công thức (2.5) như sau:
a
x1
= a
x
cos (x
1
, x) + a
y
cos (x
1
, y) + a
z
cos (x
1
, z)
Để đơn giản cách viết các công thức, ta có thể đưa ra bảng côsin của chín
góc lập nên bởi các trục toạ độ cũ và mới như sau:
Hình 2.1: Quan hệ về vị trí tương đối giữa hai trục tọa độ O và O1
α
1
= cos
(
x
1
, x ) α
2
=
cos(
y
1
, x ) β
1
=
cos(
x
1
,
y ), v.v
x
1
y
1
z
k
x1
= α
3
i
y1
= 1.cos (x
1
, y) = β
1
, j
y1
= β
2
k
x1
= β
3
(2.8)
i
z1
= 1.cos (x
1
, z) =
γ
1
, jz
1
=
γ
α +β +γ =1
α +β +γ =1
α +β +γ =1
(2.9)
0 = cos(y
1
, z
1
) = cos(y
1
,x).cos(z
1
,x) +
cos(y
1
,y)cos(z
1
,y)+cos(y
1
,z)cos(z
1
,z)
=
α
2
α
3
+ β
2
β
2
+
γ
1
γ
2
=
0
Tương tự, nếu coi O
1
x
1
y
1
z
1
, như hệ toạ độ cũ và Oxyz là hệ toạ độ mới
thì
ta nhận được sáu hệ thức sau
2 2 2
1 2 3
2 2 2
1 2 3
2 2 2
1 2 3
α +α +α =1
β +β +β =1
γ +γ +γ =1
y
β
2
+ a
z
γ
2
(2.11)
a
z1
= a
x
α
3
+ a
y
β
3
+ a
z
γ
3
Ngược lại, a
x
, a
y
, a
z
được biểu diễn qua a
x
z1
β
3
(2.12)
a
z
= a
x1
γ
1
+ a
y1
γ
2
+ a
z1
γ
3
Từ đó, xem như một trường hợp riêng của phép biến đổi toạ độ, ta có thể
nhận được phép biến đổi các toạ độ khi chuyển từ một hệ toạ độ này sang một hệ
toạ đồ khác có chung gốc.
Chọn một điểm M và nối M với gốc chung O của cả hai tam diện toạ độ.
Bán kính vectơ r của điểm M có các toạ độ x, y, z trong hệ toạ độ của và x
1
, y
1
,
z
1
trong hệ toạ độ mới. Theo các công thức (2.11) và (2.12) ta sẽ có:
α
2
x
+
β
2
y
+
γ
2
z y
1
= β
1
x
1
+ β
2
y
1
+ β
3
z
1
(2.13)
z
1
=
α
3
này, ta còn cần phải kiểm tra xem công thức (2.11) có được thoả mãn hay không
khi thực hiện việc chuyển đổi từ hệ toạ độ này sang hệ toạ độ
khác.
Để minh hoạ, giả sử các toạ độ x, y, z của bán kính vectơ r là các hàm của
tham số t. Ta thử xác định các thành phần của vectơ v mới theo các công
thức:
v
x
= dx/dt; v
y
= dy/dt v
z
= dz/dt
(2.14)
Đối với mọi hệ toạ độ, ta cần chứng minh rằng v quả là một vectơ. Ta có:
v
x1
= d
x1
/dt =
d(α
1
x
+
β
1
y
+
γ
1
1
không cần lấy đạo hàm vì đó là các cosin không đổi của các góc giữa
trục x
1
bất động và các trục x, y, z bất động).
Đối với các thành phần khác ta cũng nhận được các công thức tương tự. Nói
cách khác, v quả
thự
c là một vectơ.
Ngoài ra, cần chú ý thêm một hệ quả của các công thức đã trình bày.
Trong đại số vectơ ta đã biết công thức tính độ dài (gọi là suất hoặc
cường
độ) của một vectơ qua các thành phần của nó:
a
x
2
+ a
y
2
+ a
z
2
(2.16)
Ở đây vế trái của biểu thức không phụ thuộc vào hệ toạ độ mà ta đã
tính
a
x
, a
Hình 2.2: Đồ thị hàm nội suy 4 điểm
Tổng quát nếu có (n + 1) điểm, ta cần n hàm Spline bậc 3 dạng:
2 3
i 1i 2i 3i 4i
f (x)=A +A x+A x +A x ,i=1,2,3, ,n
. Có 4n hệ số
ji
A
có thể xác định theo các
điều kiện sau:
(i) Hàm Cubic phải gặp tất cả các điểm ở bên trong: có được 2n phương trình
i i i
f (x )=y ,i=1, ,n
;
i+1 i i
f (X )=y ,i=0,1, n-1
(ii) Đạo hàm bậc 1 phải liên tục tại các điểm bên trong, dẫn đến được (n – 1)
phương trình:
' '
i i i+1 i
f (X )=f (X ),i=1,2, ,n-1
(iii) Đạo hàm bậc 2 cũng phải liên tục tại các điểm bên trong, thêm được (n – 1)
phương trình nữa:
i+1
'' ''
i i i
f (X )=f (X ),i=1,2, n-1
(iv) Hai điều kiện cuối cùng dựa vào 2 điểm cuối của đường Spline, ở đây thường
đặt
''
Δx =x -x ,i=1,2, ,n
(dạng sai phân lùi).
Đạo hàm phương trình này và áp dụng điều kiện liên tục về đạo hàm bậc nhất ta
được:
'' '' ''
i i+1
i i-1 i i+1 i i+1. i+1
i i+1
Δy Δy
Δx f (x )+2(Δx +Δx ).f (x )+Δx f (x )=6 - +
Δx Δx
÷
Với
i i i-1
Δy =y -y ,i=1,2, ,n-1
Điều này tương đương với hệ phương trình tuyến tính có ẩn là đạo hàm bậc 2 tại
các
điểm bên trong của đường cong nội suy:
Giải hệ đại tuyến này ta tìm được
''
i i
f (X ),i=1,2, ,n-1
cộng với hai điều kiện
biên 2 đầu:
'' ''
0 n
f (x )=f (x )=0
, đường cong nội suy sẽ hoàn toàn xác định.
Bài toán thiết kế quỹ đạo được đặt ra trong cả không gian khớp lẫn vùng hoạt
động. Các ràng buộc về đường dịch chuyển thuần túy các yếu tố hình học thường
đựơc mô tả trong vùng hoạt động. Ngược lại lực chuyển động của hệ thống thường
xuất phát từ các khớp, nên việc điều khiển các động cơ dẫn động đòi hỏi xác định
quy luật biến thiên theo thời gian của các biến khớp, việc này thực hiện trong không
gian khớp.
3.2. Thiết kế quỹ đạo trong không gian khớp
Chuyển động của tay máy thường được mô tả trong vùng làm việc bằng các
điểm nút (gồm điểm đầu, điểm cuối, và có thể có một số điểm trung gian) và thời
gian chuyển động. Vì vậy, để thiết kế quỹ đạo trong không gian khớp phải giải bài
toán ngược động học để xác định giá trị các biến khớp tại các điểm nút. Sau đó thiết
lập các hàm nội suy để mô tả quỹ đạo vừa nhận được. Thuật toán thiết kế quỹ đạo
trong không gian khớp thường yêu cầu không đòi hỏi tính toán quá phức tạp để đảm
bảo xử lý thời gian thực.
Dạng đơn giản của quỹ đạo là chuyển động điểm - điểm, nếu thêm các điểm
trung gian thì quỹ đạo có dạng chuyển động theo đường.
Chuyển động điểm - điểm sử dụng cho một số loại rôbốt như rôbốt hàn
điểm, tán đinh, xếp dỡ vật liệu, trong dạng chuyển động này, người ta chỉ quan tâm
đến các tọa độ điểm đầu, điểm cuối của đường dịch chuyển và thời gian chuyển
động giữa các điểm đó chứ không quan tâm đến dạng hình học của đường dịch
chuyển. Nhiệm vụ đặt ra là xác định quỹ đạo chuyển động thỏa mãn các yêu cầu
chung và có thể thêm cả một số tiêu chí tối ưu nào đó.
Trong nhiều hoạt động, ví dụ hàn hồ quang, sơn, xếp dỡ vật liệu trong không
gian, có nhiều chướng ngại vật, điều khiển đầu chạy dao trong máy phay CNC, …
rôbốt cần được điều khiển theo đường. Khi đó số lượng điểm của mỗi đường lớn
hơn hai. Đó có thể không chỉ là điểm phải đi qua đơn thuần mà tại đó có thể phải
khống chế cả vận tốc và gia tốc để đáp ứng yêu cầu công nghệ. Các điểm như vậy
gọi là các điểm chốt, số lượng điểm này nhiều hay ít tùy thuộc yêu cầu độ chính xác
của quỹ đạo và tốc độ xử lý dữ liệu.
Quỹ đạo trong không gian khớp mô tả diễn biến theo thời gian của các biến
Lập ma trận P cho
tất cả các đa thức
Tìm ma trận cj
Tìm ma trận b
Tìm ma trận A
Nhập x, a
Hình 3.2: Lưu đồ thuật toán chương trình nội suy “Spline Nature” bậc ba
3.3.2. Thuật toán điều khiển cho rôbốt chuyển động theo quỹ đạo trên không
gian ba chiều
3.3.2.1. Đặt bài toán
3.3.2.2 Phân tích bài toán vị trí
Lưu đồ thuật toán chương trình chính như hình 3.6
Begin
Nhập (1)
Xác định ma trận quay
M (2)
Xác định điểm 1 điểm
bất kỳ (điểm P)
Xác định (3)
Sử dụng thuật toán
spline