Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add rosparam naming conventions [REP 146] #104

Closed
wants to merge 5 commits into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 72 additions & 0 deletions rep-0146.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
REP: 146
Title: ROS Robot Parameter Naming Convention
Author: Kei Okada <[email protected]>
Status: Draft
Type: Informational
Content-Type: text/x-rst
Created: 31-Jly-2015
Post-History:

Abstract
========

This REP aims to define best practices for robot-related ROS parameters
for use in robot-agnostic packages.


Motivation
==========

As the number of ROS-supported robots increases, we will write
robot-agnostic packages, but still they need robot-specific
information, such as calibration parameters.

The `robot_description` parameter is an example of a widely shared naming convention
among the ROS community. This REP proposes similar conventions for robot-specific information to be stored on the
parameter server, helping applications that use these parameters to more easily run on a greater range of platforms.

Specifications
==============

Parameters
----------

robot_description
'''''''''''''''''

`robot_description` stores robot kinematics / geometry information using
the URDF format.


robot_type
''''''''''
The `robot_type` should capture the name of the class of robot in a way that a user would understand the scope of the robot. If it's a commercial product it is recommended to use the production model name. For example 'pr2' in PR2 robot case [1], 'pepper' in Pepper robot case and 'fetch' in Fetch robot cases.


robot_name
''''''''''

`robot_name` stores the robot's unique name. It should be set to make sure that this robot instance is unique on the system, in same way that computers are recommended to have unique hostnames. For the case of PR2 robot, the default robot name is 'robot' [1], but other individuals have named 'james', 'gutsy' etc...


Examples
========


Example behaviors::

$ rosparam get robot_name
olive
$ rosparam get robot_type
pepper

References
==========

.. [1] PR2 robot.yaml
(https://github.com/pr2-debs/pr2-core/blob/master/root/etc/ros/robot.yaml)

Copyright
=========

This document has been placed in the public domain.