CN113927585A - 一种机器人平衡控制方法、装置、可读存储介质及机器人 - Google Patents
一种机器人平衡控制方法、装置、可读存储介质及机器人 Download PDFInfo
- Publication number
- CN113927585A CN113927585A CN202111221807.4A CN202111221807A CN113927585A CN 113927585 A CN113927585 A CN 113927585A CN 202111221807 A CN202111221807 A CN 202111221807A CN 113927585 A CN113927585 A CN 113927585A
- Authority
- CN
- China
- Prior art keywords
- robot
- control
- state quantity
- model
- determining
- 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.)
- Granted
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/08—Programme-controlled manipulators characterised by modular constructions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
本申请属于机器人技术领域,尤其涉及一种机器人平衡控制方法、装置、计算机可读存储介质及机器人。所述方法包括:建立机器人的飞轮倒立摆模型;对所述飞轮倒立摆模型进行动力学分析,确定所述机器人的动力学模型表达式;根据所述动力学模型表达式对所述机器人进行模型预测控制,以保持所述机器人的平衡。通过本申请,可以增强机器人对外界干扰的适应能力,提高了机器人在复杂场景中的稳定性,避免发生倾倒现象。
Description
技术领域
本申请属于机器人技术领域,尤其涉及一种机器人平衡控制方法、装置、计算机可读存储介质及机器人。
背景技术
足式机器人是非常复杂的系统,由于其在移动过程中的欠驱动特性,如何保持足式机器人在移动过程中的平衡,一直是困扰相关研发人员的疑难问题。现有技术中的机器人控制方法往往只适用于在平整地面上行走的简单场景,而在其它复杂场景中,由于各种外力的干扰,则难以保持机器人的平衡,导致机器人稳定性较差,极易产生机器人倾倒的现象。
发明内容
有鉴于此,本申请实施例提供了一种机器人平衡控制方法、装置、计算机可读存储介质及机器人,以解决现有的机器人控制方法稳定性较差,极易产生机器人倾倒的问题。
本申请实施例的第一方面提供了一种机器人平衡控制方法,可以包括:
建立机器人的飞轮倒立摆模型;
对所述飞轮倒立摆模型进行动力学分析,确定所述机器人的动力学模型表达式;
根据所述动力学模型表达式对所述机器人进行模型预测控制,以保持所述机器人的平衡。
在第一方面的一种具体实现方式中,所述根据所述动力学模型表达式对所述机器人进行模型预测控制,包括:
根据所述动力学模型表达式确定所述机器人的离散化的状态转移矩阵表达式;
获取所述机器人的当前状态量,并根据所述当前状态量和所述状态转移矩阵表达式确定所述机器人在预定时长后的预测状态量;
获取所述机器人在所述预定时长后的期望状态量,并根据所述预测状态量和所述期望状态量对所述机器人的控制量进行优化控制,确定所述机器人的当前控制量;
按照所述当前控制量对所述机器人进行控制。
在第一方面的一种具体实现方式中,所述根据所述预测状态量和所述期望状态量对所述机器人的控制量进行优化控制,确定所述机器人的当前控制量,包括:
计算所述预测状态量和所述期望状态量之间的状态量误差;
以所述状态量误差最小化为优化目标,对所述机器人的控制量进行二次规划求解,得到所述机器人在所述预定时长内的各个控制时间点的控制量;
将所述预定时长内的第一个控制时间点的控制量确定为所述机器人的当前控制量。
在第一方面的一种具体实现方式中,所述对所述机器人的控制量进行二次规划求解,包括:
根据下式对所述机器人的控制量进行二次规划求解:
min w2
其中,X(k)为所述当前状态量,Xd为所述期望状态量,w为所述状态量误差,和为分别为所述状态转移矩阵表达式中的预设参数,u(k)、…、u(k+N-1)分别为所述机器人在所述预定时长内的各个控制时间点的控制量。
在第一方面的一种具体实现方式中,所述建立机器人的飞轮倒立摆模型,包括:
将所述机器人的躯干等效为一个连杆,将所述机器人的腿部安装在所述躯干的几何中心,并将所述腿部的几何中心作为所述腿部的质心,建立所述机器人的飞轮倒立摆模型。
在第一方面的一种具体实现方式中,所述动力学模型表达式为:
其中,M为所述躯干的质量,M1为所述腿部的质量,g为重力加速度,L为所述腿部的长度的一半,J为所述躯干绕所述躯干的几何中心的转动惯量,J1为所述腿部绕端点的转动惯量,所述端点为所述腿部与地面的接触点,u为所述机器人施加于所述躯干的几何中心的力矩,θ为所述躯干的俯仰角,为所述腿部与地面垂线的夹角。
本申请实施例的第二方面提供了一种机器人平衡控制装置,可以包括:
飞轮倒立摆模型建立模块,用于建立机器人的飞轮倒立摆模型;
动力学分析模块,用于对所述飞轮倒立摆模型进行动力学分析,确定所述机器人的动力学模型表达式;
模型预测控制模块,用于根据所述动力学模型表达式对所述机器人进行模型预测控制,以保持所述机器人的平衡。
在第二方面的一种具体实现方式中,所述模型预测控制模块具体可以包括:
离散化单元,用于根据所述动力学模型表达式确定所述机器人的离散化的状态转移矩阵表达式;
预测状态量确定单元,用于获取所述机器人的当前状态量,并根据所述当前状态量和所述状态转移矩阵表达式确定所述机器人在预定时长后的预测状态量;
优化控制单元,用于获取所述机器人在所述预定时长后的期望状态量,并根据所述预测状态量和所述期望状态量对所述机器人的控制量进行优化控制,确定所述机器人的当前控制量;
机器人控制单元,用于按照所述当前控制量对所述机器人进行控制。
在第二方面的一种具体实现方式中,所述优化控制单元具体可以包括:
误差计算子单元,用于计算所述预测状态量和所述期望状态量之间的状态量误差;
二次规划求解单元,用于以所述状态量误差最小化为优化目标,对所述机器人的控制量进行二次规划求解,得到所述机器人在所述预定时长内的各个控制时间点的控制量;
当前控制量确定单元,用于将所述预定时长内的第一个控制时间点的控制量确定为所述机器人的当前控制量。
在第二方面的一种具体实现方式中,所述二次规划求解单元具体可以用于根据下式对所述机器人的控制量进行二次规划求解:
min w2
其中,X(k)为所述当前状态量,Xd为所述期望状态量,w为所述状态量误差,和为分别为所述状态转移矩阵表达式中的预设参数,u(k)、…、u(k+N-1)分别为所述机器人在所述预定时长内的各个控制时间点的控制量。
在第二方面的一种具体实现方式中,所述飞轮倒立摆模型建立模块具体可以用于将所述机器人的躯干等效为一个连杆,将所述机器人的腿部安装在所述躯干的几何中心,并将所述腿部的几何中心作为所述腿部的质心,建立所述机器人的飞轮倒立摆模型。
在第二方面的一种具体实现方式中,所述动力学模型表达式为:
其中,M为所述躯干的质量,M1为所述腿部的质量,g为重力加速度,L为所述腿部的长度的一半,J为所述躯干绕所述躯干的几何中心的转动惯量,J1为所述腿部绕端点的转动惯量,所述端点为所述腿部与地面的接触点,u为所述机器人施加于所述躯干的几何中心的力矩,θ为所述躯干的俯仰角,为所述腿部与地面垂线的夹角。
本申请实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种机器人平衡控制方法的步骤。
本申请实施例的第四方面提供了一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种机器人平衡控制方法的步骤。
本申请实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在机器人上运行时,使得机器人执行上述任一种机器人平衡控制方法的步骤。
本申请实施例与现有技术相比存在的有益效果是:在本申请实施例中,首先将机器人简化为飞轮倒立摆模型,然后对该飞轮倒立摆模型进行动力学分析,确定机器人的动力学模型表达式,最后根据该动力学模型表达式对机器人进行模型预测控制,以保持机器人的平衡。通过本申请实施例,可以增强机器人对外界干扰的适应能力,提高了机器人在复杂场景中的稳定性,避免发生倾倒现象。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例中一种机器人平衡控制方法的一个实施例流程图;
图2为飞轮倒立摆模型的示意图;
图3为机器人的腿部及躯干的受力分析示意图;
图4为对机器人进行模型预测控制的示意流程图;
图5为本申请实施例中一种机器人平衡控制装置的一个实施例结构图;
图6为本申请实施例中一种机器人的示意框图。
具体实施方式
为使得本申请的发明目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本申请一部分实施例,而非全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为叙述简便起见,如无特殊说明,本申请实施例中所提及的机器人均为足式机器人,包括但不限于双足机器人、四足机器人以及六足机器人等。
请参阅图1,本申请实施例中一种机器人平衡控制方法的一个实施例可以包括:
步骤S101、建立机器人的飞轮倒立摆模型。
图2所示即为所述飞轮倒立摆模型的示意图,如图所示,将所述机器人的躯干等效为一个连杆,所述躯干的几何中心记为C点,所述躯干的质量记为M,所述躯干绕C点的转动惯量记为J,将所述机器人的腿部安装在C点,所述腿部的长度记为2L,所述腿部的质量记为M1,并将所述腿部的几何中心作为所述腿部的质心,所述腿部绕端点(即图2中的O点)的转动惯量记为J1,所述端点为所述腿部与地面的接触点,所述躯干的俯仰角记为θ(即图2中的∠ACB),CA为水平方向,θ可以通过惯导器件进行测量,所述腿部与地面垂线的夹角记为所述机器人的控制机构的关节角记为α,则有:
将C点的坐标记为(x,y),所述端点的坐标记为(x1,y1),则有:
若腿部与地面没有滑动及脱离接触,即x1=0,y1=0,则上式可简化为:
步骤S102、对所述飞轮倒立摆模型进行动力学分析,确定所述机器人的动力学模型表达式。
图3所示为所述腿部及所述躯干的受力分析示意图,通过受力分析可以得到所述腿部的动力学方程如下所示:
所述躯干的动力学方程如下所示:
其中,Fx为所述躯干在水平方向上的受力,Fy为所述躯干在竖直方向上的受力,g为重力加速度,τ为所述机器人施加于C点的力矩,(r,θ0)为所述躯干的质心与C点之间的偏差,r为该偏差的距离,θ0为该偏差的角度。
对式(2)进行两次求导,可得:
其中,u为控制量,在本申请实施例中,u=τ,也即将所述机器人施加于C点的力矩作为控制量。
步骤S103、根据所述动力学模型表达式对所述机器人进行模型预测控制,以保持所述机器人的平衡。
模型预测控制(Model Predictive Control,MPC)是从当前时刻根据系统当前的状态以及未来的输入,预测系统后续一段时间内的系统状态,并通过优化未来的控制输入量,使得未来的系统状态能够达到期望值,本申请实施例采用模型预测控制的方法进行控制,使得飞轮倒立摆模型能够保持躯干位置和姿态的平衡。
如图4所示,步骤S103具体可以包括如下过程:
步骤S1031、根据所述动力学模型表达式确定所述机器人的离散化的状态转移矩阵表达式。
在本申请实施例中,假设预测所述机器人从当前时刻(记为k)到预定时长(记为Ts)之后的状态量,预测步数为N,则在预测范围内每一小段时间为Ts/N,其中的N个控制时间点分别简化记为k+1,k+2,...,k+N时刻,分别对应的控制时间点为k+Ts/N,k+2*Ts/N,...,k+Ts,每个控制时间点固定一个控制量,分别记为u(k),u(k+1),...,u(k+N-1)。
基于式(9)进行离散化处理,则有:
对上式进行变形,可得如下所示的离散化的状态转移矩阵表达式:
步骤S1032、获取所述机器人的当前状态量,并根据所述当前状态量和所述状态转移矩阵表达式确定所述机器人在预定时长后的预测状态量。
所述当前状态量即为X(k),根据所述状态转移矩阵表达式,可以递推预测所述机器人在所述预定时长内的各个控制时间点的预测状态量分别为:
步骤S1033、获取所述机器人在所述预定时长后的期望状态量,并根据所述预测状态量和所述期望状态量对所述机器人的控制量进行优化控制,确定所述机器人的当前控制量。
在本申请实施例中,可以首先根据下式计算所述预测状态量和所述期望状态量之间的状态量误差:
w=Xd-X(k+N) 式(13)
其中,Xd为所述期望状态量,w为所述状态量误差。
然后,以所述状态量误差最小化为优化目标,对所述机器人的控制量进行二次规划(Quadratic Program,QP)求解,即根据下式对所述机器人的控制量进行二次规划求解:
通过求解以上优化问题,可以得到所述机器人在所述预定时长内的各个控制时间点的控制量,即u(k),u(k+1),...,u(k+N-1),将所述预定时长内的第一个控制时间点的控制量uk确定为所述机器人的当前控制量。
步骤S1034、按照所述当前控制量对所述机器人进行控制。
即按照所述当前控制量来调节所述机器人施加于C点的力矩输出,而后在每个控制时间点均按照步骤S1032至步骤S1034进行滚动优化求解,即可实现对整个过程的优化控制。
综上所述,在本申请实施例中,首先将机器人简化为飞轮倒立摆模型,然后对该飞轮倒立摆模型进行动力学分析,确定机器人的动力学模型表达式,最后根据该动力学模型表达式对机器人进行模型预测控制,以保持机器人的平衡。通过本申请实施例,可以增强机器人对外界干扰的适应能力,提高了机器人在复杂场景中的稳定性,避免发生倾倒现象。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的一种机器人平衡控制方法,图5示出了本申请实施例提供的一种机器人平衡控制装置的一个实施例结构图。
本实施例中,一种机器人平衡控制装置可以包括:
飞轮倒立摆模型建立模块501,用于建立机器人的飞轮倒立摆模型;
动力学分析模块502,用于对所述飞轮倒立摆模型进行动力学分析,确定所述机器人的动力学模型表达式;
模型预测控制模块503,用于根据所述动力学模型表达式对所述机器人进行模型预测控制,以保持所述机器人的平衡。
在本发明实施例的一种具体实现方式中,所述模型预测控制模块具体可以包括:
离散化单元,用于根据所述动力学模型表达式确定所述机器人的离散化的状态转移矩阵表达式;
预测状态量确定单元,用于获取所述机器人的当前状态量,并根据所述当前状态量和所述状态转移矩阵表达式确定所述机器人在预定时长后的预测状态量;
优化控制单元,用于获取所述机器人在所述预定时长后的期望状态量,并根据所述预测状态量和所述期望状态量对所述机器人的控制量进行优化控制,确定所述机器人的当前控制量;
机器人控制单元,用于按照所述当前控制量对所述机器人进行控制。
在本发明实施例的一种具体实现方式中,所述优化控制单元具体可以包括:
误差计算子单元,用于计算所述预测状态量和所述期望状态量之间的状态量误差;
二次规划求解单元,用于以所述状态量误差最小化为优化目标,对所述机器人的控制量进行二次规划求解,得到所述机器人在所述预定时长内的各个控制时间点的控制量;
当前控制量确定单元,用于将所述预定时长内的第一个控制时间点的控制量确定为所述机器人的当前控制量。
在本发明实施例的一种具体实现方式中,所述二次规划求解单元具体可以用于根据下式对所述机器人的控制量进行二次规划求解:
min w2
其中,X(k)为所述当前状态量,Xd为所述期望状态量,w为所述状态量误差,和为分别为所述状态转移矩阵表达式中的预设参数,u(k)、…、u(k+N-1)分别为所述机器人在所述预定时长内的各个控制时间点的控制量。
在本发明实施例的一种具体实现方式中,所述飞轮倒立摆模型建立模块具体可以用于将所述机器人的躯干等效为一个连杆,将所述机器人的腿部安装在所述躯干的几何中心,并将所述腿部的几何中心作为所述腿部的质心,建立所述机器人的飞轮倒立摆模型。
在本发明实施例的一种具体实现方式中,所述动力学模型表达式为:
其中,M为所述躯干的质量,M1为所述腿部的质量,g为重力加速度,L为所述腿部的长度的一半,J为所述躯干绕所述躯干的几何中心的转动惯量,J1为所述腿部绕端点的转动惯量,所述端点为所述腿部与地面的接触点,u为所述机器人施加于所述躯干的几何中心的力矩,θ为所述躯干的俯仰角,为所述腿部与地面垂线的夹角。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
图6示出了本申请实施例提供的一种机器人的示意框图,为了便于说明,仅示出了与本申请实施例相关的部分。
如图6所示,该实施例的机器人6包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机程序62。所述处理器60执行所述计算机程序62时实现上述各个机器人平衡控制方法实施例中的步骤,例如图1所示的步骤S101至步骤S103。或者,所述处理器60执行所述计算机程序62时实现上述各装置实施例中各模块/单元的功能,例如图5所示模块501至模块503的功能。
示例性的,所述计算机程序62可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器60执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序62在所述机器人6中的执行过程。
本领域技术人员可以理解,图6仅仅是机器人6的示例,并不构成对机器人6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述机器人6还可以包括输入输出设备、网络接入设备、总线等。
所述处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述机器人6的内部存储单元,例如机器人6的硬盘或内存。所述存储器61也可以是所述机器人6的外部存储设备,例如所述机器人6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述机器人6的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机程序以及所述机器人6所需的其它程序和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/机器人和方法,可以通过其它的方式实现。例如,以上所描述的装置/机器人实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种机器人平衡控制方法,其特征在于,包括:
建立机器人的飞轮倒立摆模型;
对所述飞轮倒立摆模型进行动力学分析,确定所述机器人的动力学模型表达式;
根据所述动力学模型表达式对所述机器人进行模型预测控制,以保持所述机器人的平衡。
2.根据权利要求1所述的机器人平衡控制方法,其特征在于,所述根据所述动力学模型表达式对所述机器人进行模型预测控制,包括:
根据所述动力学模型表达式确定所述机器人的离散化的状态转移矩阵表达式;
获取所述机器人的当前状态量,并根据所述当前状态量和所述状态转移矩阵表达式确定所述机器人在预定时长后的预测状态量;
获取所述机器人在所述预定时长后的期望状态量,并根据所述预测状态量和所述期望状态量对所述机器人的控制量进行优化控制,确定所述机器人的当前控制量;
按照所述当前控制量对所述机器人进行控制。
3.根据权利要求2所述的机器人平衡控制方法,其特征在于,所述根据所述预测状态量和所述期望状态量对所述机器人的控制量进行优化控制,确定所述机器人的当前控制量,包括:
计算所述预测状态量和所述期望状态量之间的状态量误差;
以所述状态量误差最小化为优化目标,对所述机器人的控制量进行二次规划求解,得到所述机器人在所述预定时长内的各个控制时间点的控制量;
将所述预定时长内的第一个控制时间点的控制量确定为所述机器人的当前控制量。
5.根据权利要求1至4中任一项所述的机器人平衡控制方法,其特征在于,所述建立机器人的飞轮倒立摆模型,包括:
将所述机器人的躯干等效为一个连杆,将所述机器人的腿部安装在所述躯干的几何中心,并将所述腿部的几何中心作为所述腿部的质心,建立所述机器人的飞轮倒立摆模型。
7.一种机器人平衡控制装置,其特征在于,包括:
飞轮倒立摆模型建立模块,用于建立机器人的飞轮倒立摆模型;
动力学分析模块,用于对所述飞轮倒立摆模型进行动力学分析,确定所述机器人的动力学模型表达式;
模型预测控制模块,用于根据所述动力学模型表达式对所述机器人进行模型预测控制,以保持所述机器人的平衡。
8.根据权利要求7所述的机器人平衡控制装置,其特征在于,所述模型预测控制模块包括:
离散化单元,用于根据所述动力学模型表达式确定所述机器人的离散化的状态转移矩阵表达式;
预测状态量确定单元,用于获取所述机器人的当前状态量,并根据所述当前状态量和所述状态转移矩阵表达式确定所述机器人在预定时长后的预测状态量;
优化控制单元,用于获取所述机器人在所述预定时长后的期望状态量,并根据所述预测状态量和所述期望状态量对所述机器人的控制量进行优化控制,确定所述机器人的当前控制量;
机器人控制单元,用于按照所述当前控制量对所述机器人进行控制。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的机器人平衡控制方法的步骤。
10.一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述的机器人平衡控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111221807.4A CN113927585B (zh) | 2021-10-20 | 2021-10-20 | 一种机器人平衡控制方法、装置、可读存储介质及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111221807.4A CN113927585B (zh) | 2021-10-20 | 2021-10-20 | 一种机器人平衡控制方法、装置、可读存储介质及机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113927585A true CN113927585A (zh) | 2022-01-14 |
CN113927585B CN113927585B (zh) | 2023-03-24 |
Family
ID=79280760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111221807.4A Active CN113927585B (zh) | 2021-10-20 | 2021-10-20 | 一种机器人平衡控制方法、装置、可读存储介质及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113927585B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112731951A (zh) * | 2020-12-22 | 2021-04-30 | 深圳市优必选科技股份有限公司 | 一种机器人平衡控制方法、装置、可读存储介质及机器人 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101850548A (zh) * | 2010-04-16 | 2010-10-06 | 北京工业大学 | 一种基于飞轮的倒立摆平衡控制系统 |
CN102237006A (zh) * | 2011-05-12 | 2011-11-09 | 北京工业大学 | 一种基于反力矩旋转机构的倒立摆系统 |
CN110379285A (zh) * | 2019-06-28 | 2019-10-25 | 西安交通大学 | 一种四棱锥立体倒立摆装置及控制方法 |
CN111730605A (zh) * | 2020-08-04 | 2020-10-02 | 深圳市优必选科技股份有限公司 | 一种机器人姿态控制方法、装置、可读存储介质及机器人 |
CN113119102A (zh) * | 2019-12-31 | 2021-07-16 | 深圳市优必选科技股份有限公司 | 基于浮动基飞轮倒立摆的仿人机器人建模方法和装置 |
-
2021
- 2021-10-20 CN CN202111221807.4A patent/CN113927585B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101850548A (zh) * | 2010-04-16 | 2010-10-06 | 北京工业大学 | 一种基于飞轮的倒立摆平衡控制系统 |
CN102237006A (zh) * | 2011-05-12 | 2011-11-09 | 北京工业大学 | 一种基于反力矩旋转机构的倒立摆系统 |
CN110379285A (zh) * | 2019-06-28 | 2019-10-25 | 西安交通大学 | 一种四棱锥立体倒立摆装置及控制方法 |
CN113119102A (zh) * | 2019-12-31 | 2021-07-16 | 深圳市优必选科技股份有限公司 | 基于浮动基飞轮倒立摆的仿人机器人建模方法和装置 |
CN111730605A (zh) * | 2020-08-04 | 2020-10-02 | 深圳市优必选科技股份有限公司 | 一种机器人姿态控制方法、装置、可读存储介质及机器人 |
Non-Patent Citations (2)
Title |
---|
丁加涛 等: "基于模型预测控制的仿人机器人实时步态优化", 《浙江大学学报(工学版)》 * |
李臻 等: "基于动量飞轮的单轴倒立摆系统实验装置", 《实验室研究与探索》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112731951A (zh) * | 2020-12-22 | 2021-04-30 | 深圳市优必选科技股份有限公司 | 一种机器人平衡控制方法、装置、可读存储介质及机器人 |
Also Published As
Publication number | Publication date |
---|---|
CN113927585B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109959381B (zh) | 一种定位方法、装置、机器人及计算机可读存储介质 | |
CN111015653B (zh) | 机器人控制方法、装置、计算机可读存储介质及机器人 | |
CN112731952B (zh) | 一种机器人质心规划方法、装置、可读存储介质及机器人 | |
CN112744313B (zh) | 一种机器人状态估计方法、装置、可读存储介质及机器人 | |
CN111098300B (zh) | 一种机器人平衡控制方法、装置、可读存储介质及机器人 | |
CN111319041B (zh) | 一种机器人位姿确定方法、装置、可读存储介质及机器人 | |
CN112792807A (zh) | 机器人控制方法、装置、计算机可读存储介质及机器人 | |
CN113283082B (zh) | 质心轨迹生成方法、装置、计算机可读存储介质及机器人 | |
CN112775931B (zh) | 机械臂控制方法、装置、计算机可读存储介质及机器人 | |
CN112731953A (zh) | 机器人控制方法、装置、计算机可读存储介质及机器人 | |
CN113927585B (zh) | 一种机器人平衡控制方法、装置、可读存储介质及机器人 | |
CN113119116A (zh) | 一种机械臂运动规划方法、装置、可读存储介质及机械臂 | |
CN112536796A (zh) | 机器人控制方法、装置、计算机可读存储介质及机器人 | |
CN114227685A (zh) | 机械臂控制方法、装置、计算机可读存储介质及机械臂 | |
CN111185909B (zh) | 机器人运行工况获取方法、装置、机器人及存储介质 | |
CN113188505B (zh) | 姿态角度的测量方法、装置、车辆及智能臂架 | |
CN112486170A (zh) | 机器人控制方法、装置、计算机可读存储介质及机器人 | |
CN111998870B (zh) | 一种相机惯导系统的标定方法和装置 | |
CN114115295B (zh) | 机器人运动规划方法及装置、机器人控制设备和存储介质 | |
CN112720478B (zh) | 一种机器人力矩控制方法、装置、可读存储介质及机器人 | |
CN113361079B (zh) | 路面平整度检测方法、装置、设备及存储介质 | |
CN115903874A (zh) | 机器人平衡控制方法、装置、可读存储介质及机器人 | |
CN112975941B (zh) | 机器人控制方法、装置、计算机可读存储介质及机器人 | |
CN113110426A (zh) | 边缘检测方法、装置、机器人及存储介质 | |
CN113204892A (zh) | 质心轨迹生成方法、装置、计算机可读存储介质及机器人 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |