玩转Jetson Nano(九)安装ROS

本文详细介绍了ROS(机器人操作系统)的概念,选择了MelodicMorenia版本,并提供了在Ubuntu18.04上从零开始安装ROS系统的全过程。包括添加安装源、安装ROS核心组件、初始化ROS、配置环境变量及安装依赖包等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.什么是ROS

    我不打算把百度百科的话粘贴到这,就说说自己对ROS的理解。ROS是一个机器人操作系统,大家可以想一想Windows操作系统,Windows系统可以打开文件夹,进行文件管理,播放多媒体,用户按照Windows系统开放的接口,可以编写Windows应用程序。ROS系统也是一样,它封装了一些对机器人控制的基本接口,只要我们遵循这些接口制定的规则,我们也可以开发出机器人控制应用。

二.选用ROS系统

    主流的ROS有Melodic Morenia,ROS Kinetic Kame等等,大家可以理解为Liunx系统平台下也分为Ubuntu,CentOS等等。由于主流系统中目前只有Melodic Morenia支持Ubuntu18.04,所以也没得选,就Melodic Morenia了。

三.准备工作

   其实也没啥准备的,这里有个小建议,就是准备一张新的SD卡安装ROS,一是因为ROS挺大,二是如果装了ROS,又拿同一套系统建立模型,会影响速度。SD卡建议32G以上。

四.开始安装

1.将安装源添加到source.list

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

2.添加公钥和更新系统

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

sudo apt update

在这里告诉大家一个好消息,不架梯子是就没发下载ROS源,怎么架参看前文吧

3.安装ROS

sudo apt install ros-melodic-desktop-full

上面的命令是把ROS, rqt, rviz, robot-generic libraries, 2D/3D simulators一起安装了,你也可以单独安装,我就懒得写了,自己查官网去吧。

4.初始化ROS

sudo rosdep init
rosdep update

5.将ROS配置信息写入环境变量,保证每一个终端启动时,都会自动执行setup.bash

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc

6. 安装一些依赖包

sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential

7.测试一下ROS是否正确安装,输入下面的命令

roscore

 

### 安装 ROS2 在 Jetson Nano B 的详细说明 #### 兼容性配置 Jetson Nano 默认搭载的操作系统可能无法完全满足 ROS2 的需求,因此建议将其操作系统升级至 Ubuntu 20.04 LTS 版本。此版本具有更高的兼容性和稳定性,能够更好地支持 ROS2 和其他现代软件包的需求[^2]。 #### 升级操作系统的步骤 为了确保最佳性能和兼容性,在安装 ROS2 前需先将 Jetson Nano 的操作系统更新到 Ubuntu 20.04。以下是具体的升级流程: 1. 下载适用于 Jetson Nano 的 Ubuntu 20.04 镜像文件。 2. 使用工具如 `balenaEtcher` 将镜像写入 microSD 卡。 3. 插入 microSD 卡并启动设备进入新系统。 4. 更新系统软件包以获取最新的安全补丁和支持: ```bash sudo apt update && sudo apt upgrade -y ``` #### 安装 ROS2 Foxy Fitzroy 在完成操作系统升级后,可以继续进行 ROS2 的安装过程。以下为推荐的具体步骤: 1. **设置源列表** 添加 ROS2 软件仓库密钥,并配置 APT 来定位 ROS2 包的位置: ```bash sudo apt update && sudo apt install curl gnupg2 lsb-release curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo gpg --dearmor -o /usr/share/keyrings/ros-archive-keyring.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null ``` 2. **安装依赖项** 确保所有必要的构建工具已就绪: ```bash sudo apt update && sudo apt install build-essential cmake python3-colcon-common-extensions python3-flake8 python3-pip python3-pytest-cov python3-setuptools libyaml-dev git wget unzip pip3 install -U argcomplete catkin_pkg colcon-common-extensions empy flake8 pytest-repeat setuptools vcstool rosdep rospkg ``` 3. **下载 ROS2 发行版** 对于 Jetson Nano 推荐使用 ROS2 Foxy Fitzroy 版本,该版本已被验证可在 NVIDIA 平台上顺畅运行[^1]: ```bash cd ~/ mkdir -p ros2_foxy/src cd ros2_foxy wget https://github.com/ros2/ros2/releases/download/release-foxy-20230719/ros2-foxy-linux-aarch64.tar.bz2 tar xfj ros2-foxy-linux-aarch64.tar.bz2 -C src rm ros2-foxy-linux-aarch64.tar.bz2 ``` 4. **编译与初始化工作空间** 构建 ROS2 工作区并将环境变量加载到当前会话中: ```bash source /opt/ros/foxy/setup.bash colcon build --symlink-install source ~/ros2_foxy/install/local_setup.bash ``` 5. **测试安装成功与否** 运行简单的示例节点来确认 ROS2 是否正常运作: ```bash ros2 run demo_nodes_cpp talker & ros2 run demo_nodes_py listener ``` 如果一切无误,则应能看到两个终端窗口分别打印出消息发送方和接收方的日志信息。 #### ZED SDK 及其 ROS 支持 对于需要集成 ZED2i 设备的情况,还需要额外安装对应的 SDK 和 ROS 包。这通常涉及以下几个方面的工作[^3]: 1. **安装 ZED SDK** 根据官方文档指引调整驱动程序参数之后执行脚本安装器: ```bash ./ZED_SDK_Tegra_JP46_v3.6.2.run ``` 2. **配置 ROS 包路径** 执行如下命令克隆所需资源并完成最终部署: ```bash cd ~/zed_ros2_wrapper_ws/src vcs import < zed_ros2_wrapper.repos colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release source ~/zed_ros2_wrapper_ws/install/setup.bash ``` 通过上述方法即可实现完整的 ROS2 开发环境搭建以及硬件外设的支持功能扩展。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值