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

【ROS2】机器人操作系统安装到Ubuntu简介

主要参考: https://book.guyuehome.com/ROS2/1.系统架构/1.3_ROS2安装方法/
官方文档:https://docs.ros.org/en/humble/Installation.html

虚拟机与ubuntu系统安装

略,见参考文档
ubutun换国内源,略

1. 设置本地语言

确保您有一个支持UTF-8的语言环境。如果您处于最小环境(例如Docker容器),则该语言环境可能是最小的Posix。我们测试以下设置。但是,如果您使用不同的UTF-8支持的语言环境,那应该很好。

在Terminal命令段输入

locale  # check for UTF-8sudo apt update && sudo apt install 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-8locale  # verify settings

2. 设置源

如遇报错“Failed to connect to raw.githubusercontent.com”,可参考https://www.guyuehome.com/37844

sudo apt update && sudo apt install curl gnupg lsb-release 
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -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 $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

3. 安装ROS2

官方原文:https://docs.ros.org/en/humble/Installation/Ubuntu-Install-Debs.html#install-ros-2-packages

ros-humble-desktop 包含 (Recommended): ROS, RViz, demos, tutorials.
ros-humble-ros-base 安装(Bare Bones):通信库,消息软件包,命令行工具。没有GUI工具
ros-dev-tools 开发工具:编译器和其他构建ROS软件包的工具

sudo apt update
sudo apt upgrade
sudo apt install ros-humble-desktop 
sudo apt install ros-dev-tools

设置环境变量

# Replace ".bash" with your shell if you're not using bash
# Possible values are: setup.bash, setup.sh, setup.zsh
source /opt/ros/humble/setup.bash
echo " source /opt/ros/humble/setup.bash" >> ~/.bashrc 

案例测试

案例1 底层通信系统DDS

启动第一个终端,通过以下命令启动一个数据的发布者(talker)节点:

source /opt/ros/humble/setup.bash
ros2 run demo_nodes_cpp talker

在这里插入图片描述

启动第二个终端,通过以下命令启动一个数据的监听者节点:

source /opt/ros/humble/setup.bash
ros2 run demo_nodes_py listener

在这里插入图片描述

实例2 : 打开小海龟仿真器

一个端口,启动海龟模拟器

ros2 run turtlesim turtlesim_node
另一个端口,启动控制海龟端口
ros2 run turtlesim turtle_teleop_key

在这里插入图片描述

相关文章:

  • 基于STM32、HAL库的MCP42010T数字电位器驱动程序设计
  • WebGL简介
  • rust编程学习(三):8大容器类型
  • Transformer 零基础实践教程 - 0 - 前言与环境配置
  • Rust 学习笔记:Rust 简介
  • element-ui transfer 组件源码分享
  • 远程控制Firefox浏览器实例的挑战与Playwright的CDP和Selenium Marionette解决方案
  • STM32 SysTick定时器
  • ElasticSearch:高并发场景下如何保证读写一致性?
  • 11、认识redis的sentinel
  • 神经网络相关内容
  • SpringBoot中6种自定义starter开发方法
  • Hadoop 集群扩容新增节点操作文档
  • Java 实现SpringContextUtils工具类,手动获取Bean
  • 鸿蒙NEXT开发网络相关工具类(ArkTs)
  • node.js 实战——(概念以及Buffer 知识点学习)
  • 数据结构线性表的顺序存储结构
  • openEuler安装nvidia驱动【详细版】
  • 外贸获客新革命:基于AI的搜索引擎排名攻防战——48小时抢占谷歌TOP3的技术逻辑与实战路径
  • 基于VUE+Node.JS实现(Web)学生组队网站
  • 习近平向气候和公正转型领导人峰会发表致辞
  • “很多中国企业竞争力独一无二”,这场对接会上他频频为协同供应链点赞
  • 云南城投去年营收约19.29亿元,亏损4945万元
  • 西湖大学本科新增临床医学专业,今年本科招生专业增至8个
  • 助力中国足球未来,香港赛马会鼎力支持U15国少选拔队赴英训练
  • 88岁罗马教皇方济各突然去世,遗嘱内容对外公布