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

〖任务1〗ROS2 jazzy Linux Mint 22 安装教程

前言:
本教程在Linux系统上使用。

目录

    • 一、linux安装
    • 二、linux VPN安装
    • 三、linux anaconda安装(可选)
    • 四、linux ROS2 安装
    • 五、rosdep init/update 解决方法
    • 六、安装GUI

一、linux安装

  • 移动硬盘安装linux:[LinuxToGo教程]把ubuntu装进移动固态,随时随用
  • 以下是我建议安装linux mint版本的清单:
    • 图吧工具箱:图拉丁吧工具箱
    • linux mint: Linux Mint 22
    • VMware17.5.0:链接: 百度网盘,提取码: 72gu
  • 有linux系统主机就直接使用。

二、linux VPN安装

  • https://ivpsr.com/116.html

三、linux anaconda安装(可选)

可在anaconda上安装不同版本的ROS2。
(1)下载Anaconda安装脚本:
可以从Anaconda官网下载Anaconda安装脚本,或者使用以下命令下载最新版本:

wget https://repo.anaconda.com/archive/Anaconda3-2023.03-Linux-x86_64.sh

(2)运行安装脚本:
运行下载的安装脚本,并按照提示完成安装:

bash Anaconda3-2023.03-Linux-x86_64.sh

安装过程会提示您接受许可协议、选择安装位置等。记得选择安装环境变量。
(3)验证安装:
确认Anaconda已成功安装并可以使用:

conda -V

(4)创建Anaconda虚拟环境:
创建一个新的Anaconda虚拟环境,例如名为ros2_env:

conda create -n ros2_env python=3.8

(5)激活虚拟环境:
激活刚刚创建的虚拟环境:

conda activate ros2_env

四、linux ROS2 安装

  • 参考:十分钟的ROS2安装方法

  • 以下是我整理的教程:

    ROS2 jazzy的安装:

    (1)把ROS2的源加入到当前系统:

    sudo apt install software-properties-common
    sudo add-apt-repository universe
    

    (2)加入 ROS 2 GPG key:

    sudo apt update && sudo apt install curl -y
    

    方法一:

    wget http://packages.ros.org/ros.key
    sudo mv ros.key /usr/share/keyrings/ros-archive-keyring.gpg
    

    方法二:

    sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
    

    注意: 由于网络问题,可能需要多试几次

    方法三(手动下载):

    可以在主机下载好源文件,然后使用wx文件传助手网页版,在虚拟机火狐打开这个链接,然后传输文件,在虚拟机下载完成后,可以在Downloads目录下打开终端使用命令:

    sudo mv ros-archive-keyring.gpg /usr/share/keyrings/
    

    移动到目标目录即可。

    (3)加入ROS安装源

    echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
    

    (4)安装ros开发工具

    sudo apt update && sudo apt install ros-dev-tools
    

    (5) 安装ROS2 jazzy桌面版本

    sudo apt upgrade
    sudo apt install ros-jazzy-desktop
    

    解决桌面版本方案:https://blog.csdn.net/weixin_43328157/article/details/136348903

    (6) 添加jazzy的环境变量到.bashrc文件:

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

    NOTE:
    环境变量中jazzy与安装版本ros-jazzy-desktop对应。
    若安装的是ros-iron-desktop,环境变量则是:

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

    其余版本类推。

    (7)检查安装:

    1. 关闭之前的所有终端
    2. 打开一个新终端,输入:
    ros2 run turtlesim turtlesim_node
    
    1. 打开另一个终端,输入:
    ros2 run turtlesim turtle_teleop_key
    
    1. 按键盘方向键乌龟移动

    (8)安装成功:

    在这里插入图片描述

五、rosdep init/update 解决方法

rosdep init/update 解决方法

六、安装GUI

sudo apt install ros-jazzy-rqt*

相关文章:

〖任务1〗ROS2 jazzy Linux Mint 22 安装教程

前言: 本教程在Linux系统上使用。 目录 一、linux安装二、linux VPN安装三、linux anaconda安装(可选)四、linux ROS2 安装五、rosdep init/update 解决方法六、安装GUI 一、linux安装 移动硬盘安装linux:[LinuxToGo教程]把ubunt…...

图像增强:使用周围像素填充掩码区域

制作图像需要填充的掩码区域,对需要填充的位置的mask赋值非0,不需要填充赋值为0使用cv2.inpaint对图像掩码mask中非0元素位置的图像像素进行修复。从而实现使用周围像素填充掩码区域cv2.inpaint 是 OpenCV 库中的一个函数,用于图像修复(inpainting),即填充图像中的损坏区…...

给虚拟机Ubuntu扩展硬盘且不丢数据

1.Ubuntu关机状态下先扩展,如扩展20GB 2.进入ubuntu,切换root登录,必须是root全选,否则启动不了分区工具gparted 将新的20GB创建好后,选择ext4,primary; 3.永久挂载 我的主目录在/并挂载到/dev/sda1 从图…...

Oracle(41)如何使用PL/SQL批量处理数据?

在PL/SQL中,批量处理数据是一种高效的方法,可以在数据库中处理大量数据,而无需逐行操作。批量处理数据的关键技术包括: PL/SQL表(索引表):在内存中存储数据以进行批量操作。FORALL语句&#xf…...

JavaEE 第2节 线程安全知识铺垫1

目录 一、通过jconsole.exe查看线程状态的方法 二、Thread类的几种常见属性 三、线程状态 一、通过jconsole.exe查看线程状态的方法 通过jconsole查看线程状态非常实用的方式 只要你安装了jdk,大致按照这个目录就可以找到这个可执行程序: 然后双击这…...

LeetCode Hot100 零钱兑换

给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是无限的。 示…...

微信小程序接口实现语音转文字

一、效果展示 我们有一个按钮,点击“开始录音”按钮,此时按钮变成“停止录音”并开始计时,点击停止录音后,界面上即可展示返回的文字 二、代码实现 完整代码实现见github 1.小程序端代码 // index.js const recorderManager…...

[Spark Streaming] 读取 Kafka 消息, 插入到 MySQL

以下是一个简单的使用 Spark Streaming 读取 Kafka 消息、统计数据后插入到 MySQL 中的 Scala 代码示例: import org.apache.spark.SparkConf import org.apache.spark.streaming.{Seconds, StreamingContext} import org.apache.spark.streaming.kafka.KafkaUtils…...

精选3款国内wordpress 主题,建站首选

WordPress作为一款功能强大且易于使用的建站平台,已经成为了许多企业和个人搭建网站的首选。为了帮助大家更好地选择适合自己的WordPress主题,小编将为大家推荐三款国内优秀的WordPress主题:子比主题、OneNav主题和RiTheme主题。 1.子比主题…...

JavaScript之 Uint8Array 类型数组(solana pda场景中的大小端)

文章目录 JavaScript之 Uint8Array 类型数组numberToUint8Array 数字转换为Uint8Array为什么要把数字转换为Uint8Array数字转换为Uint8Array的大小端问题solana pda场景中的大小端JavaScript之 Uint8Array 类型数组 Uint8Array 数组类型表示一个8位无符号整型数组,创建时内容…...

《Windows API每日一练》24.1 WinSock简介

本节将逐一介绍WinSock的主要特性和组件,套接字、WinSock动态库的使用。 本节必须掌握的知识点: Windows Socket接口简介 Windows Socket接口的使用 第178练:网络时间校验 24.1.1 Windows Socket接口简介 ■以下是WinSock的主要特性和组件…...

openwrt编译Dockerfile

一、Dockerfile FROM ubuntu:20.04ENV TZAsia/ShanghaiRUN apt-get update && \apt-get install -y --no-install-recommends tzdata && \ln -fs /usr/share/zoneinfo/$TZ /etc/localtime && \dpkg-reconfigure --frontend noninteractive tzdata &am…...

【C语言】分支与循环(循环篇)——结尾猜数字游戏实现

前言 C语言是一种结构化的计算机语言,这里指的通常是顺序结构、选择结构、循环结构,掌握这三种结构之后我们就可以解决大多数问题。 分支结构可以使用if、switch来实现,而循环可以使用for、while、do while来实现。 1. while循环 C语言中…...

【数据结构】链表篇

文章目录 1.链表的概念以及结构2.链表的分类2.1 单向或者双向2.2 带头或者不带头2.3 循环或者不循环2.4 无头单向非循环链表和带头双向循环链表 3.单链表的实现3.1 准备工作3.2 节点的创建3.3 单链表的释放3.4 打印链表3.5 单链表的尾插3.6 单链表的尾删3.7 单链表头删3.8 单链…...

Python SciPy介绍

在数据科学和工程领域,Python已经成为了一个不可或缺的工具,这主要得益于其强大的库和框架支持。其中,SciPy库作为Python科学计算的核心库之一,为研究人员、工程师和数据分析师提供了大量高效的算法和数学工具。本文将带您深入了解…...

docker镜像源

1、直接在服务器上创建这个文件,将镜像源配置在里面 /etc/docker/daemon.json {"registry-mirrors": ["https://do.nark.eu.org","https://dc.j8.work","https://docker.m.daocloud.io","https://dockerproxy.com&qu…...

【clion】clion打开文件目录卡死问题

巨卡,几乎无法打开,据说是fsnotifier64.exe 被限制了。删除 火绒就好了。 关闭windows defender 官方:关闭 Windows 安全中心中的Defender 防病毒保护 此时,删除火绒: 界面变这样了:...

[CR]厚云填补_GridFormer

GridFormer: Residual Dense Transformer with Grid Structure for Image Restoration in Adverse Weather Conditions Abstract 恶劣天气条件下的图像恢复是计算机视觉中的一个难点。在本文中,我们提出了一种新的基于变压器的框架GridFormer,它可以作为…...

PostgreSQL数据库内核(二):通过initdb传递guc参数

目录 增加guc参数 initdb参数传递 pg_ctl参数传递 参数验证 新增guc参数pg_test_parameter,支持从initdb和pg_ctl命令中传递/覆盖参数,使用场景是TDE透明加密指定算法或者某些定制化需求。 增加guc参数 pg源码是这样描述guc参数的:它是全局…...

rust常用的宏使用记录(九)

matches! 宏使用 matches! 是 Rust 标准库中一个非常有用的宏,它允许你方便地匹配一个表达式的结果是否符合某个模式。它的基本用法如下:matches!(expression, pattern) 这个宏返回一个布尔值,如果 expression 匹配 pattern,则返回…...

【Python机器学习】支持向量机——手写数字识别问题

基于SVM的数字识别步骤: 1、收集数据:提供的文本文件 2、准备数据:基于二值图像构造向量 3、分析数据:对图像向量进行目测 4、训练算法:采用两种不同的核函数,并对径向基核函数采用不同的设置来运行SMO算法…...

学习笔记-Cookie、Session、JWT

目录 一、验证码的生成与校验 1. 创建生成验证码的工具类 2. 写一个 Controller 3. 实现验证码验证 1. 获取验证码 2. 验证码请求过程 3. 验证码的校验 4. 原理说明 5. 验证 6. 总结 二、JWT登录鉴权 1. 为什么要做登录鉴权? 2. 什么是 JWT 3. JWT相比…...

题海战术,面试必胜秘诀

目录 1.Java 的优势是什么?2.什么是 Java 的多态特性?3.Java 中的参数传递是按值还是按引用?4.为什么 Java 不支持多重继承?5.什么是 Java 中的不可变类?总结 题目 来自面试鸭刷题神器 1.Java 的优势是什么? Java 的跨平台性、垃圾回收机制以及其强…...

设计模式详解(十九)——命令模式

命令模式简介 命令模式定义 命令模式(Command Pattern)是一种在面向对象程序设计中常用的行为型设计模式。命令模式的核心思想在于将请求封装成一个对象,从而使发出请求的责任和执行请求的责任分割开。它可以让请求发送者和请求接收者之间消…...

实战:MySQL数据同步神器之Canal

1.概叙 场景一:数据增量实时同步 项目中业务数据量比较大,每类业务表都达到千万级别,虽然做了分库分表,每张表数据控制在300W以下,但是效率还是达不到要求,为了提高查询效率,打算使用ES进行数…...

5.6软件工程-运维

运维 系统转换系统维护系统评价练习题 系统转换 新老系统的转换 系统转换是指:新系统开发完毕,投入运行,取代现有系统的过程,需要考虑多方面的问题,以实现与老系统的交接,有一下三种转换计划: …...

在JavaScript中如何确保构造函数只被new调用

构造函数是一个特殊的函数,用于初始化一个新创建的对象。它是在创建对象时自动调用的。构造函数通常用于为对象的属性赋值,或者执行其他必要的设置。 使用函数名大写字母开头,这是一种命名约定,用于区分构造函数和普通函数。如何…...

【数据结构算法经典题目刨析(c语言)】反转链表(图文详解)

💓 博客主页:C-SDN花园GGbond ⏩ 文章专栏:数据结构经典题目刨析(c语言) 目录 一、题目描述 二、思路分析 三、代码实现 一、题目描述: 二、思路分析 : 通过三个指针n1,n2,n3来实现链表的反转 1.首先初始化 n1为…...

机器学习之争:Python vs R,谁更胜一筹?

一、引言 随着人工智能和大数据的迅速发展,机器学习已成为现代科技的重要组成部分。在医疗、金融、零售、制造等多个领域,机器学习技术的应用无处不在。从数据分析到预测建模,再到深度学习,机器学习正在改变我们的工作和生活方式…...

Vulnhub靶机:JANGOW_ 1.0.1

目录 前言: 一、安装虚拟机Jangow:1.0.1靶机 二、Web部分 前言: 难度:简单,本文使用VirtualBox打开,下载地址: https://download.vulnhub.com/jangow/jangow-01-1.0.1.ova 一、安装虚拟机J…...

怎么做营销网站推广/关键词优化和seo

1. 下载、安装smalidea插件打开AndroidStudio,点击Preferences... | Plugins, 选择Install plugin from disk安装插件2. 下载apktool,反编译要调试的apk文件通过以下命令反编译APK文件java -jar apktool.jar d MyApp.apk3. 将反编译的文件夹导入AndroidS…...

怎么建设网站临汾/aso优化费用

今天写一篇关于使用.NET进行Active Directory开发方面的文章 大家都知道NativeGuid是Active Directory中对象的唯一标识,那么如何通过这个GUID来获取(查询)到相应DirectoryEntry对象的实例呢? .NET Framework中的DirectoryService命名空…...

wordpress图片外链设置/网络营销成功案例ppt

前前后后,大概两个月的时间,lunar这个项目终于达到了一个很高的完整度。 Lunar是一个Python语言的网络框架,类似于Django,Flask,Tornado等当下流行的web framework。最初有这个想法是在大二下学期,当时接触…...

jquery mobile移动网站开发 pdf/中国十大搜索引擎排名最新

RedHat7.之.图形化切换 从黑窗口(纯指令输入界面)切换到图形化界面,使用root用户执行指令:startx 指令:startx 如有问题,欢迎纠正!!! 如有转载,请标明源处&am…...

济南网站建设在哪里/百度竞价推广收费

JuJu团队1月2号工作汇报 JuJu Scrum 团队成员今日工作剩余任务困难飞飞--测试dataloader无婷婷调试代码提升acc无恩升--测试dataloader无金华--嵌入word-embedding无胡凯--待安排无陈灿协调协调无PM报告 整个项目的任务量预期为240 people*hour, 目前已经解决了90 p…...

网站和平台有什么区别/seo外链怎么做

0. 什么是高可用 高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间。 假设系统一直能够提供服务,我们说系统的可用性是100%;如果系统…...