The control system is where digital decisions meet physical reality. Given a planned trajectory — a sequence of desired positions, headings, and speeds — the controller must compute the exact steering angle, throttle, and brake commands that make the vehicle follow that trajectory accurately and smoothly.
Modern autonomous vehicles use drive-by-wire systems that replace mechanical linkages with electronic controls:
Drive-by-wire is a prerequisite for autonomous driving — without it, the computer cannot physically control the vehicle.
Effective control requires a model of how the vehicle responds to control inputs.
The most widely used simplified vehicle model treats the car as having two wheels (one front, one rear) along the centerline:
Kinematic bicycle model (valid at low speeds):
\(\dot{x} = v \cos(\psi + \beta)\) \(\dot{y} = v \sin(\psi + \beta)\) \(\dot{\psi} = \frac{v}{l_r} \sin(\beta)\)
where:
Dynamic bicycle model (includes tire forces, valid at higher speeds):
\(m \dot{v}_x = F_{x,f} + F_{x,r} - F_{\text{drag}}\) \(m \dot{v}_y = F_{y,f} + F_{y,r}\) \(I_z \dot{\omega} = l_f F_{y,f} - l_r F_{y,r}\)
where $F_{y,f}$ and $F_{y,r}$ are the lateral tire forces (modeled using tire models like the Pacejka “Magic Formula”).
The Pacejka Magic Formula relates tire slip to lateral force:
\[F_y = D \sin(C \arctan(B \alpha - E(B \alpha - \arctan(B \alpha))))\]where $\alpha$ is the tire slip angle, and $B, C, D, E$ are empirical coefficients that depend on the tire and road surface. At low slip angles, tire force is approximately linear; at high slip, the tire saturates and can lose grip.
One of the simplest and most widely used path-following algorithms:
where $L$ is the wheelbase, $\alpha$ is the angle between the vehicle heading and the look-ahead point, and $L_d$ is the look-ahead distance.
Key parameter: The look-ahead distance $L_d$. A shorter look-ahead tracks the path more closely but can cause oscillations; a longer look-ahead smooths the response but cuts corners.
A common approach: set $L_d$ proportional to speed:
\[L_d = k_v \cdot v + L_{\min}\]Developed by Stanford’s winning team in the 2005 DARPA Grand Challenge. It combines:
where $\psi_e$ is the heading error, $e_\text{cte}$ is the cross-track error, $k$ is a gain parameter, and $v$ is the speed.
The Stanley controller is simple, intuitive, and works well at moderate speeds. The inverse speed term provides natural speed-adaptive behavior: at low speeds, large corrections for cross-track error; at high speeds, gentler corrections.
A PID (Proportional-Integral-Derivative) controller for steering:
\[\delta(t) = K_p \cdot e(t) + K_i \int_0^t e(\tau) d\tau + K_d \frac{de(t)}{dt}\]where $e(t)$ is the cross-track error.
PID is straightforward but limited: it cannot anticipate future curvature, leading to lag on curved roads. It also requires careful tuning of the three gains.
MPC is the most sophisticated control approach and increasingly the standard in production autonomous vehicles.
Core idea: At each time step, solve an optimization problem over a finite prediction horizon:
\[\min_{u_0, ..., u_{N-1}} \sum_{t=0}^{N-1} \left[ (\mathbf{x}_t - \mathbf{x}_t^\text{ref})^T Q (\mathbf{x}_t - \mathbf{x}_t^\text{ref}) + \mathbf{u}_t^T R \mathbf{u}_t \right]\]subject to: \(\mathbf{x}_{t+1} = f(\mathbf{x}_t, \mathbf{u}_t)\) \(\mathbf{u}_\text{min} \leq \mathbf{u}_t \leq \mathbf{u}_\text{max}\) \(\mathbf{x}_\text{min} \leq \mathbf{x}_t \leq \mathbf{x}_\text{max}\)
where:
The procedure at each time step:
Advantages of MPC:
Challenges:
Linear MPC linearizes the vehicle dynamics around the current operating point, producing a Quadratic Program (QP) that can be solved efficiently (~1 ms). Suitable for highway driving where deviations from the linearization point are small.
Nonlinear MPC (NMPC) uses the full nonlinear vehicle dynamics. More accurate at high speeds and large steering angles but requires nonlinear optimization solvers (e.g., IPOPT, ACADOS) and more computation (~10–50 ms).
A PID controller on the speed error $e_v = v_\text{desired} - v_\text{actual}$:
\[a_\text{cmd} = K_p \cdot e_v + K_i \int e_v \, dt + K_d \frac{de_v}{dt}\]The acceleration command is then mapped to throttle or brake:
For better performance, combine:
A specific longitudinal control application: maintaining a safe following distance.
The time-headway policy:
\[d_\text{desired} = d_0 + t_h \cdot v\]where $d_0$ is the minimum standstill gap and $t_h$ is the desired time headway (typically 1.5–2.0 seconds). The controller adjusts speed to maintain this gap.
In practice, lateral and longitudinal control are coupled:
MPC naturally handles this coupling by optimizing steering and acceleration jointly.
Cascaded control separates the problem: the speed controller tracks a speed profile, and the lateral controller tracks the path, with soft constraints ensuring coordination.
The control commands (steering angle, throttle position, brake pressure) must be translated to physical actuator commands:
Physical actuators have delays and rate limits:
These must be accounted for in the control design. MPC can model actuator dynamics by including them in the prediction model.
Safety-critical control systems require redundancy:
If a critical component fails, the vehicle must execute a Minimum Risk Condition (MRC):
The automotive functional safety standard ISO 26262 defines Automotive Safety Integrity Levels (ASIL) from A (lowest) to D (highest). Autonomous driving functions require ASIL-D, the most stringent level, demanding:
Vehicle control translates digital decisions into physical motion. Key takeaways:
The next chapter explores a fundamentally different approach: end-to-end learning systems that bypass the modular stack entirely.
| ← Previous: Path Planning and Decision Making | Next: End-to-End Learning Approaches → |