C++ language support for guaranteed initialization, safe termination and error recovery in robotics

Ingemar Johansson Cox · 2003

Software issues related to the reliability of robot systems are considered. It is shown how more reliable robot systems can be built using data abstraction and object-oriented programming, as supported within C++, a general-purpose programming language. It is also shown how the constructor mechanism associated with C++ classes can be used to guarantee initialization and self-test of each subsystem of the robot. A complementary destructor mechanism can be used to guarantee safe termination of subsystems under most conditions. These mechanisms are completely transparent to both the user and his application program. Exception handling is discussed and it is shown how object-oriented programming facilities can be used to provide transparent recovery from subsystem failures during program execution, given some hardware redundancy. Most of the examples have been demonstrated and tested using C++ running on an autonomous robot vehicle.>

Read the paper · More papers on PaperTik