一种节点响应方法、系统及机器人技术方案

技术编号:24805627 阅读:33 留言:0更新日期:2020-07-07 22:11
本发明专利技术适用于机器人技术领域,提供了一种节点响应方法、系统及机器人,通过在监听到节点订阅主题的订阅信息时,获取所订阅的主题的时长标识,再根据所述时长标识,确定所述主题的节点响应方式,根据所述节点响应方式执行相应的节点响应处理,通过对具有不同时长标识的主题进行不同节点响应方式,使得订阅有多个主题的节点能够对其所订阅的主题进行快速响应处理,提高了节点的响应效率,使得人们体验更好。

【技术实现步骤摘要】
一种节点响应方法、系统及机器人
本专利技术属于机器人
,尤其涉及一种节点响应方法、系统及机器人。
技术介绍
在机器人操作ROS(RobotOperatingSystem)系统中,各个节点往往是通过订阅主题topic的方式进行消息响应的。每个topic的响应时间是不一样的,有的能够快速处理并返回结果,但有的则需要一定的时间。这样,当一个节点同时订阅有多个topic时,就会存在一个问题:希望快速处理并反馈处理结果的topic并没有像期望的那样快速响应。
技术实现思路
有鉴于此,本专利技术实施例提供了一种节点响应方法、系统及机器人,以解决现有现有机器人操作系统在同时订阅多个主题时响应较慢的问题。本专利技术实施例的第一方面提供了一种节点响应方法,包括:在监听到节点订阅主题的订阅信息时,获取所订阅的主题的时长标识;根据所述时长标识,确定所述主题的节点响应方式;根据所述节点响应方式执行相应的节点响应处理。本专利技术实施例的第二方面提供了一种节点响应系统,包括:时长标识获取单元,用于在监听到节点订阅主题的订阅信息时,获取所订阅的主题的时长标识;节点响应方式确定单元,用于根据所述时长标识,确定所述主题的节点响应方式;节点响应处理单元,用于根据所述节点响应方式执行相应的节点响应处理。本专利技术实施例的第三方面提供了一种机器人,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现本专利技术实施例的第一方面提供的节点响应方法的步骤。其中,所述计算机程序包括:时长标识获取单元,用于在监听到节点订阅主题的订阅信息时,获取所订阅的主题的时长标识;节点响应方式确定单元,用于根据所述时长标识,确定所述主题的节点响应方式;节点响应处理单元,用于根据所述节点响应方式执行相应的节点响应处理。本专利技术实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其中,所述计算机程序被处理器执行时实现本专利技术实施例的第一方面提供的节点响应方法的步骤。其中,所述计算机程序包括:时长标识获取单元,用于在监听到节点订阅主题的订阅信息时,获取所订阅的主题的时长标识;节点响应方式确定单元,用于根据所述时长标识,确定所述主题的节点响应方式;节点响应处理单元,用于根据所述节点响应方式执行相应的节点响应处理。本专利技术实施例与现有技术相比存在的有益效果是:通过在监听到节点订阅主题的订阅信息时,获取所订阅的主题的时长标识,再根据所述时长标识,确定所述主题的节点响应方式,根据所述节点响应方式执行相应的节点响应处理,通过对具有不同时长标识的主题进行不同节点响应方式,使得订阅有多个主题的节点能够对其所订阅的主题进行快速响应处理,提高了节点的响应效率,使得人们体验更好。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种节点响应方法的实现流程图;图2是本专利技术实施例提供的一种节点响应处理的方法的具体实现流程图;图3是本专利技术实施例提供的一种节点响应系统的示意图;图4是本专利技术实施例提供的一种机器人的示意图。具体实施方式以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本专利技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本专利技术。在其它情况中,省略对众所周知的系统、系统、电路以及方法的详细说明,以免不必要的细节妨碍本专利技术的描述。为了说明本专利技术所述的技术方案,下面通过具体实施例来进行说明。请参考图1,图1示出了本专利技术实施例提供的一种节点响应方法的实现流程,详述如下:在步骤S101中,在监听到节点订阅主题的订阅信息时,获取所订阅的主题的时长标识。在本专利技术实施例中,当机器人操作系统中的某一节点订阅主题topic1、topic2、…、topicN时,机器人操作系统就会监听该节点所订阅主题的相关订阅信息,这里所指的订阅信息包括但不限于节点所订阅的主题的名称、数量等信息。在监听到节点订阅主题的订阅信息后,从该订阅信息中获取所订阅的主题的时长标识。在这里,时长标识包括第一时长标识和第二时长标识。每个topic调用callback函数进行消息响应所需要的处理时长并不相同,当该处理时长大于预先设定的阈值时,将第一时长标识赋予该topic。否则将第二时长标识赋予该topic。也就是说,不同的topic其时长标识并不一定是相同的。可以理解的是,第一时长标识和第二时长标识中的第一和第二并无特殊含义,仅是用来区分两种不同的时长标识。在步骤S102中,根据所述时长标识,确定所述主题的节点响应方式。在本专利技术实施例中,为了提高节点在同时处理多个topic时的响应效率,不同的时长标识其所对应的节点响应方式并不相同。当时长标识为两个不同的时长标识时,对应的节点响应方式也为两个不同的节点响应方式,即节点响应方式包括第一节点响应方式和第二节点响应方式。可以理解的是,第一节点响应方式和第二节点响应方式中的第一和第二并无特殊含义,仅是用来区分两种不同的节点响应方式。可选的,步骤S102具体为:当所订阅的主题的时长标识为第一时长标识时,确定将第一节点响应方式作为为所述主题的节点响应方式;当所订阅的主题的时长标识为第二时长标识时,确定将第二节点响应方式作为所述主题的节点响应方式。在步骤S103中,根据所述节点响应方式执行相应的节点响应处理。可选的,第一节点响应方式中包含有对应的节点响应处理步骤,具体请参考图2,图2示出了本专利技术实施例提供的一种节点响应处理的方法的具体实现流程,详述如下:在步骤S201中,将所述主题对应的订阅信息打包并发送至预先创建的队列中。在本专利技术实施例中,通过预调用函数callback_tmp将所订阅主题对应的订阅信息打包并发送至预先创建的队列中。这里的callback_tmp是指将topic打包放入到预先创建的队列中。在这里,队列主要用于存储经callback_tmp打包后的订阅信息,如果该经callback_tmp打包后的订阅信息存储有多个时,可以给其加上顺序标识以使得守候线程能够按顺序调用对应的callback进行相应的节点响应处理。在步骤S201之后,还包括生成预调用通知信息。通过该预调用通知信息来通知节点可以处理下一主题的订阅信息,也就是说节点在将时长标识为第一时长标识的topic对应的订阅信息打包发送至预先创建的队列后,该节点就可以开始处理下一topic的订阅信息,而不需要等其处理完处理本文档来自技高网...

【技术保护点】
1.一种节点响应方法,其特征在于,所述方法包括:/n在监听到节点订阅主题的订阅信息时,获取所订阅的主题的时长标识;/n根据所述时长标识,确定所述主题的节点响应方式;/n根据所述节点响应方式执行相应的节点响应处理。/n

【技术特征摘要】
1.一种节点响应方法,其特征在于,所述方法包括:
在监听到节点订阅主题的订阅信息时,获取所订阅的主题的时长标识;
根据所述时长标识,确定所述主题的节点响应方式;
根据所述节点响应方式执行相应的节点响应处理。


2.如权利要求1所述的方法,其特征在于,所述时长标识包括第一时长标识和第二时长标识,所述节点响应方式包括第一节点响应方式和第二节点响应方式。


3.如权利要求2所述的方法,其特征在于,所述用于根据所述时长标识,确定所述主题的节点响应方式的步骤,包括:
当所订阅的主题的时长标识为第一时长标识时,确定将第一节点响应方式作为为所述主题的节点响应方式;
当所订阅的主题的时长标识为第二时长标识时,确定将第二节点响应方式作为所述主题的节点响应方式。


4.如权利要求2或3所述的方法,其特征在于,当所述节点响应方式为第一节点响应方式时,所述根据所述节点响应方式执行相应的节点响应处理的步骤具体为:
将所述主题对应的订阅信息打包并发送至预先创建的队列中;
当所述队列接收到打包后的订阅信息时,通过守护线程读取并识别所述打包后的订阅信息,调用callback函数进行节点响应处理以实现节点对所述主题的订阅。


5.如权利要求2或3所述的方法,其特征在于,当所述节点响应方式为第二节点响应方式时,所述根据所述节点响应方式执行相应的节点响应处理的步骤具体为:
直接调用ca...

【专利技术属性】
技术研发人员:熊友军弓建仁
申请(专利权)人:深圳市优必选科技有限公司
类型:发明
国别省市:广东;44

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

1