<<

MECHANICAL OF THE EXOMARS ROVER USING IN 3DROV

Vincent Acary1, Maurice Bremond´ 1, Konstantinos Kapellos2, Jan Michalczyk1, and Roger Pissard-Gibollet1 1INRIA Grenoble, Inovallee,´ 38330 Montbonnot, France, email:fi[email protected] 2TRASYS Space, Terhulpsesteenweg 6c, 1560 Hoeilaart, Belgium. email:fi[email protected]

ABSTRACT Outline. In Section 2, we briefly review the literature on the modeling and simulation of rovers. In Section 3, we present the main features of Siconos with a brief ex- This paper presents ongoing work at INRIA in collabo- planation of the interest of using a nonsmooth approach ration with TRASYS on the mechanical modelling and for contact and . Section 3 ends with simulation of planetary rovers. We focus our presenta- several stand-alone experiments of obstacle avoidance tion on an specific approach used the INRIA SICONOS and traction performance. In Section 4, the TRASYS software. This approach [2] based on the nonsmooth Me- 3DROV [24] rover planetary operations simulator is pre- chanics theory is dedicated to the modeling and the sim- sented. Section 5 concludes the paper. ulation of multi–body systems with joints, hard contacts, Coulomb’s friction and impacts. In addition, software in- tegration aspects are considered defining and implement- 2. STATE OF THE ART ing generic software interfaces between SICONOS and external 3D tools. The approach is applied to the rover planetary operations enhancing the fidelity and the gener- The design of the rover chassis and the study of the lo- icity of the ExoMars existing rover mechanical models comotion have already been the object of a lot of ef- used in the TRASYS 3DROV [24] simulator. forts from several teams in the NASA’s Mars Exploration Rovers(MER) project and in the ESA’s ExoMars project. Key words: Siconos; 3DRov; contact; impact; The main subjects of interests are the static stability of Coulomb’s friction; nonsmooth dynamics ; numerical the rover over steep slopes and the kinematic studies for simulation;. obstacle avoidance which asks for specific requirements on the geometry of the suspension. The traction perfor- mance, which demands for minimal friction requirements has also been extensively studied. To achieve these vari- 1. INTRODUCTION ous goals, designers have worked mainly on the suspen- sion systems and the design of the wheels in order to ob- tain a good trade-off of performances over various ter- This paper presents ongoing work at INRIA in collabo- rains from soft soils (sands, fine granular materials) to ration with TRASYS on the mechanical modelling and rigid surfaces (rocks, coarse granular materials). For an simulation of planetary rovers. The first aim is to use overview of these efforts, we refer to [17, 19, 20, 28] and the modeling and the simulation features of the INRIA [22] for a survey. SICONOS software dedicated to nonsmooth dynamical systems [2] into a specific rover simulator developed by Physical–based modeling and simulation of planetary TRASYS, 3DROV. In this particular application, we fo- rovers is an integral part of planning, testing and de- cus our work on the simulation of multi-body systems sign of robotic planetary missions. Therefore, most that undergo , friction and impact with of these studies have been based on simulation soft- its environment. We present a open–source software ware codes, which are for most of them overall simula- code, able to deal with idealized contact interaction based tion tools containing the simulation of multi-body sys- on unilateral (rigid) contact, 3D Coulomb friction and tems in their environment (mainly with the interaction impacts. Using such a software into an overall simu- wheel/terrain), the simulation of the control systems, lation tool as 3DROV may help a lot in designing the the hardware in the loop system and the 3D Visualiza- control law for locomotion and simulating the global be- tion rendering and animations systems. One of the first havior of the rover. In addition, software integration as- piece of software is ROAMS (Rover Analysis, Modeling pects are considered defining and implementing generic and Simulation) developed at the Jet Propulsion Labora- software interfaces between SICONOS and external 3D tory (JPL) for the NASA’s MER project. It is based on tools. The approach is applied to the rover planetary op- the DSHELL/DARTS software[32, 15, 14, 8] and offers erations enhancing the fidelity and the genericity of the functionalities for the overall mission simulation with ExoMars existing rover mechanical models used in the embedded software ans operator–in–the–loop simulator. TRASYS 3DROV [24] simulator. The ultimate objective A particular focus is made on the wheel/terrain interac- of this work is to integrate SICONOS and 3DROV from tion by integrating on the Bekker model [6, 7] and its the rover mechanical modelling phase to the rover motion extensions. On the ESA’s side, a lot of efforts has been simulation and 3D Visualization. done to develop robust and efficient simulation tools. Among others, this work includes RCAST developed by or Microsoft Robotics developer Studio4 may also be MDA and the Dalhousie University in Canada. It is a used, although as far as we know no publication is avail- simulator including 3D simulation of multibody systems able. In 3DRov [24] or more general robotic simulator from CAD model (SolidWorks and Pro/E) based on Mat- like Gazebo5, physical engines that come from computer lab/Simulink toolbox, SimMechanics. It includes rich games and animation like ODE, Bullet6 or PhysX7 are wheel-soil interaction models developed in a Simulink S- also used for mainly two reasons. The first one is that Function blockset based on the AESCO Soft Soil Tire ODE and are open source software codes and the Model (AS2TM enhancement of the Bekker model)[5] second one is that they deal with an apparent simplicity and a standard control system based on sensors and with idealized contact and friction models. Nevertheless, actuators in Simulink. This software is embedded in since these software codes are developed for the simu- the Simulink’s Virtual Reality Toolbox. Other simula- lation of large scenes of objects for videos games, the tors dedicated for the simulation of general multibody realistic Physics and Mechanics are sometimes sacrificed systems have also been used like SIMPACK at DLR for some performance reasons. For instance, part of the [11, 19, 20] with an elasto–plastic models with damping dynamical system may be artificially frozen and the mod- of soils and experimental fitting of parameters or COS- eling of Coulomb’s friction is often not realistic. MOS/Motion in [21] in the context of Rover Mobility Performance Evaluation Tool (RMPET). Recently, an ef- fort has also been done in the framework of 20sim to de- velop a software for the port–based modeling and simu- 3. SICONOS lation of the rover on rough terrain [23, 30]. One of the SICONOS is an Open Source scientific software primar- main advantage of the port–based and the bond graph ap- ily targeted at modeling and simulating nonsmooth dy- proach is the possibility to integrate in the same model namical systems in the most generic sense. In partic- multi–physical systems and the control systems. ular, it can deal with the following systems: mechan- ical systems (Rigid body or solid) with unilateral con- Concerning the specific aspect of the simulation of multi– tact and Coulomb friction as we find in nonsmooth me- body systems with contact and friction, all the previous chanics, contact dynamics or Granular material, switched software codes share a wheel/terrain modeling based on Electrical Circuit such as electrical circuits with ideal some extensions of the Bekker model. From the compu- and piecewise linear components Power converter, Rec- tational point of view, this model is very convenient be- tifier, Phase-locked loop (PLL) or Analog-to-digital con- cause it is sufficiently regular to simulate it with any kind verter, sliding mode control systems. Other applications of numerical time integration solvers. If Bekker’s model are found in Systems and Control (hybrid systems, differ- is well–suited for soft soil/wheel interactions, it may be ential inclusions, optimal control with state constraints), more debatable for rigid soils like rocks or coarse gran- Optimization (Complementarity systems and Variational ular materials. In this latter case, the stiffness constants inequalities), Biology (Gene regulatory network), Fluid at contact that models the rigid contact of the wheel and Mechanics and . The software is the rocks drastically increase and put the standard simula- based on 4 main components : tion tools in troubles. This disadvantage in terms of mod- 1. SICONOS/NUMERICS (C API). Collection of low- eling and simulation efficiency can be overcome with a level for solving basic Algebra and optimiza- nonsmooth approach as we propose in Siconos. Dealing tion problems arising in the simulation of nonsmooth with inequality constraints to model extremely stiff con- dynamical systems: Linear complementarity problems tacts rather than using large stiffness constants ensures (LCP) Mixed linear complementarity problems (MLCP) the stability and the efficiency of the solvers. Further- Nonlinear complementarity problems (NCP) Quadratic more, the choice of complex models at contact with a lot programming problems (QP) Friction-contact problems of parameters can be difficult to use on varying and un- (2D or 3D) (Second-order cone programming (SOCP)) even terrain. The problem of identifying parameters and Primal or Dual Relay problems their large variability can be a drawback for designing 2. SICONOS/KERNEL. C++ API that allows one to and testing robust control laws and performing realistic model and simulate nonsmooth dynamical systems. it predictive simulations. Most of the time, when stiff con- contains : Dynamical systems classes (first order one, tact are involved, the respect of impenetrability between Lagrangian systems, Newton-Euler systems) and non- bodies, the ideal modeling of threshold and multi–valued smooth laws (complementarity, Relay, FrictionContact, effects of the Coulomb friction and the coverage of the impact) dissipation effects with an impact law are sufficient and 3. SICONOS/MECHANICS This component is a modeling even more robust for the simulation and the analysis of toolbox for multi-body systems based on external colli- mechanical systems. sion and geometry libraries. 4. SICONOS/FRONT-END generated python bindings for In the more general framework of the simulation of Numerics, Kernel and Mechanics, with a special support robotic systems, commercial pieces of software have also for Siconos data structures. been used to simulate systems in the framework of the ExoMars project. One can cite MapleSim1 and Math- works SimMechanics2. Other tools as Modelica (ve- Nonsmooth Mechanics at a glance In this section, we hicle dynamics or 3D mechanical systems toolboxes)3 recall the main ingredients of the nonsmooth mechanics

1http://www.maplesoft.com/products/maplesim 4http://www.microsoft.com/robotics 2http://www.mathworks.fr/products/ 5http://gazebosim.org simmechanics/ 6http://bulletphysics.org 3https://www.modelica.org/libraries_old/ 7https://developer.nvidia.com/technologies/ ModelicaMultiBody approach for the modeling and the simulation of mechan- Coulomb’s friction can be expressed in a disjunctive form ical systems with contact and friction. For more details, as we refer to [2]. Let us start with the following Lagrangian  if U = 0 then R ∈ C formulation of the equations of motion  T if gN ≤ 0, if U 6= 0 then R ∈ ∂C, and it exists  T  q˙ = v, (1a) a ≥ 0 such that RT = −aUT   > (6)  M(q)v ˙ + N(q, v) + F (t, q, v, u) = G (q)λ, (1b) where C is the Coulomb friction cone, C = {R, |  u˙ = d(t, q, v, u, λ), (1c) kRTk ≤ µRN} with µ the coefficient of friction.  Coulomb’s friction can also be formulated compactly  g (q) = 0, k ∈ E (1d)  k as a complementarity condition on second–order cones  gk(q) ≥ 0, λk ≥ 0, λkgk(q) = 0 k ∈ I,(1e) as [2, 4, 3]   ˆ ∆ UN + µkUTk ∗ ˆ where q(t) ∈ IRn is a set of coordinates that gives in −U = − and C ∈ U ⊥ R ∈ C (7) UT a unique way the configuration of the system. The vec- tor v(t) ∈ IRn describes the velocity. The matrix M ∈ where C∗ is the dual cone of C [27]. IRn×n is a symmetric, positive and (semi-)definite matrix representing the inertia. The vector of gyroscopic effects is denoted as N ∈ IRn. The vector of forces F ∈ IRn Interest of the nonsmooth mechanics approach. applied to the system includes the internal and external Here are listed the main interests of using an approach forces and the effect of the vector u ∈ IRnu which might based on nonsmooth Mechanics when we want to deal be considered as a control input vector. The dynamics with multi–body systems with unilateral contacts, fric- of this control can be described by another first order dy- tion and impacts: namical system (1c). The sets E ⊂ IN and I ⊂ IN are 1. The use of complementarity formulation allows us to the index sets of bilateral constraints (E stand for equal- deal with hard contacts in a very efficient way avoiding ities) and of unilateral constraints (I stand for inequal- the issues related to the time–integration of stiff prob- > lems. When we want to simulate contacts on hard sur- ities), respectively. The matrix G(q) = ∇q g(q) is the Jacobian of the constraints. The condition (1e) is called a faces, avoiding deep inter–penetrations obliges to use complementarity condition, or equivalently the Signorini large stiffness parameters in a standard approach. This condition. It can be equivalently written as is overcame in the presented approach. 2. Nonsmooth contact laws are based on few parame- 0 ≤ gk(q) ⊥ λk ≥ 0 for all k ∈ I. (2) ters (coefficient of restitution and friction). Contact pa- rameters are often very difficult to measure and have a This condition models the basic unilateral contact condi- great variability. Proposing contact laws with few pa- tion. The complementarity comes from the fact that the rameters that represents the main effects at contact (inter– reaction force at contact represented by λ can only act penetrability avoidance, friction with real sticking phase when the contact is closed, that is when gk(q) = 0. and plastic dissipation) provides the user with robust sim- ulation tools in view of Control applications. Further- In order to complete the model at contact, let us introduce more, nonsmooth contact laws can be easily extended to the local contact variables. Usual kinematic relations be- take into account more enhanced effects such as stiffness, 3 tween the local velocity Uk ∈ IR at one contact k and damping or cohesion[2]. For soft–soil simulation, piece- the generalized variables, and by duality, the generalized wise continuous Bekker model could be implemented in 3 this context. forces r due to contact forces Rk ∈ IR give 3. The associated simulation methods are proven to be U (t) = G (q)q ˙ = G (q)v, r = G>(q)R . (3) efficient on a large number of applications from medium k k k k k to large scale multi–body systems [26]. Granular mate- 104 Let us drop the subscript k to lighten the notation. By in- rials with large number of contacts points (between 106 troducing a local frame at contact (N, T, S) where N is a and ) can be simulated with such algorithms. unit normal vector, we can decompose the local variables 4. 2 as U = UN N + UT,UT ∈ IR ,R = RN N + RT,RT ∈ Such an approach has been proved to be robust and IR2. The Lagrangian dynamics in (1) is usually not so ? efficient on several important industrial applications. smooth. If the normal relative velocity at contact UN(t ) ? Siconos is for instance used for more than 5 years in is positive when the bodies hit at time t , in other words, a strong collaboration between Schneider Electric and when an impact occurs, a velocity jump must occur to ? INRIA for the virtual prototyping of the mechanisms satisfy the constraints after t and an impact law has to of circuit breakers [1]. The robustness with respect to be added. Let us simply choose the Newton impact law contact parameters and the efficiency of the simulation

+ ? − ? ? that avoids problems due to stiffness provides Schneider UN (t ) = −eUN (t ), for all t such that g(q(t )) = 0. Electric with a robust predictive tool for new designs. (4) This numerical methods are also the object of a closed By formulating the unilateral contact in terms of local collaboration with ANSYS for the variables at contact we get the impact law at the veloc- toolbox[12]. ity level

∆ + − if gN = g(q) ≤ 0, then 0 ≤ UN + eUN ⊥ RN ≥ 0. Architecture and implementation The development (5) team focused on the development of the simulation and modeling tools which are as most as possible reusable for 3.1. Rover simulation using Siconos Standalone different scientific contexts. The Rover simulation in the Siconos platform allows us Any specific pre/post-processing tools has been devel- to simulate the robot motion taking into account rigor- oped. Dynamical systems and interactions (unilateral ously dynamics and non-regular models of contact fric- constraints) classes provided by Siconos/Kernel may be tion. Roughly, coding a Siconos application consists in configured with the help of plugins or by class derivation. two main steps : the first is to describe the dynamic Rover For high–level applications SICONOS relies on external model and the contact model interaction between wheels software and provides with an efficient computational en- and the environment; the second is to define appropriate gine. Concerning the mechanical modeling, it is possible numerical parameters for the model. to simulate linear or non-linear rigid or deformable bod- ies. More precisly, any Siconos code (C++ or Python) is com- posed of the following sub-steps:

The numerical simulation strategies available in 1. define some DynamicalSystem instances Siconos/Kernel are quasi-statics, smooth dynamics, 2. define some Interaction instances, and for each nonsmooth dynamics, each one being either linear Interaction: or non-linear and simulated with event–capturing or define Relation event–detecting schemes. Available time integration define NonSmoothLaw schemes are Moreau–Jean scheme, Schatzman–Paoli 3. build a NonSmoothDynamicalSystem : all scheme, nonsmooth Newmark scheme [9, 10], Odepack DynamicalSystem + all Interaction objects ar- suite and DAE solvers developed by E. Hairer [13]. ranged into a directed Graph 4. build a Model that holds the NonSmoothDynamicalSystem. Inside SICONOS/KERNEL, the description of the user 5. define a Simulation: the way the behavior of the model relies internally on a primary graph with dynam- NonSmoothDynamicalSystem will be computed ical systems as nodes and interactions as edges. Dur- define a TimeDiscretisation ing time evolution, the determination of active constraints choose a strategy: TimeStepping or corresponds to the building of sub-graphs of the primary EventDriven graph. In the case of problems formulated in local co- define some integrators for the DynamicalSys- ordinates an adjoin graph transformation is dynamically tems (OneStepIntegrator) applied to sub graphs in order to drive the computation 6. define a way to formalize and solve the possible of the components of the optimization problem given to non smooth problems (formulation + solver, the Numerics solver. OneStepNSProblem) 7. associate the Simulation to the Model The primary graph structure may be entirely specified 8. launch the Simulation (time loop) once by the user, or it may also be rebuilt during the sim- ulation, as, for example, the result of a contact detection broad-phase. Links with pre/post processing software Modeling The Rover dynamical model is a La- for (Bullet contact detection [18]) and grangianDS siconos object (lagrangian formulation). For CAD libraries (OpenCascasde [29] and PythonOCC [25]) 3D Rover modeling, the inertia matrix and contact model has been set–up. The latter link enables the contact de- interaction relations are difficult to set-up by hands. We TM tection between bodies defined by B-Rep (splines, nurbs, use a Maple code to automatically generate these re- ...) and then to compute gaps and local frame at contact. lations, and to export into C files. In Siconos, we im- Such a geometrical representation of the data allows to port these relations as a plug-in function that are dy- use realistic modeling of surfaces with large sliding. The namically loaded. The HuMAns toolbox([31]) using TM possible impact laws for mechanics are complementary Maple software tool enable us to easily do complex condition, impact with or without friction. modeling easily with high accuracy. Originally developed for humanoid robotics research, the SICONOS is written in C++ and has an object oriented ar- HuMAnS toolbox (for Humanoid Motion Analysis and chitecture, there is no graphical user interface (GUI). A Simulation) proposes a wealth of state - of - the - art al- simulation is run through a C++ or Python script in which gorithms from the field of robotics research for the mod- are gathered the objects creations and the method calls on eling, the analysis and the simulation. In our case, we these object that make up the computation. Furthermore, used it to generate the multi-body dynamic model for the not only the coarse level of command driving is avail- Rover. For this, the user need to describe the Rover pa- able, but the time loop can be exploded in every step to rameters through several MapleTMinput files. One file allow for an interactive simulation. In the same way the must describe kinematic parameters of the Rover, it in- whole database is accessible through copy or reference, dicates the relative location of key-points of the model allowing for a efficient access and aimed at designing any and the degree of freedom of every connecting point. An post-processing functions. other file describes the dynamical parameters, it describes the inertials parameters: the gravity vector, the mass of the segment, the position of the segments centers of mass More details can be found at http://siconos. and the inertia matrix of these segments relative to the gforge.inria.fr. centers of their attached frames. SteeringAxleF R(q9) SteeringAxleF L(q8) AxleF (q7) multiplication of the local triangle’s rotation matrix with W heelF L(q10) an inverse of robot’s geometric jacobian. Relation object

SteeringML(q13) W heelML(q15) together with a non-smooth law define the interaction be- W heelF R(q11) AxleBL(q12) tween systems. In the standalone simulation an interac- SteeringAxleMR(q ) SteeringAxleBL(q14) 18 tion is instantiated between each wheel and each triangle. Thus, there is six times as many interactions as wheels. W heelBL(q16) W heelMR(q20) This approach can become inefficient as the number of AxleBR(q17) triangles (and complexity of the mesh) grow. To com-

W heelBR(q21) pensate for this problem a space filter should be used in Mass Center SteeringAxleBR(q19) the future which in essence filters out and discards inter- Global coordinates (q1, q2, q3) Orientation (q4, q5, q6) actions between objects which are far enough. Y X

Z The C code generated, for the rover model and the contact model interaction, is then imported in Siconos code plu- Figure 1: Rover Siconos 3D representation and joints gin function. It enables us to easily do complex modeling notation with high accuracy. This work of modeling is detailed in the report [16].

Then, the MapleTMgenerator included in HuMAns pro- duces C code for M(q) the system inertia, G(q) the Simulation Results After the modeling step, we forces which derived from a potential energy (for exam- describe the simulation strategy and its parame- ple the gravity), N(q, q˙) a non-linear effects matrix. ters. For the simulations presented below, we in- stance a NewtonImpactNonSmootLlaw to simulate For the simulation we used a simplified model inspired contact, Moreau’s Time Stepping scheme and New- from the ExoMars rover chassis with six wheels on three ton/AlartCurnier solver to solve the 3D friction prob- simple passive bogies located forward at each side of the lem. Details on the simulation parametrizations can be rover and one on the rear (see [19]). The payload is sim- found on [2]. On the Siconos platform, the 3-D visual- ply modelised with a mass uniform parallelepiped. The ization is done in a VRML environment. We simulate the visual representation and joints notation are given on the rover with differents initial condition and different envi- figure 1. The rover has 21 Degree Of Freeedom (DOF) : ronment. 6 for the location of the rover, 6 for the rotation of each wheel, 6 for each wheel steering and 3 for each passive In the sequel, several results are presented obtained from joint of the bogies. the standalone simulation of the rover in Siconos. Two cases are studied which corresponds to the main tests for To describe the contact of the Rover with the solid ground the design and analysis the chassis: or granular soil in Siconos, we need two plugin functions: h to compute the distance between contact points and G which is the transformation matrix of velocity of contact 1. Obstacles overcoming: in our experiment, we test points from the global frame to the local frame. the ability to go over an obstacle in the form of a step of 0.1 meter high To simplify the model, we only consider point contact. In 2. traction performance: in this latter experiment, we this contact model, we simplify the axis of the wheel into test the ability of the rover to drive uphill with a point, and create contact model between this point and changing wheels’ torques and a given coefficient of the sphere, a plane or a mesh. friction.

For the simulation results given below, the ground is modeled by meshes. In order to be able to perform a simulation of the rover roaming on a triangular mesh in Obstacles overcoming In this test case, a 0.1 meter Siconos one needs to have the appropriate interaction and high step is set in front of the robot (Fig. 2). Several relation classes defined. Relation class is an interface pro- impacts occur when robot climbs the step. First impact viding distances between the surfaces being checked for is due to the fact that rover falls down onto the plane at collision as well as jacobians, which in turn provide map- the beginning of the simulation. Following impacts affect y x z pings from the local to global coordinate frames. While not only velocity component but also and velocity distances are needed for collision detection, jacobians components and are due to the collision with the step. 0.1 are crucial for resolving impacts and non-smooth friction The restitution coefficient equals to and the friction 0.35 problems. Distances calculation is a broad topic in itself, coefficient is equal to . Abrupt changes are observed briefly speaking these can be delivered by a third-party in velocity of the robot’s centre of mass due to impacts. collision detection library or calculated according to an explicit built-in in the respective relation class. In the standalone simulation the latter approach has been Traction perfomance In this second test case the rover chosen. Namely, distance function has been defined ex- is moving up an inclined plane along the x axis of plicitly in order to calculate the gap between the center of 2.10−2 rad. The coefficient of friction coefficient is cho- each wheel of the robot and a triangle arbitrarily oriented sen sufficiently low to exhibit sliding under high torques. in space. Everytime this function returns zero (with cer- Six phases of motion have been distinguished in order to tain tolerance) a collision is declared. Jacobian is defined depict the various phenomena ans scenarios due to fric- within the relation class as an operator resulting from the tion: t1 t2 t3 t4 t5 10000 8000 6000 4000 2000 0 Applied torque (N.m) 15 10 (a) Phase 1 5 0 -5 -10 -15

.Trunkx-velocity(m/s) -20 1 ˙ q -25 (b) Phase 2 -30 1.2 1.1 1 0.9 0.8 0.7 0.6 Trunk x-position0.5 (m) 1

q 50 100 150 200 250 t (time s)

(c) Phase 3 Figure 3: Motion of the rover in a slope under the action of varying driving torques. Figure 2: Rover climbing the step

is due to the friction force saturation. Energy supplied to • no torque is applied to any of the wheels - time in- the wheels is dissipated by friction and sliding. terval 0s ≤ t < t1 with t1 = 50s One of the most important feature to note is that the ideal • a constant torque counterbalancing the effect of the Coulomb’s law is perfectly satisfied. In the case of a gravity is applied to all wheels - time interval t1 ≤ regularized model, some high frequency dynamics would t < t2 with t2 = 100s have been observed and the perfect zero relative velocity at contact is never obtained. • a linearly increasing torque is applied to all wheels to stop the rover - time interval t2 ≤ t < t3 with t3 = 138.61s 4. 3DROV • a constant torque counterbalancing the effect of the gravity is applied to all wheels - time interval t3 ≤ t < t4 with t4 = 180s 3DROV is a rover planetary exploration simulation framework developed by TRASYS. It uses as simula- • a linearly increasing torque is applied to all wheels tion framework the ESOC EGOS SimSat v4 tool8 and to stop the rover - time interval t4 ≤ t < includes both, models of the environment in which the t5 with t5 = 200s rover evolves (terrain, atmosphere, orbital and timekeep- ing) and models of the rover itself (mechanical, power, • a high constant torque is applied to all wheels - time thermal, communications, payloads and a model of the interval t5 ≤ t in order to produce sliding. o/b controller). 3DROV disposes also a 3D Visualization component that allows monitoring in a photo-realistic synthetic environment the evolution of the simulation. In Figure 3, one can see the evolution of rover’s mass cen- Thanks to the use of the SMP (Simulation Model Porta- tre velocity. In the first phase ([t0, t1]), the rover is rolling bility) the system provides the possibility to easily use without sliding under gravity load. In the second phase models of different levels of fidelity depending on the the velocity is kept constant due to the driving torque that scope of the simulation. 3DROV focuses on operational counteracts the gravity. In the third phase ([t2, t3]), the simulations for the validation of rover plans (composi- velocity is decreasing in quadratic way with respect to tion of rover Activities) spanning over one or several sols time since the torque is linearly increasing. In the fourth (experiment cycles). When planning rover operations in- ([t3, t4]), the rover is stopped at rest in the slope. The fifth cluding rover travelling, it is very important to be able phase is similar to the third one. One can notice that in the last phase of motion despite dramatic change in wheels’ 8http://www.egos.esa.int/portal/egos-web/ velocities rover’s trunk does not accelerate anymore. This products/Simulators/SIMSAT/ to simulate this part of the plan as close as possible in formation including the number of contact points, coordi- order to predict the Rover mechanical behaviour, to es- nates of contact points, normal vector in the contact point, timate the path to be travelled and to evaluate the re- penetration as well as coefficients of friction and restitu- quired energy consumption. 3DROV uses the PhysX 9 tion and b) to set the rover’s joints and the rover’s trunk and recently Bullet 10 for mechanical sim- position and orientation. ulation. Internal ESA work performed at ESTEC showed that using PhysX the simulation results are qualitatively consistent with the expected behaviour but still insuffi- 5. CONCLUSION cient to support detailed rover motion validation. The use of SICONOS allows to involve better friction-contact model on a granular terrain and aims to improve the ex- 3DROV is a rover planetary exploration simulation isting 3DROV simulation framework providing accurate framework which allows different levels of fidelity de- mechanical rover simulation. In addition, this work con- pending on the scope of the simulation. Plugging tributes to the openness of the system by establishing a SICONOS allows to involve better friction-contact mod- generic API for dynamics models/3D tools interaction. eling in view of robust and efficient simulations on ground or with rigid obstacles and aims to improve the existing 3DROV simulation framework providing accu- rate mechanical rover simulation.

We claim that handling this and that in the context of non-smooth dynamical systems provides, in particular in the case of hard contacts, more representative results and simplifies the modelling of the wheel/terrain interaction.

Next steps of this on-going work includes:

Figure 4: 3DROV architecture • benchmarking of SICONOS simulation results for Siconos within 3DROV consists of several shared objects static stability of the rover over steep slopes, slip- grouped inside the kernel and numerics shared libraries. page handling and obstacles overcoming. It is integrated into the Rover Mechanical model compo- • comparison with results obtained using the usual nent of 3DROV and interacts with a) the on-board con- physical engines like Bullet, PhysX and ODE. troller model to receive the required trajectory and b) with the 3D Visualisation tool to exchange collision informa- • simulation of more complex wheel/terrain interac- tion and the rover state. Figure 5 illustrates the Exomars tion taking into account granular materials or the rover model into a test environment and on a planetary Bekker model. terrain. The simulation ’step’ is triggered by the simula- tion framework scheduler. • continue the implementation of the 3DROV/SICONOS API focussing on openness and genericity both at model description level and information exchange during simulation.

REFERENCES

[1] V. Acary. Projected event-capturing time-stepping schemes for nonsmooth mechanical systems with unilat- eral contact and coulomb’s friction. Computer Methods in Applied Mechanics and Engineering, 256:224 – 250, 2013. [2] V. Acary and B. Brogliato. Numerical methods for nons- mooth dynamical systems: applications in mechanics and electronics, volume 35. Springer, 2008. [3] V. Acary and F. Cadoux. Recent Advances in Contact Mechanics, Stavroulakis, Georgios E. (Ed.), volume 56 of Lecture Notes in Applied and Computational Mechan- ics, chapter Applications of an existence result for the Coulomb friction problem. Springer Verlag, 2013. Figure 5: ExoMars simulation in 3DROV [4] V. Acary, F. Cadoux, C. Lemarechal,´ and J. Malick. A formulation of the linear discrete Coulomb friction prob- In particular, a dedicated API allows Siconos a) to re- lem via convex optimization. ZAMM - Journal of Applied trieve from the 3D Visualization component collision in- Mathematics and Mechanics / Zeitschrift fur¨ Angewandte Mathematik und Mechanik, 91(2):155–175, 2011. 9https://developer.nvidia.com/technologies/ physx [5] AESCO. Matlab/Simulink module AESCO soft soil tyre 10http://bulletphysics.org model (AS2TM) users guide, 2003. [6] M. G. Bekker. Introduction to terrain vehicle systems. [20] S Michaud, M Hoepflinger, T Thueer, C Lee, A Krebs, University of Michigan Press, Ann Arbor, USA, 1969. B Despont, A Gibbesch, and L Richter. Lesson learned from exomars locomotion system test campaign. In Pro- [7] M. G. Bekker. The development of a moon rover. Journal ceedings of 10th Workshop on Advanced Space Technolo- of the British Interplanetary Society, 38(537–543), 1985. gies for Robotics and Automation, ESTEC The Nether- [8] J. Cameron, A. Jain, t. Huntsberger, G. Sohl, and lands, 2008. R. Mukherjee. Vehicle-terrain interaction modeling and [21] N. Patel, A. Ellery, E. Allouis, M. Sweeting, and validation for planetary rovers. Technical Report 10- L. Richter. Rover mobility performance evaluation tool 15, National Aeronautics and Space Administration. Jet (rmpet): A systematic tool for rover chassis evaluation via Propulsion Laboratory. California Institue of Technology, application of bekker theory. In 8th ESA Workshop on Pasadena, California, 2009. Advanced Space Technologies for Robotics and Automa- [9] Q. Z. Chen, V. Acary, G. Virlez, and O. Bruls.¨ A tion, ASTRA 2004, pages 251–258. ESTEC, Noordwijk, Newmark-Type Integrator for Flexible Systems Consid- The Netherlands, 2-4 November 2004. ering Nonsmooth Unilateral Constraints. In Peter Eber- [22] Nildeep Patel, Richard Slade, and Jim Clemmet. The ex- hard, editor, The Second Joint International Conference omars rover locomotion subsystem. Journal of Terrame- on Multibody System Dynamics - IMSD 2012, Stuttgart, chanics, 47(4):227–242, 2010. Germany, March 2012. [23] P. Poulakis, L Joudrier, and S Stramigioli. Port-based [10] Q.-Z. Chen, V. Acary, G. Virlez, and O. Bruls.¨ A nons- modeling and simulation of planetary rover locomotion on mooth generalized-α scheme for flexible multibody sys- rough terrain. In 9th ESA Workshop on Advanced Space tems with unilateral constraints. International Journal for Technologies for Robotics and Automation (ASTRA’06), Numerical Methods in Engineering, 2012. submitted. Noordwijk, The Netherlands. Citeseer, 2006. [11] Andreas Gibbesch and Bernd Schafer.¨ Multibody system [24] P. Poulakis, L. Joudrier, S. Wailliez, and K.Kapellos. modelling and simulation of planetary rover mobility on 3drov: A planetary rover system design, simulation and soft terrain. In Proc. of 8th Int. Symp. on Artificial In- verification tool. In 10th International Symposium on Ar- telligence, Robotics and Automation in Space, i-SAIRAS, tificial Intelligence, Robotics and Automation in Space, i- 2005. SAIRAS-08, Hollywood,USA, February 26-29 2008. [12] M. Haddouni, V. Acary, and J.D. Beley. Comparison of [25] PythonOCC. 3D CAD/CAE/PLM development frame- index-3, index-2 and index-1 dae solvers for nonsmooth work for the Python programming language. http: multibody systems with unilateral or bilateral constraints. //www.pythonocc.org. In Eccomas. MultiBody dynamics 2013., July 2013. [26] F. Radja¨ı and F. Dubois, editors. Discrete–element model- [13] E. Hairer, S.P. Norsett, and G. Wanner. Solving Ordinary ing of granular materials. Iste. John Wiley & Sons, 2011. Differential Equations I. Nonstiff Problems. Springer, [27] R.T. Rockafellar. Convex Analysis. Princeton University 1993. Press, 1970. [14] A. Jain, J. Balaram, J. Cameron, J. Guineau, C. Lim, [28] T. Oechslin S. Michaud, P. Oettershagen. Wheel level M. Pomerantz, and G. Sohl. Recent developments in test data generation and utilization to predict locomotion the roams planetary rover simulation environment. In performances of planetary rovers and validate simulation Aerospace Conference, 2004. Proceedings. 2004 IEEE, tools. In Proceedings of International Symposium on Ar- volume 2, pages 861–876 Vol.2, 2004. tificial Intelligence, Robotics and Automation in Space, i- [15] A. Jain, J. Guineau, C. Lim, W. Lincoln, M. Pomer- SAIRAS, 2012. antz, G. Sohl, and R. Steele. Roams: Planetary surface [29] Open CASCADE Technology. http://www. rover simulation environment. In in International Sympo- opencascade.org. sium on Artificial Intelligence, Robotics and Automation in Space (i-SAIRAS 2003, 2003. [30] Martin Wassink, Raffaella Carloni, Pantelis Poulakis, and Stefano Stramigioli. Digital elevation map reconstruction [16] supervisor: Vincent Acary Jianhui Yang. Simulation of for port-based dynamic simulation of contacts on irreg- a mars rover on granular soils. Technical report, INRIA, ular surfaces. In Intelligent Robots and Systems, 2009. Erasmus Mundus Master Internship, 2010. IROS 2009. IEEE/RSJ International Conference on, pages [17] C Lee, J Dalcolmo, S Klinkner, L Richter, G Terrien, 5179–5184. IEEE, 2009. A Krebs, R Siegwart, L Waugh, and C Draper. Design [31] P.-B. Wieber, F. Billet, R. Boissieux, L.and Pissard- and manufacture of a full size breadboard exomars rover Gibollet, et al. The humans toolbox, a homogenous frame- chassis. In Proceedings of 9th ESA workshop on advanced work for motion capture, analysis and simulation. In Inter- space technologies for robotics and automation, Noord- national Symposium on the 3D Analysis of Human Move- wijk, the Netherlands: Astrionic Press, pages 28–39. Cite- ment, 2006. seer, 2006. [32] J. Yen, A. Jain, and J. Balaram. Roams: Rover analysis, [18] Bullet Physics Library. http://bulletphysics. modeling and simulation. In In Proceedings of the 1999 org. International Symposium on Art Intelligence, Robotics [19] S Michaud, A Gibbesch, T Thueer, A Krebs, C Lee, B De- and Automation for Space, pages 249–254, 1999. spont, B Schafer,¨ and R Slade. Development of the ex- omars chassis and locomotion subsystem. In 9th Inter- national Symposium on Artificial Intelligence. Universal City, CA,, USA: Robotics and Automation for Space (i- SAIRAS 2008), 2008.