【技术实现步骤摘要】
一种多ROS的服务发现系统
本专利技术涉及机器人领域,特别涉及一种多ROS的服务发现系统。
技术介绍
目前,可以通过数据分发服务(DataDistributionService,DDS)技术实现对机器人操作系统(RobotOperationSystem,ROS)中分布式节点的服务发现功能。DDS的核心是以数据为中心的发布-订阅DCPS(Data-CentricPublish-Subscribe),即发布者能高效地将正确的信息传递给适当的订阅者。通过发布者和订阅者在DDS中进行注册,能够可靠有效地实现节点之间的服务发现功能。但是,DDS实现ROS中的服务发现时,存在占用系统资源过多的问题。服务发现作为基础设施,原则上不应该占用过多的资源。在具体的应用场景上,将会造成处理瓶颈,无法满足应用场景的需求。并且,在多个ROS协同作业的环境中,DDS无法实现多个ROS之间的服务发现功能。
技术实现思路
有鉴于此,本申请提供了一种多ROS的服务发现系统,以解决以下问题的其中之一:DDS实现ROS中的服务发现功能时存在的占用系统资源过多的问题,以及DDS无法实现多个ROS之间的服务发现功能。根据本申请的一个方面,提供了一种多ROS的服务发现系统,包括:至少一个分布式存储系统和多个ROS,一个分布式存储系统对应至少一个ROS,每个ROS节点中包括一个分布式存储客户端;其中,一个ROS节点中的分布式存储客户端,用于与对应的分布式存储系统通信该ROS节点的服务状态信息;接收来自对应的分布式存储系 ...
【技术保护点】
1.一种多ROS的服务发现系统,其特征在于,包括:至少一个分布式存储系统和多个ROS,一个分布式存储系统对应至少一个ROS,每个ROS节点中包括一个分布式存储客户端;其中,/n一个ROS节点中的分布式存储客户端,用于与对应的分布式存储系统通信该ROS节点的服务状态信息;接收来自对应的分布式存储系统的ROS节点的服务状态通知;其中,服务状态包括ROS节点的节点注册、节点变更或节点下线,或者ROS节点的服务注册、服务变更或服务注销;/n一个分布式存储系统,用于根据与对应的分布式存储客户端的通信,维护并保存分布式存储客户端所在的ROS节点的服务状态信息,并将保存的ROS节点服务状态信息通知给对应的ROS节点中的分布式存储客户端和/或同步给其它的分布式存储系统;或者获取其它的分布式存储系统同步的ROS节点服务状态信息,并将获取的ROS节点服务状态信息通知给对应的ROS节点中的分布式存储客户端。/n
【技术特征摘要】
1.一种多ROS的服务发现系统,其特征在于,包括:至少一个分布式存储系统和多个ROS,一个分布式存储系统对应至少一个ROS,每个ROS节点中包括一个分布式存储客户端;其中,
一个ROS节点中的分布式存储客户端,用于与对应的分布式存储系统通信该ROS节点的服务状态信息;接收来自对应的分布式存储系统的ROS节点的服务状态通知;其中,服务状态包括ROS节点的节点注册、节点变更或节点下线,或者ROS节点的服务注册、服务变更或服务注销;
一个分布式存储系统,用于根据与对应的分布式存储客户端的通信,维护并保存分布式存储客户端所在的ROS节点的服务状态信息,并将保存的ROS节点服务状态信息通知给对应的ROS节点中的分布式存储客户端和/或同步给其它的分布式存储系统;或者获取其它的分布式存储系统同步的ROS节点服务状态信息,并将获取的ROS节点服务状态信息通知给对应的ROS节点中的分布式存储客户端。
2.根据权利要求1所述的系统,其特征在于,一个ROS节点中的分布式存储客户端与对应的分布式存储系统通信该ROS节点的节点注册信息,包括:
一个ROS节点中的分布式存储客户端向对应的分布式存储系统发送该ROS节点的节点注册请求,节点注册请求中包括该ROS节点的标识信息;
一个分布式存储系统根据与对应的分布式存储客户端的通信,维护并保存分布式存储客户端所在的ROS节点的节点注册信息,包括:
分布式存储系统接收来自对应的一个分布式存储客户端的节点注册请求,存储该节点注册请求中包括的ROS节点的标识信息。
3.根据权利要求1所述的系统,其特征在于,一个ROS节点中的分布式存储客户端与对应的分布式存储系统通信该ROS节点的节点变更信息,包括:
一个ROS节点中的分布式存储客户端向对应的分布式存储系统发送该ROS节点的节点变更请求,节点变更请求中包括该ROS节点的标识信息和变更的ROS节点信息;
一个分布式存储系统根据与对应的分布式存储客户端的通信,维护并保存分布式存储客户端所在的ROS节点的节点变更信息,包括:
分布式存储系统接收对应的一个分布式存储客户端的节点变更请求,根据节点变更请求中包括的ROS节点的标识信息,存储该节点变更请求中包括的变更的ROS节点信息。
4.根据权利要求1所述的系统,其特征在于,一个ROS节点中的分布式存储客户端与对应的分布式存储系统通信该ROS节点的节点下线信息,包括:
一个ROS节点中的分布式存储客户端停止向对应的分布式存储系统发送心跳信号;或者,一个ROS节点中的分布式存储客户端向对应的分布式存储系统发送离线消息,离线消息中包括该ROS节点的标识;
一个分布式存储系统根据与对应的分布式存储客户端的通信,维护并保存分布式存储客户端所在的ROS节点的节点下线信息,包括:
分布式存储系统在预定时间内未收到来自对应的一个分布式存储客户端的心跳信号后,将该分布式存储客户端对应的ROS节点的服务状态修改为节点下线;或者,分布式存储系统接收对应的一个分布式存储客户端的离线通知,根据该离线通知中包括的ROS节点的标识,将对应的ROS节点的服务状态修改为节点下线。
5.根据权利要求1所述的系统,其特征在于,一个ROS节点中的分布式存储客户端与对应的分布式存储系统通信该ROS节点的服务注册信息,包括:
一个ROS节点中的分布式存储客户端向对应的分布式存储系统发送该ROS节点的发布者注册请求或者订阅者注册请求,其中,发布者注册请求中包括ROS节点的标识、发布的服务标题和服务提供信息,订阅者注册请中包括ROS节点的标识、订阅的服务标题和服务接收信息;
一个分布式存储系统根据与对应的分布式存储客户端的通信,维护并保存分布式存储客户端所在的ROS节点的服务注册信息,包括:
分布式存储系统接收一个发布者注册请求,关联记录并存储该发布者注册请求中包括的发布的服务标题、ROS节点的标识信息和服务提供信息;或者,接收一个订阅者注册请求,关联记录并存储该订阅者注册请求中包括的订阅的服务标题、ROS节点的标识信息和服务接收信息。
...
【专利技术属性】
技术研发人员:王路,刘伟,苏磊,
申请(专利权)人:北京图森智途科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。