ROS机器人开发实践阅读笔记之ROS的架构是如何设计的

ROS系列文章目录

  1. ROS是什么及ROS的安装
  2. ROS的架构是如何设计的
  3. ROS中需要掌握的基础操作
  4. ROS中有哪些常用的组件
  5. 如何用ROS搭建一个机器人平台
  6. 如何用ROS进行机器人建模与仿真


前言


一、ROS的架构

ROS( Robot Operating System )的整体架构包括OS层,中间层及应用层。

在这里插入图片描述

OS层

事实上ROS并不是一个传统意义上的操作系统,无法像Windows、Linux一样直接运行在计算机硬件之上,而是需要依托于Linux系统

中间层

这个名词很容易会让我们联想到中间件,由于Linux具有通用性,所以其没有专门针对机器人开发提供特殊功能的中间件,这就需要ROS在中间层做更多的工作。

应用层

应用层ROS需要一个大管家,这个大管家叫ROS Master,由他来管理ROS的整个活动。

二、计算图与ROS的两种通信机制

1.计算图

下面是ROS的两种通信机制

2.消息类型机制

话题通信是ROS中基于发布/订阅模型的异步通信模式

3.服务类型机制

服务通信是ROS中基于服务器/客户端的同步通信模式

4.参数管理机制

简书大佬对于RPC通信机制的理解
这里的参数类似于ROS中的全局变量,由大管家ROS Master进行管理,其RPC通信机制较为简单,并不涉及到TCP/UDP的通信,具体过程如下图
在这里插入图片描述

三、文件系统

在这里插入图片描述
我们不妨把每个单元当做单独的集合,从上往下看,那么可以很容易得出他们之间存在这样的关系,下面的单元是上面单元的子集,如功能包是元功能包的子集。

1.“功能包”是ROS软件中的基本单元
2.“元功能包”是功能包的大集合

1.功能包与功能包清单

功能包(Package):功能包是ROS软件中的基本单元,包含ROS的节点、库、配置文件等信息。

功能包清单(Package Manifest):每个功能包都包含一个名为package.xml的功能包清单,用于记录功能包的作者信息、许可信息、依赖选项、编译标志等信息。


总结

以上就是本文的内容,本文介绍了ROS的架构组成,文件系统,计算图及两种通信机制,本文写的比较粗糙,之后会补上缺失的部分重要内容。

参考资料:
(1)《ROS机器人开发实践》 胡春旭著
(2) ROS官网 http://wiki.ros.org/melodic/Installation/Ubuntu
(3) 百度百科 https://baike.baidu.com/

如需转载请注明:转自CSDN甦傑

欢迎持续关注 我的ROS专栏

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值