基于在线学习误差反传算法的仿真伺服系统设计
段海滨1,2,王道波1,于秀芬3, 朱家强1
(1.南京航空航天大学 自动化学院, 江苏 南京,210016;
2.北京航空航天大学 自动化科学与电气工程学院,北京,100083;
3.中国科学院 空间科学与应用研究中心,北京,100080)
摘要: 针对无人机(UAV)仿真伺服系统的驱动模型,提出了一种将误差反传算法用于UAV仿真伺服系统在线学习设计的新方案。在该算法中采用了BP神经网络的基本思想,设计了两输入、单隐层、两输出在线学习策略,输入层分别为给定指令信号和反馈数字解算后的位置信号;隐含层单元数为12个;输出层设为2个输出单元,即经在线学习误差反传算法学习训练后的数字位置和速度,其中位置控制器采用自调节比例-积分-微分(PID)控制,速度通过数字/模拟(D/A)转换后传送到速度控制器,设定精度误差指标为0.05,训练样本数为30。用研制的UAV仿真伺服系统对UAV光纤陀螺传感器进行含实物半物理实时仿真实验,结果表明,该在线学习误差反传算法控制方案的UAV仿真伺服系统具有收敛性好、动态响应快、鲁棒性强的特点。
关键词: 误差反传算法; BP神经网络; 仿真伺服系统; 在线学习; 无人机
中图分类号:TP273; TP391 文献标识码:A 文章编号: 1672-7207(2005)02-0267-05
Design of On-line Learning Based Error Back Propagation Algorithm in Simulation Servo System
DUAN Hai-bin1,2,WANG Dao-bo1,YU Xiu-fen3,ZHU Jia-qiang1
( 1.College of Automation Engineering, Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China;
2. School of Automation Science and Electrical Engineering,
Beijing University of Aeronautics and Astronautics, Beijing 100083, China;
3. Center for Space Science and Applied Research, Chinese Academy of Sciences, Beijing 100080, China)
Abstract: Based on the driving model of unmanned aerial vehicle(UAV) simulation servo system, a novel scheme based on on-line learning error back propagation algorithm(EBPA) was proposed in designing UAV simulation servo system. The idea of back propagation(BP) neural network was adopted in the proposed algorithm. The on-line learning strategy of EBPA with two inputs, single hidden layer and two outputs was applied in this scheme. The input layer included given signal and feedback digital position; the hidden layer had 12 nerve cells; the output layer had two output nerve cells, which were trained digital position and velocity, and self-tuning proportional-integral-differential (PID) control scheme was adopted in the position controller; the digital/analog (D/A) transformed velocity signal was transmitted to velocity controller. The resolution error was 0.05, and the number of training samples was 30. Finally, Hardware-in-loop real-time simulation experiments for a type of fiber optic gyro were conducted in the newly designed UAV simulation servo system. Simulation results illustrate that the UAV simulation servo system using on-line learning based EBPA has good astringency, quick response and strong robust.
Key words: error back propagation algorithm; back propagation neural network; simulation servo system; on-line learning; unmanned aerial vehicle
-
仿真伺服系统是一种可在地面进行半实物仿真和测试的硬件设备,它在实验室环境内实时地复现飞行器在空中飞行时的动力学特性和各种飞行姿态[1],其性能与仿真实验的逼真性和置信度密切相关。
[BJ(,,,][BJ)] 第2期 段海滨,等: 基于在线学习误差反传算法的仿真伺服系统设计 BP神经网络具有信息的分布式存储、并行处理、自适应学习、非线性映射以及鲁棒控制等优点[2]。且具有偏差和至少一个“S”型隐含层加上一个线性输出的网络,能够逼近任意有理函数[3],从而BP神经网络在多变量系统中具有明显的优势。
在此,作者通过对BP神经网络的研究改进,提出了一种误差反传算法(error back propagation algorithm,简称EBPA),并设计开发了一种可在线学习的基于单隐层多变量EBPA的飞行仿真伺服系统控制器,该仿真伺服系统可用于无人机(unmanned aerial vehicle,简称UAV)做地面含实物半物理实时仿真测试实验。该伺服系统的内框、中框和外框分别模拟UAV在空中的滚转、俯仰及方位3个自由度的运动姿态,可为UAV测控系统的研制和改进提供重要技术参数。
1 伺服系统驱动模型
建立UAV仿真伺服系统的驱动模型是对其控制系统进行设计的前提。在对被控对象理论分析的基础上,可建立其驱动模型[4, 5]。式(1)~(3)给出了伺服系统的驱动模型,UAV仿真伺服系统的驱动模型控制器设计以此模型作为被控对象。
其中:La为力矩电机的电枢电感;Ra为力矩电机的电枢电阻;Km为电磁力矩系数;Jm为力矩电机的转动惯量;JL为负载的转动惯量;Dm为粘性阻尼系数;DL为框架的粘性阻尼系数;K12为力矩电机和框架的耦合刚度。
UAV仿真伺服系统的驱动模型结构如图1所示。图中:Ur为参考指令电压;Kp为功率放大器的放大倍数;Ke为力矩电机的反电势系数;θm为力矩电机的转角;θL为负载的转角。
图 1 UAV仿真伺服系统的驱动模型方框图
Fig. 1 Block diagram of driving model for UAV simulation servo system
2 误差反传算法原理
传统的BP神经网络模型一般由输入层、中间层和输出层这3个层次组成[6-8]。BP神经网络结构如图2所示。
在设计的EBPA中,借用了BP神经网络的一些基本思想。假设EBPA的输入样本为X,输入神经单元有N个,即X=[x1, x2,…,xN];隐含层有K个神经单元;输出样本为Y,输出层有M个神经单元[9-13],即Y=[y1, y2,…,yM]。
EBPA的隐含层的激励函数选择如下“S”型函数:
其中:z∈R;a为激励系数。
图 2 BP神经网络结构图
Fig. 2 Diagram of BP neural networks structure
假设对于训练样本p,定义误差函数为:
其中:εpi=(dpi-ypiθL),为EBPA网络总输出矢量Y理想值与实际值之间的误差;dpi为各个分量的理想值;ypi=o(3)pi,为这些分量的实际值。
改变EBPA中的各个加权系数w(l)ij,从而使Ep尽可能减小。采用最陡下降法修改权值,即由公式
,
导出各加权系数的调整量Δpw(k)ij的计算公式(针对编号为p的训练样本)如下:
其中:i=0,1,…,Q-1;j=0,1,…,L;l=1,2,3。经推导最后得到系数调整量Δpw(l)ij=αδ(l)pio(l-1)pj。
其中,o(l-1)pj可直接从EBPA网络中得到,δ(l)pi不能直接得到。而
,
为保证权重系数的收敛性,可在学习的初期阶段,α值选得大一些,从而使学习的速度加快,而在接近最佳点时α值必须很小。此处采用“惯性”调整算法:
其中:t0,t1,…,tk-1,tk,…表示学习的时序编号。
为了求得δ(l)pi,可用复合函数的微分法,得:
最后得到3层EBPA中所有权重系数调整量的计算公式如下。
当l=3时,
其中:i=0,1, …,M-1;j=0,1,…,K。
当l=2时,
其中:i=0,1,…,K-1;j=0,1,…,J。
当l=1时,
其中:i=0,1,…,J-1;j=0,1,…,N。
这里, o(2)pi=γpi,i=0,1,…,M-1;o(0)pj=χpj;j=0,1,…,N。
这一算法的计算过程是首先计算第3层(即输出层)的各项“误差分量”δ(3)pi,然后用δ(3)pi计算第2层(隐含层)的“等效误差分量”δ(2)pi,最后用δ(2)pi计算第1层(输入层)的“等效误差分量”δ(1)pi。只要算出这些误差分量,便可求出系数调整量。
EBPA不需要进行离线训练,通过对算法权值的在线实时更新可以保证跟踪误差的渐进稳定性,从而保证EBPA的逼近性能,这样EBPA就会表现出在线控制的良好特性。
3 伺服系统在线学习EBPA总体控制结构
UAV仿真伺服系统的在线学习EBPA总体控制结构如图3所示。
图3中,力矩电机采用直流型,用来驱动UAV仿真伺服系统的回转框和负载。力矩电机前面的电压源脉宽调制(pulse width modulated,简称PWM)功率放大电路采用了电流环校正控制, 电流环可充分发挥力矩电机的过载能力, 并承载力矩电机启动时的大电流。电流环通过前一级的速度控制器和测速机及测速调理电路完成力矩电机的速度回路的闭环控制[14]。位置环回路中的反馈元件采用的是光电码盘及其调理电路, 数字I/O卡将调理后的光电码盘信号一路送入高性能工控机中的位置控制器软件处理模块构成数字闭环回路并进行解算处理,该闭环可保证UAV仿真伺服系统达到很高的定位精度;另外一路送入高性能工控机中的EBPA模块。这种三闭环控制结构构成一个数字模拟混合控制系统, 可以有效地提高伺服系统的控制精度, 增强了UAV仿真伺服系统的鲁棒性和可靠性, 满足了实际运行时各种工作状态的要求。
图 3 UAV仿真伺服系统在线学习误差反传总体控制结构图
Fig. 3 Overall control structure diagram of UAV simulation servo system using EBPA
高性能工控机中的EBPA模块采用在线学习机制,这里设计了两输入、单隐层、两输出3层在线EBPA,输入层分别为给定指令信号和反馈数字解算后的位置信号;中间层单元数为12个;输出层设为2个输出单元,即经训练后的数字位置和速度,其中速度通过D/A转换后传送到速度控制器;位置控制器采用自调整PID控制[15, 16]。
训练样本数对训练结果有很大影响。样本数越多,则训练结果越精确,但运行时间增加,会影响UAV仿真伺服系统的实时性。所以,合理选择样本数非常重要。
4 仿真应用
将设计的单隐层EBPA在线学习控制方案应用于作者自行研制的某型UAV三自由度仿真伺服系统。该UAV三自由度仿真伺服系统采用了两输入、单隐层、两输出3层在线EBPA控制策略,输入层分别为给定指令信号和反馈数字解算后的位置信号;中间层单元数为12个;输出层设为2个输出单元。根据实际需要,这里设定精度误差指标为0.05。经过试探训练,样本数为30时结果较为合理,此时,样本数据能够反映系统的基本特征,可以得到预期的控制效果。
通过对某型UAV光纤陀螺传感器进行含实物半物理实时仿真实验,其仿真训练曲线如图4所示。
图 4 误差反传算法在线学习控制
含实物实时仿真实验曲线
Fig. 4 Hardware-in-loop real-time simulation feedback curve using EBPA on-line learning control strategy
由图4可见,该UAV仿真伺服系统对输入信号的动态响应很快,收敛性好,系统的鲁棒性很强,具有较好的控制效果。
5 结 论
a. 对误差反传算法在线学习进行了理论分析,将其在线学习机制应用于UAV仿真伺服系统。
b. 实际应用结果表明,误差反传算法的在线学习机制收敛性好,计算量小,动态响应快。
参考文献:
[1]ALMENDINGER F, ELM J, MARCHETTI J, et al. Flight Motion Simulator Performance Improvements from Advanced Data Acquisition[A]. Proceedings of SPIE—the International Society for Optical Engineering[C]. Orlando, 2001.
[2]李士勇. 模糊控制,神经网络和智能控制论[M].哈尔滨: 哈尔滨工业大学出版社,1998.
LI Shi-yong. Fuzzy Control, Neural Networks and Intelligent Cybernetics[M]. Harbin: Harbin Institute of Technology Press, 1998.
[3]OMIDVAR O, DAYHOFF J. Neural Networks and Pattern Recognition[M].San Diego: Academic Press, 1998.
[4]XIE Y, VILATHGAMUWA M, TSENG K J, et al. Modeling and Robust Adaptive Control of a Three-axis Motion Simulator[A]. IEEE Industry Applications Society Annual Meeting[C]. Chicago, 2001.
[5]李智铭.三轴飞行仿真测试转台频带拓宽技术研究[J]. 航天控制,2000,18(3):10-15.
LI Zhi-ming. The Research on Widening the Band for Three-axis Flight Simulation Table[J]. Aerospace Control, 2000, 18(3): 10-15.
[6]沈世镒. 神经网络系统理论及其应用[M].北京:科学出版社,1998.
SHEN Shi-yi. Neural Networks Theory and Its Application[M]. Beijing: Science Press, 1998.
[7]KAMARTHI V S, PITTNER S. Accelerating Neural Network Training Using Weight Extrapolations[J]. Neural Networks, 1999, 12(9): 1285-1299.
[8]陈明.神经网络模型[M].大连:大连理工大学出版社,1998.
CHEN Ming. Neural Networks Model[M]. Dalian: Dalian University of Technology Press, 1998.
[9]KAMIO T, TANAKA S, MORISUE M. Back Propagation Algorithm for Logic Oriented Neural Networks[A]. Proceedings of the IEEE-INNS-ENNS International Joint Conference on Neural Networks[C]. Como, 2000.
[10]CAMPOLUCCI P, UNCINI A, PIAZZA F, et al. On-line Learning Algorithms for Locally Recurrent Neural Networks[J]. IEEE Transactions on Neural Networks, 1999, 10(2): 253-271.
[11]CHEN C P, MILLS K J, VUKOVICH G. Neural Network Learning and Generalization for Performance Improvement of Industrial Robots[A]. Proceedings of the Canadian Conference on Electrical and Computer Engineering[C]. Calgary, 1996.
[12]ZHANG Bo, ZHANG Ling. Analysis and Improvement of Artificial Neural Network Models[A]. Proceedings of the IEEE International Conference on Intelligent Processing Systems[C]. Gold Coast, 1998.
[13]于秀芬, 段海滨, 龚华军. 基于人工神经网络BP算法的倒立摆控制研究[J].兵工自动化, 2003, 22(3):41-44.
YU Xiu-fen, DUAN Hai-bin, GONG Hua-jun. Research for Inverted Pendulum Control Based on BP Algorithm of ANN[J]. Ordnance Industry Automation, 2003, 22(3):41-44.
[14]DUAN Hai-bin, WANG Dao-bo, HUANG Xiang-hua, et al. Research on Non-linear Angular Potentiometer and Its Application in Simulation Servo System[J]. Journal of Sichuan University, 2004, 41(3): 551–554.
[15]CHEN C P, MILLS K J. Synthesis of Neural Networks and PID Control for Performance Improvement of Industrial Robots[J]. Journal of Intelligent and Robotic Systems: Theory & Applications, 1997, 20(2-4): 157-180.
[16]Kawafuku M, Sasaki M, Kato S. Self-tuning PID Control of a Flexible Micro-actuator Using Neural Networks[A]. Proceedings of the IEEE International Conference on Systems, Man and Cybernetics[C]. San Diego, 1998.
收稿日期:2004-06-18
基金项目:国家航空基础科学基金资助项目(01C52015); 江苏省“333工程”基金资助项目(2002年)
作者简介:段海滨(1976-),男,山东东营人,博士研究生,从事智能进化算法、高精度仿真伺服系统设计、先进控制理论与工程应用研究
论文联系人: 段海滨,男,博士研究生;电话:025-84890894(H), 13182949586(手机); E-mail: hebinduan@126.com