系列文章目录
Ubuntu22.04下基于ROS2-humble、lsaac-sim实现slam——环境搭建
文章目录
前言
提示:这里可以添加本文要记录的大概内容:
在机器人技术迅速发展的今天,SLAM(Simultaneous Localization and Mapping,即同时定位与地图构建)技术已经成为机器人自主导航和智能环境感知的核心技术之一。SLAM技术使机器人能够在未知环境中,通过传感器数据实时构建地图,并同时确定自身的位置。为了深入研究和应用SLAM技术,搭建一个稳定、高效的实验环境显得尤为重要。
本文旨在介绍如何在Ubuntu 22.04操作系统下,基于ROS2(Robot Operating System 2,机器人操作系统2)的Humble版本和NVIDIA Isaac Sim 来实现SLAM。ROS2作为新一代机器人操作系统,提供了丰富的通信机制、工具集和库,极大地简化了机器人应用的开发。而Ubuntu 22.04作为一个稳定且功能强大的操作系统,为ROS2的运行提供了良好的平台支持。NVIDIA Isaac Sim是一款参考应用,允许开发者在基于物理的虚拟环境中设计、模拟、测试和训练基于 AI 的机器人和自主机器。基于 NVIDIA Omniverse 构建的 Isaac Sim 完全可扩展,支持开发者构建自己的自定义模拟器或将核心 Isaac Sim 技术集成到现有测试和验证管线中。
在搭建环境的过程中,我将详细讲解如何安装和配置ROS2 Humble版本以及NVIDIA Isaac Sim。
一、ROS2-Humble安装(鱼香ros安装)
鱼香ROS提供了一种便捷的方式来安装ROS,无论是ROS1还是ROS2,都可以通过一键安装脚本快速完成。
1.下载并运行安装脚本
- 打开Ubuntu终端。
代码如下:
wget http://fishros.com/install -O fishros && . fishros
2.配置系统源并且清理第三方源
- 输入数字1选择更换系统在继续安装
- 输入数字2 更换系统源并清理第三方源
3.安装ROS
- 输入数字1选择humble(ROS2)
- 输入数字1选择桌面版
4.验证
- 根据机器配置与网络络环境的不同,等待安装的时间的各有不同当出现下图所示,则安装完成
- 在终端运行
ros2
- 出现下图所示代表安装成功
二、NVIDIA Isaac Sim安装
1.下载omniverse
Isaac Sim是依托于NVIDIA Omniverse平台的仿真工具包,前往Nvidia Isaac Sim官网下载Omniverse。
NVIDIA Omniverse™ Isaac Sim是NVIDIA Omniverse™平台的一款机器人仿真工具包。Isaac Sim具备构建虚拟机器人世界和实验的关键功能。它为研究人员和从业人员提供了创建健壮、物理精确仿真和合成数据集所需的工具和工作流程。Isaac Sim通过ROS/ROS2支持导航和操控应用。它可以模拟RGB-D、Lidar和IMU等传感器的传感器数据,用于多种计算机视觉技术,如领域随机化、真值标签、分割和边界框。
根据以下步骤下载对应的omniverse-launcher-linux.AppImage文件。
2.启动Omniverse
打开终端进入下载目录输入
sudo chmod +x omniverse-launcher-linux.AppImage
在没有安装FUSE时可能无法启动appimage,因此先安装FUSE
sudo apt install fuse -y
通过命令行启动Omniverse,也可手动双击启动
./omniverse-launcher-linux.AppImage
3.登录Nvidia账号
登录你的Nvidia账号,按照引导,默认即可,进入Omniverse主页面
##4.安装ISAAC SIM
进入Omniverse的EXCHANGE页面,选择ISAAC SIM,点击install,等待自动下载安装完成
5.安装NUCLEUS
NVIDIA Omniverse Isaac Sim借助NVIDIA Omniverse™ Nucleus技术,实现对环境和机器人USD文件等内容的便捷访问。Nucleus服务充当了一个桥梁,让各类客户端应用、渲染引擎及微服务能够在Isaac Sim中共享并编辑虚拟世界的各种元素。
Nucleus基于发布/订阅机制运作。在确保访问控制的前提下,Omniverse客户端能够将数字资产及虚拟世界的变动发布至Nucleus数据库,或订阅这些变化。这些更改能够实时地在连接的应用间传递,数字资产涵盖了描述虚拟世界及其动态变化的几何体、光照、材质、纹理等丰富数据。
如此一来,各类启用Omniverse的客户端应用(如Apps、Connectors等)便能共享并编辑虚拟世界的权威表示。
简而言之,可以将Nucleus视为一个高效的虚拟资产管理器。
若要操作,请进入Nucleus页面,轻点“Add Local Nucleus Device”,随后创建一个管理员账户
点击COMPLETE SETUP,等待下载并设置完成
6.启动ISAAC SIM
在LIBRARY中找到ISAAC SIM,点击Launch启动,按照默认选项,点击START继续启动
提示:具体的ISAAC SIM性能要求可参考Nvidia Isaac Sim Documentation System Requirements
7.观察ISAAC SIM主界面
在成功启动并完成编译、配置等过程后,Isaac Sim的空主界面应当为如下状态
下步计划
在完成ROS 2 Humble与NVIDIA Isaac Sim的安装之后,在NVIDIA Isaac Sim环境中构建一个仿真场景。在此场景中,需设计并实现相机与时钟的订阅节点发布功能,并进一步对相机执行标定流程。