Professional Documents
Culture Documents
Localization Cognition
2
Motion Uncertainty
3
Odometry & Dead Reckoning
Odometry
Use wheel sensors to update position
Dead Reckoning
Use wheel sensors and heading sensor to update
position
Straight forward to implement
Errors are integrated, unbounded
4
Odometry & Dead Reckoning
5
Odometry & Dead Reckoning
Odometry Errors
Deterministic errors can be eliminated through proper
calibration
Non-deterministic errors have to be described by error
models and will always lead to uncertain position
estimate.
6
Motion Uncertainty
7
Modeling Motion
YI
sl
p
p
sr
8 XI
Modeling Motion
sl
9 sr
Modeling Motion
sl = R sr = (R+2L) s = (R+L)
R
sl
2L s
10 sr
Modeling Motion
11
Modeling Motion
s = (R+L)
= R + L
= sl + sr /2 sl /2
= sl /2 + sr /2
= sl + sr
2
12
Modeling Motion
sl
s
13 sr
Modeling Motion
14
Modeling Motion
Substitute R into
= sl / R
= sl (sr - sl ) / (2L sl )
= (sr - sl )
2L
So
= (sr - sl )
2L
16
Modeling Motion
YI
+
d
s
17 XI
Modeling Motion
YI
+
+ /2 y
x
18 XI
Modeling Motion
Using Trig:
x = d cos( + /2)
y = d sin( + /2)
YI
+ /2 y
x
19 XI
Modeling Motion
d
s
So
x = s cos( + /2)
20 y = s sin( + /2)
Modeling Motion
Summary:
21
Modeling Uncertainty in Motion
If:
s = 1 + es
= 0 + e
22
Modeling Uncertainty in Motion
So
x = 0.9998
y = 0.0175
But the robot is supposed to go to x=1,y=0, so
the errors in each direction are
x = +0.0002
y = -0.0175
THE ERROR IS BIGGER IN THE Y
24 DIRECTION!
Modeling Uncertainty in Motion
25
Modeling Uncertainty in Motion
26
Motion Uncertainty
27
Odometry on the X80
Goals:
Calculate the resulting robot position and orientation
from wheel encoder measurements.
Display them on the GUI.
Method:
Use the forward kinematics equation from last lecture.
28
Odometry on the X80
Method cont:
Make use of the fact that your encoder has resolution
of 1200 counts per revolution. Be able to convert this to
a distance travelled by the wheel.
rr = sr
Given the distance travelled by each wheel, we can
calculate the change in the robots distance and
orientation.
s = sr + sl = (sr - sl )
2 2L
29
Odometry on the X80
Method cont:
Now you should be able to update the position/
orientation in global coordinates.
x = s cos( + /2)
y = s sin( + /2)
30