This ROS stack provides a collection of communication tools that allow for advanced topic interactions and other functionalities within the ROS ecosystem.
The ros_comm_tools
stack currently comprises the following package(s):
- add_topic_tools:
- Nodes:
- Triggered Publisher: Subscribe to a topic and republish its content to another topic upon a user-defined trigger, such as pressing a button.
- Nodes:
More packages and nodes will be added to this stack in the future to further enhance its capabilities.
- Triggered Republishing: As part of the
add_topic_tools
package, you can use theTriggered Publisher
node to subscribe to asensor_msgs/Image
topic and republish its content based on manual keyboard triggers.
- ROS Noetic (though it might work with other ROS versions, it's only been tested on Noetic)
-
Clone this package into your catkin workspace's
src
directory.cd ~/your_catkin_workspace/src git clone https://github.com/SMRazaRizvi96/ros_comm_tools.git
-
Compile your catkin workspace.
cd ~/your_catkin_workspace catkin_make
-
Source your workspace's setup.bash:
source devel/setup.bash
-
Start the ROS core:
roscore
-
Run the
Triggered Publisher
node from theadd_topic_tools
package:rosrun add_topic_tools triggered_publisher.py
-
Follow the prompts to trigger republishing of messages.
The Triggered Publisher
node from the add_topic_tools
package supports the following ROS parameters:
~input_topic
: Name of the topic to subscribe to. Default:/camera/image_raw
~output_topic
: Name of the topic to publish messages to. Default:/camera/image_raw
Parameters can be set via the command line using rosparam, through a ROS launch file, or as command line parameters when running the node through rosrun
.
Feel free to open issues or pull requests if you want to improve the package or add new functionalities.