Technology

A 3-level autonomous mobile robot navigation system designed by using reasoning/search approaches

Description
A 3-level autonomous mobile robot navigation system designed by using reasoning/search approaches
Categories
Published
of 16
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
Share
Transcript
  Robotics and Autonomous Systems 54 (2006) 989–1004www.elsevier.com/locate/robot A 3-level autonomous mobile robot navigation system designed by usingreasoning/search approaches Jasmin Velagic ∗ , Bakir Lacevic, Branislava Perunicic University of Sarajevo, Faculty of Electrical Engineering, Zmaja od Bosne bb, 71000 Sarajevo, Bosnia and Herzegovina Received 3 November 2004; received in revised form 24 April 2006; accepted 15 May 2006Available online 14 July 2006 Abstract This paper describes how soft computing methodologies such as fuzzy logic, genetic algorithms and the Dempster–Shafer theory of evidencecan be applied in a mobile robot navigation system. The navigation system that is considered has three navigation subsystems. The lower-levelsubsystem deals with the control of linear and angular volocities using a multivariable PI controller described with a full matrix. The positioncontrol of the mobile robot is at a medium level and is nonlinear. The nonlinear control design is implemented by a backstepping algorithmwhose parameters are adjusted by a genetic algorithm. We propose a new extension of the controller mentioned, in order to rapidly decrease thecontrol torques needed to achieve the desired position and orientation of the mobile robot. The high-level subsystem uses fuzzy logic and theDempster–Shafer evidence theory to design a fusion of sensor data, map building, and path planning tasks. The fuzzy/evidence navigation basedon the building of a local map, represented as an occupancy grid, with the time update is proven to be suitable for real-time applications. Thepath planning algorithm is based on a modified potential field method. In this algorithm, the fuzzy rules for selecting the relevant obstacles forrobot motion are introduced. Also, suitable steps are taken to pull the robot out of the local minima. Particular attention is paid to detection of therobot’s trapped state and its avoidance. One of the main issues in this paper is to reduce the complexity of planning algorithms and minimize thecost of the search. The performance of the proposed system is investigated using a dynamic model of a mobile robot. Simulation results show agood quality of position tracking capabilities and obstacle avoidance behavior of the mobile robot.c   2006 Elsevier B.V. All rights reserved. Keywords:  Dynamic model of mobile robot; Backstepping algorithm; Hybrid position controller; Map building; Genetic algorithm; Fuzzy logic; Path planning;Pruning of relevant obstacles; Local minima problem 1. Introduction The basic feature of an autonomous mobile robot is itscapability to operate independently in unknown or partiallyknown environments. The autonomy implies that the robotis capable of reacting to static obstacles and unpredictabledynamic events that may impede the successful execution of a task  [10]. To achieve this level of robustness, methods need to be developed to provide solutions to localization, map building,planning and control. The development of such techniques forautonomous robot navigation is one of the major trends incurrent robotics research [23]. The robot has to find a collision-free trajectory betweenthe starting configuration and the goal configuration in a static ∗ Corresponding author. Tel.: +387 33 25 07 65; fax: +387 33 25 07 25.  E-mail address:  jasmin.velagic@etf.unsa.ba (J. Velagic). or dynamic environment containing some obstacles. To thisend, the robot needs the capability to build a map of theenvironment,whichisessentiallyarepetitiveprocessofmovingto a new position, sensing the environment, updating the map,and planning subsequent motion.Most of the difficulties in this process originate in thenature of the real world [17]: unstructured environments and inherent large uncertainties. First, any prior knowledgeabout the environment is, in general, incomplete, uncertain,and approximate. For example, maps typically omit somedetails and temporary features; also, spatial relations betweenobjects may have changed since the map was built. Second,perceptually acquired information is usually unreliable.Third, a real-world environment typically has complex andunpredictable dynamics: objects can move, other agents canmodify the environment, and apparently stable features maychange with time. Finally, the effects of control actions are not 0921-8890/$ - see front matter c   2006 Elsevier B.V. All rights reserved.doi:10.1016/j.robot.2006.05.006  990  J. Velagic et al. / Robotics and Autonomous Systems 54 (2006) 989–1004 completely reliable, e.g. the wheels of a mobile robot may slip,resulting in accumulated odometric errors.Robot navigation can be defined as the combination of threebasic activities [4,16]: •  Map building. This is the process of constructing a mapfrom sensor readings taken at different robot locations. Thecorrect treatment of sensor data and the reliable localizationof the robot are fundamental in the map-building process. •  Localization. This is the process of getting the actual robot’slocation from sensor readings and the most recent map. Anaccurate map and reliable sensors are crucial to achievinggood localization. •  Path planning. This is the process of generating a feasibleand safe trajectory from the current robot location to agoal based on the current map. In this case, it is alsovery important to have an accurate map and a reliablelocalization.Path planning is one of the key issues in mobile robotnavigation. Path planning is traditionally divided into twocategories: global path planning and local path planning. Inglobal path planning, prior knowledge of the workspace isavailable [21]. Local path planning methods use ultrasonicsensors, laser range finders, and on-board vision systems toperceive the environment to perform on-line planning [1,8]. In our paper, the workspace for the navigation of the mobile robotis assumed to be unknown and it has stationary obstacles only.In local path planning methods, particular attention is paidto local minima problem. This problem occurs when a robotnavigates towards a desired target with no prior knowledge of the environment and gets trapped in a loop [7,14]. This happens usually if the environment consists of concave obstacles,mazes, and such objects. To get out of the loop, the robotmust comprehend its repeated traversal through the sameenvironment, which involves memorizing the environment thathas already been seen [12]. The main contribution of this paper is the design of arobust autonomous mobile robot control system suitable foron-line applications with real-time requirements by usingsoft computing methodologies. This system provides themobile robot that may navigate in an a priori unknownindoor environment using sonar sensor information. To achievethese requirements, the proposed system is hierarchicallyorganized into three distinct separated subsystems witharbitrary responsibility. At each level of this system, one ormore soft computing methodologies are adopted to solve itsspecific problems.A low-level velocity controller is developed using thestandard PI multivariable control law. The medium-levelposition control law has to be nonlinear in order to ensurestability of the error, that is, its convergence to zero [6,18]. Some of the control parameters are continuous time functions,and usually the backstepping method [6,15,22] was used for their adjustment. In order to achieve the optimal parametervalues, we used a genetic algorithm. Both controllers are basedon a dynamic model of a differential drive mobile robot havingangular velocities as main variables. Fig. 1. Mobile robot navigation system for real-time requirements. A high-level subsystem contains map-building and path-planning algorithms. In this paper, the application of anoccupancy-based map [17] using Dempster–Shafer evidencetheory based on sonar measurements is demonstrated. Theintegration of sonar data is obtained by a low-level fusion [9]. The building of occupancy maps is well suited to path planningand obstacle avoidance [10]. In this paper, we propose a new path-planning approach based on the repulsive and attractiveforces, which sets the fuzzy rules for determining whichobstacles should have an influence on the mobile robot motion.Fuzzy logic offers the possibility to mimic expert humanknowledge [2,3,11,26]. This approach provides both obstacle- avoidance and target-following behaviors and uses only thelocal information for decision making for the next action. Also,we propose a new algorithm for the identification and solutionof the local minima situation during the robot’s traversal usingthe set of fuzzy rules. 2. Navigation system The proposed three-level control navigation system is shownin Fig. 1.The low-level velocity control system is composed of amultivariable PI controller and a dynamic model of a mobilerobot and actuators. At the medium level, the position controlsystem generates a nonlinear control law whose parametersare obtained using a genetic algorithm. The high-level systemperforms map-building and path-planning tasks. This systemis in charge of sensor interpretation, sensor data fusion, mapbuilding, and path planning. All the modules are designed usingfuzzy logic and the Dempster–Shafer theory of evidence.Inthefollowingsections,thedesignofthenavigationsystemblocks from Fig. 1 is described. 3. Dynamics of mobile robot In this section, a dynamic model of a nonholonomic mobilerobot with viscous friction will be derived first. A typicalrepresentation of a nonholonomic mobile robot is shown inFig. 2.The robot has two driving wheels mounted on the sameaxis and a free front wheel. The two driving wheels are   J. Velagic et al. / Robotics and Autonomous Systems 54 (2006) 989–1004  991Fig. 2. The representation of a nonholonomic mobile robot. independentlydrivenbytwoactuatorstoachievebothtransitionand orientation. The position of the mobile robot in theglobal frame  {  X  ,  O , Y  }  can be defined by the position of themass center of the mobile robot system, denoted by  C  , oralternatively by the position  A , which is the center of themobilerobotgear,andtheanglebetweentherobot’slocalframe {  x m , C  ,  y m }  and the global frame. The kinetic energy of thewhole structure is given by the following equation: T   =  T  l  +  T  r   +  T  kr  ,  (1)where  T  l  is the kinetic energy that is the consequence of puretranslation of the entire vehicle,  T  r   is the kinetic energy of rotation of the vehicle in the  XOY   plane, and  T  kr   is the kineticenergy of rotation of the wheels and rotors of the DC motors.The values of energy terms introduced can be expressed by Eqs.(2)–(4): T  l  = 12  M  v 2 c  = 12  M  ( ˙  x 2 c  + ˙  y 2 c ),  (2) T  r   = 12  I   A  ˙ θ  2 ,  (3) T  kr   = 12  I  0  ˙ θ  2  R  + 12  I  0  ˙ θ  2  L ,  (4)where  M   is the mass of the entire vehicle,  v c  is the linearvelocity of the vehicle’s center of mass  C  ,  I   A  is the momentof inertia of the entire vehicle considering point  A ,  θ   is theangle that represents the orientation of the vehicle (Fig. 2),  I  0  isthe moment of inertia of the rotor/wheel complex, and d θ   R / d t  and d θ   L / d t   are the angular velocities of the right- and left-handwheels, respectively.Further, the components of the velocity of the point  A  canbe expressed in terms of d θ   R / d t   and d θ   L / d t  : ˙  x  A  = r  2 ( ˙ θ   R  + ˙ θ   L ) cos θ,  (5) ˙  y  A  = r  2 ( ˙ θ   R  + ˙ θ   L ) sin θ,  (6) ˙ θ   = r  ( ˙ θ   R  − ˙ θ   L ) 2  R .  (7)Since  ˙  x C   = ˙  x  A  −  d   ˙ θ   sin θ   and  ˙  y C   = ˙  y  A  +  d   ˙ θ   cos θ  , where d   is the distance between points  A  and  C  , it is obvious that theequations below follow: ˙  x C   = r  2 ( ˙ θ   R  + ˙ θ   L ) cos θ   −  d   ˙ θ   sin θ,  (8) ˙  y C   = r  2 ( ˙ θ   R  + ˙ θ   L ) sin θ   +  d   ˙ θ   cos θ.  (9)By substituting terms in Eq. (1) with expressions in Eqs.(2)–(9), the total kinetic energy of the vehicle can be calculatedin terms of d θ   R / d t   and d θ   L / d t  : T  ( ˙ θ   R ,  ˙ θ   R )  =   Mr  2 8  + (  I   A  +  Md  2 ) r  2 8  R 2  +  I  0 2   ˙ θ  2  R +   Mr  2 8  + (  I   A  +  Md  2 ) r  2 8  R 2  +  I  0 2   ˙ θ  2  L +   Mr  2 4  − (  I   A  +  Md  2 ) r  2 4  R 2   ˙ θ   R  ˙ θ   L .  (10)Now, the Lagrange equations:dd t    ∂  L ∂  ˙ θ   R  − ∂  L ∂θ   R =  τ   R  −  K   ˙ θ   R ,  (11)dd t    ∂  L ∂  ˙ θ   L  − ∂  L ∂θ   L =  τ   L  −  K   ˙ θ   L ,  (12)are applied.Here,  τ   R  and  τ   L  are right and left actuation torques and K  d θ   R / d t   and  K  d θ   L / d t   are the viscous friction torques of rightand left wheel-motor systems, respectively.Finally, the dynamic equations of motion can be expressedas:  A ¨ θ   R  +  B  ¨ θ   L  =  τ   R  −  K   ˙ θ   R ,  (13)  B  ¨ θ   R  +  A ¨ θ   L  =  τ   L  −  K   ˙ θ   L ,  (14)where  A  =   Mr  2 4  + (  I   A  +  Md  2 ) r  2 4  R 2  +  I  0   B  =   Mr  2 4  − (  I   A  +  Md  2 ) r  2 4  R 2  . (15)In this paper, we used a mobile robot with the followingparameters:  M   =  10 kg,  I   A  =  1 kg m 2 ,  r   =  0 . 035 m,  R  =  0 . 175 m,  d   =  0 . 05 m,  m 0  =  0 . 2 kg and  I  0  =  0 . 001 kg m 2 .In the following section, a design for both velocity andposition controls will be established. 4. Position and velocity control designs The function of this controller is to implement a mappingbetween the known information (e.g. reference position,velocity and sensor information) and the actuator commandsdesigned to achieve the robot task. For a mobile robot, thecontroller design problem can be described as follows: giventhe reference position  q r  ( t  )  and velocity  ˙ q r  ( t  ) , design a controllaw for the actuator torques so that the mobile robot velocitymay track a given reference control path with a given smooth  992  J. Velagic et al. / Robotics and Autonomous Systems 54 (2006) 989–1004 Fig. 3. The concept of tracking of a virtual reference robot. velocity. Let the velocity and position of the reference robot(Fig. 3) be given as: q r   = [  x r   y r  θ  r  ] T ,  (16)where  ˙  x r   =  v r   cos θ  r  ,  ˙  y r   =  v r   sin θ  r  ,  ˙ θ  r   =  ω r  , and  v r   >  0is the reference linear velocity and  ω r   is the reference angularvelocity. 4.1. Position control The trajectory tracking problem for a mobile robot is basedon a virtual reference robot [5] that has to be tracked (Fig. 3). The tracking position error between the reference robot and theactual robot can be expressed in the robot frame as: e  p  =  e 1 e 2 e 3   =  T   p e q  =  cos θ   sin θ   0 − sin θ   cos θ   00 0 1   x r   −  x y r   −  y θ  r   −  θ   ,  (17)where  e q  =  e  x  e  y  e θ   T .The dynamics of the position error derived in (17) ispostulated as: ˙ e 1  =  ω e 2  +  u 1 , ˙ e 2  = − ω e 1  +  v r   sin e 3 , ˙ e 3  =  u 2 , (18)where inputs  u 1  and  u 2  are new control inputs.In this paper, we propose the following control inputs in thevelocity control loop: u 1  =  v r   cos e 3  + k  1 e 1   k  4  +  e 21  +  e 22 , u 2  =  ω r   + k  2 v r  e 2   k  5  +  e 21  +  e 22 + k  3 v r   sin e 3   k  6  +  e 23 , (19)where  k  1 ,  k  2 ,  k  3 ,  k  4 ,  k  5  and  k  6  are positive parameters.Eq. (19) is a modified backstepping control law givenfirst in [6]. The modification consists of the introduction of  denominators. In [6], Lyapunov’s stability theory was used to prove that the control law that is considered provides auniformly bounded norm of error   e  p ( t  )  . Theissueof rigorousproof of stability for the control law introduced (19) remainsopen. However, usage of this law is justified by simulationresults.The key problem in such a control design is to obtain controlcoefficients  k  1  to  k  6 . To solve this problem, a genetic algorithmis used to find the optimal values of those coefficients. To applythis method, a low-level velocity controller has to be designedfirst. 4.2. Velocity control The dynamics of the velocity controller is given by thefollowing equations in the Laplace domain: τ  ( s )  =  τ   R ( s )τ   L ( s )   = 1 r   g 1 ( s )  g 2 ( s ) g 1 ( s )  − g 2 ( s )  e v ( s ) e ω ( s )  ,  (20)where  e v ( s )  is the linear velocity error and  e ω ( s )  is theangular velocity error. This structure differs from previouslyused diagonal structures. Transfer functions  g  j ( s )  are chosento represent PI controllers: g 1 ( s )  =  K  1  1  + 1 T  i 1 s  ·  R , g 2 ( s )  =  K  2  1  + 1 T  i 2 s  ·  R . (21)The particular choice of the adopted multivariable PIcontroller described by Eqs. (20) and (21) is justified with the following theorem. Theorem.  Torque control  (20)  ensures tracking servo inputs u 1 and u 2  with zero steady-state errors. Proof.  When we substitute  ˙ θ   R  with  ω  R ,  ˙ θ   L  with  ω  L , andconsider (20), we can write another form of  (13) and (14):   As  +  K Bs Bs As  +  K   ω  R ( s )ω  L ( s )  = 1 r   g 1 ( s )  g 2 ( s ) g 1 ( s )  − g 2 ( s )  u 1 ( s )  −  v( s ) u 2 ( s )  −  ω( s )  ,  (22)where  ω  R  and  ω  L  can be expressed in terms of   ω  and  v  as: ω  R  = v  +  R ω r  , ω  L  = v  −  R ω r  and then (22) can be transformed to:   As  +  K Bs Bs As  +  K   v( s )  +  R ω( s )v( s )  −  R ω( s )  =  g 1 ( s )  g 2 ( s ) g 1 ( s )  − g 2 ( s )  u 1 ( s )  −  v( s ) u 2 ( s )  −  ω( s )  and further to:  α 1 ( s ) α 2 ( s )α 1 ( s )  − α 2 ( s )  v( s )ω( s )   =  g 1 ( s )  g 2 ( s ) g 1 ( s )  − g 2 ( s )  u 1 ( s ) u 2 ( s )  ,  (23)where α 1 ( s )  = (  A  +  B ) s 2 +  ( K   +  K  1 T  i 1 ) s  +  K  1 s α 2 ( s )  =  R (  A  −  B ) s 2 +  (  RK   +  K  2 T  i 2 ) s  +  K  2 s . (24)   J. Velagic et al. / Robotics and Autonomous Systems 54 (2006) 989–1004  993Fig. 4. Linear velocity step response.Fig. 5. Angular velocity step response. The following equations could be easily derived from (23): v( s )  = g 1 α 1 u 1 ( s )  =  G 1 u 1 ( s ) = K  1 T  i 1 s  +  K  1 (  A  +  B ) s 2 +  ( K   +  K  1 T  i 1 ) s  +  K  1 u 1 ( s )ω( s )  = g 2 α 2 u 2 ( s )  =  G 2 u 2 ( s ) = K  2 T  i 2 s  +  K  2  R (  A  −  B ) s 2 +  (  RK   +  K  2 T  i 2 ) s  +  K  2 u 2 ( s ). (25)It is obvious that transfer functions  G 1  and  G 2  are static withgains equal to “1”, which completes the proof.The velocity control loop structure is shown in Fig. 1, as aninner loop. From the simulation results obtained (Figs. 4 and 5), it can be seen that the proposed PI controller successfully tracksthe given linear and angular velocity profiles. The controllerparameters used for this simulation are  K  1  =  129 . 7749,  K  2  = 41 . 0233,  T  i 1  =  11 . 4018, and  T  i 2  =  24 . 1873, which are tunedusing standard GA. 4.3. Evolution of the coefficients In this paper, a simple genetic algorithm is used forparameter evolution of coefficients  k  1  to  k  6 , which encodes intoa binary chromosome (Fig. 6). Fig. 6. Chromosome structure. If   e  x ( t  ) ,  e  y ( t  )  and  e θ  ( t  ) ( 0  <  t   <  t  s )  are error functions,the objective function is calculated as in (26) [13]. Parameters a  x ,  a  y  and  a θ   are some positive real numbers.  N   is the numberof error samples. The mapping between the objective and thefitness function has not been performed, so it is obvious that thebetter individual has the smaller value of the objective function(fitness). In order to evaluate the fitness of the individual, it isnecessary to run the simulation: F   =  a  x N  − 1  i = 0 ln  1  +  e  x  it  s  N   + a  y N  − 1  i = 0 ln  1  +  e  y  it  s  N   + a θ   N  − 1  i = 0 ln  1  +  e θ   it  s  N   .  (26)Values of the objective function parameters are:  a  x  =  a θ   = 1,  a  y  =  2,  N   =  1000 and  t  s  =  10 s.In (26), we have chosen the following criterion:  J  1  =  N   i = 1 ln ( 1  + | e i | ),  (27)rather than the criteria that are normally used, given by (28) and(29):  J  2  =  N   i = 1 | e i |  (28)  J  3  =  N   i = 1 e 2 i  .  (29)The criterion  J  1  penalizes more smaller errors (expected inthe stationary state) (Fig. 7) and consequently it ensures betterposition tracking.Error  e θ  ( t  )  is calculated as follows: e θ   =  θ  r   −  θ, if   | θ  r   −  θ  |  <  min ( | θ  r   −  θ   −  2 π | , | θ  r   −  θ   +  2 π | )θ  r   −  θ   −  2 π, if   | θ  r   −  θ   −  2 π |  <  min ( | θ  r   −  θ  | , | θ  r   −  θ   +  2 π | )θ  r   −  θ   +  2 π, if   | θ  r   −  θ   +  2 π |  <  min ( | θ  r   −  θ  | , | θ  r   −  θ   −  2 π | ). (30)This type of error is appropriate, since it preventsunnecessary full-circle rotation. The coefficient evolution is
Search
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks