ng ng tin c vµt sè i to¸n kÜ thuËt
§ç Sanh1, §inh V¨n Phong1, NguyÔn Thanh Thuû2, NguyÔn NhËt Quang3, Phan M¹nh
DÇn1, §ç §¨ng Khoa1.
1) Bé m«n C¬ häc øng dông
2) Trung t©m tÝnh to¸n hiÖu n©ng cao
3) C«ng ty tinc Hµi Hoµ
1. Më ®Çu
ViÖc sö dông c«ng nghÖ th«ng tin ®Ó gi¶i quyÕt c¸c bµi to¸n khoa häc kü thuËt lµ
xu huíng tÊt yÕu cña thêi ®¹i. Tuy nhiªn kh¸c víi nhiÒu n¨m tríc ®©y xu thÕ nµy ®ang
cã nhiÒu ®ßi hái cÊp thiÕt h¬n, c¶ tõ phÝa c«ng nghÖ th«ng tin còng nh phi¸ c¸c lÜnh
vùc kü thuËt sö dông c«ng nghÖ nµy . Nh÷ng ®ßi hái nµy yªu cÇu cã sù häp t¸c chÆt chÏ
h¬n n÷a gi÷a c¸c c¸n bé nghiªn cøu vµ ph¸t triÓn øng dông, ngay tõ khi bµi to¸n ®îc
nh thµnh cho ®Õn c«ng ®o¹n cuèi cïng cña viÖc gi¶i quyÕt c¸c bµi to¸n.
Tõ phÝa c«ng nghÖ th«ng tin, sù ph¸t triÓn m¹nh mÏ cña c¸c kü thuËt míi ®Æc
biÖt lµ cña c¸c thiÕt bÞ phÇn cøng... ®· t¹o ra rÊt nhiÒu triÓn väng vÒ tèc ®é tÝnh to¸n, kh¶
n¨ng thÓ hiÖn vµ lu tr÷ tng tin... Tuy nhiªn ë ViÖt nam ®iÒu y cã vÎ nh míi chØ
dõng ë viÖc t¹o ra c¸c c«ng cô vµ cha t×m ra ®îc c¸c bµi to¸n cô t®Ó sö dông c¸c
kh¶ n¨ng míi nµy.
Trong tham luËn díi ®©y chóng t«i xin ®Ò cËp vµ ph©n tÝch mét sè dô vÒ kh¶
ng sö dông y tÝnh tèc ®é cao trong viÖc gi¶i quyÕt c¸c bµi tn c¬ häc. Th«ng qua
viÖc m« t¶ c¸c yªuu cña bµi to¸n c¬ trong viÖcy dùng ph¬ng tr×nh chuyÓn ®éng,
gi¶i c¸c ph¬ng tnh nµy ®Ó dÉn ®Õn vc m« pháng vµ ®u khiÓn c¸c hÖ c¬ häc, c¸c
øng dông cña c«ng nghÖ cao trong lÜnh vùc c«ng tin häc nh: xö lý song song, xö lý thêi
gian thùc, m« pháng, lý ®å ho¹ ®éng... ®îc ®Ò p
2. Bµi to¸n thø nhÊt: bµi to¸n ngîc ®éngc a robot
Ta xÐt bµi to¸n ngîc ®iÒu khiÓn tèi u ®éngc cña r«t. Néi dunga bµi
to¸n nh»m gi¶i quyÕt bµi to¸n ngîc mét c¸ch tæng qu¸t dùa trªn ph¬ng ph¸p tèi u sè
vµ m« pháng ho¹t ®énga r«t trong kh«ng gian ®å ho¹ ba chiÒu.
2.1. §Æt bµi to¸n
Bµi to¸n nµy kh¶o s¸t bµi to¸n ngîc ®u khiÓn ®éng häc r« bèt. Bµi to¸n x¸c
®Þnh qui luËt thay ®æi theo thêi gian cña c¸c th«ng sè ®Þnh vÞ, th«ng sè vËn tèc cña tay
m¸y ®Ó nã n¾m b¾t ®îc ®èi tîng di ®éng.
§Ó t¨ng ®é ªm cho tay kÑp khi n¾m b¾t ®èi tîng (tr¸nh va ch¹m) cÇn ph¶i
®iÒu khn ®Ó vÞ trÝ cña tay kÑp kh«ng chØ b¾t ®îc ®èi tîng mµ vËn tèc vµ hínga
tay kÑp còng cÇn trïng víi vËn tèc vµ hãng cña ®èi tîng. Khi thùc hiÖn yªu cÇu nµy
lu«n cã sù sai lÖch vÒ vÞ trÝ vµ vËn tèc cña tay kÑp soi vÞ trÝ vµ vËn tèc cña ®èi tîng.
Bµi to¸n ®u khiÓn tèi u ®Æt ra lµ t×m c th«ng sè ®iÒu khn ®Ó tæng b×nh ph¬ng c¸c
sai lÖch trÝ vµ vËn tècnhÊt.
2.2 së lý thuyÕt.
2.2.1 C¸c c«ng thøc ®éng häc r«bèt x¸c ®Þnh vÞ trÝ vµ vËn tèc
Khi kh¶o s¸t robot ta thêng ta söng ph¬ng ph¸p ma trËn Denavit-
Hartenberg, trong ®ãliªn kÕt gi÷a c kh©u cña robot ®îc thÒ hiÖn qua ma trËn
truyÒn cã d¹ng sau:
cos( ) cos( ).sin( ) sin( ).sin( ) .cos( )
sin( ) cos( ).cos( ) -sin( ).cos( ) .sin( )
0sin() cos()
00 0 1
jjjjjkj
jjj jjkj
jjj
a
a
d
θαθαθ θ
θαθ αθ θ
αα



=


j
j-1
H (2.1)
trong ®ã c¸c tham sè cã ý nghÜa nh sau:
θj lµ gãc quay trôc xj-1 ®Õn trôc xj quanh trôc zj-1,
dj lµ ®o¹n dÞch tc xj-1 ®Õn trôc xj däc trôc zj-1,
aj lµ ®o¹n dÞch tc zj-1 ®Õn trôc zjc trôc xj-1,
αj lµ gãc quay trôc zj-1 ®Õn trôc zj quanh trôc xj-1.
Ma trËn truyÒn toµn thÓ cã d¹ng:
() () () ()
12 n
qq q
tay kep 1 2 n n
de 0 1 n-1 0
H = H .H ....H = H q
()
n
0
Hqd¹ng:
() ()
1
R
qpq
0 (2.2)
trong ®ã hÖ to¹ ®é ®Õ bèt kÝ hu lµ 0, hÖ to¹ ®é tay kÑp r« bèt hiÖun, q lµ ma
trËn nx1 cñac to¹ ®é suyng, chóng lµ c¸c th«ng sè ®Þnh vÞ cña r«bèt. R(q) lµ ma
tn 3x3 x¸c ®Þnh híng cña tayp, p(q) vect¬ 3x1 x¸c ®Þnh vÞ trÝ ®Çu bµn kÑp so víi
hÖ ®Õ. Bat a ma trËn R t¬ng øng víi híng cña ba vect¬ ®¬n trªn hÖ g¾n víi tay
kÑp so víi ®Õbèt (hÖ to¹ ®é nÒn).
VÞ trÝ cña mét ®iÓm P thuéc tay kÑp ®îc x¸c ®Þnh theong thøc :
()
0
n
pp
r=H qr (2.3)
trong ®ã p
r lµ vect¬ ®Þnh ®iÓm P thuéc tay kÑp so víi hÖ to¹ ®é nÒn, p
r lµ vect¬ ®Þnh
vÞ ®iÓm P trong hÖ to¹ ®é g¾n vµo tay kÑp r«bèt.
Tõ c«ng thøc (2.3) tang x¸c ®Þnh ®îc vËn tèc ®m Pn vµo tay kÑp
r«bèt so víi hÖ to¹ ®é nÒn :
pp np
0
v=r=H.r
&
& (2.4)
§Ó tiÕn hµnh ®iÒu khn ho¹t ®éng cña tõng kh©u r«bèt, ta tiÕn hµnh biÓu diÔn
ma trËn n
0
H
& díing sau :
n
n(i)
0i
i=1
H= Hq
&& (2.5)
trong ®ã H(i) lµ ma trËn øng víi khíp i chØ phô thuéc vµo biÕn khíp, p
r
&lµ vÐc t¬ vËn
tèc cña ®iÓm cuèi tay kÑp so víi hÖ to¹ ®é nÒn,
n
0
H
& lµ ma trËn ®¹o hµm cña ma trËn
Denavit-Hartenberg gi÷a to¹ ®é nÒn víi hÖ to¹ ®én vµo tay kÑp, i
q
& lµ vËnc a
chuyÓn ®éng i khíp thø i.
§èi víi bµi to¸n thuËn ®éng häc, tøc lµ biÕtc to¹ ®é suy réng vµ c¸c vËn tèc
suyng, ta cã thÓ tÝnh ra ®îc vÞ trÝ vµ vËn tèc cña n kÑp. Tuy nhiªn bµi to¸n ngîc
th× phøc t¹p h¬n nhiÒu nÕu ta xÐt ®Õn c¸c vÞ trÞ suy biÕn,c vÞ trÝ n»m ngoµi khu vùc
ho¹t ®éng cña robot..., lóc ®ã th«ng thuêng ta sÏ gÆp rÊt nhiÒu khã kh¨n ®Ó t×m ra lêi
gi¶i, tøc lµ c¸c to¹ ®é suy réng vµ c¸c vËn tèc suy réng cña c¸c khíp
2.2.2 Bµi to¸n ®u khiÓn tèi u víii to¸n ngîc.
c ®Ýcha bµi to¸ni u lµ t×m rac th«ng®Þnh vÞ vµ vËn tèc cña bèt
khi cho r«t n¾m b¾t mét ®èi tîng ®ang chuyÓn ®éng. Víi d÷ liÖu ®Çu vµo lµ vÞ trÝ,
vËn tèc vµ híngmt ®èi tîng, ta gi¶i quyÕt bµi to¸n b»ng ph¬ng ph¸p tèi u víi
hµm môc tiªu cã d¹ng:
()()()()()
()
()()()
22222
*****
12 345
222
2***
*
67 8 9
PPPPP
PPP
Pxx yy zz
Frx x ry y rz z rx x ry y
rz z rR R rR R rR R
=−++−++
+−+ + +
&& & &
&&
(2.6)
Trong ®ã:
***
,,xyz lµ t ®é hiÖn thêi a ®èi tîng di chuyÓn.
***
,,xyz
&&&
lµ vËn tèc hiÖn thêi cña ®èi tîng di chuyÓn.
***
,,
xyz
RRR lµ híng n n¾m b¾t ®èi tîng.
,,
PPP
xyz
lµ t ®é hiÖn thêi cña ®Çu tay kÑp b«t.
,,
PPP
xyz
&&&
vËn tèc hiÖn thêi cña ®Çu tay kÑp r«b«t.
,,
PPP
xyz
RRRhíng tayp r«b«t.
r1->r9 lµ c¸c träng
c th«ng cha biÕt lµ hµm cña c¸c th«ng sè ®Þnh vÞ vµ th«ng vËn tèc cña r«bèt.
() ( ) ()
() ( ) ()
() ( ) ()
(1) (2) (3)
(1) (2) (3)
(1) (2) (3)
,,,
,,,
,,,
pP P
xxxx
pP P
yyyy
pP P
zzzz
xf xf Rf
yf yf Rf
zf zf Rf
== =
== =
== =
qqqq
qqqq
qqqq
&
&
&
&
&
&
(2.7)
Ta thu ®îc hµm môc tiªu F cã d¹ng:
()
,FF=qq
& (2.8)
m môc tiªu F hµm chØ phô thuéc vµo c¸c th«ng sè ®Þnh vÞ vµ th«ng sè vËn tèc. Khi
cho F -> min ta sÏ thu ®îc c¸c th«ng sè ®Þnh vÞ vµ th«ng sè vËn tèc: ,
q
q
&. ¦u ®iÓma
ph¬ng ph¸p nµy lµ cã thÓ dïng ®Ó gi¶i quyÕt bµi to¸n ngîc cña r«bèt mét c¸chng
qu¸t vµ mÒm dÎo mµ kh«ng bÞ giíi h¹n bëi bËc tù do cña bèt.
Víi møc ®é pc t¹p cña bµi to¸n, nhÊt lµ ®èi víi c¸c bµi to¸n tæng qu¸t cÇn thiÕt
phi dông c¸c ph¬ng ph¸p sè ®Ó gi¶i quyÕt bµi to¸n tèi u. ViÖc nµy ®ßi hái ph¶i co
c thuËt gi¶i tèi u tèt. C¸c hµm môc tiªu ®ßi hái viÖc tÝnh to¸n x¸c ®Þnh vÞ c¸c th«ng
sè cña ®èi tîng ®éng lóc ®ang di chuyÓn. C¸c th«ng sèy cã t®îc ®a vµo díi
ng hµm gi¶i tÝch, tuy nhiªn hoµn toµn cã t dôngc d÷ liÖu ®îc ®a vµo theo
ng thêi ®iÓm (vÝ dô sö dông camera...). §iÒuy râ rµng ®a ra nh÷ng yªu cÇu vÒ c¸c
kh¶ n¨ng tÝnh to¸n vµ xö th«ng tina c¸cy tÝnh. T¬ng tù nh vËy thÓ thÊy
ng mçi bíc tèi u ®ßi hái phi gii quyÕti to¸n thn nhiÒu n, ®iÒu nµy ®ßi i
kh¸ cao vÒ tèc ®é, thêi giannh to¸n.... ®Ó thÓ b¾t p ®èi tîng ®ang di chuyÓn.
2.2.3 M« pháng ®å ho¹ ®éng cña robot
§Ó minh ho¹ vµ theo dâi qu¸ tr×nh lµm viÖc cña robot ta cã thÓ m« pháng qu¸
tr×nh ho¹t ®éng cña robot th«ng qua viÖc x©y dùng ®å ho¹ ®éng cho m« h×nh. Cã nhiÒu
kü thuËt ®Óy dùng thùc tr¹ng ¶o hç trî cho muc ®ichy. Nhãm nghiªn cøu ®· y
dng ch¬ng tr×nh m¸y tÝnh viÕt b»ng ng«n ng÷ C++ sö dông c«ng cô lËp tr×nh Visual
C++ 6.0 cã sù hç trî cña th viÖn ®å ho¹ OpenGL. Lý do ®Ó chän c¸c c«ng cô nµy ta
thÓ sö dông chóng trªn c¸c m¸y tÝnh c¸ nh©n th«ng thêng
2.3 §¸nh gi¸ qua vÝ dô cô thÓ
Nhãm nghiªn cøu ®· x©y dùng ch¬ng tr×nh m« pháng qu¸ tr×nh n¾m b¾t ®èi
tuîng cña robot Gryphon. Toµn bé qua tr×nh m« pháng ®îc thùc hiÖn trªn c¸c m¸y tÝnh
c¸ nh©n th«ng thêng víi bé vi xö lý Pentium III.
Robot Gryphond dong Feedback cña Anh s¶n xuÊt phôc vô cho môc ®Ých
nghiªn cøu. §©y lµ mét r«bèt n¨m trôc: trôc h«ng, trôc vai, trôc khuûu tay, trôc cæ tay
(pitch), trôc cæ tay (roll) va bµn kÑp, xem h×nh vÏ 1.
H×nh 1
Nh÷ng u ®iÓm næi bËt cña r«bèt lµ chuyÓn ®éng nhanh, chÝnh x¸c vµ mÒm m¹i.
bèt ®îc ®iÒu khiÓn bëi bèn vi lý cho phÐp ®iÒu khn ®Æt vËt chÝnh x¸c. Mçi trôc
cña r«bèt ®îc ®iÒu khiÓn bëi mét ®éng c¬ bíc víi bé m· ho¸ phn håi. Trong ®iÒu
khiÓn, mét vi xö lý sÏ gm s¸t vÞ trÝ cña c¸c trôc. Hai c¸i kh¸c sÏ qu¶n lýc ®éng c¬
vµ c¸i cßn l¹i sÏ gi¸m s¸t c¶ ba c¸i trªn ®ång ti lµm nhiÖm vô giao tiÕp víi m¸y chñ.
ViÖcnh to¸n m« pháng trªnynh c¸ nh©n ®îc thùc hiÖn th«ng qua c¸c
c«ng thøc ®· ®îc tr×nhy s¬ lîc trong phÇn 2.2. Trong bµi tn tèi −− ph¬ng ph¸p
tèi u sè ®îc sö dông ph¬ng ph¸p Rosenbrock. §©y lµ ph¬ng ph¸p kh«ng cÇn tÝnh
®Õn c¸c gi¸ trÞ ®¹o hµm cña hµm môc tiªu vµ sÏ t×m c¸c gi¸ trÞ tèi ua hµm sè theo
c¸c híng x¸c ®Þnh trong mçi giai ®o¹n cña qu¸ tr×nh t×m kiÕm.
t qu¶ tÝnh to¸n cho thÊy c¸c thuËt gi¶i ht ®éng tèt. C¸c kÕt qu¶ m« pháng vµ
gi¸ trÞ cña c¸c to¹ ®é suy réng lµ liªn tôc ë mäi vÞ trÝ cña quÜ ®¹o. §iÒu ®ã cho phÐp
robot ho¹t ®éng mÒm m¹i vµ n¾m b¾t ®èi tîng t¬ng ®èi ªm.
Tuy nhiªn tèc ®é thÓ hiÖn ®å ho¹ ®éng t cßn xa míi cã thÓ ®¹t ®îc kng
m« pháng thêi gian thùc. §iÒu nµy lµ hn toµn dÔ hiÓu v× tn bé chong tr×nh chØ ch¹y
trªn 1y tinh c¸ nh©n theo thuËt gi¶i "th¼ng". §©y chÝnh lµ ®iÓm cã thÓ øng dông c«ng
nghÖ th«ng tin ngâ hÇu t¨ng tèc ®é tÝnh to¸n vµ m« pháng.
Cã nhu c¸ch ®Ó cã thÓ ®¹t ®îc môc ®Ýchy. §iÒu ®ã pthuéc vµo c¸c c«ng
cô phÇn cøng vµ mÒm mµ chóng ta cã trong tay. Liªn quan ®Õn viÖc sö dông c¸c thuËt
gi¶i song song ®Ó gi¶i quyÕt bµi to¸n trªn, ta cã t "song song ho¸" qu¸ tr×nh tÝnh to¸n,
®îc m« t¶ trong phÇn 2.2 ë c¸c phÇn sau:
Trong viÖc gi¶i quyÕt bµi to¸n tèi u, c¸c gi¸ trÞ cña c¸c ma trËn thµnh phÇn,
c¸c phÇn tö trong c«ng thøc (2.1), (2.2),... ®îc xö lý ®ång thêi.
ViÖc thÓ hiÖn (vÏ) c¸c kh©u kh¸c nhau cña robot trong qu¶ tr×nh m« pháng
®îc xö lý ®ång thêi.
C¸c vÊn ®Ò nµy cÇn ®îc nghiªnu, thö nghiÖm vµ ®¸nh gi¸ chÝnh x¸c, so sanh
gi÷a c¸c trêng hîp cã 1 m¸y tÝnh (1 vi xö lý) vµ c¸c hÖ m¸y tÝnh chøa nhu vi xö lý
hon.
3. Vi dô thø 2: ®éng lùc hoc nhiÒu vËt
Trong pn y ta xÐt ®Õn mét sè vÊn ®Ò xt hiÖn trong q tr×nh tÝnh to¸n m«
pháng ®éng lùc häc hÖ nhiÒu vËt. Qu¸ tr×nh m« pháng b¨t ®Çu tõ viÖc y dông ph¬ng
tr×nh chuyÓn ®éng, gi¶i m« pháng ®éng hÖ c¬ nhiÒu t.
3.1 së lý thuyÕt
ViÖc m« pháng sèc hÖ c¬ nhiÒu vËt lµ vÊn ®Ò thêi sù, cµng ngµy cµng ®uîc
quan m nhiÒun trong 2 thËp a qua. Trªn thÕ gi hiÖn ®· tån t¹i t phÇn
mÒm trong nh vùc nµy nh: ADAMS, SIMPACK, NEWEUL, ALASKA,.... Chóng cã
thÓ ®îc söng trong c lÜnh vùc nghiªn cøu vµ øng dông c«ng nghiÖp. Tuy nhiªn
c¸c pn mÒmy ®Òu cã nh÷ng nhîc ®iÓm riªng, nh xö lý ®å ho¹ vµ giao diÖn cha
tèt, khng xö lý thêi gian thùc cha cã... vµ h¬n thÕ n÷a gi¸ tnh cao. ViÖc nghiªn
cøu x©y dng mét ch¬ng tr×nh phï häp víi ®iÒu kiÖn Viªt nam ®· ®uîc tiÕn hµnh tõng
buíc ®· ®¹t ®îc mét sèt qu, th«ng qua viÖc x©yngi ch¬ng tr×nh bao gåm
nhiÒu module phôc vô m« pháng.
§Ó viÕt ph¬ng trinh chuyÓn ®énga hÖ c¬ nhiÒu vËt ta thÓ dïng nhiÒu
ph¬ng ph¸p kh¸c nhau. §Ó minh ho¹ ta cã thÓ sö dông phu¬ng trinh hay ®îc nh¾c ®Õn
nhiÒu nhÊt: ph¬ng tr×nh Lagrange lo¹i II. NÕu sö dông c¸c to¹ ®é suy réng ®ñ qi ,
i=1,2,...n víi n lµ sè bËc tù do cña c¬ hÖ, th× ph¬ng trinh Lagrange lo¹i II ®îc viÕt nh
sau:
dT T
dt

∂∂
−=

∂∂
Q
qq
&
TT
(3.1)
trong ®ã T lµ tæng ®éng n¨nga c¶ hÖ, Q lµ vector c¸c lùc suy réng, qq
& lµ c¸c
vector to¹ ®é suy réng vµ vËn tèc suy ng, t lµ biÕn thêi gian. Ta cã hÖ ph¬ng tr×nh vi
ph©n thêng cÊp 2 (ODE).
§èi víi hÖ c¬ nhiÒu vËt th«ng thêng ngßi ta haydông c¸c t¹o ®é suy réng
d, nh thÕ ph¬ng trinh Lagrange lo¹i II sÏ ®îc thay b»ng ph¬ng tr×nh Lagrange
ng nh©n tö. Trong ph¬ng tr×nh (3.1) sÏ xuÊt hiÖn thªmc nh©n tö Lagrange vµ c¸c
®¹o hµm riªng cña c¸c ph¬ng trinh liªn kÕt theo c¸c to¹ ®é suy réng qi. Cïng víi c¸c
phong tr×nh liªn kÕt ta sÏ thu ®îc hÖ ph¬ng tr×nh vi ph©n ®¹i sè (DAE).
§Ó cã thÓ x©y dùng ®îc phong tr×nh chuyÓn ®éng cÇn thiÕt phi tÝnh ®îc biªñ
thøc ®éng n¨ng cña c¶ c¬ hÖ vµ c¸c ®¹o hµm riªng cña nã theo c¸c to¹ ®é suy réng vµ
c¸c vËn tèc suyng. §éng n¨ng Ta c hÖ ®îc tÝnh nh tæng ®éng n¨ng cña tÊt
c¸ct thuéc c¬ hÖ:
1
N
k
k
TT
=
= (3.2)
i Tk lµ ®éng n¨ng cña vËt tk vµ N lµ sèt r¾n thuéc c¬ hÖ. §éng n¨ng Tka tõng
vËt ®îc tÝnh theo c¸c yÕu tè ®éng häc cña vËt r¾n ®ã. §©y lµ c«ng ®o¹n kh¸ phøc p vµ
®ßi hái nh÷ng thuËt to¸n tèt ®Ó xö lý, ®ång thêi còng tèn nhiÒu thêi gian tÝnh to¸n. Díi