Design of the global software structure and controller framework for the 3TU soccer robot

Four identical humanoid soccer robots are currently developed by the three universities of technology in theNetherlands (3TU),with the intention to participate as the TeamDutchRobotics at the RoboCup 2008 competition. In order to move, each robot has 14 joints in its arms and legs, from which 12 are actuated by electric motors. The mechanical configuration is designed for dynamical walking; it is unstable and should continuously have stabilizing control. The ‘brain’ of the robot is a single processor computer, a PC-104 stack. The aim of this master thesis project is twofold: • Design of the global software structure • Design of the joint controller framework The first part is about the software architecture, real-time behavior and the use of third-party software. Many software projects do exist for robots, the so-called robot software frameworks. The usability of these frameworks has been investigated, it remained in two candidates for using it in TUlip: Orocos and RoboFrame. However, no framework fully satisfied the requirements, because Orocos is not light weighted and RoboFrame does initially not support realtime. It has been chosen to use RoboFrame for the non-real-time part of the software and a self-written framework for the real-time part, with kept in mind that RoboFrame later can be ported to support real-time behavior. Furthermore it has been decided to use Linux/Xenomai as operating system to achieve the real-time execution of the software. The second part is about the design of a software framework for stabilizing controllers: the joint controller framework. The movements of the robot exist of several basic behaviors, such aswalking, kicking the ball, stand up etcetera. Each basic behavior might need different configurations of the joint controllers or even different types of joint controllers. The goal is to create a framework that gives control engineers the opportunity to switch among controllers and to be flexible in adjusting the parameters. The joint controller framework has been designed and a prototype has been realized. Instead of testing it on the real robot, models of the robot have been used to test the framework, because the robot was not assembled yet. Because of problems with the model of TUlip’s body, the joint controller framework is tested on models of a humanoid head as well. The joint controller framework worked well and it has been used for realizing the head demo, as described in Visser (2008).

[1]  Jan F. Broenink,et al.  Multi-Disciplinary Design Support using Hardware-in-the-Loop Simulation , 2004 .

[2]  Dusko JOVANOVIC,et al.  A Communicating Threads ( CT ) Case Study : JIWY 1 , 2002 .

[3]  Richard T. Vaughan,et al.  On device abstractions for portable, reusable robot code , 2003, Proceedings 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2003) (Cat. No.03CH37453).

[4]  Edsger W. Dijkstra,et al.  Solution of a problem in concurrent programming control , 1965, CACM.

[5]  Jean-Christophe Baillie,et al.  URBI: towards a universal robotic low-level programming language , 2005, 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[6]  J. Amerongen,et al.  Boderc : Model-based design of high-tech systems , 2006 .

[7]  Herman Bruyninckx,et al.  Open robot control software: the OROCOS project , 2001, Proceedings 2001 ICRA. IEEE International Conference on Robotics and Automation (Cat. No.01CH37164).

[8]  Daan G. E. Hobbelen,et al.  Limit Cycle Walking , 2007 .

[9]  P. Daemen ZMP based control in 3D passive dynamic walking , 2008 .

[10]  Giorgio Metta,et al.  Towards long-lived robot genes , 2008, Robotics Auton. Syst..

[11]  Hans Utz,et al.  Miro - middleware for mobile robot applications , 2002, IEEE Trans. Robotics Autom..

[12]  Alexei Makarenko,et al.  Building a Software Architecture for a Human-Robot Team Using the Orca Framework , 2007, Proceedings 2007 IEEE International Conference on Robotics and Automation.

[13]  L. C. Visser Motion control of a humanoid head , 2008 .

[14]  O. von Stryk,et al.  Walking, Running and Kicking of Humanoid Robots and Humans , 2008 .

[15]  Stefano Stramigioli,et al.  Realisation of an energy efficient walking robot , 2006 .

[16]  Matthias Jüngel,et al.  XABSL - A Pragmatic Approach to Behavior Engineering , 2006, 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[17]  M. H. Barton,et al.  Software Engineering for Real Time Systems , 1990 .

[18]  Lynne E. Parker,et al.  ALLIANCE: an architecture for fault tolerant multirobot cooperation , 1998, IEEE Trans. Robotics Autom..

[19]  Jan F. Broenink,et al.  A Model-Driven Approach to Embedded Control System Implementation , 2007 .