Cruise Control System
Group Members:
Meghana Aeligeti(210073), Pula Jathin Reddy (210790),
Kruthi Akkinepally(210088), Mokshagna Prattipati(210761)
Objective of the Controller - Stability
▶ Goal: Ensure stability of the vehicle speed v (output) by
controlling the throttle input u.
▶ Stabilize Speed: Maintain the vehicle at the desired speed by
adjusting the throttle to counteract disturbances like road
incline or wind resistance.
▶ Response Control: Set desired response speed and damping
characteristics by choosing appropriate feedback gains.
Objective of the Controller - Regulation and Performance
▶ Regulation: The controller regulates vehicle speed v by
dynamically adjusting throttle input u to maintain a set speed
within the operating range.
▶ Desired Performance:
▶ Fast response and minimal overshoot when speed changes are
requested.
▶ Efficient energy usage, balancing fuel efficiency with speed
control accuracy.
▶ Summary: Achieve a stable, controlled response for the
vehicle’s speed, minimizing oscillations and energy
consumption.
Assumptions for Controller Design
▶ Linear Damping Only: Aerodynamic drag and road
resistance are approximated as linear damping bv for
simplicity.
▶ Actuator Dynamics Modeled: The throttle actuator is
modeled with a time constant α for simplified response
approximation.
▶ Neglect External Disturbances: Only the throttle force u is
considered; other external influences are either part of x3 or
neglected.
▶ Constant Vehicle Mass: Vehicle mass m is assumed
constant for simplicity in control calculations.
State-Space Model - System Dynamics
▶ Starting with Newton’s law for vehicle dynamics:
mv̇ + bv = βu − d
▶ Define the input u as the throttle control input (force) and
the output v as the vehicle speed.
▶ Assumptions:
▶ Linear Damping: Vehicle resistance (drag and friction) is
modeled as a linear damping term bv .
▶ Constant Parameters: Mass m and damping b are assumed
constant for simplicity.
State-Space Model - Defining State Variables
▶ Define state variables:
x1 = v (vehicle speed), x2 = u (throttle actuator position), x3
▶ Then, we have:
b β 1
ẋ1 = − x1 + x2 − x3
m m m
ẋ2 = −αx2 + u
ẋ3 = −γx3
▶ Expressed in matrix form, the state equations become:
State-Space Model - Matrix Representation
▶ State-space representation:
b β 1
ẋ1 −m m − m1 x1 m
ẋ2 = 0 −α 0 x2 + 1 u
ẋ3 0 0 −γ x3 0
| {z } | {z }
A B
▶ Output equation:
x1
y = 1 0 0 x2
| {z } x
C 3
▶ Matrix Definitions:
b β 1
− m1
−m m m
A= 0 −α 0 , B = 1
0 0 −γ 0
C= 1 0 0 , D= 0
State-Space Model Example with Parameters
▶ If we assume:
m = 1000, b = 50, β = 10, α = 0.5, γ = 0.1
▶ Then the state-space matrices become:
50 10 1
− 1000 1000 − 1000 −0.05 0.01 −0.001
A= 0 −0.5 0 = 0 −0.5 0
0 0 −0.1 0 0 −0.1
1
10000.001
B = 1 = 1 , C= 1 0 0 , D= 0
0 0
▶ This example serves as a basis for designing the
state-feedback controller and verifying system controllability.
Design of State Feedback Controller: controllability check!
▶ C = B AB A2 B
▶ A → 3 × 3 matrix
▶ B → 3 × 1 matrix
▶ C = B3×1 AB3×1 A2 B3×1
3×3
Controllability Matrix and Rank Check
▶ The controllability matrix C for the third-order system is:
C = B AB A2 B
▶ For our system, C has dimensions 3 × 3.
Computed Controllability Matrix
▶ Rank(C) = 3
Conclusion
Since the rank of C is equal to the number of states, the system is
fully controllable.
Design of State Feedback Controller: poles
▶ Maximum peak overshoot (Mp ) = 10%
− √ πζ
Mp = 0.10 ⇒ e 1−ζ 2 = 0.10 ⇒ ζ = 0.59
▶ Settling time (tr ) = 4 seconds
4
tr = 4 ⇒ = 2 ⇒ ωn = 0.6829
ζωn
▶ Dominant poles:
p
Poles ⇒ −ζωn ± jωn 1 − ζ 2 = −0.4037 ± 0.5508j
▶ Additional pole placed at −3 in the left half-plane (LHP) for
faster response.
Conclusion
The chosen poles are −0.4037 ± 0.5508j and −3. These poles
ensure stability and desired response characteristics for the system.
State Feedback Control Law
▶ Control law:
u = −KX + Kr r
▶ Gain matrix:
K = k1 k2 k3
▶ Reference gain Kr ensures desired speed tracking r = vdesired :
1
Kr = −
C (A − BK )−1 B
Design of State Feedback Controller: Design of K
▶ Poles are chosen to be
−0.4037 + 0.5508j,−0.4037 − 0.5508j, and −3.
▶ K is designed by placing the poles of A − BK at the poles
mentioned above.
Computed Gain Matrix K
Combined Controller and Observer Block Diagram
▶ This block diagram represents the combined structure of the
state-feedback controller and the observer.
▶ Controller Functionality: The controller uses the state
feedback gain K = k1 k2 k3 to regulate the system by
adjusting the input u, ensuring that the system output Y
Justification for the Performance of Controller
Output without controller Output with controller
Justification for the Performance of Controller
▶ Without Controller:
▶ The vehicle without feedback control may exhibit unstable or
oscillatory behavior in response to disturbances, such as
changes in road incline or wind resistance.
▶ Without a controller, the desired velocity is attained after a
long time as illustrated.
▶ With Controller:
▶ The state-feedback controller stabilizes the vehicle speed by
placing the closed-loop poles to ensure critically damped or
underdamped behavior.
▶ With the controller, speed oscillations are minimized, and the
vehicle reaches the desired speed quickly, maintaining stability
in response to external disturbances.
▶ The controlled response demonstrates the effectiveness of the
controller in maintaining a steady speed, optimizing fuel
efficiency, and achieving the desired dynamic performance.
Design of Luenberger Observer - Overview
▶ Objective: To estimate the states of the cruise control
system using a Luenberger observer.
▶ System Model for the cruise control system:
Ẋ = AX + BU, Y = CX
where
b β 1
− m1
−m m m
A= 0 −α 0 , B = 1, C= 1 0 0
0 0 −γ 0
system params m = 1000, b = 50, β = 10, α = 0.5, γ = 0.1
▶ The observer uses the measured output Y (vehicle speed) and
the input U (throttle force) to estimate the states X (vehicle
speed, actuator state, and disturbance state).
▶ Observer Model:
X̂˙ = AX̂ + BU + L(Y − Ŷ )
where L is the observer gain matrix that ensures the
estimation error converges to zero over time.
Design of Luenberger Observer: Observability Check
▶
C
O = CA
CA2
▶ For the third-order system, the observability matrix is:
Computed Observability Matrix
▶ Rank(O) = 3
Conclusion
Since the rank of the observability matrix is equal to the number of
states, the system is observable.
Design of Luenberger Observer: Observer Gain Matrix (L)
▶ L is designed by placing the poles of A − LC to be 10 times
faster than the closed-loop poles of A − BK .
▶ This ensures that the observer has a faster convergence rate
compared to the controller, allowing it to track the system
states accurately.
Computed Observer Gain Matrix (L)
Design of Luenberger Observer: Observer Dynamics and
Stability Condition
▶ L is carefully chosen to ensure that the estimated state X̂
converges to the actual state X over time.
▶ Let the estimation error e(t) = X (t) − X̂ (t).
▶ The error dynamics are given by:
˙
ė(t) = Ẋ (t) − X̂ (t) = (A − LC )e(t)
▶ For stability, the eigenvalues of A − LC should have negative
real parts, ensuring e(t) → 0 as t → ∞.
Design of Luenberger Observer: Observer System Design
▶ We consider a virtual system for state estimation:
˙
X̂ = AX̂ + BU + L(Y − Ŷ )
▶ If the initial states of this virtual system match the actual
system, the estimated state X̂ will track the true state X as
t → ∞.
▶ The output Ŷ = C X̂ will approximate the actual output Y ,
allowing accurate estimation of unmeasured states.
Design of Luenberger Observer: Observer
▶ Closed-loop state feedback system with observer design
becomes:
Ẋ = AX + BU, Y = CX + DU
U = −K X̂
X̂˙ = AX̂ + BU + L(Y − Ŷ )
Ŷ = C X̂ + DU
Justification for the Performance of Observer
▶ The observer is designed to estimate the system states
accurately. The following plot compares the actual state with
the estimated state for vehicle speed (x1 ).
▶ The plot shows that the observer converges to the actual
vehicle speed quickly after a brief initial transient period.
▶ The estimated vehicle speed aligns closely with the actual
speed, confirming accurate tracking by the observer.
Justification for the Performance of Observer
▶ The following plot shows the actual and estimated states for
engine dynamics (x2 ), with close alignment indicating effective
observer performance.
▶ Both estimated and actual states for x2 follow similar
behavior, demonstrating that the observer accurately tracks
the engine dynamics.
Justification for the Performance of Observer
▶ The following plot shows the actual and estimated states for
the disturbance (x3 ), indicating how well the observer handles
external disturbances in the system.
▶ The observer successfully estimates the disturbance state x3
after a brief transient, as shown by the close alignment in the
plot.
References
▶ Ogata, K. (2010). Modern Control Engineering (5th ed.).
Prentice Hall.
▶ Dorf, R. C., Bishop, R. H. (2017). Modern Control Systems
(13th ed.). Pearson.
▶ Franklin, G. F., Powell, J. D., Emami-Naeini, A. (2019).
Feedback Control of Dynamic Systems (8th ed.). Pearson.
▶ University of Michigan Control Tutorials for MATLAB and
Simulink: Cruise Control System Modeling.
Thank You!