当前位置: 首页 > news >正文

瑞芯微(EASY EAI)RV1126B ROS2安装

1. 本文介绍

1.1 ROS2简介

ROS是一个适用于机器人的开源的元操作系统。它提供了操作系统应有的服务,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递,以及包管理。在某些方面ROS相当于一种“机器人框架(robot frameworks)”。

1.2 ROS2与ROS1的区别

ROS2作为ROS1的继任者,在保持ROS核心功能的基础上进行了诸多改进和优化。相较于ROS1,ROS2取消了ROS1中的Master 中央节点,实现了节点的分布式发现、发布/订阅、请求/响应通讯。ROS1使用自定义的中间件(roscore),而ROS2使用DDS中间件。ROS1使用catkin作为构建系统,而ROS2使用colcon作为构建系统

2. ROS2安装

2.1 设置locale

# 安装locales

locale # check for UTF-8

sudo apt update && sudo apt install locales

# 配置locales

sudo locale-gen en_US en_US.UTF-8

sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 export LANG=en_US.UTF-8

locale # verify settings

2.2 设置源

sudo apt install software-properties-common

sudo add-apt-repository universe

# 安装curl库

sudo apt install curl -y

# 添加环境变量

export ROS_APT_SOURCE_VERSION=$(curl -s https://api.github.com/repos/ros-infrastructure/ros-apt-source/releases/latest | grep -F "tag_name" | awk -F'"' '{print $4}')

# 安装补丁包

curl -L -o /tmp/ros2-apt-source.deb "https://github.com/ros-infrastructure/ros-apt-source/releases/download/${ROS_APT_SOURCE_VERSION}/ros2-apt-source_${ROS_APT_SOURCE_VERSION}.$(. /etc/os-release && echo ${UBUNTU_CODENAME:-${VERSION_CODENAME}})_all.deb"

# 解包

sudo dpkg -i /tmp/ros2-apt-source.deb

2.3 安装

# 更新和升级新源的库

sudo apt update && sudo apt upgrade

两个版本:

(1)Desktop版(推荐):ROS, RViz, demos, tutorials

(2)Base版:Communication libraries, message packages, command line tools. No GUI tools

sudo apt install ros-humble-desktop

# 安装开发工具(可选)

sudo apt install ros-dev-tools

# 设置环境

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

3. 测试ROS2

3.1 远程控制桌面系统

安装桌面系统,详情请查看《应用笔记/安装桌面系统》

安装完毕后,在MobaXterm运行xfce桌面端:

startxfce4

3.2 ROS2测试

(1)发布和订阅测试:

打开一个终端,运行:

ros2 run demo_nodes_cpp talker

再打开一个新终端,运行:

ros2 run demo_nodes_py listener

(2)小海龟测试

接上8寸屏和鼠标键盘,启动终端运行:

ros2 run turtlesim turtlesim_node

想用键盘控制小海龟旋转,新开一个终端,运行:

ros2 run turtlesim turtle_teleop_key

http://www.jsqmd.com/news/715135/

相关文章:

  • 你的宽带真的支持IPv6吗?手把手教你用手机热点+MobaXterm远程办公
  • 避坑指南:在Ruoyi-Vue中实现登录拦截与密码重置,我踩了这三个Token管理的坑
  • 2026年数控钣金公司实力排行/钣金,钣金加工,钣金件加工,精密不锈钢钣金加工 - 品牌策略师
  • Amulet-Map-Editor完整功能解析:从世界编辑到格式转换
  • Yew物联网:MQTT和WebSocket通信的终极指南
  • 终极Python多线程与多进程编程指南:从入门到实践的完整路径
  • 如何利用Composer二进制包支持高效分发PHP扩展和工具
  • Smithbox终极指南:如何轻松修改你最喜欢的魂系游戏
  • 一键安装HS2-HF_Patch:解锁Honey Select 2完整游戏体验的终极指南
  • OpCore Simplify:3步完成黑苹果OpenCore配置的完整指南
  • 2026年,还想要入局大模型领域的学习和工作,还来得及吗?红利期还在吗?
  • Hostinger主机稳定吗 - 麦麦唛
  • AI领域重大周记:超级学习者获11亿美元融资、生成式AI监管落地、大模型与具身智能双线突破
  • 专业级VR视频转换工具:将沉浸式3D内容转为2D格式的技术解析与实践指南
  • 告别‘XXX is not a type’:一份Qt Quick项目的.qrc文件配置保姆级指南(含CMake/QMake)
  • DIY一个低成本气象站:STM32F103C8T6核心板+OLED显示风速风向温湿度
  • 暗黑2存档编辑器实战手册:掌握游戏存档修改的终极技巧
  • USB/IP for Windows:如何实现跨网络USB设备共享的完整指南
  • 2026年Creo产品结构设计培训参考指南:Creo产品设计培训、ProE/Creo结构设计培训、Creo结构工程师培训、深圳零壹教育深耕实战教学,助力职业成长 - 海棠依旧大
  • 九江黄金回收怎么选?濂溪区、浔阳区、瑞昌
  • 从ACRONYM数据集到真实机器人:我是如何用Contact-GraspNet复现90%抓取成功率的
  • 告别‘抽风’电机!用Arduino和A4950实现精准调速(附完整代码与接线图)
  • LeetCode 广度优先搜索(BFS)题解
  • 2026浏览器多开环境深度优化:虚拟指纹一致性与风控协同优化方案
  • 30倍提速!Ruff模块化架构如何拯救大型Python项目
  • 3步搞定Prometheus+Grafana监控可视化:从数据采集到告警通知终极指南
  • 境外投资备案代办供应商有哪些?优质企业多年行业经验,护航备案办理! - 速递信息
  • 微信聊天记录终极导出方案:3步免费备份你的珍贵回忆
  • 如何用MaaFramework在5分钟内构建你的第一个自动化测试项目:从零到一的完整指南
  • 面试必备:LeetCode HOT 100 分类刷题指南