我是靠谱客的博主 怕孤单雪糕,最近开发中收集的这篇文章主要介绍ROS架构(一)——ROS架构设计,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

ROS架构(一)——ROS架构设计

目录

    • 1、OS层
    • 2、中间层
    • 3、应用层

ROS架构,可以将其分为三个层次:OS层、中间层和应用层。

1、OS层

众所周知,ROS并不是一个传统意义的操作系统,不能像Windows、Linux那样直接运行在计算机硬件上,它需要依托在Linux系统上。因此在OS层,我们可以直接使用ROS官方支持程度最好的Ubuntu操作系统,当然也可以使用macOS、Arch、Debian等操作系统。

2、中间层

Linux系统是一个通用系统,并没有针对机器人开发提供特殊的中间件,因此ROS在中间层需要做大量工作,其中最为重要的就是基于TCPROS/UDPROS的通信系统。ROS的通信系统基于TCP/UDP网络,在此之上进行再次封装,也就是TCPROS/UDPROS。
通信系统使用发布/订阅、客户端/服务器等模型,实现多种通信机制的数据传输。
值得注意的是,除了上面介绍的TCPROS/UDPROS的通信机制外,ROS还提供一种进程内的通信方法——Nodelet,可以为多进程通信提供一种更优化的数据传输方式,适合对数据传输实时性方面有较高要求的应用。
在通信机制之上,ROS提供了大量机器人开发相关的库,如数据类型定义、坐标变换、运动控制等,可以提供给应用层进行使用。

3、应用层

在应用层,ROS需要运行一个管理者——Master,负责管理整个系统的正常运行。ROS社区内共享了许多的机器人应用功能包,而这些功能包内的模块是以节点为单位运行,以ROS标准的输入输出作为接口,开发者不需要关注模块的内部实现机制,需要了解的是接口规则即可实现复用,大大的提高了开发效率。
我们从系统实现的角度看,ROS也可以分为三个层次:文件系统、计算图和开源社区。
在这里插入图片描述

最后

以上就是怕孤单雪糕为你收集整理的ROS架构(一)——ROS架构设计的全部内容,希望文章能够帮你解决ROS架构(一)——ROS架构设计所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部