一种机器人谐波传动关节实际力矩值的获取方法及装置与流程

文档序号:17439026发布日期:2019-04-17 04:30阅读:192来源:国知局
一种机器人谐波传动关节实际力矩值的获取方法及装置与流程

本发明涉及一种力矩值的获取方法及装置,更具体涉及一种机器人谐波传动关节实际力矩值的获取方法及装置。



背景技术:

基于柔性误差模型,利用电机电流、电机端位置信息和连杆端位置信息,可以测量谐波传动关节实际力矩。

但是,利用电机端和连杆端的位置误差来拟合谐波传动关节实际力矩时,对谐波传动关节柔性进行建模需要精确的参数。模型中的参数选择直接影响柔性模型精度。谐波传动柔性建模过程中,大多使用的是拟合公式和经验公式,导致模型产生固有误差。

因此,现有技术中存在获取的机器人谐波传动关节实际力矩值的精确性不高的问题。



技术实现要素:

本发明所要解决的技术问题在于提供了一种机器人谐波传动关节实际力矩值的获取方法及装置,以提高获取的机器人谐波传动关节实际力矩值的准确性。

本发明是通过以下技术方案解决上述技术问题的:

本发明实施例提供了一种机器人谐波传动关节实际力矩值的获取方法,所述方法包括:

1)、利用谐波传动关节柔性误差模型,根据谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据获取谐波传动关节输出力矩模型值的集合;

2)、获取样本数据集合,使用所述样本数据集合训练机器学习模型,然后根据所述谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据,获取所述谐波传动关节输出力矩的预测值;

3)、对所述谐波传动关节输出力矩模型值以及所述预测值均值进行滤波处理,得到所述谐波传动关节输出力矩模型值对应的实际力矩值。

可选的,所述步骤1),包括:

利用公式,计算谐波传动关节的谐波传动变形角度,其中,

δθf为谐波传动关节的谐波传动变形角度;qd为谐波传动关节的连杆端的位置信号;qm为电机端的位置信号;sgn()为符号函数;kω为谐波传动关节中的波发生器的刚度系数;ii为电机电流;cω为谐波传动关节中的波发生器的滞后系数;l为谐波传动关节中的谐波减速器减速比;e为自然底数;||为求模函数;θerr为电机输端与连接杆输出端之间的柔性误差;i为电机电流参数的数量;

利用公式,计算柔性传动扭转角,其中,

δθ为柔性传动扭转角;δθω为波发生器的输入的扭转角;为波发生器输出扭转角;l谐波传动关节变速器的传动比;

利用公式,τf=a1δθ+a2δθ2+a3δθ3,计算谐波传动关节柔性输出力矩,进而获取谐波传动关节输出力矩模型值的集合,其中,

τf为谐波传动关节柔性输出力矩;a1为预设的第一参数;a2为预设的第二参数;a3为预设的第三参数;

利用公式,计算谐波传动关节输出力矩模型值,其中,

τmodel为谐波传动关节输出力矩模型值;tan()为正切函数;cf为预设的第一常量;kfo为预设的第二常量。

可选的,所述步骤2)包括:

a:以所述谐波传动关节实际输出力矩值为目标,将所述样本数据集合分成多个子集合,然后将各个子集合分别输入各个局部高斯过程机器学习模型中进行训练,其中,所述样本数据包括:谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号、电机电流数据以及谐波传动关节的实际力矩值;

b:将步骤1)中的谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据输入到所述训练后得到的局部高斯过程机器学习模型中,计算所述样本数据到各个局部高斯过程机器学习模型的距离,并获取距离最大值对应的局部高斯过程机器学习模型;

c:获取所述谐波传动关节输出力矩的位置因子,判断所述位置因子中的各个距离参数中的最大值是否小于预设阈值;

d:若是,更新局部高斯过程机器学习模型,并将更新后的局部高斯过程机器学习模型的中心点作为新的拟合点;返回执行所述b步骤,直至所述c步骤的判断结果为否;

e:若否,根据各个局部高斯过程机器学习模型输出的所述谐波传动关节输出力矩的预测值的加权平均值,计算所述谐波传动关节输出力矩的预测值对应的预测值均值。

可选的,所述步骤a包括:

a1:将所述样本数据集合分成多个子集合,然后将各个子集合分别输入各个局部高斯过程机器学习模型中进行训练,其中,所述子集合是根据所述子集合中的样本数据的位置因子与所述局部高斯过程机器学习模型的中心点的距离确定的;

a2:针对各个局部高斯过程机器学习模型,利用公式,计算预测值均值,其中,

f(x*)为预测值均值;y为上一次迭代的局部高斯过程机器学习模型的预测值;α为预测向量;x*为样本数据;为高斯噪声的方差;i为训练样本的电流矩阵;()t为转置矩阵;k为当前次迭代时的协方差矩阵;

a3:利用公式,计算当前次迭代时初始预测值对应的协方差,其中,

v(x*)为当前次迭代时初始预测值对应的协方差;k()为协方差计算函数;k*为所述局部高斯过程机器学习模型在上次迭代时的协方差;k为协方差矩阵;x*为样本数据;为高斯噪声的方差;i为训练样本的电流矩阵;()t为转置矩阵;

a4:判断所述协方差与预设的协方差之间的差值,以及预测均值与实际力矩值的差值是否均在预设范围内;

a5:若是,将所述局部高斯过程机器学习模型作为训练后的局部高斯过程机器学习模型;

a6:若否,更新局部高斯过程机器学习模型的参数,并返回执行a2步骤,直至得到训练后的局部高斯过程机器学习模型。

可选的,获取所述谐波传动关节输出力矩的位置因子,包括:

利用公式,计算谐波传动关节输出力矩的位置因子,其中,

wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数;exp()为以自然底数为底的指数函数;x为输入样本数据的子集合;ck为各个局部高斯过程机器学习模型的中心点的位置参数;()t为转置矩阵;w为与局部高斯过程机器学习模型宽度相同的对角矩阵;k为局部高斯过程机器学习模型的个数;

利用公式,w(x,o)=[w1,...,wk],获取谐波传动关节输出力矩的位置因子,其中,

w(x,o)为输入样本对应的谐波传动关节数据力矩的位置因子;x为输入样本数据的子集合;o为各个局部高斯过程机器学习模型的中心点构成的矩阵;w1为谐波传动关节输出力矩模型值相对于第1个局部高斯过程机器学习模型的位置参数;wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数。

可选的,所述更新局部高斯过程机器学习模型,包括:

获取新的局部高斯过程机器学习模型,并将所述新的局部高斯过程机器学习模型中作为更新后的局部高斯过程机器学习模型。

可选的,所述步骤e,包括:

利用公式,获取样本数据在各个局部高斯过程机器学习模型中出现的概率,其中,

p(k|x)为样本数据x在第k个局部高斯过程机器学习模型中出现的概率;x为样本数据;k为局部高斯过程机器学习模型的数量;m为获取的与所述谐波传动关节输出力矩模型值对应的局部高斯过程机器学习模型的个数;wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数;

利用公式,计算谐波传动关节输出力矩模型值对应的预测值均值,其中,

为谐波传动关节输出力矩模型值对应的预测值均值;为第k个局部高斯过程机器学习模型的预测值。

本发明实施例提供了一种机器人谐波传动关节实际力矩值的获取装置,所述装置包括:

输出模块,用于利用谐波传动关节柔性误差模型,根据谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据获取谐波传动关节输出力矩模型值的集合;

获取模块,用于获取样本数据集合,使用所述样本数据集合训练机器学习模型,然后根据所述谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据,获取所述谐波传动关节输出力矩的预测值;

滤波模块,用于对所述谐波传动关节输出力矩模型值以及所述预测值均值进行滤波处理,得到所述谐波传动关节输出力矩模型值对应的实际力矩值。

可选的,所述输出模块,还用于:

利用公式,计算谐波传动关节的谐波传动变形角度,其中,

δθf为谐波传动关节的谐波传动变形角度;qd为谐波传动关节的连杆端的位置信号;qm为电机端的位置信号;sgn()为符号函数;kω为谐波传动关节中的波发生器的刚度系数;ii为电机电流;cω为谐波传动关节中的波发生器的滞后系数;l为谐波传动关节中的谐波减速器减速比;e为自然底数;||为求模函数;θerr为电机输端与连接杆输出端之间的柔性误差;i为电机电流参数的数量;

利用公式,计算柔性传动扭转角,其中,

δθ为柔性传动扭转角;δθω为波发生器的输入的扭转角;为波发生器输出扭转角;l谐波传动关节变速器的传动比;

利用公式,τf=a1δθ+a2δθ2+a3δθ3,计算谐波传动关节柔性输出力矩,进而获取谐波传动关节输出力矩模型值的集合,其中,

τf为谐波传动关节柔性输出力矩;a1为预设的第一参数;a2为预设的第二参数;a3为预设的第三参数;

利用公式,计算谐波传动关节输出力矩模型值,其中,

τmodel为谐波传动关节输出力矩模型值;tan()为正切函数;cf为预设的第一常量;kfo为预设的第二常量。

可选的,所述获取模块,还用于:

a:以所述谐波传动关节实际输出力矩值为目标,将所述样本数据集合分成多个子集合,然后将各个子集合分别输入各个局部高斯过程机器学习模型中进行训练,其中,所述样本数据包括:谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号、电机电流数据以及谐波传动关节的实际力矩值;

b:将步骤1)中的谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据输入到所述训练后得到的局部高斯过程机器学习模型中,计算所述样本数据到各个局部高斯过程机器学习模型的距离,并获取距离最大值对应的局部高斯过程机器学习模型;

c:获取所述谐波传动关节输出力矩的位置因子,判断所述位置因子中的各个距离参数中的最大值是否小于预设阈值;

d:若是,更新局部高斯过程机器学习模型,并将更新后的局部高斯过程机器学习模型的中心点作为新的拟合点;返回执行所述b步骤,直至所述c步骤的判断结果为否;

e:若否,根据各个局部高斯过程机器学习模型输出的所述谐波传动关节输出力矩的预测值的加权平均值,计算所述谐波传动关节输出力矩的预测值对应的预测值均值。

可选的,所述获取模块,还用于:

a1:将所述样本数据集合分成多个子集合,然后将各个子集合分别输入各个局部高斯过程机器学习模型中进行训练,其中,所述子集合是根据所述子集合中的样本数据的位置因子与所述局部高斯过程机器学习模型的中心点的距离确定的;

a2:针对各个局部高斯过程机器学习模型,利用公式,计算预测值均值,其中,

f(x*)为预测值均值;y为上一次迭代的局部高斯过程机器学习模型的预测值;α为预测向量;x*为样本数据;为高斯噪声的方差;i为训练样本的电流矩阵;()t为转置矩阵;k为当前次迭代时的协方差矩阵;

a3:利用公式,计算当前次迭代时初始预测值对应的协方差,其中,

v(x*)为当前次迭代时初始预测值对应的协方差;k()为协方差计算函数;k*为所述局部高斯过程机器学习模型在上次迭代时的协方差;k为协方差矩阵;x*为样本数据;为高斯噪声的方差;i为训练样本的电流矩阵;()t为转置矩阵;

a4:判断所述协方差与预设的协方差之间的差值,以及预测均值与实际力矩值的差值是否均在预设范围内;

a5:若是,将所述局部高斯过程机器学习模型作为训练后的局部高斯过程机器学习模型;

a6:若否,更新局部高斯过程机器学习模型的参数,并返回执行a2步骤,直至得到训练后的局部高斯过程机器学习模型。

可选的,所述获取模块,还用于:

利用公式,计算谐波传动关节输出力矩的位置因子,其中,

wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数;exp()为以自然底数为底的指数函数;x为输入样本数据的子集合;ck为各个局部高斯过程机器学习模型的中心点的位置参数;()t为转置矩阵;w为与局部高斯过程机器学习模型宽度相同的对角矩阵;k为局部高斯过程机器学习模型的个数;

利用公式,w(x,o)=[w1,...,wk],获取谐波传动关节输出力矩的位置因子,其中,

w(x,o)为输入样本对应的谐波传动关节数据力矩的位置因子;x为输入样本数据的子集合;o为各个局部高斯过程机器学习模型的中心点构成的矩阵;w1为谐波传动关节输出力矩模型值相对于第1个局部高斯过程机器学习模型的位置参数;wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数。

可选的,所述获取模块,还用于:

获取新的局部高斯过程机器学习模型,并将所述新的局部高斯过程机器学习模型中作为更新后的局部高斯过程机器学习模型。

可选的,所述获取模块,还用于:

利用公式,获取样本数据在各个局部高斯过程机器学习模型中出现的概率,其中,

p(k|x)为样本数据x在第k个局部高斯过程机器学习模型中出现的概率;x为样本数据;k为局部高斯过程机器学习模型的数量;m为获取的与所述谐波传动关节输出力矩模型值对应的局部高斯过程机器学习模型的个数;wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数;

利用公式,计算谐波传动关节输出力矩模型值对应的预测值均值,其中,

为谐波传动关节输出力矩模型值对应的预测值均值;为第k个局部高斯过程机器学习模型的预测值。

本发明相比现有技术具有以下优点:

应用本发明实施例,融合柔性误差模型和机器学习方法,实现谐波传动关节实际力矩的辨识和测量,相对于现有技术依赖柔性误差模型的拟合参数,提高了柔性误差模型计算柔性谐波传动关节输出力矩的计算精度。

附图说明

图1为本发明实施例提供的一种机器人谐波传动关节实际力矩值的获取方法的流程示意图;

图2为本发明实施例提供的一种机器人谐波传动关节实际力矩值的获取方法中机器学习的流程示意图;

图3为本发明实施例提供的一种机器人谐波传动关节实际力矩值的获取装置的结构示意图。

具体实施方式

下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。

为解决现有技术问题,本发明实施例提供了一种机器人谐波传动关节实际力矩值的获取方法及装置,下面首先就本发明实施例提供的一种机器人谐波传动关节实际力矩值的获取方法进行介绍。

图1为本发明实施例提供的一种机器人谐波传动关节实际力矩值的获取方法的流程示意图;图2为本发明实施例提供的一种机器人谐波传动关节实际力矩值的获取方法中机器学习的流程示意图;如图1和图2所示,所述方法包括:

s101:利用谐波传动关节柔性误差模型,根据谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据获取谐波传动关节输出力矩模型值的集合。

具体的,可以利用公式,计算谐波传动关节的谐波传动变形角度,其中,

δθf为谐波传动关节的谐波传动变形角度;qd为谐波传动关节的连杆端的位置信号;qm为电机端的位置信号;sgn()为符号函数;kω为谐波传动关节中的波发生器的刚度系数;ii为电机电流;cω为谐波传动关节中的波发生器的滞后系数;l为谐波传动关节中的谐波减速器减速比;e为自然底数;||为求模函数;θerr为电机输端与连接杆输出端之间的柔性误差;i为电机电流参数的数量;

利用公式,计算柔性传动扭转角,其中,

δθ为柔性传动扭转角;δθω为波发生器的输入的扭转角;为波发生器输出扭转角;l谐波传动关节变速器的传动比;

利用公式,τf=a1δθ+a2δθ2+a3δθ3,计算谐波传动关节柔性输出力矩,进而获取谐波传动关节输出力矩模型值的集合,其中,

τf为谐波传动关节柔性输出力矩;a1为预设的第一参数;a2为预设的第二参数;a3为预设的第三参数;

利用公式,计算谐波传动关节输出力矩模型值,其中,

τmodel为谐波传动关节输出力矩模型值;tan()为正切函数;cf为预设的第一常量;kfo为预设的第二常量。

在实际应用中,柔性关节由减速器和电机构成的系统,其中,减速器包括:柔性齿轮和波发生器,且减速器的一端与机器人关节的输出轴连接,减速器的另一端与机器人关节中的电机的转子连接;电机的定子与机器人关节的底座连接。

s102:获取样本数据集合,使用所述样本数据集合训练机器学习模型,然后根据所述谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据,获取所述谐波传动关节输出力矩的预测值。

具体的,所述步骤s102可以包括:

a:以所述谐波传动关节实际输出力矩值为目标,将所述样本数据集合分成多个子集合,然后将各个子集合分别输入各个局部高斯过程机器学习模型中进行训练,其中,所述样本数据包括:谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号、电机电流数据以及谐波传动关节的实际力矩值。

在实际应用中,步骤a可以包括以下步骤:

a1:将所述样本数据集合分成多个子集合,然后将各个子集合分别输入各个局部高斯过程机器学习模型中进行训练,其中,所述子集合是根据所述子集合中的样本数据的位置因子与所述局部高斯过程机器学习模型的中心点的距离确定的;

在实际应用中,局部高斯过程机器学习模型可以为:

其中,

y为所述谐波传动关节输出力矩的预测值;h()为局部高斯过程机器学习模型;k(x,x)为西方差矩阵;为高斯噪声的方差;i为训练样本的电流矩阵;x为训练样本中包含的谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据构成的矩阵。

另外,为了提高所训练的模型的准确度,训练局部高斯过程机器学习模型的过程可以使用三组样本数据:分别利用空载试验采集数据、定负载试验采集数据、变负载试验采集数据进行关节实际力矩学习训练,例如,空载试验采集数据可以包括140940个训练点数据以及5560个测量点数据;定负载试验采集数据可以包括136220个训练点数据以及5500个测量点数据;变负载试验采集数据可以包括135720个训练点数据以及5000个测量点数据。为了降低训练时的计算量,可以通过训练样本中通过电机输入端位置信号划分该样本对应的输入数据区间,即按照每个控制周期内的样本数据中的电机输入端位置信号到模型中心的距离是否大于设定值值进行划分,当电机输入端位置信号到局部模型中心的距离决定以后,就可以根据wk将样本数据分配到阈值容许的局部模型中训练。

a2:针对各个局部高斯过程机器学习模型,利用公式,计算预测值均值,其中,

f(x*)为预测值均值;y为上一次迭代的局部高斯过程机器学习模型的预测值;α为预测向量;x*为样本数据;为高斯噪声的方差;i为训练样本的电流矩阵;()t为转置矩阵;k为当前次迭代时的协方差矩阵。

a3:利用公式,计算当前次迭代时初始预测值对应的协方差,其中,

v(x*)为当前次迭代时初始预测值对应的协方差;k()为协方差计算函数;k*为所述局部高斯过程机器学习模型在上次迭代时的协方差;k为协方差矩阵;x*为样本数据;为高斯噪声的方差;i为训练样本的电流矩阵;()t为转置矩阵;

a4:判断所述协方差与预设的协方差之间的差值,以及预测均值与实际力矩值的差值是否均在预设范围内;

a5:若是,将所述局部高斯过程机器学习模型作为训练后的局部高斯过程机器学习模型;

a6:若否,更新局部高斯过程机器学习模型的参数,并返回执行a2步骤,直至得到训练后的局部高斯过程机器学习模型。

b:将步骤s102步骤中的谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据输入到所述训练后得到的局部高斯过程机器学习模型中,计算所述样本数据到各个局部高斯过程机器学习模型的距离,并获取距离最大值对应的局部高斯过程机器学习模型;

c:获取所述谐波传动关节输出力矩的位置因子,判断所述位置因子中的各个距离参数中的最大值是否小于预设阈值;

在实际应用中,可以利用公式,计算谐波传动关节输出力矩的位置因子,其中,

wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数;exp()为以自然底数为底的指数函数;x为输入样本数据的子集合;ck为各个局部高斯过程机器学习模型的中心点的位置参数;()t为转置矩阵;w为与局部高斯过程机器学习模型宽度相同的对角矩阵;k为局部高斯过程机器学习模型的个数;

利用公式,w(x,o)=[w1,...,wk],获取谐波传动关节输出力矩的位置因子,其中,

w(x,o)为输入样本对应的谐波传动关节数据力矩的位置因子;x为输入样本数据的子集合;o为各个局部高斯过程机器学习模型的中心点构成的矩阵;w1为谐波传动关节输出力矩模型值相对于第1个局部高斯过程机器学习模型的位置参数;wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数。

d:若是,更新局部高斯过程机器学习模型,并将更新后的局部高斯过程机器学习模型的中心点作为新的拟合点;返回执行所述b步骤,直至所述c步骤的判断结果为否;

具体的,可以获取新的局部高斯过程机器学习模型,并将所述新的局部高斯过程机器学习模型中作为更新后的局部高斯过程机器学习模型。在实际应用中,新的高斯过程机器学习模型是指使用新的模型参数得到的局部高斯过程机器学习模型。

e:若否,根据各个局部高斯过程机器学习模型输出的所述谐波传动关节输出力矩的预测值的加权平均值,计算所述谐波传动关节输出力矩的预测值对应的预测值均值。

在实际应用中,可以利用公式,获取样本数据在各个局部高斯过程机器学习模型中出现的概率,其中,

p(k|x)为样本数据x在第k个局部高斯过程机器学习模型中出现的概率;x为样本数据;k为局部高斯过程机器学习模型的数量;m为获取的与所述谐波传动关节输出力矩模型值对应的局部高斯过程机器学习模型的个数;wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数;

利用公式,计算谐波传动关节输出力矩模型值对应的预测值均值,其中,

为谐波传动关节输出力矩模型值对应的预测值均值;为第k个局部高斯过程机器学习模型的预测值。

应用本发明上述实施例,当位置因子中的各个距离参数中的最大值大于预设阈值时,会自动更新局部高斯过程机器学习模型,样本数据就会进入新的局部高斯过程机器学习模型中进行训练。这就保证了样本数据复杂时,局部模型个数自动增加,通过这种分配方式,还可以使协方差逆矩阵得到更新。

s103:对所述谐波传动关节输出力矩模型值以及所述预测值均值进行滤波处理,得到所述谐波传动关节输出力矩模型值对应的实际力矩值。

具体的,滤波处理的过程可以为将离散型高于设定值的力矩值过滤掉。

应用本发明图1所示实施例,融合柔性误差模型和机器学习方法,实现谐波传动关节实际力矩的辨识和测量,相对于现有技术依赖柔性误差模型的拟合参数,提高了柔性误差模型计算柔性谐波传动关节输出力矩的计算精度。

与本发明图1所示实施例相对应,本发明实施例还提供了一种机器人谐波传动关节实际力矩值的获取装置。

图3为本发明实施例提供的一种机器人谐波传动关节实际力矩值的获取装置的结构示意图,如图3所示,所述装置包括:

输出模块301,用于利用谐波传动关节柔性误差模型,根据谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据获取谐波传动关节输出力矩模型值的集合;

获取模块302,用于获取样本数据集合,使用所述样本数据集合训练机器学习模型,然后根据所述谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据,获取所述谐波传动关节输出力矩的预测值;

滤波模块303,用于对所述谐波传动关节输出力矩模型值以及所述预测值均值进行滤波处理,得到所述谐波传动关节输出力矩模型值对应的实际力矩值。

应用本发明图3所示实施例,融合柔性误差模型和机器学习方法,实现谐波传动关节实际力矩的辨识和测量,相对于现有技术依赖柔性误差模型的拟合参数,提高了柔性误差模型计算柔性谐波传动关节输出力矩的计算精度。

在本发明实施例的一种具体实施方式中,所述输出模块301,还用于:

利用公式,计算谐波传动关节的谐波传动变形角度,其中,

δθf为谐波传动关节的谐波传动变形角度;qd为谐波传动关节的连杆端的位置信号;qm为电机端的位置信号;sgn()为符号函数;kω为谐波传动关节中的波发生器的刚度系数;ii为电机电流;cω为谐波传动关节中的波发生器的滞后系数;l为谐波传动关节中的谐波减速器减速比;e为自然底数;||为求模函数;θerr为电机输端与连接杆输出端之间的柔性误差;i为电机电流参数的数量;

利用公式,计算柔性传动扭转角,其中,

δθ为柔性传动扭转角;δθω为波发生器的输入的扭转角;为波发生器输出扭转角;l谐波传动关节变速器的传动比;

利用公式,τf=a1δθ+a2δθ2+a3δθ3,计算谐波传动关节柔性输出力矩,进而获取谐波传动关节输出力矩模型值的集合,其中,

τf为谐波传动关节柔性输出力矩;a1为预设的第一参数;a2为预设的第二参数;a3为预设的第三参数;

利用公式,计算谐波传动关节输出力矩模型值,其中,

τmodel为谐波传动关节输出力矩模型值;tan()为正切函数;cf为预设的第一常量;kfo为预设的第二常量。

在本发明实施例的一种具体实施方式中,所述获取模块302,还用于:

a:以所述谐波传动关节实际输出力矩值为目标,将所述样本数据集合分成多个子集合,然后将各个子集合分别输入各个局部高斯过程机器学习模型中进行训练,其中,所述样本数据包括:谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号、电机电流数据以及谐波传动关节的实际力矩值;

b:将步骤1)中的谐波传动关节的电机端的位置信号、谐波传动关节的连杆端的位置信号以及电机电流数据输入到所述训练后得到的局部高斯过程机器学习模型中,计算所述样本数据到各个局部高斯过程机器学习模型的距离,并获取距离最大值对应的局部高斯过程机器学习模型;

c:获取所述谐波传动关节输出力矩的位置因子,判断所述位置因子中的各个距离参数中的最大值是否小于预设阈值;

d:若是,更新局部高斯过程机器学习模型,并将更新后的局部高斯过程机器学习模型的中心点作为新的拟合点;返回执行所述b步骤,直至所述c步骤的判断结果为否;

e:若否,根据各个局部高斯过程机器学习模型输出的所述谐波传动关节输出力矩的预测值的加权平均值,计算所述谐波传动关节输出力矩的预测值对应的预测值均值。

在本发明实施例的一种具体实施方式中,所述获取模块302,还用于:

a1:将所述样本数据集合分成多个子集合,然后将各个子集合分别输入各个局部高斯过程机器学习模型中进行训练,其中,所述子集合是根据所述子集合中的样本数据的位置因子与所述局部高斯过程机器学习模型的中心点的距离确定的;

a2:针对各个局部高斯过程机器学习模型,利用公式,计算预测值均值,其中,

f(x*)为预测值均值;y为上一次迭代的局部高斯过程机器学习模型的预测值;α为预测向量;x*为样本数据;为高斯噪声的方差;i为训练样本的电流矩阵;()t为转置矩阵;k为当前次迭代时的协方差矩阵;

a3:利用公式,计算当前次迭代时初始预测值对应的协方差,其中,

v(x*)为当前次迭代时初始预测值对应的协方差;k()为协方差计算函数;k*为所述局部高斯过程机器学习模型在上次迭代时的协方差;k为协方差矩阵;x*为样本数据;为高斯噪声的方差;i为训练样本的电流矩阵;()t为转置矩阵;

a4:判断所述协方差与预设的协方差之间的差值,以及预测均值与实际力矩值的差值是否均在预设范围内;

a5:若是,将所述局部高斯过程机器学习模型作为训练后的局部高斯过程机器学习模型;

a6:若否,更新局部高斯过程机器学习模型的参数,并返回执行a2步骤,直至得到训练后的局部高斯过程机器学习模型。

在本发明实施例的一种具体实施方式中,所述获取模块302,还用于:

利用公式,计算谐波传动关节输出力矩的位置因子,其中,

wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数;exp()为以自然底数为底的指数函数;x为输入样本数据的子集合;ck为各个局部高斯过程机器学习模型的中心点的位置参数;()t为转置矩阵;w为与局部高斯过程机器学习模型宽度相同的对角矩阵;k为局部高斯过程机器学习模型的个数;

利用公式,w(x,o)=[w1,...,wk],获取谐波传动关节输出力矩的位置因子,其中,

w(x,o)为输入样本对应的谐波传动关节数据力矩的位置因子;x为输入样本数据的子集合;o为各个局部高斯过程机器学习模型的中心点构成的矩阵;w1为谐波传动关节输出力矩模型值相对于第1个局部高斯过程机器学习模型的位置参数;wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数。

在本发明实施例的一种具体实施方式中,所述获取模块302,还用于:

获取新的局部高斯过程机器学习模型,并将所述新的局部高斯过程机器学习模型中作为更新后的局部高斯过程机器学习模型。

在本发明实施例的一种具体实施方式中,所述获取模块302,还用于:

利用公式,获取样本数据在各个局部高斯过程机器学习模型中出现的概率,其中,

p(k|x)为样本数据x在第k个局部高斯过程机器学习模型中出现的概率;x为样本数据;k为局部高斯过程机器学习模型的数量;m为获取的与所述谐波传动关节输出力矩模型值对应的局部高斯过程机器学习模型的个数;wk为谐波传动关节输出力矩模型值相对于第k个局部高斯过程机器学习模型的位置参数;

利用公式,计算谐波传动关节输出力矩模型值对应的预测值均值,其中,

为谐波传动关节输出力矩模型值对应的预测值均值;为第k个局部高斯过程机器学习模型的预测值。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1