[发明专利]一种非ROS程序与ROS程序的交互通信系统有效
申请号: | 202210566735.5 | 申请日: | 2022-05-24 |
公开(公告)号: | CN115052031B | 公开(公告)日: | 2023-05-19 |
发明(设计)人: | 陈晓聪;张艺川 | 申请(专利权)人: | 广州大学 |
主分类号: | H04L67/30 | 分类号: | H04L67/30;H04L67/56;H04L67/566;H04L69/08;H04L69/163 |
代理公司: | 广州高炬知识产权代理有限公司 44376 | 代理人: | 孙明科 |
地址: | 510006 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 ros 程序 交互 通信 系统 | ||
本发明提供了一种非ROS程序与ROS程序的交互通信系统,包括ROS节点和代理节点,代理节点包括代理发布节点和代理订阅节点,代理发布节点包含两个部分,ROS发布器和基于TCP通信与中心通信节点的订阅者,代理订阅节点包含两个部分,ROS订阅器和基于TCP通信与中心通信节点的发布器。本发明提供了ROS程序当中的中间件,基于TCP通讯方式以Protobuf格式的API为非ROS环境提供与ROS程序进行交互通信的方法,实现高吞吐率,在网络中减轻通信带宽压力,简化非ROS节点与ROS节点的环境配置,只需要一个launch文件即可实现。
技术领域
本发明属于网络通信技术领域,特别涉及一种非ROS程序与ROS程序的交互通信系统。
背景技术
ROS是一个适用于机器人编程的框架,这个框架把原本松散的零部件耦合在了一起,为他们提供了通信架构。ROS虽然叫做操作系统,但并非Windows、Mac那样通常意义的操作系统,它只是连接了操作系统和你开发的ROS应用程序,所以它也算是一个中间件,基于ROS的应用程序之间建立起了沟通的桥梁,所以也是运行在Linux上的运行时环境,在这个环境上,机器人的感知、决策、控制算法可以更好的组织和运行。
在一个ROS程序中,包含了一系列的独立节点。这些节点之间,通过发布/订阅的消息模型进行通信。例如,某个传感器的驱动可以实现为一个节点,然后以发布消息的形式对外发送传感器数据。这些数据可以被多个其他节点接收,例如:过滤器,日志系统等等。
ROS程序中的节点可能位于不同的主机上,例如:在一个Arduino设备上发布消息,一台笔记本电脑订阅这些消息,一个Android手机也监测这些消息。节点之间通过发布和订阅主题进行通讯。例如,在某个机器人系统中,位于机器人上有一个相机模块可以获取图像数据。另外在机器人上有一个图像处理模块需要获取图像数据,与此同时还有另外一个位于个人PC上的模块也需要这些图像数据。那么,相机模块可以发布/image_data这个主题供其他两个模块来订阅。
ROS程序中包含了一个主节点,主节点使得其他节点可以查询彼此以进行通讯。所有节点都需要在主节点上进行注册,然后就可以与其他节点通讯了。
目前官方ROS实现分布式通信,需要在所有独立节点和主节点先安装ROS程序,然后在主节点布置ROS主通信程序,其它节点可以连上这个主通信程序。
因此,实现跟ROS进行分布式通信成本太高昂,大家寻思用C/S架构可能更符合移动平台的需求,于是提出了rosbridge协议,该协议的基本思想是将节点间的分布式通信,改成client节点与一个代理节点进行C/S通信,然后代理节点再将请求转发给server节点,多端就不需要实现整个ROS平台,只需要跟代理节点通信即可。它通过websocket以JSON格式的API为非ROS环境提供ROS通信支持
rosbridge采用websocket协议,WebSocket是为了满足基于Web的日益增长的实时通信需求而产生的。在传统的Web中,要实现实时通信,通用的方式是采用HTTP协议不断发送请求。
rosbridge以JSON作为API,JSON是一种轻量级的数据交换格式。它基于ECMAScript(欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。JSON无法实现二进制的有效传输,如:需要把一张图片或二进制数据序列化成BASE64或其它编码方法成字符串。但这种方式浪费空间和带宽,序列化的过程占用时间,浪费各节点的CPU时间。
发明内容
本发明提供一种非ROS程序与ROS程序的交互通信系统,以解决现有技术存在的浪费带宽(HTTP HEAD是比较大的),又消耗服务器CPU占用(没有信息也要接受请求),无法实现二进制的有效传输,列化的过程占用时间,浪费各节点的CPU时间的问题。
本发明提供如下的技术方案:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州大学,未经广州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210566735.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种护理用采血工作车
- 下一篇:一种数据处理方法、装置和电子设备