Event-Data-Recorder for MotorcyclesLow-Cost Accident Reconstruction without GPS
K. Hug1, R. Filliger1, Y. Stebler2, N. Munzinger1
1Berner Fachhochschule Technik und InformatikFachbereich Automobiltechnik
Institut fur Energie und Mobilitat
2Ecole Polytechnique Federale de LausanneEPFL-ENAC-IIE
Geodetic Engineering Laboratory TOPO
Financially supported in parts by AXA-Versicherungen and CTI-CH.
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 1 / 56
Goal: EDR/EA
Develop...
Event Data Recorder and associated off-line Event-Analyzer forMotorcycles.
...under the constraints
precise
do not use GPS
low cost
autarkic and easy to fix on the motorcycle
valid for a large class of motorcycles
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 2 / 56
Goal: EDR/EA
Develop...
Event Data Recorder and associated off-line Event-Analyzer forMotorcycles.
...under the constraints
precise
do not use GPS
low cost
autarkic and easy to fix on the motorcycle
valid for a large class of motorcycles
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 2 / 56
precision
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 3 / 56
Goal: EDR/EA
Develop...
Event Data Recorder and associated off-line Event-Analyzer forMotorcycles.
...under the constraints
precise
do not use GPS
low cost
autarkic and easy to fix on the motorcycle
valid for a large class of motorcycles
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 4 / 56
no GPS
you have privacy rights on your global position!
uncertain availability of GPS signals
low sampling frequency (≈ 1Hz)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 5 / 56
no GPS
you have privacy rights on your global position!
uncertain availability of GPS signals
low sampling frequency (≈ 1Hz)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 5 / 56
no GPS
you have privacy rights on your global position!
uncertain availability of GPS signals
low sampling frequency (≈ 1Hz)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 5 / 56
Goal: EDR/EA
Develop...
Event Data Recorder and associated off-line Event-Analyzer forMotorcycles.
...under the constraints
precise
do not use GPS
low cost
autarkic and easy to fix on the motorcycle
valid for a large class of motorcycles
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 6 / 56
costs
fabrication costs < 100CHF
fixation costs < 100CHF
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 7 / 56
costs
fabrication costs < 100CHF
fixation costs < 100CHF
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 7 / 56
Goal: EDR/EA
Develop...
Event Data Recorder and associated off-line Event-Analyzer forMotorcycles.
...under the constraints
precise
do not use GPS
low cost
autarkic and easy to fix on the motorcycle
valid for a large class of motorcycles
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 8 / 56
autarkic & easy to fix
no access to electronic and mechanic pieces
“plug and play”
esthetics
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 9 / 56
autarkic & easy to fix
no access to electronic and mechanic pieces
“plug and play”
esthetics
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 9 / 56
autarkic & easy to fix
no access to electronic and mechanic pieces
“plug and play”
esthetics
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 9 / 56
Goal: EDR/EA
Develop...
Event Data Recorder and associated off-line Event-Analyzer forMotorcycles.
...under the constraints
precise
do not use GPS
low cost
autarkic and easy to fix on the motorcycle
valid for a large class of motorcycles
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 10 / 56
valid for different motorcycles
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 11 / 56
valid for different motorcycles
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 12 / 56
valid for different motorcycles
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 13 / 56
Motivation
improve claim evaluation (...deliver objective data complementaryto classical accident reconstruction).
speed up claim evaluation
explore selective effect.
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 14 / 56
Motivation
improve claim evaluation (...deliver objective data complementaryto classical accident reconstruction).
speed up claim evaluation
explore selective effect.
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 14 / 56
Motivation
improve claim evaluation (...deliver objective data complementaryto classical accident reconstruction).
speed up claim evaluation
explore selective effect.
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 14 / 56
Data from 3 phases
20 sec 10 sec
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 15 / 56
MEMS-Inertial Measurement Unit (IMU)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 16 / 56
MEMS-IMU
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 17 / 56
Accelerometer
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 18 / 56
Accelerometer
0~g
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 19 / 56
Accelerometer
0 0~g a
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 20 / 56
Accelerometer
0 0~g a
~f = ~a − ~g
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 21 / 56
Speed: integrate inertial measurements (IM)
measure specific forces: ~f = ~a− ~gand use basic Newtonian physics:
~v = ~a
valid in inertial coordinate system!
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 22 / 56
Speed: integrate inertial measurements (IM)
~v iib = ~aiib = ~f iib + ~g i
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 23 / 56
earth fixed frame
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 24 / 56
navigation frame
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 25 / 56
Speed: integrate inertial measurements (IM)
measure accelerations ~a (resp., specific forces: ~f = ~a− ~g)and use basic Newtonian physics:
~v iib = ~aiib = ~f iib + ~g i
valid in inertial coordinate system!
In navigation frame:
~vneb = Cnb~f bib − (2ωn
ie + ωnen)× ~vneb + ~gn
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 26 / 56
Speed: integrate inertial measurements (IM)
measure accelerations ~a (resp., specific forces: ~f = ~a− ~g)and use basic Newtonian physics:
~v iib = ~aiib = ~f iib + ~g i
valid in inertial coordinate system!In navigation frame:
~vneb = Cnb~f bib − (2ωn
ie + ωnen)× ~vneb + ~gn
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 26 / 56
Strapdown-Solution with MEMS-IMU
~vneb = Cnb~f bib−(2ωn
ie + ωnen)× ~vneb + ~gn (1)
Cnb =
cθcψ −cφsψ + sφsθcψ sφsψ + cφsθcψcθsψ cφcψ + sφsθsψ −sφcψ + cφsθsψ−sθ sφcθ cφcθ
cα := cos(α), sα := sin(α)
φ = (ωbnb,y sφ+ ωb
nb,zcφ) tan θ + ωbnb,x
θ = (ωbnb,ycφ− ωb
nb,zsφ)
ψ = (ωbnb,y sφ+ ωb
nb,zcφ)/cθ
~ωbnb = ~ωb
ib−Cbn(~ωn
ie + ~ωnen)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 27 / 56
Strapdown-Solution with MEMS-IMU
~vneb = Cnb~f bib−(2ωn
ie + ωnen)× ~vneb + ~gn (1)
Cnb =
cθcψ −cφsψ + sφsθcψ sφsψ + cφsθcψcθsψ cφcψ + sφsθsψ −sφcψ + cφsθsψ−sθ sφcθ cφcθ
cα := cos(α), sα := sin(α)
φ = (ωbnb,y sφ+ ωb
nb,zcφ) tan θ + ωbnb,x
θ = (ωbnb,ycφ− ωb
nb,zsφ)
ψ = (ωbnb,y sφ+ ωb
nb,zcφ)/cθ
~ωbnb = ~ωb
ib−Cbn(~ωn
ie + ~ωnen)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 27 / 56
Strapdown-Solution with MEMS-IMU
~vneb = Cnb~f bib−(2ωn
ie + ωnen)× ~vneb + ~gn (1)
Cnb =
cθcψ −cφsψ + sφsθcψ sφsψ + cφsθcψcθsψ cφcψ + sφsθsψ −sφcψ + cφsθsψ−sθ sφcθ cφcθ
cα := cos(α), sα := sin(α)
φ = (ωbnb,y sφ+ ωb
nb,zcφ) tan θ + ωbnb,x
θ = (ωbnb,ycφ− ωb
nb,zsφ)
ψ = (ωbnb,y sφ+ ωb
nb,zcφ)/cθ
~ωbnb = ~ωb
ib−Cbn(~ωn
ie + ~ωnen)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 27 / 56
Strapdown-Solution with MEMS-IMU
~vneb = Cnb~f bib−(2ωn
ie + ωnen)× ~vneb + ~gn (1)
Cnb =
cθcψ −cφsψ + sφsθcψ sφsψ + cφsθcψcθsψ cφcψ + sφsθsψ −sφcψ + cφsθsψ−sθ sφcθ cφcθ
cα := cos(α), sα := sin(α)
φ = (ωbnb,y sφ+ ωb
nb,zcφ) tan θ + ωbnb,x
θ = (ωbnb,ycφ− ωb
nb,zsφ)
ψ = (ωbnb,y sφ+ ωb
nb,zcφ)/cθ
~ωbnb = ~ωb
ib−Cbn(~ωn
ie + ~ωnen)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 27 / 56
IMU drift
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 28 / 56
IMU error model
In
Out
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 29 / 56
IMU error model
In
Out
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 30 / 56
IMU error model
In
Out
Biase
Scale
f bib = sacc · ωbib + ba + Noisea
ωbib = sgyro · ωb
ib + bω + Noiseω
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 31 / 56
IMU error-correction
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 32 / 56
autarkic, low-cost EDR without GPS
• without GPS ⇒ search for efficient “Navigation aid”
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 33 / 56
Navigation aid
• drift-free Navigation aid for speed ‖~V ‖
Motor-spin estimation may replace wheel-spin measurement if we knowthe engaged gear state.
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 34 / 56
Navigation aid
• drift-free Navigation aid for speed ‖~V ‖
Motor-spin estimation may replace wheel-spin measurement if we knowthe engaged gear state.
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 34 / 56
Navigation aid
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 35 / 56
Navigation aid: Generator
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 36 / 56
Navigation aid: ripple
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 37 / 56
Navigation aid: ripple
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 38 / 56
Navigation aid: ripple
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 38 / 56
Navigation aid: ripple
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 39 / 56
Navigation aid
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 40 / 56
Navigation aid
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 41 / 56
Speed estimation
Navigation Solution
HMM
IMU
IC
Forward speed
Motor spin
Gear estimate
(with drift)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 42 / 56
Hidden Markov Model
Gear speedXt ∈ {0, 1, ..., 6}
Xt−1 Xt Xt+1
“observations”:
~V and Motor spinOt−1 Ot Ot+1
DBN: Dynamic Bayesian Network
P(X0 = i), P(Xt+1 = j | Xt = i), P(Ot | Xt)
=⇒ P(Xt | Ot), xt = argi max{P(Xt = i | Ot)
}
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 43 / 56
Hidden Markov Model
Gear speedXt ∈ {0, 1, ..., 6}
Xt−1 Xt Xt+1
“observations”:
~V and Motor spinOt−1 Ot Ot+1
DBN: Dynamic Bayesian Network
P(X0 = i), P(Xt+1 = j | Xt = i), P(Ot | Xt)
=⇒ P(Xt | Ot), xt = argi max{P(Xt = i | Ot)
}
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 43 / 56
Hidden Markov Model
Gear speedXt ∈ {0, 1, ..., 6}
Xt−1 Xt Xt+1
“observations”:
~V and Motor spinOt−1 Ot Ot+1
DBN: Dynamic Bayesian Network
P(X0 = i), P(Xt+1 = j | Xt = i), P(Ot | Xt)
=⇒ P(Xt | Ot), xt = argi max{P(Xt = i | Ot)
}
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 43 / 56
Hidden Markov Model
Gear speedXt ∈ {0, 1, ..., 6}
Xt−1 Xt Xt+1
“observations”:
~V and Motor spinOt−1 Ot Ot+1
DBN: Dynamic Bayesian Network
P(X0 = i), P(Xt+1 = j | Xt = i), P(Ot | Xt)
=⇒ P(Xt | Ot), xt = argi max{P(Xt = i | Ot)
}Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 43 / 56
Speed estimation
Navigation Solution
HMM
Transmissionsettings and
rdyn
OUTPUT
IMU
IC
Forward speed
Motor spin
Gear estimate
Motor spin
(drift free)
(with drift)
Fo
rwar
dsp
eed
(dri
ftfr
ee)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 44 / 56
Speed estimation
Navigation Solution
KF
HMM
Transmissionsettings and
rdyn
OUTPUT
IMU
IC
Forward speed
Motor spin
Gear estimate
Motor spin
(drift free)
(with drift)
Fo
rwar
dsp
eed
(dri
ftfr
ee)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 45 / 56
Trajectory
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 46 / 56
Speed reconstruction
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 47 / 56
Sensor Fusion
Navigation Solution
HMM
Transmissionsettings and
rdyn
OUTPUT
IMU
IC
Forward speed
Motor spin
Gear estimate
Motor spin
(drift free)
(with drift)
Fo
rwar
dsp
eed
(dri
ftfr
ee)
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 48 / 56
Sensor Fusion
v = f (v) + Noise
o = h(v) + Noise
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 49 / 56
Sensor Fusion
Process: v = f (v) + Noise
Measurement: o = h(v) + Noise
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 50 / 56
Kalman Filter
Process: x(t) = F (t)x(t) + w(t), w(t) ∼ N (0,Q(t))
Measurement: o(t) = H(t)x(t) + v(t), v(t) ∼ N (0,R(t))
state estimate and covariance of estimation error at time t
xt := E (xt | {os : 0 ≤ s ≤ t}) (2)
P(t) := E ((xt − xt)(xt − xt)T ) (3)
minimizes L2 norm of estimation error
E ((xt − xt)T (xt − xt))
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 51 / 56
Kalman Filter
Process: x(t) = F (t; x) + w(t), w(t) ∼ (0,Q(t))
Measurement: o(t) = H(t; x) + v(t), v(t) ∼ (0,R(t))
state estimate and covariance of estimation error at time t
xt := E (xt | {os : 0 ≤ s ≤ t}) (4)
P(t) := E ((xt − xt)(xt − xt)T ) (5)
minimizes L2 norm of estimation error
E ((xt − xt)T (xt − xt))
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 52 / 56
Kalman Filter
˙xs = F (s)xs + K (s)[os − H(s)xs
],
K = PHTR−1,
P = FP + PFT + Q − KRKT ,
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 53 / 56
Smoothing
dxs = F (xs)ds + dws , E (wswtt ) = Q(s)δ(t − s)
dos = H(xs)ds + dvs , E (vsvtt ) = R(s)δ(t − s)
ˆxs = E (xs | σ{ot : 0 ≤ t ≤ T})
(off-line data-processing)
E ((xs − ˆxs)T (xs − ˆxs)) ≤ E ((xs − xs)T (xs − xs))
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 54 / 56
Smoothing
dxs = F (xs)ds + dws , E (wswtt ) = Q(s)δ(t − s)
dos = H(xs)ds + dvs , E (vsvtt ) = R(s)δ(t − s)
ˆxs = E (xs | σ{ot : 0 ≤ t ≤ T})
(off-line data-processing)
E ((xs − ˆxs)T (xs − ˆxs)) ≤ E ((xs − xs)T (xs − xs))
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 54 / 56
Smoothing
Ts
xs
xt
Ts
xb,s
xb,t
Ts
xf ,s
xf ,t
Ts
ˆxs
ˆxtsmoothing
backward filteringforward filtering
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 55 / 56
State Estimation
Ts
ˆxs = P(s | T )(P−1f (s)xf ,s + P−1
b (s)xb,s)
P(s | T )−1 = P−1f (s) + P−1
b (s)
backward filtering
˙xb,s = F (xb,s) + Kb(y − H(xb,s))
Kb = PbHsR−1
Pb = FPb + PbFt + Q − KbRK
tb
forward filtering
˙xf ,s = F (xf ,s) + Kf (y − H(xf ,s))
Kf = PfHsR−1
Pf = FPf + Pf Ft + Q − Kf RK
tf
Hug et al. (BFH-TI/ EPFL) Motorcycle EDR/EA 56 / 56
Top Related