一种基于梯度优化的机床进给系统数理模型参数辨识方法与流程

未命名 08-13 阅读:121 评论:0


1.本发明属于数控机床相关技术领域,更具体地,涉及一种基于梯度优化的机床进给系统数理模型参数辨识方法。


背景技术:

2.数控机床,作为一种高效率、高精度、高自动化的加工设备,在制造业中具有十分重要的地位,广泛应用于航空航天、汽车、核电、医疗机械、工程机械等领域。数控机床结构复杂,建立机床的数理模型有助于分析机床的动态特性,对提高机床的加工精度,改善机床动态特性有着重要作用。
3.机床进给系统的数理模型主要涉及伺服控制系统和机械传动系统。进给系统参数辨识的目的是使得搭建的进给系统仿真模型具有更高的仿真精度,能够更加准确地反映真实机床进给系统的动态特性,从而使仿真模型能为提高机床进给系统的动态性能、提高跟踪精度、加工效率和加工质量提供更好的帮助。
4.机床进给系统是复杂的机电耦合系统,进给系统数理模型往往包含大量的参数,其中存在一些难以通过测量和查表直接得到的参数,如工作台质量,工作台摩擦参数,进给系统刚度和阻尼等。进给系统参数辨识的主要对象就是这些难以确定又对进给系统的动态特性有显著影响的参数。
5.现有的对数理模型的多参数同时辨识的方法多基于遗传算法,如专利cn102540894b基于遗传算法来辨识机械手的参数,专利cn110543727b基于改进的粒子群算法来辨识机器人的参数,使用粒子群等遗传算法来辨识参数时,辨识过程中参数的更新往往为随机取值,算法收敛速度较慢,参数辨识的效率不高,本专利在参数辨识过程中,根据模型参数与模型仿真误差之间的梯度信息来更新模型参数,算法收敛更快,参数辨识效率更高。专利cn114169230a基于反向传播算法辨识机器人动力学参数,但是辨识过程中,待辨识的动力学参数没有进行灵敏度分析,所有的参数均使用相同的损失函数来计算梯度,当参数与损失函数之间的灵敏度较低时,则梯度小,参数更新步长小,算法收敛较慢,本专利分析模型参数与不同类型的模型仿真结果之间的灵敏度,计算每个参数的梯度时,使用最为灵敏的模型仿真结果来构建损失函数,提高了算法收敛的速度,参数辨识效率更高。


技术实现要素:

6.针对现有技术的以上缺陷或改进需求,本发明提供了一种基于梯度优化的机床进给系统数理模型参数辨识方法,解决数理模型参数辨识效率低的问题。
7.为实现上述目的,按照本发明,提供了一种基于梯度优化的机床进给系统数理模型参数辨识方法,该辨识方法包括下列步骤:
8.s1建立机床进给系统的数理模型,并确定待辨识参数的上下界;
9.s2预设指令位置信号,根据该预指令位置信号运行机床并采集机床实际运行数据;设定初始的待辨识参数;构建待辨识参数更新模型;
10.s3将预设指令位置信号和当前的待辨识参数输入所述待辨识参数更新模型中,以此更新所述待辨识参数,将更新后的辨识参数和指令位置信号输入所述数理模型中仿真获得仿真结果,利用步骤s2采集的机床实际运行数据和该仿真结果计算损失函数,判断当前损失函数与最优损失函数之间的关系:
11.当前损失函数小于当前最优损失函数时,将当前待辨识参数的值作为最优待辨识参数,同时将损失函数增大次数置零,当前损失函数作为当前最优损失函数;
12.当前损失函数大于当前最优损失函数时,损失函数增大次数增加,判断当前损失函数增大次数是否大于预设最大损失函数增大次数,是则损失函数增大次数置零,并更新所述待辨识参数更新模型中的学习率和步长;否则,进入下个步骤;
13.s4更新迭代次数,判断当前迭代次数是否达到预设最大迭代次数,是,则输出当前待辨识参数;否,则返回步骤s3。
14.进一步优选地,在步骤s2中,所述待辨识参数更新模型按照下列进行:
15.s21对于所述待辨识参数中的任意一个辨识参数,利用所述步长更新该辨识参数,将更新后的辨识参数输入所述数理模型中仿真获得仿真结果,利用该仿真结果与步骤s2中的机床实际运行数据计算参数梯度;
16.s22重复步骤s21直至获得所述待辨识参数中每个辨识参数对应的参数梯度,所有辨识参数的参数梯度构成参数梯度集合,利用该参数梯度集合更新所述待辨识参数,以此实现待辨识参数的更新。
17.进一步优选地,在步骤s1中,利用所述步长更新该辨识参数按照下列关系式进行:
[0018][0019]
其中,是参数pi增加梯度计算步长li后的值,是参数pi减小梯度计算步长li后的值,pi是待辨识参数中的第i个元素,i是待辨识参数元素的编号。
[0020]
进一步优选地,在步骤s22中,所述利用该参数梯度集合更新所述待辨识参数是按照下列方式进行:
[0021]
p=p-g
·
lr
[0022]
其中,p是待辨识参数,g是参数梯度集合,lr是学习率。
[0023]
进一步优选地,在步骤s21中,所述参数梯度按照下列关系式进行:
[0024][0025]
其中,gi是参数pi的梯度,li是参数pi的梯度计算步长,pi是待辨识参数中的第i个元素,i是待辨识参数元素的编号。
[0026]
进一步优选地,在步骤s3中,所述损失函数与待辨识参数有关,不同的辨识参数对应不同的损失函数计算公式。
[0027]
进一步优选地,在步骤s3中,所述更新模型中的学习率和步长按照下列方式进行:
[0028]
lr=lr/2
[0029]
l=l/2
[0030]
其中,lr是学习率,l是步长。
[0031]
进一步优选地,所述待辨识参数包括位置环增益、速度环增益、速度环积分常数、机床进给系统轴向刚度、机床进给系统轴向阻尼、等效转动惯量、工作台质量、库伦摩擦力、最大静摩擦力、stribeck速度和粘滞摩擦系数。
[0032]
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具备下列有益效果:
[0033]
1.本发明的机床进给系统数理模型参数辨识方法,与现有的数控机床进给系统数理模型参数辨识方法相比,立足于机床进给系统动力学模型,参数辨识准确度由动力学模型仿真精度来评判,参数辨识准确度的提高能够直接提高动力学模型的仿真准确度;
[0034]
2.本发明的机床进给系统数理模型参数辨识方法,与现有的数控机床进给系统数理模型参数辨识方法相比,同时辨识数理模型的多个参数,有效提高了参数辨识的效率;利用模型参数与模型仿真误差之间的梯度信息来更新参数,由梯度值计算参数更新的方向与距离,相比于遗传算法随机取值的方式,参数辨识的效率更高;本发明的参数辨识方法根据参数的特性分别确定损失函数的计算方式,各个参数的损失函数不同,提高了与全局损失函数之间的灵敏度低的参数的辨识效率;
[0035]
3.本发明的机床进给系统数理模型参数辨识方法,与现有的数控机床进给系统数理模型参数辨识方法相比,根据模型参数的灵敏度分析结果来确定参数辨识时用到的损失函数,可以根据进给系统模型的结构和组成调整辨识算法,从而对于不同类型的进给系统模型的参数均能有较高的辨识精度和辨识效率。
附图说明
[0036]
图1是按照本发明的优选实施例所构建的基于梯度优化的机床进给系统参数辨识方法流程示意图;
[0037]
图2是按照本发明的优选实施例所构建的使用simulink搭建的数控机床进给系统数理模型;
[0038]
图3是按照本发明的优选实施例所构建的参数辨识激励信号位移和速度曲线,其中,(a)是位移曲线,(b)是速度曲线;
[0039]
图4是按照本发明的优选实施例所构建的参数辨识前后,某型号机床数理模型对于工作台位移的仿真结果和仿真误差,其中,(a)是参数辨识前后数理模型对于工作台位移的仿真结果与实际数据的对比,(b)是参数辨识前后数理模型对于工作台位移的仿真误差的对比。
具体实施方式
[0040]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0041]
一种基于梯度优化的机床进给系统数理模型参数辨识方法,该方法主要包括以下步骤:
[0042]
s1建立机床进给系统的数理模型,将可以通过测量和查表得到的参数填入模型,
对于需要辨识的参数,根据先验知识确定参数的上下界。
[0043]
s2根据参数辨识的激励信号设计g代码,输入并运行机床,采集机床运行数据,包括电机转角,转速,加速度,工作台位移,速度,加速度。
[0044]
设置参数辨识算法的超参数,包括算法的迭代次数,学习率,损失函数值最大增加次数,参数初始变化率,并执行算法的初始化过程;
[0045]
构建待辨识参数更新模型;
[0046]
s3将参数辨识信号输入进给系统数理模型进行仿真,根据数理模型的仿真结果和机床运行数据计算仿真误差和损失函数,以此获得最优待辨识参数;
[0047]
s4重复执行s3,直到达到预设的迭代次数,输出数理模型参数的辨识结果,该数理模型参数的辨识结果,是在算法迭代过程中,使损失函数值最小的模型参数值。
[0048]
进一步的,s1数理模型无严格要求,但是应能反映机床进给系统的构成及特性,且能够得到电机的转角,转速,角加速度,工作台的位移,速度和加速度,以及电机电流的仿真结果。数理模型各参数的上下界即数理模型参数辨识过程中参数的变化范围,需要根据经验或者实验来确定。
[0049]
进一步的,s2参数辨识激励信号,需要分析模型参数在不同的激励信号下的灵敏度,选择使模型参数灵敏度高的激励信号用于参数辨识。
[0050]
进一步的,s2参数辨识算法的超参数包括以下4个参数:
[0051]
1.算法迭代次数iter
max
。算法在迭代iter
max
次之后退出。
[0052]
2.初始学习率lr。算法的学习率会在迭代过程中逐渐减小,在开始辨识时需要提供学习率的初始值。
[0053]
3.损失函数值最大增加次数cnt
max
。参数辨识算法在迭代过程中,如果损失函数的增大次数超过cnt
max
,则将学习率和参数梯度计算步长减小为原来的一半。
[0054]
4.参数初始变化率r
init
。由该变化率和参数的取值范围长度确定参数梯度计算的初始步长l
init
,设参数的上界为xh,下界为x
l
,则:
[0055]
l
init
=r
init
(x
h-x
l
)
[0056]
进一步地,参数辨识算法的初始化过程包括以下两个部分:
[0057]
1.初始化数理模型参数。对于需要辨识的模型参数,在参数上下界范围内随机取值,作为模型参数的初始值。
[0058]
2.计算初始损失函数值。将参数辨识信号的指令位置输入进给系统模型,模型参数为初始参数,计算损失函数值,作为辨识算法损失函数的最小值。
[0059]
进一步的,根据参数灵敏度的不同,模型参数的损失函数的计算方式也不相同,如位置环增益参数与工作台位移s
wb
和电机转角θm的灵敏度更高,则位置环增益参数的损失函数是这两种仿真误差的均方根之和,即:
[0060][0061]
其中和分别为机床工作台位移的实际采集数据和模型仿真结果,和分别为机床电机转角的实际采集数据和模型仿真结果,rms是均方根计算函数。
[0062]
进一步地,待辨识参数更新模型按照下列进行:
[0063]
s21对于待辨识参数中的任意一个辨识参数,利用步长更新该辨识参数,将更新后
的辨识参数输入数理模型中仿真获得仿真结果,利用该仿真结果与步骤s2中的机床实际运行数据计算参数梯度;
[0064]
s22重复步骤s21直至获得待辨识参数中每个辨识参数对应的参数梯度,所有辨识参数的参数梯度构成参数梯度集合,利用该参数梯度集合更新所述待辨识参数,以此实现待辨识参数的更新。
[0065]
进一步地,待辨识参数中包括多个辨识参数,指令位置信号中包括多个数值,上述待辨识参数更新模型中需要更新指令位置信号中每个数值对应的待辨识参数。
[0066]
进一步的,s22中,在更新模型参数值时,将学习率和参数梯度值的乘积作为参数更新距离。
[0067]
进一步的,s21中,模型参数梯度值,计算方法如下:
[0068]
设参数pi计算梯度的步长为li,则参数pi的梯度值gi为参数pi增加li时的损失函数值与减小li时的损失函数值之差与2li的比值,即:
[0069][0070]
其中loss(pi+li)是参数pi增加li时的损失函数值,是参数pi增加li时数理模型仿真误差的均方根之和。
[0071]
下面将结合具体的实施例进一步说明本发明。
[0072]
如图1所示,本发明实施例基于梯度优化的机床进给系统数理模型参数辨识方法,首先需要建立数控机床进给系统的数理模型,本发明实施例使用simulink建立进给系统数理模型,如图2所示,针对机床进给系统的数理建模可以总结为如下的一般过程:
[0073]
(1)建立已知或初拟系统的示意图,确定基本参数。
[0074]
(2)对实际结构进行简化,或将其划分为若干子结构,应用动力学定理建立系统的数学模型。对于不能直接采用动力学定理建模的情况,则可以应用测试数据来建立输入-输出的经验数学模型。
[0075]
(3)通过试验证明数学模型的准确性。
[0076]
根据机床的实际结构,经过不同方式和程度的简化,可以建立起不同的动力学模型,最常见的有:集中质量模型、分布质量模型和有限元模型以及混合模型。本实施例建立的机床进给系统的机械部分的数理模型为集中质量模型,电机,联轴器和丝杠的转动惯量等效为一个转动惯量,模型中还包含进给系统等效的轴向刚度和阻尼,除了以上转动惯量和刚度阻尼参数外,本实施例的机床进给系统数理模型还含有以下参数,工作台stribeck摩擦模型的相关参数,伺服控制模型相关参数,以上参数均需要通过辨识得到,本实施例共需要辨识11个参数。
[0077]
在建立机床进给系统的数理模型之后,需要通过灵敏度分析实验,根据各个参数最为灵敏的模型仿真结果类型,确定损失函数值的计算方法,本实施例中各个参数最为灵敏的模型仿真结果类型及损失函数计算公式如表1所示。
[0078]
表1模型参数最为灵敏的仿真结果类型及损失函数计算公式
[0079][0080]
其中仿真结果类型的符号对应关系如表2所示。
[0081]
表2模型仿真结果
[0082][0083]
其中工作台位移误差和速度误差是工作台位移和速度与丝杠螺母位移和速度之间的差值,丝杠螺母的位移和速度可以根据电机转角和转速通过滚珠丝杠传动副转换得到,即:
[0084]
[0085][0086]
其中h是滚珠丝杠导程,在本实施例中,h=16mm。由模型参数最为灵敏的仿真结果类型即可确定各个参数的损失函数及梯度计算方式。
[0087]
本实施例的参数辨识激励信号为正弦偏移速度信号,速度幅值为3000mm/min,频率为0.05hz,速度和位移曲线如图3所示。将参数辨识激励信号输入机床,采集机床响应数据,本实施例采集实验数据的实验步骤如下:
[0088]
(1)机床热机1小时。
[0089]
(2)根据参数辨识激励信号设计g代码输入机床,运行机床并采集电机编码器及光栅尺数据。
[0090]
(3)处理数据,得到表2中所示的工作台位移,速度,加速度等机床运行结果。
[0091]
接下来需要设置参数辨识算法的超参数,本实施例的超参数设置如下:
[0092]
表3实施例中的参数辨识算法超参数
[0093][0094]
本实施例中数理模型各参数的上下界设置如表4所示。
[0095]
表4实施例中的数理模型参数上下界
[0096][0097]
模型迭代执行参数辨识方法,优化模型参数,根据图1所示的辨识方法流程,本实施例的辨识步骤如下:
[0098]
1)初始化。在参数取值范围内随机选取参数值,作为初始参数,将参数梯度计算步长l设置为l
init

[0099]
2)计算初始损失函数值。将参数辨识信号的指令位置输入进给系统模型,模型参数为初始参数,计算损失函数值。
[0100]
3)切分指令位置信号。将指令位置信号s
cmd
在时序上进行切分,切分为多组数据n为切分后的数据组数。然后对于切分后的每一组数据执行参数优化过程。即第4)步到第5)步的过程。
[0101]
4)参数梯度计算。对于模型参数集合p中的每一个参数pi,计算参数pi的梯度gi,所有参数的梯度构成梯度集合g={g1,g2,...,gn},其中n为参数数量11。
[0102]
5)更新模型参数。根据参数的梯度,结合学习率lr,确定参数的移动方向和长度,修改参数集合p中的每一个参数。
[0103]
6)计算数理模型的损失函数值。将更新的参数集合p设置为模型参数,计算损失函数值,如果该损失函数值小于当前损失函数值的最小值,则更新损失函数值最小值,记录此时的模型参数值,并把损失函数值增大的计数重置为0;否则,将损失函数值增大的次数加1,如果损失函数值增大的次数超过了设置的阈值cnt
max
,则将学习率lr和参数梯度计算步长l减小为原来的一半。
[0104]
7)迭代次数加1,如果迭代次数已经达到最大迭代次数,则输出模型参数的辨识结果,否则,重复第3)步到第6)步的参数辨识过程。
[0105]
在本实施例中,进给系统数理模型建模对象为某三轴立式加工中心y进给轴,参数辨识结果如表5所示。
[0106]
表5实施例数理模型参数辨识结果
[0107][0108]
参数辨识前后数理模型对于工作台位移的仿真结果和仿真误差如图4所示。
[0109]
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种基于梯度优化的机床进给系统数理模型参数辨识方法,其特征在于,该辨识方法包括下列步骤:s1建立机床进给系统的数理模型,并确定待辨识参数的上下界;s2预设指令位置信号,根据该预指令位置信号运行机床并采集机床实际运行数据;设定初始的待辨识参数;构建待辨识参数更新模型;s3将预设指令位置信号和当前的待辨识参数输入所述待辨识参数更新模型中,以此更新所述待辨识参数,将更新后的辨识参数和指令位置信号输入所述数理模型中仿真获得仿真结果,利用步骤s2采集的机床实际运行数据和该仿真结果计算损失函数,判断当前损失函数与最优损失函数之间的关系:当前损失函数小于当前最优损失函数时,将当前待辨识参数的值作为最优待辨识参数,同时将损失函数增大次数置零,当前损失函数作为当前最优损失函数;当前损失函数大于当前最优损失函数时,损失函数增大次数增加,判断当前损失函数增大次数是否大于预设最大损失函数增大次数,是则损失函数增大次数置零,并更新所述待辨识参数更新模型中的学习率和步长;否则,进入下个步骤;s4更新迭代次数,判断当前迭代次数是否达到预设最大迭代次数,是,则输出当前待辨识参数;否,则返回步骤s3。2.如权利要求1所述的一种基于梯度优化的机床进给系统数理模型参数辨识方法,其特征在于,在步骤s2中,所述待辨识参数更新模型按照下列进行:s21对于所述待辨识参数中的任意一个辨识参数,利用所述步长更新该辨识参数,将更新后的辨识参数输入所述数理模型中仿真获得仿真结果,利用该仿真结果与步骤s2中的机床实际运行数据计算参数梯度;s22重复步骤s21直至获得所述待辨识参数中每个辨识参数对应的参数梯度,所有辨识参数的参数梯度构成参数梯度集合,利用该参数梯度集合更新所述待辨识参数,以此实现待辨识参数的更新。3.如权利要求2所述的一种基于梯度优化的机床进给系统数理模型参数辨识方法,其特征在于,在步骤s1中,利用所述步长更新该辨识参数按照下列关系式进行:其中,是参数p
i
增加梯度计算步长l
i
后的值,是参数p
i
减小梯度计算步长l
i
后的值,p
i
是待辨识参数中的第i个元素,i是待辨识参数元素的编号。4.如权利要求2所述的一种基于梯度优化的机床进给系统数理模型参数辨识方法,其特征在于,在步骤s22中,所述利用该参数梯度集合更新所述待辨识参数是按照下列方式进行:p=p-g
·
lr其中,p是待辨识参数,g是参数梯度集合,lr是学习率。5.如权利要求2或3所述的一种基于梯度优化的机床进给系统数理模型参数辨识方法,其特征在于,在步骤s21中,所述参数梯度按照下列关系式进行:
其中,g
i
是参数p
i
的梯度,l
i
是参数p
i
的梯度计算步长,p
i
是待辨识参数中的第i个元素,i是待辨识参数元素的编号。6.如权利要求1或2所述的一种基于梯度优化的机床进给系统数理模型参数辨识方法,其特征在于,在步骤s3中,所述损失函数与待辨识参数有关,不同的辨识参数对应不同的损失函数计算公式。7.如权利要求1或2所述的一种基于梯度优化的机床进给系统数理模型参数辨识方法,其特征在于,在步骤s3中,所述更新模型中的学习率和步长按照下列方式进行:lr=lr/2l=l/2其中,lr是学习率,l是步长。8.如权利要求1所述的一种基于梯度优化的机床进给系统数理模型参数辨识方法,其特征在于,所述待辨识参数包括位置环增益、速度环增益、速度环积分常数、机床进给系统轴向刚度、机床进给系统轴向阻尼、等效转动惯量、工作台质量、库伦摩擦力、最大静摩擦力、stribeck速度和粘滞摩擦系数。

技术总结
本发明属于数控机床相关技术领域,并公开了一种基于梯度优化的机床进给系统数理模型参数辨识方法。该方法包括:S1建立机床进给系统的数理模型;S2采集机床实际运行数据;设定初始的待辨识参数;构建待辨识参数更新模型;S3将预设指令位置信号和当前的待辨识参数输入待辨识参数更新模型中更新待辨识参数,利用更新后的辨识参数仿真计算损失函数,判断当前损失函数与最优损失函数之间的关系:小于时,保留当前待辨识参数的值,否则损失函数增大次数增加;S4更新迭代次数,判断当前迭代次数是否达到预设最大迭代次数,是,则输出当前待辨识参数;否,则返回步骤S3。通过本发明,提高与全局损失函数之间的灵敏度低的参数的辨识效率。率。率。


技术研发人员:杨建中 段继航 许光达 黄德海
受保护的技术使用者:武汉智能设计与数控技术创新中心
技术研发日:2023.04.21
技术公布日:2023/8/9
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐