Professional Documents
Culture Documents
126 Proceedings VCM 2012
126 Proceedings VCM 2012
126 Proceedings VCM 2012
VCM2012
Mt phng php trnh vt cn VFH ci tin cho robot di ng
An Improved-VFH Obstacle Avoidance Method for Mobile Robot
Nguyn Vn Tnh*, Phm Thng Ct*, Phm Minh Tun*, Trn Thun Hong**
*Vin Cng ngh Thng tin, Vin Khoa hc v Cng ngh Vit Nam
**i Hc Cng Ngh, i Hc Quc Gia H Ni
e-Mail: nvtinh@ioit.ac.vn
Tm tt
Bi bo ny trnh by mt phng php trnh vt cn c k tha v ci tin t phng php VFH ca J.
Borenstein. Phng php VFH truyn thng cho php trnh vt cn khng xc nh t trc ng thi hng
robot chuyn ng v pha mc tiu v ch thch hp vi cc robot di ng c gn b cc cm bin siu m
(sonar) c phn b u xung quanh robot. Phng php VFH ci tin c xut s khc phc i hi v
phn b u cc cm bin ny. Kt qu thc nghim trn robot di ng Pioneer-P3-DX cho thy tnh hiu qu
ca phng php mi.
Abstract
This paper presents of a VFH-based obstacle avoidance method for mobile robots which has been improved
from the original one by J. Borenstein. The original VFH method can orient the robot to move toward its target
while avoiding unknown obstacles along the path and be suitable for mobile robots with equally distributed
onboard sonar sensors. The improved VFH method compensates this equal distribution requirement for the
sonar sensors. Experiments on the Pioneer-P3-DX mobile robot showed that the efficiency of the proposed
method.
Keyword: VFH, VFF, sonar sensors, navigation, obstacles avoidance.
Ch vit tt
VFF Virtual Force Field
VFH Virtual Field Histogram
1. Gii thiu
Trnh vt cn l mt trong nhng vn chnh
trong iu khin robot di ng. Hu ht cc robot
di ng u c mt mt kiu trnh vt cn no ,
bao gm t cc thut ton n gin, cho php
robot xc nh vt cn v dng li khong cch
ngn so vi vt cn trnh va chm, n cc
thut ton tinh t hn, cho php robot di chuyn
theo ng vin quanh vt cn.
Phn 2 trnh by bn tm tt tng quan v cc
phng php trnh vt cn bo gm: phng php
pht hin sn, phng php trng th nng,
phng php trng lc o (VFF), phng php
trng ta cc (VFH). Phn 3 trnh by
phng php trnh vt cn Improved-VFH ca
chng ti. ng gp ca chng ti l, ci tin
phng php VFH ca J. Borenstein cho ph hp
vi cu trc phn b cc cm bin siu m trn
phn cng robot ca chng ti.
2. Cc phng php trnh vt cn
2.1 Phng php pht hin sn
Mt phng php trnh vt cn ph bin l da
trn sn. Trong phng php ny, thut ton s
dng cc cm bin camera, range finder, sonar
xc nh v tr cc ng sn thng ng ca
vt cn. Cc on thng ni lin cc sn thng
ng ny c gi l cc ng bin ca vt cn.
Sau iu khin robot di chuyn theo nhng
cch mt on ngn cc on thng ni lin cc
sn ny. Nhc im ca phng php ny l
robot phi dng pha trc vt cn ri thu thp
thng tin cc ng sn thng ng t cc cm
bin. Ngoi ra, cc chnh xc ca cc cm bin
nh hng rt nhiu ti kh nng thc hin cc
phng php ny. Cc cm bin siu m bc l rt
nhiu nhng nhc im nh sau:
a. Xc nh hng tng i ngho nn: lm hn
ch chnh xc trong vic xc nh v tr ca
sn t 10 n 50cm [8].
b.Thng xuyn c thng tin sai: c gy ra bi
cc nhiu siu m. Cc ngun nhiu c th l cc
ngun siu m t bn ngoi hoc phn chiu lch
hng t cc senror ln cn (phn x cho). c
sai khng th lun lun c loi b v chng lm
thut ton pht hin sn sai [8].
Tuyn tp cng trnh Hi ngh C in t ton quc ln th 6 537
M bi: 126
2.2 Phng php trng th nng
Phng php thit k qu o s dng cc trng
th nng nhn to c da trn nguyn l n
gin v hiu qu ca O. Khatib [13]. Robot c
xem nh mt cht im dch chuyn trong trng
th nng. Trng th nng ny c to bi mc
tiu v cc vt cn trong mi trng. Mc tiu to
ra lc ht trong khi cc vt cn to ra cc lc y.
Mt trng th nng c th c xem nh mt
trng nng lng v gradient ca n ti mi im
l mt lc. Robot di chuyn trong trng th nng
l im ta ca lc ht li robot ti mc tiu ng
thi lun trnh xa cc vt cn (do tc ng ca lc
y c to ra t dc (gradient) ca th nng
y).
Cc hm th nng cng c coi l mt trng c
cc ni v cc thung lng, im thp nht ca
thung lng chnh l mc tiu. Robot i theo ng
cong dc theo dc m ca hm th nng tc
di chuyn hng xung im thp nht trong
thung lng.
t q biu din v tr ca robot, c xem nh mt
phn t ang di chuyn trong khng gian n chiu
R
n
. n gin, xem robot nh mt cht im di
chuyn trong mt phng, tc n = 2 v v tr robot
c nh ngha bi q = (x,y).
Trng th nng nhn to l mt hm v hng
( )
2
: U R R q c to ra bi cc th nng ht v
y. Th nng y to ra t tng ca cc hm th
nng ring bit c to ra t cc vt cn. Th
nng ht dc to ra t mc tiu.
( ) ( ) ( )
i
att rep
i
U U U = +
q q q (1)
Trong ( ) ( ) ,
i
rep att
U U q q biu din th nng y
c to ra bi vt cn th i v th nng ht t
mc tiu [13].
Hm U(q) l kh vi. mi v tr q, dc ca
trng th nng, c nh ngha bi ( ) U V q , ch
hng tng ti gi tr ln nht cc b ca U(q).
Lc li robot l dc ngc ca th nng nhn
to, tc:
( ) ( ) ( ) ( ) ( )
att rep att rep
F F F U U = + = V V q q q q q (2)
Lc trong (2) l mt vc t ch hng gim gi tr
ln nht cc b ca U. Lc ny c th c xem
nh vc t vn tc iu khin robot im [13].
Th nng ht t l vi bnh phng khong cch
t robot n mc tiu [13]:
( ) ( )
2
1
2
att att goal
U k d = q q (3)
Trong
goal goal
d = q q l khong cch ca
robot ti mc tiu; k
att
l h s v hng. Robot
cng cch xa mc tiu, bin ca trng vc t
ht cng ln. Lc ht chnh l dc ngc ca
trng th nng ht [13]:
( ) ( ) ( )
att att att goal
F U k = V = q q q q (4)
t vc t vn tc robot t l vi lc ht. Lc ht
(4) iu khin robot i ti ch vi vn tc t gim
dn khi robot tin ti ch. Lc (4) biu din mt
s ph thuc tuyn tnh vo mc tiu, ngha rng
n c th tng ln v cng khi q dch chuyn ra xa
mc tiu. Khi robot xa mc tiu, lc ny tc
ng lm robot tin nhanh ti mc tiu. Mt khc,
lc v vn tc hng ti 0 khi robot tin ti ch.
Bi vy robot tip cn mc tiu chm dn.
Th nng y gi robot cch xa cc vt cn, bao
gm cc vt cn c bit trc v cc vt cn
c pht hin bi cc cm bin siu m. Th
nng y ny cng ln khi robot cng gn vt cn.
Th nng cn l tng ca tt c cc hiu ng cn
do cc vt cn gy ra, tc:
( ) ( )
i
rep rep
i
U U =
q q (5)
nh hng ca mt vt cn b gii hn trong phm
vi ln cn vi mt khong cch cho trc. Mt
vt cn rt xa robot dng nh khng y robot
ra xa n. Bin ca th nng y phi tng khi
robot tip cn vt cn. Biu thc tnh ton th nng
y nh sau [13]:
( ) ( )
( )
( )
2
0
0
0
1 1 1
2
0
i i
i obst obst i
rep obst
i
obst
k d d
U d d
d d
| |
<
|
|
=
\ .
>
q
q q
q
(6)
Trong ( )
i
obst
d q l khong cch t vt cn th i
ti q;
i
obst
k l h s t l v d
0
l ngng nh
hng ca vt cn.
Ngc du ca gradient ca th nng y,
( ) ( )
i i
rep rep
F U = V q q
Nhc im :
Phng php ny bc l nhiu nhc im, c
bit l nhy cm vi cc tiu cc b v robot b
dao ng khi i qua mt khng gian hp. Hin
hng cc tiu cc b thng xuyn xut hin do
s i xng ca mi trng.
H. 1 Th nng y v th nng ht [13].
538 Nguyn Vn Tnh, Phm Thng Ct, Phm Minh Tun, Trn Thun Hong
VCM2012
Kt qu thc nghim ca thut ton trnh vt cn
c m t bi ng nt lin nh hnh v di
y:
H. 2 Qu o trnh vt cn khi robot i t A n
B.
H. 3 Cc tiu cc b ca tng th nng do vt
cn lm to ra.
H. 4 Cc tiu cc b do s i xng ca mi
trng gy ra.
Trn H.3, mt trng hp khi robot b ht bi ch
(goal) trong khi n ang i vo ta q*. lc
ht cn bng vi lc y do cc bc tn to ra,
tc
( )
0 U
-
V = q .
Hin tng cc tiu cc b cng xy ra khi robot
i vo vng c m t nh H.4. th nng
do lc ht cn bng vi tng th nng do cc lc
y to ra.
i vi cc robot c rng buc khng kh tch
(nonholonomic) cng hn ch kh nng p dng
phng php trng th nng. Bi nu lc F(q) c
hng vung gc vi hng chuyn ng tc thi
ca robot th coi nh lc ny khng c nh hng
g ln robot.
2.3 Phng php trng lc o VFF
Phng php ny s dng biu li hai chiu
Cc C biu din mi trng xung quanh
robot. Mi (i,j) trong biu li C cha mt
gi tr c
ij
biu din tin cy ca thut ton v
s tn ti ca vt cn v tr tng ng .
VFF xy dng v cp nht biu li bng cch
tng +1 cho ch mt duy nht trong biu li
nh H. 5 (a). Khi robot chuyn ng, biu li
C bao gm w
s
w
s
bao trm ln robot v lun i
cng n.
ng thi ta cng p dng tng ca phng
php trng th nng trong biu li trn robot,
trong mi cha c
ij
0 c coi l mt vt
cn. Mi to ra mt lc o F
ij
hng v robot
nh H. 6. Bin ca F
ij
t l thun vi gi tr c
ij
v t l nghch vi bnh phng khong cch t
(i,j) ti robot. Tng hp cc lc y l vc t lc
R. ng thi, cng c mt lc ht o F
t
ht robot
v pha mc tiu.
Vi phng php ny, robot p ng nhanh hn,
linh hot hn so vi phng php trng th nng.
Nhng ngc li, n vn tn ti mt s nhc
im chnh nh:
- Khng i qua c ca phng, v khi cc
lc y t hai bn thnh ca to thnh hp lc
y robot ra xa ca.
- Khi robot di chuyn t ny sang khc trong
biu li, tng hp lc y thay i ln c
v bin v hng.
2.4 Phng php ta cc VFH
Phng php VFH cng s dng mt biu li
C nh trong VFF lm bn cho mi trng
xung quanh robot. Ngoi ra, phng php VFH
ny s dng mt qu trnh x l nhm thu gn d
liu trong hai giai on tnh cc lnh iu khin
mong mun (vn tc di, vn tc gc) cho robot.
H. 5 (a) ch mt c tng thm +1 i vi mi
ln c cm bin siu m; (b) biu li
c cp nht trong qu trnh chuyn ng
ca robot.
H. 6 Biu li v cc lc ht v lc y o
tc ng ln robot.
Cc gi tr
chim gi
Biu li
(a) (b)
Cc gi tr
chim gi
Tuyn tp cng trnh Hi ngh C in t ton quc ln th 6 539
M bi: 126
Trong giai on th nht, biu li c
chuyn i sang dng biu cc. Biu cc
ny c xy dng xung quanh v tr tc thi ca
robot. Mi sector trong biu cc cha 1 gi tr
biu din mt vt cn trong hng ca sector
. Trong giai on th hai, thut ton la chn
sector ph hp nht trong s tt c cc sector trong
biu cc vi
iu kin sector phi c gi tr mt vt cn
nh hn mt gi tr ngng cho trc, sau
robot s li theo hng ca sector .
Trong phng php VFH, c ba bc biu din d
liu tn ti [8]:
i. Bc u tin nm gi tp d liu miu t mi
trng xung quanh robot:
Trong bc ny, biu li Cc hai chiu
c cp nht lin tc trong thi gian thc vi d
liu khong cch ti vt cn d c thu t cc
cm bin siu m. Ni dung ca mi (cell) trong
biu li c xem nh mt vector vt cn m
hng ca n c xc nh bi hng t ta
tm robot ti .
0
0
atan
j
ij
i
y y
x x
v bin ca n c xc nh
bi:
( ) ( )
2
ij ij ij
m c a bd = [8].
trong : a,b l cc hng s dng
c
ij
l gi tr CV ca (active cell) (i,j)
d
ij
l khong cch gia (active cell) (i,j) v tm
robot.
m
ij
l bin ca vector vt cn.
x
0
, y
0
l ta tc thi ca robot.
x
i
, y
j
l ta ca (active cell)
ij
l hng t tm robot ti (active cell) (i,j)
a,b c chn sao cho
max
0 a bd = vi
( )
max
2 1 / 2
s
d w = l khong ti tm robot ti
active cell.
Mi sector k tng ng vi mt gc =5.k vi k=
0, 1, 2,, 71.
S tng ng gia c
ij
v k c thit lp qua.
k = INT(
ij
/5). Trong INT(x) l hm ly s
nguyn ln nht nh hn x.
ii. bc trung gian:
Biu cc H c xy dng xung quanh v tr
tc thi robot. H bao gm 72 sector, mi sc t c
b rng 5
0
. Mt php bin i nh x biu li
C vo H c thc hin. Khi mi vng (sector)
k nm gi gi tr h
k
biu din mt vt cn
(polar obstacle density) trong hng tng ng
vi vng k.
i vi mi sector k, hm mt tng ng h
k
c tnh bi:
,
k ij
i j
h m =