基于线性预测位置和速度控制器的全向轮式类人机器人转让专利

申请号 : CN201580020099.4

文献号 : CN106794576B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : J·拉费D·古艾列P-B·维贝尔

申请人 : 软银机器人欧洲公司法国国家信息与自动化研究所

摘要 :

本发明的目的是一种类人机器人(100),其具有连接到全向移动式地面基座(140)的身体(190),并且配备有:‑身体位置传感器和基座位置传感器,以用于提供测量,‑致动器(212),包括位于全向移动式基座中的至少3个轮子(141),‑提取器(211),以用于将测量结果转换为有用数据,‑控制器,以用于使用机器人模型和预定的位置和速度参考根据有用数据来计算位置、速度和加速度命令,‑单元,以用于将命令转换为用于致动器的指令,特征在于,机器人模型是双质点模型,并且特征在于,命令基于具有根据采样时间周期和多个预测样本的离散时间的线性模型预测性控制律,并被表示为二次优化公式,具有:‑目标的加权总和,‑预定义的线性约束集合。

权利要求 :

1.一种类人机器人(100),所述类人机器人(100)具有连接到全向移动式地面基座(140)的身体(190),并且所述类人机器人(100)配备有:-身体位置传感器和基座位置传感器,所述身体位置传感器和所述基座位置传感器用于提供测量,-致动器(212),所述致动器(212)包括关节电机以及位于所述全向移动式基座中的至少3个轮子(141),其中,具有至少1个全向轮,-提取器(211),所述提取器(211)用于将测量结果转换为观察数据,-控制器,所述控制器用于使用机器人模型和预定的位置和速度参考根据所述观察数据来计算位置、速度和加速度命令,-单元,所述单元用于将所述命令转换为用于所述致动器的指令,所述类人机器人(100)的特征在于:所述机器人模型是双质点模型,其中,第一质点(b)表示移动基座的质心(CoM),并且第二质点(c)表示上身的质心,所述第一质点(b)和所述第二质点(c)具有固定的高度,并且所述命令基于具有根据采样时间周期和多个预测样本的离散时间的线性模型预测性控制律,并且所述线性模型预测性控制律被表示为具有如下各项的二次优化公式:-具有预定义的权重的以下各项的加权总和:

-基座位置目标(O2),

-基座速度目标(O1),

-与CoP和所述第一质点(b)之间的距离有关的目标(O3),CoP是所述机器人与地面之间的接触力的重心,以及

-预定义的线性约束集合,所述预定义的线性约束是:-所述移动基座的最大速度和加速度(R2),

-CoP限制(R1)。

2.根据权利要求1所述的类人机器人,特征在于,加速度变化率最小化目标(O4)被添加至目标的加权总和。

3.根据前述权利要求中任意一项所述的类人机器人,特征在于,所述预定义的线性约束集合包括所述身体的运动限制。

4.一种用于控制类人机器人的方法,所述类人机器人具有连接到全向移动式地面基座(140)的身体(190)以及致动器(212),所述致动器(212)包括位于所述全向移动式基座中的至少3个轮子(141),其中,具有至少1个全向轮,所述方法包括根据闭环方案实施的以下步骤:-检索所述身体的位置测量结果和所述基座的位置测量结果,-将这些位置测量结果转换为观察位置测量结果,-使用机器人模型并且使用控制律来计算身体速度和基座速度命令,所述机器人模型是双质点模型,其中,第一质点(b)表示移动基座的质心(CoM),并且第二质点(c)表示上身的质心,所述第一质点(b)和所述第二质点(c)具有固定的高度,所述命令基于具有根据采样时间周期和多个预测样本的离散时间的线性模型预测性控制律,并且所述线性模型预测性控制律被表示为具有如下各项的二次优化公式:具有预定义的权重的以下各项的加权总和:

-基座位置目标(O2),

-基座速度目标(O1),

-与CoP和所述第一质点(b)之间的距离有关的目标(O3),CoP是所述机器人与地面之间的接触力的重心,以及

线性约束集合,所述线性约束集合是:

-所述移动基座的最大速度和加速度(R2),

-CoP限制(R1),

-将这些命令转换为用于所述机器人致动器的指令。

5.根据前述权利要求所述的方法,特征在于,所述预定义的线性约束集合包括所述身体的运动限制。

6.根据权利要求4至5中任意一项所述的方法,特征在于,加速度变化率最小化目标(O4)被添加至目标的加权总和。

7.一种计算机程序,包括当在计算机上运行时适合于执行权利要求4至6中任意一项所述的方法的计算机代码。

说明书 :

基于线性预测位置和速度控制器的全向轮式类人机器人

技术领域

[0001] 本发明涉及机器人编程系统的领域。更具体而言,本发明应用于控制基于有关节的肢体或使用它们来回走动的机器人(尤其是人或动物形式的机器人)的运动。从机器人具有下述特定人外观属性的时刻开始,机器人可以被认定为是类人机:头部,躯干、双臂、双手等。然而,类人机器人可能或多或少地是复杂的。它的肢体可能具有较多或较少数量的关节。它可以静态地或动态地控制其自身的平衡,并在基座上滚动。它可以从环境中获取信号(“听”、“看”、“触摸”、“感测”等),并根据或多或少复杂的行为做出反应,并通过语音或通过手势与其它机器人或人类进行交互。对于目前这一代的类人机器人,程序员能够创建可以或多或少复杂的情景,作为机器人做出反应/执行的事件/动作的序列。这些动作可以有条件的,其取决于与机器人交互的人的某些行为。但是在第一代的这些类人机器人中,在开发工具包中完成应用程序编程,并且每个应用程序需要由触发事件来启动,该触发事件的发生已经包括在应用程序中。

背景技术

[0002] 因此,需要一种类人机器人,其能够过上“自主生活”,如同能够根据他正演变的环境以确定的方式行动的人类一样。本发明的目的在于通过提供一种机器人来克服现有技术的机器人的局限性,该机器人能够自主地确定适应其正演变的环境的其生活的序列,而无需程序员的任何干预。
[0003] 我们考虑具有连接到身体(也被称为上身)的移动基座的机器人。
[0004] 由移动基座的轮子作用在地面上的法向力很大程度上依赖于其身体的位置和加速度。因此,移动基座遭受强烈的滑移。此外,由于机器人与其支撑基座尺寸相比的重要高度,机器人可能易于跌倒。
[0005] 在文献中,可以找到关于具有动力学稳定性约束的移动机器人的控制以及关于类人式双腿机器人的控制的一些论文。
[0006] 一些最近的工作涉及控制具有由诸如机械臂之类的肢体所引起的动力学约束的机器人。K.Mingeuk等已经致力于使用动力学约束对轮式平台的稳定:“Stabilization of a rapid four-wheeled mobile platform using the zmp stabilization method”。他们使用直接线性二次调节器(LQR)方法来控制平台。该方法的不便之处在于,所受到的动力学约束需要具有在平台的中间处的CoP(压力中心)。CoP是机器人与地面之间的接触力的重心。这个方法涉及损失若干DoF(自由度):实际上,为了防止机器人跌倒,CoP需要仅在由轮子与地面之间的接触点限定的凸多边形中。
[0007] 在另一篇论文中,Y.Li等提出了一种具有动力学约束的移动机器人的简单控制器:“The dynamic stability criterion on the wheel-based humanoid robot based on zmp modeling”。与K.Mingeuk和其它刊物的区别在于它考虑到完全CoP约束,其为不等式约束的总和。该控制器是针对机器人的完整模型迭代的比例积分微分控制,以便找到CoP在支撑多边形中的扭矩命令。
[0008] 关于类人机器人,P.B.Wieber、H.Diedam和A.Herdt说明了一种控制具有高度受约束动态的类人双腿机器人的方法:“Walking without thinking about it”。这个最近的方案涉及基于3d线性倒立摆模型的线性预测控制。使用机器人的简单模型,该控制律预测未来其状态的动态,以确保发送到机器人的当前命令不会在几秒钟内引起不可避免的跌倒。关于两足类人机器人NAO,该控制律的实现可以在D.Gouaillier、C.Collette和K.Kilner所写的论文“Omni-directional closed-loop walk for nao”中找到。但是机器人NAO很小,并且该方法特别是对于如图1所示的较高的类人机器人不会给出良好的结果,该较高的类人机器人例如具有以下特征:
[0009] -20个自由度(DoF)(在头部160上的2个DoF,在手臂170上的2×6个DoF,在腿部180上的3个DoF以及在移动基座140中的3个DoF);实际上,类人机器人具有至少5个DoF(头部的1个DoF,每条腿1个DoF,每条手臂1个DoF),
[0010] -1.37m的高度110,
[0011] -0.65m的宽度130,
[0012] -0.40m的深度120,
[0013] -30kg的总质量,
[0014] -一条腿180连接到具有三个轮子141的全向基座140。移动基座具有0.422m长度的三角形形状,并且能够以1:4m/s-1的最大速度和1:7m/s-2的加速度在短时间内移动机器人。标称速度和加速度为0:5m/s-1和1:0m/s-2。
[0015] 一个解决方案是设计具有与机器人的高度相比大的全向基座的机器人;但于是我们有以下缺点:过大的所需空间和机器人身体的弱点。
[0016] 因此需要控制类人机器人的移动基座及类人机器人的身体,同时考虑到它们的动力学约束。

发明内容

[0017] 为此,本发明提供了一种类人机器人,其具有连接到全向移动式地面基座的身体,并且配备有:
[0018] -身体位置传感器和基座位置传感器,用于提供测量,
[0019] -致动器,包括关节电机和位于全向移动式基座中的至少3个轮子,其中,具有至少1个全向轮,
[0020] -单元,用于将测量结果转换为有用数据,
[0021] -控制器,用于使用机器人模型和预定(preordered)的位置和速度参考根据有用数据来计算位置、速度和加速度命令,
[0022] -单元,用于将命令转换为用于致动器的指令。
[0023] 类人机器人的主要特征在于机器人模型是双质点模型,并且命令基于具有根据采样时间周期和多个预测样本的离散时间的线性模型预测性控制律,并且被表示为具有如下各项的二次优化公式:
[0024] -以下各项的加权总和:
[0025] -基座位置目标,
[0026] -基座速度目标,
[0027] -与CoP和基座中心之间的距离有关的目标,CoP是机器人与地面之间的接触力的重心,
[0028] 具有预定义的权重,以及
[0029] -预定义的线性约束集合,它们是:
[0030] -移动基座的最大速度和加速度,
[0031] -身体的运动限制,
[0032] -CoP限制。
[0033] 这个机器人能够在考虑动力学约束的同时控制机器人的移动基座及其身体两者。它通过预测未来机器人的动力学模型行为而使得具有高速度和加速度运动是可能的。
[0034] 控制器的优点为:
[0035] -时间预测的概念,其允许在高速度和加速度下控制高约束的动力学系统,预测未来行为;
[0036] -高度模块化,其允许在以下各项之间具有许多选择:优先化轨迹跟踪;如果机器人被严重干扰,优先化鲁棒性;或最小化加速度变化率以保护机器人的机械部分;
[0037] -管理任何线性约束集合作为运动限制、稳定性或鲁棒性限制及移动基座限制的可能性。
[0038] 有利地,加权数值稳定性目标被添加至目标的加权总和。
[0039] 身体的运动限制可以为空。
[0040] 根据本发明的实施例,至少一个轮子是全向的。
[0041] 有利地,地面是平坦且水平的。
[0042] 本发明还提供了一种用于控制类人机器人的方法,该类人机器人具有连接到全向移动式地面基座的身体以及致动器,所述致动器包括位于全向移动式基座中的至少3个轮子,并且具有至少1个全向轮,该方法包括根据闭环方案实施的以下步骤:
[0043] -检索身体的位置测量结果和基座的位置测量结果,
[0044] -将这些位置测量结果转换为观察(或有用)的位置测量结果,
[0045] -使用控制律来计算身体速度和基座速度命令,该命令基于具有根据采样时间周期和多个预测样本的离散时间的线性模型预测性控制律,并且被表示为具有以下各项的加权总和的二次优化公式:
[0046] -基座位置目标,
[0047] -基座速度目标,
[0048] -与CoP和基座中心之间的距离有关的目标,CoP是机器人与地面之间的接触力的重心,
[0049] 具有预定义的权重,以及线性约束集合,它们是:
[0050] -移动基座的最大速度和加速度,
[0051] -身体的运动限制,
[0052] -CoP限制。
[0053] -将这些命令转换为用于机器人致动器的指令。
[0054] 本发明还提供了一种计算机程序,包括当在计算机上运行时适合于执行前述权利要求所述的方法的计算机代码。

附图说明

[0055] 依据下面对多个示例性实施例及其附图的说明将更好地理解本发明并且其各个特征和优点将显现出来,在附图中:
[0056] -图1示出了本发明的多个实施例中的类人机器人的物理架构;
[0057] -图2示出了本发明的多个实施例中的类人机器人的软件模块的功能架构;
[0058] -图3示出了根据本发明设计的机器人的质量重新分配的模块化;
[0059] -图4例示了约束的几何表示;
[0060] -图5示出了具有针对四个不同实验(图5a,图5b,图5c和图5d)的CoP位置和移动基座CoM参考位置的边界限制的移动基座CoM(质心)、上身CoM、CoP的x,y轨迹。
[0061] 在附图中,相同的元件以相同的附图标记来标记。

具体实施方式

[0062] 图1示出了本发明的多个实施例中的类人机器人的物理架构。
[0063] 认为图上的特定机器人100仅仅是可以实施本发明的类人机器人的示例。图上的机器人的下肢180对于行走不起作用,但是可以在其基座140上沿任何方向移动,基座140在它所放置的表面上滚动。举例来说,该机器人具有可以约为120cm的高度110,约为65cm的深度120和约为40cm的宽度130。在具体实施例中,本发明的机器人具有平板计算机150,借助于平板计算机150机器人可以将消息(音频、视频、网页)传送到其环境,或通过平板计算机的触觉界面从用户接收输入。除了平板计算机的处理器之外,本发明的机器人还使用其自己主板的处理器,可以例如是来自IntelTM的ATOMTM Z530。在本发明的具体实施例中,本发明的机器人还有利地包括专用于处理母板与致动器之间的数据流的处理器,该致动器控制肢体中的关节和机器人用作轮子的球的电机。取决于确切的关节所需的最大扭矩的幅度,电机可以是不同类型的。例如,可以使用来自e-minebeaTM的电刷式直流无芯电机(例如,SE24P2CTCA),或来自MaxonTM的无刷直流电动机(例如,EC45_70W)。MRE优选地是使用霍尔效应的类型,具有12或14位精度。
[0064] 在本发明的实施例中,图1上显示的机器人还包括各种传感器。它们中的一些用于控制机器人的位置和运动。这是例如位于机器人的躯干中的惯性单元的情况,包括3轴陀螺仪和3轴加速度计。机器人还可以包括片上系统(SOC)类型的在机器人的前额上的两个2D彩色RGB摄像机(顶部和底部),例如来自Shenzen V-Vision Technology LtdTM的摄像机(OV5640),其具有每秒5帧、500万像素的分辨率以及约57°水平和44°垂直的视场(FOV)。一个3D传感器还可以包括在机器人的眼睛后面,例如ASUS XTIONTM SOC传感器,其具有每秒20帧、0.3兆像素的分辨率,具有与2D摄像机大约相同的FOV。本发明的机器人还可以配备有激光线发生器,例如三个在头部中并且三个在基座中,以便能够感测其相对于其环境中的物体/生物的位置。本发明的机器人还可以包括能够感测其环境中的声音的麦克风。在实施例中,可以在机器人的头部上植入在1kHz下具有300mV/Pa+/-3dB的灵敏度和300Hz至12kHz(相对于1kHz的-10dB)的频率范围的四个麦克风。本发明的机器人还可以包括两个声纳传感器,其可以位于其基座的前部和后部处,以测量距其环境中的物体/人的距离。机器人还可以包括在其头部和其手上的触觉传感器,以允许与人进行交互。
[0065] 为了翻译其情绪并与在其环境中的人进行交流,本发明的机器人还可以包括:
[0066] -LED,例如在其眼睛、耳朵中和其肩部上;
[0067] -位于其耳朵中的扬声器,例如两个扬声器。
[0068] 本发明的机器人可以通过以太网RJ45或WiFi 802.11连接与基站或其它机器人进行通信。
[0069] 本发明的机器人可以由具有约400Wh能量的磷酸铁锂电池供电。机器人可以接入适合所包括的电池类型的充电站。
[0070] 鉴于传感器的测量,使用启动由每个肢体限定的链和在每个肢体的末端处限定的效应器的算法由机器人的电机来控制机器人的位置/运动。
[0071] 图2示出了本发明的多个实施例中的类人机器人的软件模块的功能架构。
[0072] 本发明的目的在于提供一种方法,以允许类人机器人以自主方式执行活动,而不需要程序员的任何干预来预测机器人将面对的状况。在现有技术中,机器人能够执行已经编程并上传到其主板的场景。这些场景可以包括对其环境中变化的状况的反应,但是机器人不能够对尚未预测并且包括在被上传到其主板或可远程访问的代码中的状况做出反应。相比之下,本发明的目的在于允许机器人自主地行动,即使鉴于尚未被程序员预测的事件/状况。这个目标通过在图2上显示的功能架构来实现。
[0073] 该功能架构大体上包括四个主要的软件模块。
[0074] 服务模块210包括至少三种类型的服务:
[0075] -提取器服务211,其从关于图1所述的类型的机器人传感器接收输入读数;预处理这些传感器读数,以便提取与机器人的位置、在其环境中的物体/人的识别、所述物体/人的距离、由人发音的词语或其情绪相关的相关数据(也称为有用数据);提取器服务的示例是:人感知,以感知人在机器人附近的存在,运动检测,以检测这些人的运动;声音定位,以定位声音,触摸检测,以解释在机器人触觉传感器上的触摸,语音识别,情感识别,以通过人的词语或手势来识别由机器人附近的人所表达的情感;
[0076] -致动器服务212,其控制机器人的物理动作,例如运动,以启动关节或基座的电机,跟踪器,以跟踪人在机器人的环境中的运动,机器人的LED的照明,以传达情绪,动画语音(语音和手势的组合),行为;行为是可以表达机器人的情绪并允许其执行复杂动作的运动、词语、照明的组合。
[0077] -系统服务213,其尤其包括数据服务;数据服务提供存储的数据,无论是暂时的还是长期的;数据服务的示例为:
[0078] ○用户会话服务,其存储用户数据,以及他们对机器人所做的操作的历史;
[0079] ○包管理器服务,其提供由机器人执行的过程的可扩展储存,具有其高级定义、启动条件和标签。
[0080] 活动模块220包括已经被预编程的机器人的行为221。行为的编程可以使用图形集成开发环境(ChoregapheTM)来实现,该图形集成开发环境是根据No.EP2435216公开的欧洲专利申请(被指定给本专利申请的申请人)的对象。借助于ChoregapheTM编程的行为结合了基于时间的逻辑和基于事件的逻辑。每个行为被标记有清单222,清单222是特别地包括行为的启动条件的文本文件。这些启动条件基于提取器211能够感知的内容。
[0081] 思维模块230负责选择一个或若干活动来启动。为此,思维订阅提取器并评估所有安装的活动的启动条件。这些条件的变量是基于事件的。因此,有效地,只有包含变化的变量的条件语句需要重新评估。基于排序算法、其优先级和生命周期(见下文)的结果,可以启动活动,而一些活动可能已停止。
[0082] 执行的活动将依赖于对服务的API(法语表达“Application Pour Interface”的缩写词)调用以执行它已经被编程要做的任务。每当活动在台上或停止,思维就收集关于其何时发生、条件的当前状态以及看起来有利于学习的用户反馈的数据。
[0083] 如果现有提取器事件不足以满足条件,开发人员就可以创建附加提取器来生成新事件,并将其连同其应用程序分配在包中。
[0084] 为此,通过控制活动的选择并且基于提取器的读数和在被称为选择器的思维中执行的算法来启动致动器,思维模块230将服务模块和活动模块联系在一起。选择器的示例为:
[0085] -自主生活231,其执行活动;基于情形的环境,思维可以告知自主生活关注哪个活动(见下面的示例);任何活动都具有对模块API的所有调用过程的完全访问权限;活动可以包括约束,其将指导自主生活关注于确定的活动;
[0086] -基本认知232,其订阅提取器服务,例如人感知、运动检测和声音定位,以告知运动服务来进行移动;思维根据情形来配置基本认知的行为;在其它时间,基本认知要么独立地动作,要么由运行的活动来配置。
[0087] -对话233,其订阅语音识别提取器并使用动画语音致动器服务来说话;基于情形的环境,思维可以告诉对话要关注的话题;清单中的元数据将这个信息连结在思维中;对话还具有用于管理对话的算法,并且通常独立地动作。
[0088] 执行引擎240启动API调用来调用服务。
[0089] 本发明的目的更具体而言涉及类人机器人的位置、速度和平衡控制,同时考虑其动力学约束。
[0090] 根据本发明,为了同时允许基座140和上身190的高速度和加速度,并且不丧失机器人的平衡,我们需要预测未来的轨迹的稳定性。此外,预先获知直接按控制律规划的轨迹的机会使得轨迹跟踪有效得多。
[0091] 本发明基于根据模型预测控制理论的控制律。这种类型的控制器的主要优点在于考虑未来以决定发送到机器人的下一个命令。这是有用的,因为在高度约束的系统中,例如该机器人的动态,我们不能确定机器人能够仅利用当前状态的估计来保持其稳定性(或平衡)。
[0092] 机器人被建模为如图3所示的双质点模型。第一质点b表示移动基座质心(CoM),第二质点c表示上身CoM;移动基座140与身体(或上身)190之间的接合处被认为不具有质量。该模型被存储为系统数据服务213。
[0093] 为了具有实时控制,机器人的模型需要尽可能简单。我们需要计算基座作用在地面上的力的良好近似。机器人中的质量的重新分配不能通过单个质点模型来完成,因为大约一半的质量集中在基座中,而其余的质量在上身中。
[0094] 我们现在可以针对这个系统写出牛顿方程和欧拉方程,其中,轴z是垂直轴,而x和y是两个水平轴:
[0095]
[0096]
[0097]
[0098]
[0099] 其中,mc和mb是分别与c和b有关的质量, 和 是用于每个质点的角动量。 对应于由移动基座作用在上身上的力,并且 对应于由地面作用在移动基座的三个轮子上的力。
[0100] 另外,p是力 的CoP,它是它们的重心。由于其定义,p仅被限定在由三个轮子的接触点所表示的凸多边形中。
[0101] 在该模型中,(1)和(2)直接意味着b与c之间的距离不是常数。
[0102] 并且在这个模型中,我们直接考虑c与b之间的动量(3)(4)。这意味着我们忽略了由手臂引起的动量。我们可以这样做,因为在我们的操作的情况下,不存在快速移动。组合方程(1)(2)(3)(4),我们可以写出系统的动力方程:
[0103]
[0104] 我们可以在方程(5)中注意到,两个质量模型的动力方程简单地是两个单个质量模型的和。
[0105] 现在,为了使方程(5)线性化,我们做出一些假设。首先,我们可以忽略总角动量因为我们选择仅考虑c与b之间的动量。其次,因为我们具有冗余度机器人,我们可以围绕x和y轴移动c的CoM,而不修改其在z轴上的位置。因此,我们考虑约束在恒定值h的cz;这个假设对于获得线性模型是重要的,但没有这个假设,机器人仍然可以在其基座上滚动。此外,为了简化说明,我们优选地考虑平坦且水平的地面,因此pz=0,但是机器人可以在没有这个假设的情况下移动。没有DoF来控制bz的位置,我们可以将其设定为常数1。最x y z后,我们会注意到g=g=0并且g=g重力范数(norm)。
[0106] 利用这些假设和注释,我们可以重写方程(5)如下:
[0107]
[0108] 我们现在可以使用方程(6),以便提供CoP与基座和身体的位置和加速度之间的线性关系:
[0109]
[0110] 有趣的是发现,由于项h和l,两个质量模型的CoP不是两个一质量CoP的加权重心。考虑这个近似的唯一方式是定义h=l,因此c与b之间没有动量是可能的。我们可以得出结论,两质量模型CoP与两个一质量模型CoP的重心之间的这个差异对应于c与b之间的动量的效应。
[0111] 鲁棒性标准也用于确定机器人模型。我们考虑 由每个轮子与地面的接触点表示的凸多边形;这个D多边形的示例如图4所示。根据定义,我们始终有 为了使得随着旋转CoP约束不变,在以b为中心的机器人的框架中,我们设计了保守的约束:其中, 是半径r的以b为中心的圆,具有属性
[0112] 量化这个系统的鲁棒性是一个未决的问题。在没有干扰力的任何模型化的情况下,我们不能做出有关方向、幅度和它们的动态的任何假设。机器人补偿干扰的能力可以与c的CoP和CoM位置联系起来。由于它们能够移动,机器人可以对强烈的干扰做出反应。我们可以注意到,在没有关于干扰的任何假设的情况下,如果它们接近b,则c的CoP和CoM位置沿任何方向具有移动的最大范围。因此,我们提出鲁棒性标准ζ,其在最大鲁棒性的情况下等于0:
[0113] ζ=ζf||p-b||+(1-ζf)||c-b||   (8)
[0114] 其中,ζf是在范围[0;1]中的因子,其确定我们认为最重要的什么类型的鲁棒性以CoP为中心或者以c的CoM为中心。
[0115] 定义了机器人模型,我们可以解决控制律。该控制律例如被存储为调用运动API的系统数据服务213。
[0116] 为了定义受控身体和基座(c和b)的动态行为,我们必须首先选择预测的持续时间(范围)以及每个采样时刻之间的周期。选择尽可能小的范围和尽可能大的周期将减少计算时间,但是还将降低控制的稳定性和鲁棒性,这取决于动态类。
[0117] 为了保持系统的线性,我们为身体和基座轨迹选择3阶的多项式类来具有连续的CoP轨迹,以便避免机器人中的力的峰值。此外,在该控制器中,以采样周期T对时间进行采样。预测样本的数量是N。
[0118] 这种控制的另一个优点是很容易管理许多不等式约束,为机器人的运动限制,移动基座的最大速度和加速度以及CoP限制。
[0119] 我们可以使用欧拉显式方法来写出每个状态之间的关系:
[0120]
[0121]
[0122]
[0123] 采样周期T的选择有重大意义。允许轨迹在两个样本之间的约束之外,因为我们仅在每个采样时刻约束轨迹。出于实时的原因,我们不能为T选择太小的值。因此,有必要考虑每个约束中的溢出作为安全裕量。
[0124] 考虑 并且针对c的导数及b和p以同样的方式。此外,考虑初始状态 并且针对 以同样的方式。
[0125] 使用方程(9)(10)(11),我们可以写出命令 和身体轨迹(C, 和 )的每个导数之间的关系:
[0126]
[0127]
[0128]
[0129] 其中:
[0130]
[0131]
[0132]
[0133] 同样的方式用于定义b的动态。我们可以注意到,Uc, 和 是可逆的,因为它们是在对角线上没有零的平方下三角矩阵。
[0134] 关于p,使用方程(6),我们可以写出这个关系:
[0135]
[0136] 其中:
[0137]
[0138]
[0139] 在可以用于解决确定满足这些位置、鲁棒性和动态行为条件的这种控制律的问题的不同方法中,我们已经选择将其作为优化问题来解决。为了解决这个优化问题,我们选择将其公式表示为在线性约束下的最小二乘最小化或者表示为具有目标和线性约束的二次优化。主要原因是这种问题的求解器计算速度快。添加非线性约束或非二次最小化目标显著地增加了计算时间。
[0140] 优化变量对应于受控身体和基座 因此,每个目标和约束必须被表达为X的函数。
[0141] 1)控制目标:
[0142] 目标Oi将被表示为最小二乘最小化和QP(二次问题)公式:
[0143] Xt是转置时的X。
[0144] 第一个目标是跟踪控制。在这个控制中,我们选择进行位置/速度跟踪。令 和位置和速度目标超过范围。使用(13),我们可以写出速度控制目标O1:
[0145]
[0146]
[0147] 使用(12)我们可以写出位置控制目标O2:
[0148]
[0149]
[0150] 下一个目标是鲁棒性最大化。通过最小化ζ,我们使鲁棒性最大化。令Upbb=Upb–Ub。使用(8)、(12)、(16)我们可以写出鲁棒性控制O3:
[0151]
[0152]
[0153] Q3=ζfQ3p+(1-ζf)Q3c   (24)
[0154]
[0155]
[0156]
[0157]
[0158]
[0159] 优选地,我们定义另一目标以避免机器人上的加速度变化率的峰值;所以我们向控制添加加速度变化率最小化目标O4:
[0160]
[0161] p4=0   (27)
[0162] 关于这个第四个目标,我们可以注意到,当机器人跌倒时,c和b的轨迹呈指数增长。因此,通过最小化这些轨迹的加速度变化率,我们直接增大对c和b的指数发散的避免,这有助于稳定机器人。
[0163] 2)控制约束:
[0164] 在下文中,约束Ri将被表达为QP线性不等式约束公式:
[0165] 第一个约束R1是为了保证稳定性:ζ必须小于或等于1。该约束不是线性的,因此我们引入一组保守的线性约束来对此进行近似。我们选择使用如图4所示的圆 中内切的约束 的八边形形状:它定义CoP限制约束。令 约束R1写成如下:
[0166]
[0167]
[0168]
[0169]
[0170] 第二个约束R2涉及移动基座的限制。令 和 为移动基座的最大速度和加速度。我们可以写出约束R2如下:
[0171]
[0172]
[0173]
[0174] 第三个也是最后一个约束R3涉及身体的运动限制。由于其关节,机器人可以在围绕移动基座的CoM的矩形区域 中移动其上身的CoM。令kxy为矩形形状 的限制,约束R3被写为如下:
[0175] R3:-kxy≤cxy-bxy≤kxy   (32)
[0176]
[0177]
[0178] 身体的运动限制可以为零。于是我们有:cxy=bxy。
[0179] 为了以这些目标和约束来解决这个优化问题,我们使用线性二次问题求解器。关于求解QP的一些文献可以在J.Nocedal和S.J.Wright  2000的书“Numerical optimization,second edition”中找到。这种求解器找到这样的问题的最优解:
[0180]
[0181] 其中,Q是对称和正定的。使用方程(19)、(21)、(25)、(27)、(29)、(31)、(33),我们可以填写Q,p,V,v-和v+的值:
[0182] Q=α1Q1+α2Q2+α3Q3+α4Q4+α5Q5   (35)
[0183] p=α1p1+α2p2+α3p3+α4p4+α5p5   (36)
[0184]
[0185] 其中,αi是与每个目标相关联的权重。它们可以实验地选择。
[0186] αi值的选择对于定义控制律的行为是基本的。每个αi之间的相对差距定义了哪个目标将被优先排序,哪个目标将被忽略。如果α1和α2大于其它权重,则轨迹跟踪将是非常有效的,但是鲁棒性将不太有效,并且身体和基座的加速度变化率可能会高。如果α3大于其它权重,机器人将对强干扰是非常鲁棒的。我们可以注意到,在这种行为模式中,如果我们将正速度定义为跟踪目标,则机器人将在向前移动之前开始向后,以便以CoP为中心。权重α4对c和b的轨迹具有平滑效应,如果该权重大于另一个,则最优解将不动。因此,该权重必须小。
[0187] 通过选择适当的权重可以获得一些其它行为。如果两个目标之间的相对差距是大的(若干数量级),则较小目标将几乎在较大目标的零空间中得以计算。当我们想要一个伪约束,使用这个特性是有用的,其中如果该伪约束不能被满足,则可以放宽。例如,我们可以添加上身的CoM的高加权目标,以使其以移动基座位置为中心,以便具有良好的视觉行为。这将具有在可能的时候将CoM固定在移动基座位置处的效果,但是在这是不可能的情况下,该伪约束将被放宽。
[0188] 权重集合可以是固定的,这意味着我们已经预先选择了我们是否想要具有较好的轨迹跟踪或鲁棒性。
[0189] 参考图2,机器人模型和控制律被存储为行为221;它们由执行引擎240并由服务模块210根据包括以下步骤的闭环方案来实施:
[0190] -从传感器检索身体的位置测量和基座的位置测量,
[0191] -使用提取器211将这些位置测量转换为观察的位置测量,
[0192] -使用先前描述的控制律,在系统服务213中计算身体速度和基座速度命令,[0193] -对这些身体和基座速度进行积分,以将它们提供给提取器211,
[0194] -将这些命令(身体和基座的位置和速度)转换为用于机器人致动器212的指令:基座的轮子和机器人的关节。
[0195] 为了验证该控制律,已经进行了一些实验;结合图5对它们进行了说明。这里呈现的控制器已经在类人机器人上以闭环被实施;通过每次设置初始状态 和 的值来给出反馈。对于 由每个轮子角度的位置传感器来测量该值,并且对于 由每个机器人关节上的位置传感器来测量该值。由于移动基座上的三个传感器,只有当假定轮子不在地面上滑动时,才能知道机器人在世界上的真实位置 我们为地面和轮子选择一种材料,以确保这一假设。关于控制器,我们经验性地选择2s的预测时间长度以及100ms的采样周期T。则样本N的数量为20。
[0196] 在四个实验中,位置/速度参考已经以如下形式被发送到控制器:以恒定速度前进,并且在轨迹的中途改变轨迹方向。位置参考和速度参考包括在轨迹参考中。该轨迹不能由机器人执行,因为它需要无限加速度来瞬时改变速度方向。因此,控制器必须通过根据定义的权重集合计算最优和可行的轨迹来予以处理。
[0197] 具有图5a所示结果的实验1对应于使轨迹跟踪优先于鲁棒性:α1,α2>α3。在该示例中,α1=α2=100,α3=10,α4=0.0001。首先,我们可以看到在轨迹中途控制器中预测的效果。移动基座在参考轨迹改变之前开始转动。目标是更好地最小化整个预测时间中的跟踪误差。我们还可以看到上身的CoM大部分在移动基座轨迹曲线中。控制器已经做到这一点,以便通过最小化CoP与移动基座CoM之间的距离来优化整个预测时间中的鲁棒性。最后,我们可以看到在轨迹的末端,没有位置跟踪的有限收敛。这是由于缺乏位置积分目标。
[0198] 具有图5b所示结果的实验2对应于使鲁棒性优先于轨迹跟踪:α3>α1,α2。在该示例中,α1=α2=100,α3=500000,α4=0.0001。我们可以看到,与实验1相比,CoP与移动基座CoM之间的距离显著地较小。由于我们不能具有良好的跟踪和良好的鲁棒性两者,我们可以注意到,轨迹跟踪在轨迹的中间处的问题点周围较差。要记住的重要的一点是,对于恒定的权重集合,当机器人不能同时做到鲁棒性和轨迹跟踪两者时,我们必须达到鲁棒性与轨迹跟踪之间的折衷。
[0199] 具有图5c所示结果的实验3对应于第一个实验的权重集合,但是借助于1-质量模型,而不是2-质量模型。我们可以注意到,移动基座轨迹跟踪保持相同,但是由于较差的模型,整个身体和基座CoM具有较少的DoF以尝试优化鲁棒性。通过更快地移动以及对于较大的移动,这导致在错误的时间上身的行为较差。我们可以注意到,在这个机器人的高速度下,1-质量模型是不稳定的且机器人会跌倒,而2-质量模型保持稳定。在该示例中,α1=α2=100,α3=10,α4=0.0001。
[0200] 具有图5d所示结果的实验4对应于第一个实验的权重集合,借助于2-质量模型但是在开环中(其对应于将b和c直接设置至它们各自的命令)。我们可以明显看到,机器人具有许多漂移并且不能跟随参考轨迹。我们还可以注意到,机器人的测量行为比在闭环中更为不平稳。它还具有使机器人的轨迹平滑的效果。在该示例中,α1=α2=100,α3=10,4=0.0001。
[0201] 我们已经说明了一种具有全向移动式基座的新的受控机器人。机器人的控制器的优点是:
[0202] -时间预测的概念,其允许在高速度和加速度下控制高约束动力学系统,预测它们的未来行为;
[0203] -高度模块化,其允许在以下各项之间具有许多选择:优先化轨迹跟踪;如果机器人被严重干扰,优先化鲁棒性;或最小化加速度变化率以保护机器人的机械部分;
[0204] -管理任何线性约束集合作为运动限制、稳定性或鲁棒性限制及移动基座限制的可能性。