Rosanswers logo

I am in the process of configuring the navigation stack and for the common configuration yaml file, i don't exactly know what i should put for the frame name of the laser scanner. I am currently using the sick_tim310 laser range finder. Contacted the guys who made the driver for ros and they said to come here.

-------------------------------- common_configuration.yaml ----------------------

obstacle_range: 2.5
raytrace_range: 3.0
footprint: [[x0, y0], [x1, y1], ... [xn, yn]]
#robot_radius: ir_of_robot
inflation_radius: 0.55

observation_sources: laser_scan_sensor point_cloud_sensor

laser_scan_sensor: {sensor_frame: FRAME_NAME, data_type: LaserScan, topic: topic_name, marking: true, clearing: true}

point_cloud_sensor: {sensor_frame: frame_name, data_type: PointCloud, topic: topic_name, marking: true, clearing: true}

would the FRAME_NAME be sick_tim310 ? this is the only thing i could imagine it to be. I looked if in the source there was anything specifying the frame name, and the only thing i found was a published frame id that was set to the message header. I don't believe that is what i am looking for.

from my understanding and previous encounterments (for example in setting up the transform) the [child] frame_id i specified for our laser relative to the robots center [base_link] "base_laser" I'm a little confused still by the difference between the frame_id and frame_name.

EDIT: If you are using the sick_tim3xx ros package, the then sensor_frame is laser. If you are using a different laser scanner, just go look through the code of the package, and where ever the node is assigned values to the sensor_msgs/LaserScan message, look for what is being assigned to laser.header.frame_id, and whatever is set there (say 'laser'), then put {sensor_frame: laser, .....} in the common_configuration.yaml file.

Originally posted by l0g1x on ROS Answers with karma: 1526 on 2014-03-05

Post score: 1

Original comments

Comment by l0g1x on 2014-08-07:
Someone correct me if im wrong. According to @ahendrix 's answer, it seems that it MIGHT be what the frame_id is for the transform publisher which broadcasts a transform from your laser to your base_link.


1 Answer 1


Rosanswers logo

In general, frame_id and frame_name are the same thing.

You should use the header frame_id from your laser as the sensor_frame when configuring the costmaps.

Originally posted by ahendrix with karma: 47576 on 2014-03-05

This answer was ACCEPTED on the original site

Post score: 2

Original comments

Comment by l0g1x on 2014-03-05:
well in the transform i set the frame_id to base_laser. is that what it is? or do i need to look in the source code of the driver I'm using?

Comment by ahendrix on 2014-03-06:
base_laser sounds like the right frame name for your application.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.