Custom ROS 2 message, service, and action definitions for HEBI Robotics platforms.
This package provides ROS 2 interface definitions for HEBI-specific communications, including messages for robotic arm control, mobile base control (including the Tready platform), and Mobile IO device integration.
Version: 1.0.0 License: Apache License 2.0 Maintainers: Chris Bollinger, Hariharan Ravichandran
-
SE3Jog.msg - SE3 space jogging commands
- Linear displacement:
dx,dy,dz(meters) - Angular displacement:
droll,dpitch,dyaw(radians) - Duration: Command execution time
- Includes header for timestamping
- Linear displacement:
-
SE3Trajectory.msg - SE3 trajectory command
- Array of
SE3TrajectoryPointwaypoints - Includes header for timestamping
- Array of
-
SE3TrajectoryPoint.msg - Individual SE3 trajectory waypoint
- Position:
x,y,z(meters) - Orientation:
roll,pitch,yaw(radians) - Gripper state: 0.0 (open) to 1.0 (closed)
- Time from start
- Position:
-
TreadedBaseState.msg - State information for treaded base platforms
- State codes:
0: STARTUP1: HOMING2: ALIGNING3: TELEOP4: EMERGENCY_STOP5: EXIT
- Status flags:
flipper_trajectory_active,base_trajectory_active,stable_mode,mstop_pressed - String message field
- State codes:
-
TreadyFlipperVelocityCommand.msg - Individual flipper velocity control
front_left,front_right,back_left,back_right(m/s)
-
TreadyTorqueModeCommand.msg - Torque mode parameters for balance control
torque_max: Maximum torque (up to 25 N-m)torque_angle: Angle between 0 and π/2roll_adjust,pitch_adjust: Adjustment values (0.0 to 1.0)
- MobileInput.msg - Mobile IO device input
button_states: Current state of all buttonsaxis_states: Current state of all axesbutton_diffs: Button state changes
-
SetPluginEnabled.srv - Enable/disable runtime plugins
- Request:
plugin_name(string),enabled(bool) - Response:
success(bool),message(string)
- Request:
-
SetLayoutFile.srv - Set UI layout from file
- Request:
layout_file_name(string),layout_package_name(string) - Response:
success(bool)
- Request:
-
SetLayoutJSON.srv - Set UI layout from JSON string
- Request:
layout_json(string) - Response:
success(bool)
- Request:
-
ArmJointMotion.action - Joint space arm motion
- Goal: Joint trajectory waypoints, optional timing and LED color
- Result: Success status
- Feedback: Percent complete (0.0 to 1.0)
-
ArmSE3Motion.action - SE3 space arm motion
- Goal: SE3 trajectory waypoints, optional timing and LED color
- Result: Success status
- Feedback: Percent complete (0.0 to 1.0)
-
BaseMotion.action - Mobile base motion
- Goal: Relative position (
x,y,theta), optional LED color - Result: Success status
- Feedback: Percent complete (0.0 to 1.0)
- Goal: Relative position (
This package is automatically built as part of the HEBI ROS 2 workspace:
cd ~/hebi_ws
colcon build --packages-select hebi_msgs
source install/setup.bash#include "hebi_msgs/msg/se3_jog.hpp"
#include "hebi_msgs/srv/set_plugin_enabled.hpp"
#include "hebi_msgs/action/arm_joint_motion.hpp"
// Example usage
auto jog_msg = hebi_msgs::msg::SE3Jog();
jog_msg.dx = 0.1;
jog_msg.dy = 0.0;
jog_msg.dz = 0.05;
jog_msg.duration = 1.0;from hebi_msgs.msg import SE3Jog, TreadedBaseState
from hebi_msgs.srv import SetPluginEnabled
from hebi_msgs.action import ArmJointMotion
# Example usage
jog_msg = SE3Jog()
jog_msg.dx = 0.1
jog_msg.dy = 0.0
jog_msg.dz = 0.05
jog_msg.duration = 1.0geometry_msgs- Standard geometry messagestrajectory_msgs- Standard trajectory messagesaction_msgs- Standard action interfacesrosidl_default_generators- Message generation (build-time)rosidl_default_runtime- Message runtime (execution-time)
- hebi_ros2_examples - Example nodes using these messages
- hebi_description - Robot descriptions
- hebi_bringup - Launch configurations
- hebi_hardware - ROS 2 Control hardware interface
- HEBI Documentation: https://docs.hebi.us
- Support: support@hebirobotics.com
- Forums: https://forum.hebi.us
When adding new message definitions:
- Create the
.msg,.srv, or.actionfile in the appropriate directory - Add the filename to CMakeLists.txt in the corresponding
rosidl_generate_interfaces()section - Rebuild the package:
colcon build --packages-select hebi_msgs - Update this README with the new interface documentation
This package is released under the Apache License 2.0. See LICENSE file for details.