About

The Rebecca-Е Framework Project

Introduction

The Rebecca-Е Framework is an open-source project. The document describes the content and the scope of the project.

Background

Usually robot control systems use a set of algorithms matched to specific task types. The robot uses concrete scheme (control pattern) which could be described by Finite State Machine. The profits of such robot organization are usable in situations like car assembly factory, nuclear power station control, an airplane piloting and etc. On the other hand, Finite State Machine usage eliminates creative abilities for the robot’s AI, this eliminates a chance to create a more «wise» machine. It is of our interest to create an adaptable control system, able to change its structure, depending on different conditions.

Project Abstract: http://robotics.icstweb.org/projects/re/

Project Description

The Rebecca-Е Framework (REF) will provide us tools for:

• building robot control systems
• developing and testing real-time image processing algorithms
• distributing computational tasks
• real-time control pattern rebuilding

factorytmb.png
Fig 1. Click to enlarge.

The Rebecca-Е Framework will include the following components:

• simple modules (“pipes” – the blue blocks on the figure 1) implement simple data processing algorithms
• assembled modules (“pipelines” – the green blocks on the figure 1) implement data processing streams
• pipeline control panel and editor (prototype scheme – figure 1)

Design

Programming Language:
Java
C#

Rebecca-Е Framework System Architecture

The Rebecca-Е Framework is being built using the Eclipse Platform (http://www.eclipse.org/) and provides virtual pipeline architecture. Every Pipe performs its task in separate process (thread). The Pipes organize connected pipe structures called “Pipelines” which perform combined tasks. The Pipelines organize groups called “Factories”. Each Factory implements a robot control pattern. Each Factory and Pipeline can be rebuilt during run-time.

Project Tasks

• Architecture development. Current architecture improvement focused on parallel programming for computational task (pipe) distribution. Realization of dynamic control for Factories and Pipelines, and Pipe hot-plug mechanism (connecting Pipes during runtime).
• GUI development. Creation the Graphical User Interface for building, editing, configuring and controlling the robot control systems.
• Realization of known image processing algorithms and including it into the framework library.

Organization

Project Lead
Sergey Stankevich
http://robotics.icstweb.org/about/crew/committee-head/

Potential Committers
(You?)