Beruflich Dokumente
Kultur Dokumente
Abstract Reproducibility is essential in the testing of robots the DTCs complement those with behavior-based integration
because verification techniques are required to handle the testing.
growing software complexity. This short paper introduces the A DTC requires guarantee from the execution model of the
deterministic test cases (DTCs) for extending the standard
testing practices to test incremental changes in behavior-based robot software that the algorithms provide the same results
systems. Recorded sensor data for DTCs and design patterns on the robot and on a remote computer. Some basic design
guarantee that the behavior execution is equivalent on the robot patterns should be followed to ensure this constraint:
and when the test case is simulated on a computer. These DTCs Heartbeat (HB): A timer signals the main cycles in the
can be created easily, their execution is fast, they can test any
kind of robot skills and they minimize the manual testing with software when periodic tasks must be executed.
robots in a project. A real world example with a Sony ERS-7 Robot state (RS): This data storage contains the latest
proves that the DTCs can be used successfully in a long run. sensor data (e.g. accelerometer, sonar) and the higher
level variables (e.g. emotions, locomotion direction).
I. INTRODUCTION
Sensor data are collected between heartbeats, but they
Traditionally, the robot control software is developed in are not evaluated until the new heartbeat signal arrives.
simulation environments to spare the operating time of the The higher level variables are extracted from the raw
expensive robots. In [1], Pioneer 3-DX and PeopleBot robots sensor data and they are stored to the robot state. To use
were modeled in ROS and Gazebo to run autonomous DTCs on the robots with limited resources, the robot
navigation task with 3D mapping. These robots had wheels, state should be constructed as light as possible. For
therefore, the dynamics modeling was easier than the chal- example, if the environmental brightness is computed
lenging legged robots. They found that a proper robot model from the camera picture, the data structures of this
in the simulation provided enough precision to deploy the de- algorithm should not be stored in the robot state, only
veloped code to the robots. However, the difference between the final brightness level.
the simulation and reality makes often impossible to reuse Session log (SL): When the robot state is actualized after
the same software in both the simulation environment and a heartbeat, the new version is saved to the session log.
the real robot. Laue and Hebbel [2] tried to overcome this Furthermore, the behaviors update their states according
problem by combining the Webots simulation and recorded to the new robot state and they report their state changes
data of the robot for optimizing gait parameters, but they to the session log as well. A session log collects these
could not reach exact match between the two environments information after the robot is switched on until it is
with genetic algorithm. Araiza-Illan et al [3] used model- powered down.
based test generation in ROS and Gazebo to reach high code Random numbers (RN): The robot software must report
coverage during testing and cover rare cases. A limitation of all generated random numbers to the session log which
their work was the static simulation environment and on-line effect the behaviors.
test generation would be required to cover those cases. As we Since a session log contains all information (sensor data,
can see all kind of solutions are available to develop robot random numbers) what influence the behavior state changes,
software, but to the best knowledge of the authors, there the whole session can be replayed back deterministically with
has been a little interest in the literature for reproducible the log on a remote machine.
testing of mobile robots. This paper presents a concept how
the testing process can be enhanced with recorded test cases A. Test Case Creation
of the robot to deal with the increasing complexity of the A DTC is prescribed with a test case specification, which
behaviors.
Algorithm 1 Deterministic test case creation.
II. D ETERMINISTIC T EST C ASES 1 . S t a r t t h e r o b o t s o f t w a r e and c r e a t e a h e a r t b e a t t i m e r .
2. t = 0
The proposed deterministic test cases (DTCs) in this paper 3 . C o l l e c t s e n s o r d a t a and w a i t f o r t h e h e a r t b e a t s i g n a l .
does not replace the traditional testing practices. The robot 4 . U p d a t e t h e a c t u a l r o b o t s t a t e ( RSt ) w i t h t h e s e n s o r d a t a .
5 . U p d a t e t h e b e h a v i o r s , s a v e t h e random numbers t o RNt and
software still requires unit, module and functional tests, but t h e b e h a v i o r s t a t e c h a n g e s t o BSt .
6 . t = t +1
1 Csaba Kert
esz and Markku Turunen are with University of Tampere, 7 . Goto 3 u n t i l t h e t e s t c a s e i s f i n i s h e d .
33710 Tampere, Finland. (emails: csaba.kertesz@ieee.org and 8 . Save t h e s e s s i o n l o g .
markku.turunen@uta.fi)
The author has requested enhancement of the downloaded file. All in-text references underlined in blue are linked to publications on ResearchGate.