px4激光雷达避障仿真
- 环境搭建
- 避障实现
废话不多说,直接上教程。
环境搭建
需要如下环境:
- ROS
- gazebo
- PX4源码 v1.9.2及以上
- PX4_command
若进行激光雷达的仿真,先要把px4的软件仿真gazebo环境搭建好,教程传送门
先确保gazebo仿真没问题
make px4_sitl_default gazebo
然后确保运行px4源码中launch文件夹下posix_sitl.launch没问题
roslaunch posix_sitl.launch
这里根据ROS的版本分两种情况:
- ***ROS Melodic Morenia***版本
如果你是这个版本,那么恭喜你,只需要一个地方的改动。
打开posix_sitl.launch, 把iris模型,修改为iris_rplidar模型
gazebo 将会加载激光雷达的仿真
效果如下
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zoLYUjBi-1569826547537)(http://files.amovauto.com:8088/group1/default/20190930/14/06/1/rplidar_sim1.png)]
重新打开一个终端,查看雷达的点云数据
rostopic echo /laser/scan
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QRn9QBiG-1569826547537)(http://files.amovauto.com:8088/group1/default/20190930/14/11/1/rplidar_sim2.png)]
- ROS Kinetic Kame版本
1: 打开posix_sitl.launch, 把iris模型,修改为iris_rplidar模型
2:进入如下目录,修改iris_rplidar文件夹下的iris_rplidar.sdf模型文件
~/yourProject/Firmware/Tools/sitl_gazebo/models/iris_rplidar
3:进入如下目录,修改rplidar文件夹下的model.sdf模型文件
~/yourProject/Firmware/Tools/sitl_gazebo/models/rplidar
搞定,返回运行
roslaunch posix_sitl.launch
gazebo仿真中就会有激光雷达了。
避障实现
搭建好px4_command仿真环境教程传送门
运行如下的的脚本
amov@amov:~/AMOV_WorkSpace/px4_ws/src/px4_command/sh/sh_for_simulation$ ./sitl_gazebo_laserCollAvo.sh
这里我们提供不那么智能的避障策略,如果你有实现了更好避障算法,非常欢迎你的分享。