2020-11-13 欧阳俊源
本gazebo仿真包基于velodyne_simulator,实现非均匀激光雷达的仿真并发布ROS-Topic。
实现方法:通过向一个model添加多个ray-sensor 然后由编写的model的plugin来控制接受多个ray-sensor的gazebo信息,并合并转发到ROS的topic下。
给出了example-launch和example-xacro。在本ws下source即可运行。
launch:23-24lines
<arg name="LiDARName" default="LiDAR_non-uniform"/>
<arg name="LiDARFrame" default="LiDARFrame"/>
本example-launch和example-xacro 只实现了单个传感器的使用。后续实现
example-xacro:103-105lins:
模仿下面书写即可。
目前请不要修改name="sensor-sector"
且按线束分块从上到下填写suffix="*"
其中samples
是水平的线数,希望保持相同
v_max_angle和v_min_angle
是垂直线束扇区的上和下界限夹角,水平方向为0°
<xacro:LiDARSensorGen name="sensor-sector" suffix="1" hz="${hz}" samples="${samples}" lasers="5+1" v_max_angle="${5*M_PI/180.0}" v_min_angle="${0*M_PI/180.0}"/>
<xacro:LiDARSensorGen name="sensor-sector" suffix="2" hz="${hz}" samples="${samples}" lasers="25-2" v_max_angle="${-1/3*M_PI/180.0}" v_min_angle="-${24/3*M_PI/180.0}"/>
<xacro:LiDARSensorGen name="sensor-sector" suffix="3" hz="${hz}" samples="${samples}" lasers="11" v_max_angle="-${25/3*M_PI/180.0}" v_min_angle="-${(25/3+10)*M_PI/180.0}"/>
注意事项1:被依附的link必须具有inertial属性,否则有被sdf合并优化掉。