Gazebo에서 velodyne 3d Lidar 써보기

2024. 12. 23. 09:59ROS2/기초

먼저 기존에 만들어 놓은 로봇의 xacro 파일에 링크와 조인트를 만들고 아래와 같은 gazebo 플러그인을 추가해주면 된다.

<gazebo reference="laser_link">
            <sensor type="gpu_ray" name="velodyne-VLP16">
                <visualize>true</visualize>
                <update_rate>10</update_rate>
                <ray>
                    <scan>
                        <horizontal>
                            <samples>440</samples>
                            <resolution>1</resolution>
                            <min_angle>-3.14159265</min_angle>
                            <max_angle>3.14159265</max_angle>
                        </horizontal>
                        <vertical>
                            <samples>16</samples>
                            <resolution>1</resolution>
                            <min_angle>-0.261799388</min_angle>
                            <max_angle> 0.261799388</max_angle>
                        </vertical>
                    </scan>
                    <range>
                        <min>0.3</min>
                        <max>131</max>
                        <resolution>0.001</resolution>
                    </range>
                    <noise>
                        <type>gaussian</type>
                        <mean>0.0</mean>
                        <stddev>0.0</stddev>
                    </noise>
                </ray>
            <plugin name="gazebo_ros_laser_controller" filename="libgazebo_ros_velodyne_laser.so">
                <ros>
                    <!-- <namespace>/velodyne</namespace> -->
                    <remapping>~/out:=/velodyne_points</remapping>
                </ros>
                <!-- <tf_prefix>''</tf_prefix> -->
                <frame_name>laser_link</frame_name>
                <organize_cloud>false</organize_cloud>
                <min_range>0.9</min_range>
                <max_range>130.0</max_range>
                <gaussian_noise>0.008</gaussian_noise>
                <output_type>sensor_msgs/msg/PointCloud2</output_type>
            </plugin>
        </sensor>
        </gazebo>

 

그리고 rviz2에서 pointcloud2를 추가해주고 topic으로 /velodyne_points를 선택해주면 아래와 같은 그림을 볼 수 있다.

 

다음번엔 터틀봇에 달아 실제 주행환경을 만들어 봐야 겠다.

'ROS2 > 기초' 카테고리의 다른 글

ROS2(humble + 22.04) depth camera  (0) 2024.12.17
ubuntu 24.04 ssh 설정 + docker 설정  (0) 2024.12.06
ROS2 - topic(c++)  (0) 2024.10.21
ROS2 4일차(2) Maze World  (0) 2024.09.24
ROS2 4일차(1) Maze World  (0) 2024.09.24