《Ubuntu22.04环境下的ROS2学习笔记1》

news2024/9/20 16:52:24

一、在ROS2环境下创建工作空间

        ROS2相比ROS1来说工作空间的创建有较大的不同,同时工作空间中的四个目录被更换为src(存放源码) , build(存放编译的中间文件) , install(存放可执行文件) , log(日志)。同时命令行也有些许变化,总体上看rostopic -> ros2 topic 这种类型的改动。

二、创建工作空间的流程

        如果您是第一次进行这一步,一定会有很多报错,因为您有些东西没装,但为了让您更了解创建工作空间的最小流程,我们先看最简步骤,然后一步步安装缺少的软件。

a、创建文件夹

mkdir -p ~/ros2_ws/src

cd ~/ros2_ws/src

b、克隆样本仓库

git clone https://github.com/ros/ros_tutorials.git -b humble

如果您是第一次运行,在这一步您大概率会报错,别着急后面我们会解决报错的。

c、解决包的依赖项

cd ..

rosdep install -i --from-path src --rosdistro humble -y

这里您应该也会报错。

d、编译工作空间

colcon build

这里您应该也会报错,但应该是最后一个错误了。

e、测试工作空间

source install/local_setup.bash (奇怪的是,我没有运行这个也能运行下面语句,可能是/opt/ros/hubmle/里面的海龟程序)

ros2 run turtlesim turtlesim_node

三、报错解决

a、void

为了与第二节对应,这里设一个空标题。

d、  git clone https://github.com/ros/ros_tutorials.git -b humble  报错解决

1、首先您可能没有安装git

sudo apt install git

2、您连接不上github

cd ~

vim .gitconfig

编辑以下内容:

[url "git@github.com:"]
	pushInsteadOf = git://github.com/
	pushInsteadOf = https://github.com

c、rosdep install -i --from-path src --rosdistro humble -y 报错解决

1、没有安装rosdep

sudo apt-get install python3-rosdep

2、第一次使用需要初始化

按照他的提示:

sudo rosdep init

rosdep update

d、colcon build 没有安装colcon工具

sudo apt install python3-colcon-common-extensions

四、参考

创建工作区 — ROS 2 Documentation: 简陋的文档

Ubuntu22.04系统:fatal: 无法连接到 github.com:github.com[0: 20.205.243.166]: errno=连接超时_ubuntu22.04配置镜像无法连接git clone-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1994537.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【循环神经网络】案例:周杰伦歌词文本预测【训练+python代码】

文章目录 1、简介2、数据集3、构建词典4、构建数据集对象5、构建网络模型6、构建训练函数6.1、多分类交叉熵损失函数🔺6.2、Adam🔺6.3、代码 7、构建预测函数8、word_to_index和index_to_word8.1、word_to_index8.2、index_to_word8.3、使用场景 9、Data…

OpenHarmony编译

简介:本文将会介绍编译OpendHarmony环境的搭建、编译、和刷机(rk3568) 使用场景:修改系统源码,需要验证修改的功能是否正确、编译镜像、编译SDK 1、VS Code,下载链接,用于修改源码 2、linux环…

“低代码”平台的机遇与挑战

低代码平台的机遇 提高开发效率: 低代码平台通过提供可视化的开发工具和可重用的组件,显著提高了开发效率。开发者能够更快速地构建和部署应用,迅速响应市场需求。据普遍观点,低代码平台能够提升30%以上的开发效率,而无…

记一次用户认证代码重构中设计模式及设计原则的使用

目录 一、需求二、初始代码 - 上来就怼三、重构1 - 单一职责(方法级)四、重构2 - 单一职责(类级、策略模式)、简单工厂五、重构3 - 依赖注入(避免重复创建对象)六、重构4 - 使用Map替代if...else、享元模式…

AI浪潮下的程序员命运:消失还是进化?

随着人工智能技术的迅猛发展,程序员职业正面临着前所未有的挑战与机遇。在这个变革的时代,程序员们究竟该如何应对,才能在AI浪潮中乘风破浪,开创属于自己的朝阳之路呢? 程序员这一职业正迎来前所未有的变革&#xff0…

DC-9靶机渗透测试

DC-9靶机 文章目录 DC-9靶机信息收集web渗透后台渗透用户横向移动权限提升靶机总结 信息收集 扫描目标主机存在的端口信息 存在80和22端口 看来思路应该不会有太大变化了,但是ssh端口是处于过滤的状态 进行漏洞扫描也没扫描出有可以利用的 但知道了一些界面 web渗透…

沪深300股指期货如何操作套期保值?

沪深300股指期货的套期保值是一种重要的风险管理工具,用于对冲投资组合面临的市场风险。 以下是套期保值流程的详细步骤说明: 第一,评估套保需求:投资者首先需要基于对市场走势的深入分析和对投资组合的细致评估,确定…

python-flask-上传多个文件并存储

本地环境:win10 / centos6 , python3 flask入门看这里: ↓ python-flask结合bootstrap实现网页小工具实例-半小时速通版_bootstrap flask-CSDN博客 https://blog.csdn.net/pxy7896/article/details/137854455 动态添加和删除表格中的行&…

论文概览 |《Urban Analytics and City Science》2024.07 Vol.51 Issue.6

本次给大家整理的是《Environment and Planning B: Urban Analytics and City Science》杂志2024年7月第51卷第6期的论文的题目和摘要,一共包括16篇SCI论文! 论文1 Digital twins on trial: Can they actually solve wicked societal problems and chan…

[开端]JAVA抽象类使用到redis观察着

一、绪论 当redis内容发生变化时需要通知一些观察者做一些动作怎么做? 二、JAVA抽象类 public abstract class AbstractRedisChangeListener {public abstract void change(String key, String value, String crudType); }使用abstract进行修饰一个类 其中抽象类…

数字信号处理2: 离散信号与系统的频谱分析

文章目录 前言一、实验目的二、实验设备三、实验内容四、实验原理五、实验步骤1.序列的离散傅里叶变换及分析2.利用共轭对称性,设计高效算法计算2个N点实序列的DFT。3.线性卷积及循环卷积的实现及二者关系分析4.比较DFT和FFT的运算时间5.利用FFT求信号频谱及分析采样…

【机器学习】(基础篇三) —— 损失函数和梯度下降

损失函数 损失函数(Loss Function),也称为代价函数(Cost Function)或误差函数(Error Function),是机器学习和深度学习中一个核心的概念。它用于量化模型预测与实际目标之间的差异&a…

有序转化数组(LeetCode)

题目 给你一个已经 排好序 的整数数组 和整数 、 、 。对于数组中的每一个元素 ,计算函数值 ,请 按升序返回数组 。 解题 在时间复杂度为解决问题 def sortTransformedArray(nums, a, b, c):def f(x):return a * x * x b * x cn len(nums)result…

配置Mysql的慢查询日志

一、什么是Mysql慢查询日志 MySQL慢查询日志是MySQL数据库自带的一个功能,用于记录执行时间超过指定阈值的SQL语句,以便于后续的性能优化工作 帮助开发和DBA发现哪些SQL语句需要优化,在哪些地方需要修改,以提高数据库的性能 默认…

【Hot100】LeetCode—51. N 皇后

原题链接:51. N 皇后 1- 思路 使用回溯的方式实现,回溯三部曲 数据结构:定义三维数组,收集结果1- 回溯终止条件:如果遍历到 row n-1 此时就是结果收集的时刻2- 执行 for 循环遍历,执行递归和回溯 2- 实现…

【Linux】系列入门摘抄笔记-3-系统管理、显示相关命令

系统管理、显示相关命令 shutdown/关机和重启 sync 数据同步:把内存中的数据强制向硬盘中保存。不放心的话,应该在关机或重启之前手工执行几次,避免数据丢失。 shutdown [选项] 时间 [警告信息] shutdown -h now shutdown -h 05:30 shutdown -h 5 (5分钟后关机)reb…

计算机毕业设计选题推荐-视频点播系统-Java/Python项目实战

✨作者主页:IT毕设梦工厂✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

ubuntu安装微信

ubuntu安装微信 微信特性 可以截图无聊天乱码 安装指南 输入下面命令 wget -c -O atzlinux-v12-archive-keyring_lastest_all.deb https://www.atzlinux.com/atzlinux/pool/main/a/atzlinux-archive-keyring/atzlinux-v12-archive-keyring_lastest_all.debsudo apt -y insta…

全国不动产登记技能竞赛有哪些奖项

(一)个人综合奖 个人综合奖在参加代表展示的选手中产生。 1.对获得全国决赛第1名的选手,符合条件的,按程序向中华全国总工会推荐申报“全国五一劳动奖章”。 2.对获得全国决赛前15名的选手,由竞…

【Vue】vue3中通过自定义指令实现数字的动态增加动画

在Vue 3中通过自定义指令实现数字的动态增加动画,可以利用Vue的自定义指令功能,这允许你扩展Vue的内置指令,使得DOM操作更加灵活和强大。以下是如何创建一个自定义指令来实现数字动态增加动画的步骤: 效果演示 代码实现 1、定义指…