# Quarter-car suspension modeling and simulation in Xcos

Quarter-car suspension models are used to study the dynamics of a vehicle’s suspension. The model consists of: the wheel, the suspension system (damper and coil) and a quarter of the vehicle’s body mass.

The modeling approach is to use lumped parameters, which means that a quarter of the vehicle body and the wheel are concentrated in distinct single mass parameters. The stiffness and the damping of the suspension and of the wheel are also concentrated in lumped parameters.

Image: Quarter-car lumped parameters model

where:

m1 [kg] – the mass of a quarter of the vehicle body
m2 [kg] – the mass of the wheel and suspension
k1 [N/m] – spring constant (stiffness) of the suspension system
c1 [Ns/m] – damping constant of the suspension system
k2 [N/m] – spring constant (stiffness) of the wheel and tire
c2 [Ns/m] – damping constant of the wheel and tire
z1 [m] – displacement of the vehicle body (output)
z2 [m] – displacement of the wheel (output)
u [m] – road profile change (input)

The road profile is considered to be the input into the system. The purpose of the study is to analyze the system’s response (outputs) for a step input of the road profile, which can be regarded as the wheel going above a steep rigid object on the road (rock, brick, etc.)

Before writing down the equations, we need to draw the free body diagram (FBD) of the system. From this we will deduce the force equilibrium equations for both masses. Since there are two coupled masses, the dynamic system has two degrees of freedom.

Image: Quarter-car free body diagram (FBD)

where:

Fe1 [N] – the elastic force of the suspension system
Fd1 [N] – the damping force of the suspension system
Fi1 [N] – the inertial force of the vehicle body
Fe1 [N] – the elastic force of the wheel and tire
Fd1 [N] – the damping force of the wheel and tire
Fi1 [N] – the inertial force of the wheel and tire

The directions of the forces are set according to the following reasoning. Imagine that the road has a bump and the wheel rolls over it. The profile change of the road will cause the tire to compress. This will generate an elastic force Fe2 and a damping force Fd2 which will push the wheel up. Due to inertia, the wheel will try to resist the position change through the inertial force Fi2. The elastic and damping forces are also acting on the road but this is not in the interest of our study.

The suspension system will oppose the upward movement of the wheel and it will push on it with the elastic force Fe1 and a damping force Fd1. According to Newton’s third law of motion, for each action there is a reaction. Therefore the elastic force Fe1 and the damping force Fd1 will push the vehicle body upwards. Due to inertia, the body mass will try to resist the position change through the inertial force Fi1.

The equation of force equilibrium for the body mass is:

$F_{i1}=F_{e1}+F_{d1} \tag{1}$

The inertial force of the body, and the elastic and damping forces of the suspension system are expressed as:

$\begin{split} F_{e1} &= k_1 (z_2 – z_1)\\ F_{d1} &= c_1 \left ( \frac{dz_2}{dt} -\frac{dz_1}{dt} \right )\\ F_{i1} &= m_1 \frac{d^2 z_1}{dt^2} \end{split}$

Replacing the expressions of the forces in equation (1), we get:

$\bbox[#FFFF9D]{m_1 \frac{d^2 z_1}{dt^2} =k_1 (z_2 – z_1) +c_1 \left ( \frac{dz_2}{dt} -\frac{dz_1}{dt} \right )} \tag{2}$

The equation of force equilibrium for the wheel mass is:

$F_{i2}+F_{e1}+F_{d1} =F_{e2}+F_{d2} \tag{3}$

The inertial force of the wheel, and the elastic and damping forces of the wheel system are expressed as:

$\begin{split} F_{e2} &= k_2 (u – z_2)\\ F_{d2} &= c_2 \left ( \frac{du}{dt} -\frac{dz_2}{dt} \right )\\ F_{i2} &= m_2 \frac{d^2 z_2}{dt^2} \end{split}$

Replacing the expressions of the forces in equation (3), we get:

$\bbox[#FFFF9D]{m_2 \frac{d^2 z_2}{dt^2} =k_2 (u – z_2) +c_2 \left ( \frac{du}{dt} -\frac{dz_2}{dt} \right ) – k_1 (z_2 – z_1) – c_1 \left ( \frac{dz_2}{dt} -\frac{dz_1}{dt} \right )} \tag{4}$

The ordinary differential equations (ODE) (2) and (4) describe the dynamic behavior of the quarter-car model.

Before integration in Xcos, we need to keep on the left-hand side of the equal sign only the second derivatives of the displacements. This will give:

$\begin{split} \frac{d^2 z_1}{dt^2} &= \frac{1}{m_1} \left ( k_1 (z_2 – z_1) +c_1 \left ( \frac{dz_2}{dt} -\frac{dz_1}{dt} \right ) \right )\\ \frac{d^2 z_2}{dt^2} &= \frac{1}{m_2} \left ( k_2 (u – z_2) +c_2 \left ( \frac{du}{dt} -\frac{dz_2}{dt} \right ) – k_1 (z_2 – z_1) – c_1 \left ( \frac{dz_2}{dt} -\frac{dz_1}{dt} \right ) \right ) \end{split}$

Before building the Xcos block diagram model, we need to load the parameters of the system in the Scilab workspace or in the Set Context environment from Xcos.

m1 = 290;
m2 = 60;
k1 = 16200;
k2 = 191000;
c1 = 1000;
c2 = 2500;

Based on the differential equations above we build the Xcos block diagram model:

Image: Quarter-car Xcos block diagram model

The road input u is modeled as a step input, with a rising edge and falling edge. v1 is the vertical translational speed of the body of the vehicle and v2 is the vertical translational speed of the wheel.

All the initial conditions of the integrators are set to zero. The simulation is set to run for 8 seconds.

The results of the simulations are saved in the Scilab workspace, under the variable simOut. To plot the outputs we use the Scilab script:

// Read simulation outputs
t = simOut.time;
u = simOut.values(:,1);
z1 = simOut.values(:,2);
z2 = simOut.values(:,3);
v1 = simOut.values(:,4);
v2 = simOut.values(:,5);

// Plot results
subplot(2,1,1)
plot(t,u,'g')
plot(t,z1,'b')
plot(t,z2,'r')
xgrid()
ylabel('Displacement [m]')
legend('u','z1','z2',1)
subplot(2,1,2)
plot(t,v1,'b')
plot(t,v2,'r')
xgrid()
xlabel('Time [s]')
ylabel('Speed [m/s]')
legend('v1','v2',1)

After running the post-processing Scilab script we get the following graphical window:

Image: Quarter-car simulation plot

At time t = 1 s the road profile u (input) has a step change (rising edge) of 0.1 m. The wheel will be the first to move, with high speed and significant damping. The vehicle body will follow, with smaller speed but higher amplitude and several oscillations. After 4 s there is another step input (falling edge) of the road profile.

The results show a good approximation of the behavior of a real suspension system. By changing the road input signal and wheel and suspension parameters we can evaluate the dynamic behavior of the system for different road disturbances and suspension settings.

For any questions, observations and queries regarding this article, use the comment form below.

Don’t forget to Like, Share and Subscribe!