Coordinate Frames "Pushing Down" with transforms
@tfoote is already working on this.
Since Feb 6, 2019.
- Dominant language
- C++
- Stars
- 153
- Forks
- 256
- Avg merge
- 3d 23h
- Merged PRs (30d)
- 14
Description
Feature request
- transforms function the same way as namespaces, allowing for pushing down of frame_ids
- loading in static_tf_params from a yaml file not directly from a launch file
Feature description
With ROS 1.0 namespaces you could "push down" different nodes into unique namespaces so that you could have multiple of the same-named nodes in different namespaces (i.e. /left_arm/hand, /right_arm/hand).
This concept is addressed in the tf2/CommonQuestions page however I don't necessarily agree with the argument here.
When creating a static transform structure for robot A, and you want to create another instance of that same robot but call it robot B - with the current naming structure you are required to rename every single coordinate frame and make it unique instead of just changing the name to robot_B. Why cant we use by default the same structure of pushing down like we do with namespaces?
Also, if we could add a feature to static_tf_params.cpp to load in the xyzrpy values from a yaml it would help a lot too I think. I've had a modified version of static_tf_params.cpp for the last year and it has helped standardize my tf structure and launch files - allowing me to use the same launch file for many different robots.
Implementation considerations
- follow the same structure as ros namespaces, just for the frame_id by default use the full namespace name
- add in functionality to static_tf_params.cpp file to load in the xyzrpy values from the parameter server....letting users load in a yaml file at launch to the parameter server using rosparam load
┆Issue is synchronized with this Asana task
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.