1 Control Tutorials for MATLAB and Simulink - Cruise Control_ System Modeling
1 Control Tutorials for MATLAB and Simulink - Cruise Control_ System Modeling
INTRODUCTION CRUISE CONTROL MOTOR SPEED MOTOR POSITION SUSPENSION INVERTED PENDULUM
SYSTEM
FREQUENCY
Cruise Control Video
DIGITAL
Contents
SIMULINK
Physical setup
MODELING
System equations
CONTROL
System parameters
SIMSCAPE
State-space model
Physical setup
ctms.engin.umich.edu/CTMS/index.php?example=CruiseControl§ion=SystemModeling 1/4
3/25/2020 Control Tutorials for MATLAB and Simulink - Cruise Control: System Modeling
Automatic cruise control is an excellent example of a feedback control system found in many modern vehicles. The purpose of the cruise
control system is to maintain a constant vehicle speed despite external disturbances, such as changes in wind or road grade. This is
accomplished by measuring the vehicle speed, comparing it to the desired or reference speed, and automatically adjusting the throttle
according to a control law.
We consider here a simple model of the vehicle dynamics, shown in the free-body diagram (FBD) above. The vehicle, of mass m, is acted
on by a control force, u. The force u represents the force generated at the road/tire interface. For this simplified model we will assume that
we can control this force directly and will neglect the dynamics of the powertrain, tires, etc., that go into generating the force. The resistive
forces, bv, due to rolling resistance and wind drag, are assumed to vary linearly with the vehicle velocity, v, and act in the direction
opposite the vehicle's motion.
System equations
With these assumptions we are left with a first-order mass-damper system. Summing forces in the x-direction and applying Newton's 2nd
law, we arrive at the following system equation:
(1)
Since we are interested in controlling the speed of the vehicle, the output equation is chosen as follows
(2)
ctms.engin.umich.edu/CTMS/index.php?example=CruiseControl§ion=SystemModeling 2/4
3/25/2020 Control Tutorials for MATLAB and Simulink - Cruise Control: System Modeling
System parameters
For this example, let's assume that the parameters of the system are:
State-space model
First-order systems have only a single energy storage mode, in this case the kinetic energy of the car, and therefore only one state
(3)
(4)
We enter this state-space model into MATLAB using the following commands:
m = 1000;
b = 50;
A = -b/m;
B = 1/m;
C = 1;
D = 0;
cruise_ss = ss(A,B,C,D);
ctms.engin.umich.edu/CTMS/index.php?example=CruiseControl§ion=SystemModeling 3/4
3/25/2020 Control Tutorials for MATLAB and Simulink - Cruise Control: System Modeling
Taking the Laplace transform of the governing differential equation and assuming zero initial conditions, we find the transfer function of the
cruise control system to be:
(5)
We enter the transfer function model into MATLAB using the following commands:
s = tf('s');
P_cruise = 1/(m*s+b);
All contents licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
ctms.engin.umich.edu/CTMS/index.php?example=CruiseControl§ion=SystemModeling 4/4