机器人自主导航从零开始第四步———Rviz、Gazebo、Meshlab的安装

本文参考资料:

rviz - ROS 维基

Gazebo : Tutorial : Ubuntu (gazebosim.org)

零. 什么是Rviz和Gazebo:

Rviz是一个三维可视化工具,它利用已有的数据将数据可视化,并提供了可以显示图像、模型、表格、路径等信息的插件,我们可以利用这些插件更为直观的理解数据。

让这些插件运行的前提是,Rviz已经获得了所需要的数据,然后对数据进行处理以完成可视化的渲染。

Gazebo是一个三维物理仿真平台,我们可以在gazebo中免费创建一个模拟的机器人世界,不仅可以仿真机器人的运动功能,还可以仿真机器人的传感器数据。

而这些数据就可以放到rviz中显示,所以使用gazebo的时候,经常也会和rviz配合使用。

精心设计的模拟器可以快速测试算法,设计机器人,执行回归测试,并使用真实场景训练AI系统。Gazebo提供了在复杂的室内和室外环境中准确有效地模拟机器人种群的能力。

强大的物理引擎、高质量的图形以及方便的程序化和图形界面触手可及。当我们手上没有机器人硬件或实验环境难以搭建时,仿真往往是非常有用的利器。

综上,如果你手上已经有机器人硬件平台,并且在上边可以完成需要的功能,用rviz应该就可以满足开发需求。如果你手上没有机器人硬件,或者想在仿真环境中做一些算法、应用的测试,gazebo+rviz应该是你需要的。

一. Rviz的安装

(如果安装ROS时选择安装的是完整桌面版,那么在安装ROS时Rviz已经跟着安装好了)如果没有安装,按照下面的方法安装Rviz:

复制代码
sudo apt-get install ros-noetic-rviz

启动ROS:

复制代码
roscore

没有这一步直接进行下一步会报错:

打开新的Ubuntu终端输入:

复制代码
rviz

打开下面的画面:

如果启动Rviz后,显示区出现黑屏,无法显示网格或地图信息,解决办法:

1,关闭Rviz;

2,打开终端输入:

复制代码
export LIBGL_ALWAYS_SOFTWARE=1

(备注:LIBGL_ALWAYS_SOFTWARE=1是强制使用软件渲染)。

3,重新打开Rviz

· 中间部分为 3D视图显示区,能够显示外部信息。

· 上部为工具栏,包括视角控制、目标设置、地点发布等,还可以添加自定义的一些插件。

· 左侧为显示项目,显示当前选择的插件,并且能够对插件的属性进行设置。

· 下侧为时间显示区域,包括系统时间和ROS时间等。

· 右侧为观测视角设置区域,可以设置不同的观测视角。

具体的Rviz使用方法可参考:rviz/UserGuide - ROS Wiki

二. Gazebo的安装:

Ubuntu、ROS、Gazebo各版本推荐对应关系如下:

Ubuntu 14.04 - ROS Indigo - Gazebo 2.X

Ubuntu 16.04 - ROS Kinetic - Gazebo 7.X

Ubuntu 18.04 - ROS Melodic - Gazebo 9.X

Ubuntu 20.04 - ROS Noetic - Gazebo 11.X

所以我们安装对应的gazebo11:

1.将计算机设置为接受来自 packages.osrfoundation.org 的软件

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

2.安装键:

复制代码
wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

3.安装gazebo:

首先更新 debian 数据库:

复制代码
sudo apt-get update

提示:确保 apt-get 更新过程结束没有任何错误,控制台输出的结尾如下所示:

复制代码
$ sudo apt-get update
Hit http://ppa.launchpad.net bionic/main Translation-en    
Ign http://us.archive.ubuntu.com bionic/main Translation-en_US
Ign http://us.archive.ubuntu.com bionic/multiverse Translation-en_US
Ign http://us.archive.ubuntu.com bionic/restricted Translation-en_US
Ign http://us.archive.ubuntu.com bionic/universe Translation-en_US
Reading package lists... Done

接下来通过以下方式安装Gazebo:

复制代码
sudo apt-get install gazebo11     
sudo apt-get install libgazebo11-dev

出现下面问题:重启ubuntu,再运行上面两行

复制代码
无法获得锁 /var/lib/dpkg/lock-frontend。锁正由进程 2360(unattended-upgr)持有 N: 请注意,直接移除锁文件不一定是合适的解决方案,且可能损坏您的系统。 E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend),是否有其他进程正占用它?

成功截图

4 检查是否成功安装 :

终端输入gazebo会直接打开一个空的gazebo界面

转载自这里,并进行了补充优化。

相关推荐
星马梦缘2 小时前
Matlab机器人工具箱使用2 DH建模与加载模型
人工智能·matlab·机器人·仿真·dh参数法·改进dh参数法
星马梦缘9 小时前
Matlab机器人工具箱使用1 简单的描述类函数
matlab·矩阵·机器人·位姿·欧拉角·rpy角
神仙别闹17 小时前
基于单片机的六足机器人控制系统设计
单片机·嵌入式硬件·机器人
南山二毛1 天前
机器人控制器开发(传感器层——奥比大白相机适配)
数码相机·机器人
房开民2 天前
使用海康机器人相机SDK实现基本参数配置(C语言示例)
c语言·数码相机·机器人
南山二毛2 天前
机器人控制器开发(导航算法——导航栈关联坐标系)
人工智能·架构·机器人
猫头虎2 天前
2025最新超详细FreeRTOS入门教程:第一章 FreeRTOS移植到STM32
stm32·单片机·嵌入式硬件·机器人·硬件架构·freertos·嵌入式实时数据库
xwz小王子2 天前
Nature Machine Intelligence 基于强化学习的磁性微型机器人自主三维位置控制
机器人·微型机器人
IoT砖家涂拉拉2 天前
从“找新家”到“走向全球”,布尔云携手涂鸦智能开启机器人新冒险
人工智能·机器人·ai助手·ai智能体·ai机器人
纪元A梦2 天前
贪心算法应用:机器人路径平滑问题详解
贪心算法·机器人