1,ROS的结点和结点管理器

视频的链接:【古月居】古月·ROS入门21讲 | 一学就会的ROS机器人入门教程_哔哩哔哩_bilibili

2,ROS的通信机制

ros通信机制包含两种模式,话题和服务两种方式

RPC是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据。

2.1 话题通信

可以使用下面的方式理解,两个结点间传输数据的管道叫做话题,传输的数据类型是消息。话题是两个结点之间的一种通信方式,是异步且单向的。一端到另一端称为从发布者到订阅者。消息是要说明话题发的数据类型是什么样的。

如上图黄色部分,相机结点(发布者)发布图像数据(话题),格式RGB图像(消息),订阅者是图像处理结点,就是两个结点的话题是相机发送了一个RGB格式的图像,过程是单向且异步的

话题通信的缺点:

是一种异步通信,订阅者到底有没有拿到数据也不知道,有可能阻塞了拿不到,但是发布者不知道。

2.2服务通信

话题通信可以理解为时写信,服务通信可以理解为是打电话,双向的状态全知

如上面的图中的黄色部分所示:相机结点和图像处理结点,使用服务通信的方式。图像处理结点发送请求,要求图像数据传入,相机收到指令,回复并将图像数据传过去;

客户端(图像处理)提需求,服务端(相机)提供客户需求对应的解决结果,服务是请求一次服务一次

两者的区别为:

3、ROS中的参数

参数更多是设置一些不变的参数,不适合储存动态变化的参数

4.ROS文件系统的构成

ROS学习笔记---ros的通信机制相关推荐

  1. ROS学习笔记-多机器人通信(1)-实现两台机器通信

    ROS是一个分布式的计算环境.一个正在运行的ROS可以在多个机器人之间分布成几十甚至上百个节点.取决于系统的配置方式,任何节点可能需要随时与任何其他节点进行通信,为实现使用同一个master控制多台机 ...

  2. ROS学习笔记-ROS订阅和发布节点

    一个简单的ROS包,一个发布者,一个订阅者 刚开始学习ROS,参考网上的资料完成了测试节点的编写,记录一下. 个人习惯在home/Develop目录中做开发,于是在Develop目录下面创建了一个RO ...

  3. ROS学习笔记-ROS语音识别与语音输出[2]

    说明:代码部分是基于古月居前辈的例程,在此对胡老师表示感谢!! 语音识别与输出功能框图: main()函数: int main(int argc, char* argv[]) {// 初始化ROSro ...

  4. ROS学习笔记-ROS语音识别与语音输出[1]

    说明:代码部分是基于古月居前辈的例程,在此对胡老师表示感谢!! 语音识别功能框图: 调用过程: roscore rosrun robot_voice iat_publish rostopic pub ...

  5. ROS学习笔记------ROS机器人系统设计-----基础编程 day 7 2019/3/2 帅某(URDF机器人建模,urdf功能包的建立,urdf相关模型建立代码已经上传)

    URDF机器人建模 相关urdf代码链接: https://download.csdn.net/download/weixin_43262513/10990016 1.urdf介绍 URDF(Unif ...

  6. ROS学习笔记(八): ROS通信架构

    ROS学习笔记(八): ROS通信架构 文章目录 01 Node & Master 1.1 Node 1.2 Master 1.3 启动master和node 1.4 rosrun和rosno ...

  7. ROS学习笔记(1):发布者和订阅者

    ROS学习笔记(1):publishers and subscribers 1.ros通信简介 2.C++中的类与对象 3.publishers/subscribers 4.常用指令 1.ros通信简 ...

  8. ROS学习笔记(一)补充篇 参考创客制造

    我将ROS的CPP部分分成7个部分: 1.基础的node param 2.动态调节参数 3.关于TF变换 4.actionlib 5.插件技术 6.movebase 7.nodelet技术 前言 相比 ...

  9. 随想录(ros学习笔记)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] ros,全称robot operating system.说它是操作系统,其实也不全对,因为它实 ...

  10. ROS学习笔记基础2(基础知识和ROS架构)

    ROS学习笔记1(基础知识和ROS架构) 文章目录 ROS学习笔记1(基础知识和ROS架构) 1. 什么是ROS 2. ROS和其他机器人平台有什么不同 3. ROS架构组成 3.1 文件系统级别 3 ...

最新文章

  1. Poj2420 A Star not a Tree? 模拟退火算法
  2. IE 中的一些脚本问题
  3. NMS(Non-maximum suppression)非极大抑制
  4. String转为byte[] ,byte[]转为String,byte[]与String的相互转换
  5. (转)嘉信理财推出全新智能投顾平台
  6. Android 百度地图搜索框实现,仿百度地图街景实现
  7. Eclipse超级好看的主题,极力推荐
  8. 经典Hive-SQL面试题及答案
  9. Python 全栈打造某宝客微信机器人
  10. 微信小程序转发到朋友圈
  11. python3手机版画图软件_Python实现画图软件功能方法详解
  12. python行与行之间必须对齐_Python中列名及其对应行的对齐
  13. vue实现导入表格数据【纯前端实现】
  14. 如何做云班课上的计算机作业,云班课不分组怎么提交作业
  15. 小程序实现分享朋友圈
  16. C#执行js中的函数的问题,以sohu邮箱登陆密码js的MD5为例
  17. 利用Python实现模糊查找
  18. AT命令的简单介绍和使用
  19. Excel·VBA按列拆分工作表、工作簿
  20. 计算机主板i3 i5区别,装机那些事儿之挑选适合自己的CPU;i3/i5/i7的区别

热门文章

  1. 逻辑强化(03)真假推理 知识练习
  2. ArcBlock 问答 | 扎实打造影响整个区块链生态的产品
  3. Browserslist:caniuse-lite is outdated. Please run next command `npm update`
  4. 我的数学学习回忆录——一个数学爱好者的反思(二)
  5. bug:Bus error的解决方法(zz)
  6. php视频边下边播,PHP + NGINX 控制视频文件播放,并防止文件下载
  7. wordpress调用the_excerpt()不带p标签
  8. 深入理解JS的delete
  9. 《动手学习深度学习》第二天
  10. 学习笔记-Wood‘s anomalies