Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement new PoseBroadcaster controller (backport #1311) #1326

Open
wants to merge 3 commits into
base: humble
Choose a base branch
from

Conversation

mergify[bot]
Copy link
Contributor

@mergify mergify bot commented Oct 29, 2024

This PR implements a new broadcasting controller based on the PoseSensor semantic component introduced in ros-controls/ros2_control#1775.

As described in the PoseSensor PR, my primary use-case for this is the publishing of tcp poses from robot arms. This can be more accurate than calculating forward kinematics, as robot calibrations etc. can be considered by the robot. Settings on the robot side concerning tool offsets etc. can also be included by this (at least for UR and kuka RSI). The ROS 1 ur_robot_driver used to publish this transform directly from within the hardware interface, but in ROS 2 there is not yet a standard way for providing this information. A PR for the UR ROS 2 driver already exists at UniversalRobots/Universal_Robots_ROS2_Driver#1108.

This controller publishes poses directly as geometry_msgs::msg::PoseStampeds and as tf transforms (can be disabled).


This is an automatic backport of pull request #1311 done by Mergify.

(cherry picked from commit 7c89c17)

# Conflicts:
#	doc/controllers_index.rst
@mergify mergify bot added the conflicts label Oct 29, 2024
Copy link
Contributor Author

mergify bot commented Oct 29, 2024

Cherry-pick of 7c89c17 has failed:

On branch mergify/bp/humble/pr-1311
Your branch is up to date with 'origin/humble'.

You are currently cherry-picking commit 7c89c17.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	new file:   pose_broadcaster/CMakeLists.txt
	new file:   pose_broadcaster/README.md
	new file:   pose_broadcaster/doc/userdoc.rst
	new file:   pose_broadcaster/include/pose_broadcaster/pose_broadcaster.hpp
	new file:   pose_broadcaster/include/pose_broadcaster/visibility_control.h
	new file:   pose_broadcaster/package.xml
	new file:   pose_broadcaster/pose_broadcaster.xml
	new file:   pose_broadcaster/src/pose_broadcaster.cpp
	new file:   pose_broadcaster/src/pose_broadcaster_parameters.yaml
	new file:   pose_broadcaster/test/pose_broadcaster_params.yaml
	new file:   pose_broadcaster/test/test_load_pose_broadcaster.cpp
	new file:   pose_broadcaster/test/test_pose_broadcaster.cpp
	new file:   pose_broadcaster/test/test_pose_broadcaster.hpp

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   doc/controllers_index.rst

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

@christophfroehlich
Copy link
Contributor

this fails because of API breaks in rolling, I haven't had time to fix that

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants