小波神经网络在无人机电机控制的应用
2019-09-25张子雄余红英
张子雄,张 艺,杨 风,余红英
( 1.中北大学 电气与控制工程学院,太原 030051;2.上海船舶电子设备研究所,上海 201108)
0 引 言
随着智能时代的到来,无人机(以下简称UAV)已被广泛应用于各个领域。UAV飞行轨迹的精确度和飞行姿态等都与电机控制系统密切相关。电机控制系统将飞控平台的控制信号转换为数字电流信号,及时调控电机的转子转速,从而使UAV按照规定轨迹平稳飞行并完成任务[1]。其中,转子位置的实时监测是UAV电机控制的关键环节,在此领域,无传感器电机控制系统已成为研究的热点。无位置传感器永磁同步电机由于效率高,安装方便,维护成本低,可用于航空航天和各种领域。
传统的永磁同步电机需要附加位置传感器提供换相信号,增加UAV负载负担,从而限制了其应用领域。因此,无位置传感器的永磁同步电机控制系统已成为航空航天研究的热点[2]。本系统设计的主要目的就是构造一个无位置传感器的转子位置信号检测电路,通过一系列处理运算和参数训练,从而获得可靠有效的转子位置信号来控制航天器运行。反电动势法在诸多转子位置检测系统中应用广泛,但该方法调速范围有限,而且忽略了电机空载时的电枢反应对换相造成的影响,所获得的信号会产生一定误差。因此,我们引入小波神经网络控制算法,该算法能够将初始模糊的系统参数自动优化,从而使UAV飞行控制达到预期结果。该算法具有较强的自学习功能,能对UAV整个飞行进行全尺度分析和较强的自适应能力。在非线性系统建模控制和特征提取等领域已经将这种方法投入使用[3-4]。
本文基于UAV永磁同步电动机的数学模型,将改进算法小波神经网络应用于UAV永磁同步电动机转子位置识别。该类电动机的转子电旋转角度与相位间电压存在一种关联,通过这种非线性关系将采集的控制信号进行大量训练,小波神经网络将输出正确有效的转子控制信号,从而控制UAV的姿态转向, 进而良好地控制UAV飞行。 本文采取改良后的遗传算法去迭代优化小波神经网络的各项性能指标,使用Simulink对算法进行仿真验证。仿真结果表明,采用该算法后,UAV在飞行的全部过程中可以有效保持恒定速度飞行;并且该控制方法具有很强的自适应性,能有效地控制UAV电机的换相。
1 UAV电机位置估算基本原理
本文的UAV采用反电动势为梯形波的三相永磁同步电机结构模型,使用星型接法,三相绕组两两导通,相电流大小相等反向,得出该电机的电压平衡方程:
式中:va,vb,vc,ia,ib,ic分别是各相绕组电压及电流;L是自感比例系数;M是互感比例系数;R是内阻;θ是转子电角度;λm是转子磁链[5]。则有:
(2)
(3)
(4)
根据基尔霍夫电流定律,ia+ib+ic=0。在永磁同步电动机运行中,电机三相绕组在任何时候总是具有i和di/dt均为0的一相绕组电流[6]。假设A阶段在某个时刻没有通电,有ia=0,ib=-ic,可以得到:
(5)
(6)
由上式能看出,转子电角度θ和电压va,vb,vc之间存在一定映射关系,即可以根据三相电压进行电动机转子电角度θ的预测。
2 小波神经网络位置估算
小波分析是新型非线性数据建模分析方法。小波变换继承了傅里叶变换的主要特性,并具有随频率改变的“时频窗”,在时、频域中都有理想的局部性能和宏观控制性能,为UAV信号时频分析和处理提供了便利。
小波神经网络能将神经网络激活,提高网络系统的辨识度,并产生良好的函数逼近效应[7]。比如将Sigmod函数(神经网络的阈值函数)用小波神经网络代换。在数据流入层到隐含层层之间,原函数的权值被小波函数的aj替换,原函数的激活阈值被bj替换,并且需要进行神经网络的训练。这是目前使用最广泛的结构,即紧致性结构[8],其收敛速度更快,精度更高。
将小波神经网络使用在UAV永磁同步电机无位置传感器控制中,可以得到更为准确的换相信号,从而让永磁同步电机在无传感器的情况下对UAV大范围内进行稳定控制,系统控制框图如图1所示。
图1 系统控制框图
2.1 小波神经网络结构设计
小波神经网络函数个数即为隐藏层层数,其中,ωi即i个隐含层节点的权值;ai,bi即i个隐含层节点的小波神经网网络函数的伸缩系数和平移系数[9]。通过反复训练后,能够将上述参数优化到最佳效果,从而进一步实现网络逼近最佳F(x)。
根据永磁同步电机位置检测的常规机制,引入了一种三输入单输出小波神经网络。这种结构采取了输出为转子电旋转角度θ,输入为定子各相电压的设计方案。经过小波神经网络的训练,它可以用于预测转子的电角度。整个小波网络的结构如图2所示。
图2 小波神经网络结构图
由于墨西哥帽小波函数的时频特性良好,且满足Rψ(t)dt=0,所以在小波神经网络隐含层层节点的激励函数中我们选用它作为母小波。即:
(7)
该非显式输入:
(8)
该隐含层输出:
(9)
从而可得网络的最终输出转子电角度θ:
(10)
式中:xi为第i个小波神经网络数据输入层的节点输入;αij为网络的数据输入层节点i到隐含层层节点j的权重;bj为小波神经网络的隐含层层节点j的平移系数;aj为小波神经网络的隐含层层节点j的伸缩系数[10,11];ψ(x)为小波神经网络的小波输入函数;ωj为小波神经网络的隐含层层节点j到输出的权重。
2.2 小波神经网络函数的初始状态
网络参数的适当初始值使系统能够迅速收敛并实现目标结果值。需要进行网络初始化的参数包括:输入层到隐含层的权值,隐含层到输出层的权值,隐含层节点的小波函数的平移系数和伸缩系数,训练次数和最大误差,修正步长因子等[12]。
小波神经网络参数初始化的优劣程度很大意义上决定了其收敛速度,其中包括αij,ai,bi等参数的初始状态[13]。步骤同下:
(1)αij初始赋值
αij初始赋值为属于[-1,1]区间的任意数, 将αij进行归一化,乘相关比例因子:
(11)
式中:p,q分别为输入层、隐含层节点的数量;C为与隐含层常量值,其取值范围是[1.8,2.2],文中取2.0。
假设第j个输入样本的极值分别为xjmax,xjmin,则:
(12)
(2)ai,bi初始化
若假设r0为母小波的时域中心,Δr是其半径,则有时间频域内的小波伸缩系区域集合:
(13)
要求小波伸缩系数必须包括输入层和输出层的全域,即得:
(14)
由小波函数的基本特性可以得到,r0=0,Δr=1.08。将得到的结果代入式(14)可求得节点平移系数bi和节点伸缩系数ai的初值。
考虑到高计算复杂度和神经网络交织的因素,隐藏层节点的总数被设计为10。运行时PID反馈算法自适应地调整每个隐藏层节点的数量。
2.3 参数优化
小波神经网络成功构建后,仍然需要经过深度训练才能发挥其作用。本文使用一种改进的梯度更新算法——Adam(Adaptive moment estimation自适应矩估计)算法来优化神经网络ωj,αij,bj和其他各项参数。
原始梯度下降算法的核心是最小化目标函数,经过重复递归优化,对每个系统参数,依据目标函数向该参数梯度的反方向,重新求得对应优化后的结果。对小波神经网络进行反复训练的目标就是找到最小目标函数。
(15)
式中:p是训练样本的数量;g为输入层样本值;y是小波网络最终输出层值[14]。下面列举小波函数尺度系数的原始梯度下降法的学习法则:
(16)
(17)
式中:e=g-y是网络输出的误差,并且xpi是第p个样本矢量的第i个输入。
如果使用原始梯度下降算法,则学习速率太大,这可能导致训练振荡并且可能发散[15]。但是在使用Adam算法后,可以改善这种现象。Adam是一种自改善的新的自优化算法,是由Kingma等人于2015年提出的。在递归优化的过程中,优化后的系统参数是自适应的,最后得到的系统参数是算法优化后的最优结果。其更新过程如下:
①定义累计项s,m:
(18)
(19)
②更新s,m:
(20)
(21)
③更新αij:
(22)
进行参数更新时,不但考虑到当前的梯度值,还增加了两个累积项(脉冲)m,s,两个超级参数β1,β2,极小值ε是为了防止零除的发生。由于总和的初始值通常设置为0,因此在训练开始时它可能很小,式(20)、式(21)主要用于放大它们,式(22)是参数更新。式(19)、式(22)中的⊗运算为计算2个矩阵的Hadamard积(哈达玛积)。其中,参数的建议值是β1=0.9 ,β2=0.999,ε=1×10-8。
由于训练速率的衰减与陡峭的方向梯度之间成正相关,所以随着系统参数在斜坡底部进行运动,从而得知参数随着优化训练而加速收敛[15]。指数衰减的累积脉冲减少了参数发生爆炸出现,从而有助于避免学习速度快速下降的问题[16]。Adam梯度下降算法相比较原始梯度下降算法更可控全局效果并且产生理想的收敛速度。
同理,对ωj,bj也用此方法进行参数优化。
3 仿真结果与分析
本文需要对UAV永磁同步电动机进行MATLAB/Simulink建模和仿真,得出实际的转子位置(电角度)和转速值,从而对UAV进行控制。将设计好的自学习小波神经网络添加在无位置传感器的UAV电机仿真验证中。其中小波神经网络的输入为定子各相电压值,输出即为转子电旋转角度值和电机转速值。将仿真结果和电机实际转子位置和转速进行对比分析,可得出算法仿真结果的准确程度。
图3 采用小波神经网络算法的电机仿真模型
通过仿真,该算法能够求解得到UAV电动机的实际转子位置和算法预估的转子位置,实际速度和估计速度,以及误差关系,如图4~图8所示。
图4 电机转子位置估计值
图5 电机转子位置实际值
图7 电机转速估计值与实际值
图8 电机转速估计误差
根据UAV电机仿真结果可知,估计转子位置和实际转子位置曲线基本对应,但是在初始阶段,因为转速未达到额定转速,电机承受电压与转子位置相关性较差,在初始阶段按照小波神经网络算法得到的偏差不甚理想;当UAV电机转速达到期望后,误差变小,接近于零。仿真结果表明,小波神经网络能够准确估算UAV转子位置和转速,并具有较高的精度,能高效控制UAV的飞行速度。
4 结 语
本文设计了一种基于改进算法的小波神经网络UAV电机控制系统。该系统采用永磁同步电机的无位置传感器检测原理,研究了一种基于自适应小波神经网络的控制方法,采用新型梯度下降法即Adma网络训练算法对参数进行训练优化,将无位置传感器时永磁同步电机运行数据作为样本,利用小波神经网络进行逼近。并用Simulink建模仿真。仿真结果表明:该UAV电机控制系统结构简单、易于实现,并能快速准确地检测UAV转子位置和转速,为UAV电机运行提供准确的换相信号,具有较大的调速范围,能够对UAV产生良好的静、动态控制效果,具有良好的应用前景。