Tuning for Multiple Values of Plant Parameters

This example shows how to use Control System Tuner to tune a control system when there are parameter variations in the plant. The control system of this example is an active suspension on a quarter-car model. The example uses Control System Tuner to tune the system to meet performance objectives when parameters in the plant vary from their nominal values.

Quarter-Car Model and Active Suspension Control

A simple quarter-car model of the active suspension system is shown in Figure 1. The quarter-car model consists of two masses, car chassis of mass and the wheel assembly of mass . There is a spring and damper in between to model the passive spring and shock absorber. The tire between the wheel assembly and the road is modeled by the spring .

Active suspension introduces a force between the chassis and wheel assembly and allows the designer to balance driving objectives such as passenger comfort, road handling using a feedback controller.

Figure 1: Quarter-car model of active suspension.

Control Architecture

The quarter-car model is implemented using Simscape Multibody. The following Simulink model contains the quarter-car model with active suspension, controller and actuator dynamics. Its inputs are road disturbance and the force for the active suspension. Its outputs are the suspension deflection and body acceleration. The controller uses these measurements to send control signal to the actuator which creates the force for active suspension.

The nominal values of spring constant and damper between the body and the wheel assembly are not exact and due to the imperfections in the materials, these values can be constant but different. Try to satisfy these control objectives under parameter variations.

Model the road disturbance of magnitude seven centimeters and use the constant weight.

Wroad = ss(0.07);

Define the closed-loop target for handling from road disturbance to suspension deflection as

HandlingTarget = 0.044444 * tf([1/8 1],[1/80 1]);

Define the target for comfort from road disturbance to body acceleration as

ComfortTarget = 0.6667 * tf([1/0.45 1],[1/150 1]);

Limit the control bandwidth by the weight function from road disturbance to the control signal

Controller Tuning

Double click to the orange block in Simulink model to open the Control System Tuner session for active suspension control. Tuned block is set to the second order Controller and three tuning goals are defined to achieve the handling, comfort and control bandwidth as described above. In order to see the performance of the tuning, the step responses from road disturbance to suspension deflection, body acceleration and control force are plotted.

Handling, Comfort and Control Bandwidth goals are defined as gain limits, HandlingTarget/Wroad, ComfortTarget/Wroad and Wact/Wroad. All gain functions are divided by Wroad to incorporate the road disturbance.

The open-loop system with zero controller violates the handling goal and results in highly oscillatory behavior for both suspension deflection and body acceleration with long settling time.

Figure 2: Control System Tuner with Session File.

Tune the controller using Control System Tuner by clicking Tune button in Tuning Tab. As shown in Figure 3, this design satisfies the tuning goals and the responses are less oscillatory converging fast to zero.

Figure 3: Control System Tuner after tuning.

Controller Tuning for Multiple Parameter Values

Now, try to tune the controller for multiple parameter values. The default value for car chassis of mass is 300 kg. Vary the mass to 100, 200 and 300 for different operation conditions.

In order to vary these parameters in Control System Tuner, go the Control System Tab and select Select parameters to Vary in Parameter Variations. Define the parameters in the opening document.

All values are populated in the parameter variations table. Click Apply button to set the parameter variations to the Control System Tuner.

Figure 8: Parameter variations table with updated values.

Multiple lines appear in tuning goal and response plots due to the parameter variations. The designed controller for nominal parameter value causes unstable closed-loop system.

Figure 9: Control System Tuner with multiple parameter variations.

Tune the controller to satisfy handling, comfort and control bandwidth objectives by clicking Tune button in Tuning Tab. Tuning algorithm tries to satisfy these objectives not only for the nominal parameters, but all parameter variations. This is a challenging task compared to nominal design as shown in Figure 10.

Figure 10: Control System Tuner with multiple parameter variations (Tuned).

Control System Tuner tunes the controller parameters on the linearized control system. Now, to examine the performance of the tuned parameters on the Simulink model, update the controller in the Simulink model by clicking Update Blocks in Control System Tab.

Using Simulation Data Inspector, simulate the model for the parameter variations and the results are shown in Figure 11. For all three parameter variations, controller tries to minimize the suspension deflection, body acceleration with minimal control effort.

Figure 11: Controller performance on the Simulink model.

Open Example

A modified version of this example exists on your system. Do you want to open this version instead?

This website uses cookies to improve your user experience, personalize content and ads, and analyze website traffic. By continuing to use this website, you consent to our use of cookies. Please see our Privacy Policy to learn more about cookies and how to change your settings.