model predictive control for automotive applications

55
Paolo Falcone (UNIMORE/CHALMERS) Department of Signals and Systems Automatic Control Course – Guest Lecture December 11 th , 2019 1 Model Predictive Control for Automotive Applications Dipartimento di Ingegneria “Enzo Ferrari” Universita’ di Modena e Reggio Emilia Paolo Falcone Department of Electrical Engineering Chalmers University of Technology Göteborg, Sweden

Upload: others

Post on 06-Dec-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 1

Model Predictive Control for Automotive Applications

Dipartimento di Ingegneria “Enzo Ferrari”

Universita’ di Modena e Reggio Emilia

Paolo FalconeDepartment of Electrical EngineeringChalmers University of TechnologyGöteborg, Sweden

Page 2: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 2

Predictive Vehicle Dynamics Control

Page 3: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 3

Problem complexityHow does the logic change if further actuators

are added?Engine torque

Active front/rear steering Active

suspensionsActive

differentials

Page 4: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 4

Global Chassis Control (GCC) problem

GCC

ylateral

z yaw

pitch

vertical

longitudinal roll

y

qx f Fx FyFz

ü Front steeringü Four brakesü Engine torqueüActive suspensionsüActive differential

ü Longitudinal, lateral and vertical veloctyü Yaw, roll and pitch angles/rates

Dri

ver

Com

man

dsCoordinating vehicle actuators in order to control

multiple dynamics

Page 5: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 5

Testing scenario. Autonomous path followingProblem setup:

• Double lane change • Driving on snow/ice, with

different entry speeds

Control objective:

Minimize angle and lateral distancedeviations from reference trajectory by changing the front wheel steering angleand the braking at the four wheels

Controlling longitudinal, lateral and yaw dynamics by varying front steering angle and braking the four wheels

Page 6: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 6

Challenges

• Highly nonlinear MIMO system with uncertainties– Tires characteristics

• 6 DOF model– Longitudinal, lateral, vertical, roll, yaw and

pitch dynamics• Hard constraints

– Rate limitations in the actuators, vehicle physical limits

• Fast sampling time– Typically 20-50 ms

Page 7: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 7

Model Predictive Control

Main ingredients• Vehicle model• Optimization problem

Page 8: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 8

Outline

• Introduction and motivations• Vehicle modeling• Problem formulation• Experimental results

Page 9: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 9

Modeling: bicycle and four wheels modelsModeling the vehicle motion in an inertial frame subject to lateral,

longitudinal and yaw dynamics

10 states, 5 inputs

Page 10: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 10

Tire modelingStatic tire forces characteristics

),,,( zcc FsfF µa=

Page 11: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 11

Tire modeling

zF

zcl FcFF µ£+ 22

Page 12: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 12

Outline

• Introduction and motivations• Vehicle modeling• Problem formulation• Experimental results

Page 13: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 13

NMPC Control design

Optimization problem

Vehicle dynamics

max,min uuu tk ££Input constraints

1,, max,min

-+=

D£D£D

p

tk

Httkuuu

!

Constraints on input changes

J ξ t( ),U( ) = ηt+ i,t −ηreft+i ,t Q

2+ ut+ i,t R

2

i=1

H p

∑Cost function tHttt puuU ,, += !

( ) tosubj.

,min UJ tUx • Non Linear Programming

(NLP) problem

• Complex NLP solvers required

Real time implementation byü limiting the number of iterationsü using short horizons

Real time testing at low speed

( )( )tktk

tktktk

huf

,,

,,,1 ,xh

xx

=

=+

Experimentally tested

Page 14: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 14

LTV-MPC controllerApproximating the non-linear vehicle model with a Linear Time Varying

(LTV) model At, Bt, Ct, Dt.*

tttt DCBA ,,,

•Convex optimization problem. QP solvers

•Easier real-time implementation

•Longer horizons

Performance and stability issues* due to linear approximation

* Kothare and Morari, 1995, Wan and Kothare, 2003

* Falcone et al 2008

Page 15: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 15

Constraints on tire slip angle

mina maxa

p

tk

Httktktk

+=

££

! ,, max,min aaa

Controller performs well up to 21 m/s

The system is still nonlinear

Stability achieved through ad hoc state and input constraints

Page 16: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 16

Stability of the LTV-MPC approach

( ))(),()1( (1) tutft xx =+

Consider the discrete time nonlinear system:

nRÎx mRuÎ

We consider the following linear approximation over the horizon N:

1,)()()1( ,,,

-+=

++@+

NttkdkuBkAk tktktk

!

xx

ξ0(k +1) = f ξ0(k),u(t −1)( ), ξ0(k) = ξ(t)dk,t = ξ0(k +1) − Ak,tξ0(k) − Bk,tu(t −1)€

Ak,t =∂f∂x ξ 0 (k )

u( t−1)

, Bk,t =∂f∂u ξ 0 (k )

u( t−1)

Page 17: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 17

Stability of the LTV-MPC approach

(2) VN* ξ(t)( ) = min

ut ,t ,…ut+N−1,t

Qξt+ i,t 2

2+

i=1

N −1

∑ Rut+ i,t 2

2+

i=0

N −1

∑ Pξt+N ,t 2

2

subject to : ξk+1,t = Atξk,t + Btuk,t + dk,t , k = t,…,t + N −1 ξk,t ∈ X, k = t,…,t + N −1 uk,t ∈U, k = t,…,t + N −1 ξk+N ,t ∈ X f

ξt ,t = ξ(t)

(3) u t( ) = ut,t* ξ(t)( )

Page 18: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 18

Stability of the LTV-MPC approachTheorem. The system (1) with the control law (2)-(3), where Xf=0, is uniformly asymptotically stable if

where:€

Q ˆ ξ t+N −1,t 2

2+ Rut+N −1,t 2

2≤ Qξt,t−1

*2

2+ Rut−1,t−1

*2

2− Q ˆ ξ t+ i,t − ξt+ i,t−1

*( )2

2− γ

i=1

N −2

ˆ ξ k+1,t = Atˆ ξ k,t + Btuk,t−1

* + dk,t

k = t,…,t + N − 2ˆ ξ t ,t = ξ(t)

State and input convex constraints

Liu, 1968. Chen and Shaw. 1982. Mayne et al. 2000

γ = 2 Q ˆ ξ t+ i,t − ξ t+i ,t−1

*( )2Qξ

t+i ,t−1

*

2i=1

N −2

Page 19: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 19

What does that mean?

t

úû

ùêë

é

--

--

11

11

tt

tt

DCBA

Y

1-t t

úû

ùêë

é

tt

tt

DCBA

2-+ Nt

l ˆ ξ t+N −1,t ,ut+N −1,t( ) ≤ l ξt−1,t−1* ,ut−1,t−1

*( ) −Γ Q ˆ ξ t+ i,t − ξt+ i,t−1*( )

2

2& ' (

) * +

*1, -tkx

tk ,x̂

Page 20: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 20

Simulation results at 21 m/s

The controller is able to stabilize the vehicle without any ‘ad hoc’ constraint.

Page 21: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 21

Outline

• Introduction and motivations• Vehicle modeling• Problem formulation• Experimental results

Page 22: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 22

Testing: Sault St. Marie in Upper Peninsula, MI, USA

Page 23: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 23

Summary• Excellent performance • Limited tuning effort (less than 10 run ~ 1 hr)• Vehicle stabilized up to 70 Km/h on snowy tracks

• Coordination of steering and braking– Braking is delivered on the “same side” of the steering

• Front/rear braking distribution– Shifting the braking to the non saturated axle

• Countersteering– Steering in opposite direction of path following to prevent spinning

Page 24: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 24

Summary• Excellent performance • Limited tuning effort (less than 10 run ~ 1 hr)• Vehicle stabilized up to 70 Km/h on snowy tracks

• Coordination of steering and braking– Braking is delivered on the “same side” of the steering

• Front/rear braking distribution– Shifting the braking to the non saturated axle

• Countersteering– Steering in opposite direction of path following to prevent spinning

Page 25: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 25

Summary• Excellent performance • Limited tuning effort (less than 10 run ~ 1 hr)• Vehicle stabilized up to 70 Km/h on snowy tracks

• Coordination of steering and braking– Braking is delivered on the “same side” of the steering

• Front/rear braking distribution– Shifting the braking to the non saturated axle

• Countersteering– Steering in opposite direction of path following to prevent spinning

Page 26: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 26

Test @ 40 Kph. Steering and braking coordination

Page 27: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 27

Test @ 40 Kph. Steering and braking coordination

Left side braking Right side braking

Page 28: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 28

Summary• Excellent performance • Limited tuning effort (less than 10 run ~ 1 hr)• Vehicle stabilized up to 70 Km/h on snowy tracks

• Coordination of steering and braking– Braking is delivered on the “same side” of the steering

• Front/rear braking distribution– Shifting the braking to the non saturated axle

• Countersteering– Steering in opposite direction of path following to prevent spinning

Page 29: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 29

Test @ 40 Kph. Countersteering manoeuvre.

Yaw instability induced by

large acceleration

Page 30: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 30

Test @ 40 Kph. Countersteering manoeuvre

Page 31: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 31

Test @ 70 Kph. Countersteering manoeuvre

Page 32: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 32

Test @ 70 Kph. Countersteering manoeuvre

Page 33: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 33

Test @ 70 Kph. Countersteering manoeuvre

Page 34: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 34

Experimental results

Page 35: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 35

Acknowledgments

• Francesco Borrelli (UC Berkeley)• Eric Tseng (Ford)• Davor Hrovat (Ford)

Page 36: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 36

Long Heavy Vehicles Combinations

Page 37: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 37

Long Heavy Vehicles Combinations

Page 38: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 38

Page 39: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 39

Control Objectives

Reducing the yaw rate rearward amplifications

and , by means of the steering angles

while bounding the steering angles and rates of steering

Achieving the control objectives by solving a yaw rate tracking problem where

Reference models designed in order to remove resonance peaks in the yaw rates responses

refr ,2

11d

G21ref

refr ,3G31ref

r2 /r1

32 ,dd

r3 /r1

Page 40: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 40

Reference Models

Page 41: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 41

MPC Problem FormulationVehicle (linear) model

xk+1 = A(vx )xk + B(vx )uk + E(vx )dkyk = Cxk

x =

vyr1θ1

θ2˙ θ 1˙ θ 2

#

$

% % % % % % %

&

'

( ( ( ( ( ( (

úû

ùêë

é=

3

2

dd

u

vx =

vx1

vx2

vx3

"

#

$ $ $

%

&

' ' '

11d=d

y =

r2r3θ1θ2

#

$

% % % %

&

'

( ( ( (

J = Q(yt+ i − yref ,t+ i) 2

2+ Sut+ i−1 2

2+ RΔut+ i−1 2

2$ % & '

( )

i=1

N

Cost functionYaw rate tracking problem translated into a cost function minimization problem

Page 42: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 42

MPC Problem Formulation

minΔut ,…,Δut+N−1

Q(yt+ i − yref ,t+ i) 2

2+ Sut+ i−1 2

2+ RΔut+ i−1 2

2$ % & '

( )

i=1

N

subject to

u*(t) = u(t −1) + Δu*(t,x(t))

Vehicle dynamics

Actuator limitations

The resulting state feedback steering control law is€

xk+1 = A(vx )xk + B(vx )uk + E(vx )dk uk = uk−1 + Δukyk = Cxk

$

% &

' &

umin ≤ uk ≤ umax

Δumin ≤ Δuk ≤ Δumax

$ % &

Page 43: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 43

Experimental Results

Testing at Mira Test Center:Single lane change

Page 44: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 44

Summary

1. RWA close to one– Good reference tracking

2. Smooth steering commands3. Small articulation angles at the end of the maneuver (Both

dolly and trailer aligned with the truck)– Please note the sensor offset

Page 45: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 45

Yaw Rates

124 125 126 127 128 129 130 131 132-8

-6

-4

-2

0

2

4

6

8

Time (sec)

Yaw

rate

(Deg

/sec

)Yaw rates, truck tests. SLC Maneuver

Dolly yaw rateTrailer yaw rateTruck yaw rate

Page 46: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 46

Dolly Yaw Rate

124 125 126 127 128 129 130 131 132-8

-6

-4

-2

0

2

4

6

8

Time (sec)

Yaw

rate

(Deg

/sec

)Yaw rate dolly, truck tests. SLC Maneuver

Dolly yaw rateDolly yaw rate reference

Page 47: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 47

Trailer Yaw Rate

124 125 126 127 128 129 130 131 132-8

-6

-4

-2

0

2

4

6

Time (sec)

Yaw

rate

(Deg

/sec

)Yaw rate trailer, truck tests. SLC Maneuver

Trailer yaw rateTrailer yaw rate reference

Page 48: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 48

Summary

1. RWA close to one– Good reference tracking

2. Smooth steering commands3. Small articulation angles at the end of the maneuver (Both

dolly and trailer aligned with the truck)– Please note the sensor offset

Page 49: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 49

Steering Angles

124 125 126 127 128 129 130 131 132-2.5

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

Time (sec)

Stee

ring

(Deg

)Steerings, truck tests. SLC Maneuver

Dolly steering angleTrailer steering angleTruck steering angle

Page 50: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 50

Summary

1. RWA close to one– Good reference tracking

2. Smooth steering commands3. Small articulation angles at the end of the maneuver (Both

dolly and trailer aligned with the truck)– Please note the sensor offset

Page 51: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 51

124 125 126 127 128 129 130 131 132-2

-1

0

1

2

3

Time (sec)

Artic

ulat

ion

angl

e (D

eg)

Dolly articulation angle, truck tests. SLC Maneuver

Dolly articulation angleReference signal

Dolly Articulation Angle

Sensor offset

Page 52: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 52

Trailer Articulation Angle

124 125 126 127 128 129 130 131 132-3

-2

-1

0

1

2

3

4

Time (sec)

Artic

ulat

ion

angl

e (D

eg)

Trailer articulation angle, truck tests. SLC ManeuveR

Trailer articulation angleReference signal

Page 53: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 53

Page 54: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 54

Remarks

• Good tracking with minimal design and tuning efforts• Actuators physical limits included in control design• Possibility of easily

– Include constraints to guarantee RWA<1– Include constraints to limit lateral accelerations– Include constraints to limit off-tracking – Combine steering and braking commands– Guarantee perfect alignment of the combination despite of sensors

offsets

Page 55: Model Predictive Control for Automotive Applications

Paolo Falcone (UNIMORE/CHALMERS)

Department of Signals and Systems

Automatic Control Course – Guest Lecture December 11th, 2019 55

Acknowledgments

• Mathias Lidberg• Jonas Fredriksson• Kristoffer Tagesson (Volvo Trucks)• Leo Laine (Volvo Trucks)• Stefan Edlund (Volvo Trucks)• Richard Roebuck (Cambridge)• Andrew Odhams (Cambridge)