Robot localization and mapping

I guys!

I’m working hard to implementing a new feature for the robot 4UDE!

In this setup I’m using Gazebo to simulate my robot and all sensors available, in particular my depth sensor ASUS xtion.

Today I solved an issue to emulate a laser scan with information from a depth sensor.

This is launch configuration for your real depth sensor. (Information obtained from turtlebot robot )

<node pkg=”nodelet” type=”nodelet” name=”depthimage_to_laserscan” args=”load depthimage_to_laserscan/DepthImageToLaserScanNodelet $(arg camera)/$(arg camera)_nodelet_manager”>
<!– Pixel rows to use to generate the laserscan. For each column, the scan will
return the minimum value for those pixels centered vertically in the image. –>
<param name=”scan_height” value=”7″/>
<param name=”output_frame_id” value=”/$(arg camera)_depth_frame”/>
<param name=”range_min” value=”0.45″/>
<remap from=”image” to=”$(arg camera)/$(arg depth)/image_raw”/>
<remap from=”scan” to=”$(arg scan_topic)”/>

<remap from=”$(arg camera)/image” to=”$(arg camera)/$(arg depth)/image_raw”/>
<remap from=”$(arg camera)/scan” to=”$(arg scan_topic)”/>
</node>

instead for Gazebo simulator version:

<node pkg=”nodelet” type=”nodelet” name=”laserscan_nodelet_manager” args=”manager”/>
<node pkg=”nodelet” type=”nodelet” name=”depthimage_to_laserscan”
args=”load depthimage_to_laserscan/DepthImageToLaserScanNodelet laserscan_nodelet_manager”>
<param name=”scan_height” value=”10″/>
<param name=”output_frame_id” value=”/$(arg camera)_depth_frame”/>
<param name=”range_min” value=”0.45″/>
<remap from=”image” to=”/$(arg camera)/depth/image_raw”/>
<remap from=”scan” to=”$(arg scan_topic)”/>
</node>

If you want transform a depth information in laser scan messages in a Gazebo simulation you must run the nodelet manager.

In my repository you can download the information about the configuration to run your emulation of laser scan from a rgbd sensor, ros_dude_gazebo

    

Copyright © 2015. All Rights Reserved.

Leave a Reply