-
Notifications
You must be signed in to change notification settings - Fork 20
Home
##1. RAPP Ecosystem
RAPP provides a robot agnostic approach by introducing a middleware stack with added functionalities suitable for different kinds of robots. In this way, developers will be able to utilize a common API (RAPP Robot API) in order to access the robot’s sensors and actuators. A number of high level services and functionalities for implementing RApps are also offered by the RAPP Platform and are accessible through the RAPP Platform API. The RAPP Platform offers a cloud-based solution that lifts the underlying robotic hardware computational and storage limitations and enables advanced machine learning operations, distributed data collection and processing, as well as knowledge sharing among robots. The developed RApps are hosted in the proposed RAPP Store, which is ultimately expected to have an important effect in the robotic application market. The adoption of a common API will provide developers with the versatility needed to address people with different needs, capabilities and expectations, while simultaneously respecting their privacy and autonomy.
##2. Get involved!
There are three levels of technical involvement in RAPP:
- Create robotic applications for a robot already supported by RAPP Ecosystem by using the RAPP Platform API and the RAPP Robot API
- Enrich the RAPP Platform by introducing new off-the-shelve robotic-oriented functionalities
- Support a new robot in the RAPP Ecosystem
Below, the necessary documentation, tutorials and examples for each of the involvement levels are presented.
##3. Robotic Applications (RApps) development
There are three concepts involved with the creation of robotic applications:
- Create a stand-alone application to manipulate the robot
- Create an application that uses RAPP Platform web services
- Upload and distribute your application
For all the above cases you must have a robot supported by RAPP, either in its physical form or in simulation. Right now, the only consumer robot supported is NAO, by SoftBank robotics.
In order to test the created applications in your robot, specialized software must be installed first, called the Core Agent of each robot (for more information check the RAPP Architecture). You can find information on how to install this software, by following the below links:
- For NAO robot:
- If you want to create C++ RApps: NAO robot Core Agent
- If you want to create Python RApps you don't have to install a Core Agent, since NAOQi uptakes this task.
###3.1. How to... create stand-alone RApps
###3.2. How to... creating RApps that use RAPP Platform functionalities
###3.3. How to... upload and distribute your RApps.
##4. RAPP Platform enrichment
In order to enrich the RAPP Platform with new functionalities, you must gain knowledge on the overall RAPP Architecture. In order to do this visit the following link: RAPP Architecture & component diagram.
Furthermore, you must be aware of the RAPP Platform multithreading policy, since RAPP Platform is meant to be deployed in the cloud. You can find more information here: RAPP Multithreading issues.
##5. Supporting new robots in the RAPP Ecosystem
###RAPP Web services
###RAPP Nodes
- RAPP Application Authentication
- RAPP Audio Processing
- RAPP Cognitive Exercise
- RAPP Caffe Wrapper
- RAPP Email
- RAPP Face Detection
- RAPP Geolocator
- RAPP Hazard Detection
- RAPP Human Detection
- RAPP Knowrob wrapper
- RAPP MySQL wrapper
- RAPP News Explorer
- RAPP Path planner
- RAPP Platform (metapackage)
- RAPP Platform Launchers
- RAPP Platform ROS Communications
- RAPP QR Detection
- RAPP Speech Detection (Google API)
- RAPP Speech Detection (Sphinx4)
- RAPP Testing Tools
- RAPP Text-to-speech using Espeak & Mbrola
- RAPP Utilities
- RAPP Weather Reporter
####RAPP Nodes under development
- RAPP Object Recognition
- RAPP Face Recognition
###Tutorials / Q&A:
####General - Before the installation
####After the installation
- How can I set-up the RAPP Platform in my PC?
- How do I launch the RAPP Platform?
- How can I see that everything is working properly?
- Everything is set-up and working! What now?
- I do not want to install RAPP Platform. Is there an easier way to use it?
- I do not even want to try the easier way. Do you have something up and running to test?
####Ways to improve rapp-platform
- How can I contribute?
- How to create a new RAPP Platform ROS node?
- How to create a HOP service for a ROS service?
- How to write the API for a HOP service?
- How to call the HOP service I created?
- How to implement an integration test?
- Create and authenticate a new RAPP User
####Full tutorials
#####RAPP Platform
- A full RAPP Platform service creation example: Simple addition (easy)
- A full RAPP Platform service creation example: Simple addition & RAPP Platform service invocation & testing (advanced)
#####Robotic applications
- Remote application for NAO in Python: Move by speech (easy)
- In-robot application for NAO in Python: Move by speech (easy)
- Remote application for NAO in Python: Detect and track QR tags (normal)
- Remote application for NAO in Python: Use ROS & TLD tracker to approach arbitrary objects (hard)
- In-robot application for NAO in Python: Create a cognitive game (hard)
RAPP Project, http://rapp-project.eu/