Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV

V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet

INRIA Grenoble Rhˆone-Alpes, TRASYS

May 16, 2013

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 1/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV

Motivations and Objectives

3DROV

Siconos

Rover Simulation

Conclusion

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 2/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Motivations and Objectives

Motivations and Objectives

3DROV

I Rover planetary exploration simulation framework

SICONOS

I INRIA modeling and simulation software

I Dedicated to nonsmooth dynamical systems

Final Objectives

I Integrate SICONOS in 3DROV in order to improve the mechanical simulation fidelity

I Design and implement a SICONOS/3Dtools API to simulate multi-body systems with joints, hard contacts, Coulomb’s and impacts

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 3/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV 3DROV

3DROV Architecture

I 3DROV includes rover, environment and controller models

I We focus on I the rover mechanical model I 3D visualization tool providing contact information

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 4/15 Generic API

I Interaction between dynamics models and 3D tools

I → 3D Collision information I contact points (coordinates, normal vector, friction and restitution)

I ← State of the robot I Joint positions, base frame position and orientation

I SICONOS and 3D tools share the model of the robot

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV 3DROV

Rover mechanical model

I Needed to predict the Rover mechanical behaviour

I Evaluate energy consumption

Dynamic engines

I PhysX, I qualitatively good but not enough realistic for studying locomotion

I SICONOS allows efficient friction-contact model

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 5/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV 3DROV

Rover mechanical model

I Needed to predict the Rover mechanical behaviour

I Evaluate energy consumption

Dynamic engines

I PhysX, Bullet I qualitatively good but not enough realistic for studying locomotion

I SICONOS allows efficient friction-contact model

Generic API

I Interaction between dynamics models and 3D tools

I → 3D Collision information I contact points (coordinates, normal vector, friction and restitution)

I ← State of the robot I Joint positions, base frame position and orientation

I SICONOS and 3D tools share the model of the robot

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 5/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV 3DROV

3D component of 3DROV

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 6/15 Non Smooth Dynamical System (NSDS)

I A NSDS is a dynamical system characterized by two correlated features: I a non smooth evolution with the respect to time I jumps in the state and/or in its derivatives w.r.t. time I A set of non smooth laws constraining the state x

I Special class of Hybrid Systems with : I A strong mathematical structure I Well-posedness results (existence, uniqueness, continuity with the respect to data) I Efficient simulation tools

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

Siconos Software

I Modeling, Simulation and Control of nonsmooth mechanical and electrical systems

I Open-Source

I Platform for research, since 2006, 15 men-year

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 7/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

Siconos Software

I Modeling, Simulation and Control of nonsmooth mechanical and electrical systems

I Open-Source

I Platform for research, since 2006, 15 men-year

Non Smooth Dynamical System (NSDS)

I A NSDS is a dynamical system characterized by two correlated features: I a non smooth evolution with the respect to time I jumps in the state and/or in its derivatives w.r.t. time I A set of non smooth laws constraining the state x

I Special class of Hybrid Systems with : I A strong mathematical structure I Well-posedness results (existence, uniqueness, continuity with the respect to data) I Efficient simulation tools

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 7/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

Some applications...

Electrical circuit breakers INRIA/Schneider-Electric

Granular materials INRIA/ANSYS

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 8/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

NSDS examples

Non smooth-laws FN FT

µ

0 UT

−µ 0 yN Friction

The Bouncing ball

 T mq¨ = J (q)FN Equation of Motion   U = J(q)q ˙ Local contact velocity N (1) 0 y ⊥ F 0 Unilateral contact  6 N N >  + − UN = −eUN Impact law

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 9/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

Lagrangian systems with unilateral contact and Coulomb’s friction

In our work we use the Lagrangian dynamical systems formulation :

M(q)¨q + N(q ˙ , q) + F (q ˙ , q, t) = Fext (t) + R

n I q ∈ R : generalized coordinates vector. n×n I M ∈ IR : the inertia matrix I N(q ˙ , q) : the non linear inertial term (Coriolis)

I F (q ˙ , q, t) : the internal forces n I Fext (t): R 7→ R : given external load, n I R ∈ R is the force due the non smooth law.

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 10/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

Lagrangian systems with unilateral contact and Coulomb’s friction

In our work we use the Lagrangian dynamical systems formulation :

M(q)¨q + N(q ˙ , q) + F (q ˙ , q, t) = Fext (t) + R

n I q ∈ R : generalized coordinates vector. n×n I M ∈ IR : the inertia matrix

I N(q ˙ , q) : the non linear inertial term (Coriolis)

I F (q ˙ , q, t) : the internal forces n I Fext (t): R 7→ R : given external load, n I R ∈ R is the force due the non smooth law.

Kinematic relations

I to take into account local non-smooth phenomena at the contact point, we need a set of Kinematic laws :

T y = h(q), UN = h˙ (q) = J(q)q ˙ and R = J (q)λ

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 10/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

Modeling Steps in Siconos

Nonsmooth Dynamical System

Dynamical system

˙x= f(x, t) + r

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 11/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

Modeling Steps in Siconos

Nonsmooth Dynamical System

Dynamical system

˙x= f(x, t) + r

Nonsmooth Law

0 6 y ⊥ λ > 0

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 11/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

Modeling Steps in Siconos

Nonsmooth Dynamical System

Dynamical system

˙x= f(x, t) + r h(x = y ) , λ

t Relation , , t λ , ) r = g(x

Nonsmooth Law

0 6 y ⊥ λ > 0

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 11/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

Modeling Steps in Siconos

Nonsmooth Dynamical System

Dynamical system

˙x= f(x, t) + r

Interaction h(x = y ) , λ

t Relation , , t λ , ) r = g(x

Nonsmooth Law

0 6 y ⊥ λ > 0

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 11/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Siconos

Siconos Software Modules

I Siconos/Numerics : includes low-level numerical routines

I Siconos/Kernel : includes Modeling and Simulation tools

I Siconos/Front-End : for user interaction

Siconos/Front end

Command interactive user interface

Siconos/Analysis User Plug-in Siconos/Kernel

Modeling and Simulation tools Siconos/Control

Siconos/Numerics Existing Numerical Low level Numerical routines Libraries

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 12/15 2 - Define the simulation parameters

I Type of contact : Newton Impact Non Smooth Law

I Type of solver : Newton/AlartCurnier solver

I Type of numerical scheme : Moreau Time stepping

3 - Run the simulation

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Rover Simulation

Rover simulation in Siconos 1 - Build the model

I Description of the rover kinematic and dynamic model in Maple

I Description of contact I coding h function to compute the distance between contact points I coding G is the transformation matrix of velocity of contact points from the global frame to the local frame

I Code generation from Maple to C

SteeringAxleFR(q9) SteeringAxleFL(q8) AxleF (q7) WheelFL(q10)

SteeringML(q13) WheelML(q15)

WheelFR(q11) AxleBL(q12)

SteeringAxleBL(q14) SteeringAxleMR(q18)

WheelBL(q16) WheelMR(q20)

AxleBR(q17)

WheelBR(q21)

Mass Center SteeringAxleBR(q19) Global coordinates (q1, q2, q3)

Orientation (q4, q5, q6)

Y X

Z

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 13/15 3 - Run the simulation

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Rover Simulation

Rover simulation in Siconos

1 - Build the model

I Description of the rover kinematic and dynamic model in Maple

I Description of contact I coding h function to compute the distance between contact points I coding G is the transformation matrix of velocity of contact points from the global frame to the local frame

I Code generation from Maple to C

2 - Define the simulation parameters

I Type of contact : Newton Impact Non Smooth Law

I Type of solver : Newton/AlartCurnier solver

I Type of numerical scheme : Moreau Time stepping

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 13/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Rover Simulation

Rover simulation in Siconos

1 - Build the model

I Description of the rover kinematic and dynamic model in Maple

I Description of contact I coding h function to compute the distance between contact points I coding G is the transformation matrix of velocity of contact points from the global frame to the local frame

I Code generation from Maple to C

2 - Define the simulation parameters

I Type of contact : Newton Impact Non Smooth Law

I Type of solver : Newton/AlartCurnier solver

I Type of numerical scheme : Moreau Time stepping

3 - Run the simulation

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 13/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Rover Simulation

Simulation examples

Motion of the rover on granular materials Motion of the rover in a slope under the action of varying driving torques

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 14/15 Next Steps :

Benchmarking SICONOS

I static stability of the rover over steep slopes

I slippage handling and obstacles overcoming

I comparison with usual physic engine (Bullet, PhyX)

More complex models and wheel/terrain interaction

I Soils constituting of granular materials, soft soils (Bekker model)

I Insertion task with robotic arm

Complete 3DROV/SICONOS API

I Openness and genericity

I Sharing model description

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Conclusion

Conclusion

I The rover and the contact model are encoded in SICONOS I The SICONOS and 3DROV software are integrated I First simulation examples provided

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 15/15 More complex models and wheel/terrain interaction

I Soils constituting of granular materials, soft soils (Bekker model)

I Insertion task with robotic arm

Complete 3DROV/SICONOS API

I Openness and genericity

I Sharing model description

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Conclusion

Conclusion

I The rover and the contact model are encoded in SICONOS I The SICONOS and 3DROV software are integrated I First simulation examples provided Next Steps :

Benchmarking SICONOS

I static stability of the rover over steep slopes

I slippage handling and obstacles overcoming

I comparison with usual physic engine (Bullet, PhyX)

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 15/15 Complete 3DROV/SICONOS API

I Openness and genericity

I Sharing model description

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Conclusion

Conclusion

I The rover and the contact model are encoded in SICONOS I The SICONOS and 3DROV software are integrated I First simulation examples provided Next Steps :

Benchmarking SICONOS

I static stability of the rover over steep slopes

I slippage handling and obstacles overcoming

I comparison with usual physic engine (Bullet, PhyX)

More complex models and wheel/terrain interaction

I Soils constituting of granular materials, soft soils (Bekker model)

I Insertion task with robotic arm

Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 15/15 Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV Conclusion

Conclusion

I The rover and the contact model are encoded in SICONOS I The SICONOS and 3DROV software are integrated I First simulation examples provided Next Steps :

Benchmarking SICONOS

I static stability of the rover over steep slopes

I slippage handling and obstacles overcoming

I comparison with usual physic engine (Bullet, PhyX)

More complex models and wheel/terrain interaction

I Soils constituting of granular materials, soft soils (Bekker model)

I Insertion task with robotic arm

Complete 3DROV/SICONOS API

I Openness and genericity

I Sharing model description Mechanical Simulation Of The ExoMars Rover Using Siconos in 3DROV V. Acary, M. Br´emond, J. Michalczyk, K. Kapellos, R. Pissard-Gibollet – 15/15