Information - Software
A systematic way to develop the software is considered very important in the project because of its scale and number of people included. The robot will also evolve through several generations; therefore, modular design and software documentation will have special needs.
Software planning and designing is done using UML description, and the program code is written using object-oriented methods. The main principle of the control software architecture is presented in figure. The software is divided into hierarchical levels, which communicate with each other using a special WorkPartner commanding language, which will be constructed by using the notations of the XML.
The operator commands the Artificial Intelligence level, which then gives commands to the next levels. Working tasks are given to the manipulator, and transfering tasks are given to the navigation system. The Hybtor platform acts as a mobility service to the upper hierarchy levels. The Perception Systems and Services are available throughout the architecture. Also a standard user interface can be used parallel to the AI level.
Software architecture of the WorkPartner's platform The software of the Hybtor platform is divided into separate parallel processes. Start/Watchdog activates all the other tasks in a predetermined order. Then it stays awake and guards the states of all the other tasks. Operations Interpreter acts as a interface between the platform and the upper hierarchy levels. Motion Controller takes care of all the calculations concerning the motion planning of the platform. Shared Memory contains all the measured data from the legs and the middle joint. Can Receive reads the measurements from the CAN-bus and writes them into the shared memory. Can Transmit sends all the controlling commands to the individual leg controllers or to the middle joint controller.