CN111625002A - 一种仿人机器人爬楼步态规划与控制的方法 - Google Patents

一种仿人机器人爬楼步态规划与控制的方法 Download PDF

Info

Publication number
CN111625002A
CN111625002A CN202010494207.4A CN202010494207A CN111625002A CN 111625002 A CN111625002 A CN 111625002A CN 202010494207 A CN202010494207 A CN 202010494207A CN 111625002 A CN111625002 A CN 111625002A
Authority
CN
China
Prior art keywords
robot
gait
state
joint
algorithm
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
Application number
CN202010494207.4A
Other languages
English (en)
Other versions
CN111625002B (zh
Inventor
颜成钢
万斌
王廷宇
吕彬彬
孙垚棋
张继勇
张勇东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Publication of CN111625002A publication Critical patent/CN111625002A/zh
Application granted granted Critical
Publication of CN111625002B publication Critical patent/CN111625002B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

本发明提供一种仿人机器人爬楼步态规划与控制的方法。本发明以搭建的机器人物理样机模型作为本研究的参考对象,对其进行运动学建模、稳定性分析,设计出能够满足稳定条件的步态规划方法,并提出了一种基于DQN算法的步态优化方法。进而,对机器人腿部进行动力学建模与联合仿真,验证所提出算法的合理性与可行性,最后将最终得到的步态实验结果在物理样机上进行试验,进一步证明算法的有效性,达到理想结果。本发明将传感器信息进行融合,记忆步态并选取最优,调整步态参数,从而达到在线步态优化的目的获得更准确的机器人步态,对约束环境下的仿人机器人步态规划和控制有着指导价值。

Description

一种仿人机器人爬楼步态规划与控制的方法
技术领域
本发明属于机器人步态规划领域,尤其针对机器人在平整地面和复杂环境下的行走步态,具体设计了一种爬楼步态控制方法。
背景技术
20世纪60年代,机器人技术开始受到越来越多的关注,进入人们的视野。历经50多年,机器人所涉及的领域不断扩展,作为一项高新技术,研究热度与日俱增,取得了巨大的进展。
仿人机器人因其类人的特性而具有较广的应用和较强的研究价值,能够在不同环境下稳定行走是其必须具备的基本性能。现阶段,仿人机器人的步态规划方法大多集中在平整地面环境上,直接采用基于模型的方法来获取离线步态。在离线状态下设计出的行走步态能够满足平地无障碍稳定行走,但当机器人在不平坦地面,例如爬斜坡、上下阶梯时,该方法不能达到良好的稳定控制效果,很容易导致机器人因姿态不稳而摔倒。
仿人机器人拥有类人的行走方式,能够模拟各种人体活动,具有较强的理论意义和广阔的应用前景。研究的主要目的是创造一种可替代人类的产品,去完成过去由人类担当的各类作业,这对于一些特殊环境尤为重要,例如火灾现场、陪护老人儿童等。除此之外,加强仿人机器人步态规划和控制的研究,还可以帮助人们更加了解自身步行运动的特点和规律,能够在医学上起到一定的作用。因此,仿人机器人以其肢体灵活等类人特点,成为了机器人领域中的研究热点,引起广大科研学者的关注。
仿人机器人在行走时比起其他多足、轮式或履带式机器人对地面环境要求低,但是该机器人系统非线性,控制参数多,具有不稳定性。因此,相对比其他机器人来说,仿人机器人爬楼步态的稳定控制较为复杂,在对其进行研究时面临许多挑战。
发明内容
针对现有技术中存在的问题,本发明提供一种仿人机器人爬楼步态规划与控制的方法。本发明的目的是针对仿人机器人爬楼步态规划方法的问题,以搭建的机器人物理样机模型作为本研究的参考对象,对其进行运动学建模、稳定性分析,设计出能够满足稳定条件的步态规划方法,并提出了一种基于DQN算法的步态优化方法。进而,对机器人腿部进行动力学建模与联合仿真,验证所提出算法的合理性与可行性,最后将最终得到的步态实验结果在物理样机上进行试验,进一步证明算法的有效性,达到理想结果。
一种仿人机器人爬楼步态规划与控制的方法,具体步骤如下:
步骤(1)、根据机器人物理样机的自由度,建立运动学模型;
首先采用D-H矩阵法对机器人的双腿进行运动学建模并采用逆运动学求解方法求出各个关节的准确角度。
假定机器人刚开始运动时右腿为支撑腿,将右腿踝关节中心设置为世界坐标系{G}。髋、踝、膝关节处X、Y、Z轴的方向确定方法为:
X轴:第i与i+1轴线的公法线,指向第i+1轴线,i表示第i个关节;
Z轴:第i个关节的旋转中心轴方向,可以指向任何方向;
Y轴:根据右手定则,通过X、Z轴的方向来确定。
当两个关节的Z轴线相交时,选取两个轴的交叉乘积方向作为X轴,每个关节的坐标系只能绕Z轴旋转。
齐次坐标变换矩阵,即位姿变换矩阵的通式为:
Figure BDA0002522209070000021
式中,n为坐标系{j}的原点在{i}中的坐标分量,o、a、p分别为X、Y、Z轴对{i}的余弦。结合腿部模型对式(1)进行推理,获得
Figure BDA0002522209070000022
一般表达式:
Figure BDA0002522209070000031
式中,Ci为cosθi缩写,Si为sinθi缩写,αi-1为绕Xi-1轴旋转的角度;ai-1为沿Xi-1轴平移的距离;θi为绕Zi轴旋转的角度;di为沿Zi平移的距离。
通过式(2),将任意一点在坐标系{i+1}中的位置转换到坐标系{i}中,得到的位姿矩阵分别为:
Figure BDA0002522209070000032
Figure BDA0002522209070000033
Figure BDA0002522209070000034
Figure BDA0002522209070000035
Figure BDA0002522209070000036
Figure BDA0002522209070000041
Figure BDA0002522209070000042
Figure BDA0002522209070000043
式(3)所得矩阵为本发明所研究机器人腿部的正运动学方程。将机器人腿部各个关节变量的值引入公式中,可以求出机器人腿部连杆结构的位置姿态。
机器人各关节坐标系{i}到世界坐标系{G}的位姿变换矩阵如下:
Figure BDA0002522209070000044
给定机器人右腿在基准坐标系中的位姿为(P0,R0),根据左、右两腿对称且相等的特性,设定左腿根部位姿为(P7,R7)。
机器人左腿髋关节的位置为:
P7=P6+R6[0 d4 0]T (5)
根据踝关节坐标系获得髋关节的位置矢量:
Figure BDA0002522209070000045
根据式(5)、(6)可以求得两个关节之间的距离
Figure BDA0002522209070000046
根据
Figure BDA0002522209070000047
求出膝关节角度θ3为:
Figure BDA0002522209070000048
踝关节的滚动角和俯仰角可以根据矢量p求出,公式如下:
Figure BDA0002522209070000051
其中,当x≥0时sign(x)返回+1,当<0时sign(x)返回-1。
髋关节各连杆之间的位姿关系如下:
R0=R7R(θ6)Rx5)Ry4)Ry32)Rx1) (9)
由于位姿直接存在以下关系:
Figure BDA0002522209070000052
因而推算出:
Figure BDA0002522209070000053
步骤(2)、采用DQN算法对仿人机器人爬楼步态进行优化
DQN算法的全称为深度Q网络(Deep Q Network)算法,是一种对强化学习经典算法Q-Learning算法的改进,DQN算法将Q-Learning的优点与Neural networks相结合,同时拥有一个用于学习过往经历的回忆记忆库,不用对环境模型进行学习,而是直接用求解值函数的模型无关强化学习算法。
针对本发明所搭建的七连杆模型,采用DQN算法通过用值函数近似(Q(s,a)=f(s,a))的方法得到Q值,来解决维度问题。DQN算法在Q-Learning算法基础上作出以下三点改进:
1.引入经验回放Experience replay;
2.使用q_target更新target;
3.通过Q(s,a)=f(s,a)计算Q值。
在DQN算法中引入经验回放,通过记忆单元(Memory)存储每次行走时产生的步态数据,在每次进行参数更新时从记忆单元中调取数据,进行对比产生最优。
在机器人行走步态涉及的状态空间Y中,DQN算法只将状态S作为输入,输出[Q(s,a1),Q(s,a2),Q(s,a3)]矩阵。状态空间Y包含状态S,矩阵对应在该状态S下所有的状态-动作值会产生的奖惩值γ,通过记忆单元的经验回放学习,获得该状态和矩阵之间的数学关系,从中选取最优的步态。
由于存在导致机身不稳定因素,在对质心进行调整时,要将步行时的动作action离散为前向、侧向两个方向,即X轴、Y轴方向。在左腿为支撑腿阶段,机器人的重心落在左腿上,机器人的稳定性依靠左腿的髋关节、膝关节和踝关节舵机来控制。选择仿人机器人位姿信息中最能直接映现其稳定性的信息,即关节角度作为状态s。
前后方向控制时DQN算法学习的状态输入为:
sq_t={θ3(t),θ2(t),θ1(t),θxz(t)} (14)
其中,θxz(t)为t时刻X-Z平面绕躯干坐标系轴的角度,状态值st(st∈S)。输出在线调整值
aq(t)=[θ6′(t),θ4′(t),θ5′(t)] (15)
左右方向控制时状态输入为:
sl_t={θ6(t),θ4(t),θyz(t)} (16)
输出行为定义为:
al(t)=[θ3′(t),θ1′(t)] (17)
其中,sq_t为前后方向输入,sl_t为左右方向输入,aq(t)为前后方向控制时的输出,al(t)为左右方向控制时的输出,θyz(t)为t时刻Y-Z面绕躯干坐标系轴的角度,θ1′(t)、θ2′(t)、θ3′(t)分别为各关节对应的调整后的角度。右腿的输入状态、输出定义与左腿相同。
设置奖励值,以判断仿人机器人是否摔倒为奖惩机制。摔倒时奖惩值为-10,稳定行走时奖惩值为+10。其中,当θxy(t)≥45°时机器人摔倒,当0°<θxy(t)<45°时机器人稳定行走,不存在θxy(t)≤0°的情况。
步态算法的在线学习优化过程如下:
输入:状态空间Y;动作空间A;起始状态x0;奖惩值γ;更新步长Ss过程:
1:初始化回放存储空间MemoryD,定义容量大小N;
2:初始化Q-network,使用随机变量κ;
3:初始化状态-动作值函数
Figure BDA0002522209070000071
(q_target),令随机权重κ-=κ;
4:初始化状态序列
Figure BDA0002522209070000072
5:循环更新,直到找到每个步态对应的最好的动作;
6:计算t时刻基于ZMP的移动变长倒立摆模型的状态向量;
7:计算每个动作输出的
Figure BDA0002522209070000073
8:选择一个动作a;
9:根据
Figure BDA0002522209070000074
采用策略ε-greedy选择一个随机动作at
10:否则选择
Figure BDA0002522209070000075
11:执行动作at,对机器人进行动力学仿真,并观察奖惩值γt和新状态xt+1
12:令st+1=st,at,xt+1并进行预处理使
Figure BDA0002522209070000076
13:在MemoryD中存储经验
Figure BDA0002522209070000077
14:从MemoryD中随机选取样本
Figure BDA0002522209070000078
15:
Figure BDA0002522209070000079
16:对于角度θ使用损失函数
Figure BDA00025222090700000710
梯度下降更新;
17:每隔t时间步,对q_target进行重置更新
Figure BDA00025222090700000711
18:End For;
输出:状态S下所有可能产生的步态动作对应的Q值。
根据对基于机器人模型的离线步态规划和姿态传感器所反馈的姿态角度信息,通过上述设计的DQN算法,实现机器人在步行过程中的不断学习,得出质心调整和机器人位姿之间的关系,从而达到对其步态进行在线优化调整的目的。
在运用步行控制器进行步行学习过程中,当θxy(t)≥45°,即躯干–重垂线夹角大于45度时,机器人摔倒,算法判定为步行失败,重新定义到起点位置。机器人虚拟样机模型在联合仿真环境内,通过DQN算法不断学习、记忆,并根据实时步态调整步态参数,直到奖励值最大,步态算法得到最优步态。
本发明的有益效果如下:
1、本发明根据D-H法则建立了机器人的运动学模型,并进行了逆运动求解,通过对数学模型进行分析得到各个关节角度的表达式,为步态控制器奠定了理论基础。
2、将DQN优化算法引入到仿人机器人爬楼步态控制中,通过DQN算法来设计步行控制器,将传感器信息进行融合,记忆步态并选取最优,调整步态参数,从而达到在线步态优化的目的获得更准确的机器人步态,对约束环境下的仿人机器人步态规划和控制有着指导价值。
附图说明
图1为本发明仿人机器人腿部数学模型图;
图2为本发明右腿连杆位姿示意图;
图3为本发明DQN算法流程图;
图4为本发明步行控制器学习过程示意图;
图5为本发明机器人爬楼步态仿真图;
图6为机器人左右脚踝X轴方向运动轨迹图;
图7为机器人左右脚踝Y轴方向运动轨迹图;
图8为机器人左右脚踝Z轴方向运动轨迹图;
图9为本发明物理样机实验结果图。
具体实施方式
下面是结合附图与实施例对本发明进行详细说明。
一种仿人机器人爬楼步态规划与控制的方法,具体步骤如下:
步骤(1)、根据机器人物理样机的自由度,建立运动学模型;
运动学建模是研究机器人行走姿态的基础,它是通过推导数学公式,确定机器人各个部分随时间运动关系的一种建模方式,属于数学模型的建立。首先采用D-H矩阵法对机器人的双腿进行运动学建模并采用逆运动学求解方法求出各个关节的准确角度。
假定机器人刚开始运动时右腿为支撑腿,将右腿踝关节中心设置为世界坐标系{G}。髋、踝、膝关节处X、Y、Z轴的方向确定方法为:
X轴:第i与i+1轴线的公法线,指向第i+1轴线,i表示第i个关节;
Z轴:第i个关节的旋转中心轴方向,可以指向任何方向;
Y轴:根据右手定则,通过X、Z轴的方向来确定。
当两个关节的Z轴线相交时,选取两个轴的交叉乘积方向作为X轴,每个关节的坐标系只能绕Z轴旋转。
基于D-H矩阵法所建模型及各关节坐标系如图1所示。
齐次坐标变换矩阵,即位姿变换矩阵的通式为:
Figure BDA0002522209070000091
式中,n为坐标系{j}的原点在{i}中的坐标分量,o、a、p分别为X、Y、Z轴对{i}的余弦。结合腿部模型对式(1)进行推理,获得
Figure BDA0002522209070000093
一般表达式:
Figure BDA0002522209070000092
式中,Ci为cosθi缩写,Si为sinθi缩写,αi-1为绕Xi-1轴旋转的角度;ai-1为沿Xi-1轴平移的距离;θi为绕Zi轴旋转的角度;di为沿Zi平移的距离。
通过式(2),将任意一点在坐标系{i+1}中的位置转换到坐标系{i}中,得到的位姿矩阵分别为:
Figure BDA0002522209070000101
Figure BDA0002522209070000102
Figure BDA0002522209070000103
Figure BDA0002522209070000104
Figure BDA0002522209070000105
Figure BDA0002522209070000106
Figure BDA0002522209070000107
Figure BDA0002522209070000108
Figure BDA0002522209070000111
式(3)所得矩阵为本发明所研究机器人腿部的正运动学方程。将机器人腿部各个关节变量的值引入公式中,可以求出机器人腿部连杆结构的位置姿态。
机器人各关节坐标系{i}到世界坐标系{G}的位姿变换矩阵如下:
Figure BDA0002522209070000112
给定机器人右腿在基准坐标系中的位姿为(P0,R0),根据左、右两腿对称且相等的特性,设定左腿根部位姿为(P7,R7),右腿的运算符号如图2所示。
根据仿人机器人腿部模型可得机器人左腿髋关节的位置为:
P7=P6+R6[0 d4 0]T (5)
根据踝关节坐标系获得髋关节的位置矢量:
Figure BDA0002522209070000113
根据式(5)、(6)可以求得两个关节之间的距离
Figure BDA0002522209070000114
分析仿人机器人腿部模型,可以根据
Figure BDA0002522209070000115
求出膝关节角度θ3为:
Figure BDA0002522209070000116
踝关节的滚动角和俯仰角可以根据矢量p求出,公式如下:
Figure BDA0002522209070000117
其中,当x≥0时sign(x)返回+1,当<0时sign(x)返回-1。
髋关节各连杆之间的位姿关系如下:
R0=R7R(θ6)Rx5)Ry4)Ry32)Rx1) (9)
由于位姿直接存在以下关系:
Figure BDA0002522209070000121
因而推算出:
Figure BDA0002522209070000122
步骤(2)、采用DQN算法对仿人机器人爬楼步态进行优化
本发明考虑到DQN算法的优秀性能,利用DQN算法设计步行稳定控制器,将基于模型与智能算法的步态规划方法相结合,达到在线优化的目的。
DQN算法的全称为深度Q网络(Deep Q Network)算法,是一种对强化学习经典算法Q-Learning算法的改进,DQN算法将Q-Learning的优点与Neural networks相结合,同时拥有一个用于学习过往经历的回忆记忆库,不用对环境模型进行学习,而是直接用求解值函数的模型无关强化学习算法。
Q-Learning学习算法需要将机器人的连续步行状态零散化,机器人在爬楼过程中各关节角度在不停地发生变化。如果我们使用tabular Q learning,将状态空间分割得非常精细,并把所有行走过程中的状态state、动作action都存储在q_table(tabular Qlearning)的表中,然后不断地从q_table中获取数据,更新数据是非常复杂且低效率的,并且会增加计算量和学习时间。如果对状态空间的分割非常粗略,会使误差较大,可能会使学习方法得不到收敛,更难以使机器人在爬楼过程中得到稳定步态。
机器人的自由度越多,上述问题就更严重。因此,针对本发明所搭建的七连杆模型,采用DQN算法通过用值函数近似(Q(s,a)=f(s,a))的方法得到Q值,来解决维度问题。DQN算法流程如图3所示。
DQN算法在Q-Learning算法基础上作出以下三点改进:
1.引入经验回放Experience replay(用于重复学习);
2.使用q_target更新target(切断相关性);
3.通过Q(s,a)=f(s,a)计算Q值。
在DQN算法中引入经验回放,通过记忆单元(Memory)存储每次行走时产生的步态数据,在每次进行参数更新时从记忆单元中调取数据,进行对比产生最优。
在机器人行走步态涉及的状态空间Y中,DQN算法只将状态S作为输入,输出[Q(s,a1),Q(s,a2),Q(s,a3)]矩阵。状态空间Y包含状态S,矩阵对应在该状态S下所有的状态-动作值会产生的奖惩值γ,通过记忆单元的经验回放学习,获得该状态和矩阵之间的数学关系,从中选取最优的步态。
由于存在导致机身不稳定因素,在对质心进行调整时,要将步行时的动作action离散为前向、侧向两个方向,即X轴、Y轴方向。在左腿为支撑腿阶段,机器人的重心落在左腿上,机器人的稳定性依靠左腿的髋关节、膝关节和踝关节舵机来控制。选择仿人机器人位姿信息中最能直接映现其稳定性的信息,即关节角度作为状态s。
前后方向控制时DQN算法学习的状态输入为:
sq_t={θ3(t),θ2(t),θ1(t),θxz(t)} (14)
其中,θxz(t)为t时刻X-Z平面绕躯干坐标系轴的角度,状态值st(st∈S)。输出在线调整值
aq(t)=[θ6′(t),θ4′(t),θ5′(t)] (15)
左右方向控制时状态输入为:
sl_t={θ6(t),θ4(t),θyz(t)} (16)
输出行为定义为:
al(t)=[θ3′(t),θ1′(t)] (17)
其中,sq_t为前后方向输入,sl_t为左右方向输入,aq(t)为前后方向控制时的输出,al(t)为左右方向控制时的输出,θyz(t)为t时刻Y-Z面绕躯干坐标系轴的角度,θ1′(t)、θ2′(t)、θ3′(t)分别为各关节对应的调整后的角度。右腿的输入状态、输出定义与左腿相同。
设置奖励值,以判断仿人机器人是否摔倒为奖惩机制。摔倒时奖惩值为-10,稳定行走时奖惩值为+10。其中,当θxy(t)≥45°时机器人摔倒,当0°<θxy(t)<45°时机器人稳定行走,不存在θxy(t)≤0°的情况。
结合本发明所研究的仿人机器人爬楼步态,对比图3所示基本DQN算法流程,将步态算法的在线学习优化过程如下:
输入:状态空间Y;动作空间A;起始状态x0;奖惩值γ;更新步长Ss过程:
1:初始化回放存储空间Memory D,定义容量大小N;
2:初始化Q-network,使用随机变量κ;
3:初始化状态-动作值函数
Figure BDA0002522209070000141
(q_target),令随机权重κ-=κ;
4:初始化状态序列
Figure BDA0002522209070000142
5:循环更新,直到找到每个步态对应的最好的动作;
6:计算t时刻基于ZMP的移动变长倒立摆模型的状态向量;
7:计算每个动作输出的
Figure BDA0002522209070000143
8:选择一个动作a;
9:根据
Figure BDA0002522209070000144
采用策略ε-greedy选择一个随机动作at
10:否则选择
Figure BDA0002522209070000145
11:执行动作at,对机器人进行动力学仿真,并观察奖惩值γt和新状态xt+1
12:令st+1=st,at,xt+1并进行预处理使
Figure BDA0002522209070000146
13:在Memory D中存储经验
Figure BDA0002522209070000147
14:从Memory D中随机选取样本
Figure BDA0002522209070000148
15:
Figure BDA0002522209070000149
16:对于角度θ使用损失函数
Figure BDA00025222090700001410
梯度下降更新;
17:每隔t时间步,对q_target进行重置更新
Figure BDA00025222090700001411
18:End For;
输出:状态S下所有可能产生的步态动作对应的Q值。
根据对基于机器人模型的离线步态规划和姿态传感器所反馈的姿态角度信息,通过上述设计的DQN算法,实现机器人在步行过程中的不断学习,得出质心调整和机器人位姿之间的关系,从而达到对其步态进行在线优化调整的目的。学习过程如图4所示。
在运用步行控制器进行步行学习过程中,当θxy(t)≥45°,即躯干–重垂线夹角大于45度时,机器人摔倒,算法判定为步行失败,重新定义到起点位置。机器人虚拟样机模型在联合仿真环境内,通过DQN算法不断学习、记忆,并根据实时步态调整步态参数,直到奖励值最大,步态算法得到最优步态。
实施例
ADAMS软件中虚拟样机模型整体高度约32cm,搭建的每层楼梯高度为2.5cm,机器人完成一次步行周期为7.2s。图5所示的仿真结果为机器人虚拟样机爬楼梯的一系列动作过程,先以左腿为支撑腿,右腿为摆动腿,再将重心转移至左腿,从而成功迈上第一层台阶,然后以右腿为支撑腿,左腿为摆动腿,迈上第二层台阶,机器人不断重复以上步骤来完成规定的爬楼动作。
通过本发明所提出的结合DQN的步态规划控制算法,得到了机器人爬楼过程虚拟样机仿真结果,该结果说明仿人机器人经过此算法的优化,完成稳定爬楼的动作,验证了算法的可行性。为了能够从数据及不同方向上判断分析机器人运动的具体状况,我们将ADAMS虚拟样机在仿真过程中得到的数据导出到Matlab中,分别对X、Y、Z三个方向的步行轨迹进行绘制,左、右脚踝得到的轨迹图如图6、图7、图8所示。图6为机器人左右脚踝X轴方向运动轨迹图;图7为机器人左右脚踝Y轴方向运动轨迹图;图8为机器人左右脚踝Z轴方向运动轨迹图。
在机器人物理样机上,直接采用应用DQN步态优化控制算法训练后得到的仿真实验训练结果。在仿真平台上使用DQN算法优化离线数据后,会最终得到一个最优的步态数据,并将该数据下载到该物理样机,得到如图9所示实验结果。该结果显示,物理样机步态与仿真环境下虚拟样机步态一致,成功完成步行。
物理样机实验结果再次验证了移动变长倒立摆模型的步态规划方法及基于DQN的步态调整稳定算法的可行性。

Claims (1)

1.一种仿人机器人爬楼步态规划与控制的方法,其特征在于,具体步骤如下:
步骤(1)、根据机器人物理样机的自由度,建立运动学模型;
首先采用D-H矩阵法对机器人的双腿进行运动学建模并采用逆运动学求解方法求出各个关节的准确角度;
假定机器人刚开始运动时右腿为支撑腿,将右腿踝关节中心设置为世界坐标系{G};髋、踝、膝关节处X、Y、Z轴的方向确定方法为:
X轴:第i与i+1轴线的公法线,指向第i+1轴线,i表示第i个关节;
Z轴:第i个关节的旋转中心轴方向,可以指向任何方向;
Y轴:根据右手定则,通过X、Z轴的方向来确定;
当两个关节的Z轴线相交时,选取两个轴的交叉乘积方向作为X轴,每个关节的坐标系只能绕Z轴旋转;
齐次坐标变换矩阵,即位姿变换矩阵的通式为:
Figure FDA0002522209060000011
式中,n为坐标系{j}的原点在{i}中的坐标分量,o、a、p分别为X、Y、Z轴对{i}的余弦;结合腿部模型对式(1)进行推理,获得
Figure FDA0002522209060000012
一般表达式:
Figure FDA0002522209060000013
式中,Ci为cosθi缩写,Si为sinθi缩写,αi-1为绕Xi-1轴旋转的角度;ai-1为沿Xi-1轴平移的距离;θi为绕Zi轴旋转的角度;di为沿Zi平移的距离;
通过式(2),将任意一点在坐标系{i+1}中的位置转换到坐标系{i}中,得到的位姿矩阵分别为:
Figure FDA0002522209060000021
Figure FDA0002522209060000022
Figure FDA0002522209060000023
Figure FDA0002522209060000024
Figure FDA0002522209060000025
Figure FDA0002522209060000026
Figure FDA0002522209060000027
Figure FDA0002522209060000031
式(3)所得矩阵为本发明所研究机器人腿部的正运动学方程;将机器人腿部各个关节变量的值引入公式中,可以求出机器人腿部连杆结构的位置姿态;
机器人各关节坐标系{i}到世界坐标系{G}的位姿变换矩阵如下:
Figure FDA0002522209060000032
给定机器人右腿在基准坐标系中的位姿为(P0,R0),根据左、右两腿对称且相等的特性,设定左腿根部位姿为(P7,R7);
机器人左腿髋关节的位置为:
P7=P6+R6[0 d4 0]T (5)
根据踝关节坐标系获得髋关节的位置矢量:
Figure FDA0002522209060000033
根据式(5)、(6)可以求得两个关节之间的距离
Figure FDA0002522209060000034
根据
Figure FDA0002522209060000035
求出膝关节角度θ3为:
Figure FDA0002522209060000036
踝关节的滚动角和俯仰角可以根据矢量p求出,公式如下:
Figure FDA0002522209060000037
其中,当x≥0时sign(x)返回+1,当<0时sign(x)返回-1;
髋关节各连杆之间的位姿关系如下:
R0=R7R(θ6)Rx5)Ry4)Ry32)Rx1) (9)
由于位姿直接存在以下关系:
Figure FDA0002522209060000041
因而推算出:
Figure FDA0002522209060000042
步骤(2)、采用DQN算法对仿人机器人爬楼步态进行优化
DQN算法的全称为深度Q网络(Deep Q Network)算法,是一种对强化学习经典算法Q-Learning算法的改进,DQN算法将Q-Learning的优点与Neural networks相结合,同时拥有一个用于学习过往经历的回忆记忆库,不用对环境模型进行学习,而是直接用求解值函数的模型无关强化学习算法;
针对本发明所搭建的七连杆模型,采用DQN算法通过用值函数近似(Q(s,a)=f(s,a))的方法得到Q值,来解决维度问题;DQN算法在Q-Learning算法基础上作出以下三点改进:
1.引入经验回放Experience replay;
2.使用q_target更新target;
3.通过Q(s,a)=f(s,a)计算Q值;
在DQN算法中引入经验回放,通过记忆单元(Memory)存储每次行走时产生的步态数据,在每次进行参数更新时从记忆单元中调取数据,进行对比产生最优;
在机器人行走步态涉及的状态空间Y中,DQN算法只将状态S作为输入,输出[Q(s,a1),Q(s,a2),Q(s,a3)]矩阵;状态空间Y包含状态S,矩阵对应在该状态S下所有的状态-动作值会产生的奖惩值γ,通过记忆单元的经验回放学习,获得该状态和矩阵之间的数学关系,从中选取最优的步态;
由于存在导致机身不稳定因素,在对质心进行调整时,要将步行时的动作action离散为前向、侧向两个方向,即X轴、Y轴方向;在左腿为支撑腿阶段,机器人的重心落在左腿上,机器人的稳定性依靠左腿的髋关节、膝关节和踝关节舵机来控制;选择仿人机器人位姿信息中最能直接映现其稳定性的信息,即关节角度作为状态s;
前后方向控制时DQN算法学习的状态输入为:
sq_t={θ3(t),θ2(t),θ1(t),θxz(t)} (14)
其中,θxz(t)为t时刻X-Z平面绕躯干坐标系轴的角度,状态值st(st∈S);输出在线调整值
aq(t)=[θ6′(t),θ4′(t),θ5′(t)] (15)
左右方向控制时状态输入为:
sl_t={θ6(t),θ4(t),θyz(t)} (16)
输出行为定义为:
al(t)=[θ3′(t),θ1′(t)] (17)
其中,sq_t为前后方向输入,sl_t为左右方向输入,aq(t)为前后方向控制时的输出,al(t)为左右方向控制时的输出,θyz(t)为t时刻Y-Z面绕躯干坐标系轴的角度,θ1′(t)、θ2′(t)、θ3′(t)分别为各关节对应的调整后的角度;右腿的输入状态、输出定义与左腿相同;
设置奖励值,以判断仿人机器人是否摔倒为奖惩机制;摔倒时奖惩值为-10,稳定行走时奖惩值为+10;其中,当θxy(t)≥45°时机器人摔倒,当0°<θxy(t)<45°时机器人稳定行走,不存在θxy(t)≤0°的情况;
步态算法的在线学习优化过程如下:
输入:状态空间Y;动作空间A;起始状态x0;奖惩值γ;更新步长Ss过程:
1:初始化回放存储空间MemoryD,定义容量大小N;
2:初始化Q-network,使用随机变量κ;
3:初始化状态-动作值函数
Figure FDA0002522209060000051
(q_target),令随机权重κ-=κ;
4:初始化状态序列sq_t={x1},
Figure FDA0002522209060000052
5:循环更新,直到找到每个步态对应的最好的动作;
6:计算t时刻基于ZMP的移动变长倒立摆模型的状态向量;
7:计算每个动作输出的
Figure FDA0002522209060000061
8:选择一个动作a;
9:根据
Figure FDA0002522209060000062
采用策略ε-greedy选择一个随机动作at
10:否则选择
Figure DA00025222090643102
11:执行动作at,对机器人进行动力学仿真,并观察奖惩值γt和新状态xt+1
12:令st+1=st,at,xt+1并进行预处理使
Figure FDA0002522209060000064
13:在MemoryD中存储经验
Figure FDA0002522209060000065
14:从MemoryD中随机选取样本
Figure FDA0002522209060000066
15:
Figure FDA0002522209060000067
16:对于角度θ使用损失函数
Figure FDA0002522209060000068
梯度下降更新;
17:每隔t时间步,对q_target进行重置更新
Figure FDA0002522209060000069
18:End For;
输出:状态S下所有可能产生的步态动作对应的Q值;
根据对基于机器人模型的离线步态规划和姿态传感器所反馈的姿态角度信息,通过上述设计的DQN算法,实现机器人在步行过程中的不断学习,得出质心调整和机器人位姿之间的关系,从而达到对其步态进行在线优化调整的目的;
在运用步行控制器进行步行学习过程中,当θxy(t)≥45°,即躯干–重垂线夹角大于45度时,机器人摔倒,算法判定为步行失败,重新定义到起点位置;机器人虚拟样机模型在联合仿真环境内,通过DQN算法不断学习、记忆,并根据实时步态调整步态参数,直到奖励值最大,步态算法得到最优步态。
CN202010494207.4A 2019-12-24 2020-06-03 一种仿人机器人爬楼步态规划与控制的方法 Active CN111625002B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911350351 2019-12-24
CN2019113503514 2019-12-24

Publications (2)

Publication Number Publication Date
CN111625002A true CN111625002A (zh) 2020-09-04
CN111625002B CN111625002B (zh) 2022-12-13

Family

ID=72260335

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010494207.4A Active CN111625002B (zh) 2019-12-24 2020-06-03 一种仿人机器人爬楼步态规划与控制的方法

Country Status (1)

Country Link
CN (1) CN111625002B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112698650A (zh) * 2020-12-16 2021-04-23 深圳市优必选科技股份有限公司 仿人机器人的类人步态控制方法、装置、设备及存储介质
CN112882485A (zh) * 2021-01-25 2021-06-01 河南大学 一种双足机器人逆运动学的几何计算方法
CN112960047A (zh) * 2021-02-02 2021-06-15 浙江孚邦科技有限公司 一种双足机器人重心转移控制的方法
CN113485398A (zh) * 2021-07-19 2021-10-08 北京理工大学 一种轮式双足机器人姿态控制方法
CN114609918A (zh) * 2022-05-12 2022-06-10 齐鲁工业大学 一种四足机器人运动控制方法、系统、存储介质及设备
CN114661595A (zh) * 2022-03-18 2022-06-24 纯米科技(上海)股份有限公司 机器人的静步态调试方法、系统、电子装置及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0488693A2 (en) * 1990-11-30 1992-06-03 Honda Giken Kogyo Kabushiki Kaisha System for controlling locomotion of legged walking robot
WO2006030934A1 (en) * 2004-09-14 2006-03-23 Toyota Jidosha Kabushiki Kaisha Walking robot by using passive changes in joint angles and control method thereof
US20130079929A1 (en) * 2011-09-28 2013-03-28 Samsung Electronics Co., Ltd. Robot and control method thereof
CN103149933A (zh) * 2013-02-27 2013-06-12 南京邮电大学 基于闭环控制的仿人机器人全向行走方法
CN106842959A (zh) * 2017-03-22 2017-06-13 西南科技大学 一种Nao机器人步态规划遗传算法
CN108388887A (zh) * 2018-03-20 2018-08-10 济南大学 基于学步期幼儿步态提取的双足机器人运动学分析方法
CN108983804A (zh) * 2018-08-27 2018-12-11 燕山大学 一种基于深度强化学习的双足机器人步态规划方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0488693A2 (en) * 1990-11-30 1992-06-03 Honda Giken Kogyo Kabushiki Kaisha System for controlling locomotion of legged walking robot
WO2006030934A1 (en) * 2004-09-14 2006-03-23 Toyota Jidosha Kabushiki Kaisha Walking robot by using passive changes in joint angles and control method thereof
US20130079929A1 (en) * 2011-09-28 2013-03-28 Samsung Electronics Co., Ltd. Robot and control method thereof
CN103149933A (zh) * 2013-02-27 2013-06-12 南京邮电大学 基于闭环控制的仿人机器人全向行走方法
CN106842959A (zh) * 2017-03-22 2017-06-13 西南科技大学 一种Nao机器人步态规划遗传算法
CN108388887A (zh) * 2018-03-20 2018-08-10 济南大学 基于学步期幼儿步态提取的双足机器人运动学分析方法
CN108983804A (zh) * 2018-08-27 2018-12-11 燕山大学 一种基于深度强化学习的双足机器人步态规划方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
严志伟等: "小型双足机器人直行步态的并行规划策略研究", 《上海理工大学学报》 *
袁雯等: "基于深度Q网络的仿人机器人步态优化", 《计算机与现代化》 *
赵玉婷等: "基于deep Q-network双足机器人非平整地面行走稳定性控制方法", 《计算机应用》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112698650A (zh) * 2020-12-16 2021-04-23 深圳市优必选科技股份有限公司 仿人机器人的类人步态控制方法、装置、设备及存储介质
CN112698650B (zh) * 2020-12-16 2024-05-07 深圳市优必选科技股份有限公司 仿人机器人的类人步态控制方法、装置、设备及存储介质
CN112882485A (zh) * 2021-01-25 2021-06-01 河南大学 一种双足机器人逆运动学的几何计算方法
CN112960047A (zh) * 2021-02-02 2021-06-15 浙江孚邦科技有限公司 一种双足机器人重心转移控制的方法
CN113485398A (zh) * 2021-07-19 2021-10-08 北京理工大学 一种轮式双足机器人姿态控制方法
CN113485398B (zh) * 2021-07-19 2024-02-09 北京理工大学 一种轮式双足机器人姿态控制方法
CN114661595A (zh) * 2022-03-18 2022-06-24 纯米科技(上海)股份有限公司 机器人的静步态调试方法、系统、电子装置及存储介质
CN114661595B (zh) * 2022-03-18 2024-05-03 纯米科技(上海)股份有限公司 机器人的静步态调试方法、系统、电子装置及存储介质
CN114609918A (zh) * 2022-05-12 2022-06-10 齐鲁工业大学 一种四足机器人运动控制方法、系统、存储介质及设备
CN114609918B (zh) * 2022-05-12 2022-08-02 齐鲁工业大学 一种四足机器人运动控制方法、系统、存储介质及设备

Also Published As

Publication number Publication date
CN111625002B (zh) 2022-12-13

Similar Documents

Publication Publication Date Title
CN111625002B (zh) 一种仿人机器人爬楼步态规划与控制的方法
CN108858208B (zh) 一种复杂地形仿人机器人自适应平衡控制方法、装置和系统
Kashyap et al. Particle Swarm Optimization aided PID gait controller design for a humanoid robot
CN112060082B (zh) 基于仿生强化学习型小脑模型的在线稳定控制仿人机器人
CN112051735B (zh) 仿人机器人步行控制方法
JP3443077B2 (ja) ロボットの運動パターン生成装置及び運動パターン生成方法、並びにロボット
JP3972854B2 (ja) ロボットの運動制御装置
Chew et al. Dynamic bipedal walking assisted by learning
JP5052013B2 (ja) ロボット装置及びその制御方法
JP2001212775A (ja) 脚式移動ロボットの動作制御装置及び動作制御方法、並びに、脚式移動ロボット
Albert et al. Analytic path planning algorithms for bipedal robots without a trunk
CN109760761A (zh) 一种基于生物仿生原理和直觉的四足机器人运动控制方法
Zielinska et al. Robot gait synthesis using the scheme of human motions skills development
You et al. Straight leg walking strategy for torque-controlled humanoid robots
Yan et al. Whole-body kinematic and dynamic modeling for quadruped robot under different gaits and mechanism topologies
JP2001138272A (ja) 脚式移動ロボット及びその動作制御方法
Ficht et al. Fast whole-body motion control of humanoid robots with inertia constraints
JP5035005B2 (ja) 脚式ロボット、その制御方法、その制御システム
Chignoli Trajectory optimization for dynamic aerial motions of legged robots
CN114393579A (zh) 一种基于自适应模糊虚拟模型的机器人控制方法及装置
Arbulú et al. The Rh-1 full-size humanoid robot: Design, walking pattern generation and control
Kobayashi et al. Optimal use of arm-swing for bipedal walking control
Chumacero-Polanco et al. A review on human motion prediction in sit to stand and lifting tasks
Mombaur et al. Control of motion and compliance
Sahin et al. Modeling and dynamic control for a hexapod robot

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