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

PoseSensor semantic component #1775

Merged
merged 2 commits into from
Oct 9, 2024

Conversation

RobertWilbrandt
Copy link
Contributor

This PR implements a new semantic components for robots or sensors that can meassure a cartesian pose. I will add a PR for a pose_broadcaster controller using this to ros2_controllers shortly.

My use-case for this functionality is for robots that can provide their cartesian TCP pose in addition to their normal joint state (e.g. UR and Kuka arms). This can be more accurate than forward kinematics, as the robot can use its factory calibration for determining this pose. In the future, there could also be different kinds of sensors implementing this (e.g. mocap) to allow their data to be used in a controller.

I tried my best to keep the implementation close to the existing fts and imu components. The tests should also cover similar use, in particular loading of the controller and lifecycle transitions as well as verifying a published pose.

bmagyar
bmagyar previously approved these changes Oct 5, 2024
Copy link
Member

@bmagyar bmagyar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Grand! 👌

Copy link
Member

@saikishor saikishor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link

codecov bot commented Oct 5, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 87.26%. Comparing base (ce5c35a) to head (d1c5315).
Report is 10 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1775      +/-   ##
==========================================
+ Coverage   87.19%   87.26%   +0.07%     
==========================================
  Files         118      121       +3     
  Lines       11369    11429      +60     
  Branches     1049     1038      -11     
==========================================
+ Hits         9913     9974      +61     
  Misses       1094     1094              
+ Partials      362      361       -1     
Flag Coverage Δ
unittests 87.26% <100.00%> (+0.07%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
...erface/include/semantic_components/pose_sensor.hpp 100.00% <100.00%> (ø)
controller_interface/test/test_pose_sensor.cpp 100.00% <100.00%> (ø)
controller_interface/test/test_pose_sensor.hpp 100.00% <100.00%> (ø)

... and 1 file with indirect coverage changes

Copy link
Contributor

@christophfroehlich christophfroehlich left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but please have a look at the failing precommit job.

@RobertWilbrandt
Copy link
Contributor Author

Thanks for the fast review! The pre-commit errors should be fixed now.

Copy link
Member

@saikishor saikishor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you please add this to the release_notes document?

bmagyar
bmagyar previously approved these changes Oct 7, 2024
@RobertWilbrandt
Copy link
Contributor Author

Sure, i added a line to release_notes.rst

Copy link
Member

@saikishor saikishor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@bmagyar bmagyar merged commit 8cdded3 into ros-controls:master Oct 9, 2024
19 of 21 checks passed
@bmagyar bmagyar added backport-humble This label should be used by maintaines only! Label triggers PR backport to ROS2 humble. backport-iron This label should be used by maintaines only! Label triggers PR backport to ROS2 Iron. labels Oct 9, 2024
mergify bot pushed a commit that referenced this pull request Oct 9, 2024
(cherry picked from commit 8cdded3)

# Conflicts:
#	controller_interface/CMakeLists.txt
#	controller_interface/package.xml
#	doc/release_notes.rst
mergify bot pushed a commit that referenced this pull request Oct 9, 2024
(cherry picked from commit 8cdded3)

# Conflicts:
#	doc/release_notes.rst
christophfroehlich pushed a commit that referenced this pull request Oct 9, 2024
bmagyar pushed a commit that referenced this pull request Oct 10, 2024
bmagyar pushed a commit that referenced this pull request Oct 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-humble This label should be used by maintaines only! Label triggers PR backport to ROS2 humble. backport-iron This label should be used by maintaines only! Label triggers PR backport to ROS2 Iron.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants