ROS学习补充

ROS理解(类比安卓,机器人界的安卓)

可将ros和安卓手机系统进行类比。
ros里面有丰富的软件包,软件包是ros中的组织形式

除了ros系统自带的库和算法外,APT开源库和github也提供了丰富的第三方app(也就是库和各种算法,也就是各种各样的软件包,不需要自己重复造一些轮子,大大提高开发效率)
从apt源和github下载各种软件包,相当于从应用商店安装新的APP,类比一下,很多事情都可以很好的理解。

source + sh文件或者bashrc 就是运行这个文件。
.bashrc是终端程序启动脚本,每次执行终端程序也就是打开终端的时候,会首先执行一下这个脚本,完成一些环境变量的赋值等工作。

apt源,也就是镜像源
在这里插入图片描述
ROS索引是搜索ROS和ROS2资源的入口点,包括包、存储库、系统依赖项和文档。

您可以在搜索栏中输入关键字和短语,然后按资源类型筛选结果,也可以在“索引”选项卡下浏览完整的包、存储库和系统依赖项列表。
在这里插入图片描述

使用APT工具来安装这些软件包,用的就是软件包的名称
在这里插入图片描述
除了可以使用APT下载安装之外,也可以获取他们的源代码进行学习和修改。
安装语法:sudo apt install ros-noetic-rqt-robot-steering

vscode编译ros软件包快捷键配置:
在这里插入图片描述

ros的基础单元:node节点和package包
包里面有很多相关的节点,可以将包理解为节点的容器。软件包。
有package.xml文件的一般都是一个软件包。
里面存放的都是软件包,主要来源有两个 一个是安装ros时自带的,另一个就是自己在index网站里面使用命令行自己独立安装的。
通过apt下载的这些软件包,一般都是现成的可执行文件,可以直接运行;而自己创建的工作空间里面的软件包,都是源码文件,需要编译成可执行文件才可以运行!!
联想到bashrc里面的source指令,加载的就是apt下载的这些软件包的地址
后面加的source指令,加载的是我们自己创建的工作空间里面的软件包地址
在这里插入图片描述

在这里插入图片描述

话题并不只属于发布者或者订阅者,而是由ros系统创建管理的,只要节点向nodehander大管家提出话题发布需求或者话题订阅需求,这个话题就会被自动创建。 牛牛 只要有发布者发布话题或者订阅者订阅话题,那么rostopic list就会出现这个话题名。

launch文件是一个软件包的重要入口。
拿到一个陌生的软件包时,可以从launch文件入手, 通过文件名猜测它的功能,然后看他都需要运行哪些节点,庖丁解牛,一步步发现其内部机制。

ros通信中,要是给订阅节点突然不发数据了,那么订阅节点收的数据就一直是接受的最后一个数据包的内容。

在这里插入图片描述

1、launch

1.launch文件里面有各种各样的标签
launch标签为根标签。node标签 注意反斜杠
结束标记使用反斜杠 />

2、四元数 欧拉角

四元数类似于欧拉角

欧拉角:角速度有三个:俯仰 偏航 翻滚
在这里插入图片描述

3、cmakelist

ros中一个cpp文件未编写好后,不能在cmakelist中配置该cpp,否则编译出错

4、计算图

计算图中圆圈是节点 方框是话题 箭头表示数据的发布订阅方向

5、ros中的数据载体

ros中的数据载体,可能包括多个字段,不同的字段使用 . 进行选择

在这里插入图片描述
下面这种自定义的数据类型就可以使用很多字段
在这里插入图片描述

6、运算符重载

重载是c++的一大特色
在这里插入图片描述

7、rviz

rviz可以显示通用类型数据,也可以进行插件扩展,可以自定义编写插件
红绿蓝代表xyz

在这里插入图片描述

8、ros常用官方网站,官方网站wiki是一切ros知识的来源

查找各种数据类型 https://index.ros.org/search/?term=std_msgs

https://www.ros.org/about-ros/
http://wiki.ros.org/ROS/Introduction
http://wiki.ros.org/Distributions

9、占用栅格地图

在这里插入图片描述

在这里插入图片描述

封装 源文件 头文件分开编程

自定义消息类型生成的头文件:
在这里插入图片描述
在这里插入图片描述

base_link和base_footprint的区别
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值