Welcome to Scribd. Sign in or start your free trial to enjoy unlimited e-books, audiobooks & documents.Find out more
Standard view
Full view
of .
Look up keyword
Like this
0 of .
Results for:
No results containing your search query
P. 1
5. Path Planning for a Mobile Robot in a Dynamic Environment

5. Path Planning for a Mobile Robot in a Dynamic Environment

Ratings: (0)|Views: 177|Likes:
Published by Khanh Quoc

More info:

Categories:Types, Research
Published by: Khanh Quoc on Dec 27, 2010
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less





Ienvironmenthe experimintegrationalgorithmsand anotherget the worused in robsimulator isrobot manu
 Mobility inavigate infrom matechniquesthis featurthe use omanufacturobotenvironmerequired cin his pathtoday’s mand otherdynamicissue onoperationnot an easpath plannfor nonholvarious ro1993). Inavoid statiand its colike for pasome techenvironmeshown in F 
ath Plan
School of  jay
this paper, thts like manufactents in the indf potential fieldre divided intois local path pling environment control progrdeveloped for tl control and rePioneer mobile
is an importthe dynamicipulator rofor the robotis not sufficimobile roboring industriesorks undets. Hence,aracteristics t. Mobility isbile robot butparametersnvironment.controlling ar multiple opy task to achiing in an unk nomic mobileot constraintsddition, to coand dynamintrolling actioth planning.iques for contt. The approig. 1.
ing for a
 jay Bodhal
ngineering anodhale@ait.a
path planninguring industriesor environmentechnique andtwo sub modulenning, which ut information fram for continuohe user-robot inal robot automatobot; Path plan
ant featureenvironmentotics. Thereto make it mient. Nowadats in many, offices in whcontinuorobot shouldavoid an obnot only the ralso controlliis important
Nonholonomymobile roboeration mobileve smooth anown dynamirobots, whic(Khatib, O. atrol such moobstacles, mns are also venerally, morolling its actich for contro1. IFToM
, Nitin AfzTruo
d Technology,Pathumthan.th, dhananja
algorithms arewith machinert. The work foonte Carlo Los, one is globalse potential fielom the overheaus localization.teraction. The sic control moduning; Potential f 
or robots tohich differs itare manybile, but onlys, we can seeields such asich the mobiles dynamichave thosestacle that liesequirement ong the motionaccording tois a centralt in a singlee robots. It isnd continuousenvironmentare subject tod Quinlan, S.ile robot or totion planningery importantile robots useon in dynamiclling action isM Internation
obot in A
lpurkar Meng Thanh
 Asian Institut i 12120, Thail ybodhale@gm
developed for tparts as movinuses on the decalization (MCLpath planning,d method to avod global cameraUser friendlyoftware includeles for navigatioield; Monte Car
Fig.1. Ge(Turenno
There arand pathMostly u
AI, Neual.1997)
al SymposiumSeptember
mber IEEE
e of Technolond ail.com, nitin
he mobile robotg objects. Pionvelopment of p) method for rowhich use visibiid the obstacles. MCL algorithath planning sos image processn in dynamic elo Localization;eral control scht P. Van et al.)
many techniplanning in lased techniqueMotor schemVelocity obst. and ShillerPolar polyno(Ge Shuzhi SIntelligent coral network Artificialeitia Josu et alProceedings oon Robotics a21 - 23, 2009,
and Nguyen
 y, Klong Luaait.ac.th
s which work er 2 DX mobilath planning albot navigation.lity graph with. The image prs with gradienftware PMADEing, path plannivironment.Dynamic envireme for mobile
ues used to cst decades.are,technique (Hcle, collision., 1998)mial curvesam et al. 2007mputing bastc) (Fernandpotential.)f the ISRM 20nd MechatroniHanoi, Vietn
nder the dynae robot is usedgorithms withThe path planniA* search methcessing is used
t path planningV 2.0 with rong, simulator, rnment
ntrol the motiuq Rajibul et aone method(sensor base)d method.(Gza Juan A.ield meth09csm
In this paper, we are focusing on the obstacleavoidance technique in the dynamic environmentsuch as manufacturing industry environment. For thisobstacle avoidance technique in dynamicenvironment, new algorithms are designed for mobilerobot navigation. The algorithms are designed byusing two techniques. First one is path planning bypotential field approach, which is one of the mostpopular for path planning due to its less calculationtime, and the second technique is Monte CarloLocalization (MCL) (Fox Dieter et al., 1999), whichis one of the most useful localization techniques formobile robotics. In addition, we designed userfriendly Path planning for Mobile robot in ADynamic Environment (PMADE) V 2.0 software forthe user-robot interaction.Path planning is the art of deciding which route totake for navigation under dynamic environment. Thepath planning is based on the current internalrepresentation of the terrain.It involves manycomputations for continuous movement andsequences while moving between the start and endgoal. The path planning involves the computation of collision free path between the two known goals. Theoverhead global color camera has been used forimage processing. The MCL algorithms use sonarsensors for proper localization of the robot in anunknown dynamic environment. The gradient pathplanning algorithm is introduced in path planningmodule to avoid obstacles and to increase the safetyfactor of the robot. The MCL algorithms use all theposition data continuously from the path planningalgorithms for mobile robot localization.This paper is organized as follows. First, the pathplanning module using potential field method isdescribed. The sub modules of path planningalgorithms global path planning and local pathplanning, is presented. The robot control module ispresented in which the Monte Carlo localizationapproach, gradient path planning method ispresented. In the last portion of the paper, design of the obstacle avoidance algorithms described withGUI. Finally, the paper is concluded with real robotand simulator experiments with its results andanalysis.
Path planning module for mobile robotusing potential field technique
In this method, the real valued potential field isconstructed around the robot (
)) and the potentialfield is kept zero value at a goal position. So that, therobot tries to move toward the lower potential fieldi.e. toward the goal. The goal acts as an attractiveforce on the robot and the obstacles act as peaks, orrepulsive forces. The superposition of all forces isapplied to the robot, which, in most cases, is assumedto be a point in the configuration space. Such anartificial potential field smoothly guides the robottoward the goal while simultaneously avoidingknown obstacles.The basic idea behind all potential fieldapproaches is that the robot is attracted toward thegoal, while being repulsed by the obstacles that areknown in advance. If new obstacles appear duringrobot motion, one could update the potential field inorder to integrate this new information. If we assumedifferentiable potential fields function
) aroundthe robot, we can find the related artificial force
)acting near the obstacles position
 
denotes the gradient vector
(2)Path planning using potential field algorithms aredesigned by the combination of Astar search method,global static path planning module, local dynamicpath planning module and image processing module.
Pioneer robot control module
The control program includes Monte Carlolocalization algorithms and gradient path planningalgorithms. The sonar sensors are used for robotlocalization and obstacle detection in the dynamicenvironment. The gradient path-planning moduleruns parallel with MCL algorithms. In case the sonarsensors detecting any obstacle, at that instant therobot plans its own path and moves to the next goalby avoiding the obstacle.
3.1. Monte Carlo Localization
MCL algorithms (Fox Dieter et al. 1999) particularlykeeps robot updating its steps continuously in theworkspace. The sonar and motor encoder sensors of the robot send continuous data to the robot clientprogram, which is on the PC. The complete system isclosed loop system. MCL algorithms address theproblem of state estimation from sensor data. MCL isa probabilistic algorithm and maintains a probabilitydistribution over the space.The general idea for MCL algorithms is given as:
Initialize the set of current samples so thattheir locations are evenly distributed andtheir importance weights are equal.
Repeat until done with the current set of samples.
Move the robot a fixed distance and thentake a sensor reading.
Update the location of each of the samples(using the movement model).
Assign the importance weights of eachsample to the likelihood of that sensorreading given that new location (using thesensor model).
The actual distance moved by the robot using MCLmay not be correct sometime. Hence, MCL usessampling data. The steps are given below.
Create a new collection of samples bysampling (with replacement) from thecurrent set of samples based on theirimportance weights.
Let this be new collection become thecurrent set of samples.In step four, samples with a high importance weightare more likely to be chosen than those with lowprobability, and some sample may be repeatedlychosen. Therefore, we (usually) end up with a set of samples with a higher cumulative importance weightthat those we had before. MCL uses fast samplingtechniques to represent the robots belief. When robotmoves or senses, importance re-sampling is appliedto estimate the posterior distribution.
3.2. Gradient path planning algorithms
The gradient-based (Konolige Kurt., 2001) pathplanning is very useful when sonar detects anyobstacle. With the help of these algorithms robotplans its own path by avoiding the obstacles.The path generated by the gradient path planningconsiders local obstacle sensed by sonar devices andglobal map information like walls and otherobstacles. In 100 ms, the module updates the positionand set the goal point for robot movement.
Design of obstacle avoidancealgorithms with GUI
The algorithms are designed for the mobile robotworking in manufacturing industry environment withmachinery parts as the moving objects. The potentialfield technique is used for path planning in dynamicenvironment. The data we get from path planning interms of x, y and theta position i.e. in terms of goals(position data). In this section we are focusing onhow the position data from path planning module useto localize the mobile robot in the dynamicenvironment and the operation of the simulator.Total numbers of obstacles are limited up to fourdue to limitation of camera field of view andworkspace area. We are using three static obstaclesand one moving obstacle with constant velocity inone direction and the overhead global camera forcapturing the images. The path-planning moduleprocesses the image data from camera and calculatesposition data in terms of X, Y, and theta. TheLocalization algorithms use these continuous positiondata to localize and to move the real mobile robot indynamic environment. Total position data from thepath-planning module gives shortest path by avoidingthe obstacles.As the robot is moving in the dynamicenvironment, the safety becomes main factor duringnavigation. The path planning algorithms use imageprocessing from overhead camera and plan a shortestpath within the dynamic environment from start togoal position, but if there is any change in position of the static obstacles after image processing done, thecreated path by path planning module will notchange. Hence, the MCL algorithm with gradientpath planning method becomes very important insuch conditions. However, if we changed the positionof the static obstacle after image processing the pathcreated by the path-planning module may fail whichwas already planned. In such case, we need tomaintain safety. To do this, sonar sensor plays animportant role for avoiding collision and maintainingsafety. After that when robots sonar sensors senseany obstacle, robot tries to avoid the obstacle butsometimes it stops for safety reason. As given in theblock diagram (Fig. 2.), camera tracks the workspaceand all obstacles. The camera sends the data to thepath-planning module where it calculates the positiondata in terms of X, Y coordinates. As robot only canmove the distance more than its radius i.e. 250 mm.Hence to increase the distance between goal pointswe set the appropriate step time so that MCLalgorithms will read the goals having distance morethan 250 mm. Now as soon as simulator startsmoving, the real robot also starts moving on the samepath on which simulator is moving. While movingthe robot in real environment the robot uses sonarsensors to avoid any unpredictable obstacle. Mostprobably the collision situation may occur whileavoiding moving obstacle. Timing is the measurefactor for avoiding moving obstacle. If sometimesimulator planning a wrong path i.e. showing thecollision with the obstacle in that cases the sonarsensor works well and it avoids the collision with theobstacle. If sensor senses moving obstacle which isvery near to the robot (<15 cm), the robot motor stallsfor safety reason. This is the inbuilt function in theP2OS (inbuilt operating system program) of therobot. Otherwise if the sensor senses the movingobstacle at >15 cm the robot gets time to takenecessary action and the gradient path planningexecutes.If sometime, simulator planning a wrong path i.e.showing the collision with the obstacle in that casesthe sonar sensor works well and it avoids thecollision with the obstacle. If sensor senses movingobstacle which is very near to the robot (<15 cm), therobot motor stalls for safety reason. This is the inbuiltfunction in the robots to plan its own path byavoiding the obstacle. After that, the robot try to findthe next goals from the position data file and try toreach the next goal. While avoiding the obstacle therobot skips some goals from the position data array.This cycle continues up to the final goal.

Activity (5)

You've already reviewed this. Edit your review.
1 thousand reads
1 hundred reads
bekirovich liked this
bekirovich liked this
Nguyen Viet Quoc liked this

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->