Skip to content
Zihan Chen edited this page Oct 27, 2016 · 7 revisions

Welcome to the cisst_ros_integration wiki!

About

cisst-ros is a ROS stack that provides a bridge for a cisst component to communicate with other ROS nodes. This tutorial covers build process, setup bridge and provides an example.

Dependencies

cisst_ros_bridge depends on CISST library.

Install

Check README.md in repository https://github.com/jhu-cisst/cisst-ros

Run Example

# start example
rosrun cisst_ros_bridge example_bridge 

This example publishes to /sawROSExample/get_value_1 and subscribes to /sawROSExample/set_value_1. In one terminal try echo the /sawROSExample/get_value_1 topic using rostopic echo /sawROSExample/get_value_1. Now open another terminal and type rostopic pub -1 /sawROSExample/set_value_1 std_msgs/Double 10 to change the value1 in the test component. At this time point, you should see the /sawROSExample/get_value_1 the Value1 has been set to 10.

Concept

A bridge class is both a mtsTaskPeriod component and a ROS node.

For a complete list of supported command see the next table:

Cisst ROS Function
ReadCommand Publisher AddPublisherFromReadCommand
EventVoid Publisher AddPublisherFromEventVoid
EventWrite Publisher AddPublisherFromEventWrite

Others

  • How to add cisst_msgs
  • How to add more data type

TODO

  • Update version number in all 3 packages and create a release, all development should be in devel branch
  • Add support for required interface
  • Pass a default rosData type, such that we can pass information like header.frame_id
Clone this wiki locally