基于模糊神经网络的超声电机转速控制的制作方法

文档序号:14196870阅读:156来源:国知局
基于模糊神经网络的超声电机转速控制的制作方法

本发明涉及一种超声电机速度控制,具体涉及一种基于蚁群一粒子群混合算法优化模糊神经网络的超声电机速度控制方法,属于计算机应用与自动控制领域。



背景技术:

超声电机(usm)是20世纪末发展起来的一种微小型驱动电机。与传统的电磁电机相比,超声电机结构紧凑、体积小、重量轻、微位移、低转速、大转矩、运行无噪声、不受电磁干扰、耐低温等特性,可谓是一种较为理想的伺服驱动执行器件,已广泛应用于航空航天、医疗器械、精密微动机构、办公自动化、机器人工业、高档汽车、军事及工业控制等领域。因超声电机自身参数的高度非线性、时变性,特别是电机工作过程中伴随严重的磨擦过程,运行特性呈现很多非线性和不确定因素,而且usm受温度和外加负载的影响较大,所以难以建立其精确的数学模型,很难通过传统控制方法实现高精度的速度伺服控制。目前很多学者和科技人员为解决超声电机的驱动问题,做了许多探索和实验,如应用pid控制、模糊控制、神经网络等优化控制usm。然而采取以上方法时,仍然不能有效解决超声电机转速波动较大及运行不稳定性的问题,从而不能保证超声电机精确的转速跟踪和优良的动态控制性能。为此,需要采取性能更优的控制器用于超声电机的转速控制系统,以便增强usm控制系统转速跟踪与响应能力,提高系统的控制精度高及抗干扰能力。



技术实现要素:

为克服上述现有方法存在的问题与不足,增强控制系统的鲁棒性和抗扰动能力,精准地实现超声电机的转速控制,本发明提出一种基于蚁群-粒子群混合算法优化模糊神经网络的超声电机转速控制方法。即将蚁群算法和粒子群算法组成递阶结构优化模糊神经网络,应用蚁群算法的全局搜索和粒子群算法的局部搜索功能,优化模糊神经网络控制器的结构参数,并且将该控制器引入超声电机的转速控制系统。本发明的技术方案是:

基于蚁群-粒子群混合算法优化模糊神经网络的超声电机转速控制,由速度参考模型设定电机的转速跟踪目标,可以是恒定转速、阶跃转速等。在系统转速控制内环中引入电机定子振动信号检测单元,以增强usm速度跟踪准确度,提高usm的速度响应快速性。控制原理结构中的模糊神经网络(即fnn)控制器的功能是控制超声电机的转速,其输入量分别为转速误差e和误差e的变化率δe,e由系统结构中参考模型的给定转速信号n*与usm转速检测部件实际转速量n比较计算得出,即e=n*-n。模糊神经网络控制器结构参数通过蚁群——粒子群算法在线优化求取,以保证超声电机控制系统的实际输出转速n能及时准确跟踪参考模型的转速输出n*,即e→0。

对模糊神经网络控制器结构参数的优化过程,就是通过学习训练不断调整和更新高斯隶属度函数参数mij和δij、连接权值ωjk和ωko过程。蚁群算法全局搜索能力强,但比较容易产生停滞现象,搜索时间较长,而粒子群算法具有较快的寻优求解速度,将全局搜索的蚁群算法作为主级,将局部搜索的粒子群算法作为从级,组成主从递阶结构对模糊神经网络参数进行训练优化,提高模糊神经网络的泛化能力和快速全局收敛性。蚁群算法将网络需要训练的参数在取值范围内求得有限个离散值;粒子群算法搜索寻优实际上是粒子速度和位置的改变过程,所以模糊神经网络中的高斯隶属函数均值、标准差和权重应该与粒子的位置相对应。具体优化步骤为:

第1步:初始化。蚁群初始化主要设定时间、迭代次数nc、最大迭代次数ncmax、蚂蚁数目s、初始信息素ρ等,且让全部蚂蚁放置在蚁巢;粒子群初始化包括设置粒子数h、粒子初始位置、速度、惯性因子ωmax和ωmin、加速因子c1和c2、最大迭代次数mp等。

第2步:启动全部蚂蚁,每只蚂蚁k(k=1,2……s)从集合ipi开始,按次序从ipi中选取元素,直至蚁群中所有蚂蚁均搜寻到食物源。

第3步:将每只蚂蚁选取值作为fnn结构参数训练样本,然后按照下式求取网络输出平均相对误差,记录目前fnn结构参数最好解。且根据蚁群算法对全部集合中各元素信息素更新调整。

上式中,ek定义为模糊神经网络期望输出与实际值的平均相对误差,yi表示fnn的实际输出值,oi代表fnn期望输出值,s为蚂蚁样本数量,因此,当网络训练输出误差ek减小时,相应信息素浓度就增大。

第4步:采用粒子群算法改进第3步中求得的最优解。及时更新粒子的运行速度与所处位置。假如当前找到的粒子最好位置pbest不能优于粒子当前位置pnow,那么令pbest=pnow;假如当前搜出的全局最好位置gbest不能优于粒子当前位置pnow,那么令gbest=pnow。如果没有达到粒子群最大迭代次数,继续对粒子当前位置与最优位置pbest及gbest进行比较执行。

第5步:循环次数增1。若目前最优解得到改进,更新信息素浓度。

第6步:如果进化满足最大迭代次数,便停止迭代过程,同时得出模糊神经网络结构参数最优解,否则将跳至第2步循环执行。

本发明的有益效果归纳如下:

本发明针对超声电机运行时具有的高度非线性、时变性及强耦合性,为有效破解超声电机建模困难、电机运行中易受负载扰动影响等问题,提出蚁群算法和粒子群算法相融合优化模糊神经网络参数的超声电机转速控制方案。蚁群-粒子群算法能发挥蚁群算法和粒子群算法各自优势,并弥补其不足,不仅保持蚁群算法较强的全局搜索寻优性能,而且又具备粒子群算法较好的局部快速搜索能力,该算法在应用中显示出很好的参数寻优能力。相比传统的bp算法训练模糊神经网络控制方法,该系统能实现对超声电机速度的自适应跟踪,速度脉动较小,调节精度高,动态性能较好,抗干扰能力强。

附图说明

图1为超声电机转速控制系统原理示意图

图2为模糊神经网络结构模型

图3为蚁群-粒子群算法优化模糊神经网络的usm控制速度曲线

图4为传统bp训练模糊神经网络的usm控制速度曲线

图5为蚁群-粒子群算法优化模糊神经网络突加负载时usm速度响应曲线

图6为传统bp训练模糊神经网络突加负载时usm速度响应曲线

图7为超声电机速度控制实验原理图

图8为超声电机速度控制实验平台截图

图9为超声电机恒转速跟踪实验曲线

图10为超声电机阶跃转速跟踪实验曲线

具体实施方式

以下结合附图和实施例对本发明做进一步详细阐释,主要从超声电机转速控制系统、模糊神经网络控制器、模糊神经网络控制器结构参数的优化、仿真分析以及实验验证等五个方面对本发明加以介绍。

1.超声电机转速控制系统

图1为超声电机转速控制系统原理示意图。由速度参考模型设定电机的转速跟踪目标,可以是恒定转速、阶跃转速等。在系统转速控制内环中引入电机定子振动信号检测单元,以增强usm速度跟踪准确度,提高usm的速度响应快速性。控制原理结构中的模糊神经网络(即fnn)控制器的功能是控制超声电机的转速,其输入量分别为转速误差e和误差e的变化率δe,e由系统结构中参考模型的给定转速信号n*与usm转速检测部件实际转速量n比较计算得出,即e=n*-n。模糊神经网络控制器结构参数通过蚁群-粒子群算法在线优化求取,以保证超声电机控制系统的实际输出转速n能及时准确跟踪参考模型的转速输出n*,即e→0。

2模糊神经网络(fnn)控制器

usm参考模型自适应转速控制系统中模糊神经网络控制器结构如图2所示。控制器由输入层(i层)、隶属函数层(j层)、规则层(k层)、输出层(o层)共4层前向神经网络组成。在fnn输入层中,转速误差e及其变化率δe由输入层i节点传至第2层,可以表示为:

fnn的隶属函数层(模糊化层)主要负责对输入变量进行模糊化处理,每个输入变量均分别表示为模糊子集{nd、nm、nx、ze、px、pm、pd},其中,nd、pd分别代表为负大、正大,nm、pm分别代表负中、正中,nx、px分别代表负小、正小,ze为零。该层的输出为各节点输入变量对应模糊子集的隶属度函数,这里隶属度函数采取高斯函数形式表示。该层第j个节点的输出与输入可表示为:

mij和δij分别为的隶属高斯函数均值和标准差。

在fnn的规则层中,每个节点对应相应的模糊逻辑运算规则。即:

其中,是规则层中的第j个输入量;ωjk为隶属函数与规则层之间的连接权值。

fnn的最后一层是输出层,它只有1个节点,其输出量为规则层输出信号经处理后的总和。

式中,是抵达第4层的第k个输入量,ωko是第3层与第4层间的连接权值。

3.fnn控制器结构参数的优化

对上述fnn控制器的结构参数优化过程,就是通过学习训练不断调整和更新高斯隶属度函数参数mij和δij、连接权值ωjk和ωko过程,所以可调参数mij、δij、ωjk、ωko对模糊神经网络控制器性能产生重要影响。由于本控制系统中e及其变化率δe两个输入变量共有14个模糊子集,因此需要训练的mij和δij各14个;规则层神经元个数为nj=7×7=49,故模糊神经网络需要训练的参数共49+2×14=77个。以往采取传统的bp梯度下降法优化模糊神经网络的结构参数,收敛速度慢,比较容易陷入局部极小值,而且优化效率较低,为此本发明提出将全局搜索的蚁群算法作为主级,将局部搜索的粒子群算法作为从级,组成主从递阶结构对模糊神经网络参数进行训练优化,可以提高模糊神经网络的泛化能力和快速全局收敛等。

(1)蚁群算法

蚁群优化(aco)算法属于一种随机搜索的智能优化算法,它是以模仿蚂蚁群体间的传递信息行为而实现类似搜索食物源的寻优目标。蚂蚁在行走路程中,一般会留下一种特殊的化学物质——信息素,所有蚂蚁都是根据此信息素以及信息素浓度而决定自身的行走路线,并始终向着高浓度信息素的路径方向运动。目前越来越多的蚂蚁通过某条路径时,后面的蚂蚁选取这条路径的机率就增大。蚂蚁各个体间正是以此信息交流方式选择最优路径,并实现最快捷搜索食物源的目的。设待学习优化的模糊神经网络有m个参数,包括所有的网络权值和阈值(如mij、δij、ωjk、ωko共77个,即m为77),设定为p1、p2……pm,将pi(1≤i≤m)设定成n个非零随机数,并形成集合ipi。假设蚂蚁的数量是s,所有蚂蚁均由集合ipi出发搜索食物,按照集合ipi每个元素的信息素状态,从集合ipi随机并选择唯一元素,而且对其信息素进行及时更新。每只蚂蚁k(k=1,2……s)路径选择概率规律为:

通过式(7)和式(8)更新集合ipi元素的信息素。

τj(ipi)(t+1)=ρτj(ipi)(t)+δτj(ipi)(7)

这里,参数ρ(0≤ρ≤1)为信息素的残余度,为集合ipi中第k只蚂蚁在第j个元素pj(ipi)上留下的信息素,该信息素大小可以由公式(9)求取。

上式中,q是用来控制信息素的调节速度,一般设定为常数;ek是蚁群中第k只蚂蚁在本次循环所经历的路径总长度。为克服aco算法早熟和局部收敛问题,这里采取自适应更新信息素方法。将信息素量值限制在[τmin,τmax],将(7)式变换为:

τj(ipi)(t+1)=ρ1+φ(m)τj(ipi)(t)+δτj(ipi)(τ>τmax)(10)

τj(ipi)(t+1)=ρ1-φ(m)τj(ipi)(t)+δτj(ipi)(τ<τmin)(11)

式中φ(m)表示与迭代次数成正比的函数。

(2)粒子群算法

粒子群优化(pso)算法是一种基于仿生的集群优化算法。pso算法来源于对鸟群的捕食行为模拟和研究。pso算法中,每个优化问题解都是搜索空间的一只鸟,称为“粒子”,即每个粒子的位置就是一个潜在的解。标准pso算法根据式(12)和(13)进行迭代,直至搜寻粒子群中达到最小误差要求的最优位置。

vij(t+1)=ωvij(t)+c1*r1*(p1(t)-xij(t))+c2*r2*(gj(t)-xij(t))(12)

xij(t+1)=xij(t)+vij(t+1)(13)

其中,j=1,2,…d,t是寻优迭代次数;xij(t)是粒子第t代时的当前位置;vij(t)是粒子第t代时的速度;ω是能维持粒子运动惯性的惯性权重,c1、c2定义为加速或学习因子,它们各自调整向全局和向个体最优粒子方向飞行的最大步长;r1、r2均是[0,1]范围内的随机值。

在标准pso算法寻优时,极容易发生早熟现象,同时粒子在全局最优解附近也会出现振荡。因此提出改进型pso算法,让惯性权重ω根据粒子适配值作自动调节,即:

其中,f是粒子适配值;fave表示每代粒子的平均适配值;fmax表示粒子群中最大适配值

(3)蚁群与粒子群算法结合优化网络参数过程

蚁群算法比较容易产生停滞现象,搜索时间较长。粒子群算法又具有较快的寻优求解速度,因此将蚁群算法和粒子群算法组成蚁群算法-粒子群即aco-pso混合算法,以优化模糊神经网络参数。蚁群算法将网络需要训练的参数在取值范围内求得有限个离散值。pso搜索寻优实际上是粒子速度和位置的改变过程,所以模糊神经网络学习算法中的高斯隶属函数均值、标准差和权重应该与粒子的位置相对应。

第1步:初始化。蚁群初始化主要设定时间、迭代次数nc、最大迭代次数ncmax、蚂蚁数目s、初始信息素ρ等,且让全部蚂蚁放置在蚁巢;粒子群初始化包括设置粒子数h、粒子初始位置、速度、惯性因子ωmax和ωmin、加速因子c1和c2、最大迭代次数mp等。

第2步:启动全部蚂蚁,每只蚂蚁k(k=1,2……s)从集合ipi开始,按次序从ipi中选取元素,直至蚁群中所有蚂蚁均搜寻到食物源。

第3步:将每只蚂蚁选取值作为fnn结构参数训练样本,然后按照(15)式求取其网络输出平均相对误差,记录目前fnn结构参数最好解[5]。且根据(8)~(11)式对全部集合中各元素信息素更新调整。式(9)中ek定义为模糊神经网络期望输出与实际值的平均相对误差,定义公式为:

其中,yi表示fnn的实际输出值,oi代表fnn期望输出值,s为蚂蚁样本数量,因此,当网络训练输出误差ek减小时,相应信息素浓度就增大。式(10)和(11)中的φ(m)=m/15,其中m为连续收敛次数。

第4步:采用粒子群算法改进第3步中求得的最优解。首先按式(15)计算粒子适应度,并按式(12)和式(13)及时更新粒子的运行速度与所处位置。假如当前找到的粒子最好位置pbest不能优于粒子当前位置pnew,那么令pbest=pnew;假如当前搜出的全局最好位置gbest不能优于粒子当前位置pnow,那么令gbest=pnow。如果没有达到粒子群最大迭代次数,继续对粒子当前位置与最优位置pbest及gbest进行比较执行。

第5步:循环次数增1。若目前最优解得到改进,更新信息素浓度。

第6步:如果进化满足最大迭代次数,便停止迭代过程,同时得出模糊神经网络结构参数最优解,否则将跳至第2步循环执行。

4.仿真分析

利用matlab/simulink对usm控制系统进行仿真研究。应用蚁群与粒子群算法结合(即aco-pso混合算法)训练优化模糊神经网络的各参数选取为:ρ=0.7,q=20,ncmax=300,s=100;h=30,mp=55,ωmax=1.6,ωmin=0.3,c1=c2=2。为对比不同算法训练模糊神经网络性能优劣,本发明分别利用aco算法、pso算法以及aco-pso三种算法在相同情况下对fnn进行学习训练,由表1的训练结果分析得到,采用aco-pso混合算法训练模糊神经网络,训练时间较短,训练精度最高,无论是在寻优时间效率上还是寻优精度方面,都取得较好的优化性能。

表1三种算法的模糊神经网络训练结果

图3、图4分别是设定目标转速90r/min且带0.2n·m负载时,本发明设计的经aco-pso优化模糊神经网络方法和按bp算法优化的传统模糊神经网络方法usm系统速度仿真特性曲线。图4在稳态时的速度波动较图2大且明显。与传统的bp算法优化模糊神经网络控制相比,经aca-pso优化fnn控制器的控制系统的动态响应与静态特性明显优于传统模糊神经网络控制。

为验证经aco-pso算法优化的模糊神经网络控制器的抗干扰能力,t=0.15s时刻又突加0.4n·m负载,并同传统bp算法训练的模糊神经网络控制进行比较分析。从图5、图6对比可知,当系统突加负载时,由aco-pso算法优化的模糊神经网络系统能使usm速度迅速稳定在90r/min,转速响应快,转速波动小,对外界负载扰动能快速自动调节,抗干扰能力强,稳态后系统控制精度较高。而传统bp算法训练的模糊神经网络当突加2倍负载后,却出现较大的转速超调及脉动。所以,综合超声电机起动、速度跟踪及负载扰动情况而言,经aca-pso算法优化的模糊神经网络控制器具有更好的动态特性和鲁棒性。

5.实验验证

基于dsp的超声电机转速控制系统结构原理框图及实验平台如图7、图8所示。控制系统由pc机、dsp(数字信号处理器)、超声电机驱动器、光电编码器、示波器等功能设备组成。超声电机为直径60mm行波型电机,dsp选用tms320lf2407芯片。光电编码器选用5000线model775a。现场实验测试时,通过光电编码器将超声电机的旋转角位移转换成连续的电脉冲信号,再通过f/v(频率/电压)变换和a/d(数/模)转换后传给dsp,dsp处理后转换为速度值,作为输入变量供给dsp进行实时计算,同时通过dsp的串行口传送至pc机进行显示和保存。数据采样频率选取为1000hz。通过usm速度参考输入量及实际转速反馈量的比较运算,在压控振荡器(采用cd4046)的控制端输出控制电压,从而改变usm驱动电路频率,有效驱动超声电机。

利用示波器分别观察设计的控制系统分别跟踪恒定目标转速80r/min和阶跃目标转速80r/mi→50r/mi→80r/mi→50r/mi时的实验结果如图9、图10所示(usm电机负载力矩为0.5n·m)。图9中usm跟随目标转速的波动很小,仅在±1.8r/mim左右,近似一条直线,说明对负载的适应性较强。图10中当usm目标转速设为80r/mi时,实测运行的转速波动范围为±1.7r/mim;当目标转速设为50r/mi时,实测运行的转速波动范围为±2.1r/mim。

以上内容所述,仅是本发明的较佳实施例,并没有对本发明进行任何形式上的限制,凡依本发明申请专利范围内所做的任何简单修改、等同变化,都应在本发明的涵盖范畴。

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