Vehicle Dynamics Modeling and Control Xingchen Fan 2/14/2017
Inspiration 1: LQR control of active suspension (2013) Modeling LQR controller design Half-car model with LQR control
Inspiration 2: passive damper modeling (2016) Change picture
Motivation My passion for cars, dynamics and control As part of process for learning vehicle dynamics Learn how to model, analyze and control complicated dynamical systems Why MATLAB/Simulink No black box Benefits from the control design capabilities of MATLAB Easy to be modular and have various levels of details
Overview
Dynamics modeling workflow Understand dynamics (Gillespie, Rajamani, Milliken, Harty, Bosch, etc.) Separate into modules Define states, inputs and outputs Represent dynamics in Simulink Clean up signal routing (create new modules if necessary) Test and debug: steady-state response, frequency response, etc. Integrate modules Increase complexity (e.g. add nonlinearity)
Example 1: linear quarter-car ride model Simplest standalone model Features: Masks for modules Each mask has its state bus for analysis and debugging
Example 1: linear quarter-car model Use frequency response to debug the model
Example 2: linear full-car ride model Kinematics Anti-roll bars Unsprung masses Sprung mass
Example 3: anti-roll bar Essentially a proportional feedback controller! Credit: Blundell & Harty
Example 3: anti-roll bar Roll rock (only “P control” with an anti-roll bar, needs more roll damping active damping)
Example 4: nonlinear bicycle handling model Lateral dynamics Kinematics Tires Yaw dynamics Current nonlinearity: Fiala tire model, steering saturation
Example 4: nonlinear bicycle handling model Step steering input
Example 5: full vehicle model Global coordinates Full-car ride model Four-wheel handling model Accelerations Tire loads
Model debugging techniques Incremental development Modular design Use symmetry Physical intuition: first principles Steady-state analysis Frequency analysis Comparison to real driving data
Control design workflow Make sure the model is as accurate as it should be Understand the plant: stability, damping ratio, frequency response Controller design: - SISO: root locus/phase margin compensator MIMO: LQR Nonlinear: phase portrait bang-bang, sliding mode Compare open-loop and closed-loop responses Tune parameters
Example 1: ride control (skyhook damping) Plant Controller Feedback on sprung mass position is not necessary
Example 2: path tracking Global coordinates Controller Error coordinates Plant 𝛿=− 𝑘 𝑝 𝑒+ 𝑥 𝐿𝐴 Δ𝜓 𝑒 = 𝑈 𝑦 + 𝑈 𝑥 Δ𝜓
Example 2: path tracking Root locus design: add a zero to “attract” the loci of two poles at origin
Example 2: path tracking (root locus) Root locus design Good performance but unreasonable steering input
Example 2: path tracking (LQR) LQR design: smaller proportional gain, longer lookahead distance Reasonable steering, worse but acceptable performance (could be tuned more aggressively)
Example 3: path tracking + cruise control Global Coordinates Lateral Controller Error Coordinates Plant Longitudinal Controller
ABS is essentially a feedback controller on tire slip ratio Example 4: ABS Control strategies Actuator limitations Compute slip ratio ABS is essentially a feedback controller on tire slip ratio Control strategies: Proportional control PD control: require wheel acceleration Bang-bang control: hold, dump, pump (more practical for actuators)
Example 4: ABS Slip ratio is maintained for peak longitudinal force Minimal difference between effective wheel speed and vehicle speed Directional stability, steerability, shorter braking distance on low-friction surface
Future work Dynamics: Camber, load-dependent friction, nonlinear bushing Suspension kinematics More understeer effects: compliance, roll steer, aligning torque, etc. Motor in powertrain Teach myself MSC Adams Control: Anti-pitch/anti-roll ESC Platoon control Nonlinear control for nonlinear models
Questions?
Thanks! Portfolio: xingchenfan.weebly.com LinkedIn: linkedin.com/in/xingchen-fan