一种基于神经网络的压电陶瓷驱动器输出控制方法与流程

文档序号:18406212发布日期:2019-08-10 00:24阅读:441来源:国知局
一种基于神经网络的压电陶瓷驱动器输出控制方法与流程

本发明属于风洞模型试验振动抑制领域,涉及一种基于神经网络的适用于风洞主动抑振支杆的压电陶瓷驱动器输出控制方法。



背景技术:

在风洞试验中,模型最常用的支撑方式是采用尾部支撑,但尾部支撑形式会导致系统刚度低,系统固有频率与风洞内脉动气流产生耦合,从而引起系统的低频振动。这样会严重影响风洞数据的准确性,而且会给风洞试验造成极大的安全隐患。在风洞支杆系统振动的抑制方法中,目前最有效且最热门的方法是采用驱动器进行主动控制抑振,压电陶瓷驱动器在结构上将压电陶瓷片串联起来,叠堆式排列;在电路上压电陶瓷片之间采用并联连接。压电陶瓷驱动器能高效的将电能转换为机械能,而且体积小,驱动力与驱动功率大。

然而,压电材料本身的物理特性使其具有迟滞、蠕变等非线性特性,严重影响了压电陶瓷驱动器在实际应用中的控制精度,其中迟滞特性对精度影响最为明显。而目前常用的控制方法多是用于线性系统,用其来控制压电陶瓷驱动器会产生较大的误差。

神经网络对于非线性系统具有很强的建模能力,而且理论上神经网络可以逼近任意一个非线性系统,而且运算量较少。因此应用神经网络对压电陶瓷驱动器的输出进行建模,会大大减少由于压电陶瓷驱动器迟滞特性导致的误差,提高系统的控制精度。

李颂华等人的专利《一种基于压电陶瓷的主轴轴承预紧力控制实验装置》,专利号为cn201810016852.8中介绍了一种基于压电陶瓷的主轴轴承预紧力控制的实验装置,对压电陶瓷精密位移与力输出特性进行应用,可以完成无负载、不同转速条件下,预紧力对主轴轴承性能的影响分析。但该方法仅将压电陶瓷应用为检测元件,没有为系统提供力的输入,也没有对其进行控制。

胡力等人于2017年在压电与声光期刊第5期发表的《基于rbf神经网络的压电执行器迟滞建模》中通过径向神经网络的建模方法,实现了压电执行器的输出位移与输入电压非线性曲线的具有较高准确性的拟合。但是该方法仅考虑了输出位移与输入电压,不能适用于存在负载、需要压电陶瓷输出力的压电陶瓷驱动器系统。



技术实现要素:

本发明要解决的技术难题是克服现有技术的缺陷,发明一种基于神经网络的压电作动器输出控制方法,该方法首先安装压电陶瓷驱动器数据采集硬件系统,采集压电陶瓷驱动器输入电压与输出力的实验数据,建立压电陶瓷驱动器神经网络模型,利用处理实验数据作为神经网络模型的输入与输出,选择合适的初始参数来训练该系统神经网络模型,最后可以在工程中调用训练好的神经网络模型进行应用。运用神经网络模型间接实现输出力的控制,避免了在实际系统中力传感器由于结构过大不能安装导致无法获取压电陶瓷驱动器输出力数值的问题,同时考虑了压电陶瓷驱动器迟滞等非线性因素,相较于线性控制方法更为精确、有效。而且此方法适应性强,能够应用于所有含有压电陶瓷驱动器的系统。

本发明采用的技术方案是一种基于神经网络的压电陶瓷驱动器输出力预测方法,其特征是,利用压电陶瓷驱动器数据采集硬件系统完成压电陶瓷驱动器输入电压与输出力的数据采集,建立压电陶瓷驱动器神经网络模型并利用实验数据训练该模型,最后可以在工程中调用训练好的神经网络模型,实现高精度的压电陶瓷驱动器输出力控制。方法的具体步骤如下:

第一步、安装压电陶瓷驱动器数据采集硬件系统

在实验开始前,先将传力螺柱5旋入力传感器7中,调节传力螺柱5到合适高度;之后力传感器7通过螺栓螺母6固定安装在安装基座2下方;将压电陶瓷驱动器4的一端安装在传力螺柱5的压电陶瓷驱动器安装槽501中,使它们紧密贴合;在压电陶瓷驱动器4的另一端面上安装球面垫片3,球面垫片3上有安装槽301与压电陶瓷驱动器端面紧密贴合;预紧螺栓1穿过安装基座2顶部的螺栓孔将预紧力施加到球面垫片3上;力传感器7接入ni系统8中的信号采集板卡,ni系统8与计算机9连接,使用虚拟仪器labview软件读取传感器信号变化,相互通讯实现对加载力信号的采集;ni系统8的电压输出板卡将电信号输入到信号放大器10中,再由信号放大器10实现电压信号向压电陶瓷驱动器4的输出。

第二步、压电陶瓷驱动器的输入电压与输出力数据采集

实验开始,启动ni系统8、计算机9与信号放大器10。操作预紧螺栓1预紧压电陶瓷驱动器4,通过计算机9上labview软件显示的预紧力的数值,使其达到预定值。通过labview软件控制ni系统输出幅值逐渐衰减的正弦波形电压,电压u波形如下:

u=e-ξωt·sin(ωt)(1)

其中,ξ为电压波形衰减率,ω为正弦电压波的角频率。

利用ni系统8实时读取并储存力传感器7的读数,直到输出电压幅值衰减到0,从而完成数据采集。

第三步、建立压电陶瓷驱动器神经网络模型

通过matlab软件,建立压电陶瓷驱动器的输入电压与输出力bp神经网络模型,一般来说,三层bp神经网络就可以很好地逼近任一非线性模型,典型三层bp神经网络结构通常包括输入层、隐含层与输出层,令输入层有两个节点,包括神经网络模型输入层为压电陶瓷驱动器输出力fn与上一循环压电陶瓷驱动器输出力fn-1;输出层有一个节点,为压电陶瓷驱动器输入电压un。给每个节点赋予初始的权值、阈值和传递函数。

bp神经网络隐含层中第i个节点的输入neti为

其中,xj表示输入层第j个节点的输入;wij表示隐含层第i个节点到输入层第j个节点之间的权值;θi表示隐含层第i个节点的阈值。

隐含层第i个节点的输出yi为

yi=φ(neti)(3)

其中,φ表示隐含层的激励函数。

输出层节点的输入net为

其中,w1i表示输出层节点到隐含层第i个节点之间的权值;a表示输出层节点的阈值。

输出层节点的输出o为

o=ψ(net)(5)

其中,ψ表示输出层的激励函数。

由此得到了未训练的压电陶瓷驱动器的输入电压与输出力的bp神经网络模型,为保证模型的准确性,还需要使用实验数据对其进行训练。

第四步、训练该系统神经网络模型并进行应用

将第一、二步得到的实验数据分为两组,分别用于神经网络模型的训练与测试,其中训练集样本为p个,测试集样本为q个。设置神经网络模型的最大训练次数、目标精度与学习率,之后将测试集数据代入神经网络模型,比较输出层节点输出o与实际输出,令系统对p个训练样本的总误差准则函数为

其中,tp为样本p的实际输出数据,op为样本p的神经网络输出数据。

之后由输出层节点的输出误差逐层计算各层神经元的输出误差,根据误差梯度下降法来调节各层的权值和阈值,使网络的最终输出接近期望值。根据公式(7)、(8)、(9)、(10)依次修正的输出层权值的修正量δw1i,输出层阈值的修正量δa,隐含层权值的修正量δwij,隐含层阈值的修正量δθi。

其中,η为神经网络学习率。

由此完成了一次数据训练以及参数修正,接下来循环往复,直到达到训练次数或目标精度,得到最终的参数。将参数代入bp神经网络,就得到了压电陶瓷驱动器的输入电压与输出力的bp神经网络模型。之后将测试集数据代入训练好的神经网络模型,根据公式(11)计算神经网络模型的输出与实际实验数据的误差,可用于评价神经网络模型的精度。

在实际应用中可以调用训练好的神经网络模型,在输入端输入期望压电陶瓷驱动器输出的力值与压电陶瓷驱动器在上一个循环输出的力值,即可得到需要提供给压电陶瓷驱动器的电压值。

本发明的有益效果是本方法可以直观准确的控制压电陶瓷驱动器的输出力的数值,解决了在实际系统中力传感器由于结构过大不能安装导致无法获取压电陶瓷驱动器输出力数值的问题,该方法只需要获取压电陶瓷驱动器的输入电压与输出力的实验数据,通过软件建立神经网络模型进行数据训练,即可得到压电陶瓷驱动器的输入电压与输出力的神经网络模型,可以根据需要的输出力计算出需要提供的输入电压,模型建立、训练方便快速。而且神经网络模型考虑了压电陶瓷驱动器的非线性特性,与传统线性控制方法相比避免了控制模型上的非线性误差,使控制结果更加准确,精度更高。另外,此方法适应性强,能够应用于所有含有压电陶瓷驱动器的系统。

附图说明

图1为压电陶瓷驱动器的输入电压与输出力的数据采集装置装配图主视图。

图2为压电陶瓷驱动器的输入电压与输出力的数据采集装置装配图左视图。

图中,1-预紧螺栓,2-安装基座,3-球面垫片,301-安装槽,4-压电陶瓷驱动器,5-传力螺柱,501-压电陶瓷驱动器安装槽,6-螺栓螺母,7-力传感器。

图3为压电陶瓷驱动器的输入电压与输出力的数据采集实验图。图中,4-压电陶瓷驱动器,7-力传感器,8-ni系统,9-计算机,10-信号放大器。

图4为压电陶瓷驱动器神经网络模型预测结果曲线图。其中,x轴-预测集样本数量,y轴-输入电压值。

图5为压电陶瓷驱动器输出力预测方法的流程图。

具体实施方式

以下结合技术方案和附图详细叙述本发明的具体实施方式。

附图3为压电陶瓷驱动器的输入电压与输出力的数据采集实验图。压电陶瓷驱动器选用的是德国physikinstrumente公司生产的未封装picastackpiezoactuatorsp-016.20高压(1000v)大力输出压电陶瓷驱动器;数据采集系统选用美国ni公司的控制器主机pxie-1082dc以及多种功能板卡,其中包括数据采集板卡,电压输出板卡;信号放大器为德国physikinstrumente公司生产的e-472.20信号放大器,额定功率550w;力传感器为honeywell公司生产的测压元件,具有高达0.1%的低误差率,可以通过虚拟仪器labview软件实现力学量单位的转换。

附图5为压电陶瓷驱动器输出力预测方法的流程图,整个预测方法分为以下四个部分,安装压电陶瓷驱动器数据采集硬件系统、压电陶瓷驱动器输入电压与输出力数据采集、建立压电陶瓷驱动器神经网络模型、训练该系统神经网络模型并进行应用。方法的具体步骤如下:

第一步、安装压电陶瓷驱动器数据采集硬件系统

本实施例中,压电陶瓷驱动器数据采集硬件系统的安装图如附图1、图2所示。在实验开始前,在实验开始前,先将传力螺柱5旋入力传感器7中,调节传力螺柱5到合适高度;之后力传感器7通过螺栓螺母6固定安装在安装基座2下方;将压电陶瓷驱动器4的一端安装在传力螺柱5的压电陶瓷驱动器安装槽501中,使它们紧密贴合;在压电陶瓷驱动器4的另一端面上安装球面垫片3,球面垫片3上有安装槽301,使安装槽301与压电陶瓷驱动器端面紧密贴合;预紧螺栓1穿过安装基座2顶部的螺栓孔将预紧力施加到球面垫片3上;力传感器7接入ni系统8中的信号采集板卡,ni系统8与计算机9连接,使用虚拟仪器labview软件读取传感器信号变化,相互通讯实现对加载力信号的采集;ni系统8的电压输出板卡将电信号输入到信号放大器10中,再由信号放大器10实现电压信号向压电陶瓷驱动器4的输出。

第二步、压电陶瓷驱动器的输入电压与输出力数据采集

实验开始,启动ni系统8、计算机9与信号放大器10。操作预紧螺栓1预紧压电陶瓷驱动器4,通过计算机9上labview软件显示的实时预紧力的数值,使其达到预定的5500n。通过labview软件控制ni系统输出幅值逐渐衰减的正弦波形电压,由公式(1)得:

u=e-ξωt·sin(ωt)

实验中,公式中参数取ξ=0.1、ω=6.28。

利用ni系统8实时读取并储存力传感器7的读数,其中ni系统采样频率为500hz,直到输出电压幅值衰减到0,从而完成数据采集。

第三步、建立压电陶瓷驱动器神经网络模型

通过matlab软件,建立压电陶瓷驱动器的输入电压与输出力bp神经网络模型,本实施例中采用三层bp神经网络,包括输入层、隐含层与输出层,其中输入层有两个节点,包括神经网络模型输入层为压电陶瓷驱动器输出力fn与上一循环压电陶瓷驱动器输出力fn-1;隐含层含有5个节点;输出层有一个节点,为压电陶瓷驱动器输入电压un,各节点的初始权值与阈值设置为1到-1之间的随机数。

根据公式(2)得bp神经网络隐含层中第i个节点的输入neti为

选择隐含层传递函数为正切s型函数,根据公式(3)得隐含层第i个节点的输出yi为

yi=φ(neti)

根据公式(4)得输出层节点的输入net为

选择输出层传递函数为线性函数,函数根据公式(5)得输出层节点的输出o为

o=ψ(net)

由此得到了未训练的压电陶瓷驱动器的输入电压与输出力的神经网络模型,为保证模型的准确性,还需要使用实验数据对其进行训练。

第四步、训练该系统神经网络模型并进行应用

数据采集过程结束后,将采集到的数据利用时间轴统一,使压电陶瓷驱动器的输入电压与力传感器数据一一对应。选取输入电压的前六个周期波形,共1500个数据对用于神经网络训练。选取其中样本序号为奇数的数据,共750组,用于神经网络模型训练,样本序号为偶数的数据,共750组,即p=750,用于神经网络模型精度测试。设置神经网络参数,其中最大训练次数为1000,目标精度为0.005,学习率为0.01。

将测试组的压电陶瓷驱动器输出力的数据输入第三步中设计的神经网络,比较输出层节点输出o与实际输出,由公式(6)可得系统对训练样本的总误差准则函数为

之后由输出层节点的输出误差逐层计算各层神经元的输出误差,根据误差梯度下降法来调节各层的权值和阈值,使网络的最终输出接近期望值。根据公式(7)(8)(9)(10),其中,p=750,依次修正的输出层权值的修正量δw1i,输出层阈值的修正量δa,隐含层权值的修正量δwij,隐含层阈值的修正量δθi。

由此完成了一次数据训练以及参数修正,接下来循环往复,直到达到训练次数或目标精度,得到最终的参数。最后将参数代入神经网络模型,就得到了压电陶瓷驱动器的输入电压与输出力的bp神经网络模型,将用于测试的750组数据输入到保存好的神经网络模型中,得到模型输出值,与实验数据对比得如图4所示图形,x代表预测集样本数量,y代表输入电压值,两种曲线分别表示预测输出和期望输出,即测量值。根据公式(11)计算可得神经网络模型的误差为0.0034,证明该神经网络模型精度很高,能够达到高精度的力输出。

将神经网络模型参数保存,之后使用模型仅需代入训练好的参数即可,不必再重复训练,因此该方法十分方便、高效。

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