CN107346107A - 多样化运动控制方法和***及具有该***的机器人 - Google Patents
多样化运动控制方法和***及具有该***的机器人 Download PDFInfo
- Publication number
- CN107346107A CN107346107A CN201610291089.0A CN201610291089A CN107346107A CN 107346107 A CN107346107 A CN 107346107A CN 201610291089 A CN201610291089 A CN 201610291089A CN 107346107 A CN107346107 A CN 107346107A
- Authority
- CN
- China
- Prior art keywords
- motion
- robot
- basic
- motion unit
- diversified
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B17/00—Systems involving the use of models or simulators of said systems
- G05B17/02—Systems involving the use of models or simulators of said systems electric
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- Toys (AREA)
Abstract
本发明提供了一种用于机器人的多样化运动控制方法,包括以下步骤:调用步骤:调用基本动作集合中的基本运动单元;随机误差生成步骤:生成适用于该基本运动单元的随机误差;运动随机化步骤:在该基本运动单元上叠加该随机误差以生成随机化的对应该基本运动单元的实际运动单元;以及运动执行步骤:控制该机器人按照实际运动单元来执行运动。本发明还提供了一种用于机器人的多样化运动控制***及具有该***的机器人。通过对机器人的多样化运动控制,根据机器人原有的动作集,拓展出不同的运动组合,使机器人呈现出随机及多样化的运动,从而使用户感觉其与机器人交互更加多样化、智能化,为用户带来更多的交互体验。
Description
技术领域
本发明涉及机器人仿生技术,尤其涉及一种多样化运动控制方法和***及具有该***的机器人。
背景技术
机器人最重要的娱乐功能在于能够与人类交互。现有的智能机器人其智能性和娱乐性往往是有限的,不能给用户带来很好的体验,例如宠物机器人的动作单一,在特定的时间卖萌时只能做单一动作,并不能随机选择动作。随着和用户长期接触,用户会感觉其趣味性和娱乐性会大大下降。
因此,本领域需要一种能够改善机器人运动的多样性以提高娱乐性的技术。
发明内容
以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。
本发明的目的之一在于改变现有机器人互动形式的单调或机械化,为此根据本发明的一方面,提供了一种用于机器人的多样化运动控制方法,包括以下步骤:
调用步骤:调用基本动作集合中的基本运动单元;
随机误差生成步骤:生成适用于该基本运动单元的随机误差;
运动随机化步骤:在该基本运动单元上叠加该随机误差以生成随机化的对应该基本运动单元的实际运动单元;以及
运动执行步骤:控制该机器人按照实际运动单元来执行运动。
在一实例中,该基本运动单元为M0(t|θ1,…,θN),其中θi为与该基本运动单元相关联的N个运动关节中的运动关节Fi随时间t的运动函数,该随机误差为Me(t|η1*θ1,…,ηN*θN),其中,|ηi|<αimax,ηi和αimax分别为运动关节Fi的运动函数的随机误差系数和最大允许误差系数,i=1,...N。
在一实例中,该运动关节Fi的运动函数的随机误差系数ηi为随机因子ri与最大允许误差系数αimax的乘积,该随机因子ri是范围为-1~1的随机数。
在一实例中,该αimax是基于整个机器人***计算出的,并且对应不同的运动关节Fi设置为不同的数值。
在一实例中,该ηi可随时间而随机变化。
在一实例中,所调用的基本运动单元的数量为一个或多个。
在一实例中,该方法还包括:运动感测步骤:感测该机器人的运动状态;以及调整步骤:根据感测到的运动状态调整实际运动单元以确保该机器人的稳定性;其中,该运动执行步骤执行的是经调整的实际运动单元。
在一实例中,在运动执行步骤之后还包括:调用该基本动作集合中的后续基本运动单元,然后将该后续基本运动单元返回至随机误差生成步骤进行多样化运动控制,直至满足停止条件。
在一实例中,该后续基本运动单元是从该基本运动单元所能跳转至的至少一个基本运动单元中随机选出的。
在一实例中,根据运动单元映射集合中的映射关系来确定该基本运动单元所能跳转至的该至少一个基本运动单元。
在一实例中,该感测该机器人的运动状态为:利用重力加速度传感器、陀螺仪和/或安装在机器人躯干上的倾角传感器感测该机器人的运动状态。
根据本发明的另一方面,提供了一种用于机器人的多样化运动控制***,包括:
调用模块,用于调用基本动作集合中的基本运动单元;
随机误差生成模块,用于生成适用于该基本运动单元的随机误差;
运动随机化模块,用于在该基本运动单元上叠加该随机误差以生成随机化的对应该基本运动单元的实际运动单元;以及
运动执行模块,用于控制该机器人按照实际运动单元来执行运动。
在一实例中,该***还包括:运动感测模块,用于感测该机器人的运动状态;以及调整模块,用于根据感测到的运动状态调整实际运动单元以确保该机器人的稳定性;其中,该运动执行模块执行的是经调整的实际运动单元。
在一实例中,该调用模块还用于,在该机器人按照实际运动单元执行运动之后,调用该基本动作集合中的后续基本运动单元,然后将该后续基本运动单元返回给该随机误差生成模块进行多样化运动控制,再由该调用模块执行下一调用,直至满足停止条件。
在一实例中,该调用模块根据运动单元映射集合中的映射关系来调用该基本动作集合中的后续基本运动单元,该后续基本运动单元为根据运动单元映射集合中的映射关系确定的该基本运动单元所能跳转至的至少一个基本运动单元。
根据本发明的另一方面,提供了一种多样化运动的机器人,包括:
如先前所述的对机器人进行多样化运动控制的***;以及
运动机构,用于实施该运动执行模块按照实际运动单元执行的运动。
在一实例中,该运动机构包括:头部运动机构、两个上肢运动机构、两个腿部运动机构,每个运动机构的运动相互独立,每个运动机构均由两个舵机来实现运动。
通过对机器人的多样化运动控制,根据机器人原有的动作集,拓展出不同的运动组合,解决了机器人运动单调和机械化的问题,使机器人呈现出随机及多样化的运动,从而使用户感觉其与机器人交互更加多样化、智能化,为用户带来更多的交互体验。
附图说明
在结合以下附图阅读本公开的实施例的详细描述之后,能够更好地理解本发明的上述特征和优点。在附图中,各组件不一定是按比例绘制,并且具有类似的相关特性或特征的组件可能具有相同或相近的附图标记。
图1是示出了根据本发明的一方面的多样化运动的机器人的框图;
图2是示出了根据本发明的一方面的用于机器人的多样化运动控制***的第一实施例的框图;
图3是示出了根据本发明的一方面的用于机器人的多样化运动控制方法的第一实施例的流程图;
图4是示出了根据本发明的一方面的用于机器人的多样化运动控制***的第二实施例的框图;
图5是示出了根据本发明的一方面的用于机器人的多样化运动控制方法的第二实施例的流程图;以及
图6a-6c是示出了根据本发明的一种企鹅机器人的示意图。
具体实施方式
以下结合附图和具体实施例对本发明作详细描述。注意,以下结合附图和具体实施例描述的诸方面仅是示例性的,而不应被理解为对本发明的保护范围进行任何限制。
本发明提供了一种用于机器人随机多样化运动的控制方案,该控制方案可以根据机器人原有的动作集,拓展出不同的运动组合,为机器人的随机及多样化的运动提供支持。而且,该控制方案不受机器人本身结构的限制,可以根据用户以及开发者的需求进行修改。从而使用户感觉其与机器人交互更加多样化,智能化,为用户带来更多的交互体验。
本发明中,术语“机器人”包括所有自动执行工作或任务的装置,不限于其外形特征及其工作性质的功能化自动装备,例如机器人、玩具、自动导航运行的无人机、小车以及移动平台等。
图1是示出了根据本发明的一方面的多样化运动的机器人100的框图。如图1所示,机器人100可包括运动机构110以及多样化运动控制***120。运动机构110是机器人的运动执行者,例如,可以包括头部运动机构、腿部运动机构、手部运动机构、上肢运动机构等等。运动机构110可以完成机器人100一些基本的运动单元,基本运动单元包括例如,走、跳、挥手等等。另外,这里的术语“基本运动单元”也广义地包括反映机器人的某种特征的动作组合,例如机器人通过一系列的特定动作表示“快乐”这一特征,则这一系列特定动作的组合也可被认为一基本运动单元。基本运动单元可通过运动学建模和结合ZMP理论分析来设计。
典型地,机器人100可具有一基本动作集合,包括多个基本运动单元,由机器人100的运动机构110来实施。另外,机器人100一般可连续运动,例如在执行一个或多个基本运动单元之后,可接着执行后续的一个或多个基本运动单元。换言之,根据机器人100的设计,基本动作集合中各基本运动单元与其他一个或多个基本运动单元存在关联,即该基本运动单元可能跳转到下一个基本运动单元,因此,机器人100还建立有基本动作单元的映射关系的运动单元映射集合{F}。假设每个基本运动单元有一数字编号,则例如基本运动单元①可跳转的下一基本运动单元可以是基本运动单元③和基本运动单元④,则这种映射关系将被记录在运动单元映射集合{F}中。
根据本发明的一方面,机器人100还可包括多样化运动控制***120,该多样化运动控制***120可基于机器人100的基本动作集合实现运动机构110的多样化运动,例如多样化运动控制***120可使整个机器人根据原有的动作集进行随机化运动,使得机器人动作的多样化有了进一步的保证。具体而言,多样化运动控制***120可根据机器人的本身结构和设定的动作集,得出针对于整体结构的随机误差和数据干扰,附加到整体的运动函数中,最终作为机器人的运动输入,较优地还可同时辅助以机器人本身传感器的反馈(防止机构的干涉和不稳定),最终得到机器人的多样化运动形式。
图2是示出了根据本发明的一方面的用于机器人的多样化运动控制***200的第一实施例的框图。这里的控制***200可以是图1的多样化运动控制***120的实施例。
如图2所示,控制***200可包括调用模块210、随机误差生成模块220、运动随机化模块230、以及运动执行模块240。
调用模块210可调用机器人的基本动作集合中的基本运动单元。这里所调用的基本运动单元的数量可以是一个或多个。调用单元210可响应于用户给机器人的指令工作。例如,若用户给机器人一个“跳舞”的指令,在基本动作集合中直接存在“跳舞”这一基本动作单元的情况下,调用模块210可直接调用“跳舞”这一基本动作单元。若根据机器人设计,“跳舞”是由一系列的基本动作单元组成的,则调用模块210可调用这一系列基本动作单元中的第一个基本动作单元。
在调用该基本运动单元之后,随机误差生成模块220可生成适用于该基本运动单元的随机误差。基本动作集合可以用{M}表示,该基本动作集合中调用的基本运动单元可用函数M0(t|θ1,…,θN)表示,其中θi为与该基本运动单元M0相关联的N个运动关节中的运动关节Fi随时间t的运动函数,i=1,...N。每一基本运动单元的实施都与机器人的若干个运动关节相关联。例如,“走”这一基本运动单元涉及到腿部运动机构和手部运动机构,则这两个运动机构的运动关节即为与“走”这一基本运动单元相关联。实践中,运动关节的动作一般由舵机来实现。
对于所调用的该基本运动单元M0,可通过随机误差函数Me(t|η1*θ1,…,ηN*θN)来引入随机误差。ηi为运动关节Fi的运动函数的随机误差系数。对于各个运动关节Fi,都存在一个最大允许误差系数αimax,该引入的随机误差系数ηi的绝对值需小于该αimax。因为在该误差范围内,运动状态是相对稳定的。
具体地,随机误差系数ηi可由相应的随机因子ri乘以相应的最大允许误差系数αimax构成,随机因子ri为[-1,1]随机数。
对于不同的基本运动单元,所涉及的运动关节可能不同,即使涉及相同的运动关节,各运动关节的运动函数θi可能都是不同的。对于一个基本运动单元的相关联运动关节的运动函数的最大允许误差系数αimax,可由整个机器人***计算得出,并给出相应的指导值,用户也可以自由进行设置,当然,改后的值应满足小于***所计算的最大允差。相应的,对于不同的基本运动单元,最大允许误差系数αimax也是不同的。
在这里,每个运动函数的ηi可随着每日、每周、每月在***内自行进行改变,该设置的频率可由用户自行设置。
一旦生成了该随机误差,运动随机化模块230即可对该调用的基本运动单元M0进行随机化,即在该基本运动单元上叠加该随机误差Me以生成随机化的对应该基本运动单元的实际运动单元MC=M0+Me。
然后,运动执行模块240可控制机器人的运动机构按照该实际运动单元MC执行运动。
执行随机化的对应该基本运动单元的实际运动单元MC后,调用模块210可执行下一次调用,即从该基本动作集合中调用后续基本运动单元。如先前所述,根据运动单元映射集合{F},先前调用的基本运动单元可能可以跳转至一个以上的其他基本运动单元,因此,调用模块210可根据运动单元映射集合{F}确定先前基本运动单元所能跳转至的至少一个基本运动单元作为后续基本运动单元,或者采用随机数的方法进一步从这至少一个基本运动单元中选取后续基本运动单元,开始新的运动。然后,对该新的基本运动单元重复先前各模块所执行的操作,直至停止条件为止,例如收到用户的停止指令等等。
图3是示出了根据本发明的一方面的用于机器人的多样化运动控制方法300的第一实施例的流程图。如图3所示,控制方法300可包括以下步骤:
调用步骤301:调用机器人的基本动作集合中的基本运动单元。如前所述,这里所调用的基本运动单元可以是一个,或者也可以是多个。该调用可响应于用户给机器人的指令。例如,若用户给机器人一个“跳舞”的指令,在基本动作集合中直接存在“跳舞”这一基本动作单元的情况下,可直接调用“跳舞”这一基本动作单元。若根据机器人设计,“跳舞”是由一系列的基本动作单元组成的,则可调用这一系列基本动作单元中的第一个基本动作单元。
随机误差生成步骤302:在调用该基本运动单元之后,可生成适用于该基本运动单元的随机误差。基本动作集合可以用{M}表示,该基本动作集合中调用的基本运动单元可用函数M0(t|θ1,…,θN)表示,其中θi为与该基本运动单元M0相关联的N个运动关节中的运动关节Fi随时间t的运动函数,i=1,...N。每一基本运动单元的实施都与机器人的若干个运动关节相关联。例如,“走”这一基本运动单元涉及到腿部运动机构和手部运动机构,则这两个运动机构的运动关节即为与“走”这一基本运动单元相关联。实践中,运动关节的动作一般由舵机来实现。
对于所调用的该基本运动单元M0,可通过随机误差函数Me(t|η1*θ1,…,ηN*θN)来引入随机误差。ηi为运动关节Fi的运动函数的随机误差系数。对于各个运动关节Fi,都存在一个最大允许误差系数αimax,该引入的随机误差系数ηi的绝对值需小于该αimax。因为在该误差范围内,运动状态是相对稳定的。
具体地,随机误差系数ηi可由相应的随机因子ri乘以相应的最大允许误差系数αimax构成,随机因子ri为[-1,1]的随机数。
对于不同的基本运动单元,所涉及的运动关节可能不同,即使涉及相同的运动关节,各运动关节的运动函数θi可能都是不同的。对于一个基本运动单元的相关联运动关节的运动函数的最大允许误差系数αimax,可由整个机器人***计算得出,并给出相应的指导值,用户也可以自由进行设置,当然,改后的值应满足小于***所计算的最大允差。相应的,对于不同的基本运动单元,最大允许误差系数αimax也是不同的。
在这里,每个运动函数的ηi可随着每日、每周、每月在***内自行进行改变,该设置的频率可由用户自行设置。
运动随机化步骤303:一旦生成了该随机误差,即可对该调用的基本运动单元M0进行随机化,即在该基本运动单元上叠加该随机误差Me以生成随机化的对应该基本运动单元的实际运动单元MC=M0+Me。
运动执行步骤304:可控制机器人按照实际运动单元MC来执行运动。
步骤305:是否满足停止条件,若满足停止条件,则停止运动,否则进入下一轮的调用步骤301。
注意,这里步骤305虽然是被显示在步骤304之后,然而,事实上,在执行方法300的过程中的任意时间,只要满足了停止条件,则运动停止。
图4是示出了根据本发明的一方面的用于机器人的多样化运动控制***400的第二实施例的框图。这里的控制***400可以是图1的多样化运动控制***120的实施例。
如图4所示,控制***400可包括调用模块410、随机误差生成模块420、运动随机化模块430、运动感测模块440、调整模块450、运动执行模块460。
调用模块410可调用机器人的基本动作集合中的基本运动单元。如前所述,这里所调用的基本运动单元可以是一个,或者也可以是多个。调用单元410可响应于用户给机器人的指令工作。例如,若用户给机器人一个“跳舞”的指令,在基本动作集合中直接存在“跳舞”这一基本动作单元的情况下,调用模块410可直接调用“跳舞”这一基本动作单元。若根据机器人设计,“跳舞”是由一系列的基本动作单元组成的,则调用模块410可调用这一系列基本动作单元中的第一个基本动作单元。
在调用该基本运动单元之后,随机误差生成模块420可生成适用于该基本运动单元的随机误差。基本动作集合可以用{M}表示,该基本动作集合中调用的基本运动单元可用函数M0(t|θ1,…,θN)表示,其中θi为与该基本运动单元M0相关联的N个运动关节中的运动关节Fi随时间t的运动函数,i=1,...N。每一基本运动单元的实施都与机器人的若干个运动关节相关联。例如,“走”这一基本运动单元涉及到腿部运动机构和手部运动机构,则这两个运动机构的运动关节即为与“走”这一基本运动单元相关联。实践中,运动关节的动作一般由舵机来实现。
对于所调用的该基本运动单元M0,可通过随机误差函数Me(t|η1*θ1,…,ηN*θN)来引入随机误差。ηi为运动关节Fi的运动函数的随机误差系数。对于各个运动关节Fi,都存在一个最大允许误差系数αimax,该引入的随机误差系数|ηi|需小于该αimax。因为在该误差范围内,运动状态是相对稳定的。
具体地,随机误差系数ηi可由相应的随机因子ri乘以相应的最大允许误差系数αimax构成,随机因子ri为[-1,1]内随机数。
对于不同的基本运动单元,所涉及的运动关节可能不同,即使涉及相同的运动关节,各运动关节的运动函数θi可能都是不同的。对于一个基本运动单元的相关联运动关节的运动函数的最大允许误差系数αimax,可由整个机器人***计算得出,并给出相应的指导值,用户也可以自由进行设置,当然,改后的值应满足小于***所计算的最大允差。相应的,对于不同的基本运动单元,最大允许误差系数αimax也是不同的。
在这里,每个运动函数的ηi可随着每日、每周、每月在***内自行进行改变,该设置的频率可由用户自行设置。
一旦生成了该随机误差,运动随机化模块430即可对该调用的基本运动单元M0进行随机化,即在该基本运动单元上叠加该随机误差Me以生成随机化的对应该基本运动单元的实际运动单元MC=M0+Me。
由于运动是多变量的合成,各关节的最大允差下的合成后的运动不一定是稳定的。相应地,运动感测模块440可感测机器人的运动状态,例如利用重力加速度传感器感测机器人的加速度等运动参数作为反馈,或利用陀螺仪或安装在机器人躯干上的倾角传感器感测该机器人的运动状态等运动参数作为反馈。调整模块450可利用感测到的运动状态作为反馈来调整该实际运动单元,以对运动进行实时调整,从而确保机器人的稳定性。
然后,运动执行模块460可控制机器人按照经调整的实际运动单元MC来执行运动。
执行该经调整的实际运动单元MC后,调用模块410可执行下一次调用,即从该基本动作集合中调用后续基本运动单元。如先前所述,根据映射集合{F},先前调用的基本运动单元可能可以跳转至一个以上的其他基本运动单元,因此,调用模块410可根据运动单元映射集合{F}中的映射关系来调用后续基本运动单元,例如根据运动单元映射集合{F}中的映射关系确定先前基本运动单元所能跳转至的至少一个基本运动单元以作为后续基本运动单元,或者依照随机数的方式再进一步从这至少一个基本运动单元中选取出后续基本运动单元,从而开始新的运动。然后,对该新的基本运动单元重复先前各模块所执行的操作,直至停止条件为止,例如收到用户的停止指令等等。
图5是示出了根据本发明的一方面的用于机器人的多样化运动控制方法500的第二实施例的流程图。如图5所示,控制方法500可包括以下步骤:
调用步骤501:调用机器人的基本动作集合中的一个基本运动单元。如前所述,这里所调用的基本运动单元可以是一个,或者也可以是多个。该调用可响应于用户给机器人的指令。例如,若用户给机器人一个“跳舞”的指令,在基本动作集合中直接存在“跳舞”这一基本动作单元的情况下,可直接调用“跳舞”这一基本动作单元。若根据机器人设计,“跳舞”是由一系列的基本动作单元组成的,则可调用这一系列基本动作单元中的第一个基本动作单元。
随机误差生成步骤502:在调用该基本运动单元之后,可生成适用于该基本运动单元的随机误差。基本动作集合可以用{M}表示,该基本动作集合中调用的基本运动单元可用函数M0(t|θ1,…,θN)表示,其中θi为与该基本运动单元M0相关联的N个运动关节中的运动关节Fi随时间t的运动函数,i=1,...N。每一基本运动单元的实施都与机器人的若干个运动关节相关联。例如,“走”这一基本运动单元涉及到腿部运动机构和手部运动机构,则这两个运动机构的运动关节即为与“走”这一基本运动单元相关联。实践中,运动关节的动作一般由舵机来实现。
对于所调用的该基本运动单元M0,可通过随机误差函数Me(t|η1*θ1,…,ηN*θN)来引入随机误差。ηi为运动关节Fi的运动函数的随机误差系数。对于各个运动关节Fi,都存在一个最大允许误差系数αimax,该引入的随机误差系数|ηi|需小于该αimax。因为在该误差范围内,运动状态是相对稳定的。
具体地,随机误差系数ηi可由相应的随机因子ri乘以相应的最大允许误差系数αimax构成,随机因子ri为范围[-1,1]的随机数。
对于不同的基本运动单元,所涉及的运动关节可能不同,即使涉及相同的运动关节,各运动关节的运动函数θi可能都是不同的。对于一个基本运动单元的相关联运动关节的运动函数的最大允许误差系数αimax,可由整个机器人***计算得出,并给出相应的指导值,用户也可以自由进行设置,当然,改后的值应满足小于***所计算的最大允差。相应的,对于不同的基本运动单元,最大允许误差系数αimax也是不同的。
在这里,每个运动函数的ηi可随着每日、每周、每月在***内自行进行改变,该设置的频率可由用户自行设置。
运动随机化步骤503:一旦生成了该随机误差,即可对该调用的基本运动单元M0进行随机化,即在该基本运动单元上叠加该随机误差Me以生成随机化的对应该基本运动单元的实际运动单元MC=M0+Me。
运动感测步骤504:感测机器人的运动状态,例如利用重力加速度传感器感测机器人的加速度等运动参数作为反馈,或利用陀螺仪或安装在机器人躯干上的倾角传感器感测该机器人的运动状态等运动参数作为反馈。
调整步骤505:利用感测到的运动状态作为反馈来调整该实际运动单元,以对运动进行实时调整,从而确保机器人的稳定性。
运动执行步骤506:控制机器人以执行经调整的实际运动单元MC。
步骤507:是否满足停止条件,若满足停止条件,则停止运动,否则进入下一轮的调用步骤501。
注意,这里步骤507虽然是被显示在步骤507之后,然而,事实上,在执行方法500的过程中的任意时间,只要满足了停止条件,则运动停止。
尽管为使解释简单化将上述方法图示并描述为一系列动作,但是应理解并领会,这些方法不受动作的次序所限,因为根据一个或多个实施例,一些动作可按不同次序发生和/或与来自本文中图示和描述或本文中未图示和描述但本领域技术人员可以理解的其他动作并发地发生。
图6a-6c是示出了根据本发明的一种企鹅机器人600的示意图。
图6a示出了企鹅机器人600的运动结构的示意图,企鹅机器人600可包括头部运动机构601、两个上肢运动机构602、以及两个腿部运动机构603。当然,企鹅机器人600还包括多样化运动控制***,但未在图中明确示出。企鹅机器人的头部运动机构601、每个上肢运动机构602、以及每个腿部运动机构603可分别由两个舵机来实现运动。
下面以企鹅机器人600的“快乐”这一基本运动单元来说明上述多样化运动控制原理。
“快乐”这一基本运动单元涉及两个上肢运动机构602以及两个腿部运动机构603,具体地,涉及上肢运动机构602的舵机3、舵机4、舵机5、舵机6、以及腿部运动机构的舵机7、舵机8。图6b、图6c分别示出了相关运动机构的舵机。
更具体地,“快乐”这一基本运动单元可被分解为:
a、舵机3和舵机5分别旋转至30°、-30°,舵机4和6分别转至10°、-10°;其中规定从电机轴伸端看,电机顺时针转动为正角度,逆时针转动为负角度,企鹅的立正站立姿势时,电机轴的位置为电机的初始位置(即零度位置);
b、舵机3和舵机5在30°~60°、-30°~-60°之间以1秒/60°速度来回转动3次,舵机3和舵机5在15°~30°、-15°~-30°之间以1秒/30°速度来回转动3次,同时舵机7从初始位置转至5°,舵机8从初始位置转动15°,再同时转回初始位置,舵机7从初始位置转至-5°,舵机8从初始位置转动-15°,再同时转回初始位置,在舵机7、舵机8两次从初始位置转回初始位置过程中将速度分别设定为1秒/10°和1秒/7.5°重复3次;
c、舵机3和舵机5从当前位置转回初始位置。
对于该运动基本单元,每一个舵机所对应的角度与时间的函数为f3(t)=θ3,f4(t)=θ4,f5(t)=θ5,f6(t)=θ6,f7(t)=θ7,f8(t)=θ8。对该基本运动单元M0(t|f3,f4,f5,f6,f7,f8)引入随机误差函数Me(t|η3*f3,η4*f4,η5*f5,η6*f6,η7*f7,η8*f8)。
例如已知:
α3max=0.8,α4max=0.7,α5max=1,α6max=0.9,α7max=0.1,α8max=0.2,若相应地随机因子设为:
r3=0.5,r4=0.4,r5=0.7,r6=0.7,r7=0.8,r8=0.1,则相应地η3=0.4,η4=0.28,η5=0.7,η6=0.63,η7=0.08,η8=0.02。由此,随机化的实际运动单元即为MC(t|1.4f3,1.28f4,1.7f5,1.63f6,1.08f7,1.02f8)。这样,通过简单的设置一组ηi,便得到了“快乐”这一动作的一种随机的动作集合。
本领域技术人员将进一步领会,结合本文中所公开的实施例来描述的各种解说性逻辑板块、模块、电路、和算法步骤可实现为电子硬件、计算机软件、或这两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、框、模块、电路、和步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体***的设计约束。技术人员对于每种特定应用可用不同的方式来实现所描述的功能性,但这样的实现决策不应被解读成导致脱离了本发明的范围。
软件应当被宽泛地解释成意味着指令、指令集、代码、代码段、程序代码、程序、子程序、软件模块、应用、软件应用、软件包、例程、子例程、对象、可执行件、执行的线程、规程、函数等,无论其是用软件、固件、中间件、微代码、硬件描述语言、还是其它术语来述及皆是如此。
结合本文所公开的实施例描述的各种解说性逻辑板块、模块、和电路可用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其设计成执行本文所描述功能的任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协作的一个或多个微处理器、或任何其他此类配置。
结合本文中公开的实施例描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中体现。软件模块可驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域中所知的任何其他形式的存储介质中。示例性存储介质耦合到处理器以使得该处理器能从/向该存储介质读取和写入信息。在替换方案中,存储介质可以被整合到处理器。
提供对本公开的先前描述是为使得本领域任何技术人员皆能够制作或使用本公开。对本公开的各种修改对本领域技术人员来说都将是显而易见的,且本文中所定义的普适原理可被应用到其他变体而不会脱离本公开的精神或范围。由此,本公开并非旨在被限定于本文中所描述的示例和设计,而是应被授予与本文中所公开的原理和新颖性特征相一致的最广范围。
Claims (17)
1.一种用于机器人的多样化运动控制方法,其特征在于,包括以下步骤:
调用步骤:调用基本动作集合中的基本运动单元;
随机误差生成步骤:生成适用于所述基本运动单元的随机误差;
运动随机化步骤:在所述基本运动单元上叠加所述随机误差以生成随机化的对应该基本运动单元的实际运动单元;以及
运动执行步骤:控制所述机器人按照实际运动单元来执行运动。
2.如权利要求1所述的多样化运动控制方法,其特征在于,所述基本运动单元为M0(t|θ1,…,θN),其中θi为与所述基本运动单元相关联的N个运动关节中的运动关节Fi随时间t的运动函数,所述随机误差为Me(t|η1*θ1,…,ηN*θN),其中,|ηi|<αimax,ηi和αimax分别为运动关节Fi的运动函数的随机误差系数和最大允许误差系数,i=1,...N。
3.如权利要求2所述的多样化运动控制方法,其特征在于,所述运动关节Fi的运动函数的随机误差系数ηi为随机因子ri与最大允许误差系数αimax的乘积,所述随机因子ri是范围为-1~1的随机数。
4.如权利要求2所述的多样化运动控制方法,其特征在于,所述αimax对应不同的运动关节Fi设置为不同的数值。
5.如权利要求2所述的多样化运动控制方法,其特征在于,所述ηi可随时间而随机变化。
6.如权利要求1所述的多样化运动控制方法,其特征在于,所调用的基本运动单元的数量为一个或多个。
7.如权利要求1所述的多样化运动控制方法,其特征在于,还包括:
运动感测步骤:感测所述机器人的运动状态;以及
调整步骤:根据感测到的运动状态调整实际运动单元以确保所述机器人的稳定性;
其中,所述运动执行步骤执行的是经调整的实际运动单元。
8.如权利要求1或7所述的多样化运动控制方法,其特征在于,在运动执行步骤之后还包括:调用所述基本动作集合中的后续基本运动单元,然后将所述后续基本运动单元返回至随机误差生成步骤进行多样化运动控制,直至满足停止条件。
9.如权利要求8所述的多样化运动控制方法,其特征在于,所述后续基本运动单元是从所述基本运动单元所能跳转至的至少一个基本运动单元中随机选出的。
10.如权利要求9所述的多样化运动控制方法,其特征在于,根据运动单元映射集合中的映射关系来确定所述基本运动单元所能跳转至的所述至少一个基本运动单元。
11.如权利要求7所述的多样化运动控制方法,其特征在于,所述感测所述机器人的运动状态为:利用重力加速度传感器、陀螺仪和/或安装在机器人躯干上的倾角传感器感测所述机器人的运动状态。
12.一种用于机器人的多样化运动控制***,其特征在于,包括:
调用模块,用于调用基本动作集合中的基本运动单元;
随机误差生成模块,用于生成适用于所述基本运动单元的随机误差;
运动随机化模块,用于在所述基本运动单元上叠加所述随机误差以生成随机化的对应该基本运动单元的实际运动单元;以及
运动执行模块,用于控制所述机器人按照实际运动单元来执行运动。
13.如权利要求12所述的多样化运动控制***,其特征在于,还包括:
运动感测模块,用于感测所述机器人的运动状态;以及
调整模块,用于根据感测到的运动状态调整实际运动单元以确保所述机器人的稳定性;
其中,所述运动执行模块执行的是经调整的实际运动单元。
14.如权利要求12或13所述的多样化运动控制***,其特征在于,所述调用模块还用于,在所述机器人按照实际运动单元执行运动之后,调用所述基本动作集合中的后续基本运动单元,然后将所述后续基本运动单元返回给所述随机误差生成模块进行多样化运动控制,直至满足停止条件。
15.如权利要求14所述的多样化运动控制***,其特征在于,所述调用模块根据运动单元映射集合中的映射关系来调用所述基本动作集合中的后续基本运动单元,所述后续基本运动单元为根据运动单元映射集合中的映射关系确定的所述基本运动单元所能跳转至的至少一个基本运动单元。
16.一种多样化运动的机器人,其特征在于,包括:
如权利要求12-15中任一项所述的对机器人进行多样化运动控制的***;以及
运动机构,用于实施所述运动执行模块按照实际运动单元执行的运动。
17.如权利要求16所述的机器人,其特征在于,所述运动机构包括:
头部运动机构、两个上肢运动机构、两个腿部运动机构,每个运动机构的运动相互独立,每个运动机构均由两个舵机来实现运动。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610291089.0A CN107346107A (zh) | 2016-05-04 | 2016-05-04 | 多样化运动控制方法和***及具有该***的机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610291089.0A CN107346107A (zh) | 2016-05-04 | 2016-05-04 | 多样化运动控制方法和***及具有该***的机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107346107A true CN107346107A (zh) | 2017-11-14 |
Family
ID=60254038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610291089.0A Withdrawn CN107346107A (zh) | 2016-05-04 | 2016-05-04 | 多样化运动控制方法和***及具有该***的机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107346107A (zh) |
Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1290186A (zh) * | 1998-12-15 | 2001-04-04 | 泰格电子有限公司 | 交互式玩具 |
CN1297393A (zh) * | 1999-01-20 | 2001-05-30 | 索尼公司 | 机器人装置和运动控制方法 |
CN1299991A (zh) * | 1999-11-30 | 2001-06-20 | 索尼公司 | 机器人装置控制装置、机器人装置控制方法及存储媒体 |
CN1331445A (zh) * | 2000-07-04 | 2002-01-16 | 株式会社托密 | 交互式玩具、反应行为模式生成装置及方法 |
CN1364275A (zh) * | 2000-02-10 | 2002-08-14 | 索尼公司 | 自动装置、信息提供装置、机器人装置和交易方法 |
CN1596144A (zh) * | 2001-11-29 | 2005-03-16 | 科乐美股份有限公司 | 遥控玩具***和用于此***的发射器和运动机器 |
CN1649698A (zh) * | 2002-03-18 | 2005-08-03 | 索尼株式会社 | 机器人设备、腿式移动机器人的运动控制设备和方法、腿式移动机器人的传感器***和移动单元 |
WO2007015319A1 (ja) * | 2005-08-02 | 2007-02-08 | Matsushita Electric Industrial Co., Ltd. | 音声出力装置、音声通信装置および音声出力方法 |
CN101508109A (zh) * | 2009-03-27 | 2009-08-19 | 东北大学 | 一种双并联叠加多功能机器人 |
CN101653660A (zh) * | 2008-08-22 | 2010-02-24 | 鸿富锦精密工业(深圳)有限公司 | 讲故事自动做动作的类生物装置及其方法 |
CN102600622A (zh) * | 2012-04-13 | 2012-07-25 | 陈梓鸣 | 一种互动玩具 |
US20120265346A1 (en) * | 2007-05-09 | 2012-10-18 | Irobot Corporation | Autonomous coverage robot sensing |
CN103419204A (zh) * | 2012-05-22 | 2013-12-04 | 林其禹 | 划拳机器人*** |
CN103425053A (zh) * | 2012-05-18 | 2013-12-04 | 发那科株式会社 | 机器人***的动作仿真装置 |
CN103991006A (zh) * | 2014-04-01 | 2014-08-20 | 浙江大学 | 用于机器人制孔平台视觉测量***的标定方法及装置 |
CN104216299A (zh) * | 2014-08-22 | 2014-12-17 | 科大讯飞股份有限公司 | 一种智能销售机器人控制装置 |
CN104516268A (zh) * | 2013-09-28 | 2015-04-15 | 沈阳新松机器人自动化股份有限公司 | 一种基于模糊神经网络的机器人标定误差补偿方法 |
CN104614988A (zh) * | 2014-12-22 | 2015-05-13 | 北京工业大学 | 一种具有内发动机机制的感知运动***认知及其学习方法 |
US20150174761A1 (en) * | 2014-03-06 | 2015-06-25 | Rene Andre Silva Viego | Robotic system |
CN105005614A (zh) * | 2015-07-17 | 2015-10-28 | 深圳狗尾草智能科技有限公司 | 一种机器人情侣社交***及其交互方法 |
CN105093934A (zh) * | 2015-08-17 | 2015-11-25 | 哈尔滨工业大学 | 考虑干扰与模型不确定性的多机器人***分布式有限时间跟踪控制方法 |
CN105353644A (zh) * | 2015-09-29 | 2016-02-24 | 中国人民解放军63892部队 | 基于实装数据信息挖掘的雷达目标航迹衍生***及方法 |
-
2016
- 2016-05-04 CN CN201610291089.0A patent/CN107346107A/zh not_active Withdrawn
Patent Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1290186A (zh) * | 1998-12-15 | 2001-04-04 | 泰格电子有限公司 | 交互式玩具 |
CN1297393A (zh) * | 1999-01-20 | 2001-05-30 | 索尼公司 | 机器人装置和运动控制方法 |
CN1299991A (zh) * | 1999-11-30 | 2001-06-20 | 索尼公司 | 机器人装置控制装置、机器人装置控制方法及存储媒体 |
CN1364275A (zh) * | 2000-02-10 | 2002-08-14 | 索尼公司 | 自动装置、信息提供装置、机器人装置和交易方法 |
CN1331445A (zh) * | 2000-07-04 | 2002-01-16 | 株式会社托密 | 交互式玩具、反应行为模式生成装置及方法 |
CN1596144A (zh) * | 2001-11-29 | 2005-03-16 | 科乐美股份有限公司 | 遥控玩具***和用于此***的发射器和运动机器 |
CN1649698A (zh) * | 2002-03-18 | 2005-08-03 | 索尼株式会社 | 机器人设备、腿式移动机器人的运动控制设备和方法、腿式移动机器人的传感器***和移动单元 |
WO2007015319A1 (ja) * | 2005-08-02 | 2007-02-08 | Matsushita Electric Industrial Co., Ltd. | 音声出力装置、音声通信装置および音声出力方法 |
US20120265346A1 (en) * | 2007-05-09 | 2012-10-18 | Irobot Corporation | Autonomous coverage robot sensing |
CN101653660A (zh) * | 2008-08-22 | 2010-02-24 | 鸿富锦精密工业(深圳)有限公司 | 讲故事自动做动作的类生物装置及其方法 |
CN101508109A (zh) * | 2009-03-27 | 2009-08-19 | 东北大学 | 一种双并联叠加多功能机器人 |
CN102600622A (zh) * | 2012-04-13 | 2012-07-25 | 陈梓鸣 | 一种互动玩具 |
CN103425053A (zh) * | 2012-05-18 | 2013-12-04 | 发那科株式会社 | 机器人***的动作仿真装置 |
CN103419204A (zh) * | 2012-05-22 | 2013-12-04 | 林其禹 | 划拳机器人*** |
CN104516268A (zh) * | 2013-09-28 | 2015-04-15 | 沈阳新松机器人自动化股份有限公司 | 一种基于模糊神经网络的机器人标定误差补偿方法 |
US20150174761A1 (en) * | 2014-03-06 | 2015-06-25 | Rene Andre Silva Viego | Robotic system |
CN103991006A (zh) * | 2014-04-01 | 2014-08-20 | 浙江大学 | 用于机器人制孔平台视觉测量***的标定方法及装置 |
CN104216299A (zh) * | 2014-08-22 | 2014-12-17 | 科大讯飞股份有限公司 | 一种智能销售机器人控制装置 |
CN104614988A (zh) * | 2014-12-22 | 2015-05-13 | 北京工业大学 | 一种具有内发动机机制的感知运动***认知及其学习方法 |
CN105005614A (zh) * | 2015-07-17 | 2015-10-28 | 深圳狗尾草智能科技有限公司 | 一种机器人情侣社交***及其交互方法 |
CN105093934A (zh) * | 2015-08-17 | 2015-11-25 | 哈尔滨工业大学 | 考虑干扰与模型不确定性的多机器人***分布式有限时间跟踪控制方法 |
CN105353644A (zh) * | 2015-09-29 | 2016-02-24 | 中国人民解放军63892部队 | 基于实装数据信息挖掘的雷达目标航迹衍生***及方法 |
Non-Patent Citations (3)
Title |
---|
CHI-TAI CHENG 等: "《An Interactive-Learning System for Pet Robots》", 《THE INTERNATIONAL FEDERATION OF AUTOMATIC CONTROL》 * |
丁洪生 等: "《一种串联机器人的随机误差分析方法》", 《北京理工大学学报》 * |
叶敏 等: "《荔枝采摘机器人双目视觉的动态定位误差分析》", 《农业工程学报》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Laszlo et al. | Interactive control for physically-based animation | |
Shiratori et al. | Accelerometer-based user interfaces for the control of a physically simulated character | |
US10022628B1 (en) | System for feature-based motion adaptation | |
KR102387378B1 (ko) | 보행 동작 인식을 위한 장치 및 방법 | |
Chentanez et al. | Physics-based motion capture imitation with deep reinforcement learning | |
US8860732B2 (en) | System and method for robust physically-plausible character animation | |
De Lasa et al. | Feature-based locomotion controllers | |
Kenwright et al. | Dynamic balancing and walking for real-time 3d characters | |
Ha et al. | Falling and landing motion control for character animation | |
JP2007167532A (ja) | ビデオゲームプログラム、ビデオゲーム装置及びビデオゲーム制御方法 | |
EP0808484B1 (en) | Method and apparatus for controlling the movement of a virtual body | |
CN106730811A (zh) | 一种vr场景下的道具运动处理方法和装置 | |
Al Borno et al. | Feedback control for rotational movements in feature space | |
Chemin et al. | A physics-based juggling simulation using reinforcement learning | |
Shapiro et al. | A dynamic controller toolkit | |
Kang et al. | Finite state machine-based motion-free learning of biped walking | |
Asperti et al. | Rogueinabox: an environment for roguelike learning | |
CN107346107A (zh) | 多样化运动控制方法和***及具有该***的机器人 | |
Rodriguez et al. | RoboCup 2019 AdultSize winner NimbRo: Deep learning perception, in-walk kick, push recovery, and team play capabilities | |
Missura | Analytic and learned footstep control for robust bipedal walking | |
Alisandra Senabre | Gamification Quest:* Design and Development of a gamification game | |
Ellenberg et al. | Exploring creativity through humanoids and dance | |
Firmin et al. | Controller Design for Multi‐Skilled Bipedal Characters | |
Laszlo et al. | Predictive feedback for interactive control of physics-based characters | |
Bahdi | Development of a Locomotion and Balancing Strategy for Humanoid Robots |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20171114 |
|
WW01 | Invention patent application withdrawn after publication |