Having previously modelled a potential active suspension in a very simplistic, static way, and proved that it will work, the next challenge is to accurately model the system dynamically. This will lead to fine-tuning of the control algorithms and more detailed predictions of its responses to different stimuli.
Modelling the control of the system, and the way that it interacts with the rest of the car, is no simple task because there are a series of mechanisms between the chassis and the ground which all require their own model. The first step modelling the system dynamically is to build these models and see how the suspension will work in principle.
Conventional Suspension Modelling
Any active suspension system implemented on the Formula Student car will be in addition to a conventional system, so modelling the conventional system needs to be done first before the effect of the active suspension is added. This involves modelling every component that links the chassis to the ground.
These models will contain information about the geometry of the system, and the forces and loads carried by the linkages. Some parts will be purely geometric, while there are other models which will require parameters to be specified, such as the spring rate or the gearing of a system. In essence, for the whole car to be accurately modelled, each component within it must be modelled along with the relations between these parts.
There are three different classes of model. Firstly, there are the geometric models which are used for positioning and calculating motion paths. Secondly, there are models which are related to the way that forces are transferred through the system and between linkages. Calculating the forces in each bar has many advantages including optimisation of the structure and prediction of failure modes, but it will also be used for calculating the accelerations (and therefore positions) of all of the components dynamically. The third type of model is a dynamic model, where the parameters are a function of time. It will describe how the system behaves dynamically, and requires the static positions and predicted loads to calculate how the suspension will respond.
Geometric Models
The first model to be built is the wheel model, which specifies things like the wheelbase, track width, wheel diameter, and unsprung mass. This defines the position of all four corners of the car, and the size and shape of the footprint. The unsprung mass will also be important when it comes to modelling the way that the suspension behaves dynamically.
The wheel is connected to the chassis via six linkages. Four of these are part of the A-arms, or wishbones, and then there is a pull/push rod and a steering arm or toe link. The wishbones define the motion path that the wheel takes as it travels vertically, defining things like the roll centre and the instant centre. The pull/push rod controls the vertical position through a rocker linked to a spring, and the steering arm is connected to the upright to control the wheel’s position around the steering axis. The wishbones, and steering arm are purely geometric models, but the pull rod is more complex and is a hybrid of the geometric and kinematic models.
Kinematic Models
Kinematic models deal with the way that forces are transferred through the suspension system. Any deformable components, and the links between them, are models fitting in this category. This includes the tyre, which will be modelled as a spring. While the equations governing the spring are trivial, calculating parameters such as the spring rate is not so easy; extensive manipulation of tyre data provided by the manufactures has revealed how the spring rate varies according to a range of different parameters, such as pressure, and the tyre model will also require these parameters to be specified in order to determine the spring rate.
The pull rod and spring are part of the same model, because their displacements and the forces are closely interlinked. In particular, the position and force in one is fully defined by the position and force in the other, so it makes sense to combine the models. The two are linked by a rocker, which controls the motion ratio and relative spring rates.
The motion ratio is the distance moved by the spring for each unit distance moved by the rocker. This is a function of both the radius at which both parts attach to the rocker, and the direction the rod points in; it is based on a triple vector product of the rocker rotation axis, the direction of the rod, and the vector radius of the pickup point. Because it depends on the direction of the rod, it will vary as the suspension travels, which complicates the dynamic modelling substantially. The spring force is multiplied by the motion ratio twice; first the displacement is reduced and then the force itself is scaled, so the force ratio is the motion ratio squared.
There is also a kinematic model for calculating the wishbone and steering arm loads. This is based on the solution to a matrix equation which states the force and moment equilibrium cases for wheel. It assumes that the wheel displacement must be held steady, but allows for vertical and lateral forces to be applied at the wheels to see how this affects the member loads. Using this also allows us to see the steady state force in the pull rod, and hence choose an appropriately stiff spring for the static case where the car is resting on the ground.
Dynamic Models
The dynamic models are models where the inputs and outputs are functions of time. The dynamic wheel model calculates the forces on the wheel at any given time as a function of body accelerations and spring positions. These forces will typically be imbalanced, hence accelerations, velocities and positions can be derived from an integral process.
As the position of the wheel updates, the spring position will change and hence the forces on the wheel will be different. In the next round of calculations, this will also affect the accelerations, velocities, and position of the wheel, so that over time the wheel behaviour can be analysed.
The active suspension component adds another level to this. If it is to be controlled as suggested before, based on the wheel position, it too will be a dynamic model. The active suspension control model will be fed the position of the wheel, mimicking the sensor inputs available in the car, and will respond with a command to the actuator.
The actuator force is therefore a function of time, and when it is added to the model, the actuator force will work alongside the spring force to control the position of the wheel. The actuator force will be fed back in to the dynamic wheel model to update the forces accordingly.
A range of different control algorithms can be tested to find the most effective one, defined as the one which produces the least overall unintentional wheel travel. By modelling the system computationally, the controller parameters can be optimised without doing any physical testing. It is also possible that this control model could lead to an unstable feedback loop, but if it does it will be discovered in the code before the physical parts are assembled, allowing time for design changes.
PID Controllers
The actuator force will be driven by a control algorithm which uses the vehicle ride height, or wheel position, as its input. However, purely driving the algorithm based on position is not necessarily effective. More effective controllers can be built which can reduce the overall error in the position by also taking into account the speed at which the position is changing, and the accumulation of errors over time.
This type of controller is known as a PID controller, with the terms standing for ‘Proportional-Integral-Derivative’. Three components make up the output of the controller, based on the sum of a value proportional to the error, a value proportional to the integral of the error over time, and a value proportional to the rate of change of the error. It is also possible to extend this to the second derivative of the error, which in this case represents the acceleration of the wheel, linked to the deficit or excess force provided by the passive system.
The PID controller needs to be tuned, by applying different multiples to each of the terms. Each term has a slightly different effect, and changing the weighting changes the response of the controller. This can be used to iron out high frequency inputs, or to try and pre-empt any significant roll or pitch, and correct before it starts.
Building the Models
There are a range of tools that can be used for this form of modelling. Microsoft Excel is a very powerful tool and is used for validation of the models, along with Matlab. Matlab is well suited to building models such as these, and integrates well with the requirements of the modelling: to perform vector and matrix multiplications and to draw graphs of the output. Matlab also includes a PID tuning library so is a very attractive prospect.
MSC Adams is the industry standard system for modelling suspension systems. This can be used to show how the suspension deflects in response to loads, calculate the loads in members, and specify springs and rockers. It can also optimise these components. However, the support for a user-configured active suspension system is limited.
As a result, a bespoke system may be the answer, written and developed for the SUFST team in C#. This is the type of challenge I enjoy taking on. It will allow the model to be built with only the required functions, which is beneficial when it comes to ease of use and development. In addition, building a bespoke system lends a much better understanding of the way the dynamics work, and can be integrated easily with Solidworks.
The models are in development at the moment and future posts will show exactly how the dynamic models are used to evaluate and adapt the design.