This is an old revision of the document!
Using ROS through the HAL
EEROS can communicate with ROS through the HAL, see Interfacing with ROS.
In the EEROS library you will find a directory with examples. For this example see RosTest2.cpp.
Open a shell and run roscore
. Open another shell in the build directory of your EEROS library and run
$ sudo -E examples/ros/rosTest2 -c RosTest2Config.json
Publishing
This example runs your EEROS application as a ROS node under the name /eerosNode. It publishes three topics
- /test/val (of type double)
- /test/state (of type boolean)
Use the same tools as in Control System Talking to ROS to show nodes, topics and messages.
Subscribing
Open another shell in the build directory of your EEROS library and run rosNodeTalker
. This is not a EEROS program but simply starts a ROS node which publishes a couple of test topics. As soon as rosNodeTalker
runs, your example application will receive the two topics
- /rosNodeTalker/val (of type double)
- /rosNodeTalker/state (of type boolean)
and logs its transported message values into the console. Use
$ rqt_graph
to show a graph with all involved nodes together with their topics.
Another Example
There is another example, RosExample with HalConfigRos.json. It demonstrates the use of more message types. However, the example was never stripped of unnecessary bits.