Skip to content

How to create a new RAPP Platform ROS node?

Manos Tsardoulias edited this page Nov 27, 2015 · 2 revisions

In order to create a new functionality in the RAPP Platform, usually a new ROS package needs to be created. Some general guidelines follow:

  • Rename the package to a specific name that shows what it does (beginning with rapp_). Split in multiple packages if necessary.
  • Move the srv files in rapp_platform_ros_communications (in a new subfolder) and declare the correct dependencies in the package's CMakeLists.txt and package.xml. Do not forget to give an intuitive name at your service
  • The ROS package should have the following folders and files:
  • cfg: Contains configuration files
  • launch: Contains the ROS package's launchers
  • src: Contains the source files (either C++ or Python)
  • tests: Contains the unit and functional tests (the folder's name must be tests!)
  • README.md: Contains the same information to the RAPP Platform wiki corresponding page
  • setup.py: If you have a python node this file should exist. Also a __init__.py file should exist in the src folder in order to create functional tests.
  • Rename the srv file and the service topic to comply with the rest of the platform
  • Rename the launch file to comply with the rest of the platform
  • Call the launch file from rapp_platform_launch.launch in the rapp_platform_launchers package, in order to be spawned with everything else
  • Add unit / functional tests
  • Add Doxygen documentation in your code
  • Add a description of your package here: https://github.com/rapp-project/rapp-platform/wiki
  • Create a README.md in the ROS package with the same information as in the wiki registration
Clone this wiki locally