ROS環境Gazebo與Rviz仿真

用 Gazebo 仿真器進行模型搭建並用Rviz進行圖像顯示

首先啓動gazebo(如果安裝的是ros-full的話就自帶有),否則需要自己安裝。

注意:
gazebo最好是在版本7以上(7.xx),我的版本是7.0的時候用rviz查看圖像會報錯,所以強烈建議將其更新到7.0以上。

在7.0的基礎上升級gazebo的步驟如下:

sudo sh -c 'echo "deb 
http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

②wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

sudo apt-get update

sudo apt-get install gazebo7 gazebo7-common

下面開始搭建模型

有兩種方法:
①使用模型庫,這個需要在官網下載,之後導入到你的工作空間的models文件夾下
https://bitbucket.org/osrf/gazebo_models/downloads/
當然網上有別人提供的網盤連接,那個快一點
②在gazebo界面使用Ctrl+B或者菜單欄找到Building Editor出現自主編輯界面,可以自己做出你想要的模型。

下面顯示的是利用gazebo自帶的模型進行的操作(做這個之前有三個文件夾是必須要有的)
在這裏插入圖片描述

命令行輸入:

roslaunch mbot_gazebo view_mbot_with_camera_gazebo.launch

會出現如下界面:
在這裏插入圖片描述

這個是自帶攝像頭的模型,爲了方便結合rviz進行圖像查看,這個模型再好不過。
如果想要在自己建造的模型中添加攝像頭等則需要自己編寫代碼了。下面是我將攝像頭與激光結合的代碼。
在這裏插入圖片描述
編寫完成之後需要catkin_make,之後再source ./devel/setup.bash
如果catkin_make沒有成功,解決方式可能是如下:
缺少控制,所以需要增加控制:

sudo apt-get install ros-kinetic-gazebo-ros-control

還有就是缺少導航:

sudo apt-get install ros-kinetic-navigation

下面的機器人就是運行成功之後將兩種結合的樣子。
在這裏插入圖片描述
rviz查看圖像:

rosrun rviz rviz

第一個kinetic的位置應該會有下拉框供你選擇,可能是camera_link,如果是lasar就是laser_link
然後需要add一個話題(image/laserscan),將下圖所示位置修改,一般也會有下拉框,如果沒有則需要根據rostopic list查看話題信息。
在這裏插入圖片描述在這裏插入圖片描述
上述的話題輸進去之後gazebo報錯的話一般就是gazebo的版本低了,參考文章開頭位置說的更新gazebo。

接着就會出現攝像頭或者激光的圖像:
在這裏插入圖片描述
在這裏插入圖片描述
激光就不用在意了,參數可能沒設對就只有這麼一點。
在這裏插入圖片描述
此外:如果想要移動小車則需另開一個終端:

roslaunch mbot_teleop mbot_teleop.launch

如果第一次沒有成功則需要進行

source ./devel/setup.bash

然後點擊鍵盤的在這裏插入圖片描述進行移動和轉向。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章