为了在gazebo仿真里使用多线激光雷达,先需要安装Velodyne_simulator。
1. 下载地址
这里使用的是ROS Wiki上提供的链接:
代码地址:
2. 安装编译
在ubuntu 20.04下通过catkin_make编译:
mkdir -p ~/catkin_sim/src
cd ~/catkin_sim/src
git clone https://bitbucket.org/DataspeedInc/velodyne_simulator.git
cd ..
catkin_make
可能会出现以下错误:
网上查原因,主要是已安装protoc版本旧不兼容。使用protoc --version命令查看到:
先卸载该版本:
sudo apt-get remove libprotobuf-dev
which protoc
sudo rm /usr/local/bin/protoc
【注】运行完“which protoc”会显示一个protoc的路径,如果没有显示则不必执行rm命令,具体路径以“which protoc”显示的为准。
再新安装V3.6.1:
sudo apt-get install autoconf automake libtool curl make g++ unzip
git clone -b v3.6.1 https://github.com/protocolbuffers/protobuf.git
cd protobuf
git submodule update --init --recursive
./autogen.sh
./configure
make
make check
sudo make install
sudo ldconfig
【注】如果没有克隆子模块,make check会失败但是可以继续make install,但是使用某些功能时可能会出错。
安装完成后,再次执行protoc --version可以查看新版本是否安装成功。
再次回到~/catkin_sim下编译velodyne_simulator,这里还出现以下错误:
安装下gazebo_ros再编译就没问题了:
sudo apt-get install ros-noetic-gazebo-ros
运行示例
可以运行示例:
source devel/setup.bash
roslaunch velodyne_description example.launch
在gazebo和rviz中的效果如下: