本发明涉及力学环境试验技术领域,尤其是涉及一种自适应调节双闭环时间正弦振动控制方法。
背景技术:
在正弦振动扫频试验中,用户根据试验标准要求的目标谱,试验计划等试验要求设定试验参数进行振动试验。试验要求至少包括工作频率范围、不同频率下的振动幅值和试验的扫频速度。由于振动台自身的结构动力学特性以及试验件本身的结构动力学特性,要得到同一个振动幅值的信号,需要的驱动信号幅值是不同的,特别是在共振频率处,驱动信号的幅值是急剧变化的,同时由于试验件疲劳,松动,裂纹等效应,振动幅值与驱动幅值的比值在不同的时间也不一样,决定了试验只能采用闭环控制的方式进行。在实际试验中,控制系统在一个闭环时间内,分析传感器反馈的振动情况,调整正弦驱动信号,从而实现控制信号与目标信谱号趋于一致,上述过程称为正弦振动控制。
传统的正弦振动控制中,无论是2000hz时的正弦控制,还是5hz的正弦控制,在一次试验过程中,采用一个程序指定的闭环时间,通常为5ms-100ms之间。采用固定的闭环时间,同时驱动信号生成与控制误差评估采用同一个闭环时间,存在的如下问题:
(1)对于不同工作频率特性的振动试验台,需要采用不同的控制方法,如液压振动台工作频率主要在0.1hz-200hz,而电动振动台工作频率主要在5hz-2000hz之间,小型激振器的工作频率范围在20hz-10000hz之间,需要采用不同的闭环控制方法进行控制。
(2)即使对同一种振动台的控制,为了兼顾高频率端和低频率段的性能平衡,需适当牺牲一定控制精度以满足整体性能的形式最优。
技术实现要素:
本发明的发明目的是为了克服现有技术中的不同工作频率特性的振动试验台需要采用不同的控制方法,为了兼顾高频率端和低频率段的性能平衡,需牺牲一定控制精度的不足,提供了一种自适应调节双闭环时间正弦振动控制方法。
为了实现上述目的,本发明采用以下技术方案:
一种自适应调节双闭环时间正弦振动控制方法,包括如下步骤:(1-1)设振动台初始闭环时的工作频率为f1,振动台的工作模式为扫频正弦模式,设下一闭环时的工作频率为f2,f1和f2循环更新;设振动台振动的目标幅值为aref,振动台振动的控制幅值为actrl振动台的控制器对振动台振动的采样频率为fs,控制器输出给振动台的当前驱动信号幅值为adrv,当前驱动信号相位为φ;设驱动信号生成闭环时间为tdry,控制过程的闭环时间tctrl;设扫频正弦模式的扫频速率swp.
(1-2)设驱动信号的信号序列为drive(n),控制信号的信号序列为control(n)设自适应调节闭环时间控制信号序列为ctrl(m),计算正弦序列s(m)和余弦序列c(m).
(1-3)在每个闭环时间tctrl内,控制器计算一次控制幅值actrl,比较actrl与aref的误差,根据误差调整驱动幅值adrv,实现正弦振动控制试验过程的闭环控制。
正弦控制涉及到的控制相关关联要素包括试验频率、目标幅值、控制幅值、采样频率、闭环时间、扫频速率。实际控制中用到的信号包括控制信号,驱动信号。控制信号是指振动传感器从在指定采样频率下采集的振动台信号,驱动信号是指控制系统根据控制方法生成的驱动信号,输出到振动试验系统的功率放大或液压泵站,从而驱动振动台产生振动。
本发明的双闭环时间是指驱动信号的生成采用一个闭环时间,控制信号误差评估采用自适应调节闭环时间,采用自适应调节双闭环时间控制方法,使振动台工作频率在0.01hz-10000hz频率范围内时,可以采用同一套闭环控制策略实现高精度控制,提供更高的控制精度,解决了传统控制方法的局限性。
作为优选,所述f1和f2循环更新包括如下步骤:
设临时变量dtemp1=2swp,临时变量
使f2=f1dtemp2,每隔tdrv,用f2的频率值替换f1的频率值。
作为优选,fs≥25600hz。
作为优选,n的取值范围为1-1024。
作为优选,m为n的整数倍;tctrl的取值范围为区间[n/fs,m/fs]。
作为优选,计算正弦序列s(m)和余弦序列c(m)包括如下步骤:
φ为驱动信号的初始相位,
作为优选,(1-3)包括如下步骤:
将control(n)采用循环放置的方式,存放到ctrl(m)中,从ctrl(m)的最新数据p开始向前回数tctrl个数据,假设临时变量开始点为p,设q=tctrl,定义临时序列ss(q)和cc(q);ss(q)和cc(q)中的均有q个数据,设ssi为ss(q)中的任意一个数据,cci为cc(q)中的任意一个数据,si为s(m)中的任意1个数据,ci为c(m)中的任意一个数据,ctrl(i p)为ctrl(m)中的任意一个数据,i=1,2,…,q;
则:ssi=si×ctrl(i p)
cci=ci×ctrl(i p)。
作为优选,(1-3)还包括如下步骤:
对si和ci进行低通滤波,降低高频纹波干扰,则
设用户设置的控制增益为gain,则
误差err=actrl-aref,
则新的驱动幅值为adrv=adrv err×gain;
用a′drv的值替换adrv的值,
利用如下公式计算驱动信号drive(n)′:
其中,j=1……n;用drive(n)′的序列替换drive(n)的序列,将drive(n)输送给振动台,完成正弦振动控制。
因此,本发明具有如下有益效果:使振动台工作频率在0.01hz-10000hz频率范围内时,可以采用同一套闭环控制策略实现高精度控制,提供更高的控制精度,解决了传统控制方法的局限性。
附图说明
图1是本发明的一种流程图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步的描述。
如图1所示的实施例是一种自适应调节双闭环时间正弦振动控制方法,包括如下步骤:
步骤100,设置参数
设振动台初始闭环时的工作频率为f1,振动台的工作模式为扫频正弦模式,设下一闭环时的工作频率为f2,f1和f2循环更新;设临时变量dtempl=2swp,临时变量
使f2=f1dtemp2,每隔tdrv,用f2的频率值替换f1的频率值。
设振动台振动的目标幅值为aref,振动台振动的控制幅值为actrl(控制点实际振动的幅值),振动台的控制器对振动台振动的采样频率为fs;
为了覆盖0.01hz-10000hz的正弦试验频率,采样频率
fs=51200hz,理论上25600hz以上都可以。如降低上限控制频率范围,该值可以降低。
控制器输出给振动台的当前驱动信号幅值为adrv,当前驱动信号相位为φ;设驱动信号生成闭环时间为tdrv,控制过程的闭环时间tctrl;设扫频正弦模式的扫频速率swp;
步骤200,设驱动信号的信号序列为drive(n),控制信号的信号序列为control(n)设自适应调节闭环时间控制信号序列为ctrl(m),计算正弦序列s(m)和余弦序列c(m).
n表示drive(n)和cointrol(n)中总数据数,n为32;原理上取1-1024与本发明原理都没有本质差异,在传统的固定闭环时间正弦控制系统中,该值通常在128-512之间。
m表示ctrl(m)中的总数据数,m为20480,m为n的整数倍。如下限频率提高到0.1hz,m值取2048也足够能满足要求。在控制性能上降低要求,该值5120也可满足0.01hz-10000hz控制范围的要求。因此无论该值取哪个值,都不影响本发明的创造性基本点。
φ为驱动信号的初始相位,
步骤300,在每个闭环时间tctrl内,控制器计算一次控制幅值actrl,比较actrl与aref的误差,根据误差调整驱动幅值adrv,实现正弦振动控制试验过程的闭环控制。
将control(n)采用循环放置的方式,存放到ctrl(m)中,从ctrl(m)的最新数据p开始向前回数tctrl个数据,假设为临时变量开始点p,设q=tctrl,定义临时序列ss(q)和cc(q);设ssi为ss(q)中的任意一个数据,cci为cc(q)中的任意一个数据,si为s(m)中的任意1个数据,ci为c(m)中的任意一个数据,ctrl(i p)为ctrl(m)中的任意一个数据,i=1,2,…,q;
则:ssi=si×ctrl(i p)
cci=ci×ctrl(i p)。
对si和ci进行低通滤波,降低高频纹波干扰,则
设用户设置的控制增益为gain,则
误差err=actrl-aref,
则新的驱动幅值为adrv=adrv err×gain;
用a′drv的值替换adrv的值,
利用如下公式计算驱动信号drive(n)′:
其中,j=1……n;用drive(n)′的序列替换drive(n)的序列,
将drive(n)输送给振动台,不断重复运行步骤300,从而完成本发明的正弦振动控制。
应理解,本实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。
1.一种自适应调节双闭环时间正弦振动控制方法,其特征是,包括如下步骤:
(1-1)设振动台初始闭环时的工作频率为f1,振动台的工作模式为扫频正弦模式,设下一闭环时的工作频率为f2,f1和f2循环更新;设振动台振动的目标幅值为aref,振动台振动的控制幅值为actrl,振动台的控制器对振动台振动的采样频率为fs,控制器输出给振动台的当前驱动信号幅值为adrv,当前驱动信号相位为φ;设驱动信号生成闭环时间为tdrv,控制过程的闭环时间tctrl;设扫频正弦模式的扫频速率swp;
(1-2)设驱动信号的信号序列为drive(n),控制信号的信号序列为control(n)设自适应调节闭环时间控制信号序列为ctrl(m),计算正弦序列s(m)和余弦序列c(m);
(1-3)在每个闭环时间tctrl内,控制器计算一次控制幅值actrl,比较actrl与aref的误差,根据误差调整驱动幅值adrv,实现正弦振动控制试验过程的闭环控制。
2.根据权利要求1所述的自适应调节双闭环时间正弦振动控制方法,其特征是,所述f1和f2循环更新包括如下步骤:
设临时变量dtemp1=2swp,临时变量
使f2=f1dtemp2,每隔tdrv,用f2的频率值替换f1的频率值。
3.根据权利要求1所述的自适应调节双闭环时间正弦振动控制方法,其特征是,fs≥25600hz。
4.根据权利要求1所述的自适应调节双闭环时间正弦振动控制方法,其特征是,n的取值范围为1-1024。
5.根据权利要求1所述的自适应调节双闭环时间正弦振动控制方法,其特征是,m为n的整数倍;tctrl的取值范围为区间[n/fs,m/fs]。
6.根据权利要求1所述的自适应调节双闭环时间正弦振动控制方法,其特征是,计算正弦序列s(m)和余弦序列c(m)包括如下步骤:
φ为驱动信号的初始相位,
7.根据权利要求1所述的自适应调节双闭环时间正弦振动控制方法,其特征是,(1-3)包括如下步骤:
将control(n)采用循环放置的方式,存放到ctrl(m)中,从ctrl(m)的最新数据p开始向前回数tctrl个数据,假设临时变量开始点为p,设q=tctrl,定义临时序列ss(q)和cc(q);设ssi为ss(q)中的任意一个数据,cci为cc(q)中的任意一个数据,si为s(m)中的任意1个数据,ci为c(m)中的任意一个数据,ctrl(i p)为ctrl(m)中的任意一个数据,i=1,2,…,q;
则:ssi=si×ctrl(i p)
cci=ci×ctrl(i p)。
8.根据权利要求7所述的自适应调节双闭环时间正弦振动控制方法,其特征是,(1-3)还包括如下步骤:
对si和ci进行低通滤波,降低高频纹波干扰,则
设用户设置的控制增益为gain,则
误差err=actrl-aref,
则新的驱动幅值为a′drv=adrv err×gain;
用a′drv的值替换adrv的值,
利用如下公式计算驱动信号drive(n)′:
其中,j=1……n;用drive(n)′的序列替换drive(n)的序列,
将drive(n)输送给振动台,完成正弦振动控制。
技术总结