ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
You can use static_transform_publisher to create a link between /world
frame and whatever you need.
To make it easier to understand interconnections between frames use
$ rosrun tf2_visualization frame_viewer.py
It will produce a graph with all available frames and their links.
2 | No.2 Revision |
You can use static_transform_publisher to create a link between /world
frame and whatever you need.
To make it easier to understand interconnections between frames use
$ rosrun tf2_visualization frame_viewer.py
It will produce a graph with all available frames and their links.
EDIT #1:
Run above mentioned command in terminal and check if there any disconnected nodes (single or a group) on the graph.
3 | No.3 Revision |
You can use static_transform_publisher to create a link between /world
frame and whatever you need.
To make it easier to understand interconnections between frames use
$ rosrun tf2_visualization frame_viewer.py
It will produce a graph with all available frames and their links.
EDIT #1:
Run above mentioned command in terminal and check if there any disconnected nodes (single or a group) on the graph.
EDIT #2:
Run the following on terminal but substitute <point_cloud_topic>
with appropriate topic name:
$ rostopic echo -n 1 <point_cloud_topic>/header/frame_id
Use frame ID from output of this command to create a new tf
frame linked to /odom
:
$ rosrun tf static_transform_publisher 0 0 0 0 0 0 /odom <point_cloud_frame_id> 100
This command will add your Kinect frame as a child to /odom
frame and will publish it every 100ms
.
You might need to substitute zeros there with appropriate XYZ displacement and RPY orientation. See static_tranform_publisher
documentation for more details (link provided at the beginning of the answer).
If you run frame_viewer.py
after that you should see three nodes connected in line from /world
to /odom
to <point_cloud_frame_id>
.
4 | No.4 Revision |
You can use static_transform_publisher to create a link between /world
frame and whatever you need.
To make it easier to understand interconnections between frames use
$ rosrun tf2_visualization frame_viewer.py
It will produce a graph with all available frames and their links.
EDIT #1:
Run above mentioned command in terminal and check if there any disconnected nodes (single or a group) on the graph.
EDIT #2:
Run the following on terminal but substitute <point_cloud_topic>
with appropriate topic name:
$ rostopic echo -n 1 <point_cloud_topic>/header/frame_id
Use frame ID from output of this command to create a new tf
frame linked to /odom
:
$ rosrun tf static_transform_publisher 0 0 0 0 0 0 /odom <point_cloud_frame_id> 100
This command will add your Kinect frame as a child to /odom
frame and will publish it every 100ms
.
You might need to substitute zeros there with appropriate XYZ displacement and RPY orientation. See static_tranform_publisher
documentation for more details (link provided at the beginning of the answer).
If you run frame_viewer.py
after that you should see three nodes connected in line from /world
to /odom
to <point_cloud_frame_id>
.
EDIT #3:
Question about transformation of point cloud coordinates to fixed frame was already answered here.
5 | Fix: RPY -> YPR |
You can use static_transform_publisher to create a link between /world
frame and whatever you need.
To make it easier to understand interconnections between frames use
$ rosrun tf2_visualization frame_viewer.py
It will produce a graph with all available frames and their links.
EDIT #1:
Run above mentioned command in terminal and check if there any disconnected nodes (single or a group) on the graph.
EDIT #2:
Run the following on terminal but substitute <point_cloud_topic>
with appropriate topic name:
$ rostopic echo -n 1 <point_cloud_topic>/header/frame_id
Use frame ID from output of this command to create a new tf
frame linked to /odom
:
$ rosrun tf static_transform_publisher 0 0 0 0 0 0 /odom <point_cloud_frame_id> 100
This command will add your Kinect frame as a child to /odom
frame and will publish it every 100ms
.
You might need to substitute zeros there with appropriate XYZ displacement and RPY YPR orientation. See static_tranform_publisher
documentation for more details (link provided at the beginning of the answer).
If you run frame_viewer.py
after that you should see three nodes connected in line from /world
to /odom
to <point_cloud_frame_id>
.
EDIT #3:
Question about transformation of point cloud coordinates to fixed frame was already answered here.