Figure 3: (A) – SetPoint command to x = 0, y = 0. (B) –
setVelocity with v = 0.3mps and desired velocity angle = 0.
(C) – Sequence of setVelocity commands with v = 0.3mps
and velocity angle = 1.3rad.
accurately goes to the defined setPoint, but possess-
ing a yy axis precision error of 1 to 2 centimeters
maximum. This precision error exists because of
two main causes. The first is the backward force
exerted by the energy cable that feeds the robot in test
environment
1
. The second is because of the defined
tuned parameter for the influence of the robot’s error
over the yy coordinate – K
y
. Tuning for near-zero
error is possible but leads to a very hard control
scheme in the presence of a physical disturbance,
making the controller produce high overshoot for
compensation. Since our robot is to walk on a field
where collisions with other robots may be present, the
revealed accuracy perfectly suits for our needs. For
collision-free applications, where minimum physical
errors exist and depending on the world’s space, we
can make the control harder, raising K
y
.
– setVelocity (velocity vector) with v = 0.3mps and
desired velocity angle = 0
For this test, the robot was subjected to extreme noise
conditions.
Referring to Fig. 3(B), the robot is subjected to
two disturbances done by blocking its left wheel,
evident by the multiple white dots in the same place.
Also, we blocked the color code of the robot used to
1
During tests, we prefer to have the robot constantly fed
with energy instead of placing the batteries that discharge
with time.
be identified by the vision module for a while, so that
no vision data was being received by the controller
for it to estimate the actual pose. Controller’s robust-
ness is proved.
– Sequence of setVelocity commands with v = 0.3mps
and velocity angle = 1.3rad
In this final test (Fig. 3(C)), we sent a sequence of
setVelocity commands to evaluate the control mod-
ule’s response in the presence of new velocity in-
structions. This test approaches from our real appli-
cation target, the soccer game, where a high move-
ment dynamic is required for the robot. Referring to
Fig. 3(C), a velocity vector with zero desired angle is
first sent, followed by two setVelocitie’s with the same
module and 1.3 rad for the desired velocity angle. Fi-
nally, the robot is halted with a halt instruction. As we
can conclude, the robot accurately executes the per-
formed commands, evidencing the software module’s
robustness.
7 CONCLUSIONS
A controller for pose error elimination of a soccer-
player robot was projected and its practical results
have been shown. For the theoretical basis of the con-
troller, particular interest was given to create a gen-
eral scheme independent of the mathematical extrac-
tion of the test structure. On-the-field tests reveal that
the projected approach is not only valid, but also ro-
bust. Despite the fact that the Real Time System has
not already been implemented, the idea of placing it in
the system is planned and will be present in the final
version of this project.
REFERENCES
A. Gholipour, M. J. Y. (2000). Dynamic tracking control
of nonholonomic mobile robot with model reference
adaptation for uncertain parameters. University of
Tehran.
T. Larsen, M. B. (2000). Location estimation for an
autonomously guided vehicle using an augmented
kalman filter to autocalibrate the odometry. Techni-
cal University of Denmark.
Y. Kanayama, Y. Kimura, F. M. T. N. (1990). A stable track-
ing control method for an autonomous mobile robot.
IEEE.
ICINCO 2008 - International Conference on Informatics in Control, Automation and Robotics
228