Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Whiteboard:
I Principles and some examples.
Slides:
I Sampling formulas.
I Noise models.
I Standard motion models.
I Position as integrated velocity, acceleration,... in nD.
I Orientation as integrated angular speed in 2D and 3D.
I Odometry
I (Extended) Kalman filter applications
Sensor Fusion, 2014 Lecture 9: 2
Lecture 8: Summary
Simultaneous Localization And Mapping (SLAM)
I Joint estimation of trajectory x1:k and map parameters θ in
sensor model yk = h(xk ; θ) + ek .
I Algorithms:
I NLS SLAM: iterate between filtering and mapping
I EKF-SLAM: EKF (information form) on augmented state
vector zk = (xkT , θT )T .
I FastSLAM: MPF on augmented state vector zk = (xkT , θT )T .
http://youtu.be/VQlaCHl3Yc4 http://youtu.be/hA_NZeuoy9Y
Sensor Fusion, 2014 Lecture 9: 3
Modeling
Sampling formulas
LTI state space model
ẋ = Ax + Bu, xk+1 = Fx + Gu
y = Cx + Du, yk = Hx + Ju.
Sampling formulas
M = (Inx − T /2A)−1 ,
F = M(Inx + T /2A),
G = T /2MB,
H = CM,
J = D + HG .
Sensor Fusion, 2014 Lecture 9: 6
A = ax0 (x, u), B = au0 (x, u), C = cx0 (x, u), D = cu0 (x, u),
RT
2. Sampling: F = e AT , G = 0
e At dtB, H = C and J = D.
I Linearized discretization (best, when possible!):
1. Nonlinear sampling:
Z t+T
x(t + T ) = f (x(t), u(t)) = x(t) + a(x(τ ), u(τ ))d τ,
t
Q̄d =TQ
Models
Continuous time (physical) and discrete time counterparts
Navigation models
Rotational kinematics in 2D
ψ̇(t) = w (t),
δi
Sensor
Virtual sensors
Longitudinal velocity, yaw rate and slip on left and right driven
wheel (front wheel driven assumed) can be computed from wheel
angular speeds if the radii are known:
v3 + v4 ω3 r3 + ω4 r4
vx = = ,
2 2
ω3 r3 − ω4 r4
Ψ̇ = ,
B
ω1 r1 ω2 r2
s1 = − 1, s2 = − 1,
v1 v2
s
R −1 B 2
v1 = vx 1+ + (R −1 L)2 ,
2
s
R −1 B 2
v2 = vx 1− + (R −1 L)2 .
2
Sensor Fusion, 2014 Lecture 9: 17
Geometry
δ2
α2 v 2
ω1 ω2
ψ
R1 R2
L
B
R3 R4
ω3 ω4
Sensor Fusion, 2014 Lecture 9: 18
Odometry
Odometry is based on the virtual sensors
ω3 r3 + ω4 r4
vxm =
2
ω3 r 3
−1
m 2 ω4 r 4
ψ̇ m =vx ω3 r 3 .
B ω r +1
4 4
Rotational kinematics in 3D
Euler orientation in 3D
Note: this result depends on the order of rotations Qφx Qθy Qψz .
Here, the xyz rule is used, but there are other options.
Sensor Fusion, 2014 Lecture 9: 21
Euler rotation in 3D
When the body rotate with ω, the Euler angles change according to
ωx φ̇ 0 0
ωy = 0 + Qφx θ̇ + Qφx Q y 0
θ
ωz 0 0 ψ̇
The dynamic equation for Euler angles can be derived from this as
φ̇ 1 sin(φ) tan(θ) cos(φ) tan(θ) ωx
ψ̇ = 0 cos(φ) − sin(φ) ωy
θ̇ 0 sin(φ) sec(θ) cos(φ) sec(θ) ωz
Unit quaternions
Vector representation: q = (q 0 , q 1 , q 2 , q 3 )T .
Norm constraint of unit quaternion: q T q = 1.
Then, the quaternion is defined from the Euler angles as
Quaternion orientation in 3D
Quaternion rotation in 3D
1
q̇(t) 2 S(ω(t))q(t)
= .
ω̇(t) w (t)
Bias states for the accelerometer and gyro have been added as well.
Sensor Fusion, 2014 Lecture 9: 28
Tracking models
Sounding rocket
Navigation grade IMU gives accurate dead-reckoning, but drift may
cause return at bad places.
GPS is restricted for high speeds and high accelerations.
Fusion of IMU and GPS when pseudo-ranges are available, with
IMU support to tracking loops inside GPS.
I Loose integration: direct fusion approach yk = pk + ek .
I Tight integration: TDOA fusion approach
yki = kpk − pki k/c + tk + ek .
http://youtu.be/zRHFXfZLQ64
Sensor Fusion, 2014 Lecture 9: 32
MC leaning angle
I Headlight steering, ABS and anti-spin systems require leaning
angle.
I Gyro very expensive for this application.
I Combination of accelerometers investigated, lateral and
downward acc worked fine in EKF.
Model, where zy , zz , a1 , a2 , J are constants relating to geometry
and inertias of the motorcycle, u = vx
x = (ϕ, ϕ̇, ϕ̈, ψ̇, ψ̈, δay , δaz , δϕ̇ )T ,
ux4 − zy x3 + zy x42 tan(x1 ) + gsin(x1 ) + x6
ay
2 2 2
y = h(x) = az = −ux4 tan(x1 ) − zz x2 + x4 tan (x1 ) + g cos(x1 ) + x7
ϕ̇ −a1 x3 + a2 x42 tan(x1 ) − ux4 J + x6
http://youtu.be/hT6S1FgHxOc0%
Sensor Fusion, 2014 Lecture 9: 33
http://youtu.be/d9rzCCIBS9I
Sensor Fusion, 2014 Lecture 9: 34
Friction estimation
I Friction model yk = 1/sµk + δk + ek , where yk is the slip, s is
the friction dependent slip slope, µk is the normalized traction
force from the engine, δk a tire radius dependent offset and ek
is measurement noise.
I Kalman filter estimated s adaptively.
I When s decreases under a threshold, a friction alarm is issued.
http://youtu.be/savmzo-xonk
Sensor Fusion, 2014 Lecture 9: 35
Shooter localization
Network with 10 microphones around a ’camp’. Shooter aiming
inside the camp. Supersonic bullet injects a shock wave followed by
an acoustic muzzle blast. Fusion of time differences give shooter
position and aiming point.
Model, with x being the position of the shooter,
ykMB = t0 + bk + c1 ||pk − x|| + ekMB ,
v0
ykSW = t0 + bk + 1r log + c1 ||dk − pk || + ekSW .
v0 − r ||dk − x||
where dk is an implicit function of the state.
http://youtu.be/q-tU6YyJ5gU
Sensor Fusion, 2014 Lecture 9: 37