- 叉车模型上安装了4个激光雷达,车前有一个正方体。
- rviz订阅最上方激光雷达话题,发现激光在跳动,且激光雷达的位置要高于正方体,应该是扫不到的,但rviz却显示出来了。
- 传感器插件
<gazebo reference="upper_hokuyo_link">
<sensor type="ray" name="hokuyo_sensor">
<pose>0 0 0 0 0 0</pose>
<visualize>false</visualize>
<update_rate>10</update_rate>
<ray>
<scan>
<horizontal>
<samples>360</samples>
<resolution>1</resolution>
<min_angle>-3.14</min_angle>
<max_angle>+3.14</max_angle>
</horizontal>
</scan>
<range>
<min>0.1</min>
<max>8.0</max>
<resolution>0.01</resolution>
</range>
<noise>
<type>gaussian</type>
<mean>0.0</mean>
<stddev>0.01</stddev>
</noise>
</ray>
<plugin name="gazebo_ros_head_hokuyo_controller" filename="libgazebo_ros_laser.so">
<topicName>upper_scan</topicName>
<frameName>upper_hokuyo_link</frameName>
</plugin>
</sensor>
</gazebo>
本以为是tf的问题,插件代码复制到其他模型上显示没问题。
无意间看到<sensor type="ray" name="hokuyo_sensor">
这句,发现4个激光雷达的名字相同,因为之前没有遇到在同一个模型上安装多个相同传感器的情况,所以就忽略了。将4个激光雷达sensor改成不同的名字,问题解决!