[Documentation] [TitleIndex] [WordIndex

hebiros: hebiros_description | hebiros_basic_examples | hebiros_advanced_examples


NOTE: This package should not be used for new projects, and is maintained for legacy use only. If possible, use http://wiki.ros.org/hebi_cpp_api_examples instead

The HEBI ROS API is provided as source code that can be compiled into a node in a catkin workspace. We provide the hebiros node, as well as several example nodes to help you get started using the API.

Getting Started

Below, we show how to add the hebiros node to a new workspace, and run the provided examples.

Before continuing, remember to source your environment if you have not yet done so:

source /opt/ros/<distro>/setup.bash

(replace <distro> with kinetic, lunar, etc. as appropriate)

Creating a Workspace

First, you need to create a catkin workspace. The relevant commands are listed below; see http://wiki.ros.org/catkin/Tutorials/create_a_workspace for more information. If you already have a workspace you want to use, skip these commands.

# Create workspace
mkdir -p ~/hebi_ros_ws/src\
cd ~/hebi_ros_ws/
# Source workspace
source devel/setup.bash

Download and compile the HEBI node source code

Run the following commands from the root of your workspace to download the code from the HEBI github repo.

cd src
git clone git@github.com:HebiRobotics/hebi_cpp_api_ros.git
git clone https://github.com/HebiRobotics/HEBI-ROS.git hebiros
cd ..

Now, build the full package.


Running the examples

To run the numbered examples, first start roscore, and then run the following commands (in separate terminals)

rosrun hebiros hebiros_node


rosrun hebiros <example_name>

Note the examples assume hardcoded module name/families, and so will probably need to be changed for your particular system.



For data topics, data is arranged in arrays such that one index in each data array corresponds to one module. The order of data which corresponds to each module is based on the name array. Data arrays may not all have the same size and may be empty at minimum and the size of the group at maximum.


/hebiros/add_group_from_names (hebiros/AddGroupFromNamesSrv)

/hebiros/add_group_from_urdf (hebiros/AddGroupFromUrdfSrv)

/hebiros/entry_list (hebiros/EntryListSrv)

/hebiros/<group>/size (hebiros/SizeSrv)

/hebiros/<group>/set_command_lifetime (hebiros/SetCommandLifetimeSrv)

/hebiros/<group>/set_feedback_frequency (hebiros/SetFeedbackFrequencySrv)

Subscribed Topics

/hebiros/<group>/command (hebiros/CommandMsg)

/hebiros/<group>/command/joint_state (sensor_msgs/JointState)

Published Topics

/hebiros/<group>/feedback (hebiros/FeedbackMsg)

/hebiros/<group>/feedback/joint_state (sensor_msgs/JointState)


/hebiros/<group>/trajectory (hebiros/TrajectoryAction)


/hebiros/node_frequency (int, default: 200)

/hebiros/action_frequency (int, default: 200)

/hebiros/command_lifetime (int, default: 100)

/hebiros/feedback_frequency (int, default: 100)

2024-07-13 13:16