DOI: 10.11817/j.issn.1672-7207.2020.10.018
一种基于Volterra频域核的非线性频谱智能表征方法
陈乐瑞,曹建福,胡河宇,王晓琪
(西安交通大学 机械制造系统工程国家重点实验室,陕西 西安,710049)
摘要:针对目前基于Volterra核的非线性频谱计算存在的计算量大和准确率低的问题,提出一种基于BP神经网络的非线性频谱智能表征方法。首先,利用递推方法和批量最小二乘方法分别估算出系统的广义频率响应函数(GFRF)幅值和输出频率响应函数(OFRF)幅值;其次,结合非线性频谱特点,将均方根误差()作为BP神经网络设计指标来确定隐含层神经元数量,利用BP神经网络强大的拟合能力实现各阶频谱幅值的计算;最后,通过机器人驱动系统进行仿真验证。研究结果表明:与常规自适应辨识方法相比,本文方法计算结果与真实结果最接近,且计算速度最高提升了73.30%,进一步证明该方法不但能够满足复杂系统对频谱计算实时性要求,而且可为基于非线性频谱的故障诊断提供精确数据。
关键词:BP神经网络;Volterra核;非线性频谱;智能表征
中图分类号:TP391.9 文献标志码:A 开放科学(资源服务)标识码(OSID)
文章编号:1672-7207(2020)10-2867-09
An intelligent characterization method of nonlinear spectrum based on Volterra frequency domain kernel
CHEN Lerui, CAO Jianfu, HU Heyu, WANG Xiaoqi
(State Key Laboratory for Manufacturing Systems Engineering, Xi'an Jiaotong University, Xi'an 710049, China)
Abstract: Aiming at the problem of large amount of calculation and low accuracy of nonlinear spectrum based on Volterra kernel, an intelligent characterization method of nonlinear spectrum based on BP neural network was proposed. Firstly, the generalized frequency response function(GFRF) amplitude and output frequency response function(NOFRF) amplitude of the system were estimated by recursive method and batch least squares method respectively. Secondly, considering the characteristics of the non-linear spectrum, the root mean square error() was adopted as the index of BP neural network to design the number of hidden layer neurons. The spectrum calculation of each order was realized by its powerful fitting ability. Finally, the simulation results were validated by the robot driving system. The results show that compared with the traditional adaptive identification method, the results obtained by the proposed method are closer to the true values and the calculation speed is increased by 73.30%, which proves that the proposed method can not only meet the real-time requirement of spectrum calculation for complex systems, but also provide accurate data for fault diagnosis based on non-linear spectrum.
Key words: BP neural network; Volterra kernel; non-linear spectrum; intelligent characterization
类似于线性系统的传递函数,Volterra核将线性系统卷积扩展成一系列多维卷积形式,能够描述非线性系统的本质特性,具有物理意义明确、信息量丰富等优点,引起了国内外学者的广泛关注[1-4]。相对于Volterra时域核,Volterra频域核只与系统自身特性有关,不会随输入变化而变化,人们可以直观、准确地观察到许多非线性现象,因而更受关注[5],而且Volterra频域核也被广泛应用于机械系统和电子控制系统的非线性分析[6-7]。目前,有关Volterra频域核的应用和研究得到了快速发展,特别是以基于广义频率响应函数(GFRF)和基于非线性输出频率响应函数(NOFRF)为代表的非线性频谱研究逐渐被应用于特征提取、机理分析和故障诊断领域[8-12];而非线性频谱计算方法复杂度和准确度是制约其应用的关键。目前有关非线性频谱计算方法有递推法[13-14]、批量最小二乘法[15-16]和自适应计算方法[17-19]。其中,递推法是依据非线性系统微分方程,将微分方程中相关参量代入递推公式来计算GFRF/NOFRF幅值,因此,递推法计算非线性频谱的准确性完全依赖于数学模型的正确性。批量最小二乘法是一种非参数计算方法,不依靠系统数学模型,无需了解系统内部机理,仅依靠系统的输入和输出,通过矩阵求逆运算即可估计出各阶频谱幅值;自适应计算方法可克服最小二乘法求逆计算量大的缺陷,根据实际输出与估计输出偏差值动态调整算法中参数,从而计算各阶频谱幅值。但是,该方法是对频点进行逐一计算,无法满足基于数据驱动的非线性频谱分析需求。针对上述非线性频谱计算方法存在的问题,迫切需要一种新的频谱智能计算方法,实现系统非线性频谱的快速、准确表征。BP神经网络是一个并行分布式信息处理网络,网络中的神经元具有强大的逼近和拟合能力,可以逼近任意非线性函数。梁丽等[20-21]利用BP神经网络实现了Volterra时域核的计算;吴世浩等[22]利用BP神经网网络对Volterra频域核进行计算,取得了较好的效果。为此,本文作者结合非线性频谱特点,设计一种BP神经网络,对2种常见的GFRF和NOFRF幅值进行智能计算,并通过仿真实验验证该方法的有效性。
1 基于Volterra频域核的非线性频谱理论值计算
连续时不变非线性动态系统的输入和输出关系可以用Volterra级数表示,即
;
式中:为时间;为维度变量;为系统输出;为系统输入;为第阶Volterra时域核或广义脉冲响应函数。对其进行多维傅里叶变换可得到
(1)
称为第阶Volterra频域核或广义频率响应函数(GFRF)。
鉴于GFRF计算量比较大,ZHU等[23]在此基础上提出了非线性输出频率响应函数(NOFRF),即
(2)
式中:表示在维超平面上的积分;表示在维超平面上的积分。
GFRF幅值的精确计算可采用递推方法[14],而NOFRF幅值的计算采用批量最小二乘法准确度比较高,下面对该方法进行分析。
用输入信号激励系统次,其中,,;为常数,且;为随时间变化信号,经过傅里叶变换之后为,系统得到次输出频谱记为(),则
式中:;;为的傅里叶变换;为NOFRF各阶幅值,
(3)
2 基于BP网络的非线性频谱幅值智能计算
采用BP神经网络对GFRF或NOFRF等非线性频谱幅值进行计算是以系统真实频谱幅值为依据,利用BP网络强大的拟合能力,通过对网络训练实现测试值与真实值逼近。因此,非线性频谱幅值的真实值是否准确直接影响智能计算精度的高低。一般而言,GFRF和NOFRF的真实值分别按照递推算法[14]和批量最小二乘算法[19]对式(1)和(3)进行准确计算。而在实际中,对一个系统非线性频谱的计算往往转化为黑箱问题进行辨识操作,由于辨识模型比较复杂,依靠辨识方法求解非线性频谱存在计算量大和计算准确率低等问题。
BP神经网络是典型的多层前向网络,能够逼近任意非线性函数,因此,可以利用该特性实现非线性频谱的智能计算,1个简单的3层神经网络模型如图1所示。
图1 基于BP网络的非线性频谱计算
Fig. 1 Nonlinear spectrum computation based on BP network
从式(1)可以看出,一阶GFRF包含1个频率变量,二阶GFRF包含2个频率变量,阶GFRF频包含个频率变量,因此,对于不同阶次的GFRF可以利用BP网络进行分阶进行计算。与GFRF不同的是,NOFRF是一维的,各阶NOFRF仅包含1个频率变量,因此,BP的输入量为1。
对于BP神经网络,激活函数和隐层神经元数量选择直接影响输出结果。常用的激活函数有正切S型函数、对数S型函数、ReLU函数和线性函数,由于机器人驱动系统的GFRF和NOFRF真实幅值范围皆为(0,1),因此,本文选择可导且连续的sigmoid激活函数,即
(4)
隐层神经元数量对BP网络的性能影响很大,若神经元数量过小,则计算精度较低;若神经元数量过大,则会出现过拟合现象。基于此结合非线性频谱的特性,本文将均方根误差()作为评价指标确定合理的隐层神经元数量,即
;
;(5)
式中:为第阶第个频率点对应的GFRF或NOFRF幅值的预测值;为第阶第个频率点对应的GFRF或NOFRF幅值的真实值。表示预测值和真实值之间差异样本标准偏差,反映了样本离散程度,在非线性拟合时,越小,其逼近效果就越好。
在数据归一化方面,为了消除较大频率范围对数据的影响,同时,针对本文选取的激活函数类型,本文采用标准归一化方法,将数据归一化到[0,1],即
(6)
式中:为频率最小值;为频率最大值。
以前2阶GFRF和前4阶NOFRF为例,采用基于BP神经网络的非线性频谱进行智能计算,流程如图2所示。具体计算流程如下:
图2 基于BP神经网络的GFRF和NOFRF计算流程
Fig. 2 GFRF and NOFRF computation based on BP neural network
1) 建立非线性系统的数学模型,确定输入和输出变量;
2) 根据建立的数学模型,利用递推公式,求出前2阶GFRF幅值真实值;
3) 选择适当的激励信号进行多次激励,并采集输出数据,利用式(3)的批量最小二乘算法求出前4阶NOFRF幅值真实值;
4) 针对GFRF模型,设计2种BP神经网络(二阶GFRF的计算模型中输入是频率的二维组合),通过对网络进行训练,获得前2阶GFRF幅值估计值;
5) 针对NOFRF模型,设计1种BP神经网络(网络的输入是一维频率数据),通过对网络训练,估计出前4阶NOFRF幅值。
3 仿真实验
本文以工业机器人用永磁同步电机为研究对象对其故障进行诊断,永磁同步电机的数学模型[24]可以表示为
(7)
式中:和分别为定子绕组和轴电枢电流;和分别为定子绕组和轴定子指定电压,为了便于分析,本文假设;为定子绕组电感;为永磁体产生的磁链;为定子绕组电阻;为转子转动惯量;为负载转矩;为转子阻尼系数;为极对数;为转子角速度。对式(7)进行分析,选取为系统输入,为系统输出,可得到非线性微分方程为
(8)
式中:和分别为和的导数。
3.1 GFRF的智能计算
对于已知的数学模型,利用递推公式可求得前2阶GFRF幅值理论值,即
(9)
(10)
式中:T为采样间隔时间。
某型号永磁同步电机正常情况下参数为:,,,,,,选择采样时间T=0.02 s,根据式(10),得到系统前2阶GFRF理论值,然后将GFRF理论值代入神经网络中进行训练。神经网络隐含层激活函数采用sigmoid函数,输出层激活函数采用线性函数,误差目标值设置为10-4,学习率设为0.01,最大迭代次数为100,分别运行10次,计算相应的均方根误差ERMSE。当一阶GFRF模型的隐含层神经元个数为10时,ERMSE最小(为0.065 8);当二阶GFRF模型的隐含层神经元个数为20时,ERMSE最小(为0.007 7)。前2阶GFRF计算结果分别如图3和图4所示。
图3 一阶GFRF计算结果
Fig. 3 Calculation results of first-order GFRF
图4 二阶GFRF计算结果
Fig. 4 Calculation results of second-order GFRF
从图3和图4可以看出:对于GFRF幅值,一阶GFRF幅值估计值和真实值误差最大为0.216 7 dB;二阶GFRF幅值估计值和真实值误差最大为0.047 1 dB,由此可见,采用基于BP神经网络方法对GFRF幅值计算,所得幅值相似度和精确度较高。
3.2 NOFRF的智能计算
对于上述工业机器人用永磁同步电机数学模型,采用批量最小二乘算法得到前4阶NOFRF幅值,即选择输入信号为:(i=1,2,3,4);;;;。采样频率为1 kHz,对系统进行4次激励,得到相应的输出信号,代入式(3)得到前4阶NOFRF幅值,然后,将NOFRF理论值代入神经网络中进行训练,其中,神经网络误差目标值设置为10-6,学习率设为0.02,最大迭代次数为200,分别运行10次,计算相应的均方根误差ERMSE。当一阶NOFRF模型的隐含层神经元个数为30时,ERMSE最小(为0.040 7);当二阶NOFRF模型的隐含层神经元个数为30时,ERMSE最小(为0.132 3);当三阶NOFRF模型的隐含层神经元个数为20时,ERMSE最小(为0.007 6);当四阶NOFRF模型的隐含层神经元个数为10时,ERMSE最小(为1.818 2×10-5)。前4阶NOFRF智能计算结果分别如图5~8所示。
图5 一阶NOFRF幅值
Fig. 5 First-order NOFRF amplitude
图6 二阶NOFRF幅值
Fig. 6 Second-order NOFRF amplitude
图7 三阶NOFRF幅值
Fig. 7 Third-order NOFRF amplitude
图8 四阶NOFRF幅值
Fig. 8 Fourth-order NOFRF amplitude
从图5~8可以看出:对于NOFRF幅值的计算,一阶NOFRF幅值估计值中有1 990个与真实值一致,准确率达99.50%,最大误差为2.766 0×104 dB;二阶NOFRF幅值估计值中有1 866个与真实值一致,准确率达93.30%,最大误差为5.424 8×104 dB;三阶NOFRF幅值估计值中有1 972个与真实值一致,准确率达98.60%,最大误差为3.398 7×103 dB; 四阶NOFRF幅值估计值中有1 999个与真实值一致,准确率达99.95%,最大误差为8.131 4 dB。对于NOFRF幅值的计算,由于各阶幅值数量级比较大(特别是前3阶),会出现个别频点幅值误差比较大的现象,但误差较大的频点数量较少,对计算精度影响有限。在实际操作中,为了提高NOFRF幅值的计算精度和降低计算误差,可以通过增加多音输入函数的组数来实现。
由此可见,利用BP神经网络对GFRF幅值和NOFRF幅值进行估算取得了较高的精度,这一方面与BP神经网络自身强大的数据拟合和特征提取能力有关,另一方面与本文神经元数量选取算法的设计有很大关系,根据非线性频谱特征设计的均方根误差评价指标能够自适应调整网络隐含层神经元数量,避免神经元数量盲目选取,同时又能实现幅值的精确计算。
3.3 自适应辨识方法与传统辨识方法比较
自适应辨识方法是根据系统的实际输出与估计输出偏差值动态调整算法中参数,做到自适应地计算各阶频谱幅值,由于该方法是对各个频点逐一进行计算,与本文方法相比计算效率较低。为了比较两者的计算精度和计算速度,将本文方法分别与最小均方(LMS)自适应算法[18]和变步长最小均方(VSLMS)自适应算法[19]进行比较,以GFRF幅值计算为例,随机选取若干个频点进行计算,计算结果如表1所示。
表1 不同方法的GFRF幅值计算结果
Table 1 Calculation results of GFRF amplitude with different methods
从表1可以看出:在计算精度方面,采用BP方法对前2阶GFRF幅值进行计算,最小误差绝对值为0 dB,最大误差绝对值为0.077 4 dB;采用LMS方法对前2阶GFRF幅值进行计算,最小误差绝对值为0.011 1 dB,最大误差绝对值为3.338 3 dB;采用VSLMS方法对前2阶GFRF幅值进行计算,最小误差绝对值为0.010 4 dB,最大误差绝对值为1.129 9 dB,可见采用BP方法对幅值进行计算,其估计值比较接近真实值,计算精度较高。在计算效率方面,采用BP网络完成前2阶8个频点的GFRF幅值估计共耗时359.84 ms;利用LMS计算方法对8个频点谱值估计共耗时1 352.76 ms,利用VSLMS方法计算8个频点的幅值共耗时992.65 ms,因此,相对于LMS和VSLMS方法,采用BP估计方法计算速度得到提升,分别提高了73.40%和63.75%。
上述2种方法的计算效率和精度差距均较大的原因在于:1) LMS和VSLMS采用逐个频点逐次计算方法,而BP 方法采用批量方式实现多个频点同时计算;2) 在LMS和VSLMS方法计算过程中,不收敛的频点会造成该算法陷入局部最优,导致幅值估计值与真实值误差较大,而本文结合非线性频谱特点设计均方根误差指标,通过对幅值估计值和真实值误差进行反馈并指导BP网络进行深度拟合,BP网络最终得到的估计值和真实值误差较小。
4 结论
1) 采用BP神经网络,解决了传统方法计算GFRF幅值和NOFRF幅值时存在计算复杂和精度低的问题,实现了频谱的智能计算。
2) 在利用BP神经网络进行计算过程中,对影响计算精度的激活函数和归一化方法进行分析;同时,结合2类函数的不同特点,将均方根误差(ERMSE)作为计算结果的评价指标,解决了神经元个数选择的盲目性问题。
3) 通过机器人用永磁同步电机仿真验证了所提出方法的有效性。
4) 所提出的方法操作简单且计算精度高,对非线性频谱的智能计算具有借鉴意义。
参考文献:
[1] CHENG Chenmou, PENG Zhike, DONG Xiaojun, et al. Nonlinear system identification using Kautz basis expansion-based Volterra-PARAFAC model[J]. Nonlinear Dynamics, 2018, 94(3): 2277-2287.
[2] TANG Hao, LIAO Yuhe, CAO Junyi, et al. Fault diagnosis approach based on Volterra models[J]. Mechanical Systems and Signal Processing. 2010, 24(4): 1099-1113.
[3] HAN Haitao, MA Hongguang, TAN Lining, et al. Non-parametric identification method of Volterra kernels for nonlinear systems excited by multitone signal[J]. Asian Journal of Control, 2014, 16(2): 519-529.
[4] 武红霞, 韩捷, 陈宏. 基于NOFRF裂纹转子非线性频谱分析[J]. 机械强度, 2017, 39(6): 1271-1274.
WU Hongxia, HAN Jie, CHEN Hong, et al. Nonlinear frequency spectrum analysis of cracked rotor based on NOFRF[J]. Journal of Mechanical Strength ,2017, 39(6): 1271-1274.
[5] 夏恒恒, 李志农, 肖尧先. 基于非线性输出频率响应函数的斜裂纹转子故障诊断方法研究[J]. 机械强度, 2017, 39(2): 239-246.
XIA Hengheng, LI Zhinong, XIAO Yaoxian. Fault diagnosis method of rotor system with slant crack based on nonlinear output frequency response function[J]. Journal of Mechanical Strength,2017, 39(2): 239-246.
[6] 李志农, 刁海洋, 肖尧先. 基于非线性输出频率响应函数的转子碰摩故障诊断方法研究[J]. 失效分析与预防, 2016, 11(2): 67-71.
LI Zhining, DIAO Haiyang, XIAO Yaoxian. Fault diagnosis method of rub-impact in rotor system based on nonlinear output frequency response function[J]. Failure Analysis and Prevention, 2016, 11(2): 67-71.
[7] 陈乐瑞, 曹建福, 王晓琪. 工业机器人驱动系统非线性频谱故障诊断方法[J]. 西安交通大学学报, 2019, 53(4): 93-99.
CHEN Lerui, CAO Jianfu, WANG Xiaoqi. Nonlinear spectrum based fault diagnosis method for industrial robot drive systems[J]. Journal of Xi′an Jiaotong University, 2019, 53(4): 93-99.
[8] ZHANG Jialiang, CAO Jianfu, GAO Feng. Fault diagnosis for multivariable non-linear systems based on non-linear spectrum feature[J]. Transactions of the Institute of Measurement and Control, 2017, 39(7): 1017-1026.
[9] XIA Xin, ZHOU Jiangzhong, LI Chaoshun, et al. A novel method for fault diagnosis of hydro generator based on NOFRFs[J]. International Journal of Electrical Power & Energy Systems, 2015, 71: 60-67.
[10] ZHU Yupeng, LANG Ziqiang. The effects of linear and nonlinear characteristic parameters on the output frequency responses of nonlinear systems: The associated output frequency response function[J]. Automatica, 2018, 93: 422-427.
[11] MA Hui, ZENG Jin, LANG Ziqiang, et al. Analysis of the dynamic characteristics of a slant-cracked cantilever beam[J]. Mechanical Systems and Signal Processing, 2016, 75: 261-279.
[12] YANG Wenxian, LANG Ziqiang. TIAN Wenye. Condition monitoring and damage location of wind turbine blades by frequency response transmissibility analysis[J]. IEEE Transactions on Industrial Electronics, 2015, 62(10): 6558-6564.
[13] 袁海英, 陈光. 基于简化GFRF模型计算算法的非线性模拟电路故障诊断[J]. 电子测量与仪器学报, 2006, 20(6): 6-9.
YUAN Haiying, CHEN Guangju. Fault diagnosis in nonlinear analog circuit based on GFRF simplified model identification algorithm[J]. Journal of Electronic Measurement and Instrument, 2006, 20(6): 6-9.
[14] 曹建福, 韩崇昭, 方洋旺. 非线性系统理论及应用[M]. 西安: 西安交通大学出版社, 2006: 166-192.
CAO Jianfu, HANG Chongzhao, FANG Wangyang. Theory and application of nonlinear systems[M]. Xi'an: Xi'an Jiaotong University Press, 2006: 166-192.
[15] 张华君. 基于递推批量最小二乘的Volterra级数计辨识方法[J]. 小型微型计算机系统, 2004, 12(25): 2282-2285.
ZHANG Huajun. Volterra series identification method based on recursive least square algorithm[J]. Journal of Chinese Mini-Micro Computer Systems, 2004, 12(25): 2282-2285.
[16] MAO Hanlin, TANG Weili, HUANG Yang, et al. The construction and comparison of damage detection index based on the nonlinear output frequency response function and experimental analysis[J]. Journal of Sound and Vibration, 2018, 427: 82-84.
[17] 韩海涛, 马红光, 曹建福, 等. 多输入多输出非线性系统Volterra频域核的非参数计算方法[J]. 西安交通大学学报, 2012, 46(10): 66-71.
HAN Haitao, MA Hongguang, CAO Jianfu, et al. A non-parametric identification method of Volterra frequency domain kernels for MIMO nonlinear system[J]. Journal of Xi′an Jiaotong University, 2012, 46(10): 66-71.
[18] 张家良, 曹建福, 高峰. 大型装备传动系统非线性频谱特征提取与故障诊断[J]. 控制与决策, 2012, 27(1): 135-138.
ZHANG Jialiang, CAO Jianfu, GAO Feng. Feature extraction and fault diagnosis of large-scale equipment transmission system based on nonlinear frequency spectrum[J]. Control and Decision, 2012, 27(1): 135-138.
[19] 张家良, 曹建福, 高峰, 等. 基于非线性频谱数据驱动的动态系统故障诊断方法[J]. 控制与决策, 2014, 29(1): 168-171.
ZHANG Jiangliang, CAO Jianfu, GAO Feng, et al. Fault diagnosis approach of dynamic system based on data driven of nonlinear spectrum[J]. Control and Decision, 2012, 29(1): 168-171.
[20] 梁丽, 陈磊, 李琦. 基于神经网络和Volterra级数的机理模型优化[J]. 计算机仿真, 2015, 32(8): 351-355.
LIANG Li, CHEN Lei, LI Qi. Optimization of mechanism model based on Volterra series and neural network[J]. Computer Simulation, 2015, 32(8): 351-355.
[21] 门志国, 彭秀艳, 王兴梅, 等. 基于GA优化BP神经网络计算的Volterra级数核估计算法[J]. 南京理工大学学报, 2012, 36(6): 962-967.
MEN Zhiguo , Peng Xiuyan, Wang Xingmei, et al. Volterra series kernels estimation algorithm based on GA optimized BP neural network identification[J]. Journal of Nanjing University of Science and Technology[J]. 2012, 36(6): 962-967.
[22] 吴世浩, 孟亚峰, 王超. 基于神经网络的Volterra频域核辨识方法[J]. 电光与控制, 2019, 26(2): 38-43.
WU Shihao, MENG Yafeng, WANG Chao. Identifying of Volterra frequency-domain kernels based on neural network[J]. Electronics Optics and Control, 2019, 26(2): 38-43.
[23] ZHU Yupeng, LANG Ziqiang. Design of nonlinear systems in the frequency domain: an output frequency response function-based approach[J]. IEEE Transactions on Control Systems Technology, 2018, 26(4): 1358-1371.
[24] 田静, 杨希勤. 一种对永磁同步电机的故障诊断方法[J]. 电机与控制应用, 2009, 36(8): 45-48.
TIAN Jing, YANG Xiqin. A fault diagnosis method to power permanent magnetic synchronous motor[J]. Electric Machines & Control Application, 2009, 36(8): 45-48.
(编辑 伍锦花)
收稿日期: 2020 -02 -21; 修回日期: 2020 -04 -21
基金项目(Foundation item):国家重点研发计划项目(2018YFB1306901);陕西省重点产业链项目(2019ZDLGY01-01-02) (Project(2018YFB1306901) supported by the National Key Research and Development Program of China; Project(2019ZDLGY01-01-02) supported by Key Industrial Chain of Shaanxi Province)
通信作者:陈乐瑞,博士研究生,从事非线性系统故障诊断研究;E-mail:chenlerui5566@163.com