Professional Documents
Culture Documents
net/publication/233441055
CITATIONS READS
17 198
3 authors, including:
All content following this page was uploaded by Roberto Lot on 13 October 2015.
Department of Mechanical Engineering, University of Padova, Via Venezia, 1 – 35131 Padova, Italy
SUMMARY
The target of this work is the development of a motorcycle virtual rider model that plans a trajectory and
follows it. The reference speed and trajectory are obtained by applying the Optimal Maneuver Method (i.e.
a non-linear optimal control technique) to a basic model of motorcycle. Then, the vehicle control and
guidance are obtained using a PID architecture which gains varies with the speed. Separated loops for
speed and lateral motion controls have been implemented, the lateral motion control is complex because of
the motorcycle instability, whereas the longitudinal control is quite simpler. The characteristics of the PID
control are illustrated and discussed in details, some examples are given for a cornering maneuver first and
then for a run in the Mugello circuit.
1. INTRODUCTION
2. CONTROL DESIGN
Human riders control the motorcycle by means of the throttle, front and rear brakes,
steering torque on the handlebar and torso movements. All these inputs are included
2
ADVANCED MOTORCYCLE VIRTUAL RIDER
in the models, except the torso movement which has only a secondary relevance.
Optimal speed and trajectory are estimated with the application of the Optimal
Maneuver Method to a basic motorcycle model, which derives from Sharp ’71 model
and includes a more realistic tires plus an elementary suspension model [7].
On the contrary, the PID control is applied to a detailed motorcycle model, which
includes all relevant features of a real vehicle, such as deformable tires with non-
linear behavior, suspension’s kinematics, shock absorber, etc. More details on the
motorcycle model may be found in reference [8].
The planning problem is solved via Optimal Maneuver Method (OM). More in detail,
it consists in finding the optimal control u that minimizes the functional (i.e. the
maneuver time)
L 1
J (x, u) = ∫ ds
0 V
For sake of simplicity the speed and the path control have separated loops. In
particular the vehicle speed is controlled by the throttle and brakes. The speed control
is shown in Figure 1: motorcycle has front and rear independent brakes, the properly
3
ADVANCED MOTORCYCLE VIRTUAL RIDER
distribution of the braking force is compute by the OM together with the optimal
speed, therefore the speed control uses optimal inputs and a simple proportional
correction on the speed error.
motorcycle speed
Optimal
Maneuver qOM front
front brake
+ brake force
+ Motorcycle
u
uOM - max(Su,0)
Su Model
speed Ku
+ min(Su,0)
rear thrust or
+ brake force
rear brake/thrust
+
Figure 1. Speed control architecture.
The simple superimposition of the control inputs obtained from the OM to the
detailed model of the motorcycle causes the vehicle falling, as shown in Figure 2.
1
target a) 50
Roll Angle [rad]
0.5
Roll Angle [deg]
25
0 0
actual -25
-0.5
-50
-1
0 2 4 6 8 10
Time [s]
In order to avoid the vehicle capsize and to reduce the roll angle error, it has been
introduced the following PI controller:
=τ K P ,ϕ (ϕOM − ϕ ) + K I ,ϕ ∫ (ϕOM − ϕ )dt
where τ is the steering torques, ϕOM and ϕ are the OM and actual roll angles, K P ,ϕ
and K I ,ϕ are respectively the proportional and integral gains.
4
ADVANCED MOTORCYCLE VIRTUAL RIDER
0
0 2 4 6 8 10
frequency[Hz]
It is straightforward that human riders may control the handlebar only under a
frequency threshold. A reasonable value of this threshold frequency may be deduced
from Figure 3, which shows the frequency spectrum of the roll rate for a MotoGP
race in the Qatar circuit. Even if the steering torque is not directly available, it is
reasonable to suppose that it does not contain frequency higher than the motorcycle
motion (about 5-6 Hz). This human behavior has been replicated by introducing a 2nd
order low pass filter, as shown in Figure 4.
The application of the Nyquist Theorem to the transfer function between the steering
torque and the roll angle allows to set the range of proportional gains that give a
stable control. In Figure 4 PI is the regulator, Low Pass Filter (LP) is a 2nd order filter
and motorcycle is the plant (M).
Figure 5 shows the Nyquist plot of T ( s ) = PI ⋅ LP ⋅ M with PI=-1 (i.e. with unitary
proportional gain and with zero integral gain) with a low pass cut frequency
f c = 6 Hz and damping ratio ζ = 0.7 , at a low and high speed and at a low and high
lateral acceleration for a total of four different motion conditions.
In straight motion at a speed of 10 m/s (Figure 5.a) all the vehicle modes are stable. A
stable control loop is achieved when no Nyquist encirclements around the critical
point (-1,0) take place. Figure 5a allows the computation of the maximum admissible
5
ADVANCED MOTORCYCLE VIRTUAL RIDER
proportional gain.
At the same speed but with a roll angle of 40° (i.e lateral acceleration of 8 m/s2 Figure
5.b) an unstable low frequency vibrating mode is present: a stable control loop is
achieved if two counter-clockwise encirclements of the critical point take place. This
is easily obtained by simply changing the value of the proportional gain, whose effect
is to scale the Nyquist plot. This is a case of conditioned stability, i.e. both a
maximum and a minimum gains are present.
At 50 m/s and straight motion, (Figure 5.c) an unstable, non-vibrating mode is
present: in order to have a stable loop one counter clock-wise encirclement is needed.
Once again it is easily obtained by changing the proportional gain of the P controller.
a) Speed = 10 m/s – Lateral Acceleration = 0 m/s2. b) Speed = 10 m/s – Lateral Acceleration = 8 m/s2.
(all stable modes) (unstable low frequency mode: 0.2192 ± 0.2223j)
c) Speed = 50 m/s – Lateral Acceleration = 0 m/s2. d) Speed = 50 m/s – Lateral Acceleration = 8 m/s2.
(unstable capsize: +0.0003 + 0j) (unstable capsize: 0.0044 +0j)
Figure 5. Nyquist plot of the transfer function T = PI ⋅ LP ⋅ M varying the speed and lateral acceleration.
6
ADVANCED MOTORCYCLE VIRTUAL RIDER
Finally, at a speed of 50 m/s and lateral acceleration of 8 m/s2, i.e. about 40° (Figure
5.d), the situation is close to the one of the straight motion (Figure 5.c), but the range
of stable gains is narrower.
Figure 5 shows the typical operative condition of the motorcycle: either the capsize
mode is stable or not, the motorcycle may be driven with a pure proportional gain on
the roll angle. However, it should be pointed out that sometimes the weave mode
(typically 2-4 Hz) or the wobble mode (typically 6-10 Hz) may be unstable, in this
case the proposed controller is not able to stabilize the vehicle. This is not a major
issue, since also human riders cannot control the motorcycle when weave or wobble
are unstable.
The proposed controller contains a roll integral term too, which is used for
eliminating the steady state error on the roll angle.
As an example, a simulation on a ‘O circle’ of radius 200 m is presented in Figure 6.
It can be seen that even if the roll control is quite good (Figure 6.b), the lateral
deviation from the road center line is uncontrolled (Figure 6.c-d), i.e. the vehicle does
not follow the target path. This happens both because the follower is not perfect and
because of the differences between the essential and the complex models. It is
therefore also necessary to observe the path error.
70 70 1
60
a) b) 50
60
actual
Roll Angle [rad]
0.5
Roll Angle [deg]
50
40 40 target actual
0 0
30 target 30
20 20 -25
-0.5
10 10
-50
0 0 -1
0 5 10 15 20 25 30 35 40 0 5 10 15 20 25 30 35 40
Time [s] Time [s]
400 400 10 10
350 c) 350 target d)
lateral position [m]
300 300 5 5
Roll Angle [deg]
Roll Angle [deg]
250 250
Y [m]
200 200 0 0
150 150
actual
100 100 -5 -5
50 50
0 0
-10 -10
-100 0 100 200 300 400 500 0 5 10 15 20 25 30 35 40
X [m] Time [s]
7
ADVANCED MOTORCYCLE VIRTUAL RIDER
The roll angle control loop stabilizes the motorcycle and reduces the roll angle error,
but since no information about the trajectory is given to this controller, it is obvious
that it cannot reduce the trajectory error.
First of all, it is necessary to estimate the vehicle deviation from the target path. This
may be done in a very easy and effective way by describing the trajectory using
curvilinear coordinates (as shown in Figure 7) instead of Cartesian coordinates as
usual. Indeed, real roads are similar to strings: they are long and narrow. By given the
road radius of curvature as a function of the traveled space s, the centre line of the
road is completely defined. Then, a second curvilinear coordinate n may be used for
describing the position of the vehicle with respect to the road centre. This vehicle
tracking algorithm requires the inclusion in the vehicle model of three differential
path equations and is described in details (with example of application) in references
[9],[10].
center line s R
vehicle n
position
P
road
radius
O
At this point, an additional loop aimed to the vehicle path deviation control has been
introduced (it is depicted in Figure 8).
motorcycle path deviation
This controller changes the original roll target point (i.e. the OM reference ϕOM ) by
8
ADVANCED MOTORCYCLE VIRTUAL RIDER
adding a correction depending on the path error. More in details, the trajectory error
is defined as follows
=en nOM − n
where nOM and n are the respectively the target and actual lateral deviation from the
road center. A requirement of the controller is to regulate the trajectory error without
overshoot. For this purpose, the above error is replace by a first order function
e=
t en + Tn en and a correction of the roll angle is computed as follows
ϕ K t ( en + Tn en )
∆=
where ∆ϕ is the correction of the target roll, K t is the proportional gain on the
controlled lateral function, Tn is the time constant of the error dynamics when
approaching et ≅ 0 .
Since the roll control loop assure the stability of the system, the simpler Bode
criterion is applicable. Therefore the analysis of the transfer function between the roll
correction ∆ϕ ° and the lateral error function et allow the tuning of K t . It can be
seen that it is straightforward to chose a proper value of the K t gain that allow a
positive phase margin on the 0 dB crossing frequency (lower than 1 Hz) Figure 9.
Bode Diagram
40
20
0
Magnitude (dB)
-20
-40
-60
-80
-100
450
360
270
Phase (deg)
180
90
-90
-3 -2 -1 0 1 2
10 10 10 10 10 10
Frequency (Hz)
Figure 9. Transfer function between ∆ϕ ° and et at 20 m/s for lateral acceleration from 0 to 8 m/s2.
The correction of the roll angle is then added to the reference roll angle. This new roll
target point may now reach un-physical values, therefore it is essential to saturate it
as follows:
=eϕ sat (ϕOM + ∆ϕ ) − ϕ
The PI controller on the roll angle becomes now:
9
ADVANCED MOTORCYCLE VIRTUAL RIDER
=τ KPϕ eϕ + KIϕ ∫ eϕ dt
It does not matter the way the path controller affects the transient performance of the
roll controller, since the final target is the trajectory. Besides it should be noted that
when the saturation is active, the controller behaves like a simple PID roll control,
assuring the stability of the vehicle.
The steady-state error on the lateral position en = nOM − n is null only in rectilinear
motion. Precisely, the integral action of the roll controller states
ϕ − ϕ MO
ϕ ϕ MO + ∆ϕ
= ⇒ ϕ − ϕ MO
= K t en ⇒ =
en
Kt
where ϕ is the roll of the complex model, ϕ MO is the roll of the essential model. .In
general this error is present because the differences between the model lead different
steady roll angle. The higher is the coefficient K t , the lower will be the steady
trajectory error.
1 10 10
Roll Angle [rad]
actual a) 110 b)
lateral position [m]
0.5 5 5
actual
-0.5 target 50
-5 -5
actual
-1 30 -10 -10
0 5 10 15 20 25 30 35 40 0 5 10 15 20 25 30 35 40
Time [s] Time [s]
400 50
steer torque [Nm]
400 1.5
350 c) 350
target d)
0 actual
300 300 1
Roll Angle [deg]
150
100 100
0
-150
50 50
0 0
-200 -0.5
-100 0 100 200 300 400 500 0 5 10 15 20 25 30 35 40
X [m] Time [s]
10
ADVANCED MOTORCYCLE VIRTUAL RIDER
accelerate from 35 to 50 m/s approaching the curve, then it starts braking when it is
already 0.64 rad leaned. The steady cornering condition are 0.72 rad and 37 m/s. At
33 s the motorcycle start reducing the its roll angle and simultaneously accelerates.
Figure 10.b-c show that the trajectory follower is quite good. In Figure 10.d the
comparison between the essential and complex model steering torque is presented: it
can be seen that the steady state OM steering torque (21 Nm) is double the complex
model steering torque (9 Nm). The main reason is that the essential model does not
take into account any twisting torque in the tires model, whereas the complex model
does. Figure 10.d also shows that the maximum trajectory error is 0.330 m at 3 s.
The simulation of a portion of the Mugello circuit (curves named S. Donato – Luco –
Poggio Secco) is depicted in Figure 11 in terms of vehicle inputs (handlebar steering
torque, front and rear brake/thrust forces) and vehicle motion (speed, roll angle and
trajectory). For making this simulation it was essential to varies the control gain as a
function of the speed, as described in appendix.
2000 70 100 100
Wheel longitudinal force [N]
rear tire a) b)
1500 60 75
Steer Torque [Nm]
1000 50 actual 50
Roll Angle [deg]
0.5
Roll Angle [deg]
Roll Angle [deg]
50 25
Speed [m/s]
50
40 40
0 0
30 30
20 20 -25
-0.5
10 10
target -50
0 0 -1
0 10 20 30 40 50 60 70 80 0 10 20 30 40 50 60 70 80
Time [s] Time [s]
11
ADVANCED MOTORCYCLE VIRTUAL RIDER
200 900 10 10
e) 800 f)
500
-100 0 0
400
-200 300 actual
200 -5 -5
-300
100
target
-400 0 -10 -10
0 200 400 600 800 0 10 20 30 40 50 60 70 80
Y [m] Time [s]
Figure 11. Simulation on a portion of the Mugello circuit (curves named S. Donato – Luco – Poggio Secco).
CONCLUSIONS
This paper illustrates an original motorcycle virtual rider which includes two separate
layers. The first layer, based on the Optimal Maneuver Method, finds the optimal
trajectory and completes the maneuver in the minimum time taking into account the
track and vehicle characteristics, as well as rider capabilities. Due to its complexity,
this method cannot be applied to a complex multibody model of the motorcycle.
Therefore a second layer which stabilizes the vehicle and follows the reference
trajectory has been developed. This controller has separates loops for the speed and
trajectory following. In order to track the vehicle position with respect the target
trajectory an effective tracking algorithm based on curvilinear coordinates has been
implemented. The trajectory controller includes an internal inner (based on the roll
angle) that stabilizes the vehicle plus a second inner with the purpose of reducing the
trajectory error. The characteristic of the controller are discussed in details, in
particular it has been found that control gains must be adapted as the motorcycle
speed varies. The example of a cornering maneuver and a run on Mugello circuit has
been presented.
REFERENCES
[1] M. Plöchl and J. Edelmann. Driver models in automobile dynamics application, Vehicle System
Dynamics, Vol. 45, Nos. 7–8, July–August 2007, 699–741.
[2] D. McRuer and D. Graham. Flight control century: Triumphs of the systems approach, J. Guid.
Control Dyn., vol. 27, no. 2, pp. 161–173, 2004.
[3] R. Frezza, A. Beghi. A virtual motorcycle driver for closed-loop simulation, IEEE Control
Systems Magazine, v 26, n 5, October, 2006, p 62-77.
[4] V. Cossalter, M. Da Lio, R. Lot, L. Fabbri. A general method for the evaluation of vehicle
manoeuvrability with special emphasis on motorcycles, Vehicle System Dynamics, vol. 31, pp.
113-135, 1999
12
ADVANCED MOTORCYCLE VIRTUAL RIDER
[5] E. Bertolazzi, F. Biral, M. Da Lio. Symbolic-numeric efficient solution of optimal control
problems for multibody systems, Journal of Computational and Applied Mathematics, 185
(2006) 404–421.
[6] R.S. Sharp, S. Evangelou and D.J.N. Limebeer. Advances in the Modelling of Motorcycle
Dynamics, Multibody System Dynamics 12: 251–283, 2004.
[7] V. Cossalter. Motorcycle Dynamics. Lulu.com, 2006, ISBN: 978-1-4303-0861-4.
[8] Cossalter V., Lot R. A motorcycle multi-body model for real time simulations based on the
natural coordinates approach, Vehicle System Dynamics: International Journal of Vehicle
Mechanics and Mobility,Vol., 37, n°6 pp. 423-447.
[9] R. Lot, V. Cossalter. A non linear rider model for motorcycles, Proceedings of the FISITA 2006
World Automotive Congress, 22-27 October, Yokohama, Japan, Paper n° F2006V075.
[10] R. Lot, M, Massaro. A combined model of tire and road surface for the dynamic analysis of
motorcycles handling, Proceedings of the FISITA 2006 World Automotive Congress, 22-27
October, Yokohama, Japan, Paper n° F2006V189.
The main characteristics of the motorcycle are collected below (SI units)
13
ADVANCED MOTORCYCLE VIRTUAL RIDER
14
View publication stats