Fawkes Robot Software

Introduction

Fawkes is a component-based monolithic software framework providing the basic building blocks for robotic systems. Over the past ten years, we have developed Fawkes as a robust foundation to deal with the challenges of robotics applications in general, and in the context of RoboCup in particular. Fawkes has been initially developed and used in the Middle-Size soccer league when building a new holonomic platform (schematic drawing) based on bits an pieces developed back from 2005 for our domestic service robots. We continued using it for the Standard Platform League (humanoid Nao robot) from 2008, both in Webots simulation and on the real robots. It was the common base for the joint team ``ZaDeAt” from South Africa, Germany, and Austria. Around the time it was used increasingly to provide several sub-systems, in particular visual perception, in the RoboCup@Home service robot league by the AllemaniACs RoboCup team. In 2010, the behavior components were ported to ROS and used on the Home Exporing Robot Butler (HERB) at the Personal Robotics Lab of the Carnegie Mellon University. In 2014, Fawkes was used for integrating Golog on the PR2 robot. Starting from 2012, Fawkes was the major integration framework used by the Carologistics RoboCup team in the RoboCup Logistics League. Several major changes were developed as part of this league. The team published full releases every year since 2014, containing a fully integrated system to run in the Logistics League. In 2016, after ten years of development, the first major stable release Fawkes 1.0.0 was released.

Components

Fawkes provides support for a lot of typical robotics hardware, including stereo and RGBD cameras, robotic arms such as the Kinov Jaco arm, or robot platforms such as the Festo Robotino. Several components deal with path planning and execution, mostly based on a navgraph that combines geometric and semantic environment information.

Fawkes particularly excels when it comes to behavioral components. It provides the Lua-based Behavior Engine, which serves as a reactive middle layer between the top-level deliberative and planning components, and the low level execution system. For the high level decision making, it provides several systems, for example the CLIPS-based agent. More recent work has been done to integrate state-of-the-art symbolic planning systems, and to implement robotic memorization.

Fawkes acts as the main integration component and “engine room” for the implementation of the simulation cluster for the Planning and Execution Competition for Logistics Robots in Simulation.

For more details, please also refer to the project website.

Go to Project Site

Publications

. Fawkes for the RoboCup Logistics League. RoboCup Symposium 2015 – Development Track, 2015.

Details Project Fawkes Website Carologistics

. Incremental Task-level Reasoning in a Competitive Factory Automation Scenario. AAAI Spring Symposium 2013 on Designing Intelligent Robots: Reintegrating AI II, 2013.

Details Project Project

. Aspects of Integrating Diverse Software into Robotic Systems (Extended Abstract). Prococeedings of the 8th Workshop on Software Development and Integration in Robotics (SDIR) at the IEEE International Conference on Robotics and Automation (ICRA), 2013.

Details Project

. A Generic Robot Database and its Application in Fault Analysis and Performance Evaluation. IEEE International Conference on Intelligent Robots and Systems (IROS), 2012.

Details Project

. Design Principles of the Component-Based Robot Software Framework Fawkes. Proceedings of the International Conference on Simulation, Modeling, and Programming for Autonomous Robots (SIMPAR), 2010.

Details Project Fawkes Website

Talks

A Behavior Engine for ROS
Sep 30, 2010 11:00
Fawkes Nao Workshop UCT
Dec 4, 2009 13:00
Fawkes on the Humanoid Robot Nao - Executive Summary
Sep 11, 2008 13:00