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

GIẢI bài TOÁN ĐỘNG học NGƯỢC CHO TAY máy TRÁNH vật cản BẰNG MẠNG NƠRON

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 (583.83 KB, 6 trang )

HỘI NGHỊ KHCN TOÀN QUỐC VỀ CƠ KHÍ - ĐỘNG LỰC NĂM 2017
Ngày 14 tháng 10 năm 2017 tại Trường ĐH Bách Khoa – ĐHQG TP HCM

GIẢI BÀI TOÁN ĐỘNG HỌC NGƢỢC CHO TAY MÁY
TRÁNH VẬT CẢN BẰNG MẠNG NƠRON
Lƣơng Hồng Sâm
Trường Đại học Trần Đại Nghĩa

TÓM TẮT :
Việc điều khiển bàn kẹp tay máy đến được
một vị trí nào đó và tay máy tránh được vật cản
trong không gian hoạt động của nó là bài toán
phức tạp vì phải giải đồng thời bài toán động học
ngược và bài toán tránh vật cản cho tay máy.
Việc giải bài toán tránh vật cản ngoài việc giúp
cho tay máy không bị va chạm trong quá trình
hoạt động mà còn phải đảm bảo tay máy chuyển
động êm dịu trong quá trình hoạt động. Bài báo

giới thiệu một phương pháp giải bài toán động học
ngược cho tay máy tránh vật cản bằng mạng
nơron với một vật cản và vị trí của vật cản đã
được xác định. Việc tránh vật cản sẽ được thực
hiện bằng việc xác định và loại trừ các biến khớp
tương ứng với không gian của vật cản trong bộ dữ
liệu huấn luyện mạng nơron để giải bài toán động
học ngược.

Từ khóa : Động học ngược, Mạng nơron, Tránh vật cản

1. GIỚI THIỆU


Nhiệm vụ của bài toán động học ngược là xác
định các giá trị của biến khớp qi, (i=1,…n) khi biết
trước vị trí và hướng của bàn kẹp tay máy. Có ba
phương pháp truyền thống thường được sử dụng
để giải bài toán động học ngược: Phương pháp
giải tích, phương pháp hình học và phương pháp
lặp. Phương pháp giải tích là xác định các biến
khớp q1, q2,…,qn theo các biến vị trí. Phương
pháp hình học là chiếu hệ tọa độ của khâu lên
trục tọa độ Xi-1 và Yi-1. Phương pháp lặp là lặp lại
giá trị các biến khớp nhằm xác định các biến
khớp phù hợp. Ứng dụng mạng nơron để giải bài
toán động học ngược đã có một số công trình
nghiên cứu [1]. Phương pháp này có thể giải bài
toán động học ngược tay máy có n bậc tự do, độ
chính xác cao và bảo đảm được thời gian thực.
Bài báo này giới thiệu một phương pháp giải
bài toán động học ngược cho tay máy tránh vật
cản bằng mạng nơron với giả thiết là tay máy có
ba khớp quay, vật cản là duy nhất và có vị trí xác
định với hình dáng hình học đã biết. Từ đó đi xây
dựng thuật toán tránh vật cản cho tay máy này
sao cho các khâu của tay máy không chạm vào
vật cản mà vẫn đảm bảo bàn kẹp đến được vị trí

Trang 344

mong muốn trong không gian với một quỹ đạo
xác định. Từ các điều kiện đó, bài báo xác định và
loại trừ các biến khớp tương ứng với không gian

của vật cản trong bộ dữ liệu huấn luyện của mạng
nơron để giải bài toán động học ngược.
2. GIẢI THUẬT TRÁNH VẬT CẢN
Tay máy gồm 3 khớp quay với các tham số
động học được cho trong bảng 1. Giả sử bàn kẹp
tay máy cần chuyển động đến các điểm Pi (i =
1..n) (Hình 1). Thiết lập hệ tọa độ của hệ thống
bao gồm tay máy và vật cản sao cho gốc O của
hệ tọa độ trùng với gốc hệ tọa độ cơ sở của tay
máy. Trục z của hệ tọa độ này trùng với trục z
của hệ tọa độ cơ sở tay máy (Hình 1).
Vật cản được đặt trong không gian hoạt động
tay máy với giả thiết vật cản được bao kín bởi
một mặt cầu. Như vậy hình dáng và kích thước
của vật cản được đặc trưng bởi hình dáng và kích
thước của hình cầu. Vị trí và kích thước của vật
cản được thể hiện khi chiếu hệ thống lên hai mặt
phẳng tọa độ (Hình 2, Hình 3). [2].


HỘI NGHỊ KHCN TOÀN QUỐC VỀ CƠ KHÍ - ĐỘNG LỰC NĂM 2017
Ngày 14 tháng 10 năm 2017 tại Trường ĐH Bách Khoa – ĐHQG TP HCM

D'  d12  d 2 ;   a tan(d1 , d ) (3)
a2

Z

a3


L3  P cos(3   )  R


P

X

Y

Hình 1. Hình dạng tay máy và vật cản
Y

r

O

X

D

Hình 2. Tay máy và vật cản trong mặt phẳng XY

K3

a2

Z

K2
θ2


d1
O

θ3

a3

β

α

D’



d

R
X

Hình 3. Tay máy và vật cản trong mặt phẳng XZ

Từ hình 1, để đảm bảo cho các khâu không
chạm vào vật cản và kích thước của vật cản
không quá lớn thì cần thỏa mãn phương trình (1):



D  R ; 1  a tan R, D 2  R 2




(1)

Trong đó : D - khoảng cách từ tâm vật cản đến
gốc tọa độ hệ thống, R - bán kính hình cầu bao
vật cản.
Điều kiện để khâu 2 và 3 không chạm vào vật
cản là khoảng cách từ hai khâu này tới tâm hình
cầu phải lớn hơn bán kính hình cầu. Từ hình 3:

L2  D sin(2   )  R
'

Trong đó :

(6)

Nếu khâu 2 và khâu 3 tiếp xúc với bề mặt
hình cầu có nghĩa là khoảng cách L2 = L3 = R thì
ta có các góc giới hạn :


 a tan  


P  R , R  

(2)


3 min

2

2

(8)

Các bước để xác định bộ thông số các biến di
chuyển cho tay máy tránh được vật cản và vẫn
đảm bảo khâu tác động cuối đến được vị trí cuối
cùng của quỹ đạo theo giải thuật như sau :
1- Giải bài toán động học ngược cho tay máy tại
vị trí điểm đầu và điểm cuối quỹ đạo và một số
điểm trung gian trên quỹ đạo.

L3

L2

P  a22  2a2 D' 2  L22  D' 2

2 min  a tan R,  D' 2  R 2   (7)

R



(5)


  a tan a2  D' 2  L22 , L2

d

d





i

d1
O

(4)

2- Với mỗi θ1 tính được từ bước 1, kiểm tra theo
điều kiện (1). Nếu thỏa mãn, thì θ1 được nhận và
chuyển sang bước 2, nếu không sẽ chọn lại θ 1 từ
bước 1.
3- Với mỗi θ2 tính được từ bước 1, tính L2 theo
công thức (2). Kiểm tra theo điều kiện (2), nếu
thỏa mãn thì θ2 được nhận và chuyển sang bước
4, nếu không sẽ chọn lại θ2 từ bước 1.
4- Với mỗi θ3 tính được từ bước 1 và L2 tính được
từ bước 3, tính L3 theo phương trình (4). Kiểm tra
theo điều kiện (4), nếu thỏa mãn thì θ3 được
nhận, nếu không sẽ chọn lại θ3 từ bước 1.

Bộ thông số các biến di chuyển {θ i} tìm được
từ các bước trên sẽ được dùng làm bộ dữ liệu
huấn luyện mạng Nơron để giải bài toán động học
ngược cho tay máy tránh vật cản.
3. ĐỘNG HỌC TAY MÁY THÍ NGHIỆM
Giải các bài toán động học tay máy nhằm xác
định bộ dữ liệu để huấn luyện mạng nơron cho
bài toán động học ngược cho tay máy tránh vật
cản. Sơ đồ động học và các tham số động học
của tay máy được trình bày trong Hình 4 và
Bảng 1.

Trang 345


HỘI NGHỊ KHCN TOÀN QUỐC VỀ CƠ KHÍ - ĐỘNG LỰC NĂM 2017
Ngày 14 tháng 10 năm 2017 tại Trường ĐH Bách Khoa – ĐHQG TP HCM
Y2

Z0
θ2

θ3

a2
X1

X2
Z2


Z1

a3

c1 0
s 0
A0,1   1
0 1

0 0

s1
0
c1 0 
0
d1 

0
1 

(11)

A1,2

c2
s
 2
0

0


 s2 0 a2c2 
c2
0 a2 s2 
0
1 0 

0
0 1 

(12)

A2,3

c3
s
 3
0

0

 s3 0 a3c3 
c3
0 a3 s3 
0
1 0 

0
0 1 


(13)

A0,3

c1c23
s c
  1 23
 s23

0

d1
Y3

θ1
Z3
X0

X3

Hình 4. Sơ đồ động học tay máy
Bảng 1. Thông số động học
Khớp i

αi

1

π/2


0

2

0

a2 = 500

3

0

a3 = 150

ai(mm)

di(mm)
d1 = 200

θi (phạm vi
làm việc)
0

θ1 ( 45 )
θ2 ( 450)

0

θ3 ( 300)


3.1. Bài toán động học thuận
Bài toán động học thuận là xác định vị trí và
hướng của bàn kẹp tay máy khi biết trước các
thông số vị trí của tay máy. Giải bài toán động học
thuận nhằm xác định bộ dữ liệu huấn luyện cho
mạng nơron tổng quát.
Vị trí và hướng của bàn kẹp tay máy so với hệ
tọa độ cơ sở được biểu diễn bằng ma trận sau:

B0, n

 ix
i
y
 iz

0

jx
jy
jz
0

k x px 
k y p y 
k z pz 

0 1 

(9)


Trong đó : px, py, pz là tọa độ tâm bàn kẹp, i, j, k là
véctơ chỉ phương của hệ tọa độ gắn với bàn kẹp
so với hệ tọa độ cơ sở. Vị trí tâm bàn kẹp và
hướng bàn kẹp cũng được xác định bằng ma
trận:

A0, n

l x
l
n
  Aij   y
l z
i 1

0

mx
my
mz
0

nx q x 
n y q y 
(10)
nz q z 

0 1 


Cân bằng các phần tử của hai ma trận trong
phương trình (9) và (10), có phương trình xác
định vị trí bàn kẹp và là lời giải bài toán động học
tay máy. Các ma trận động học của tay máy :

Trang 346

c1s23
 s1s23
c23
0

s1
c1
0
0

c1  a3c23  a2 c2  

s1  a3c23  a2 c2  
(14)
d1  a3 s23  a2 s2 


1

Trong đó : s1, c1, sij, cij biểu diễn cho sin(θi),
cos(θi), sin(θi+θj), cos(θi+θj).
Từ (14) ta có lời giải bài toán động học thuận:


px  c1 (a3c23  a2c2 )
p y  s1 (a3c23  a2c2 )

(15)

pz  d1  a3 s23  a2 s2
3.2. Bài toán động học ngƣợc
Giải bài toán động học ngược là đi xác định
bộ thông số của các biến khớp khi biết trước vị
trí và hướng của bàn kẹp tay máy. Kết quả lời
giải bài toán động học ngược bằng giải tích
được sử dụng để kiểm chứng lại độ chính xác
lời giải bài toán động học ngược bằng mạng
nơron. Cân bằng các phần tử hai ma trận (9) và
(10), ta có lời giải bài toán động học ngược:

1  a tan 2( p y , px )
 2  a tan 2( pz  d1 , px2  p y2
 a tan 2(a3 s3 , a2  a3 s3 )

(16)

3  a tan 2( s3 , c3 ); s3   1  c32
c3 

px2  p y2  ( pz  d1 )2  a22  a32
2a2 a3


HỘI NGHỊ KHCN TOÀN QUỐC VỀ CƠ KHÍ - ĐỘNG LỰC NĂM 2017

Ngày 14 tháng 10 năm 2017 tại Trường ĐH Bách Khoa – ĐHQG TP HCM

4. ỨNG DỤNG MẠNG NƠ RON CHO BÀI
TOÁN ĐỘNG HỌC NGƢỢC TAY MÁY TRÁNH
VẬT CẢN
Phần này trình bày việc xác định cấu trúc
mạng, bộ dữ liệu huấn luyện mạng nơron cho tay
máy tránh vật cản mà bộ dữ liệu này tìm được
theo thuật toán trong phần 2. Mạng nơron được
dùng là mạng truyền thẳng nhiều lớp gồm có một
lớp vào, một lớp ra, có nhiều lớp ẩn. Mỗi nơron
thứ q ở lớp ẩn liên kết với lớp vào bằng trọng số
Vqj và liên kết với lớp ra bằng trọng số W iq. Việc
huấn luyện mạng được sử dụng luật học lan
truyền ngược Back propagation và hàm truyền
sigmoid [1].

máy va chạm với vật cản. Một phần kết quả này
được thể hiện trong bảng 2 và hình 6.
Bảng 2. Một số kết quả khi chưa tránh vật cản
Vị trí 1

Vị trí 2

Vị trí 3

Vị trí 4

Vị trí 5


Vị trí 6

px 588,603 591,281 610,301 601,045 593,447 559,407
py 93,045 49,557 37,691 -16,990 -81,989 -212,827
pz -37,853 -29,131 -15,654 -19,645 -24,437 -36,090
θ1 8,984

4,799

3,532

-1,735

-7,933

-20,826

θ2 -16,764 -27,614 -17,201 -25,516 -26,186 -17,082
θ3 -21,886 28,141
Va chạm

-9,621

23,763

24,230 -19,426

Va chạm Va chạm

Tay máy

Quỹ đạo

4.1. Giải bài toán động học ngƣợc tay máy thí
nghiệm khi chƣa tránh vật cản
Theo bước 1 của thuật toán, cần giải bài toán
động ngược cho tay máy trong trường hợp tổng
quát, chưa áp dụng giải thuật tránh vật cản với
mục đích xác định bộ thông số tổng quát {θi}. Việc
giải bài toán động học ngược được áp dụng
phương pháp mạng nơron theo nghiên cứu [1].
Bộ dữ liệu huấn luyện được lấy từ phương
trình (15) với giới hạn các góc : -450<θ1<450; 450<θ2<00; -300<θ3<300. Bộ dữ liệu gồm 6000
mẫu trong đó 4000 mẫu dùng để huấn luyện,
2000 mẫu dùng để kiểm tra khả năng tổng quát
của mạng. Miền dữ liệu này được biểu diễn qua
hình 5. Hàm trung bình bình phương MSE được
dùng để đánh giá chất lượng huấn luyện mạng.
Việc huấn luyện được sử dụng với phần mềm
Matlab.

Tay máy

Các vị trí
bàn kẹp

Vật cản

Vật cản

Hình 6. Một số cấu hình tay máy va chạm với

vật cản khi sử mạng chưa tránh vật cản

4.1. Giải bài toán động học ngƣợc tay máy thí
nghiệm tránh vật cản
Sau khi giải bài toán động học ngược cho tay
máy trong trường hợp chưa tránh vật cản nhằm
xác định bộ thông số các biến di chuyển tổng quát
của tay máy {θi}. Bước tiếp theo là xác định bộ dữ
liệu huấn luyện mạng nơron cho bài toán tránh
vật cản. Bộ dữ liệu này là tập con của bộ dữ liệu
tổng quát {θi} và được lấy theo thuật toán đã trình
bày ở phần 2. Bộ dữ liệu này gồm 6000 mẫu,
trong đó 4000 mẫu dùng để huấn luyện, 2000
mẫu dùng để kiểm tra khả năng tổng quát của
mạng. Hàm MSE được dùng để đánh giá chất
lượng huấn luyện mạng. Giới hạn các góc: 45<θ1<45; -45<θ2<0; -30<θ3<0. Miền dữ liệu huấn
luyện này được thể hiện trên Hình 7. Quá trình
huấn luyện mạng được thể hiện trên Hình 8.

Hình 5. Miền dữ liệu của mạng tổng quát

Sử dụng mạng nơron vừa tìm được để giải bài
toán động học ngược cho tay máy khi chưa tránh
vật cản thì sẽ có một số cấu hình mà ở đó tay

Trang 347


HỘI NGHỊ KHCN TOÀN QUỐC VỀ CƠ KHÍ - ĐỘNG LỰC NĂM 2017
Ngày 14 tháng 10 năm 2017 tại Trường ĐH Bách Khoa – ĐHQG TP HCM

Bảng 3. Một số kết quả khi tránh vật cản
Vị trí 1

Tay máy

Vị trí 2

Vị trí 3

Vị trí 4

Vị trí 5

Vị trí 6

px 588,603 591,281 610,301 601,045 593,447 559,407
py 93,045 49,557 37,691 -16,990 -81,989 -212,827
pz -37,853 -29,131 -15,654 -19,645 -24,437 -36,090
Vật cản

θ1 8,978
Các vị trí
bàn kẹp

4,803

3,518

-1,619


-7,874

-20,851

θ2 -16,804 -14,627 -17,194 -14,657 -15,016 -17,132
θ3 -21,902 -28,354 -9,612 -23,767 -24,260 -19,399
Các cấu hình trên đều không va chạm với vật cản

Hình 7. Miền dữ liệu của mạng tránh vật cản
Tay máy

Quỹ đạo

Vật cản

Hình 10. Quỹ đạo và cấu hình tay máy sau khi sử dụng
mạng tránh vật cản
Hình 8. Quá trình huấn luyện mạng tránh vật cản

5. KẾT LUẬN
Sau khi huấn luyện, bộ trọng số và cấu trúc
của mạng nơron dùng để giải bài toán động học
ngược cho tay máy tránh vật cản được xác định
bao gồm lớp nhập với 3 nút tương ứng với vị trí
bàn kẹp tay máy (px, py, pz). Lớp ẩn gồm 3 lớp,
mỗi lớp có 30 nút. Lớp xuất gồm 3 nút tương ứng
với 3 biến khớp (θ1, θ2, θ3). Cấu trúc mạng tìm
được thể hiện trên hình 9. Một số kết quả giải bài
toán động học ngược cho tay máy tránh vật cản
với mạng nơ ron vừa tìm được thể hiện trên bảng

3. Quỹ đạo và cấu hình của tay máy sau khi tránh
vật cản thể hiện trên hình 10.

Hình 9. Cấu trúc mạng nơ ron

Trang 348

Bài báo giới thiệu một nghiên cứu ứng dụng
mạng nơron để giải bài toán động học ngược cho
tay máy tránh vật cản. Kết quả là đã tìm được
một mạng nơron với cấu trúc và bộ trọng số thích
hợp cho bài toán này. Với mạng nơron vừa tìm
được thì các khâu của tay máy đã không va chạm
với vật cản khi làm việc. Điều đó chứng tỏ thuật
toán tránh vật cản là chính xác, mạng nơron tìm
được đã nhận biết được chính xác lời giải của bài
toán động học ngược tay máy tránh vật cản.
Nghiên cứu này đã mở ra một hướng mới, hiệu
quả cho vấn đề tránh vật cản của tay máy.


HỘI NGHỊ KHCN TOÀN QUỐC VỀ CƠ KHÍ - ĐỘNG LỰC NĂM 2017
Ngày 14 tháng 10 năm 2017 tại Trường ĐH Bách Khoa – ĐHQG TP HCM

REFERENCES
[1]. Lương Hồng Sâm, Nguyễn Việt Hùng, Ảnh
hưởng của vùng dữ liệu đến độ chính xác lời
giải bài toán động học ngược tay máy bằng
mạng nơron, Hội nghị Cơ khí - Động lực lần
toàn quốc (2016).


[2]. Wei

zhang, Tarek M. Sobh, Obstacle
avoidance for manipulator, System analysisd
ed. Norwell, MA: Kluwer, 159–160 (2001).
Model simul, Vol 43, No 1, pp 67-74 (2003).

SOLVE INVERSE KINEMATICS FOR ROBOT MANIPULATOR WITH
OBSTACLE AVOIDANCE USING NEURAL NETWORK

ABTRACT :
Controlling the grip of manipulator to a certain
position and the manipulator avoids obstacles in
its operation space is a complicated problem
because it requires solving the inverse kinematics
and solving the avoidance obstacle problem.
Solutions of the obstacle avoidance problem not
only help the manipulators to eliminate collisions
during operation, but also to ensure them move
smoothly. This paper introduces a method based

on neural network for solving inverse kinematics
of robotic arm avoiding obstacle with one obstacte
and the location of the obstacle is determined.
The obstacle avoidance will be accomplished by
identifying
and
excluding
joint

variables
corresponding with space of obstacle in the neural
network training data set to solve inverse
kinematics.

Keywords : Inverse kinematics, Neural netwoks, Obstacle avoidance

Trang 349



×