Professional Documents
Culture Documents
Components
y
A
And:
180
= 90
8 sin
sin
8 sin
sin
+ 180
Solve for
c
8
sin
sin
270
cos
cos 270
sin
sin
sin (
+ cos" 270
+ $%$&2
sin
sin
+ cos 270
+ sin" 270
, sin 270
(Trig identity)
Then = 180& $%$&2 (
)
(where n is an integer)
And = 270
+ cos 270
( )
, sin 270
x
C
c
8
* = 8 8 sin
+ = 8 8 sin
sin 180 ( )
sin 180
sin 180
B
C
;=
+ 90 180
;=
;=
90 + +
+ +
90
B
C
+
+ sin ;
sin ;
cos ;
Southeast
beacon
Northeast
beacon
Northwest
beacon
Problem: Given the linear distance traveled by each of the two wheels (L1
and L2), and the distance between the two wheels (d) can we determine the
displacement (x, y) of the robot?
(x, y)
L1
L2
ST
R=
T" T
L1 = (r + d)
L2 = (r)
T" T
;=
S
L1
L2
d
r+d
ST
R=
T" T
T" T
;=
S
S
;
=2 U+
sin
2
2
ST
S
T" T
"
"
* ++ =2
+
sin
T" T
2
2S
S(T +T" )
T" T
"
"
* ++ =
sin
T" T
2S
*"
r+d
+ +"
* =
Z+[
2
Z+[
sin
2
cos
Where:
d is distance between wheels, L1 and L2 are linear distance traveled by the two wheels, Z
and [ are the starting and finishing angles with respect to east
*Note: This formula does not apply when L1 = L2. However, for this case, the calculation
of distance is trivial.
*Note: Do not use this formula if either L1 or L2 are negative (rotation, not translation)
Error Handling
Errors will compound over time, and at times we will need to stop
and do a stationary sweep in order to correct error on our absolute
position incurred while moving
However, if we are accurate enough, it may suffice to correct our
error at each capture station by setting the known coordinates as our
absolute position (offset by the distance to the particular hall sensor
that was firing)
Rotation
The angle of rotation can be measured by encoder ticks. The wheel
travels along an arc of length \, equal to R;, where R is half of the
distance between the wheels.
Thus,
%N]`L _M^^\ ]NR]abO^R^&]^
SNL%$&]^ ^%_^^& _M^^\L
;=
\=
ca\L^L
2
SRNd^ e^$R R$%Nf
R^d
ca\L^L
SNL%$&]^ ^%_^^& _M^^\L ; SRNd^ e^$R R$%Nf
R^d
%N]`L =
2 _M^^\ ]NR]abO^R^&]^