CN107703756B - 动力学模型参数辨识方法、装置、计算机设备及存储介质 - Google Patents
动力学模型参数辨识方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN107703756B CN107703756B CN201711070985.5A CN201711070985A CN107703756B CN 107703756 B CN107703756 B CN 107703756B CN 201711070985 A CN201711070985 A CN 201711070985A CN 107703756 B CN107703756 B CN 107703756B
- Authority
- CN
- China
- Prior art keywords
- joint
- data
- moment
- target
- state data
- 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
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000005070 sampling Methods 0.000 claims abstract description 126
- 238000001914 filtration Methods 0.000 claims abstract description 84
- 230000005284 excitation Effects 0.000 claims abstract description 18
- 239000011159 matrix material Substances 0.000 claims description 83
- 238000005259 measurement Methods 0.000 claims description 40
- 238000012545 processing Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 31
- 238000012886 linear function Methods 0.000 claims description 14
- 230000001133 acceleration Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 238000005457 optimization Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 241001123248 Arma Species 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/042—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
Abstract
本发明公开了动力学模型参数辨识方法、装置、计算机设备及存储介质。该方法包括:获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据;分别对各关节角度值以及各力矩数据进行滤波处理,获得各关节在当前采样时刻的目标状态数据和目标力矩数据;根据各目标状态数据及目标力矩数据优化动力学模型,并辨识动力学模型中的未知动力学参数。利用该方法,有效获得机械臂关节所对应高精度的目标状态数据和目标力矩数据,由此根据高精度的状态数据及力矩数据实现了对所构建动力学模型精度的优化,从而实现了未知动力学参数的高精度辨识,提高了动力学模型的准确性,进而提高了动力学模型对机器人控制的控制性能。
Description
技术领域
本发明涉及机器人技术领域,尤其涉及动力学模型参数辨识方法、装置、计算机设备及存储介质。
背景技术
基于动力学的控制能够有效的提高机器人的控制性能,对机器人使用基于动力学模型的控制算法时,首先要保证动力学模型的准确性,动力学模型的准确性依赖于几何参数和动力学参数,几何参数可以通过运动学标定获得,动力学参数则需要通过动力学模型辨识的方法来估测。
目前,工业机器人动力学参数辨识通常采用基于动力学模型的整体辨识方案,其过程可描述为:首先构建动力学参数的最小集合形成动力学模型,然后控制机器人沿所设计的激励轨迹运动,由此测量得到机器人各关节运动时的状态数据及力矩数据,最终基于测量的数据和构建的动力学模型,采用合适的估计算法估测出未知的动力学参数。
实现上述整体辨识方案时所依赖参数辨识装置的架构图如图1所示,其整体架构包括:上位机11、驱动器12、设置于机器人本体中机械臂的各个关节处的电机13以及与电机13对应配置的编码器14。其中,上位机11相当于一个控制终端,通过驱动器12控制电机13沿激励轨迹运动,此外,驱动器12与机器人本体中各电机13电连接,用于读取编码器14在电机13运动时量测的读数,并将获取的读数转换成电机13位置信息及速度信息,同时还用于量测获得电机13的力矩信息,最终将位置信息、速度信息以及力矩信息等上传给上位机11;上位机11根据获得的信息通过合适的估计算法获得所构建动力学模型中未知的动力学参数。
然而,根据上述方案对动力学模型进行未知动力学参数辨识时,往往没有考虑关节摩擦力与电机本身的惯性力对所构建动力学模型精度的影响,由此造成了参数辨识的误差;此外,驱动器测量获得位置信息、速度信息以及力矩信息中往往包括量测过程中产生的噪声数据,同样会影响动力学参数辨识的准确性。
发明内容
本发明实施例提供了动力学模型参数辨识方法、装置、计算机设备及存储介质,实现了动力学模型的优化以及对动力学参数的高精度辨识。
一方面,本发明实施例提供了一种动力学模型参数辨识方法,包括:
获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据;
分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据;
根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数。
另一方面,本发明实施例提供了一种动力学模型参数辨识装置,包括:
测量数据获取模块,用于获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据;
数据滤波处理模块,用于分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据;
未知参数辨识模块,用于根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数。
又一方面,本发明实施例提供了一种计算机设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例提供的动力学模型参数辨识方法。
再一方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明实施例提供的动力学模型参数辨识方法。
在上述动力学模型参数辨识方法、装置、计算机设备及存储介质中,该方法首先获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据;然后分别对各关节角度值及各力矩数据进行滤波处理,获得各关节在当前采样时刻的目标状态数据和目标力矩数据;最终根据目标状态数据和目标力矩数据来优化动力学模型,并辨识动力学模型中的未知动力学参数。上述技术方案,能够通过对测量获得机械臂关节位置数据以及力矩数据的滤波处理,获得机械臂关节所对应高精度的目标状态数据和目标力矩数据,由此根据高精度的状态数据及力矩数据实现了对所构建动力学模型精度的优化,从而实现了未知动力学参数的高精度辨识,提高了动力学模型的准确性,进而提高了动力学模型对机器人控制的控制性能。
附图说明
图1给出了参数模型辨识所依赖参数模型辨识装置的架构图;
图2为本发明实施例一提供的一种动力学模型参数辨识方法的流程示意图;
图3a为本发明实施例二提供的一种动力学模型参数辨识方法的流程示意图;
图3b给出了本发明实施例二基于卡尔曼滤波获得目标状态数据的流程示意图;
图4为本发明实施例三提供的一种动力学模型参数辨识装置的结构框图;
图5为本发明实施例四提供的一种计算机设备的硬件结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图2为本发明实施例一提供的一种动力学模型参数辨识方法的流程示意图,该方法适用于对动力学模型中未知动力学参数进行辨识的情况,该方法可以由动力学模型参数辨识装置执行,其中该装置可由软件和/或硬件实现,并一般集成与机器人存在电连接的计算机设备上,优选地,可集成在与机器人电连接的上位机上。
需要说明的是,本实施例相当于在现有参数辨识技术上的改进,且主要在于测量获得机械臂关节的位置或速度信息以及力矩信息后,对所测量信息数据的改进处理。由此提高了动力学参数辨识的精度,进而提高动力学模型对机器人的控制性能。
如图2所示,本发明实施例一提供的一种动力学模型参数辨识方法,包括如下操作:
S101、获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据。
可以理解的是,本实施例首先可以控制机器人中机械臂的各关节基于现有的参数辨识时设定的激励轨迹运动,此外,本实施例设定了采样周期用于周期性的测量机械臂各关节运动时相关的原始数据信息。其中,根据设定的采样周期可以确定具体地采样时刻,本步骤具体获取了机械臂各关节在当前采样时刻通过参数辨识装置中的驱动器测量的原始数据信息。
具体地,本实施例优选设定所测量的原始数据信息包括:机械臂各关节运动时的状态数据以及在机械臂关节处所设置电机的力矩数据,但由于机械臂关节的状态数据可以在已知关节角度值后计算获得,因此本实施例实际测量了机械臂关节的关节角度值和力矩数据。
S102、分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据。
在本实施例中,考虑到机械臂各关节由上一采样时刻运动到当前采样时刻时存在较多的外界干扰,同时驱动器进行数据量测过程中也存在一定的噪声干扰,导致获得的关节角度值以及力矩数据均存在一定的误差。因此,本实施例优选设定对关节角度值以及力矩数据进行滤波处理,尽可能滤除量测过程中产生的噪声数据。
具体地,本实施进行滤波处理的方法较多,示例性的,如卡尔曼滤波、中值滤波、加权递推平均滤波以及低通滤波等,本实施例不对滤波方式进行具体限定,本实施例优选采用不同的滤波方式分别对关节角度值及力矩数据进行滤波处理。由此可通过对关节角度值的滤波处理直接获得机械臂关节的目标状态数据,以及获得对应与力矩数据的目标力矩数据。在本实施例中,所述目标状态数据可理解为包括机械臂关节运动过程中关节角度信息、关节角速度信息以及关节加速度信息等关节运动状态信息的数据。
S103、根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数。
需要说明的是,本实施例进行动力学参数辨识时所采用动力学模型的构建主要与电机的力矩数据、机械臂各关节的状态数据以及动力学参数相关,因此基于对电机的力矩数据及机械臂各关节的状态数据进行滤波处理后的数据构建的动力学模型相当于对动力学模型的优化。
本实施例还考虑了机械臂各关节摩擦力以及电机本身惯性力对动力学模型进行的影响,本实施例通过设定的策略还可以确定出机械臂各关节的关节摩擦力,同时也通过历史经验给出了电机惯性力的经验值,由此本实施例的动力学模型优化具体相当于基于目标状态数据、目标力矩数据、关节摩擦力以及电机惯性力实现。
此外,本实施例还可以根据优化后的动力学模型,通过确定的目标状态数据以及目标力矩数据,采用设定的估计算法实现了未知动力学参数的辨识。其中,所设定的估计算法可以是最小二乘估计发,线性最小方差估计发、最小方差估计发以及递推最小二乘估计等。
本发明实施例一提供的一种动力学模型参数辨识方法,首先获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据;然后分别对各关节角度值及各力矩数据进行滤波处理,获得各关节在当前采样时刻的目标状态数据和目标力矩数据;最终根据目标状态数据和目标力矩数据来优化动力学模型,并辨识动力学模型中的未知动力学参数。上述技术方案,能够通过对测量获得机械臂关节位置数据以及力矩数据的滤波处理,获得机械臂关节所对应高精度的目标状态数据和目标力矩数据,由此根据高精度的状态数据及力矩数据实现了对所构建动力学模型精度的优化,从而实现了未知动力学参数的高精度辨识,提高了动力学模型的准确性,进而提高了动力学模型对机器人控制的控制性能。
实施例二
图3a为本发明实施例二提供的一种动力学模型参数辨识方法的流程示意图。本实施例二以上述实施例为基础进行优化,在本实施例中,将分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据,进一步优化为:采用设定的卡尔曼滤波策略处理各所述关节角度值,确定各所述关节在所述当前采样时刻对应的目标状态数据;采用设定的低通滤波策略处理各所述力矩数据,确定各所述关节在所述当前采样时刻对应的目标力矩数据。
在上述优化的基础上,本实施例进一步将根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数,具体化为:基于各所述目标状态数据,优化动力学模型中线性化参数模型部分的线性函数矩阵;获取为所述机械臂各关节预先设定的电机惯性力,并获取所述机械臂各关节运动时产生的关节摩擦力;根据各所述目标力矩数据及对应的电机惯性力和关节摩擦力,优化所述动力学模型中的力矩数据矩阵;根据所述线性函数矩阵及所述力矩数据矩阵,采用最小二乘法获取所述动力学模型中的未知动力学参数。
如图3a所示,本发明实施例二提供的一种动力学模型参数辨识方法,具体包括如下操作:
S201、获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据。
S202、采用设定的卡尔曼滤波策略处理各所述关节角度值,确定各所述关节在所述当前采样时刻对应的目标状态数据。
本实施例优选采用卡尔曼滤波策略对机械臂各关节的关节角度值进行滤波处理,通过对关节角度值的滤波处理,最终可以获得机械臂各关节在当前采样时刻对应的目标状态数据。
具体地,图3b给出了本发明实施例二基于卡尔曼滤波获得目标状态数据的流程示意图。如图3b所示,采用设定的卡尔曼滤波策略处理各所述关节角度值,确定各所述关节在所述当前采样时刻对应的目标状态数据,包括如下操作:
可以理解的是,卡尔曼滤波的理论模型公式相当于包含了两个方程,一个是状态方程,一个是量测方程,其卡尔曼滤波最终实现的是对状态量xk的优化估计。一个状态在一个时刻点k-1的状态进入下一个时刻点k状态,会有很多外界因素的干扰,我们把干扰就叫做过程误差用ω表示,可以为均值为0的高斯白噪声,任何一个测量仪器,都会有误差,我们把这个误差叫做测量误差,用v表示,也可以为均值为0的高斯白噪声。因此,卡尔曼滤波理论公式中的状态方程则表示了状态不断更新过程与前一时刻点的状态量及过程操作相关,其中a为设定数据格式的常量;此外,不断更新的状态中往往仅有一个或几个状态参数量是可以通过测量仪器量测的,比如机械臂关节的关节角度,因此,量测方程的作用就是把状态量中能够直接量测的状态参数zk通过状态量及量测过程中的测量误差进行表示,其中,h为设定数据格式的常量。
但是基于卡尔曼滤波的实际操作中,其过程误差与量测误差均不能直接获得,但在实际应用中可以直接确定状态变化过程中所产生过程误差的过程协方差矩阵,同时也可以直接确定量测过程中所产生测量误差的测量协方差矩阵,因此,本实施例考虑通过下述步骤实现关节角速度的卡尔曼滤波处理。
S2021、获取各所述关节由上一采样时刻过渡到所述当前采样时刻时所产生过程误差的过程协方差矩阵。
具体地,本步骤主要用于获得机械臂各关节从上一采样时刻过渡到当前采样时刻过程中所产生过程误差的过程协方差矩阵,所述过程协方差矩阵可通过一定方式在机械臂各关节状态变化过程中实际获得。
S2022、获取在所述当前采样时刻测量各所述关节的关节角度值时所产生测量误差的测量协方差矩阵。
示例性的,本步骤具体可用于获得机械臂各关节在当前采样时刻进行相应关节角度值测量时所产生测量误差的测量协方差矩阵。所述测量协方差矩阵也可通过一定方式在对机械臂各关节状态参数(如关节角度值)的测量过程中实际获得。
S2023、获取各所述关节在所述上一采样时刻确定的上一目标状态数据和上一整体误差的上一整体协方差矩阵。
可以理解的是,根据卡尔曼滤波的理论模型公式,可知对机械臂各关节在当前采样时刻的状态量优化,需要依据上一采样时刻优化后的状态量,相当于本实施例中机械臂各关节在上一采样时刻的上一目标状态数据。此外,对任一采样时刻的状态量进行优化时,通常还可以确定出与该采样时刻对应的整体误差(相当于状态误差与测量误差的融合)的整体误差协方差矩阵,所确定的整体误差协方差矩阵也用于对相邻下一采样时刻时状态量的优化。
S2024、将各所述过程协方差矩阵、测量协方差矩阵、上一目标状态数据、上一整体协方差矩阵以及各所述关节角度值作为卡尔曼滤波公式的已知信息,获得各所述关节在所述当前采样时刻对应的目标状态数据及整体误差的整体协方差矩阵。
本实施例中的卡尔曼滤波公式具体可看作以上述卡尔曼滤波的理论模型公式为原型通过相应的理论推导获得的可用于优化机械臂各关节状态数据的公式。
所述卡尔曼滤波公式表示为:
其中,k表示第k个采样时刻,k为大于0的整数,为包含关节在第k采样时刻的目标状态数据的三维向量,表示为Pk为第k采样时刻的整体误差的整体协方差矩阵;A为设定的3×3矩阵;为包含关节在第k-1采样时刻的目标状态数据的三维向量;表示为:Pk-1为第k-1采样时刻的整体协方差矩阵,Qk为第k采样时刻的测量协方差矩阵;H为设定的一维向量;Rk为第k采样时刻的过程协方差矩阵;Zk为由第k采样时刻量测的关节角度值组成的1×1矩阵。
在本实施例中,以机械臂各关节在不同时刻的状态变化为研究背景时,其目标状态数据相当于在当前采样时刻进行卡尔曼滤波优化后的状态量,具体包括了优化后的关节角度值,关节角速度值以及关节角加速度值。
同时,所述卡尔曼滤波公式中的各常量或变量也具有相应的实际意义,其中,表示了对整体协方差矩阵进行优化时的中间状态值,其主要与上一采样时刻获得的上一协方差矩阵及对机械臂关节进行关节角度值测量时测量误差的测量协方差矩阵有关。
需要说明的是,上述卡尔曼滤波公式中的A和H均为预先设定好的已知常量,本实施例优选设定A为3×3的矩阵,且可设定为:其中,T表示本实施例设定采样周期,即当前采样时刻与上一采样时刻的间隔周期。本实施例优选设定H为一维向量,且可设定为H=[1,0,0],由此可知,本实施例实际对机械臂关节测量的仅为关节角度值。此外,本实施例中需要设定k等于1时,以及Pk-1的初始值,一般可根据历史经验设定相应的经验值。
S203、采用设定的低通滤波策略处理各所述力矩数据,确定各所述关节在所述当前采样时刻对应的目标力矩数据。
本实施例优选采用低通滤波策略对机械臂各关节所对应电机的力矩数据进行滤波处理,由此可获得机械臂各关节所对应电机的目标力矩数据。
具体地,本实施例进一步将采用设定的低通滤波策略处理各所述力矩数据,确定各所述关节在所述当前采样时刻对应的目标力矩数据,优化为:
将各所述力矩数据及各所述关节在历史采样时刻的历史目标力矩数据作为巴特沃斯滤波器所对应滤波公式的已知信息,获得各所述关节在所述当前采样时刻的目标力矩数据;
相应的,所述滤波公式表示为:
其中,ai和bi均为巴特沃斯滤波器中设定的滤波系数,i取1,2,3,4,5;k表示第k个采样时刻,y(k)表示关节在第k采样时刻的目标力矩数据;x(k)表示关节在第k采样时刻获得的力矩数据;y(k-j)表示关节在第k-j采样时刻对应的目标力矩数据,x(k-j)表示关节在第k-j采样时刻对应的目标力矩数据,j取1,2,3,4。
本实施例优选使用了巴特沃斯滤波器,并具体根据其对应的滤波公式实现了目标力矩数据的确定操作。本实施例同样需要设定k等于1时y(0)以及x(0)的初始值,通常也根据历史经验设定对应的经验值。
本实施例下述S204至S207具体给出了未知动力学参数辨识的操作。
S204、基于各所述目标状态数据,优化动力学模型中线性化参数模型部分的线性函数矩阵。
本实施例沿用现有的动力学模型,动力学模型公式表示为:具体地,τ表示基于机械臂各关节的力矩数据构成的力矩数据矩阵;表示通过机械臂各关节的状态数据构成的线性化参数模型部分的线性函数矩阵;P则表示控制机械臂的动力学参数构成的矩阵。
针对现有的动力学模型,本步骤可通过上述操作获取的机械臂各关节的目标状态数据,对线性函数矩阵进行优化,即相当于通过各目标状态数据重新构成线性函数矩阵。
S205、获取为所述机械臂各关节预先设定的电机惯性力,并获取所述机械臂各关节运动时产生的关节摩擦力。
本实施例中考虑了电机惯性力及关节摩擦力对动力学模型精度的影响,本步骤具有用于获取预设的电机惯性力,同时还获取运动产生的关节摩擦力。
S206、根据各所述目标力矩数据及对应的电机惯性力和关节摩擦力,优化所述动力学模型中的力矩数据矩阵。
本步骤相当于对力矩数据矩阵τ的优化,力矩数据矩阵τ的计算公式可看作:τ=τ0-f-τM,其中,τ0表示当前获得的目标力矩数据构成的矩阵,f为关节摩擦力构成的矩阵,τM为电机惯性力构成的矩阵。
S207、根据所述线性函数矩阵及所述力矩数据矩阵,采用最小二乘法获取所述动力学模型中的未知动力学参数。
本步骤通过上述S204至S206完成了动力学模型中部分参数的优化,因此根据上述已知的线性函数矩阵及力矩数据矩阵,采用最小二乘法就可以估计动力学模型中的未知动力学参数。具体地,可通过下述公式进行未知动力学参数的估计:P=(YTY)-1Yτ。
本发明实施例二提供的一种动力学模型参数辨识方法,具体采用了卡尔曼滤波实现了机械臂关节状态变化时状态数据的优化,同时采用了低通滤波实现了机械臂关节所对应电机力矩数据的优化,此外,还具体化了动力学模型的优化操作以及未知动力学参数的获取操作。利用该方法,采用卡尔曼滤波提高了机械臂关节角度、角速度以及角加速度等状态数据的精度,采用低通滤波器有效提高了力矩数据的精度,同时机械臂动力学模型中关节摩擦力与电机本身惯性力的考虑,有效提高了动力学模型的精度,基于上述优化改进,实现了未知动力学参数的高精度辨识,进而提高了动力学模型对机器人控制的控制性能。
实施例三
图4为本发明实施例三提供的一种动力学模型参数辨识装置的结构框图。该装置适用于对动力学模型中未知动力学参数进行辨识的情况,其中该装置可由软件和/或硬件实现,并一般集成与机器人存在电连接的计算机设备上,优选地,可集成在与机器人电连接的上位机上。如图4所示,该装置包括:测量数据获取模块31、数据滤波处理模块32以及未知参数辨识模块33。
其中,测量数据获取模块31,用于获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据;
数据滤波处理模块32,用于分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据;
未知参数辨识模块33,用于根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数。
在本实施例中,该装置首先通过测量数据获取模块31获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据;然后通过数据滤波处理模块32分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据;最终通过未知参数辨识模块33根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数。
本发明实施例三提供的动力学模型参数辨识装置,能够通过对测量获得机械臂关节位置数据以及力矩数据的滤波处理,获得机械臂关节所对应高精度的目标状态数据和目标力矩数据,由此根据高精度的状态数据及力矩数据实现了对所构建动力学模型精度的优化,从而实现了未知动力学参数的高精度辨识,提高了动力学模型的准确性,进而提高了动力学模型对机器人控制的控制性能。
进一步地,数据滤波处理模块32,包括:
状态数据确定单元,用于采用设定的卡尔曼滤波策略处理各所述关节角度值,确定各所述关节在所述当前采样时刻对应的目标状态数据;
目标力矩确定单元,用于采用设定的低通滤波策略处理各所述力矩数据,确定各所述关节在所述当前采样时刻对应的目标力矩数据。
优选地,状态数据确定单元,具体可用于:
获取各所述关节由上一采样时刻过渡到所述当前采样时刻时所产生过程误差的过程协方差矩阵;获取在所述当前采样时刻测量各所述关节的关节角度值时所产生测量误差的测量协方差矩阵;获取各所述关节在所述上一采样时刻确定的上一目标状态数据和上一整体误差的上一整体协方差矩阵;将各所述过程协方差矩阵、测量协方差矩阵、上一目标状态数据、上一整体协方差矩阵以及各所述关节角度值作为卡尔曼滤波公式的已知信息,获得各所述关节在所述当前采样时刻对应的目标状态数据及整体误差的整体协方差矩阵。
所述卡尔曼滤波公式表示为:
其中,k表示第k个采样时刻,k为大于0的整数,为包含关节在第k采样时刻的目标状态数据的三维向量,表示为Pk为第k采样时刻的整体误差的整体协方差矩阵;A为设定的3×3矩阵;为包含关节在第k-1采样时刻的目标状态数据的三维向量;表示为:Pk-1为第k-1采样时刻的整体协方差矩阵,Qk为第k采样时刻的测量协方差矩阵;H为设定的一维向量;Rk为第k采样时刻的过程协方差矩阵;Zk为由第k采样时刻量测的关节角度值组成的1×1矩阵。
优选地,目标力矩确定单元,具体用于:
将各所述力矩数据及各所述关节在历史采样时刻的历史目标力矩数据作为巴特沃斯滤波器所对应滤波公式的已知信息,获得各所述关节在所述当前采样时刻的目标力矩数据;
相应的,所述滤波公式表示为:
其中,ai和bi均为巴特沃斯滤波器中设定的滤波系数,i取1,2,3,4,5;k表示第k个采样时刻,y(k)表示关节在第k采样时刻的目标力矩数据;x(k)表示关节在第k采样时刻获得的力矩数据;y(k-j)表示关节在第k-j采样时刻对应的目标力矩数据,x(k-j)表示关节在第k-j采样时刻对应的目标力矩数据,j取1,2,3,4。
在上述优化的基础上,未知参数辨识模块33,具体可用于:
基于各所述目标状态数据,优化动力学模型中线性化参数模型部分的线性函数矩阵;获取为所述机械臂各关节预先设定的电机惯性力,并获取所述机械臂各关节运动时产生的关节摩擦力;根据各所述目标力矩数据及对应的电机惯性力和关节摩擦力,优化所述动力学模型中的力矩数据矩阵;根据所述线性函数矩阵及所述力矩数据矩阵,采用最小二乘法获取所述动力学模型中的未知动力学参数。
实施例四
图4为本发明实施例四提供的一种计算机设备的硬件结构示意图,如图4所示,本发明实施例四提供的计算机设备,包括:处理器41和存储装置42。该计算机设备中的处理器可以是一个或多个,图4中以一个处理器41为例,所述计算机设备中处理器41和存储装置42可通过总线或其他方式连接,图4中以通过总线连接为例。
该计算机设备中的存储装置42作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例中动力学模型参数辨识方法对应的程序指令/模块(例如,附图3所示的动力学模型参数辨识装置中的模块,包括:测量数据获取模块31、数据滤波处理模块32以及未知参数辨识模块33)。处理器41通过运行存储在存储装置42中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述方法实施例中动力学模型参数辨识方法。
存储装置42可包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储装置42可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置42可进一步包括相对于处理器41远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
并且,当上述计算机设备所包括一个或者多个程序被所述一个或者多个处理器41执行时,程序进行如下操作:
获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据;分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据;根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数。
此外,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被控制装置执行时实现本发明实施例一或实施例二提供的动力学模型参数辨识方法,该方法包括:获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据;分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据;根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (9)
1.一种动力学模型参数辨识方法,其特征在于,包括:
获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据,其中,所述设定激励轨迹为基于现有的参数辨识设定的用于控制机械臂各关节运动的轨迹,所述当前采样时刻根据由设定的采样周期实时确定;
分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据,所述滤波处理包括:卡尔曼滤波、中值滤波以及低通滤波;
根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数;
其中,所述根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数,包括:
基于各所述目标状态数据,优化动力学模型中线性化参数模型部分的线性函数矩阵;
获取为所述机械臂各关节预先设定的电机惯性力,并获取所述机械臂各关节运动时产生的关节摩擦力;
根据各所述目标力矩数据及对应的电机惯性力和关节摩擦力,优化所述动力学模型中的力矩数据矩阵;
根据所述线性函数矩阵及所述力矩数据矩阵,采用最小二乘法获取所述动力学模型中的未知动力学参数。
2.根据权利要求1所述的方法,其特征在于,所述分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据,包括:
采用设定的卡尔曼滤波策略处理各所述关节角度值,确定各所述关节在所述当前采样时刻对应的目标状态数据;
采用设定的低通滤波策略处理各所述力矩数据,确定各所述关节在所述当前采样时刻对应的目标力矩数据。
3.根据权利要求2所述的方法,其特征在于,所述采用设定的卡尔曼滤波策略处理各所述关节角度值,确定各所述关节在所述当前采样时刻对应的目标状态数据,包括:
获取各所述关节由上一采样时刻过渡到所述当前采样时刻时所产生过程误差的过程协方差矩阵;
获取在所述当前采样时刻测量各所述关节的关节角度值时所产生测量误差的测量协方差矩阵;
获取各所述关节在所述上一采样时刻确定的上一目标状态数据和上一整体误差的上一整体协方差矩阵;
将各所述过程协方差矩阵、测量协方差矩阵、上一目标状态数据、上一整体协方差矩阵以及各所述关节角度值作为卡尔曼滤波公式的已知信息,获得各所述关节在所述当前采样时刻对应的目标状态数据及整体误差的整体协方差矩阵。
5.根据权利要求2所述的方法,其特征在于,所述采用设定的低通滤波策略处理各所述力矩数据,确定各所述关节在所述当前采样时刻对应的目标力矩数据,包括:
将各所述力矩数据及各所述关节在历史采样时刻的历史目标力矩数据作为巴特沃斯滤波器所对应滤波公式的已知信息,获得各所述关节在所述当前采样时刻的目标力矩数据;
相应的,所述滤波公式表示为:
其中,ai和bi均为巴特沃斯滤波器中设定的滤波系数,i取1,2,3,4,5;k表示第k个采样时刻,y(k)表示关节在第k采样时刻的目标力矩数据;x(k)表示关节在第k采样时刻获得的力矩数据;y(k-j)表示关节在第k-j采样时刻对应的目标力矩数据,x(k-j)表示关节在第k-j采样时刻对应的目标力矩数据,j取1,2,3,4。
6.一种动力学模型参数辨识装置,其特征在于,包括:
测量数据获取模块,用于获取机械臂各关节沿设定激励轨迹运动时在当前采样时刻测量的关节角度值和力矩数据,其中,所述设定激励轨迹为基于现有的参数辨识设定的用于控制机械臂各关节运动的轨迹,所述当前采样时刻根据由设定的采样周期实时确定;
数据滤波处理模块,用于分别对各所述关节角度值以及各所述力矩数据进行滤波处理,获得各所述关节在所述当前采样时刻的目标状态数据和目标力矩数据,所述滤波处理包括:卡尔曼滤波、中值滤波以及低通滤波;
未知参数辨识模块,用于根据各所述目标状态数据及所述目标力矩数据优化动力学模型,并辨识所述动力学模型中的未知动力学参数;
其中,未知参数辨识模块具体用于:基于各所述目标状态数据,优化动力学模型中线性化参数模型部分的线性函数矩阵;获取为所述机械臂各关节预先设定的电机惯性力,并获取所述机械臂各关节运动时产生的关节摩擦力;根据各所述目标力矩数据及对应的电机惯性力和关节摩擦力,优化所述动力学模型中的力矩数据矩阵;根据所述线性函数矩阵及所述力矩数据矩阵,采用最小二乘法获取所述动力学模型中的未知动力学参数。
7.根据权利要求6所述的装置,其特征在于,所述数据滤波处理模块,包括:
状态数据确定单元,用于采用设定的卡尔曼滤波策略处理各所述关节角度值,确定各所述关节在所述当前采样时刻对应的目标状态数据;
目标力矩确定单元,用于采用设定的低通滤波策略处理各所述力矩数据,确定各所述关节在所述当前采样时刻对应的目标力矩数据。
8.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一项所述的动力学模型参数辨识方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的动力学模型参数辨识方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711070985.5A CN107703756B (zh) | 2017-11-03 | 2017-11-03 | 动力学模型参数辨识方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711070985.5A CN107703756B (zh) | 2017-11-03 | 2017-11-03 | 动力学模型参数辨识方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107703756A CN107703756A (zh) | 2018-02-16 |
CN107703756B true CN107703756B (zh) | 2021-03-02 |
Family
ID=61177816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711070985.5A Active CN107703756B (zh) | 2017-11-03 | 2017-11-03 | 动力学模型参数辨识方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107703756B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020011320A (ja) * | 2018-07-17 | 2020-01-23 | オムロン株式会社 | パラメータ同定装置、方法、及びプログラム |
CN109773784A (zh) * | 2018-12-28 | 2019-05-21 | 深圳市越疆科技有限公司 | 一种机器人的参数调整方法、装置及机器人 |
CN109645995B (zh) * | 2019-01-16 | 2021-09-07 | 杭州电子科技大学 | 基于肌电模型和无迹卡尔曼滤波的关节运动估计方法 |
CN110488608B (zh) * | 2019-08-14 | 2022-05-27 | 深圳市烨嘉为技术有限公司 | 用于驱控一体化控制***的智能化动力学参数辩识方法及模块 |
CN111055277B (zh) * | 2019-12-09 | 2023-06-06 | 上海新时达机器人有限公司 | 机器人柔性参数获取方法、装置、计算机设备及存储介质 |
CN111438692A (zh) * | 2020-04-17 | 2020-07-24 | 达闼机器人有限公司 | 机器人控制方法、装置、介质、设备以及机器人 |
CN111639749A (zh) * | 2020-05-25 | 2020-09-08 | 上海智殷自动化科技有限公司 | 一种基于深度学习的工业机器人摩擦力辨识方法 |
CN112199833B (zh) * | 2020-09-29 | 2023-12-29 | 深圳市优必选科技股份有限公司 | 关节动力学模型优化方法、***、终端设备及存储介质 |
CN112571420B (zh) * | 2020-12-21 | 2022-08-23 | 西北工业大学 | 一种未知参数下的双功能模型预测控制方法 |
CN113406964B (zh) * | 2021-05-19 | 2022-11-18 | 浙江华飞智能科技有限公司 | 运动参数调节方法、装置、存储介质及电子装置 |
CN114179126B (zh) * | 2021-12-07 | 2024-06-18 | 广东盈峰智能环卫科技有限公司 | 机械臂在线动力学辨识的方法、设备及存储介质 |
CN116038681B (zh) * | 2022-06-30 | 2024-06-18 | 北京理工大学 | 基于参数分离的机械臂动力学参数辨识方法及装置 |
CN117706931A (zh) * | 2023-12-15 | 2024-03-15 | 苏州康多机器人有限公司 | 手术机器人升降示教控制方法、装置、设备和介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1990138A1 (fr) * | 2007-05-11 | 2008-11-12 | Commissariat A L'Energie Atomique - CEA | Procédé de traitement pour la capture de mouvement d'une structure articulée |
CN101799934A (zh) * | 2010-04-02 | 2010-08-11 | 北京大学软件与微电子学院无锡产学研合作教育基地 | 一种基于微机电惯性传感网络的实时人体运动捕捉*** |
CN103278341A (zh) * | 2013-05-24 | 2013-09-04 | 清华大学 | 一种汽车驾驶员转向操纵舒适性评价***及方法 |
CN106029308A (zh) * | 2014-02-28 | 2016-10-12 | 索尼公司 | 机械臂设备、校准方法和程序 |
CN106125548A (zh) * | 2016-06-20 | 2016-11-16 | 珞石(北京)科技有限公司 | 工业机器人动力学模型参数辨识方法 |
CN106625666A (zh) * | 2016-12-16 | 2017-05-10 | 广州视源电子科技股份有限公司 | 冗余机械臂的控制方法及装置 |
CN107097231A (zh) * | 2017-07-06 | 2017-08-29 | 哈尔滨工业大学深圳研究生院 | 一种基于视觉伺服的同心管机器人精确运动控制方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407719B (zh) * | 2016-10-25 | 2019-01-18 | 华南理工大学 | 一种快速收敛的机器人动力学参数辨识轨迹优化方法 |
-
2017
- 2017-11-03 CN CN201711070985.5A patent/CN107703756B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1990138A1 (fr) * | 2007-05-11 | 2008-11-12 | Commissariat A L'Energie Atomique - CEA | Procédé de traitement pour la capture de mouvement d'une structure articulée |
CN101799934A (zh) * | 2010-04-02 | 2010-08-11 | 北京大学软件与微电子学院无锡产学研合作教育基地 | 一种基于微机电惯性传感网络的实时人体运动捕捉*** |
CN103278341A (zh) * | 2013-05-24 | 2013-09-04 | 清华大学 | 一种汽车驾驶员转向操纵舒适性评价***及方法 |
CN106029308A (zh) * | 2014-02-28 | 2016-10-12 | 索尼公司 | 机械臂设备、校准方法和程序 |
CN106125548A (zh) * | 2016-06-20 | 2016-11-16 | 珞石(北京)科技有限公司 | 工业机器人动力学模型参数辨识方法 |
CN106625666A (zh) * | 2016-12-16 | 2017-05-10 | 广州视源电子科技股份有限公司 | 冗余机械臂的控制方法及装置 |
CN107097231A (zh) * | 2017-07-06 | 2017-08-29 | 哈尔滨工业大学深圳研究生院 | 一种基于视觉伺服的同心管机器人精确运动控制方法 |
Non-Patent Citations (1)
Title |
---|
串联弹性关节控制与交互刚度辨识;吕铖杰;《中国优秀硕士学位论文全文数据库 信息科技辑》;中国学术期刊(光盘版)电子杂志社;20151215(第 12 期);第37-50页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107703756A (zh) | 2018-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107703756B (zh) | 动力学模型参数辨识方法、装置、计算机设备及存储介质 | |
CN109959381B (zh) | 一种定位方法、装置、机器人及计算机可读存储介质 | |
CN110355751B (zh) | 控制装置和机器学习装置 | |
CN110799309B (zh) | 具有配置相关动力学的***的振动控制 | |
CN111278613B (zh) | 校准装置、校准方法和控制装置 | |
JP5001101B2 (ja) | 移動ロボットの姿勢推定装置および方法 | |
CN110770664A (zh) | 一种导航路径跟踪控制方法、设备、移动机器人及*** | |
CN114450131A (zh) | 机器人***的无导数模型学习***及设计 | |
CN110345936B (zh) | 运动装置的轨迹数据处理方法及其处理*** | |
CN110941183A (zh) | 一种基于神经网络的工业机器人动力学辨识方法 | |
CN111469130A (zh) | 机器人的控制方法及装置、存储介质和处理器 | |
CN111989631A (zh) | 自身位置推定方法 | |
CN114274147B (zh) | 目标跟踪控制方法及装置、机械臂控制设备和存储介质 | |
KR101685151B1 (ko) | 캘리브레이션 장치 | |
CN109764876B (zh) | 无人平台的多模态融合定位方法 | |
CN115229780A (zh) | 机械臂运动路径规划方法及装置 | |
CN111185908B (zh) | 识别摩擦力的机器人控制方法、装置、机器人及存储介质 | |
CN111761583A (zh) | 一种智能机器人运动定位方法及*** | |
CN111076724A (zh) | 三维激光定位方法及*** | |
CN114111772B (zh) | 一种基于数据手套的水下机器人软体作业手位置跟踪方法 | |
US12014551B2 (en) | Method, device, computer program and computer program product for providing a trajectory of an object for a vehicle | |
Valera et al. | Design and implementation of Kalman filters applied to Lego NXT based robots | |
Janiszewski et al. | Kalman filter sensor fusion for multi-head position encoder | |
CN117325149A (zh) | 基于卡尔曼滤波的姿态调整方法及*** | |
CN114127643B (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 |