Skip to content

Dynamic simulation

The analysis type Dynamic simulation allows to simulate the behaviour of the vehicle on a given trajectory. For now, we are only simulating a trajectory on a flat road, with no slopes or inclines.

The model and calculation are further described in a dedicated document. But we can briefly describe it :
It is a six-degrees-of-freedom model of the three wheeled vehicle : 3 cartesian coordinates of its center of gravity (x, y and z) and 3 angles of rotation around its own axes (phi, theta and psi).
The dynamics equations are solved in matrix form at each time step.
The simulation of a turn is done by constraining the equations system, we impose :

  • the vehicle trajectory : circular on a circle of radius R
  • the vehicle orientation : tangent to the trajectory
  • the vehicle speed orientation : tangent to the trajectory

We also calculate and impose the lateral reactions at each tyre-road contact point that can produce the desired trajectory.

The simulation is as follows:
The initial vehicle speed and the road's radius of curvature are set. The system is given an initial equilibrium time during which nothing else happens. Forces collinear to the vehicle's trajectory are then applied at each tyre-road contact point. The forces are driven by setting the friction coefficient between the tyres and the road. This coefficient can be positive (acceleration) or negative (braking). In order to stay close to reality, the coefficient can't be higher than 0.8 (absolute value) which is the usual limit of sliding for a tyre-road contact (dry conditions).

The values of the initial speed, the radius of curvature of the road, and the friction coefficient can be tuned. Simulation time, time step, and duration of the equilibrium time can also be modified.

The program then returns the simulation results in the form of two diagram pages:
The first page shows the movement parameters evolution : - vehicle trajectory (y = f(x)) - dx/dt and dy/dt against time - normal reactions at each contact point, against time - phi versus time - theta versus time - psi versus time

The second page shows the evolution of the normal and lateral reactions on the front wheels (left-hand diagram) and on the rear wheel (right-hand diagram). It allows the detection of sliding by comparing the lateral reaction to 0.8 x the normal reaction. If the lateral reaction overcomes 0.8 x the normal reaction, then we can expect to see the vehicle sliding.

You can download the template file and save it to your workspace. The content of this file is shown hereafter.

##########################
# SECTION 1: Analysis Type
analysis_type : dynamique analysis

################################
# INFO level: 
out_level: 2

################################
# SECTION 2: Analysis inputs


###########################
# SECTION 3: Output Request
# Select output units. Available choices are:

############################
# SECTION 4: Analysis inputs
# Calculation order of precision 1 or 2
precision order: 2
# choice for calculation methode
method: Scalar
# Includ Inertia matrix True/False
Rotation inertia: True




# Input the vehicle characteristics
vehicle:

  mass: 456         # Total mass of the vehicle + driver + luggage in [kg]
  radius: 0.252        # Wheel radius in [m]
  Cx: 0.325            # Total vehicle Drag coefficient [dimensionless]
  Crr: 0.01          # Totale vehicule rolling resistance coefficient [dimensionless]
  S: 1.5               # vehicle aerodynamic cross section perpendicular to vehicle velocity in [m^2]
  nbr: 1             # Number of driving wheel
  V_int: 4      # Total interior volume of the vehicle [m^3]
  S_tot: 10           # Total exterior surface [m^2]

  P_headlight: 80    # Headlight power [W]
  dmdt: 0.05         # Flow rate of air through vents in [kg/s]
  ktherm: 35         # thermal conductivity coefficient in [W/m^2/K]

  I_sun: 1000     # Solar heat flux [W/m^2]
  S_windows: 2         # Glass total surface [m^2]
  A_windows: 0.6       # Glass absorption coefficient [dimensionless]
  T_int: 300         # intern temperature [K]
  T_ext: 280         # external temperature [K]

  n_motor: 1        # number of motors [dimensionless]
  efficiency_map: Valeo 415001  # file path to the motor efficiency map. The map is a torque - rotation velocity - efficiency map.

  transmission_ratio: 7.4         # Total transmission ratio between motor pulley and motorised wheel gear [dimensionless]
  eta_battery: 0.95 # Batterie efficiency [dimensionless]
  eta_transmission: 0.96 # transmission axe efficiency [dimensionless]
  eta_motordrive: 0.96 # onduleur efficiency [dimensionless]
  R_int: 0.08       # internal batterie resistance in [ohm]

  Inertia_Mat: # Inertia matrix of the sprung mass or total vehicule (depending on what we calculate), in the vehicle coordinate system [kg.m^2]
    - [70.5, 0.52, -18]
    - [0.52, 197, 1.7]
    - [-18, 1.7, 193]
  Wheel_Base: 1.60 # Wheelbase = distance between front and rear axle [m]

  Track: 1.054  # Track = distance between the contact points of the 2 front wheels [m]

  Height: 1.30  # Height of the vehicle [m]

  X_Cog: 1.25  # X coordinate of the vehicle center of gravity, in the vehicle coordinate system [m]

  Y_Cog: 0.0  # Y coordinate of the vehicle center of gravity, in the vehicle coordinate system [m]

  Z_Cog: 0.41  # Z coordinate of the vehicle center of gravity, in the vehicle coordinate system [m]

  Stiff_Front: 6120  # Front suspensions stiffness [N/m]

  Stiff_Rear: 7542 # Rear suspension stiffness [N/m]

  Damp_Front: 380  # Front suspensions damping coefficient [N.s/m]

  Damp_Rear: 460  # Rear suspension damping coefficient [N.s/m]



# Imput the simulation characteristics
arguments:
  InitSpeed: 0   # Initial vehicle speed [km/h]
  RTurn: 9999999999    # Curvature radius of the road [m]
  Accel: 0.0  # Braking (-) or acceleration (+) coefficient, between -0.8 and 0.8 [-], applied on rear wheel only 
  Simu_Time: 10  # Total simulation time [s]
  Simu_Time_Step: 0.001  # Time step of the calculation [s]
  Equi_Time: 4  # Time during which no acceleration is applied, to reach an equilibrium configuration [s]