MODELING OF WHEEL-SOIL CONTACT FOR THE EDRES MOBILE ROBOT SIMULATOR D. Lhomme-Desages 1, C. Grand 1, and M. Maurette 2 1 ISIR, 18 Route du Panorama BP61 92265 Fontenay-Aux-Roses, France, {homme,grand}@isir.fr 2 CNES, DTS/AE/SEA/ER, 18 Avenue E. Bein 31401 Tououse cedex 4, France, maurette@zeus.cst.cnes.fr Abstract The EDRES software, deveoped by the CNES of Tououse, is a simuation too for panetary mobie robots. It is intended to vaidate contro agorithms and onboard software for future exporation missions, such as ExoMars. To enhance the reevance of the simuation, we have integrated a terramechanic contact mode, in order to study the infuence of sippage and sinkage on motion estimation and contro, over various sois. A specific agorithm has been proposed, taking into account the architecture of the simuator. Key words: rover, sippage, terramechanics. 1. INTRODUCTION The CNES (the French space agency) has deveoped EDRES, a mobie robot simuation software for panetary exporation [6]. The simuator aows the deveopment of agorithms for motion estimation by vision, ocomotion contro and autonomous navigation, avoiding the use of a rea chassis, which woud be costy in resources and time. It is currenty deveoped in the context of the ESA ExoMars mission, as we as for EXOMADER and IARES prototypes. In the current state of the simuator, the ocomotion oop does not take into account the physicochemica nature of soi and the compex phenomena of whee-soi interaction, which can cause skidding, sippage, or even immobiization of the vehice. Modeing these phenomena is necessary for the reaism of the simuation, for the design of effective ocomotion contro agorithms and, potentiay, for automatic trajectory generation. This paper presents a methodoogy for integration, in the EDRES simuator, of a whee-soi contact mode adapted to the specific nature of the terrain considered (oose and soft soi) and constraints reated to the software architecture. We describe the seected mode and the corresponding assumptions. Then, we detai the proposed agorithm for cacuating forces, sinkage and sippage of the whees with respect to the ground. 2. EDRES SIMULATOR OVERVIEW EDRES (Environnement de Déveoppement pour a Robotique d Exporation Spatiae) is a set of agorithms, toos and appications that cover a arge pane of functions used to generate and execute autonomous motions of panetary rovers. The EDRES rover simuator is capabe of graphicay dispaying any digita eevation mode (DEM) and appying a texture to it; simuating the kinematics of the IARES and EXOMADER rovers chassis; simuating the stereovision bench used for the autonomous navigation; moving the rover over the terrain satisfying kinematic constraints; simuating the rover ocaization subsystem, comparing it to rea position et heading. It is based on the principe of purey geometric positioning, thus producing rea-time motion according to the requests of the human operator, with any DEM based on rea topographica measurements. The robot chassis is simuated at kinematic eve, with the addition of hardware specifications of sensors and actuators. Dynamics is not incuded. Fig. 1 shows the overa functiona architecture of EDRES. It is composed of five parae processes: the graphica interface (MMI), the ocomotion contro oop, the perception server, the ocaization server, the ocomotion server. These ast three modues are interfaces between the simuator and testing software or onboard appications such as visua odometry. The ocomotion oop updates the robot position according to data coming from the ocomotion server or from the human user. At each step of motion, a positioning function computes the new attitude of the robot. A functions ibrary impements rover-specific functions such as dispaying the robot, cacuating geometric and kinematic modes, etc. The kinematic simuation does not aow to hande certain important motion behaviors, such as skidding and sipping. This hinders the deveopment of ocomotion contro, autonomous navigation and visua motion estimation. This drawback can
Figure 1. EDRES architecture be soved by introducing a mode that describes the kinetostatic behavior of robot whees running over the soi. The seected mode is presented in the foowing section. 3. WHEEL-SOIL CONTACT MODEL Severa modeing frameworks can be used to cacuate the efforts invoved in the whee-soi interaction process. We use an extended version of the terramechanic mode introduced by Bekker ([1],[7]). We assume that the entire whee is very stiff compared to the ground and we can consider the whee rigid (Fig. 2). A whees are supposed to be identica perfect smooth cyinders without treads. Soi deformation is purey pastic. The terrain is considered ocay horizonta, fat and homogeneous. The appication point of the roing resistance is supposed to be the center of the whee. Considering the tota mass of the robot, gravity and whee prints, we can assume that the sinkage vaue is sma compared to the whee radius, so that the contact ange θ c is sma and a quantities can be reduced to first order terms. Aso, we suppose that the norma force direction meets the center of the whee. The mode is vaid ony in stationary state and does not depend on time. 3.1. Norma Force and Sinkage According to Bekker theory [1], the norma force depends on the sinkage z through: F n = 1 [ ( ) kc w w 3 r + k φ (3 n) ] Dz 2n+1 2 (1)
ω F n D R R r R v z θ c z w w F F t Figure 2. Mode of a rigid whee where k c, k φ and n are soi parameters. w w is the whee width. r = min(w w,), being the ength of the contact patch. 3.2. Sippage Note v the veocity of the center of the whee and ω the anguar veocity. In this mode, the traction force depends on the sip rate s, which we define as: { 1 v if Rω v s = ω.r 1 ω.r (2) if Rω < v v for v>0 and ω> 0. This definition can be extended to every (v, ω) R 2 [5], as it is shown in Fig. 3, in order to use it in simuation. In the foowing, for simpifying purpose, we expose the case of traction. The braking case is simiar. 3.3. Net Longitudina Force and Roing Resistance The net ongitudina force DP (drawbar pu) is the difference between the raw traction force (due to shearing) and the roing resistance: DP(s) =F t (s) R r (3) The roing resistance is assumed to be mainy caused by soi compaction, which aows to use the expression: ( ) z n+1 kc R r = w w n +1 r + k φ 3.4. Shearing Force Consider a whee moving aong the direction x, different from the ongitudina axis t (Fig. 4). Then a atera sippage occurs in the whee-soi reative motion. v is the atera veocity. The contact force projected in the tangentia pan is: f t = DP (s)t F (5) with DP (s) being the net traction force as seen previousy and F the tota atera force. We expose the case of traction, assuming v>0 and ω> 0 then s =1 v. Simiar expressions can be obtained for Rω other cases. The ongitudina shearing force is given by (see [3] [4]): [ F t = F m 1 K cos ξ ) (1 ] e K cos s ξ cos ξ (6) s where: F m = w w c + F n tan φ. c, φ and K are soi parameters. (4)
The atera force is the sum of two contributions: where F = + R b (7) is the atera shearing resistance and R b the atera budozing resistance. The atera shearing resistance is: [ = F m 1 K cos ξ ) (1 ] e K cos s ξ sin ξ (8) s Note that the zero sip case (s =0) eads to a singuarity and has to be handed separatey. In this case, we have: 3.5. Latera Budozing Resistance = F m and F t =0 (9) The atera budozing resistance is due to the dispacement of soi materia by the atera side of the whee. Our approach is based on a quasi-static computation of the forces and the use of the Mohr-Couomb faiure criterion. We consider ony the steady state. More detais can be found in [4]. R b = K p cr 2 θ 3 c + 1 ( ) 6 ρgr3 K 2 p θ 3 c 1+ θ2 c (10) 2 where g is the gravity and ρ the soi density. K p = (1 + sin φ)/(1 sin φ) (11) 4. PROPOSED ALGORITHM Our agorithm is based on the data avaiabe through the simuator. The vehice has 6 identica cyindrica whees of radius R and width w w. Its position and orientation in the DEM is measured with respect to the mission frame. The motion of the vehice is supposed to be quasi-static and that its dynamics is negigibe, which is a weak constraint given the operationa robot veocity (some centimeters per second). Fig. 5 shows the principe of the agorithm (for traction). 1 0.8 sip rate s 0.6 0.4 0.2 0-0.2-0.4-0.6-0.8-1 -1-0.5 0 0.5 Rω(m/s) 1 1 s=0 pane -0.5 0 0.5 v(m/s) -1 ξ track n whee y x v F C t F soi DP F t v t v w w Figure 3. Sip rate depending on the veocities at the Figure 4. Mode of the whee-soi interface in the tangent whee-soi interface pane
F F n t F - Figure 5. Agorithm overview 4.1. Contact Forces We suppose that the geometric pacement of the robot is the same as the one obtained through integra tridimensiona dynamic simuation. The simuator suppies a contact point P i for each whee i (i =1..6). A contact point, supposed to be unique, is the point of the whee rim which is nearest of the soi tangent pane. Then it sti exists when the whee sinks into the soi. These contact points are computed at each eementary move of the robot on the panetary surface. First, the agorithm determines the 6 contact frames (n i, t i, i ), i.e. norma, ongitudina and atera unit vectors respectivey. The contact forces are determined by the resoution of the static equiibrium assuming the robot is a rigid body in very sow motion: Af = w g (12) where f coects the 18 unknowns expressed in the contact frames: f =(F n1,f t1,f 1,F n2,f t2,f 2,..., F n6,f t6,f 6 ) T (13) and w g is the 6x1 wrench vector corresponding to rover weight, expressed at the robot CoM G (M is the tota vehice mass): w g = (0, 0, Mg, 0, 0, 0) T (14) A is defined as: [ ] [ ] [ ] n 1 t 1 1 A = [ ] [ ] [ ] p 1 n 1 p 1 t 1 p 1 1...... [ [ n 6 ] [ p 6 n 6 ] [ t 6 ] [ p 6 t 6 ] [ 6 ] p 6 6 ] where p i is the position of the contact point with respect to the rover frame (p i = GP i ). G is computed in rea-time depending on the vehice configuration. Eq. (12) has an infinity of soutions, since the size of A is 6 18. It can be soved using the Penrose pseudoinverse matrix: f = A + w g (16) eading to the soution such as f 2 is minimized. (15)
4.2. Sip Rates We draw the sinkage z i from the norma force F ni (Eq. (1)): z i = [ 2 Fni Γ(n + 3) ] 2 2n+1 2 w w ( kc + k φ ) R Γ(n + 1) π wi (17) where Γ is the Euer function and wi = min(w w, ci ), with ci being the contact ength: ( ( ci = R sin arccos 1 z )) i R Then, the roing resistance can be computed from z i using Eq. (4). The raw traction force is the sum of the net force and this roing resistance: ti = sign(f ti )( F ti + R ri ) (19) The sign is given by the sign of the net traction force. On the other hand, the atera budozing resistance is computed using Eq. (10) for each whee. The contact ange θ ci is: We obtain the atera raw resistance, i.e. produced by shearing: (18) θ ci = wi /R (20) i = sign (F i ) max( F i R b i, 0) (21) The shearing components cacuated in (19) and (21) can now be combined to compute the sip rates s i, using (6) and (8). The shearing ange ξ is: ξ i = arctan2(fi, ti) s (22) where arctan2(x, y) gives the four-quadrant inverse tangent of y/x. We have to sove the equation in s i : i = [ Fi s + Fti s = F m 1 K cos ξ ( )] i 1 e s i i K cos ξ i s i i If i is greater than the maxima vaue admissibe by the soi then the sip is equa to its extreme vaue (±1 depending on the sign of the force). Otherwise, the equation can be soved anayticay using Lambert function W [2]. 4.3. Vehice Veocity Computation Rotation veocities ω i are inputs of the agorithm and suppied by the simuated motor contro. To simuate sippage, we modify the inear patform veocity (inear veocity of the vehice s CoM), from computed sip rates. The 6D vehice veocity (v, ω) is the average of every 6D veocities induced by whee hubs inear veocities in G. Therefore, we modify each inear veocity v i which depends on ω i and s i, through a function fs(s, ω) derived from (2) and potted on Fig. 6. fs comprises every cases according to the signs of s i and ω i. Note that this function has severa singuarities, for which we are compeed to put arbitrary vaues. For exampe, for ω = 0, every v > 0 impies s = 1. Hence, the case ω = 0and 0 < s < 1 is theoreticay impossibe. However, it may happen during the simuation, as resut of the computation of ongitudina forces. This inconsistence is soved by writing fs( 1, 0) = a (a >0) so that the behavior remains continuous. (23)
s=-1 s<0 s>0 s=1 ω> 0 fs = ω fs = ω 1+s fs = ω(1 s) fs = a fs =0 fs =0 fs = a 0 ω< 0 fs = ω(1 + s) fs = ω fs = ω 1 s Figure 6. fs(s, ω) 5. IMPLEMENTATION AND RESULTS In order to prove the feasibiity and usefuness of our agorithm, it has been partiay impemented into the EDRES simuator. Ony the IARES robot is used. We use a Pentium 4 3Ghz computer with 523Mb RAM and a Nvidia GeForce 7600 GT GPU. The appication runs under Linux operating system. Whee-soi interaction parameters can be seected through a graphica menu. Terramechanic data such as sinkages and sip rates are dispayed. Some preiminary tests have been carried out with soi parameters of Tabe 1. Two simuation sessions are iustrated on Fig. 7 and 8. Contact forces are dispayed in the form of arrows of varying engths. One can see the soi menu window where interaction parameters, sinkages and sip rates are dispayed. The infuence of the contact mode can be evauated using the remote contro mode (the user contros the speed and heading of the rover). From a quaitative point of view, we obtain a significant increase of the reaism of the simuation. The vehice sips more as the terrain is soping or as the soi, characterized by the interaction parameters, is sippery. On a atera sope, we note as expected a atera skidding (see Fig. 7). Fig. 8 presents a ocking situation. The traction generated by the whees, for this particuar set of parameters, is insufficient to make the robot pass over the obstace. This exampe shows the interest of the addition of the whee-soi mode into the EDRES simuator. 6. CONCLUSION A quasi-static whee-soi interaction mode for oose and non cohesive sois has been seected for the enhancement of the CNES rover simuation too. We have proposed an agorithm to compute the sippage of a wheeed robot according to the Tabe 1. Test parameters (dry sand) parameter vaue unit c 1150 Pa φ 28 deg ρ 1600 kg/m 3 n 0.9 - k φ 505800 N/m n+2 k c 6940 N/m n+1 K 1.2 cm g 9.81 m/s 2
Figure 7. Latera skidding of the robot Figure 8. Bocking situation of the vehice physica properties of the soi and to the existing software architecture. Then, this agorithm, based on the terramechanic mode, has been partiay impemented (for the IARES rover) in order to show the feasibiity of the tota impementation. From a static cacuation of the forces equiibrium, we are abe to compute the tangentia sip veocity for each whee with respect to the ground. Thus, whee rotation veocities being given, we can cacuate a patform veocity for the robot that takes into account the sippage. The repartition of mass due to the robot configuration is aso considered. The physica modeing is based on severa simpifying hypotheses, particuary on the contact geometry. Furthermore, the software architecture itsef impies some constraints on the choice of the mode, the agorithm and its impementation. This eads to a poory reiabe resut from a quantitative point of view. Thus, generay, inear veocities of whee centers are not consistent. The goba computed veocity of the vehice does not aow to recacuate the sip rates through the inverse kinematic mode. Net forces resuting from the static equiibrium are not actuay appied to the system. Consequenty, the proposed agorithm must be viewed fundamentay from a quaitative point of view. A comparison with measurements using the IARES rover is sti to be done in order to estimate precisey the parameters of the interaction mode and quantify the degree of reaism obtained. Severa extensions may be conceivabe. It is possibe to make a physica soi properties map (as for the DEM) to mode a heterogeneous soi. The definition of the tridimensiona whee-soi contact area can be improved, in order to refine the sinkage computation. However, the agorithm presented in this paper is a basis to study the infuence of the physica nature of terrain on robot contro and ocomotion. As an exempe, it is possibe today to test visua odometry in presence of sipping. REFERENCES [1] M.G. Bekker, Introduction to Terrains-Vehices Systems, The University of Michigan Press, 1969. [2] R.M. Coress, G.H. Gonnet, D.E.G. Hare, D.J. Jeffrey and D.E. Knuth, On the Lambert W Function, Advances in Computationa Mathematics, Vo. 5, pp. 329-359, 1996. [3] A. Grecenko, Some appications of the sip and drift theory of the whee, in Internationa Conference of Society of Terrain Vehice Systems, Detroit, Michigan, USA, 1975. [4] D. Lhomme-Desages, Commande d un robot mobie rapide roues non directionnees sur so nature, PhD Thesis, Pierre et Marie Curie University, Paris, Apri 2008. [5] D. Lhomme-Desages, C. Grand and J.C. Guinot, Trajectory Contro of a four-whee Skid-steering Vehice over soft Terrain using a Physica Interaction Mode, IEEE ICRA, Rome, Apri 2007. [6] M. Maurette and L. Raste, Panetary rover simuation and operation, ASTRA, November 2002, Noordwijk, The Netherands. [7] J.Y. Wong, Theory of ground vehices, Wiey-Interscience, 3 rd ed., 2001.