基于机器人操作系统的消息处理方法、装置及计算机设备制造方法及图纸

技术编号:25708107 阅读:28 留言:0更新日期:2020-09-23 02:55
本申请公开了一种基于机器人操作系统的消息处理方法、装置及计算机设备,涉及人工智能技术领域。其中方法包括:首先接收消息节点发送的消息数据,其中,所述消息节点对应机器人中的输入或输出设备;然后根据所述消息数据对应的消息主题,将所述消息数据存储在与所述消息主题对应的消息队列中;最后向订阅所述消息主题的目标消息节点,推送所述消息队列中的消息数据。本申请无需开发特定APP控制机器人所有逻辑和行为,减少前期开发成本和后期维护成本。此外,本申请还涉及区块链技术,消息数据可存储于区块链中,以保证数据私密和安全性。

【技术实现步骤摘要】
基于机器人操作系统的消息处理方法、装置及计算机设备
本申请涉及人工智能
,尤其是涉及到一种基于机器人操作系统的消息处理方法、装置及计算机设备。
技术介绍
机器人是一个系统工程,它涉及机械、电子、控制、通信、软件等诸多学科。开发一个机器人需要花很大的功夫,需要设计机械、画电路板、写驱动程序、设计通信架构、组装集成、调试、以及编写各种感知决策和控制算法,每一个任务都需要花费大量的时间。随着技术进步,机器人产业分工开始走向细致化、多层次化,如今的电机、底盘、激光雷达、摄像头、机械臂等等元器件都有不同厂家专门生产。社会分工加速了机器人行业的发展。而各个部件的集成就需要一个统一的软件平台,在机器人领域,这个平台就是机器人操作系统(RobotOperatingSystem,ROS)。目前,市面上服务的机器人,大部分可以拆解成智能终端+传感器+执行器这种结构。在机器人的开发上,通常使用一个应用(Application,APP)控制机器人所有逻辑和行为,包括语音对话、运动控制、智能交互、传感器响应等。然而,这种方法使得该应用的功能和软件规模变得很庞大,不但前期开发成本较高,并且后期不容易维护,而且一旦没有这个应用,机器人将无法工作。
技术实现思路
有鉴于此,本申请提供了一种基于机器人操作系统的消息处理方法、装置及计算机设备,主要目的在于解决目前需要开发APP来控制机器人的方式,会造成前期开发成本和后期维护成本都较高的技术问题。根据本申请的一个方面,提供了一种基于机器人操作系统的消息处理方法,该方法包括:接收消息节点发送的消息数据,其中,所述消息节点对应机器人中的输入或输出设备;根据所述消息数据对应的消息主题,将所述消息数据存储在与所述消息主题对应的消息队列中;向订阅所述消息主题的目标消息节点,推送所述消息队列中的消息数据。根据本申请的另一个方面,提供了一种基于机器人操作系统的消息处理装置,该装置包括:接收模块,用于接收消息节点发送的消息数据,其中,所述消息节点对应机器人中的输入或输出设备;存储模块,用于根据所述消息数据对应的消息主题,将所述消息数据存储在与所述消息主题对应的消息队列中;推送模块,用于向订阅所述消息主题的目标消息节点,推送所述消息队列中的消息数据。根据本申请的又一个方面,提供了一种非易失性可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述基于机器人操作系统的消息处理方法。根据本申请的再一个方面,提供了一种计算机设备,包括非易失性可读存储介质、处理器及存储在非易失性可读存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述基于机器人操作系统的消息处理方法。借由上述技术方案,本申请提供的一种基于机器人操作系统的消息处理方法、装置及计算机设备。本申请可将机器人中的输入或输出设备作为消息节点,然后根据消息主题设定消息订阅机制,使得消息主题相关的消息节点能够及时获取到与该消息主题相关的消息数据,以满足机器人功能业务的需求。与目前需要开发APP来控制机器人的方式相比,本申请无需开发特定APP控制机器人所有逻辑和行为,减少前期开发成本和后期维护成本,也无需为每个功能集成软件开发工具包(SoftwareDevelopmentKit,SDK)或者插件,采用统一的接口即可调用系统服务的功能。并且单一的消息节点出错,只会造成某个功能障碍,并不会导致整个机器人无法使用,从而可提高机器人操作系统的稳定性。上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了本申请的上述和其他目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本地申请的不当限定。在附图中:图1示出了本申请实施例提供的一种基于机器人操作系统的消息处理方法的流程示意图;图2示出了本申请实施例提供的另一种基于机器人操作系统的消息处理方法的流程示意图;图3示出了本申请实施例提供的一种消息订阅机制示例的示意图;图4示出了本申请实施例提供的一种基于机器人操作系统的消息处理装置的流程示意图。具体实施方式下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互结合。针对目前需要开发APP来控制机器人的方式,会造成前期开发成本和后期维护成本都较高的技术问题,本实施例方案提供了一种新型的融合ROS和即时通信(IM)的机器人系统框架。该系统框架可分为硬件层、系统层、应用层等几个层次。在硬件层方面,机器人上的主控板上通过串口、输入/输出(I/O)等方式,与输入设备(如电容触摸传感、身份证读卡器等)和输出设备(如LED灯控制板、点阵控制板、舵机控制板等)相连,进行通信控制。在系统硬件层,每个输入设备和输出设备对应一个软件服务进行控制。在系统层方面,可由消息节点、消息通道、消息调度策略几个部分组成。其中,与硬件层每个输入输出设备对应的每个服务称之为机器人操作系统的功能节点,每个节点能够接收消息(如控制命令)控制输出设备,也能够向外发送某种消息(如传感器的数据、摄像头采集的视频图像),因此这些功能节点可作为消息节点。机器人操作系统是分布式系统。在具体执行中,以消息服务器为中心进行数据消息的分发,该消息服务器支持点对点通信、主题的订阅推送等通讯方式。各个消息节点基于该消息服务器连接在一起,传递消息和数据,由消息服务对数据消息进行调度和分发。消息服务器与消息节点可通过消息通道进行消息通信,例如,具体实现方案可参照AndroidService之间的跨进程通信,利用Android接口定义语言(AndroidInterfaceDefinitionLanguage,AIDL)进行编辑,需要说明的是,本实施例可不限于跨进程通讯方法,如socket等。消息调度策略可为融合ROS中的订阅/推送和IM通信的消息调度策略。在消息服务器设计了几种通信模式:订阅/推送、点对点通信、系统广播。在应用层方面,本系统框架中,开放以上所述的通信方式(如订阅/推送、点对点通信、系统广播等),允许应用层程序作为消息节点接入系统层的消息服务器,使得应用层能够实现以下功能:(1)通过订阅消息的方式,接收机器人传感器(消息节点)的数据状态;(2)通过推送的方式,模拟系统、传感器事件消息,支持开发者自定义横向拓展机器人的功能;(3)通过点对点通讯的方式,能够以较小的系统开销指定调用某些系统服务的功能;(4)应用开发者所开发的应用,无需为每个功能集成SDK或者插件,采用统一的接口即可调用系统服务的功能。不仅如此,若其他开发者开发的服务应用接入了本机器人系统框架,也可以直接调用其他开发者横向拓展本文档来自技高网...

【技术保护点】
1.一种基于机器人操作系统的消息处理方法,其特征在于,包括:/n接收消息节点发送的消息数据,其中,所述消息节点对应机器人中的输入或输出设备;/n根据所述消息数据对应的消息主题,将所述消息数据存储在与所述消息主题对应的消息队列中;/n向订阅所述消息主题的目标消息节点,推送所述消息队列中的消息数据。/n

【技术特征摘要】
1.一种基于机器人操作系统的消息处理方法,其特征在于,包括:
接收消息节点发送的消息数据,其中,所述消息节点对应机器人中的输入或输出设备;
根据所述消息数据对应的消息主题,将所述消息数据存储在与所述消息主题对应的消息队列中;
向订阅所述消息主题的目标消息节点,推送所述消息队列中的消息数据。


2.根据权利要求1所述的方法,其特征在于,所述根据所述消息数据对应的消息主题,将所述消息数据存储在与所述消息主题对应的消息队列中之前,所述方法还包括:
根据向所述目标消息节点推送历史消息数据后的业务反馈记录信息,确定所述消息数据对应的消息价值等级,其中,所述历史消息数据与所述消息数据之间的相似度大于预设阈值;
根据所述消息价值等级和所述消息队列的当前状态信息,确定是否将所述消息数据存储在区块链节点的所述消息队列中。


3.根据权利要求2所述的方法,其特征在于,所述根据向所述目标消息节点推送历史消息数据后的业务反馈记录信息,确定所述消息数据对应的消息价值等级之前,还包括:
从所述业务反馈记录信息中,获取历史消息数据推送后相关业务发生异常的概率值;
获取所述历史消息数据各自对应的样本消息特征信息;
创建模型训练集,所述模型训练集中包含不同的样本消息特征信息,以及所述不同样本消息特征信息分别对应的所述概率值;
利用所述模型训练集,训练得到机器学习模型;
所述根据向所述目标消息节点推送历史消息数据后的业务反馈记录信息,确定所述消息数据对应的消息价值等级,具体包括:
将所述消息数据的消息特征信息输入到所述机器学习模型,以便获取与所述消息特征信息对应相似度大于预置阈值的目标样本消息特征信息,以及与所述目标样本消息特征信息对应的目标概率值,并根据所述目标概率值输出所述消息数据对应的消息价值等级。


4.根据权利要求3所述的方法,其特征在于,所述根据所述消息价值等级和所述消息队列的当前状态信息,确定是否将所述消息数据存储在区块链节点的所述消息队列中,具体包括:
若所述消息价值等级小于或等于第一预设等级阈值,则取消将所述消息数据存储在区块链节点的所述消息队列中;
若所述消息队列的当前状态信息符合预设繁忙状态标准,且所述消息价值等级大于所述第一预设等级阈值、且小于或等于第二预设等级阈值,则取消将所述消息数据存储在区块链节点的所述消息队列中;
若所述消息价值等级大于所...

【专利技术属性】
技术研发人员:周宸龚连银周宝贾怀礼
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1