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

【ROS系统】Ubuntu22.04系统中安装ROS2系统_ubuntu 安装ros2_GoesM

【ROS系统】Ubuntu22.04系统中安装ROS2系统_ubuntu 安装ros2_GoesM

Excerpt

ROS仿真、专为自动驾驶研发提供的系统平台_ubuntu 安装ros2


参考博客:ROS 安装详细教程 —— Ubuntu22.0.4 LTS 安装

Part 0. 准备

首先,我们需要一个Ubuntu系统。

Part 1. 调整Ubuntu系统中的相关配置

step 1. 设置语言

终端输入指令:

sudo 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-8

step 2. 设置镜像源

从ubuntu系统界面进行设置:

设置->软件升级->Ubuntu software-> source code 为source code选择国内镜像源

确定镜像源可用

通过检查此命令的输出,确保已启用Ubuntu Universe存储库。
apt-cache policy | grep universe
如果输出 “500:乱七八糟一堆” ,说明可行。
如果没有上述输出,则需要执行指令:
sudo apt install software-properties-common
sudo add-apt-repository universe

step 3. 从github下载相关文件

终端指令:

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.gpgecho "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

step 4. 将上述配置更新至系统

指令:sudo apt-get update
指令:sudo apt-get upgrade

Part 2. 安装ROS2-humble系统

step 1. 下载ROS系统

指令:sudo apt install ros-humble-desktop
注1:humble表示版本名称,不同的Ubuntu系统需要下载对应的不同的版本名称,ubuntu22.04对应版本humble,其余版本可以登陆ROS官网自行查看;
注2:desktop表示桌面版本,即完整版本,自动安装我们常用的功能。

step 2. 调整配置

终端指令: source /opt/ros/humble/setup.bash echo " source /opt/ros/humble/setup.bash" >> ~/.bashrc

Part 3. 检测ROS2-humble系统是否可以正常运行

通信测试

打开一个终端,指令:ros2 run demo_nodes_cpp talker
另开一个终端,指令:ros2 run demo_nodes_py listener
如果listenner可以正常显示talker发出的信号,即表示正常。

小海龟仿真测试

一个终端,指令:ros2 run turtlesim turtlesim_node启动海龟仿真器
另一个终端,指令:ros2 run turtlesim turtle_teleop_key启动键盘控制节点

如果可以通过键盘正常操控小海龟移动,即表示正常。

Part 4. ROS2系统文件位置

在文件目录:/opt/ros/humble中查询

相关文章:

【ROS系统】Ubuntu22.04系统中安装ROS2系统_ubuntu 安装ros2_GoesM

【ROS系统】Ubuntu22.04系统中安装ROS2系统_ubuntu 安装ros2_GoesM Excerpt ROS仿真、专为自动驾驶研发提供的系统平台_ubuntu 安装ros2 参考博客:ROS 安装详细教程 —— Ubuntu22.0.4 LTS 安装 Part 0. 准备 首先,我们需要一个Ubuntu系统。 Part 1. …...

MySQL8.0.22安装过程记录(个人笔记)

1.点击下载MySQL 2.解压到本地磁盘(注意路径中不要有中文) 3.在解压目录创建my.ini文件 文件内容为 [mysql] # 设置mysql客户端默认字符集 default-character-setutf8[mysqld] # 设置端口 port 3306 # 设计mysql的安装路径 basedirE:\01.app\05.Tool…...

Python中pip和conda的爱恨情仇

在使用pip和conda时,是否也有过以下的疑惑??? 目前只总结了以下常见的几种混淆,如有学者还有其它疑惑,欢迎留言讨论,我会解答更新,帮助自己理清的同时,也帮助其他同样困…...

HTTPS协议原理

目录 前言 1.理解加密和解密 2.为什么要加密 3.常见的加密方式 3.1对称加密 3.2非对称加密 4.数据摘要和数据指纹 5. 数字签名 6.HTTPS的加密策略 6.1只使用对称加密 6.2使用非对称加密 6.2.1服务端使用非对称加密 6.2.2双方都使用非对称加密 6.3对称加密非对称加…...

C语言每日一练------Day(6)

本专栏为c语言练习专栏,适合刚刚学完c语言的初学者。本专栏每天会不定时更新,通过每天练习,进一步对c语言的重难点知识进行更深入的学习。 今日练习题关键字:整数转换 异或 💓博主csdn个人主页:小小unicorn…...

springboot中使用ElasticSearch

引入依赖 修改我们的pom.xml&#xff0c;加入spring-boot-starter-data-elasticsearch <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-elasticsearch</artifactId> </dependency>编写配…...

十二、集合(2)

本章概要 添加元素组集合的打印列表 List 添加元素组 在 java.util 包中的 Arrays 和 Collections 类中都有很多实用的方法&#xff0c;可以在一个 Collection 中添加一组元素。 Arrays.asList() 方法接受一个数组或是逗号分隔的元素列表&#xff08;使用可变参数&#xff…...

【网络设备】交换机的概念、工作原理、功能以及以太网帧格式

个人主页&#xff1a;insist--个人主页​​​​​​ 本文专栏&#xff1a;网络基础——带你走进网络世界 本专栏会持续更新网络基础知识&#xff0c;希望大家多多支持&#xff0c;让我们一起探索这个神奇而广阔的网络世界。 目录 一、认识交换机 二、交换机的主要功能 1、数…...

研磨设计模式day11观察者模式

目录 场景 代码示例 定义 观察者模式的优缺点 本质 何时选用 简单变型-区别对待观察者 场景 我是一家报社&#xff0c;每当我发布一个新的报纸时&#xff0c;所有订阅我家报社的读者都可以接收到 代码示例 报纸对象 package day11观察者模式;import java.util.Observ…...

第八周第二天学习总结 | MySQL入门及练习学习第四天

实操练习&#xff1a; 1.建立一个员工表和与之对应的部门表 2.建立外键约束 3.使用多表查询&#xff0c;直接查询部门表和员工表 发现&#xff1a;有很多多余的因笛卡尔乘积而带来的多余输出内容 我想要的到简单明了的数据结果&#xff0c;要消除多于因笛卡尔乘积带来的输出…...

WPF数据转换

在基本绑定中&#xff0c;信息从源到目标的传递过程中没有任何变化。这看起来是符合逻辑的&#xff0c;但我们并不总是希望出现这种行为。通常&#xff0c;数据源使用的是低级表达方式&#xff0c;我们可能不希望直接在用户界面使用这种低级表达方式。WPF提供了两个工具&#x…...

《Go 语言第一课》课程学习笔记(十三)

方法 认识 Go 方法 Go 语言从设计伊始&#xff0c;就不支持经典的面向对象语法元素&#xff0c;比如类、对象、继承&#xff0c;等等&#xff0c;但 Go 语言仍保留了名为“方法&#xff08;method&#xff09;”的语法元素。当然&#xff0c;Go 语言中的方法和面向对象中的方…...

基于RUM高效治理网站用户体验入门-价值篇

用户体验 用户体验基本包含访问网站的性能、可用性和正确性。通俗的讲&#xff0c;就是一把通过用户访问测量【设计者】意图的尺子。 本文目的 网站如何传递出设计者的意图&#xff0c;可能页面加载时间太长、或者页面在用户的浏览器中渲染时间太慢&#xff0c;或者第三方设备…...

Unity之Photon PUN2开发多人游戏如何实现组队功能

前言 Photon Unity Networking 2 (PUN2) 是一款基于Photon Cloud的Unity多人游戏开发框架。它提供了一系列易于使用的API和工具,使开发者可以快速构建多人戏,并轻松处理多人游戏中的网络同步、房间管理、玩家匹配等问题。 我们在查看Pun2的Demo时,会发现Demo中自带了一个简…...

大数据Flink简介与架构剖析并搭建基础运行环境

文章目录 前言Flink 简介Flink 集群剖析Flink应用场景Flink基础运行环境搭建Docker安装docker-compose文件编写创建并运行容器访问Flink web界面 前言 前面我们分别介绍了大数据计算框架Hadoop与Spark,虽然他们有的有着良好的分布式文件系统和分布式计算引擎&#xff0c;有的有…...

RISC-V IOPMP实际用例-Rapid-k模型在NVIDIA上的应用

安全之安全(security)博客目录导读 2023 RISC-V中国峰会 安全相关议题汇总 说明&#xff1a;本文参考RISC-V 2023中国峰会如下议题&#xff0c;版权归原作者所有。...

【UE5】给模型指定面添加自定义材质

实现步骤 1. 首先我们向UE中导入一个简单的模型&#xff0c;可以看到目前该模型的材质插槽只有一个&#xff0c;当我们修改材质时会使得模型整体的材质全部改变&#xff0c;如果我们只想改变模型的某些面的材质就需要继续做后续操作。 2. 选择建模模式 3. 在模式工具栏中点击…...

mall:redis项目源码解析

文章目录 一、mall开源项目1.1 来源1.2 项目转移1.3 项目克隆 二、Redis 非关系型数据库2.1 Redis简介2.2 分布式后端项目的使用流程2.3 分布式后端项目的使用场景2.4 常见的缓存问题 三、源码解析3.1 集成与配置3.1.1 导入依赖3.1.2 添加配置3.1.3 全局跨域配置 3.2 Redis测试…...

RISC-V Linux系统kernel制作

文章目录 1、下载2、编译 1、下载 Linux 官网地址:https://www.kernel.org $ wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.10.181.tar.xz $ tar xvf linux-5.10.181.tar.xz $ cd linux-5.10.1812、编译 安装依赖 $ sudo apt-get install -y flex bison bui…...

5G NR:PRACH时域资源

PRACH occasion时域位置由高层参数RACH-ConfigGeneric->prach-ConfigurationIndex指示&#xff0c;根据小区不同的频域和模式&#xff0c;38.211的第6.3.3节中给出了prach-ConfigurationIndex所对应的表格。 小区频段为FR1&#xff0c;FDD模式(paired频谱)/SUL&#xff0c;…...

Python AI推理卡顿元凶锁定:Cuvil IR图层分析法,3分钟定位动态shape引发的kernel重编译瓶颈

第一章&#xff1a;Cuvil编译器在Python AI推理中的核心定位与价值Cuvil编译器并非传统意义上的通用语言编译器&#xff0c;而是专为Python生态中AI模型推理阶段深度优化的静态编译基础设施。它直接作用于PyTorch/TensorFlow导出的TorchScript或ONNX中间表示&#xff0c;将高层…...

从‘量子电子商务’到三方协议:手把手拆解量子数字签名(QDS)的核心流程与实验挑战

量子数字签名&#xff1a;从理论到实验的技术深潜与挑战解析 量子数字签名&#xff08;QDS&#xff09;作为后量子密码学的重要分支&#xff0c;正在从实验室走向实际应用。不同于传统数字签名依赖数学难题的复杂性&#xff0c;QDS基于量子力学的基本原理&#xff0c;为信息安全…...

RuoYi项目部署避坑大全:从宝塔面板配置到前端OpenSSL报错,一次讲清所有常见问题

RuoYi项目部署避坑指南&#xff1a;从错误现象到根治方案 1. 部署前的环境准备与常见陷阱 部署RuoYi这类前后端分离项目时&#xff0c;环境配置往往是第一个拦路虎。不少开发者习惯直接跳到代码部署环节&#xff0c;却忽略了基础环境的兼容性问题。我们先来看看那些容易被忽视的…...

Rivets.js格式化器深度解析:自定义数据转换和业务逻辑处理

Rivets.js格式化器深度解析&#xff1a;自定义数据转换和业务逻辑处理 【免费下载链接】rivets Lightweight and powerful data binding. 项目地址: https://gitcode.com/gh_mirrors/ri/rivets Rivets.js是一个轻量级且功能强大的数据绑定库&#xff0c;它提供了灵活的格…...

告别卡顿!Win11Debloat开源系统优化工具让Windows 11性能提升200%

告别卡顿&#xff01;Win11Debloat开源系统优化工具让Windows 11性能提升200% 【免费下载链接】Win11Debloat 一个简单的PowerShell脚本&#xff0c;用于从Windows中移除预装的无用软件&#xff0c;禁用遥测&#xff0c;从Windows搜索中移除Bing&#xff0c;以及执行各种其他更…...

flutter_staggered_grid_view性能优化:解决大数据量网格渲染卡顿问题

flutter_staggered_grid_view性能优化&#xff1a;解决大数据量网格渲染卡顿问题 【免费下载链接】flutter_staggered_grid_view A Flutter staggered grid view 项目地址: https://gitcode.com/gh_mirrors/fl/flutter_staggered_grid_view flutter_staggered_grid_view…...

Sinkhorn算法实战:用Python手把手教你解决最优传输问题(附完整代码)

Sinkhorn算法实战&#xff1a;用Python手把手教你解决最优传输问题&#xff08;附完整代码&#xff09; 最优传输理论在机器学习领域正掀起一场静默的革命。想象一下这样的场景&#xff1a;你需要将一组资源从A地运往B地&#xff0c;同时希望运输成本最低&#xff1b;或者你需要…...

AIGlasses_for_navigation实际应用:为听障视障双重障碍者定制多模态反馈系统

AIGlasses_for_navigation实际应用&#xff1a;为听障视障双重障碍者定制多模态反馈系统 1. 项目背景与价值 在日常生活中&#xff0c;视障和听障人士面临着巨大的出行挑战。传统的盲杖虽然能提供基础的地面探测&#xff0c;但无法识别远处的障碍物、交通信号灯或特定地标。而…...

OFA图像语义蕴含模型效果展示:漫画分镜图+剧情假设的叙事逻辑连贯性验证

OFA图像语义蕴含模型效果展示&#xff1a;漫画分镜图剧情假设的叙事逻辑连贯性验证 1. 引言&#xff1a;当漫画遇上AI逻辑验证 你有没有过这样的经历&#xff1f;看漫画时突然发现前后剧情对不上&#xff0c;或者某个分镜的画面和对话明显矛盾&#xff1f;这种叙事逻辑的不连…...

5大核心功能解锁N_m3u8DL-RE:跨平台流媒体下载终极指南

5大核心功能解锁N_m3u8DL-RE&#xff1a;跨平台流媒体下载终极指南 【免费下载链接】N_m3u8DL-RE 跨平台、现代且功能强大的流媒体下载器&#xff0c;支持MPD/M3U8/ISM格式。支持英语、简体中文和繁体中文。 项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE …...