CN117207203A - 机器人控制方法、装置、机器人及存储介质 - Google Patents
机器人控制方法、装置、机器人及存储介质 Download PDFInfo
- Publication number
- CN117207203A CN117207203A CN202311484830.1A CN202311484830A CN117207203A CN 117207203 A CN117207203 A CN 117207203A CN 202311484830 A CN202311484830 A CN 202311484830A CN 117207203 A CN117207203 A CN 117207203A
- Authority
- CN
- China
- Prior art keywords
- arm
- swing
- robot
- gait
- amplitude
- 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
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000005021 gait Effects 0.000 claims abstract description 202
- 230000033001 locomotion Effects 0.000 claims description 172
- 230000004044 response Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 3
- 210000002683 foot Anatomy 0.000 description 32
- 238000010586 diagram Methods 0.000 description 5
- 210000002310 elbow joint Anatomy 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 241001465754 Metazoa Species 0.000 description 4
- 210000001503 joint Anatomy 0.000 description 4
- 210000002414 leg Anatomy 0.000 description 4
- 241000282472 Canis lupus familiaris Species 0.000 description 3
- 210000000323 shoulder joint Anatomy 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 210000003423 ankle Anatomy 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 210000003141 lower extremity Anatomy 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000001364 upper extremity Anatomy 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Landscapes
- Manipulator (AREA)
Abstract
本公开是关于机器人控制方法、装置、机器人及存储介质,所述方法包括:根据第一步态规划中步态周期的足端状态,确定所述步态周期的手臂摆动方向,其中,所述足端状态包括支撑或摆动;根据所述第一步态规划、所述步态周期的手臂摆动方向、以及手臂的摆动幅度,确定第二步态规划;根据所述第二步态规划,控制所述机器人进行运动。由于第二步态规划在步态周期的足端状态基础上,增加了步态周期的手臂摆动方向和手臂摆动幅度,从而使步态规划包含了摆臂动作,而摆臂动作能够减少腿部动作产生的角动量、减少足底打滑等现象,提高机器人行走的稳定性和能量效率。
Description
技术领域
本公开涉及机器人技术领域,具体涉及一种机器人控制方法、装置、机器人及存储介质。
背景技术
近年来,机器人技术不断发展,越来越智能化和自动化,动作的丰富性、稳定性和灵活性均得到了不同程度的提高。机器人能够在用户的生产、生活中代替用户执行特定作业,从而给用户带来便利。足式机器人可以模仿动物或人进行行走,例如双足机器人可以模仿人进行行走,四足机器人可以模仿狗等动物进行行走。但是相关技术中,足式机器人在行走时稳定性较差。
发明内容
为克服相关技术中存在的问题,本公开实施例提供一种机器人控制方法、装置、机器人及存储介质,用以解决相关技术中的缺陷。
根据本公开实施例的第一方面,提供一种机器人控制方法,所述方法包括:
根据第一步态规划中步态周期的足端状态,确定所述步态周期的手臂摆动方向,其中,所述足端状态包括支撑或摆动;
根据所述第一步态规划、所述步态周期的手臂摆动方向、以及手臂的摆动幅度,确定第二步态规划;
根据所述第二步态规划,控制所述机器人进行运动。
在本公开一个可能的实施例中,所述方法还包括:
根据机器人的运动方向和/或运动速度,确定手臂在至少一个方向的摆动幅度。
在本公开一个可能的实施例中,所述根据机器人的运动方向和/或运动速度,确定手臂在至少一个方向的摆动幅度,包括:
响应于机器人的运动方向为前向运动,根据机器人的运动速度和前向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动方向为后向运动,根据机器人的运动速度和后向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度。
在本公开一个可能的实施例中,所述根据机器人的运动速度和前向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度,包括下述至少一项:
响应于机器人的运动速度不小于第一阈值,且不大于第二阈值,根据所述机器人的运动速度、所述第一阈值、所述第二阈值、以及前向运动下至少一个方向上的幅度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度大于所述第二阈值,将前向运动下至少一个方向上的幅度阈值,确定为手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度小于所述第一阈值,将手臂在至少一个方向的摆动幅度均确定为0。
在本公开一个可能的实施例中,所述根据机器人的运动速度和后向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度,包括下述至少一项:
响应于机器人的运动速度不小于第三阈值,且不大于第四阈值,根据所述机器人的运动速度、所述第三阈值、所述第四阈值、以及后向运动下至少一个方向上的幅度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度小于所述第三阈值,将后向运动下至少一个方向上的幅度阈值对应确定为手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度大于所述第四阈值,确定每个手臂状态下的摆动幅度均为0。
在本公开一个可能的实施例中,所述根据所述第一步态规划、所述步态周期的手臂摆动方向,以及手臂的摆动幅度,确定第二步态规划,包括:
根据所述步态周期的手臂摆动方向,以及手臂在至少一个方向上的摆动幅度,确定所述步态周期内手臂摆动的起点和终点的摆动幅度;
根据所述步态周期内手臂摆动的起点和终点的摆动幅度,确定所述步态周期内至少一个时刻的摆动幅度;
根据所述第一步态规划,以及所述步态周期内手臂摆动的起点、终点和至少一个时刻的摆动幅度,确定所述第二步态规划。
在本公开一个可能的实施例中,所述根据所述步态周期内手臂摆动的起点和终点的摆动幅度,确定所述步态周期内至少一个时刻的摆动幅度,包括:
根据所述步态周期内手臂摆动的起点和终点的摆动幅度、所述步态周期内至少一个时刻在所述步态周期内的进度比例,确定所述至少一个时刻的摆动幅度。
在本公开一个可能的实施例中,所述摆动幅度以手臂上至少一个关节的参数来表征;和/或,
所述手臂在至少一个方向的摆动幅度包括:手臂在前向上的摆动幅度和手臂在后向上的摆动幅度。
在本公开一个可能的实施例中,所述第二步态规划包括多个步态周期的足端状态和手臂轨迹,其中,所述步态周期的手臂轨迹包括多个时刻的摆动幅度,所述多个时刻至少包括所述步态周期的起点时刻和终点时刻。
根据本公开实施例的第二方面,提供一种机器人控制装置,所述装置包括:
摆臂方向模块,用于根据第一步态规划中步态周期的足端状态,确定所述步态周期的手臂摆动方向,其中,所述足端状态包括支撑或摆动;
规划模块,用于根据所述第一步态规划、所述步态周期的手臂摆动方向、以及手臂的摆动幅度,确定第二步态规划;
控制模块,用于根据所述第二步态规划,控制所述机器人进行运动。
在本公开一个可能的实施例中,所述装置还包括摆臂幅度模块,用于:
根据机器人的运动方向和/或运动速度,确定手臂在至少一个方向的摆动幅度。
在本公开一个可能的实施例中,所述摆臂幅度模块用于:
响应于机器人的运动方向为前向运动,根据机器人的运动速度和前向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动方向为后向运动,根据机器人的运动速度和后向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度。
在本公开一个可能的实施例中,所述摆臂幅度模块用于根据机器人的运动速度和前向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度时,用于下述至少一项:
响应于机器人的运动速度不小于第一阈值,且不大于第二阈值,根据所述机器人的运动速度、所述第一阈值、所述第二阈值、以及前向运动下至少一个方向上的幅度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度大于所述第二阈值,将前向运动下至少一个方向上的幅度阈值,确定为手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度小于所述第一阈值,将手臂在至少一个方向的摆动幅度均确定为0。
在本公开一个可能的实施例中,所述摆臂幅度模块用于根据机器人的运动速度和后向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度时,用于下述至少一项:
响应于机器人的运动速度不小于第三阈值,且不大于第四阈值,根据所述机器人的运动速度、所述第三阈值、所述第四阈值、以及后向运动下至少一个方向上的幅度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度小于所述第三阈值,将后向运动下至少一个方向上的幅度阈值对应确定为手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度大于所述第四阈值,确定每个手臂状态下的摆动幅度均为0。
在本公开一个可能的实施例中,所述规划模块用于:
根据所述步态周期的手臂摆动方向,以及手臂在至少一个方向上的摆动幅度,确定所述步态周期内手臂摆动的起点和终点的摆动幅度;
根据所述步态周期内手臂摆动的起点和终点的摆动幅度,确定所述步态周期内至少一个时刻的摆动幅度;
根据所述第一步态规划,以及所述步态周期内手臂摆动的起点、终点和至少一个时刻的摆动幅度,确定所述第二步态规划。
在本公开一个可能的实施例中,所述规划模块用于根据所述步态周期内手臂摆动的起点和终点的摆动幅度,确定所述步态周期内至少一个时刻的摆动幅度时,用于:
根据所述步态周期内手臂摆动的起点和终点的摆动幅度、所述步态周期内至少一个时刻在所述步态周期内的进度比例,确定所述至少一个时刻的摆动幅度。
在本公开一个可能的实施例中,所述摆动幅度以手臂上至少一个关节的参数来表征;和/或,
所述手臂在至少一个方向的摆动幅度包括:手臂在前向上的摆动幅度和手臂在后向上的摆动幅度。
在本公开一个可能的实施例中,所述第二步态规划包括多个步态周期的足端状态和手臂轨迹,其中,所述步态周期的手臂轨迹包括多个时刻的摆动幅度,所述多个时刻至少包括所述步态周期的起点时刻和终点时刻。
根据本公开实施例的第三方面,提供一种机器人,所述机器人包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现第一方面所述的机器人控制方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现第一方面所述的方法。
本公开的实施例提供的技术方案可以包括以下有益效果:
本公开实施例所提供的机器人控制方法,根据第一步态规划中步态周期的足端状态,确定所述步态周期的手臂摆动方向,并根据所述第一步态规划、所述步态周期的手臂摆动方向、以及手臂的摆动幅度,确定第二步态规划,再根据所述第二步态规划,控制所述机器人进行运动。由于第二步态规划在步态周期的足端状态基础上,增加了步态周期的手臂摆动方向和手臂摆动幅度,从而使步态规划包含了摆臂动作,而摆臂动作能够减少腿部动作产生的角动量、减少足底打滑等现象,提高机器人行走的稳定性和能量效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是本公开一示例性实施例示出的运动机器人控制方法的流程图;
图2是本公开一示例性实施例示出的机器人的架构示意图;
图3是本公开一示例性实施例示出的机器人的运动系统的示意图;
图4是本公开一示例性实施例示出的运动机器人控制方法的流程图;
图5是本公开一示例性实施例示出的运动机器人控制方法的逻辑图;
图6是本公开一示例性实施例示出的运动机器人控制装置的结构示意图;
图7是本公开一示例性实施例示出的机器人的结构框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
近年来,机器人技术不断发展,越来越智能化和自动化,动作的丰富性、稳定性和灵活性均得到了不同程度的提高。机器人能够在用户的生产、生活中代替用户执行特定作业,从而给用户带来便利。足式机器人可以模仿动物或人进行行走,例如双足机器人可以模仿人进行行走,四足机器人可以模仿狗等动物进行行走。但是相关技术中,足式机器人在行走时稳定性较差。
基于此,第一方面,本公开至少一个实施例提供了一种运动轨迹生成方法,请参照附图1,其示出了该方法的流程,包括步骤S101至步骤S103。
其中,该方法可以应用于机器人,例如应用于双足机器人(仿人形机器人)和四足机器人(机器狗)等足式机器人。机器人的架构如图2所示,机器人包括运动系统和运动控制系统。运动系统可以包括附图3所示的机器人各个部位的关节电机,例如上肢的肩部具有pitch、roll、yaw方向的三个自由度电机,肘部具有pitch方向的一个自由度电机,腕部也可以具有两个或三个自由度电机,下肢的髋部具有pitch、roll、yaw方向的三个自由度电机,膝部具有pitch方向的一个自由度电机,踝部具有pitch、roll方向的两个自由度电机,其中,roll、pitch、yaw分别为绕X轴、Y轴和Z轴旋转的方向。运动控制系统可以包括轨迹管理模块、NMPC(nonlinear model predictive control,非线性模型预测控制)模块、WBC(whole body control,全身控制)模块、状态估计模块等,运动控制系统可以控制运动系统进行运动,以使机器人完成行走等动作。终端设备可以通过安装用于控制机器人的应用程序,来与机器人绑定,用户可以通过上述应用程序输入运动控制指令,终端设备可以将运动控制指令发送至机器人的运动控制系统;机器人的遥控器可以通过蓝牙与机器人通信连接,用户可以通过上述遥控器输入运动控制指令,遥控器可以将运动控制指令发送至机器人的运动控制系统。在运动控制系统中,轨迹管理模块可以根据运动控制指令和状态估计模块反馈的系统状态生成期望轨迹(例如期望躯干轨迹、关节角度轨迹、落足点期望高度等),并将期望轨迹下发至NMPC模块,NMPC模块可以基于期望轨迹生成最优的系统状态和输入(例如线动量、角动量等)、系统坐标(例如机体位置、姿态、关节角度等)和地反馈力、关节速度等,并发送至WBC模块,WBC模块根据上述输入生成关节力矩,并将关节力矩发送至运动系统,以使运动系统执行运动控制指令所表征的动作。
在步骤S101中,根据第一步态规划中步态周期的足端状态、前进方向,确定所述步态周期的手臂摆动方向,其中,所述足端状态包括支撑或摆动。
其中,第一步态规划可以包括多个步态周期的起止时间、前进方向、足端状态、足端轨迹等,其中,足端状态包括机器人每个足端的状态,即每个足端为支撑状态或摆动状态,足端轨迹可以包括腿部至少一个关节的参数,例如关节角度等。应当理解,第一步态规划可以为轨迹管理模块内预先配置的步态规划,或者轨迹管理模块实时生成的步态规划,该步态规划可以下发至NMPC模块进行机器人运动控制。示例性的,机器人为双足机器人的情况下,每个步态周期将机器人的两个足部分别定义为摆动足和支撑足,且步态周期切换时两个足部的定义相互交换;例如某个步态周期中左脚被定义为摆动足,右脚被定为支撑足,则下一个步态周期左脚被定为支撑足,右脚被定为摆动足;定义为摆动足的足部的足端状态为摆动,定义为支撑足的足部的足端状态为支撑。
手臂摆动方向可以包括每个手臂的摆动方向。举例来说,本步骤中可以根据人类行走习惯来确定手臂摆动方向,即与摆动足同侧的手臂的摆动方向与摆动足的摆动方向相反,与支撑足不同侧的手臂的摆动方向与摆动足的摆动方向相同。例如,机器人在向前行走时,某个步态周期中左脚为支撑足,右脚为摆动足,则左臂的摆动方向为前向摆动,即由身体后方摆动至身体前方,右臂的摆动方向为后向摆动,即由身体前方摆动至身体后方。再例如,机器人在向后倒退行走时,某个步态周期中左脚为支撑足,右脚为摆动足,则左臂的摆动方向为后向摆动,即由身体前方摆动至身体后方,右臂的摆动方向为前向摆动,即由身体后方摆动至身体前方。
可以理解的是,本步骤可以针对第一步态规划中多个步态周期分别确定每个步态周期的手臂摆动方向。例如针对当前步态周期之后的N个步态周期分别确定每个步态周期的手臂摆动方向,N>2。
在步骤S102中,根据所述第一步态规划、所述步态周期的手臂摆动方向、以及手臂的摆动幅度,确定第二步态规划。
其中,手臂的摆动幅度可以包括手臂在至少一个方向上的摆动幅度,例如手臂在前向(即朝机器人前方摆动)上的摆动幅度和手臂在后向(即朝机器人后方摆动)上的摆动幅度。
其中,手臂的摆动幅度可以以手臂上至少一个关节的参数来表征,例如至少一个关节可以为肩关节、肘关节等;关节参数可以包括关节在至少一个自由度上的关节角度、关节角速度等。
可选的,本步骤中可以按照附图4所示的方式执行,包括子步骤S1021至子步骤S1023。
在子步骤S1021中,根据所述步态周期的手臂摆动方向,以及手臂在至少一个方向上的摆动幅度,确定所述步态周期内手臂摆动的起点和终点的摆动幅度。
举例来说,手臂摆动方向为前向摆动时,手臂在后向上的摆动幅度为手臂摆动的起点的摆动幅度,手臂在前向上的摆动幅度为手臂摆动的终点的摆动幅度。手臂摆动方向为后向摆动时,手臂在前向上的摆动幅度为手臂摆动的起点的摆动幅度,手臂在后向上的摆动幅度为手臂摆动的终点的摆动幅度。
在子步骤S1022中,根据所述步态周期内手臂摆动的起点和终点的摆动幅度,确定所述步态周期内至少一个时刻的摆动幅度。
举例来说,根据所述步态周期内手臂摆动的起点和终点的摆动幅度、所述步态周期内至少一个时刻在所述步态周期内的进度比例,确定所述至少一个时刻的摆动幅度。
其中,某个时刻在所述步态周期内的进度比例可以为:
上式中,为该时刻所在步态周期的起始时间,/>为该时刻,为步态周期的时长。
其中,在每个时刻采用三次样条差值(Cubic Spline Interpolation)的方式确定摆动幅度。在摆动幅度为手臂的至少一个关节的参数的情况下,则可以针对每个关节,在每个时刻采用三次样条差值(Cubic Spline Interpolation)的方式确定关节的参数,例如关节角度和角速度。
在子步骤S1023中,根据所述第一步态规划,以及所述步态周期内手臂摆动的起点、终点和至少一个时刻的摆动幅度,确定所述第二步态规划。
例如,根据所述步态周期内手臂摆动的起点、终点和至少一个时刻的摆动幅度确定所述步态周期的手臂轨迹,并将所述步态周期的手臂轨迹合并入第一步态规划,得到第二步态规划。
可以理解的是,所述第二步态规划包括多个步态周期的足端状态、手臂轨迹、起止时间、前进方向、足端轨迹等,其中,所述步态周期的手臂轨迹包括多个时刻的摆动幅度,所述多个时刻至少包括所述步态周期的起点时刻和终点时刻。例如,第二步态规划包括当前步态周期之后的N个步态周期的足端状态、手臂轨迹、起止时间、前进方向、足端轨迹等。
在步骤S103中,根据所述第二步态规划,控制所述机器人进行运动。
示例性的,轨迹管理模块可以将第二步态规划下发至NMPC模块,NMPC模块可以基于第二步态规划生成最优的系统状态和输入(例如线动量、角动量等)、系统坐标(例如机体位置、姿态、关节角度等)和地反馈力、关节速度等,并发送至WBC模块,WBC模块根据上述输入生成关节力矩,并将关节力矩发送至运动系统,以实现对机器人的运动控制。
本公开实施例所提供的机器人控制方法,根据第一步态规划中步态周期的足端状态,确定所述步态周期的手臂摆动方向,并根据所述第一步态规划、所述步态周期的手臂摆动方向、以及手臂的摆动幅度,确定第二步态规划,再根据所述第二步态规划,控制所述机器人进行运动。由于第二步态规划在步态周期的足端状态基础上,增加了步态周期的手臂摆动方向和手臂摆动幅度,从而使步态规划包含了摆臂动作,而摆臂动作能够减少腿部动作产生的角动量、减少足底打滑等现象,提高机器人行走的稳定性和能量效率。
本公开的一些实施例中,可以根据机器人的运动方向和/或运动速度,确定手臂在至少一个方向的摆动幅度。
其中,机器人的运动方向可以包括前向运动(即朝向机器人前方运动)和后向运动(像机器人后方后腿)。机器人的运动速度可以利用相关的传感器实时采集得到。手臂在至少一个方向的摆动幅度包括:手臂在前向上的摆动幅度和手臂在后向上的摆动幅度,例如,手臂的至少一个关节的前向摆动角度和后向摆动角度。
示例性的,响应于机器人的运动方向为前向运动,根据机器人的运动速度和前向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度。例如,前向运动下的至少一个速度阈值包括第一阈值和第二阈值/>。前向运动下至少一个方向的幅度阈值包括:手臂肩部pitch关节前向摆动角度/>、手臂肩部pitch关节后向摆动角度/>、手臂肘关节前向摆动角度/>、手臂肘关节后向摆动角度/>。
基于上述阈值,接下来对本示例中确定手臂在至少一个方向的摆动幅度的多种可选方式进行介绍。
可选方式1:响应于机器人的运动速度不小于第一阈值,且不大于第二阈值,根据所述机器人的运动速度、所述第一阈值、所述第二阈值、以及前向运动下至少一个方向上的幅度阈值,确定手臂在至少一个方向的摆动幅度。
例如,以摆动幅度中的手臂肩部pitch关节为例,可以按照下述公式分别确定手臂肩部pitch关节在前向上的摆动角度和手臂肩部pitch关节在后向上的摆动角度:
上式中,,/>为机器人的运动速度,且/>,/>为摆动幅度为0时手臂肩部pitch关节的角度。
可选方式2:响应于机器人的运动速度大于所述第二阈值,将前向运动下至少一个方向上的幅度阈值,确定为手臂在至少一个方向的摆动幅度。例如,以摆动幅度中的手臂肩部pitch关节为例,在情况下,可以按照下述公式分别确定手臂肩部pitch关节在前向上的摆动角度/>和手臂肩部pitch关节在后向上的摆动角度/>:
可选方式3:响应于机器人的运动速度小于所述第一阈值,将手臂在至少一个方向的摆动幅度均确定为0。例如,以摆动幅度中的手臂肩部pitch关节为例,在情况下,可以确定手臂肩部pitch关节的角度为/>。
应该理解,上述各方式中仅以手臂肩部pitch关节为例对具体确定方式进行了举例说明,但这并非对摆动幅度中所涉及到的关节种类的限制,若摆动幅度还包括其他关节,则其他关节的摆动角度参照肩部pitch关节的摆动角度确定方式进行确定即可。
示例性的,响应于机器人的运动方向为后向运动,根据机器人的运动速度和后向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度。例如后向运动下的至少一个速度阈值包括第三阈值和第二阈值/>,且上述第三阈值和第四阈值均为矢量。后向运动下至少一个方向的幅度阈值包括:手臂肩部pitch关节前向摆动角度/>、手臂肩部pitch关节后向摆动角度/>、手臂肘关节前向摆动角度/>、手臂肘关节后向摆动角度/>。
基于上述阈值,接下来对本示例中确定手臂在至少一个方向的摆动幅度的多种可选方式进行介绍。
可选方式1:响应于机器人的运动速度不小于第三阈值,且不大于第四阈值,根据所述机器人的运动速度、所述第三阈值、所述第四阈值、以及后向运动下至少一个方向上的幅度阈值,确定手臂在至少一个方向的摆动幅度。
例如,以摆动幅度中的手臂肩部pitch关节为例,可以按照下述公式分别确定手臂肩部pitch关节在前向上的摆动角度和手臂肩部pitch关节在后向上的摆动角度:
上式中,,/>为机器人的运动速度,且为矢量、/>,/>为摆动幅度为0时手臂肩部pitch关节的角度。
可选方式2:响应于机器人的运动速度小于所述第三阈值,将后向运动下至少一个方向上的幅度阈值对应确定为手臂在至少一个方向的摆动幅度。例如,以摆动幅度中的手臂肩部pitch关节为例,在情况下,可以按照下述公式分别确定手臂肩部pitch关节在前向上的摆动角度/>和手臂肩部pitch关节在后向上的摆动角度/>:
可选方式3:响应于机器人的运动速度大于所述第四阈值,确定每个手臂状态下的摆动幅度均为0。例如,以摆动幅度中的手臂肩部pitch关节为例,在情况下,可以确定手臂肩部pitch关节的角度为/>。
应该理解,上述各方式中仅以手臂肩部pitch关节为例对具体确定方式进行了举例说明,但这并非对摆动幅度中所涉及到的关节种类的限制,若摆动幅度还包括其他关节,则其他关节的摆动角度参照肩部pitch关节的摆动角度确定方式进行确定即可。
需要注意的是,本步骤可以每间隔第一步态规划中多个步态周期(例如N个,N>2)而执行一次,并在每次执行时更新手臂在前向上的摆动幅度和手臂在后向上的摆动幅度。而执行附图1所示的方法时,利用当前的摆动幅度来确定第二步态规划。
结合上述各实施例,可以得到本公开所提供的机器人控制方法的逻辑图如附图5所示,从图中可以看出每间隔M个步态周期可以根据机器人的运动速度和运动方向确定前摆幅度和后摆幅度(即机器人在至少一个方向上的摆动幅度),而在每个步态周期可以根据第一步态规划中之后的N个步态周期的足端状态、运动方向等确定N个步态周期中每个步态周期的摆臂方向,进而结合当前的前摆幅度和后摆幅度,确定N个步态周期中每个步态周期的手臂轨迹,将N个步态周期中每个步态周期的手臂轨迹对应添加至第一步态规划中,得到第二步态规划。最后根据第二步态规划控制机器人进行运动。
应当注意的是,上述实施例中出现的前向运动、后向运动,前向摆动、后向摆动、在前向上的摆动幅度、在后向上的摆动幅度等仅为运动方向、摆臂方向和手臂在至少一个方向上的摆臂幅度的举例,这并非对运动方向、摆臂方向、以及摆臂幅度方向的限制,其他方向的运动和摆臂依然可以参照上述实施例进行执行。例如,可以将前向运动和后向运动分别第一方向运动和第二方向运动,第一方向和第二方向可以为相对方向,或者不相对的方向;而前向摆臂和后向摆臂也可以对应替换为第一方向摆臂、第二方向摆臂;而手臂在前向、后向上的摆臂幅度也可以替换为手臂在第一方向、第二方向上的摆臂幅度。
根据本公开实施例的第二方面,提供一种机器人控制装置,请参照附图6,所述装置包括:
摆臂方向模块601,用于根据第一步态规划中步态周期的足端状态,确定所述步态周期的手臂摆动方向,其中,所述足端状态包括支撑或摆动;
规划模块602,用于根据所述第一步态规划、所述步态周期的手臂摆动方向、以及手臂的摆动幅度,确定第二步态规划;
控制模块603,用于根据所述第二步态规划,控制所述机器人进行运动。
在本公开一个可能的实施例中,所述装置还包括摆臂幅度模块,用于:
根据机器人的运动方向和/或运动速度,确定手臂在至少一个方向的摆动幅度。
在本公开一个可能的实施例中,所述摆臂幅度模块用于:
响应于机器人的运动方向为前向运动,根据机器人的运动速度和前向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动方向为后向运动,根据机器人的运动速度和后向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度。
在本公开一个可能的实施例中,所述摆臂幅度模块用于根据机器人的运动速度和前向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度时,用于下述至少一项:
响应于机器人的运动速度不小于第一阈值,且不大于第二阈值,根据所述机器人的运动速度、所述第一阈值、所述第二阈值、以及前向运动下至少一个方向上的幅度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度大于所述第二阈值,将前向运动下至少一个方向上的幅度阈值,确定为手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度小于所述第一阈值,将手臂在至少一个方向的摆动幅度均确定为0。
在本公开一个可能的实施例中,所述摆臂幅度模块用于根据机器人的运动速度和后向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度时,用于下述至少一项:
响应于机器人的运动速度不小于第三阈值,且不大于第四阈值,根据所述机器人的运动速度、所述第三阈值、所述第四阈值、以及后向运动下至少一个方向上的幅度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度小于所述第三阈值,将后向运动下至少一个方向上的幅度阈值对应确定为手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度大于所述第四阈值,确定每个手臂状态下的摆动幅度均为0。
在本公开一个可能的实施例中,所述规划模块用于:
根据所述步态周期的手臂摆动方向,以及手臂在至少一个方向上的摆动幅度,确定所述步态周期内手臂摆动的起点和终点的摆动幅度;
根据所述步态周期内手臂摆动的起点和终点的摆动幅度,确定所述步态周期内至少一个时刻的摆动幅度;
根据所述第一步态规划,以及所述步态周期内手臂摆动的起点、终点和至少一个时刻的摆动幅度,确定所述第二步态规划。
在本公开一个可能的实施例中,所述规划模块用于根据所述步态周期内手臂摆动的起点和终点的摆动幅度,确定所述步态周期内至少一个时刻的摆动幅度时,用于:
根据所述步态周期内手臂摆动的起点和终点的摆动幅度、所述步态周期内至少一个时刻在所述步态周期内的进度比例,确定所述至少一个时刻的摆动幅度。
在本公开一个可能的实施例中,所述摆动幅度以手臂上至少一个关节的参数来表征;和/或,
所述手臂在至少一个方向的摆动幅度包括:手臂在前向上的摆动幅度和手臂在后向上的摆动幅度。
在本公开一个可能的实施例中,所述第二步态规划包括多个步态周期的足端状态和手臂轨迹,其中,所述步态周期的手臂轨迹包括多个时刻的摆动幅度,所述多个时刻至少包括所述步态周期的起点时刻和终点时刻。
第三方面,本公开至少一个实施例提供了一种机器人,请参照附图7,其示出了该机器人的结构,所述机器人包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时基于第一方面任一项所述的方法对机器人进行控制。
第四方面,本公开至少一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现第一方面任一项所述的方法。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (12)
1.一种机器人控制方法,其特征在于,所述方法包括:
根据第一步态规划中步态周期的足端状态,确定所述步态周期的手臂摆动方向,其中,所述足端状态包括支撑或摆动;
根据所述第一步态规划、所述步态周期的手臂摆动方向、以及手臂的摆动幅度,确定第二步态规划;
根据所述第二步态规划,控制所述机器人进行运动。
2.根据权利要求1所述的机器人控制方法,其特征在于,所述方法还包括:
根据机器人的运动方向和/或运动速度,确定手臂在至少一个方向的摆动幅度。
3.根据权利要求2所述的机器人控制方法,其特征在于,所述根据机器人的运动方向和/或运动速度,确定手臂在至少一个方向的摆动幅度,包括:
响应于机器人的运动方向为前向运动,根据机器人的运动速度和前向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动方向为后向运动,根据机器人的运动速度和后向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度。
4.根据权利要求3所述的机器人控制方法,其特征在于,所述根据机器人的运动速度和前向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度,包括下述至少一项:
响应于机器人的运动速度不小于第一阈值,且不大于第二阈值,根据所述机器人的运动速度、所述第一阈值、所述第二阈值、以及前向运动下至少一个方向上的幅度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度大于所述第二阈值,将前向运动下至少一个方向上的幅度阈值,确定为手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度小于所述第一阈值,将手臂在至少一个方向的摆动幅度均确定为0。
5.根据权利要求3所述的机器人控制方法,其特征在于,所述根据机器人的运动速度和后向运动下的至少一个速度阈值,确定手臂在至少一个方向的摆动幅度,包括下述至少一项:
响应于机器人的运动速度不小于第三阈值,且不大于第四阈值,根据所述机器人的运动速度、所述第三阈值、所述第四阈值、以及后向运动下至少一个方向上的幅度阈值,确定手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度小于所述第三阈值,将后向运动下至少一个方向上的幅度阈值对应确定为手臂在至少一个方向的摆动幅度;
响应于机器人的运动速度大于所述第四阈值,确定每个手臂状态下的摆动幅度均为0。
6.根据权利要求1所述的机器人控制方法,其特征在于,所述根据所述第一步态规划、所述步态周期的手臂摆动方向,以及手臂的摆动幅度,确定第二步态规划,包括:
根据所述步态周期的手臂摆动方向,以及手臂在至少一个方向上的摆动幅度,确定所述步态周期内手臂摆动的起点和终点的摆动幅度;
根据所述步态周期内手臂摆动的起点和终点的摆动幅度,确定所述步态周期内至少一个时刻的摆动幅度;
根据所述第一步态规划,以及所述步态周期内手臂摆动的起点、终点和至少一个时刻的摆动幅度,确定所述第二步态规划。
7.根据权利要求6所述的机器人控制方法,其特征在于,所述根据所述步态周期内手臂摆动的起点和终点的摆动幅度,确定所述步态周期内至少一个时刻的摆动幅度,包括:
根据所述步态周期内手臂摆动的起点和终点的摆动幅度、所述步态周期内至少一个时刻在所述步态周期内的进度比例,确定所述至少一个时刻的摆动幅度。
8.根据权利要求2至7中任一项所述的机器人控制方法,其特征在于,所述摆动幅度以手臂上至少一个关节的参数来表征;和/或,
所述手臂在至少一个方向的摆动幅度包括:手臂在前向上的摆动幅度和手臂在后向上的摆动幅度。
9.根据权利要求1所述的机器人控制方法,其特征在于,所述第二步态规划包括多个步态周期的足端状态和手臂轨迹,其中,所述步态周期的手臂轨迹包括多个时刻的摆动幅度,所述多个时刻至少包括所述步态周期的起点时刻和终点时刻。
10.一种机器人控制装置,其特征在于,所述装置包括:
摆臂方向模块,用于根据第一步态规划中步态周期的足端状态,确定所述步态周期的手臂摆动方向,其中,所述足端状态包括支撑或摆动;
规划模块,用于根据所述第一步态规划、所述步态周期的手臂摆动方向、以及手臂的摆动幅度,确定第二步态规划;
控制模块,用于根据所述第二步态规划,控制所述机器人进行运动。
11.一种机器人,其特征在于,所述机器人包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现权利要求1至9中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311484830.1A CN117207203B (zh) | 2023-11-08 | 2023-11-08 | 机器人控制方法、装置、机器人及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311484830.1A CN117207203B (zh) | 2023-11-08 | 2023-11-08 | 机器人控制方法、装置、机器人及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117207203A true CN117207203A (zh) | 2023-12-12 |
CN117207203B CN117207203B (zh) | 2024-02-23 |
Family
ID=89046662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311484830.1A Active CN117207203B (zh) | 2023-11-08 | 2023-11-08 | 机器人控制方法、装置、机器人及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117207203B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07205069A (ja) * | 1993-12-30 | 1995-08-08 | Honda Motor Co Ltd | 脚式移動ロボットの歩行制御装置 |
CN101068663A (zh) * | 2004-12-14 | 2007-11-07 | 本田技研工业株式会社 | 腿式移动机器人及其控制程序 |
US20110264264A1 (en) * | 2010-04-22 | 2011-10-27 | Honda Motor Co., Ltd. | Control device and gait generating device for bipedal mobile robot |
CN105965506A (zh) * | 2016-05-16 | 2016-09-28 | 北京格分维科技有限公司 | 一种基于遗传算法的人形双足机器人步行姿态控制方法 |
US20200215697A1 (en) * | 2019-12-24 | 2020-07-09 | Junyi Zhang | Electronic guide dog |
CN112388607A (zh) * | 2019-08-12 | 2021-02-23 | 张井泉 | 智能机器人 |
CN112697149A (zh) * | 2020-12-10 | 2021-04-23 | 华南理工大学 | 一种六足机器人节律步态足端轨迹的规划方法 |
US20210237265A1 (en) * | 2019-11-26 | 2021-08-05 | Zhejiang University | Method for realizing dynamic running gait of biped robot on rough terrain road |
WO2022027914A1 (zh) * | 2020-08-07 | 2022-02-10 | 深圳市优必选科技股份有限公司 | 仿人机器人步态规划方法、装置和仿人机器人 |
US20230064815A1 (en) * | 2021-09-02 | 2023-03-02 | Ubtech Robotics Corp Ltd | Gait control method, biped robot, and computer-readable storage medium |
US20230202027A1 (en) * | 2021-03-22 | 2023-06-29 | Ubtech Robotics Corp Ltd | Walking control method, biped robot and computer-readable storage medium |
-
2023
- 2023-11-08 CN CN202311484830.1A patent/CN117207203B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07205069A (ja) * | 1993-12-30 | 1995-08-08 | Honda Motor Co Ltd | 脚式移動ロボットの歩行制御装置 |
CN101068663A (zh) * | 2004-12-14 | 2007-11-07 | 本田技研工业株式会社 | 腿式移动机器人及其控制程序 |
US20110264264A1 (en) * | 2010-04-22 | 2011-10-27 | Honda Motor Co., Ltd. | Control device and gait generating device for bipedal mobile robot |
CN105965506A (zh) * | 2016-05-16 | 2016-09-28 | 北京格分维科技有限公司 | 一种基于遗传算法的人形双足机器人步行姿态控制方法 |
CN112388607A (zh) * | 2019-08-12 | 2021-02-23 | 张井泉 | 智能机器人 |
US20210237265A1 (en) * | 2019-11-26 | 2021-08-05 | Zhejiang University | Method for realizing dynamic running gait of biped robot on rough terrain road |
US20200215697A1 (en) * | 2019-12-24 | 2020-07-09 | Junyi Zhang | Electronic guide dog |
WO2022027914A1 (zh) * | 2020-08-07 | 2022-02-10 | 深圳市优必选科技股份有限公司 | 仿人机器人步态规划方法、装置和仿人机器人 |
CN112697149A (zh) * | 2020-12-10 | 2021-04-23 | 华南理工大学 | 一种六足机器人节律步态足端轨迹的规划方法 |
US20230202027A1 (en) * | 2021-03-22 | 2023-06-29 | Ubtech Robotics Corp Ltd | Walking control method, biped robot and computer-readable storage medium |
US20230064815A1 (en) * | 2021-09-02 | 2023-03-02 | Ubtech Robotics Corp Ltd | Gait control method, biped robot, and computer-readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN117207203B (zh) | 2024-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110315543B (zh) | 一种双足机器人步态生成与优化方法 | |
Gehring et al. | Control of dynamic gaits for a quadrupedal robot | |
CN109871018B (zh) | 一种具有腰部自由度四足机器人的控制方法 | |
KR100824179B1 (ko) | 보행식 이동 로봇의 동작 제어 장치 및 동작 제어 방법,및 보행식 이동 로봇을 위한 동작 유닛 생성 방법 | |
CN108572553B (zh) | 一种四足机器人的运动闭环控制方法 | |
JP7174705B2 (ja) | 外骨格を動かすための方法 | |
CN111208826A (zh) | 四足机器人溜蹄步态规划方法、装置、设备及可读介质 | |
KR20010051881A (ko) | 보행 로봇 및 보행 로봇의 동작 제어 방법 | |
JP2007210071A (ja) | ロボット装置及びその制御方法 | |
JP2006289602A (ja) | ロボット装置及びその制御方法 | |
CN109760761A (zh) | 一种基于生物仿生原理和直觉的四足机器人运动控制方法 | |
CN112405504B (zh) | 外骨骼机器人 | |
Domingues et al. | Humanoid behaviors: from simulation to a real robot | |
JP2001138271A (ja) | 脚式移動ロボット及び脚式移動ロボットの転倒時動作制御方法 | |
CN104656440A (zh) | 仿人机器人步态生成方法 | |
CN117207203B (zh) | 机器人控制方法、装置、机器人及存储介质 | |
Lim et al. | Control design to achieve dynamic walking on a bipedal robot with compliance | |
JP4587699B2 (ja) | ロボット装置及びその制御方法 | |
Hengst | runswift walk2014 report robocup standard platform league | |
JP2002210681A (ja) | 脚式移動ロボットのための動作制御装置及び動作制御方法、並びにロボット装置 | |
Lu et al. | A novel multi-configuration quadruped robot with redundant DOFs and its application scenario analysis | |
Huang et al. | Movement stability criterion and its application to gait planning of a quadruped robot | |
Aoi et al. | Generation of adaptive splitbelt treadmill walking by a biped robot using nonlinear oscillators with phase resetting | |
JP4539291B2 (ja) | ロボット装置及びその動作制御方法 | |
JP4506249B2 (ja) | ロボット装置及びその動作比較方法 |
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 |