一种用于机器人的安全输出方法以及机器人与流程

文档序号:12677294阅读:244来源:国知局
一种用于机器人的安全输出方法以及机器人与流程

本发明涉及机器人领域,具体涉及一种用于机器人的安全输出方法以及机器人。



背景技术:

随着机器人技术的不断发展,智能机器人越来越多的被应用与人类的家庭生活中。

由于人机交互往往是面对面进行的,在机器人进行交互输出的过程中机器人的活动部件有可能会伤害到用户,比如夹伤或碰伤。在现有技术中,常见通用的解决方式主要依赖于外观和结构设计,使得机器人外型尽可能圆润,缝隙尽可能小,但这种解决方式依然存在误伤用户的风险。

因此,为了避免机器人进行交互输出时伤害到用户,需要一种用于机器人的安全输出方法。



技术实现要素:

本发明提供了一种用于机器人的安全输出方法,所述方法包括:

根据获取用户多模态输入数据中的应用启动指令,获取待启动的应用所对应的输出动作设置;

针对所述输出动作设置获取对应的当前环境参数;

在判断所述当前环境参数满足所述输出动作设置时,启动所述应用进行多模态输出。

在一实施例中,针对所述输出动作设置获取对应的当前环境参数,其中,当所述输出动作设置包含安全距离要求时:

检测机器人与周边物体的间距。

在一实施例中,针对所述输出动作设置获取对应的当前环境参数,其中,当所述输出动作设置包含姿态要求时:

检测并获取机器人当前姿态参数。

在一实施例中,所述方法还包括:

当所述当前环境参数不满足所述输出动作设置时,暂不执行所述应用启动指令并输出所述当前环境参数不满足所述输出动作需求的原因指示。

在一实施例中,所述方法还包括:

当所述当前环境参数变为满足所述输出动作设置时,立即启动所述应用执行所述应用启动指令进行多模态输出。

本发明还提出了一种机器人,所述机器人包括:

输出动作设置确定模块,其配置为根据获取用户多模态输入数据中的应用启动指令,获取待启动的应用所对应的输出动作设置;

环境参数确定模块,其配置为针对所述输出动作设置获取对应的当前环境参数;

输出环境匹配判断模块,其配置为判断所述当前环境参数是否满足所述输出动作设置;

输出模块,其配置为当所述当前环境参数满足所述输出动作设置时启动所述应用进行多模态输出。

在一实施例中,所述环境参数确定模块配置为:

当所述输出动作设置包含安全距离要求时检测机器人与周边物体的间距。

在一实施例中,所述环境参数确定模块配置为:

当所述输出动作设置包含姿态要求时检测并获取机器人当前姿态参数。

在一实施例中,所述输出模块还配置为:

当所述当前环境参数不满足所述输出动作设置时,暂不执行所述应用启动指令并输出所述当前环境参数不满足所述输出动作设置的原因指示。

在一实施例中,所述输出模块还配置为:

当所述当前环境参数变为满足所述输出动作设置时,立即启动所述应用执行所述应用启动指令进行多模态输出。

根据本发明的方法,可以有效避免机器人的行为输出伤害到用户,从而大大提高机器人的安全性,增强机器人的用户体验。

本发明的其它特征或优点将在随后的说明书中阐述。并且,本发明的部分特征或优点将通过说明书而变得显而易见,或者通过实施本发明而被了解。本发明的目的和部分优点可通过在说明书、权利要求书以及附图中所特别指出的步骤来实现或获得。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例共同用于解释本发明,并不构成对本发明的限制。在附图中:

图1是根据本发明一实施例的方法流程图;

图2~图7是根据本发明实施例的方法的部分流程图;

图8是根据本发明一实施例的机器人系统结构简图;

图9是根据本发明一实施例的机器人系统部分结构简图。

具体实施方式

以下将结合附图及实施例来详细说明本发明的实施方式,借此本发明的实施人员可以充分理解本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程并依据上述实现过程具体实施本发明。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。

随着机器人技术的不断发展,智能机器人越来越多的被应用与人类的家庭生活中。由于人机交互往往是面对面进行的,在机器人进行交互输出的过程中机器人的活动部件有可能会伤害到用户,比如夹伤或碰伤。在现有技术中,常见通用的解决方式主要依赖于外观和结构设计,使得机器人外型尽可能圆润,缝隙尽可能小,但这种解决方式依然存在误伤用户的风险。

进一步的,在一实施例中,在机器人输出当前的待输出多模态输出之前,其并不仅仅是检测该输出是否会伤害到用户,而且也会检测当前机器人自身的状态是否满足待输出多模态输出的输出条件(是否存在干扰机器人正常输出的因素),只有在输出多模态输出不会伤害到用户且机器人自身状态满足待输出多模态输出的输出条件的情况下才会输出该多模态输出。例如,假如机器人需要转圈,其不仅需要检测自身旋转时将会触及到的范围内有没有用户,而且还需要检测当前自身的状态是否可以转圈(例如机器人目前并不是处于站立状态就不能转圈)。这样,不仅提高了机器人的安全性,而且提高了机器人输出的成功率,避免机器人在错误的场景进行输出而导致的输出失败以及硬件损坏。

进一步的,在本发明一实施例中,机器人安装有操作系统,用户通过其通过下达应用启动指令(操作系统执行应用启动指令)启动(调用)装载在机器人操作系统上的应用来启动需输出动作(进行多模态输出)。对应不同的应用,有不同的输出动作配置,其中包括保证该应用的安全输出的配置。

在一实施例中,在机器人输出当前的待输出多模态输出之前(执行应用启动指令启动相应应用之前),首先检测当前环境参数,判断当前环境参数是否满足机器人执行当前应用启动指令所需启动的应用的输出动作设置(即:既不会伤害用户,也不会被其他因素干扰正常输出),只有在当前环境参数满足输出动作设置时才进行当前待输出多模态输出的输出(执行应用启动指令启动应用)。

进一步的,在实际交互环境中,环境参数是一个包含多种不同种类参数的集合。如果获取所有种类的环境参数的具体值,势必会带来巨量的数据采集处理压力。而一般的,不同的应用对应不同的输出动作设置,对于特定的一个应用,其对应的输出动作设置可能仅仅涉及一种或几种特定的环境参数,其涉及范围以外的环境参数的具体情况不会对该应用的启动产生任何影响。

例如,假如机器人在启动跳舞应用时需要转圈,那么对应的输出动作设置就包括机器人当前处于站立状态以及旋转所涉及的范围内不能有阻挡物/障碍物存在,需要获取的环境参数就包含机器人是否处于站立状态以及旋转所涉及的范围内是否有阻挡物/障碍物存在。假如机器人在另一应用中需要做下蹲动作,那么在应用启动时即对应的输出动作设置就包括机器人当前处于站立状态但不包括旋转所涉及的范围内不能有阻挡物/障碍物存在,需要获取的环境参数就包含机器人是否处于站立状态但不包含旋转所涉及的范围内是否有阻挡物/障碍物存在。

因此,在一实施例中,在机器人输出当前的待输出多模态输出之前,首先根据获取用户多模态输入数据中的应用启动指令,获取执行该应用启动指令所要启动的应用所对应的输出动作设置,然后根据输出动作设置检测输出动作设置相关的当前环境参数,最后判断当前环境参数是否满足输出动作设置,只有在当前环境参数满足输出动作设置时才启动应用进行多模态输出。

接下来基于附图详细描述根据本发明实施例的方法的详细流程,附图的流程图中示出的步骤可以在包含诸如一组计算机可执行指令的计算机系统中执行。虽然在流程图中示出了各步骤的逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

如图1所示,在一实施例中,机器人首先解析获取用户多模态输入数据中的应用启动指令,(步骤S110),获取执行该应用启动指令的所要启动的应用所对应的输出动作设置(步骤S120)。在这里,所谓的输出动作需设置即是对机器人状态的限定,该限定描述在怎样的状态下机器人才可以在不伤害用户的前提下启动应用,和/或,在怎样的状态下机器人才可以在正确顺利的启动应用。

接下来机器人获取与输出动作设置相关的当前环境参数(步骤S130);判断当前环境参数是否满足输出动作设置(步骤S140);当当前环境参数满足输出动作设置时启动应用进行多模态输出(步骤S150)。

进一步的,当当前环境参数不满足输出动作设置时机器人采用安全应对措施(步骤S160)。

在图1所示实施例中,首先第一步是解析当前的应用启动指令。其执行前提是当前存在待执行应用启动指令。具体的,在一实施例中,机器人通过解析获取到的多模态输入数据来获取应用启动指令。如图2所示,在一实施例中,机器人在交互过程中首先获取多模态输入数据(步骤S210),然后解析多模态输入数据(步骤S220),获取应用启动指令(步骤S230),根据执行该应用启动指令所要启动(调用)的应用获取对应的输出动作设置(步骤S240)。

进一步的,在通常的交互场景中,影响机器人多模态输出的主要因素之一是机器人以外的物体(用户)是否会干扰到机器人的动作(是否处于机器人的动作范围内,尤其的,当用户处于机器人动作范围内,机器人就会伤害到用户)。因此,很多机器人的多模态输出的输出动作设置包含安全距离需求(即,要求机器人以外的物体必须距离机器人特定的距离以上)。例如,当机器人需要转圈时,对应的输出动作设置就包含安全距离需求(用户必须距离机器人特定距离以上)。

对应的,在本发明一实施例中,当待输出多模态输出的输出动作设置包含安全距离要求时:机器人检测机器人与周边物体的间距(在获取当前环境参数的过程中)。

进一步的,影响机器人多模态输出的主要因素还包括机器人当前的动作是否适合输出当前待输出多模态输出(执行当前应用启动指令)。因此,很多机器人的多模态输出的输出动作设置包含姿态要求(即,要求机器人当前的姿态必须满足特定要求)。例如,当机器人需要转圈时,对应的输出动作设置就包含姿态要求(机器人必须处于站立状态)。

对应的,在本发明一实施例中,当待输出多模态输出的输出动作设置包含姿态要求时:机器人检测并获取机器人当前姿态参数(在获取当前环境参数的过程中)。

进一步的,在通常的交互场景中,存在机器人与其他物体过近或紧密接触的情况。在这种情况下,如果该物体是非人物体,那么大部分情况下,机器人仍然可以执行一些小范围的动作行为,只要该动作行为的运动路线不会与物体相交即可(例如机器人坐在椅子上,背靠椅子,其仍然可以执行转头的操作)。但是,如果该物体是人类则情况不同,在机器人和人类(用户)过近或接触的情况下(例如用户抱起机器人),机器人的大部分动作行为都会有可能伤害到用户(即使是小范围动作也可能夹伤用户)。

因此,在一实施例中,进行动作输出的应用对应的输出动作设置包含姿态要求,该姿态要求包含“机器人与用户处于非接触状态”。对应的,在获取当前环境参数的过程中,机器人需要判断当前是否与用户处于接触状态(当前是否被用户抱起)。

具体的,在一实施例中,机器人通过判断自身当前是否被摇晃来判断自身是否被抱起。

综合上述几个实施例,如图3所示,机器人获取到当前待启动的应用的输出动作设置(步骤S300)后,解析该输出动作设置(步骤S310);判断该输出动作设置中是否包含安全距离需求(步骤S320);如果存在安全距离需求,则检测机器人与周边物体的间距(步骤S321);如果不存在安全距离需求,则跳过步骤S321。

接下来机器人判断该输出动作设置中是否包含姿态要求(步骤S330)(尤其的,当应用进行动作类输出时,输出动作设置包含姿态要求“机器人与人类为非接触状态”);如果存在姿态要求,则检测并获取机器人当前姿态参数(步骤S331)(判断机器人是否被用户抱起);如果不存在姿态要求,则跳过步骤S331。

接下来机器人判断该输出动作设置中是否包含其他输出动作要求(安全距离要求以及姿态要求以外的输出动作要求)(步骤S340);如果存在其他输出动作要求,则获取对应其他输出动作要求的环境参数(步骤S341);如果不存在,则跳过步骤S341。最后机器人完成环境参数获取步骤(步骤S350)。

进一步的,在通常的交互场景中,某些应用是不存在对应的输出动作需求的。例如机器人在进行语音报时时是不需要考虑自身的姿态以及与其它物体的间距的。对应此情况,如图4所示,在一实施例中,机器人首先解析待执行的应用启动指令(步骤S410),然后判断是否存在对应相应应用的输出动作设置(步骤S420);如果存在,则获取与输出动作设置相关的当前环境参数(步骤S430);如果不存在,则直接启动应用进行多模态输出(步骤S440)。

在图1所示实施例中,当机器人判断当前环境参数不满足输出动作设置时机器人采用安全应对措施(步骤S160)。在此步骤中,机器人根据当前的交互环境、待执行应用启动指令以及自身的具体情况等因素选用可以解决当前输出问题的安全应对措施并输出。

具体的,如图5所示,在一实施例中,机器人判断当前环境参数不满足输出动作设置时(步骤S500),暂不执行应用启动指令(步骤S510)并输出当前环境参数不满足输出动作设置的原因指示(步骤S520)。这样,用户就可以根据机器人输出的原因指示来进行相应的动作,从而解决当前的输出问题。

例如,假设机器人需要转圈,机器人检测到用户距离自己过近,此时机器人暂时不转圈,而是向用户输出“你离我太近了”。这样用户就会基于机器人的指示远离机器人。

在图5所示的实施例中,机器人主要依靠输出原因指示来解决当前的输出问题。但在某些交互场景下,机器人所面对的输出问题可以被机器人自身解决。例如,当机器人需要转圈时,如果机器人检测到用户距离自己过近,此时机器人可以向用户输出“你离我太近了”而让用户远离,也可以不打搅用户,自行远离用户。

因此,为了提高用户体验,如图6所示,在一实施例中,机器人判断当前环境参数不满足输出动作设置时(步骤S600),暂不执行应用启动指令(步骤S610)。接下来机器人解析当前环境参数以及输出动作设置(步骤S620)判断是否可以自行解决当前的输出动作问题(步骤S630),如果可以,则生成并输出用于解决输出动作问题的动作调整输出(步骤S640)。只有在机器人无法自行解决问题时,机器人才输出当前环境参数不满足输出动作设置的原因指示(步骤S650)

进一步的,在一实施例中,机器人在判断当前环境参数不满足输出动作设置时暂不执行应用启动指令,在此状态下,机器人继续对当前环境参数进行采集,监控当前环境参数的变化,当当前环境参数变为满足输出动作设置时(机器人通过自身行为调整改变环境参数或者用户采取行动改变了机器人的环境参数),立即启动相应的应用进行多模态输出。

具体的,如图7所示,在一实施例中,机器人判断当前环境参数不满足输出动作设置时(步骤S700),暂不执行应用启动指令(步骤S710)。接下来机器人解析当前环境参数以及输出动作设置(步骤S720)判断是否可以自行解决当前的输出动作问题(步骤S730),如果可以,则生成并输出用于解决输出动作问题的动作调整输出(步骤S740)。只有在机器人无法自行解决问题时,机器人才输出当前环境参数不满足输出动作设置的原因指示(步骤S750)。

在机器人输出动作调整输出或原因指示(步骤S740或步骤S750)后,机器人监控环境参数变化(步骤S760);判断变化后的当前环境参数是否满足输出动作设置(步骤S770);如果满足,则立即启动相应的应用进行多模态输出(步骤S780);如果不满足,则继续暂不执行应用启动指令。

进一步的,在一实施例中,当机器人输出动作调整输出后,立即获取新的环境参数,判断动作调整输出是否达到预想效果(是否将环境参数调整为满足输出动作设置),如果调整后的环境参数满足输出动作设置,则立即启动应用。

如果调整后的环境参数仍不能满足输出动作设置,则判断是否可以进一步进行自行调整,如果可以,则进行自行调整,并在调整后继续进行环境参数是否满足输出动作设置的判断。如果不能进行自行调整,则输出原因指示,等待用户进行调整。

进一步的,在一实施例中,当机器人输出当前环境参数不满足输出动作设置的原因指示后,等待用户进行调整。具体的,机器人等待一个固定时长,如果在该固定时长内用户完成了调整(环境参数调整为满足输出动作设置),则机器人立即启动应用。如果等待时间达到该固定时长后机器人采集到的环境参数仍然不满足输出动作设置(例如环境参数一直没有发生变化,用户并没有进行任何对应的调整操作),则放弃执行该应用启动指令。

基于本发明的方法,本发明还提出了一种机器人。如图8所示,在一实施例中,机器人包括:

交互解析模块800,其配置为解析多模态输入数据生成当前获取用户多模态输入数据中的应用启动指令;

输出动作设置确定模块810,其配置为获取当前待执行应用启动指令需要启动应用所对应的输出动作设置;

环境参数确定模块820,其配置为获取与输出动作设置确定模块810获取的输出动作设置相关的当前环境参数;

输出环境匹配判断模块830,其配置为判断环境参数确定模块820获取的当前环境参数是否满足输出动作设置确定模块810获取的输出动作设置;

输出模块840,其配置为当当前环境参数满足输出动作设置时执行应用启动指令启动应用进行多模态输出。

进一步的,在一实施例中,环境参数确定模块配置为当输出动作设置包含安全距离要求时检测机器人与周边物体的间距。

进一步的,在一实施例中,环境参数确定模块配置为当输出动作设置包含姿态要求时检测并获取机器人当前姿态参数。

具体的,如图9所示,在一实施例中,环境参数确定模块包含输出动作设置解析单元910以及检测单元920。

输出动作设置解析单元910配置为解析接收到的输出动作设置的内容。检测单元920包含:

测距单元921,其配置为检测机器人与周边物体的间距;

姿态确认单元922,其配置为检测并获取机器人当前姿态参数。

检测单元920配置为根据输出动作设置解析单元910的解析结果,调用对应的检测装置(测距单元921和/或姿态确认单元922)针对与输出动作设置相关的环境参数进行检测以获取该环境参数的具体值。

进一步的,在一实施例中,输出模块还配置为当当前环境参数不满足输出动作设置时,暂不输出待输出多模态输出并输出当前环境参数不满足述输出动作设置的原因指示。

进一步的,在一实施例中,输出模块还配置为:当当前环境参数变为满足输出动作设置时,立即执行应用启动指令启动应用。

虽然本发明所公开的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。本发明所述的方法还可有其他多种实施例。在不背离本发明实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变或变形,但这些相应的改变或变形都应属于本发明的权利要求的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1