Show EOL distros:
- diamondback: Only showing information from the released package extracted on Unknown. No API documentation available. Please see this page for information on how to submit your repository to our index.
- electric: Documentation generated on March 01, 2013 at 05:03 PM
- fuerte: Documentation generated on January 14, 2013 at 02:04 PM
- groovy: Documentation generated on January 08, 2013 at 07:29 PM
- hydro: Documentation generated on August 27, 2015 at 02:38 PM (doc job).
- indigo: Documentation generated on June 07, 2019 at 03:59 AM (doc job).
- jade: Documentation generated on February 12, 2016 at 12:03 AM (doc job).
- kinetic: Documentation generated on March 22, 2021 at 10:17 AM (doc job).
- lunar: Documentation generated on February 11, 2019 at 11:40 AM (doc job).
- melodic: Documentation generated on March 01, 2022 at 07:19 AM (doc job).
- noetic: Documentation generated on January 08, 2024 at 11:18 AM (doc job).
Package Summary
This package contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior. The tools currently only provides the realtime publisher, which makes it possible to publish messages to a ROS topic from a realtime thread. We plan to add a basic implementation of a realtime buffer, to make it possible to get data from a (non-realtime) topic callback into tha realtime loop. Once the lockfree buffer is created, the realtime publisher will start using it, which will result in major API changes for the realtime publisher (removal of all lock methods).
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Repository: pr2-ros-pkg
- Source: hg https://kforge.ros.org/pr2mechanism/hg
Used by (16)
- amigo_gazebo
- ee_cart_imped_contro...
- ethercat_hardware
- ethercat_trigger_con...
- ias_mechanism_contro...
- joint_qualification_...
- netft_ethercat_hardw...
- pr2_calibration_cont...
- pr2_controller_manag...
- pr2_dremel_arm_contr...
- pr2_etherCAT
- pr2_gripper_sensor_c...
- pr2_manipulation_con...
- pr2_mechanism_contro...
- robot_mechanism_cont...
- sr_mechanism_control...
Package Summary
This package contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior. The tools currently only provides the realtime publisher, which makes it possible to publish messages to a ROS topic from a realtime thread. We plan to add a basic implementation of a realtime buffer, to make it possible to get data from a (non-realtime) topic callback into tha realtime loop. Once the lockfree buffer is created, the realtime publisher will start using it, which will result in major API changes for the realtime publisher (removal of all lock methods).
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Source: hg https://kforge.ros.org/pr2mechanism/hg (branch: pr2_mechanism-1.5)
Used by (16)
- ethercat_hardware
- ethercat_trigger_con...
- joint_qualification_...
- netft_ethercat_hardw...
- pr2_calibration_cont...
- pr2_controller_manag...
- pr2_etherCAT
- pr2_gripper_sensor_c...
- pr2_manipulation_con...
- pr2_mechanism_contro...
- r2_controllers_gazeb...
- robot_mechanism_cont...
- sr_mechanism_control...
- sr_robot_lib
- teleop_controllers
- tff_controller
Package Summary
This package contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior. The tools currently only provides the realtime publisher, which makes it possible to publish messages to a ROS topic from a realtime thread. We plan to add a basic implementation of a realtime buffer, to make it possible to get data from a (non-realtime) topic callback into tha realtime loop. Once the lockfree buffer is created, the realtime publisher will start using it, which will result in major API changes for the realtime publisher (removal of all lock methods).
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Source: hg https://kforge.ros.org/pr2mechanism/hg (branch: default)
Package Summary
This package contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior. The tools currently only provides the realtime publisher, which makes it possible to publish messages to a ROS topic from a realtime thread. We plan to add a basic implementation of a realtime buffer, to make it possible to get data from a (non-realtime) topic callback into tha realtime loop. Once the lockfree buffer is created, the realtime publisher will start using it, which will result in major API changes for the realtime publisher (removal of all lock methods).
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Source: hg https://kforge.ros.org/pr2mechanism/hg (branch: default)
Used by (28)
- control_toolbox
- controller_manager
- diff_drive_controlle...
- effort_controllers
- ethercat_hardware
- ethercat_trigger_con...
- force_torque_sensor_...
- gripper_action_contr...
- imu_sensor_controlle...
- joint_qualification_...
- joint_state_controll...
- joint_trajectory_con...
- open_controllers_int...
- pr2_calibration_cont...
- pr2_controller_manag...
- pr2_ethercat
- pr2_gripper_sensor_c...
- pr2_mechanism_contro...
- robot_mechanism_cont...
- ros_control
- ros_ethercat_hardwar...
- ros_ethercat_loop
- sr_mechanism_control...
- sr_robot_lib
- sr_ronex_drivers
- sr_ronex_examples
- steered_wheel_base_c...
- tedusar_cartesian_co...
Package Summary
This package contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior. The tools currently only provides the realtime publisher, which makes it possible to publish messages to a ROS topic from a realtime thread. We plan to add a basic implementation of a realtime buffer, to make it possible to get data from a (non-realtime) topic callback into the realtime loop. Once the lockfree buffer is created, the realtime publisher will start using it, which will result in major API changes for the realtime publisher (removal of all lock methods).
- Maintainer status: maintained
- Maintainer: Stuart Glaser <sglaser AT willowgarage DOT com>
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Source: git https://github.com/ros-controls/realtime_tools.git (branch: hydro-devel)
Used by (48)
- ackermann_controller...
- ati_force_torque
- cob_omni_drive_contr...
- control_toolbox
- controller_manager
- diff_drive_controlle...
- effort_controllers
- ethercat_hardware
- ethercat_trigger_con...
- evarobot_controller
- evarobot_minimu9
- evarobot_odometry
- force_torque_sensor_...
- forward_command_cont...
- four_wheel_steering_...
- generic_control_tool...
- gripper_action_contr...
- imu_sensor_controlle...
- jackal_base
- joint_qualification_...
- joint_state_controll...
- joint_trajectory_con...
- kuka_rsi_hw_interfac...
- minas_control
- mrp2_hardware
- open_controllers_int...
- pr2_calibration_cont...
- pr2_controller_manag...
- pr2_ethercat
- pr2_gripper_sensor_c...
- pr2_mechanism_contro...
- ridgeback_base
- ridgeback_control
- robot_mechanism_cont...
- robotican_controller...
- ros_control
- ros_ethercat_hardwar...
- ros_ethercat_loop
- ros_ethercat_model
- sr_robot_lib
- sr_ronex_drivers
- sr_ronex_examples
- sr_tactile_sensor_co...
- steer_drive_controll...
- ur_modern_driver
- velocity_controllers...
- yumi_hw
- yumi_test_controller...
Package Summary
Contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior. The tools currently only provides the realtime publisher, which makes it possible to publish messages to a ROS topic from a realtime thread. We plan to add a basic implementation of a realtime buffer, to make it possible to get data from a (non-realtime) topic callback into the realtime loop. Once the lockfree buffer is created, the realtime publisher will start using it, which will result in major API changes for the realtime publisher (removal of all lock methods).
- Maintainer status: maintained
- Maintainer: Stuart Glaser <sglaser AT willowgarage DOT com>
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/ros-controls/realtime_tools/issues
- Source: git https://github.com/ros-controls/realtime_tools.git (branch: indigo-devel)
Package Summary
Contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior. The tools currently only provides the realtime publisher, which makes it possible to publish messages to a ROS topic from a realtime thread. We plan to add a basic implementation of a realtime buffer, to make it possible to get data from a (non-realtime) topic callback into the realtime loop. Once the lockfree buffer is created, the realtime publisher will start using it, which will result in major API changes for the realtime publisher (removal of all lock methods).
- Maintainer status: maintained
- Maintainer: Stuart Glaser <sglaser AT willowgarage DOT com>
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/ros-controls/realtime_tools/issues
- Source: git https://github.com/ros-controls/realtime_tools.git (branch: indigo-devel)
Used by (41)
- ackermann_controller...
- ackermann_steering_c...
- ati_force_torque
- cob_omni_drive_contr...
- cob_tricycle_control...
- control_toolbox
- diff_drive_controlle...
- effort_controllers
- ethercat_hardware
- ethercat_trigger_con...
- force_torque_sensor
- force_torque_sensor_...
- forward_command_cont...
- four_wheel_steering_...
- franka_control
- franka_example_contr...
- generic_control_tool...
- gripper_action_contr...
- imu_sensor_controlle...
- industrial_robot_sta...
- joint_qualification_...
- joint_state_controll...
- joint_trajectory_con...
- khi_robot_control
- kuka_rsi_hw_interfac...
- minas_control
- moose_control
- noid_ros_controller
- pr2_calibration_cont...
- pr2_controller_manag...
- pr2_ethercat
- pr2_gripper_sensor_c...
- pr2_mechanism_contro...
- ridgeback_control
- robot_mechanism_cont...
- ros_control
- seed_r7_ros_controll...
- sr_mechanism_control...
- sr_robot_lib
- sr_tactile_sensor_co...
- velocity_controllers...
Package Summary
Contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior. The tools currently only provides the realtime publisher, which makes it possible to publish messages to a ROS topic from a realtime thread. We plan to add a basic implementation of a realtime buffer, to make it possible to get data from a (non-realtime) topic callback into the realtime loop. Once the lockfree buffer is created, the realtime publisher will start using it, which will result in major API changes for the realtime publisher (removal of all lock methods).
- Maintainer status: maintained
- Maintainer: Bence Magyar <bence.magyar.robotics AT gmail DOT com>, Gennaro Raiola <gennaro.raiola AT iit DOT it>
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/ros-controls/realtime_tools/issues
- Source: git https://github.com/ros-controls/realtime_tools.git (branch: kinetic-devel)
Used by (20)
- ackermann_steering_c...
- control_toolbox
- diff_drive_controlle...
- effort_controllers
- ethercat_hardware
- ethercat_trigger_con...
- force_torque_sensor_...
- forward_command_cont...
- four_wheel_steering_...
- generic_control_tool...
- gripper_action_contr...
- imu_sensor_controlle...
- joint_state_controll...
- joint_trajectory_con...
- pr2_calibration_cont...
- pr2_controller_manag...
- pr2_mechanism_contro...
- robot_mechanism_cont...
- ros_control
- velocity_controllers...
Package Summary
Contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior. The tools currently only provides the realtime publisher, which makes it possible to publish messages to a ROS topic from a realtime thread. We plan to add a basic implementation of a realtime buffer, to make it possible to get data from a (non-realtime) topic callback into the realtime loop. Once the lockfree buffer is created, the realtime publisher will start using it, which will result in major API changes for the realtime publisher (removal of all lock methods).
- Maintainer status: maintained
- Maintainer: Bence Magyar <bence.magyar.robotics AT gmail DOT com>, Gennaro Raiola <gennaro.raiola AT iit DOT it>
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/ros-controls/realtime_tools/issues
- Source: git https://github.com/ros-controls/realtime_tools.git (branch: kinetic-devel)
Used by (39)
- ackermann_steering_c...
- ati_force_torque
- cob_omni_drive_contr...
- cob_tricycle_control...
- control_toolbox
- diff_drive_controlle...
- effort_controllers
- ethercat_hardware
- ethercat_trigger_con...
- force_torque_sensor
- force_torque_sensor_...
- forward_command_cont...
- four_wheel_steering_...
- franka_control
- franka_example_contr...
- generic_control_tool...
- gripper_action_contr...
- imu_sensor_controlle...
- industrial_robot_sta...
- joint_qualification_...
- joint_state_controll...
- joint_trajectory_con...
- khi_robot_control
- moose_control
- mrp2_hardware
- pr2_calibration_cont...
- pr2_controller_manag...
- pr2_ethercat
- pr2_gripper_sensor_c...
- pr2_mechanism_contro...
- ridgeback_control
- robot_mechanism_cont...
- ros_control
- seed_r7_ros_controll...
- sr_mechanism_control...
- sr_robot_lib
- sr_tactile_sensor_co...
- ur_controllers
- velocity_controllers...
Package Summary
Contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior.
- Maintainer status: maintained
- Maintainer: Bence Magyar <bence.magyar.robotics AT gmail DOT com>, Gennaro Raiola <gennaro.raiola AT iit DOT it>
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/ros-controls/realtime_tools/issues
- Source: git https://github.com/ros-controls/realtime_tools.git (branch: melodic-devel)
Used by (39)
- ackermann_steering_c...
- cob_omni_drive_contr...
- cob_tricycle_control...
- control_toolbox
- diff_drive_controlle...
- effort_controllers
- ethercat_hardware
- ethercat_trigger_con...
- force_torque_sensor_...
- forward_command_cont...
- four_wheel_steering_...
- franka_control
- franka_example_contr...
- gpio_controller
- gripper_action_contr...
- imu_filter_controlle...
- imu_sensor_controlle...
- industrial_robot_sta...
- joint_state_controll...
- joint_trajectory_con...
- khi_robot_control
- pr2_calibration_cont...
- pr2_controller_manag...
- pr2_ethercat
- pr2_gripper_sensor_c...
- pr2_mechanism_contro...
- quori_holonomic_driv...
- ridgeback_control
- rm_common
- rm_hw
- robot_mechanism_cont...
- robot_state_controll...
- ros_control
- scaled_joint_traject...
- speed_scaling_state_...
- tof_radar_controller...
- tof_sensor_controlle...
- twist_controller
- velocity_controllers...
Package Summary
Contains a set of tools that can be used from a hard realtime thread, without breaking the realtime behavior.
- Maintainer status: maintained
- Maintainer: Bence Magyar <bence.magyar.robotics AT gmail DOT com>, Gennaro Raiola <gennaro.raiola AT iit DOT it>
- Author: Stuart Glaser <sglaser AT willowgarage DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/ros-controls/realtime_tools/issues
- Source: git https://github.com/ros-controls/realtime_tools.git (branch: noetic-devel)
Realtime Publisher
The realtime_tools::RealtimePublisher allows users that write C++ realtime controllers to publish messages on a ROS topic from a hard realtime loop. The normal ROS publisher is not realtime safe, and should not be used from within the update loop of a realtime controller. The realtime publisher is a wrapper around the ROS publisher; the wrapper creates an extra non-realtime thread that publishes messages on a ROS topic. The example below shows a typical usage of the realtime publisher in the init() and update() methods of a realtime controller:
1 #include <realtime_tools/realtime_publisher.h>
2
3 bool MyController::init(pr2_mechanism_model::RobotState *robot,
4 ros::NodeHandle &n)
5 {
6 ...
7
8 realtime_pub = new
9 realtime_tools::RealtimePublisher<mgs_type>(n, "topic", 4);
10 return true;
11 }
12
13
14 void MyController::update()
15 {
16 if (realtime_pub->trylock()){
17 realtime_pub->msg_.a_field = "hallo";
18 realtime_pub->msg_.header.stamp = ros::Time::now();
19 realtime_pub->unlockAndPublish();
20 }
21 ...
22 }