Skip to content
Maksym Figat edited this page Aug 19, 2015 · 52 revisions

1. General structure of RAPP system

Figure 1 presents the general structure of the RAPP system, consisting of agents residing in the cloud and a robot.

Figure 1: General structure of RAPP system

The cloud part of the system contains a repository agent a_rep (repository storing all RAPP applications - RApps in short) and a cloud agent a_cloud (representing external services). Each robot contains a specific core agent a_core, which governs both NAO effectors and receptors. RApps are composed of a single dynamic agent a_dyn executed on a robot and might be supplemented with agents running in the cloud.

More information of the general structure of RAPP system can be found in here...

2. Preparation of hardware for RAPP development

Figure 2: Files flow in RAPP system development

Preparation of hardware for RAPP development requires on virtual machine download of source code of ROS. It is downloaded to ws_ros/src folder. Additionally it is required to download ROS dependent software packages to ws_ros_additional_packages/src workspace folder and ROS independent software packages (such as hop, bigloo, etc.) to ws_ros_additional_packages/programs workspace folder.

Core agent source code is downloaded from rapp-robot-nao github repository to ws_rapp_nao/src workspace folder.

RApps source code is cloned from rapp-applications github repository to ws_rapp_applications/src folder. Then in workspace ws_rapp_applications_nao there is created a symbolic link to ws_rapp_applications/rapp-applications/nao/src with the name src. Any changes in a ws_rapp_applications_nao/src folder will influence on ws_rapp_applications/rapp-applications/nao/src folder contents.

Square lines with arrows on Figure 2 represent installation process in each of workspaces. Libraries and ROS packages are installed in workspace's install_isolated folders.

Each install_isolated folder from a given virtual machine workspace is copied to the Nao corresponding workspace.

Preparation of virtual machine

Required system on virtual machine: Gentoo (the same as on Nao robot!)

The virtual machine is required for development, compilation and installation of Core and Dynamic Agents for Nao robot. For this reason it depends on many different libraries and tools that must be installed beforehand. The following tutorials explain how to prepare your own virtual machine.

Preparation of NAO robot

Required system on Nao robot: Aldebaran RT (based on Gentoo)

After preparation of the OpenNAO Virtual Machine you must perform analogous operations of the NAO robot itself. The following tutorials explain how to do it.

3. Running the RAPP system

As the RAPP system is a multi-agent distributed system, it is required to start its subsystems/agents in a proper order. Please follow the tutorials below in order to compile, upload and run Core, prepare your PC to work as a local RApp rapository and, finally, how to execute dynamic agent (RApps).

Preparation of core agent

Running core agent on NAO

Preparation of Dynamic Agents

Preparation of PC to work as a Repository

Required system: Ubuntu 14.04

The RApps (Dynamic Agents) can be downloaded from the RAPP store (a_rep) or from your own PC emulating the RAPP store. In order to emulate the RAPP store you must install the several required libraries, set up the HOP server and copy generater eariler hz packages from virtual machine to the right directory on PC. The following tutorials describe how to prepare your PC to work as RAPP repository.

Running RApps (dynamic agents)

  • Running dynamic agents - this tutorial explains how to activate RApp (execute one of the hz packages uploaded to the repository).

4. Development of new RApps

The dynamic agent is implemented with the use of API provided by RAPP core developers.

Clone this wiki locally