CN115709471B - 机器人状态值调整方法及机器人 - Google Patents
机器人状态值调整方法及机器人 Download PDFInfo
- Publication number
- CN115709471B CN115709471B CN202310036442.0A CN202310036442A CN115709471B CN 115709471 B CN115709471 B CN 115709471B CN 202310036442 A CN202310036442 A CN 202310036442A CN 115709471 B CN115709471 B CN 115709471B
- Authority
- CN
- China
- Prior art keywords
- robot
- value
- state value
- weight parameter
- current
- 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.)
- Active
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
本申请公开一种机器人状态值调整方法及机器人,涉及机器人技术领域,机器人状态值调整方法包括:获取机器人的期望状态值和当前状态值;判断所述当前状态值和所述期望状态值之间的差值是否大于等于阈值;若大于等于所述阈值,则通过调整机器人的足端力来调整所述当前状态值,以使所述当前状态值和所述期望状态值之间的差值小于所述阈值。可以使机器人自动调整当前状态值,使当前状态值适配机器人。
Description
技术领域
本申请涉及机器人技术领域,更具体而言,涉及一种机器人状态值调整方法及机器人。
背景技术
在组装机器人之前,研发人员会为该机器人设定机器人状态值,通过该状态值使机器人达到期望的状态。实际上,研发人员预先设定的状态值往往不能适配组装完成后的机器人,因此,需重新适配新的机器人状态值,以使机器人可以较稳定地运动。研发人员重新适配新的机器人状态值的过程中,机器人状态值较多且大多相互耦合、调整机器人状态值的过程困难以及需耗费较长时间。
发明内容
鉴于以上内容,本申请实施例提供一种机器人状态值调整方法及机器人,能够使组装完成后的机器人自动完成机器人状态值的调整,得到适配机器人的机器人状态值。
本申请第一方面提供一种机器人状态值调整方法,所述调整方法包括:获取机器人的期望状态值和当前状态值;判断所述当前状态值和所述期望状态值之间的差值是否大于等于阈值;若大于等于所述阈值,则通过调整机器人的足端力来调整所述当前状态值,以使所述当前状态值和所述期望状态值之间的差值小于所述阈值。
如此,机器人通过获取机器人的期望状态值和当前状态值,判断当前状态值和期望状态值之间的差值是否大于等于阈值,如果大于等于阈值,就通过调整足端力来调整机器人的当前状态值,直到当前状态值与期望状态值的差值小于阈值,也即是直到机器人的当前状态趋近于预期状态。可以使机器人自动调整当前状态值,使当前状态值适配机器人。
作为第一方面的一些实施例,所述调整机器人的足端力包括:通过调整与状态值对应的权重参数,来调整所述足端力。
如此,机器人可以通过调整与状态值对应的权重参数,来调整足端力,根据该足端力调整机器人当前状态,使当前状态值适配机器人,自动调整预测控制器的权重参数,省去了研发人员调节十二维的权重参数矩阵,节约了研发人员调整当前状态值的时间,提高调试效率。
作为第一方面的一些实施例,所述状态值包括以下至少一种:
机器人机身姿态角、机器人机身在世界坐标系下的位置、机器人机身角速度和机器人机身在世界坐标系下的线速度;
所述控制器的权重参数包括机器人机身姿态角权重参数、机器人机身在世界坐标系下的位置权重参数、机器人机身角速度权重参数和机器人机身在世界坐标系下的线速度权重参数。
作为第一方面的一些实施例,所述权重参数的调整频率为小于控制频率。
如此,机器人将所述权重参数的调整频率设置为小于控制频率,防止已调好的参数会被调成错误的参数,使机器人的当前状态趋于稳定。
作为第一方面的一些实施例,若所述当前状态值和所述期望状态值之间的差值小于所述阈值,所述调整与所述状态值对应的权重参数包括:
将与所述状态值对应的上一权重调整周期的第一权重参数的值,作为当前权重调整周期的第二权重参数的值。
如此,机器人将状态值对应的当前权重调整周期的第二权重参数的值等于上一权重调整周期的第一权重参数的值,可以获得一组能够适配机器人的权重参数的值。
本申请第二方面提供一种机器人,包括:
机身;
至少两条腿,连接到所述机身,所述至少两条腿包括摆动腿;以及与所述至少两条腿通信的控制系统,所述控制系统包括数据处理器和与所述数据处理器通信的存储器,所述存储器存储指令,当在所述数据处理器上执行时,所述指令使得所述数据处理器执行操作,包括:获取机器人的期望状态值和当前状态值;判断所述当前状态值和所述期望状态值之间的差值是否大于等于阈值;若大于等于所述阈值,则通过调整机器人的足端力来调整所述当前状态值,以使所述当前状态值和所述期望状态值之间的差值小于所述阈值。
如此,机器人包括机身和多条支撑其运动的腿,腿与机身连接,多条腿中包括至少两条以上的摆动腿,还包括与腿通信连接的控制系统,控制系统包括数据处理器,和与数据处理器通信的存储器,存储器存储指令,当在数据处理器上执行时,指令使得数据处理器执行操作,操作包括获取机器人的期望状态值和当前状态值,判断当前状态值和期望状态值之间的差值是否大于等于阈值,如果大于等于阈值,就通过调整足端力来调整机器人的当前状态值,直到当前状态值与期望状态值的差值小于阈值,也即是直到机器人的当前状态趋近于预期状态。可以使机器人自动调整当前状态值,使当前状态值适配机器人。
作为第二方面的一些实施例,所述操作还包括:通过调整与状态值对应的权重参数,来调整所述足端力。
如此,操作还包括调整与状态值对应的权重参数,来调整足端力。通过权重参数调整足端力,根据该足端力调整机器人当前状态,使当前状态值适配机器人,自动调整预测控制器的权重参数,省去了研发人员调节十二维的权重参数矩阵,节约了研发人员调整当前状态值的时间,提高调试效率。
作为第二方面的一些实施例,所述状态值包括以下至少一种:
机器人机身姿态角、机器人机身在世界坐标系下的位置、机器人机身角速度和机器人机身在世界坐标系下的线速度;
所述预测控制器的权重参数包括以下至少一种:
机器人机身姿态角权重参数、机器人机身在世界坐标系下的位置权重参数、机器人机身角速度权重参数和机器人机身在世界坐标系下的线速度权重参数。
作为第二方面的一些实施例,所述权重参数的调整频率小于控制频率。
如此,将所述权重参数的调整频率设置为小于控制频率,防止已调好的参数会被调成错误的参数,使机器人的当前状态趋于稳定。
作为第二方面的一些实施例,若所述当前状态值和所述期望状态值之间的差值小于所述阈值,所述操作还包括:将与所述状态值对应的上一权重调整周期的第一权重参数的值,作为当前权重调整周期的第二权重参数的值。
如此,将状态值对应的当前权重调整周期的第二权重参数的值等于上一权重调整周期的第一权重参数的值,可以获得一组能够适配机器人的权重参数的值。
本申请提供的技术方案带来的有益效果至少包括:机器人通过获取机器人的期望状态值和当前状态值,判断当前状态值和期望状态值之间的差值是否大于等于阈值,如果大于等于阈值,就通过调整足端力来调整机器人的当前状态值,直到当前状态值与期望状态值的差值小于阈值,也即是直到机器人的当前状态趋近于预期状态。可以使机器人自动调整当前状态值,使当前状态值适配机器人。
附图说明
图1是本申请实施例的机器人状态值调整方法的流程示意图;
图2是本申请实施例的机器人状态值调整方法的一结构示意图;
图3是本申请实施例的机器人状态值调整方法的另一场景示意图;
图4是本申请实施例的机器人状态值调整方法的另一场景示意图
图5是本申请实施例的机器人状态值调整方法的一逻辑框架示意图;
图6是本申请实施例的机器人状态值调整方法的流程示意图;
图7是本申请实施例的机器人的另一结构示意图;
图8是本申请实施例的多足机器人的结构示意图;
图9是本申请实施例的多足机器人的外观示意图。
具体实施方式
在组装机器人之前,研发人员会为该机器人设定机器人状态值,通过该机器人状态值控制使机器人达到期望的状态。由于机器人组装完成之后,机器人的结构尺寸、重量和驱动模块、负重增加、都发生了变化,因此,组装机器人之前的机器人状态值不再适用组装完成后的机器人,需要研发人员重新适配新的机器人状态值。重新适配新的机器人状态值的过程中,机器人状态值较多且大多相互耦合、调整机器人状态值的过程困难以及需耗费较长时间。
为此,本申请实施例提供一种机器人状态值调整方法及机器人,能够使组装完成后的机器人自动完成机器人状态值的调整,得到适配机器人的机器人状态值。
本申请实施例的机器人包括机身和多条支撑其运动的腿,腿与机身连接,多条腿中包括至少两条以上的摆动腿,腿接触其他物体的接触端可以为输出驱动力的部位。例如,机器人可以为双足机器人,双足机器人包括两条腿,每条腿接触地面的接触端为足端,足端受到三维的足端力,所以一个双足机器人一共有2个三维的足端力。机器人还可以为四足机器人,本申请实施例以四足机器人为例进行阐述,四足机器人包括四条腿,每条腿接触地面的接触端为足端,足端受到三维的足端力,所以一个四足机器人一共有4个三维的足端力。
请参阅图1,图1为本申请实施例的机器人状态值调整方法的流程示意图,本申请实施例的机器人状态值调整方法可以包括:
步骤S101:获取机器人的期望状态值和当前状态值。
四足机器人的期望状态值可以由研发人员事先设定,并将期望状态值储存在四足机器人的存储器中,或者存储在云服务器,当需要使用该期望状态值时,获取该期望状态值。期望状态值可以包括机器人机身期望角速度值(下文简称机身期望角速度值)、机器人机身在世界坐标系下的期望线速度值(下文简称机身期望线速度值)、机器人机身期望加速度值(下文简称机身期望加速度值)、机器人机身在世界坐标系下的期望位置值(下文简称机身期望位置值)和机器人机身期望姿态角值(下文简称机身期望姿态角值)等。
请参阅图2,四足机器人300可以包括机器人机身、设置于机器人的机身内的传感器101、处理器102和惯性测量单元(Inertial Measurement Unit,IMU)103。传感器101及惯性测量单元103用于向处理器102反馈机器人本体的当前状态值,例如,传感器101设置于机器人关节位置处,传感器101检测到四足机器人300的关节的转动位置和角速度后,将该关节的转动位置值和角速度值发送给处理器102。惯性测量单元103用于向处理器102反馈机器人躯体的姿态和速度。处理器102接收当前状态值后,可以根据当前状态值控制四足机器人300运动。也即是说,四足机器人300可以通过传感器101、惯性测量单元103等器件获取四足机器人300当前状态值,当前状态值可以包括当前机器人机身角速度值(下文简称机身当前角速度值)、机器人机身在世界坐标系下的当前线速度值(下文简称机身当前线速度值)、机器人机身当前加速度值(下文简称机身当前加速度值)、机器人机身在世界坐标系下的当前位置值(下文简称机身当前位置值)和机器人机身当前姿态角值(下文简称机身当前姿态角值)等等。
步骤S102:判断当前状态值和期望状态值之间的差值是否大于等于阈值;
阈值可以为开发人员进行预先设定。
步骤S103:若大于等于所述阈值,则通过调整机器人的足端力来调整当前状态值,以使当前状态值和期望状态值之间的差值小于阈值。
四足机器人300的足端输出的足端力是三维的,足端力改变后,会促使四足机器人300改变状态值。例如,如图3所示,足端可以输出一个沿第一方向(例如图1中的Z轴方向)的足端力,使四足机器人300沿第一方向移动、足端可以输出一个沿第二方向(例如图1中的Y轴方向)的足端力,使四足机器人300沿第二方向移动,以及足端可以输出一个沿第三方向(例如图1中的X轴方向)的足端力,使四足机器人300沿第三方向移动。同时足端力的大小会影响四足机器人300的速度和加速度,例如,足端输出的足端力改变后,则四足机器人300的机身的速度和加速度都会相应改变。也即是说改变足端力的大小、方向等,会相应改变四足机器人300的当前状态值。
可以理解地,四足机器人300通过获取四足机器人300的期望状态值和当前状态值,判断当前状态值和期望状态值之间的差值是否大于等于阈值,如果大于等于阈值,就通过调整足端力来调整四足机器人300的当前状态值,直到当前状态值与期望状态值的差值小于阈值,也即是直到四足机器人300的当前状态值趋近于预期状态值。通过本申请实施例的机器人状态值调整方法,可以使四足机器人300自动调整当前状态值,使当前状态值适配四足机器人300。
在一个示例中,事先设定机身期望线速度值为1m/s,机身当前线速度值与机身期望线速度值之间的差值的阈值为0.1m/s。由于组装后的四足机器人300的结构尺寸、驱动模块和/或重量产生了变化,使得四足机器人300的机身当前线速度值仅为0.7 m/s。具体地,四足机器人300响应于调整机器人状态值的指令,获取X轴方向的机身期望线速度值,机身期望线速度值为1m/s。同时,四足机器人300通过惯性测量单元103获取机身当前线速度值,机身当前线速度值为0.7 m/s。接着,四足机器人300判断机身期望线速度值为1m/s与机身当前线速度值0.7 m/s之间的差值为0.3m/s,大于阈值0.1 m/s,此时的四足机器人300按照机身当前线速度值0.7m/s运动后,四足机器人300的机身跟不上机身期望线速度值为1m/s,四足机器人300的机身起伏较大,状态不稳定。四足机器人300便调整足端力的大小,通过新的足端力驱动机器人,使机身当前线速度值调整至0.95 m/s,于是,机身当前线速度值与机身期望线速度值之间的差值小于阈值0.1m/s。至此,四足机器人300完成了四足机器人状态值的调整,四足机器人300根据0.95 m/s的机身当前线速度值进行运动,状态稳定。
可以理解地,由于四足机器人300的结构尺寸、驱动模块和/或重量产生了变化,未组装之前设定的状态值,或者先在其他机器人训练过的状态值,不能直接适用在四足机器人300上。具体地,未组装之前设定的状态值不能直接适用在四足机器人300上的原因包括,四足机器人300组装后的机械间隙会导致动力传递效率变差,如当四足机器人300的电机转了一圈时,四足机器人300的关节只转了0.99圈,与原本电机转了一圈时,四足机器人300的关节同样转一圈的设定有差距。又例如,组装后四足机器人300的减速器也具有间隙,会使四足机器人300的当前速度值与预设速度值有误差,又例如,组装后的四足机器人300的关节具有摩擦力,关节摩擦力同样会导致设定关节状态值与预设关节状态值有误差,又例如四足机器人300组装完成后,会产生机器老旧和损坏的情况,会导致当前状值与预设状态值有误差。同时,每个组装后的四足机器人300之间具有细微的差别,包括机械间隙不一致、减速器间隙不一致、关节摩擦力不一样、电机执行率不一样等,如果将一个四足机器人300的状态值直接应用到另一个四足机器人300上,会导致另一个四足机器人300无法根据该状态值进行稳定的运动。例如,A四足机器人的机械间隙小于B四足机器人,因此,A四足机器人的动力传递效率优于B四足机器人,将A四足机器人的状态值直接应用在B四足机器人时,B四足机器人根据该状态值得到的足端力不足以支撑其稳定地运动。因此,四足机器人300组装完成之前预设的状态值,不再适配完成组装后的四足机器人300,本申请实施例的机器人状态值调整方法可以使四足机器人300自动调整状态值,使得自动调整后的当前状态值适配结构尺寸和/或重量产生了变化的四足机器人300。
在上一个示例之后,四足机器人300根据0.95 m/s的机身当前线速度值进行运动,状态稳定,在四足机器人300负载物品之后,四足机器人300的机身当前线速度值变成0.5m/s,四足机器人300状态又变得不稳定,机身起伏较大。此时,四足机器人获取X轴方向的机身期望线速度值,机身期望线速度值为1m/s。同时,四足机器人300通过惯性测量单元103获取机身当前线速度值,机身当前线速度值为0.5 m/s。接着,四足机器人300判断机身期望线速度值为1m/s与机身当前线速度值0.5m/s之间的差值为0.5m/s,大于阈值0.1 m/s,四足机器人300继续调整足底足端力的大小,得到一个新的足端力,通过新的足端力驱动机器人,使机身当前线速度值调整值至0.95 m/s,于是,机身当前线速度值与机身期望线速度值之间的差值小于阈值为0.1m/s。至此,四足机器人300完成了四足机器人状态值的调整,四足机器人300根据0.95 m/s的机身当前线速度值进行运动,状态稳定。
可以理解地,四足机器人300是否负重,会影响四足机器人300的当前状态值,本申请实施例的机器人状态值调整方法可以使负重的四足机器人300或非负重的四足机器人300,都可以自动调整自身的状态值,使得当前状态值适配负重的四足机器人300或非负重的四足机器人300。
在一个示例中,四足机器人300在平地上,机身以3rad/s的角速度值进行运动,状态稳定。当四足机器人300从平地移动到坡面后,机身继续以3rad/s的角速度值运动,机身状态开始不稳定,此时,四足机器人300响应于调整机器人状态值的指令,获取坡面的机身期望角速度值为5rad/s,阈值为0.5rad/s,同时,四足机器人300通过惯性测量单元获取机身当前角速度值为3rad/s,接着,四足机器人300判断机身期望角速度值为5rad/s与机身当前角速度值为3rad/s之间的差值为2rad/s,大于阈值0.5rad/s,四足机器人300便调整足底足端力的大小,得到一个新的足端力,通过足端输出该新的足端力,使当前角速度值调整至4.8rad/s,于是,坡面的机身期望角速度值与机身当前角速度值的差值小于0.5rad/s的阈值。至此,四足机器人300完成了四足机器人状态值的调整,四足机器人300根据4.8rad/s的角速度值往坡面行进,状态稳定。
可以理解地,四足机器人300在运动的时候,会遇到不同的环境,例如从平地移动到坡面,在不同的环境下,对四足机器人300的状态值的要求也不一样。本申请实施例的机器人状态值调整方法可以使四足机器人300在不同的环境下,都能自动调整自身的状态值,使自身的当前状态值适配不同的环境。
在一些实施例中,调整机器人的足端力的具体方法可以包括:通过调整与状态值对应的权重参数,来调整足端力。
模型预测控制器(Model Predictive Control,MPC)可用于控制四足机器人300运动,四足机器人300可以通过模型预测控制器调整足端输出的足端力大小和方向等,本申请后续将模型预测控制器简称为预测控制器。
通过使四足机器人300的期望状态值和当前状态值之间的差值处于一个较小的区间范围,从而求解出满足该规划的一个适宜足端力,可以将预测控制器简化成一个如下所示的二次规划方程:
其中,F表示四足机器人300的足端力,X表示四足机器人300的当前状态值,Xref表示四足机器人300的期望状态值,Q表示为权重参数。
请参阅图4,当前状态值X、期望状态值Xref和权重参数Q都可以表示为一个12行1列的矩阵,其中,第1行至第3行与四足机器人300当前机身姿态角相关、第4行至第6行与四足机器人300当前机身在世界坐标系下的位置关系相关、第7行至第9行与四足机器人300机身当前角速度相关,以及第10行至第12行与四足机器人300当前机身在世界坐标系下的线速度相关。因此,可以通过调整权重参数Q的值,来调整四足机器人300足端力的大小。调整预测控制器的权重参数包括增大或减小预测控制器的权重参数的值,其中,四足机器人300可以根据要调整的具体的当前状态值,调整对应的权重参数,例如,调整预测控制器1行至3行的四足机器人300当前机身角速度权重参数,可以调整机身当前角速度值、调整预测控制器4行至6行的四足机器人300当前机身姿态角权重参数,可以调整机身当前姿态速度值、调整预测控制器7行至9行的四足机器人300当前机身在世界坐标系下的位置关系权重参数,可以调整机身当前位置值、以及调整预测控制器10行至12行的四足机器人300当前机身在世界坐标系下的线速度权重参数,可以调整机身当前线速度值。
可以理解地,当四足机器人300的某一种类的当前状态值与期望状态值之间的差值较大,说明预测控制器对四足机器人300该种当前状态值的控制不够合理,因此,可以通过调整该种状态值的对应权重参数,以调整足端力,通过足端力调整四足机器人300该种当前状态值趋近于期望状态值,降低当前状态值跟随期望状态值的误差。
权重参数的初始值可以通过强化学习得到,具体地,在仿真器中输入机器人的运动学和动力学模型,基于控制算法将运动学和动力学模型初始化出一组控制值,根据该组控制值设定仿真四足机器人300的运动任务,并在仿真四足机器人300执行运动任务的过程中,根据仿真机器人的当前状态值设定对应奖励值,以及奖励值饱和时的目标值。当仿真机器人执行运动任务时,根据奖励值的高低对控制值进行更新,直到奖励值符合目标值时停止更新,至此,可以训练出一组权重参数的初始值,该组权重参数的初始值能够使仿真机器人的当前状态值趋于稳定。其中,仿真器可以使用PyBullet。
在一个示例中,设定仿真机器人的当前状态值与期望状态值的差值越接近阈值,得到奖励值越高,当差值小于或等于阈值时,奖励值饱和,也即是当差值小于或等于阈值时,得到的奖励值为目标值。根据初始化的控制值控制仿真机器人处于第一状态,计算当前状态值与期望状态值的差值,得到对应的奖励值,当奖励值不饱和时,更新控制值,使仿真机器人处于第二状态,再次计算差值,根据差值得到对应的奖励值,直到奖励值为目标值时,得到权重参数的初始值。
四足机器人300在获取权重参数的初始值后,可以通过下列公式继续调整预测控制器的权重参数:
其中,Q表示当前权重调整周期的权重参数,Q0表示为上一权重调整周期的权重参数(Q0的值包括权重参数的初始值),E表示为当前状态值X和期望状态值Xref之间的差值,k表示为当前状态值X和期望状态值Xref的误差权重,k值可以为1或0。该公式表示若当前状态值X和期望状态值Xref之间的差值大于等于阈值时,k值置为1,此时,需要继续迭代该公式,直到当前状态值X和期望状态值Xref之间的差值小于阈值时,k值置为0(也即是),此时,当前权重调整周期的第一权重参数Q的值等于上一权重调整周期的第二权重参数Q0的值,第二权重参数Q0的值能够使当前状态值适配四足机器人300。也即是说,此时,四足机器人300可以将预测控制器的上一权重调整周期的第一权重参数的值,作为当前权重调整周期的第二权重参数的值,二权重参数的值能够使当前状态值适配四足机器人300。
可以理解地,四足机器人300通过获取期望状态值和当前状态值,判断当前状态值和期望状态值之间的差值是否大于等于阈值,如果大于等于阈值,就通过调整四足机器人300的预测控制器的权重参数,从而确定四足机器人300的足端力,通过该足底力来调整四足机器人300的当前状态值,直到当前状态值与期望状态值的差值小于阈值,也即是直到四足机器人300的当前状态值符合预期效果。通过本申请实施例的机器人状态值调整方法,四足机器人300可以通过调整预测控制器的权重参数,从而确定足端力,根据该足端力调整四足机器人300当前状态值,使当前状态值适配四足机器人300,自动调整预测控制器的权重参数,省去了研发人员调节十二维的权重参数矩阵,节约了研发人员调整当前状态值的时间,提高调试效率。
在一个示例中,事先设定机身期望姿态角为前倾12°,机身当前姿态角与机身期望姿态角之间的差值的阈值为5°。四足机器人300响应于调整机器人状态值的指令,获取机身当前姿态角与机身期望姿态角,机身当前姿态角为前倾60°,判断机身当前姿态角为前倾60°与机身期望姿态角为前倾12°之间的差值为48°,大于阈值5°,此时,四足机器人300将预测控制器中,对应机身姿态角的权重参数的值,也即将图4中Q的2行的值进行调整,以调整对当前机身姿态角的控制,将调整后的权重参数的值代入预测控制器中进行迭代,直到机身当前姿态角与机身期望姿态角之间的差值小于阈值5°,得到合适的权重参数的值,预测控制器根据该合适的权重参数的值输出新的足端力,该新的足端力将四足机器人300的机身当前姿态角调整至前倾10°,从而降低四足机器人300的当前机身姿态角跟随期望机身姿态角的误差。
可以理解地,机器人机身当前姿态角跟机身期望姿态角差值较大,说明控制器对机器人机身姿态角的控制误差过大,此时需要将的对应姿态角的权重参数Q的1~3行的权重值进行调整,以调整对机器人机身姿态角的控制,此时预测控制器根据调整后的权重值调整足底力大小及方向,来使当前四足机器人300姿态角状态趋近于期望值,从而达到降低机身当前姿态角度跟随机身期望姿态角的误差的效果。
在一些实施例中,权重参数的调整频率小于控制频率。
由于调整出新的权重参数后,四足机器人300的预测控制器需一定的时间使用该权重参数的值来控制四足机器人300的状态趋于稳态,在四足机器人300机身的状态值趋于稳态之后,再判断四足机器人300机身当前状态值和期望状态值之间的差值是否大于阈值,如果还是大于阈值,则继续调整新的权重参数,直到四足机器人300机身当前状态值和期望状态值之间的差值小于阈值;如果在四足机器人300机身的状态值还未趋于稳态之前就再次判断四足机器人300机身当前状态值和期望状态值之间的差值是否大于阈值,就会导致权重参数调整出现问题,本来已调好的参数会被调成错误的参数。
所以,可以设置权重参数的调整频率小于预测控制器的控制频率,例如,将权重参数的调整频率设置为1hz,表示1s包括1个调整周期,也即是1s调整一次权重参数。将四足机器人300的控制频率设置为500hz,表示1s包括500个控制周期,也即是1s迭代500次预测控制器。
在一个示例中,预先设定的四足机器人300的期望倾斜度为0度,当前倾斜度与期望倾斜度之间的差值的阈值为1°,预测控制的控制频率设置为500hz,权重参数的调整频率设置为1hz。四足机器人300获取当前倾斜度为10度,判断与期望倾斜度0度大于差值的阈值1°,便调整倾斜度对应的权重参数,调整出权重参数的第一值,由于权重参数的调整频率低于控制频率,因此,当得到权重参数的第一值,将第一值代入控制器后,控制器能够在一段时间内将四足机器人300调整到该第一值的对应第一状态值,并使该第一状态值稳定下来。因此,该第一值在不变的情况下,四足机器人300可以根据该第一值迭代控制器后,持续输出足端力,该足端力使得四足机器人300机身波动一阵后,稳定到倾斜度为5°。当前倾斜度为5°与期望倾斜度0度仍大于差值的阈值1°,于是,四足机器人300继续调整权重参数的值,得到权重参数的第二值,四足机器人300根据该第二值迭代控制器,持续输出足端力,该持续输出的足端力使得当前倾斜度稳定在1°以内,与期望倾斜度0度小于差值的阈值1°,以完成此阶段的四足机器人300当前倾斜度的自动调整。需要注意地,如果调整频率高于控制频率,则会出现权重参数的第一值代入控制器后,控制器还来不及调整到对应第一状态值时,控制器又需进入根据权重参数的第二值去调整到对应第二状态值的过程中,从而四足机器人300始终无法根据权重参数的值调整到一个稳定的状态值。
请参阅图5,图5是本申请实施例的机器人状态值调整方法的一逻辑框架示意图,四足机器人300将期望状态值Xref,和机身内的传感器和惯性测量单元等器件反馈的当前状态值X输入求和器和预测控制器计算,预测控制器的控制频率设置为1s500个控制周期,权重参数选择器(公式
可以表示权重参数选择器)的调整周期为1s1个调整周期。求和器(公式/>可以表示求和器)计算当前状态值X和期望状态值Xref之间的差值,将差值输入权重参数选择器,权重参数选择器将差值和阈值进行比较,直到差值小于阈值后,筛选出权重参数Q的值,并将该权重参数Q的值输入预测控制器继续迭代计算,使预测控制器根据该权重参数Q的值、当前状态值X和期望状态值Xref输出一个适宜的足端力,通过该足端力调整机器人300机身,从而自动调整机器人300的当前状态值。
请参阅图6,图6为另一种机器人状态值调整方法的流程示意图,另一种机器人状态值调整方法可以包括以下步骤:
S501:获取机器人的期望状态值和当前状态值;
S502:判断当前状态值和期望状态值之间的差值是否大于等于阈值;
S503:若大于等于阈值,通过调整与状态值对应的权重参数,来调整所述足端力,来调整当前状态值,以使当前状态值和期望状态值之间的差值小于阈值,其中权重参数的调整频率小于控制频率。
请参阅图7,图7为本申请的一个实施例提供的机器人300,机器人300包括与腿通信连接的控制系统110,控制系统110包括数据处理器111,和与数据处理器111通信的存储器112,存储器112存储指令,当在数据处理器111上执行时,指令使得数据处理器111执行操作,操作包括:
获取机器人的期望状态值和当前状态值;
判断当前状态值和期望状态值之间的差值是否大于等于阈值;
若大于等于阈值,则通过调整机器人的足端力来调整当前状态值,以使当前状态值和期望状态值之间的差值小于阈值。
在一些实施例中,操作还包括:
调整机器人的预测控制器的权重参数,以确定足端力。其中,预测控制器的权重参数包括以下至少一种:
机器人机身姿态角权重参数、机器人机身在世界坐标系下的位置权重参数、机器人机身角速度权重参数和机器人机身在世界坐标系下的线速度权重参数。其中,权重参数的调整频率小于预测控制器的控制频率。
在一些实施例中,若所述当前状态值和所述期望状态值之间的差值小于所述阈值,所述操作还包括:将所述调整预测控制器的上一权重调整周期的第一权重参数的值,作为当前权重调整周期的第二权重参数的值。
可以理解,机器人能够实现上述方法实施例的所有方法步骤,在此不再对相同的方法步骤及有益效果进行赘述。
需要说明的是,本申请实施例示意的结构并不构成对机器人300的具体限定。在本申请另一些实施例中,机器人300可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。
请参阅图8,图8为本申请其中一个实施例的多足机器人300的硬件结构示意图。在图8所示的实施方式中,多足机器人300包括机械单元301、通讯单元302、传感单元303、接口单元304、存储单元305、显示单元306、输入单元307、控制模块308及电源309。多足机器人300的各种部件可以以任何方式连接,包括有线或无线连接等。
可以理解,图8中示出的多足机器人300的具体结构并不构成对多足机器人300的限定,多足机器人300可以包括比图示更多或更少的部件,某些部件也并不属于多足机器人300的必须构成,完全可以根据需要在不改变申请的本质的范围内而省略,或者组合某些部件。
下面结合图8对多足机器人300的各个部件进行具体介绍:
机械单元301为多足机器人300的硬件。如图8所示,机械单元301可包括驱动板3011、电动机3012、机械结构3013。如图9所示,图9是多足机器人300的外观示意图。机械结构3013可包括机身主体3014、可伸展的腿部3015、腿部3015,足部3016,在其他实施方式中,机械结构3013还可包括可伸展的机械臂(图未示)、可转动的头部结构3017、可摇动的尾巴结构3018、载物结构3019、鞍座结构3020、摄像头结构3021等。需要说明的是,机械单元301的各个部件模块可以为一个也可以为多个,可根据具体情况设置,比如腿部3015可为4个,4条腿部3015中包括至少两条以上的摆动腿,每个腿部3015可配置3个电动机3012,对应的电动机3012为12个。
通讯单元302可用于信号的接收和发送,还可以通过与网络和其他设备通信,比如,接收遥控器或其他多足机器人300发送的按照特定步态以特定速度值向特定方向移动的指令信息后,传输给控制模块308处理。通讯单元302包括如WiFi模块、4G模块、5G模块、蓝牙模块、红外模块等。
传感单元303用于获取多足机器人300周围环境的信息数据以及监控多足机器人300内部各部件的参数数据,并发送给控制模块308。传感单元303包括多种传感器,如获取周围环境信息的传感器:激光雷达(用于远程物体检测、距离确定和/或速度值确定)、毫米波雷达(用于短程物体检测、距离确定和/或速度值确定)、摄像头、红外摄像头、全球导航卫星系统(GNSS,Global Navigation Satellite System)等。如监控多足机器人300内部各部件的传感器101:惯性测量单元(用于测量速度值、加速度值和角速度值的值),足端传感器(用于监测足端着力点位置、足端姿态、触地力大小和方向)、温度传感器(用于检测部件温度)。至于多足机器人300还可配置的载荷传感器、触摸传感器、电动机角度传感器、扭矩传感器等其他传感器,在此不再赘述。
接口单元304可以用于接收来自外部装置的输入(例如,数据信息、电力等)并且将接收到的输入传输到多足机器人300内的一个或多个部件,或者可以用于向外部装置输出(例如,数据信息、电力等)。接口单元304可包括电源端口、数据端口(如USB端口)、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口等。
存储单元305用于存储软件程序以及各种数据。存储单元305可主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统程序、运动控制程序、应用程序(比如文本编辑器)等;数据存储区可存储多足机器人300在使用中所生成的数据(比如传感单元303获取的各种传感数据,日志文件数据)等。此外,存储单元305可以包括高速随机存取存储器,还可以包括非易失性存储器,例如磁盘存储器、闪存器、或其他易失性固态存储器。
显示单元306用于显示由用户输入的信息或提供给用户的信息。显示单元306可包括显示面板3061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode, OLED)等形式来配置显示面板3061。
输入单元307可用于接收输入的数字或字符信息。具体地,输入单元307可包括触控面板3071以及其他输入设备3072。触控面板3071,也称为触摸屏,可收集用户的触摸操作(比如用户使用手掌、手指或适合的附件在触控面板3071上或在触控面板3071附近的操作),并根据预先设定的程序驱动相应的连接装置。触控面板3071可包括触摸检测装置3073和触摸控制器3074两个部分。其中,触摸检测装置3073检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器3074;触摸控制器3074从触摸检测装置3073上接收触摸信息,并将它转换成触点坐标,再送给控制模块308,并能接收控制模块308发来的命令并加以执行。除了触控面板3071,输入单元307还可以包括其他输入设备3072。具体地,其他输入设备3072可以包括但不限于遥控操作手柄等中的一种或多种,具体此处不做限定。
进一步的,触控面板3071可覆盖显示面板3061,当触控面板3071检测到在其上或附近的触摸操作后,传送给控制模块308以确定触摸事件的类型,随后控制模块308根据触摸事件的类型在显示面板3061上提供相应的视觉输出。虽然在图8中,触控面板3071与显示面板3061是作为两个独立的部件来分别实现输入和输出功能,但是在某些实施例中,可以将触控面板3071与显示面板3061集成而实现输入和输出功能,具体此处不做限定。
控制模块308是多足机器人300的控制中心,利用各种接口和线路连接整个多足机器人300的各个部件,通过运行或执行存储在存储单元305内的软件程序,以及调用存储在存储单元305内的数据,从而对多足机器人300进行整体控制。
电源309用于给各个部件供电,电源309可包括电池和电源控制板,电源控制板用于控制电池充电、放电、以及功耗管理等功能。在图8所示的实施方式中,电源309电连接控制模块308,在其它的实施方式中,电源309还可以分别与传感单元303(比如摄像头、雷达、音箱等)、电动机3012电性连接。需要说明的是,各个部件可以各自连接到不同的电源309,或者由相同的电源309供电。
在上述实施方式的基础上,具体地,在一些实施方式中,可以通过终端设备来与多足机器人300进行通信连接,在终端设备与多足机器人300进行通信时,可以通过终端设备来向多足机器人300发送指令信息,多足机器人300可通过通讯单元302来接收指令信息,并可在接收到指令信息的情况下,将指令信息传输至控制模块308,使得控制模块308可根据指令信息来处理得到目标速度值。终端设备包括但不限于:具备图像拍摄功能的手机、平板电脑、服务器、个人计算机、可穿戴智能设备、其它电器设备。
指令信息可以根据预设条件来确定。在一个实施方式中,多足机器人300可以包括传感单元303,传感单元303可根据多足机器人300所在的当前环境可生成指令信息。控制模块308可根据指令信息来判断多足机器人300的当前速度值是否满足对应的预设条件。若满足,则会保持多足机器人300的当前速度值和当前步态移动;若不满足,则会根据对应的预设条件来确定目标速度值和相应的目标步态,从而可控制多足机器人300以目标速度值和相应的目标步态移动。环境传感器可以包括温度传感器、气压传感器、视觉传感器、声音传感器。指令信息可以包括温度信息、气压信息、图像信息、声音信息。环境传感器与控制模块308之间的通信方式可以为有线通信,也可以为无线通信。无线通信的方式包括但不限于:无线网络、移动通信网络(3G、4G、5G等)、蓝牙、红外。
可以理解,多足机器人300能够实现上述方法实施例的所有方法步骤,在此不再对相同的方法步骤及有益效果进行赘述。
上面结合附图对本申请实施例作了详细说明,但是本申请不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本申请宗旨的前提下做出各种变化。
Claims (6)
1.一种机器人状态值调整方法,其特征在于,所述调整方法包括:
获取机器人的期望状态值和当前状态值;
判断所述当前状态值和所述期望状态值之间的差值是否大于等于阈值;
若大于等于所述阈值,则通过调整与状态值对应的权重参数,来调整足端力,来调整所述当前状态值,以使所述当前状态值和所述期望状态值之间的差值小于所述阈值,其中,所述状态值包括机器人机身姿态角、机器人机身在世界坐标系下的位置、机器人机身角速度和机器人机身在世界坐标系下的线速度,所述权重参数包括机器人机身姿态角权重参数、机器人机身在世界坐标系下的位置权重参数、机器人机身角速度权重参数和机器人机身在世界坐标系下的线速度权重参数。
2.根据权利要求1所述的调整方法,其特征在于,所述权重参数的调整频率小于控制频率。
3.根据权利要求1所述的调整方法,其特征在于,若所述当前状态值和所述期望状态值之间的差值小于所述阈值,所述调整与所述状态值对应的权重参数包括:
将与所述状态值对应的上一权重调整周期的第一权重参数的值,作为当前权重调整周期的第二权重参数的值。
4.一种机器人,其特征在于,包括:
机身;
至少两条腿,连接到所述机身,所述至少两条腿包括摆动腿;以及与所述至少两条腿通信的控制系统,所述控制系统包括数据处理器和与所述数据处理器通信的存储器,所述存储器存储指令,当在所述数据处理器上执行时,所述指令使得所述数据处理器执行操作,包括:
获取机器人的期望状态值和当前状态值;
判断所述当前状态值和所述期望状态值之间的差值是否大于等于阈值;
若大于等于所述阈值,则通过调整与状态值对应的权重参数,来调整足端力,来调整所述当前状态值,以使所述当前状态值和所述期望状态值之间的差值小于所述阈值,其中,所述状态值包括机器人机身姿态角、机器人机身在世界坐标系下的位置、机器人机身角速度和机器人机身在世界坐标系下的线速度,所述权重参数包括机器人机身姿态角权重参数、机器人机身在世界坐标系下的位置权重参数、机器人机身角速度权重参数和机器人机身在世界坐标系下的线速度权重参数。
5.根据权利要求4所述的机器人,其特征在于,所述权重参数的调整频率小于控制频率。
6.根据权利要求4所述的机器人,其特征在于,若所述当前状态值和所述期望状态值之间的差值小于所述阈值,所述操作还包括:
将与所述状态值对应的上一权重调整周期的第一权重参数的值,作为当前权重调整周期的第二权重参数的值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310036442.0A CN115709471B (zh) | 2023-01-10 | 2023-01-10 | 机器人状态值调整方法及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310036442.0A CN115709471B (zh) | 2023-01-10 | 2023-01-10 | 机器人状态值调整方法及机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115709471A CN115709471A (zh) | 2023-02-24 |
CN115709471B true CN115709471B (zh) | 2023-05-30 |
Family
ID=85236249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310036442.0A Active CN115709471B (zh) | 2023-01-10 | 2023-01-10 | 机器人状态值调整方法及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115709471B (zh) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109605364A (zh) * | 2018-10-31 | 2019-04-12 | 北京理工大学 | 一种仿人机器人摔倒检测和稳定控制方法 |
CN109782593B (zh) * | 2019-01-09 | 2022-03-22 | 哈尔滨理工大学 | 一种应用于六足机器人的共享因子模糊推理器的控制方法 |
CN114503043A (zh) * | 2019-08-06 | 2022-05-13 | 波士顿动力公司 | 受限移动性建图 |
CN111891252B (zh) * | 2020-08-06 | 2021-11-05 | 齐鲁工业大学 | 一种四足仿生机器人的身体姿态斜坡自适应控制方法 |
CN112783175B (zh) * | 2021-01-04 | 2022-09-16 | 腾讯科技(深圳)有限公司 | 质心轨迹确定方法、装置、足式机器人、设备及介质 |
CN114488808B (zh) * | 2022-01-24 | 2022-12-30 | 新基线(江苏)科技有限公司 | 一种四足机器人模型参数的实时校正方法 |
CN115202378A (zh) * | 2022-06-24 | 2022-10-18 | 浙江大学 | 一种仿人机器人动态步行控制方法 |
CN115328186A (zh) * | 2022-09-14 | 2022-11-11 | 中国人民解放军国防科技大学 | 基于任务分层优化的双足机器人级联控制方法和装置 |
-
2023
- 2023-01-10 CN CN202310036442.0A patent/CN115709471B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115709471A (zh) | 2023-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11413750B2 (en) | Determination of robotic step path | |
US11851120B2 (en) | Control of robotic devices with non-constant body pitch | |
US9821457B1 (en) | Adaptive robotic interface apparatus and methods | |
US12070863B2 (en) | Dynamic planning controller | |
US11992945B2 (en) | System and methods for training robot policies in the real world | |
US20240051122A1 (en) | Robot movement and online trajectory optimization | |
CN117500642A (zh) | 用于开发机器人自主性的系统、设备和方法 | |
CN114253281A (zh) | 一种四足机器人运动控制方法、相关装置及存储介质 | |
CN115709471B (zh) | 机器人状态值调整方法及机器人 | |
CN117073662A (zh) | 地图构建方法、装置、机器人以及存储介质 | |
CN114137992B (zh) | 一种降低足式机器人抖动的方法及相关装置 | |
CN114137954A (zh) | 一种四足机器人质心轨迹规划方法、装置及存储介质 | |
CN115446844B (zh) | 机器人的控制方法、机器人及控制终端 | |
CN117944783A (zh) | 机器人的步态控制方法、机器人及控制终端 | |
CN114633826B (zh) | 一种足式机器人腿部磕碰处理的方法及足式机器人 | |
CN115922731B (zh) | 一种机器人的控制方法以及机器人 | |
CN117863190B (zh) | 足式机器人的移动控制方法及足式机器人 | |
US20220390922A1 (en) | Workcell modeling using motion profile matching and swept profile matching | |
US20240248488A1 (en) | Motion control method, controller, and storage medium | |
CN117021106A (zh) | 机器人的步态控制方法和机器人 | |
CN116276991A (zh) | 一种机器人提起处理的方法及机器人 | |
CN114610017A (zh) | 一种足式机器人避免自碰撞的方法、相关装置及存储介质 | |
CN114578823A (zh) | 机器人动作仿生规划方法、电子设备及存储介质 | |
CN116394268A (zh) | 机器人的仿真方法、装置、设备及存储介质 | |
CN115981346A (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 |