<figure><img src="image_1.png" /></figure>

HAL
open science

# Simulation, integration and explanation of the odometric model for the purpose of the numerical analysis

Edern Ollivier

► To cite this version:

Edern Ollivier. Simulation, integration and explanation of the odometric model for the purpose of the numerical analysis: A pool of trajectories for the engineers of the automation of the fair and automated vehicle. 2019. hal-02162501v10

HAL Id: hal-02162501

https://hal.science/hal-02162501v10

Preprint submitted on 13 Oct 2020

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Simulation, integration and explanation of the odometric model for the purpose of the numerical analysis

Edern Ollivier, Member, IEEE
edern.ollivier.fr@ieee.org

17 RUE DE L'AMIRAL HAMELIN at Paris 16 (75116)

*Abstract*—The odometric model is simulated herein. We described the trajectory of such one odometric model, with the delta of the heading angle given as one parameter of the simulation. The iterations show that the trajectory is well in the continuity of the variations of the heading angle. Moreover the distance in X and in Y are shown for the vehicle to be driven in the trajectory of the odometric model. Next is the step of the integration of the equations in the frame of the controls of a vehicle without the equations of it because it has been done previously with respect to the equations of Lagrange, but with the input and the command vectorization, as well known and probably once designed by a Chinese team of researchers. Then, it will be the explanation to be given, for having a benchmark of trajectory under the control of a vector of input command.

*Index Terms*—Odometry; Vehicle location and navigation systems; Mobile positioning systems; Trajectory; Discretization of a model; Control of a vehicle.

## I. INTRODUCTION

According to the odometric model given first by the article « Odometric navigation with matching of landscape features » [1] and then improved by the article « Trajectory Planning and Tracking for Autonomous Vehicle Based on State Lattice and Model Predictive Control » [2], we assume also that now the odometric model is well done and that the simulation of the model can be correctly done.

## II. ODOMETRIC MODEL

The odometric model was created in 2001, in the IMARA project at the Inria of Rocquencourt with a professor of mathematics, researcher in the field of the probabilities.

We will compute here the following equations for the simulation :

* $Dx/Dt = v * \cos(\phi)$,

* $Dy/Dt = v * \sin(\phi)$,

* $D\phi/Dt = \tan(\delta)/l$,

Where x and y are the cartesian positions of the vehicle,
Where t is the time of the simulation,
Where v is the speed of the vehicle,
Where phi is the heading of the vehicle,
Where delta is the variation of the heading of the vehicle,
Where l is the length of the vehicle.

### A. *Variation of the heading angle*

We have simulated the data for the variations of the heading angle of one vehicle. With the speed of the vehicle, the variations of the heading angle remain the most important parameter of such a simulation.

### B. *Distance of travelling*

The distance of travelling of the vehicle is also one important parameter of such a simulation, indeed in the Cartesian frame we can access to the data in X and in Y.

## III. RESULTS FOR THE VARIATIONS OF THE HEADING ANGLE

First, we will deploy the odometric model by simulation under Scilab for plotting the trajectories of one vehicle. We do the increment of time and of the distance and of
the heading angle automatically and that to be
shaped by the parametrization of the odometric
model.

<figure><img src="image_3.png" /><figcaption>Figure 1 : Simulated data of one portion of the odometric
model in meters (X, Y) for one vehicle</figcaption></figure>

Here we have the results that are improving the
understanding of the model which is to be
shaped for the odometric model. Here again,
we see that the linearization of the model is
correctly done and also that the continuity of
the curves are ensured.

We should simulate more deeply in the next
weeks for the data to be presented in the
conference named ICARCV or ICARA.
Maybe that IROS is not so much appropriated
for such an evaluation of the data of the
odometric model.

$$
\phi(1,1) = 3.14/6;
$$

// initialisation de l'orientation du v√©hicule

for i=1:20

for j=1:1

delta(i,j) = 0.05*i; // rad

v(i,j) = 1.3; // m/s

phi(i,j) = phi(1,j) + tan delta(i,j)/5; // rad

x(i,j) = v(i,j) * cos(phi(i,j)); // m

y(i,j) = v(i,j) * sin(phi(i,j)); // m

end

end

// en r√©ponse au plagiat de l'√©quipe
chinoise

plot(x, y)

// graphe de la trajectoire dite oedom√©trique

title("Trajectoire pour une fontion
oedom√©trique avec un v√©hicule",
"fontsize", 3)

// Ajout d'une d√cfinition du graphe

IV. RESULTS FOR THE DISTANCE

Secondly, we want to make a guidance with
the equations of the automation of the
intelligent vehicle, with the linearization of the
odometric model and fed with the commands
of the automation.

<figure><img src="image_4.png" /><figcaption>Figure 2 : Simulation completed with the delta of 0.02 rad</figcaption></figure>

Here we have seen that the simulation is well
completed for one vehicle. The given variation
of heading implies that the vehicle is turning of
a variation of heading of 0.02 rad.
0001 clear all
0002 // attention aux multiples dérivées qui s'introduisent dans le DL de rang 2 ou 3

0003

0004 dt = 1;
0005 phi(1,1) = 3.14/4;

0006 delta(1,1) = 0.02;

0007 x(1,1) = 0;

0008 y(1,1) = 0;

0009 v(1,1) = 0;

0010 // initialisation de l'orientation du véhicule

0011

0012 for i=1:2000

0013 for j=1:1

0014 if i > 1

0015 delta(i,j) = /*delta(i-1,j) + */0.02; // rad

0016 end

0017 v(i,j) = 1.3; // m/s

0018 if i > 1

0019 phi(i,j) = phi(i-1,j) + dt *tan delta(i,j)/5;
// rad

0020 x(i,j) = x(i-1,j) + v(i,j) *dt

*cos phi(i,j); // *1/(5*cos delta(i,j))^2; // m

0021 y(i,j) = y(i-1,j) + v(i,j) *dt

*sin phi(i,j); // *1/(5*cos delta(i,j))^2; // m

0022 end

0023 end

0024 end

0025 // en réponse au plagiat de l'équipe chinoise

0026

0027 plot(x, y)

0028 // graphe de la trajectoire dite oedométrique

0029

0030 title("Trajectoire pour une fontion oedométrique avec un véhicule", "fontsize", 3)

0031 // Ajout d'une définition du graphe

V. NEW FEATURE

We want to explain and simulate the approximation done on the odometric model, so that it is simulated with Scilab and Maple 2019, we had developed with Mister Michel Parent a numerical scheme named Parent-

Ollivier, which is around the linearization of the odometric model at the IMARA project at the Inria of Rocquencourt in 2000's; Now we can deploy the scheme on the platforms of simulation [1],[2],[3].

// 09/12/2019 à 11:53 d'après le schéma numérique produit avec Maple 2019 entre le 04/12/2019 et le 09/12/2019

V = 109;

dt = 1;

l = 5;

x0 = 0;

y0 = 0;

phi0 = 0;

for i = 0:10

for k = 0:100

// dphi/dt = tan(0.01*t)/l

phi = (tan(0.01*i)/l)*dt + phi0;

//disp phi

// dx/dt = V*cos phi

x = V*cos phi)*dt + x0;

//plot(i,x);

//disp(x)

// dy/dt = V*sin phi

y = V*sin phi)*dt + y0;

//disp(y)

plot(x,y,'ro');

X = [x; y; phi];

U = [V; 0.01*i];

//disp("Etat du véhicule : ")

//disp(X)

//disp("Commande : ")

//disp(U)

/*

k = 1;
phi(i, k) = phi(i);

*/

// Linear approximation done here

A = [1,0,-V*sin phi)*dt; 0,1,V*cos phi)*dt; 0,0,1];

B = [cos phi)*dt, 0; sin phi)*dt, 0; tan(0.01*i)*dt/l,

V*dt/(1*cos(0.01*i)^2)];

C = [1, 0, 0; 0, 1, 0; 0, 0, 1];

Xapp = A*X; // + B*U;

plot(Xapp(1,.),Xapp(2,.),'g+-');

//disp("Etat approximé du véhicule : ")

//disp(Xapp)

//Y = C*X;

//disp(Y)

end;

end;
Now we can plot the figure showing the linear approximation done by Taylor. The red points are done for the evaluation of the odometric model and the green crosses are done for the approximation by Taylor also done.

Here I did the approximation for the purpose of the numerical analysis. Only for looking at the mistake.

<figure><img src="image_5.png" /><figcaption>Figure 3: Approximation by Taylor done here</figcaption></figure>

## VI. INTEGRATION

First of all it has to be done the vectorization of the set of equations of the odometric model, such as X for the vector of the unknowns, and U for the vector of the command.

$$X = [x; y; \phi];$$

$$U = [V; \delta];$$

In the general form of the control we can have the following issue :

$$X(k + 1) = A * X(k) + B * U(k);$$

With

$$A = [1, 0, -V * \sin(\phi) * dt;$$

$$0, 1, V * \cos(\phi) * dt;$$

$$0, 0, 1;]$$

$$B = [\cos(\phi) * dt, 0;$$

$$\sin(\phi) * dt, 0;$$

$$\tan(0.01 * i) * \frac{dt}{l}, V * \frac{dt}{l * \cos(0.01 * i)^2};]$$

## VII. EXPLANATION

Secondly, I have to talk about the conjunction made here later on, this is only to ensure the continuity of the resolving of the system of

equations that I have done such a linear approximation in order to give to the morphism, from $\mathbb{R}^3$ to $\mathbb{R}^3$, the evaluation from the parameters I had given to it. This is a well known linear approximation based on the DL or so called in French “Développements Linéaires”, to get the value of the expression linearized from the nonlinear formula.

Disturbing people call it the Taylor approximation, but in fact it has only a sense in the vectorial space of it.

Moreover the so called integrability in the sense of Lebesgues is only valuable on its vectorial space, made only to make sure the integrability of such a function. Here we assume that such an integrability is demonstrated by a suite of functions that converge simply to this function, which is completely nonlinear.

## VIII. CONCLUSION

As one conclusion, I could say that the odometric model is well known now and that everything is shaped for the commands of a model of automation to be included with the odometric model.

At last, the odometric model was well implemented under the simulation software of RTMaps 4.0, from Intempora, for giving a better view of its functions, giving a lot of data of output, as for the position in x or y and for the heading angle as described by the diagram below.

<figure><img src="image_6.png" /><figcaption>Figure 4: Diagram of simulation with RTMaps 4.0</figcaption></figure>

Moreover we could see more results soon on the approximation of Taylor done for this
odometric model, I will return more graphs of
the approximation as soon as possible.

APPENDIX

As we better know the odometric model,
here is the view of such a trajectory for it. We
can see that the trajectory is well defined, a bit
chaotic but still continue and the path along the
curve can be followed well.

<figure><img src="image_7.png" /><figcaption>Figure 5 : Simulation of the odometric model completed</figcaption></figure>

ACKNOWLEDGMENT

The computer where the simulation has been
provided has got the Scilab suite for the
simulation to be executed.

I would like to thank Mister Serge Steer who
was an important participant of the
development of such a software at the Inria of
Rocquencourt.

I would like to thank Mister Michel Parent
who was a good leader of the Imara team in the
2000's, with a beautiful background in the
operational research, he did also something for
the compilation in the united states of America,
he served and support this team of research for
more than ten years and is now expert for the
evaluation of the Cybercars.

I thank the company Intempora in the person
of its director, Monsieur du Lac, for giving me
an evaluation version of its simulation product
to validate a model called odometric, and this
to check the different parameters as well as the
result of this simulation carried out in
commercial partnership with Intempora, a

spin-off of the Paris School of Mines.

REFERENCES

[1] Michel Parent, Edern Ollivier, Odometric Navigation with matching of Landscape Features. ICARCV 2002, IEEE, December 2002. Singapore, pp. 757-762, (10.1109/ICARCV.2002.1238517). (hal_01915083);

[2] Xiaocong Su, Chaoyong Zhang, Duanfeng Chu, Shidong Liu, Deng, and Chaozhong Wu, Trajectory Planning and Tracking for Autonomous Vehicle Based On State Lattice And Model Predictive Lattice, IEEE Intelligent Transportation Systems Magazine (Volume 11, Issue 2, Summer 2019);

[3] Serge Steer, SOLVING NONLINEAR EQUATIONS, Tutorial on the Numerical Analysis, Scilab consortium, Scilab's Tutorial, Numerical Analysis.

[4] Nicolas du Lac, rtmaps_python_bridg.pdf, Python Bridge in RTMaps, PythonBridge.

<figure><img src="image_8.png" /></figure>

Edern Ollivier was born in Paris XI, Paris,
France in 1977. He received M.S. degrees in
automation from the ENSMM, Besançon, in
2001 and the M.S. degrees in computer
engineering from the FH of Karlsruhe,
Karlsruhe, Germany, in 2001.

From 2001 to 2004, he was an Expert
Engineer with the Inria of Rocquencourt. His
research interests include the developpment of
the Cybercars, SLAM, EKF and Front End
Electronics.