2. 沈阳建筑大学信息与控制工程学院, 辽宁 沈阳 110168;
3. 上海深渊科学工程技术研究中心, 上海 201306
2. School of Information and Control Engineering, Shenyang Jianzhu University, Shenyang 110168, China;
3. Engineering Research Center of Hadal Science and Technology, Shanghai 201306, China
1 引言
微位移系统是现代科技的基础技术之一,被广泛应用于航空、航天、导弹等高精度的国防军工领域及机械、冶金、微电子等国民经济基础工业中[1].微位移平台控制是实现纳米级精密定位的核心,其研究与设计对增强我国精密位移控制技术具有重要的意义[2-3].
目前,美国nPoint公司、德国Physik Instrumente(PI)公司和哈尔滨芯明天高科技有限公司等国内外著名的精密运动控制系统生产商已具有相对成熟的纳米级精密定位平台产品.早期的微位移控制器通常采用单片机或DSP作为主控芯片,执行速度慢. FPGA拥有大量的组合逻辑资源,具有在线编程和调试功能,可实现并行计算,以其作为主控芯片的控制器日益普及[4-5].为了提高微位移平台控制的响应速度,本文以FPGA作为主控芯片. PID控制器具有算法简单而被广泛应用于各种控制系统中,其核心在于参数整定,常用的自适应PID、模糊PID、神经网络PID,遗传算法PID等参数整定方法寻优速度慢[6-9].人工蜂群算法是模拟蜜蜂群的采蜜行为而提出的一种群智能优化算法,当处理优化问题时,由侦查蜂、引领蜂和跟随蜂查找蜜源位置,蜜源位置代表优化问题的可行解,收益率最大的蜜源代表最优解.它具有参数设置少、收敛速度快、解精度高的特点,是一种用于搜索单一全局最优解的智能优化算法,但是容易陷入局部最优值[10-14].小生境技术能够较好地保持种群的多样性,将小生境与蜂群算法相结合会充分利用种群多样性,避免了陷入局部最优值[15-16],从而提高算法的全局寻优能力和收敛速度,因此,本文提出了小生镜蜂群PID(niche artificial bee colony PID,NABC-PID)算法,即采用NABC-PID算法实现微位移控制系统中PID控制器参数的自整定与优化,并采用FPGA处理器实现该功能,以提高微位移平台控制系统的响应速度和定位精度,实现纳米级定位运动控制.
2 微位移平台及实验环境构建微位移平台的精密运动控制系统由PC上位机、FPGA控制器、二维精密运动平台、激光干涉仪及其支架、环境隔离罩、精密隔振光学平台等组成,如图 1所示[17].其中,二维精密定位运动实验平台采用英国queensgate公司的产品NPSXY100A,以压电陶瓷作为驱动器,重复定位精度为亚纳米级;激光干涉仪采用雷尼绍公司的XL80,以保证高速测量时其线性分辨率可达1 nm;精密隔振光学平台采用微纳光科的刚性和抗震性能良好的WN02VD系列的气浮隔振平台,以降低外界干扰;控制系统由PC上位机和FPGA控制器组成,按照一定的控制算法控制微定位平台的运动,控制器和PC机可以通过USB进行数据通信.微位移平台采用电容传感器检测位移,压电陶瓷作为执行机构,其存在不可避免的迟滞、蠕变等非线性效应,导致定位不准确,直接影响定位精度.为了减少压电陶瓷对于定位的影响,满足设计标准[18],设计有效的控制算法来提高微位移平台的定位精度和快速性势在必行.
3 NABC-PID算法为保持解群的多样性,采用小生境技术进行局部搜索寻优实现生境进化,以获得每个小生境的局部最优解;然后,采用蜂群算法对这些局部最优解群进行全局搜索寻优,获得全局最优解;最后,将这个全局最优解作为PID控制器的比例kP积分kI和微分kD三个参数来控制微位移平台的精密运动.本文符号表示如下:
si=[si1,si2,si3]T为蜜源(候选解)种群集合S={s1,…,si,…,sNos}中蜜源i的位置(即所对应候选解),为一个表示纳米位移控制系统的kP、kI和kD三个参数的三维列向量,i={1,2,…,Nos},其中Nos为种群规模;
si′为更新后蜜源集合S′={s′1,…,si′,…,sNos′}中蜜源i所对应的更新候选解;
sUpper为表示蜜源位置搜索上界的三维列向量,sUpper1、sUpper2和sUpper3分别表示参数kP、kI和kD的取值上界;
sLower为表示蜜源位置搜索下界的三维列向量,sLower1、sLower2和sLower3分别表示参数kP、kI和kD的取值下界;
fit(si)为si的适应度,即蜜源收益率;
Nng为小生境子种群数量,且Nng能够整除Nos,即每个子种群的规模为Ng,其中Ng=Nos/Nng;
sgk为小生境子种群g集合Sg={sg1,…,sgk,…,sgNg}中蜜源k所对应的候选解,其中g={1,2,…,Nng},k={1,2,…,Ng};
SN={S1,…,Sg,…,SNng}为生境进化集合;
Tg为蜜源开采度,即被开采的次数,Tglimit为蜜源开采极限;
TN为采用小生境进化算法寻优的迭代次数;
TB为采用蜂群算法寻优的迭代次数.
3.1 目标函数及适应度计算微位移控制系统的性能指标是以系统输出位移偏差e(t)平方的积分、超调量σ和调节时间ts最小为优化目标,即减少定位误差同时兼顾快速性,则设目标函数J为[19]
(1) |
NABC-PID算法中候选解的质量由适应度衡量,值越大越好.为此,本文适应度函数为
(2) |
式中,J(si)为解si所对应的目标函数值.
3.2 小生境种群及生境进化在搜索空间中按均匀设计技术[20]产生初始种群集合S={s1,…,si,…,sNos}:
(3) |
式中rand[sUpper-sLower]为一个三维随机列向量.按照式(1)和式(2)分别计算每个解si所对应的适应度fit(si),并将适应度函数值按降序排列.按照小生境技术的串行分组原则[21]将已经排序的Nos个候选解分为个体间差异达到最小的Nng个小生境子种群,并将每个子种群集合Sg中适应度值最大和最小的个体标记为Sgmax和Sgmin.
在每个小生境局部空间g内,局域引领蜂对其候选解sgk寻优搜索更新为sgk′,其规则为
(4) |
式中,diag[rand(-1,1)]为一个3×3维的随机主对角线矩阵;sgm是在小生境局部空间Sg中随机选择的一个蜜源候选解,m={1,2,…,Ng},k≠m.另外,更新位置时,超边界个体取其相应的边界值sUpper或sLower.
Sg更新为Sg′的生境进化过程为:按式(4)更新Sg中适应度函数值最小的解sgmin为s′gmin,若fit(s′gmin)大于fit(sgmin),则用s′gmin的代替sgmin的位置;否则,按式(4)更新Sg中适应度函数值最大的解sgmax为s′gmax,若fit(s′gmax)大于fit(sgmax),则用s′gmax的代替sgmax;否则,按式(5)产生一个新候选sg′解代替sgmin:
(5) |
经TN次迭代寻优搜索后,将每个小生境内适应度最大的sgmax构成SN,SN={s1,s2,…,sg,…,sNng}.
3.3 蜜源位置更新及开采策略针对集合SN中Nng个候选解,作为蜂群算法初始候选解种群.全局引领蜂按照式(4)的机理完成蜜源搜索后,返回至蜂巢共享信息实现对跟随蜂的招募.跟随蜂按Boltzmann选择策略[22]选择跟随引领蜂进行蜜源采蜜,每个蜜源sg,被选择的概率为pg:
(6) |
式中,T=T0(0.99tB-1)为一个用来控制收益效率更新的参数,T0为其初始值;tB为蜂群算法的当前迭代次数.
引领蜂和跟随蜂会再次对最优蜜源进行确认,即跟随蜂在其所选择引领蜂所对应的蜜源附近继续按照式(4)机理进行全局搜索更新,并采用贪婪原则选择开采:若新蜜源sg′的适应度大于原来sg的适应度,则开采新蜜源;否则继续开采原蜜源,表示为
(7) |
当所有跟随蜂完成搜索寻优过程后,如果某候选解被开采(未更新)的次数超过Tglimit,则舍弃该蜜源,寻找新的蜜源,与之相对应的引领蜂转变为侦察蜂,在全局搜索空间中按式(5)的机理重新产生新蜜源候选解.直至经过TB次迭代寻优搜索,获得全局最优解smax.
3.4 NABC-PID控制算法实现步骤基于NABC-PID算法优化过程示意图如图 2所示,主要步骤为:
Step 1 根据控制系统特征信息,首先确定kP、kI和kD取值范围sUpper和sLower,系统的初始种群规模Nos(即为局域引领蜂数),小生境子种群个数Nng(即为全局引领蜂数,也为跟随蜂数),迭代次数TN、TB和Tglimit以及T0.
Step 2 按式(1)随机产生Nos个候选解,并依据适应度值划分为Nng个小生境子种群.
Step 3 按照3.2节并行对Nng个小生境候选解进行TN次迭代,实现生境进化,获得SN,作为蜂群算法的初始种群.
Step 4 全局引领蜂按照式(4)搜索新蜜源,计算适应度及共享信息,跟随蜂按式(6)概率选择引领蜂跟随至蜜源附近并按式(4)和式(7)进行搜索、确认和开采,若某蜜源开采次数超过Tglimit次,引领蜂转换为侦查蜂按式(5)重新搜索新蜜源.经过TB次迭代,获得全局最优解smax.
Step 5 将smax对应的最优参数kPopt,kIopt和kDopt作为PID控制器最终自整定参数,控制微位移平台的精密运动.
4 NABC-PID算法实验研究 4.1 Matlab仿真实验与分析实验中,对初始种群选取时应保证种群的多样性,同时兼顾算法的运行时间,经初期实验,蜂群算法引领蜂数量为20时,能有效搜索到全局最优值并且缩短寻优时间,迭代30~35次时已经能实现收敛.故小生境技术中初始种群规模Nos=400,小生境子种群个数Nng=20,即全局引领蜂与跟随蜂的数量也均为20,子种群规模为Ng=20,开采极限Tglimit=20,微位移控制系统的位移误差在纳米级,经研究PID参数在0~0.1之间,所以sUpper=[0.1,0.1,0.1],sLower=[0, 0, 0],迭代次数TN=TB=40,更新参数初始值T0=100.
采用本文所提的NABC-PID算法对纳米定位微位移控制系统的PID控制参数进行自整定和寻优,并与相同条件下的ABC-PID算法进行对比分析.目标函数J、适应度函数fit及PID参数kP、kI和kD随迭代次数的变化曲线分别如图 3~图 5所示,寻优参数及性能指标如表 1.由图 3~图 5可见,J、fit、kP、kI和kD随着迭代次数的增加而收敛,NABC-PID算法在31次迭代后基本维持不变,这时对应的最优PID参数如表 1的第2行,而ABC-PID算法需要更多迭代次数才能收敛,且收敛时NABC-PID算法的适应度函数值大于ABC-PID,说明NABC-PID算法作用于微位移平台时可以使系统更快、更好的收敛.
参数/性能指标 | ABC-PID算法 | NABC-PID算法 |
kP | 0.040 7 | 0.041 0 |
kI | 0.022 7 | 0.022 9 |
kD | 0.020 1 | 0.019 4 |
ts/ms | 4.691 5 | 2.879 2 |
σ% | 5.716 7 | 4.426 7 |
e(t)/μm | 0.019 5 | 0.012 4 |
进而将基于NABC-PID的控制器与基于ABC-PID控制器[21]的阶跃响应曲线进行对比分析,如图 6所示,其中在30 ms时加入一个幅值为3.2 μm的脉冲干扰.
4.2 微位移控制系统实验测试将基于NABC-PID算法的参数通过USB下载至下位机控制器,并通过自主开发的上位机纳米定位微位移平台监控软件NanoLocator对系统进行阶跃响应性能分析,即将NABC-PID控制器参数kP=0.041 0、kI=0.022 9、kD=0.019 4输入到监控软件中,点击运行,即实现了控制参数的下载和系统控制运行.令闭环系统的输入阶跃信号幅值为3.0 μm,并在30 ms时给系统加入幅值为3.2 μm的脉冲干扰,选取显示X方向,系统运行阶跃响应曲线及阶跃响应性能指标,如图 7所示.
由图 7可见,系统超调量σ%=4.427%、上升时间tr=1.002 ms、调节时间ts=2.879 ms,稳态误差e(t)=0.012 μm,即纳米定位微位移平台的调节时间达到毫秒级,稳态误差达到纳米级,满足纳米级位移定位精度要求,可实现高精密位移控制.另外,NABC-PID算法能够自动调整参数,具有很强的抗干扰性.
在纳米定位微位移平台监控软件的可视化监控界面上,直接点击所要移动到的位置,单击运行,可实现位移移动控制,移动过程可以在监控界面中实时显示.设置控制系统为闭环,令X、Y、Z目标位置均为25.000 μm,移动结果如图 8所示.
由图 8可见,系统由初始位置(0,0,0)向目标位置(25.000 μm,25.000 μm,25.000 μm)移动,最终停在位置(24.979 μm,24.982 μm,24.986 μm),移动误差位于0.010 μm~0.020 μm之间,再次表明了NABC-PID控制器的满足纳米位移定位系统的控制精度要求,可实现高精密位移控制.
5 结论本文针对纳米定位微位移平台控制系统控制精度不够、控制算法易陷入局部最优值这一问题,设计开发了一种小生境蜂群NABC-PID算法,将小生镜技术与人工蜂群算法相结合实现控制系统PID参数的自整定及优化,Matlab仿真实验和实验室微位移平台实验测试,均表明了本文所设计与实现的NABC-PID算法具有收敛速度快、系统的超调量小,响应快速、误差小等特点,为高精度的纳米级定位运动控制系统的研究与应用提供了有力的参考.
[1] | Huang H, Zhao H, Yang Z. Design and analysis of a compact precision positioning platform integrating strain gauges and the piezoactuator[J]. Sensors, 2012, 12(7): 125–129. |
[2] | Zhong J H, Yao B. Adaptive robust precis-ion motion control of a piezoelectric positioning stage[J]. IEEE Transactions on Control Systems Technology, 2008, 16(15): 1039–1046. |
[3] |
田艳兵, 王涛, 王美玲, 等.
波纹管驱动超精密定位平台建模及复合控制[J]. 电机与控制学报, 2014(7): 94–100.
Tian Y B, Wang T, Wang M L, et al. Modeling and compound control of bellows-driven ultra-precision positioning stage[J]. Electric Machines and Control, 2014(7): 94–100. |
[4] |
张立, 刘昆.
基于FPGA的飞轮磁轴承一体化控制系统设计[J]. 电机与控制学报, 2012(4): 84–90.
Zhang L, Liu K. Integrated control system design of magnetic bearings for flywheel based on FPGA[J]. Electric Machines and Control, 2012(4): 84–90. |
[5] |
马增辉, 刘长良.
一类非最小相位系统的PID控制器整定方法[J]. 信息与控制, 2015, 44(2): 147–151.
Ma Z H, Liu C L. Tuning method for a PID controller in a non-minimum phase system[J]. Information and Control, 2015, 44(2): 147–151. |
[6] |
王雪竹, 李洪谊, 王越超, 等.
柔性关节机器人高精度自适应反步法控制[J]. 信息与控制, 2016, 45(1): 1–7.
Wang X Z, Li H Y, Wang Y C, et al. High-precision adaptive backstepping control of flexible joint robots[J]. Information and Control, 2016, 45(1): 1–7. |
[7] |
苗振华, 孙旭东, 邵诚.
一种并行变异自适应遗传算法及其性能分析[J]. 信息与控制, 2016, 45(2): 142–150.
Miao Z H, Sun X D, Shao C. An adaptive genetic algorithm with parallel mutation and its performance evaluation[J]. Information and Control, 2016, 45(2): 142–150. |
[8] | Tzhusubaliyev Z, Medvedev A, Msilva M. Bifurcation analysis of PID-controlled neuromuscular blockade in closed-loop anesthesia[J]. Journal of Process Control, 2015: 152–163. |
[9] |
沈艳霞, 季凌燕, 纪志成.
基于径向基函数神经网络故障观测器的风能转换系统容错控制器设计[J]. 信息与控制, 2015, 44(3): 359–366.
Shen Y X, Ji L Y, Ji Z C. Design of fault-tolerant controller for wind energy conversion system based on the RBF neural network fault observer[J]. Information and Control, 2015, 44(3): 359–366. |
[10] |
片锦香, 刘美佳, 张丽秀, 等.
基于蜂群算法的机床主轴对流换热系数优化[J]. 仪器仪表学报, 2015, 36(12): 2706–2713.
Pian J X, Liu M J, Zhang L X, et al. Optimization of convective heat transfer coefficients of machine tool spindle based on bee colony algorithm[J]. Chinese Journal of scientific Instrument, 2015, 36(12): 2706–2713. DOI:10.3969/j.issn.0254-3087.2015.12.009 |
[11] | Karaboga D, Akay B. A comparative study of artificial bee colony algorithm[J]. Applied Mathematics and Computation, 2009, 8(1): 108–132. |
[12] |
徐茂鑫, 张孝顺, 余涛.
迁移蜂群优化算法及其在无功优化中的应用[J]. 自动化学报, 2017, 43(1): 83–93.
Xu M X, Zhang X S, Yu T. Transfer bees optimizer and its application on reactive power optimization[J]. Acta Automatica Sinica, 2017, 43(1): 83–93. |
[13] |
王松, 李红星.
基于遗传搜索策略的人工蜂群算法[J]. 北京联合大学学报, 2017, 31(1): 87–92.
Wang S, Li H X. Artificial bee colony algorithm based on genetic search strategy[J]. Journal of Beijing Union University:Natural Sciences, 2017, 31(1): 87–92. |
[14] |
毕晓君, 王艳娇.
用于多峰函数优化的小生境人工蜂群算法[J]. 系统工程与电子技术, 2011, 33(11): 2564–2568.
Bi X J, Wang Y J. Niche artificial bee colony algorithm for multi-peak function optimization[J]. System Engineering and Electronics, 2011, 33(11): 2564–2568. DOI:10.3969/j.issn.1001-506X.2011.11.41 |
[15] |
张贵军, 陈铭, 周晓根.
动态小生境半径两阶段多模态差分进化算法[J]. 控制与决策, 2016, 31(7): 1185–1191.
Zhang G J, Chen M, Zhou X G. Two-stage differential evolution algorithm using dynamic niche radius for multimodal optimization[J]. Control and Decision, 2016, 31(7): 1185–1191. |
[16] |
李仲欣, 韦灼彬, 沈锦林.
高效的自适应小生境遗传-模拟退火混合算法[J]. 计算机工程与设计, 2016, 37(4): 1004–1010.
Li Z X, Wei Z B, Shen J L. Efficient hybrid algorithm based on self-adaptive niche genetic algorithm and simulated annealing algorithm[J]. Computer Engineering and Design, 2016, 37(4): 1004–1010. |
[17] |
周悦, 姚箫箫, 片锦香, 等.
精密运动监控软件设计开发[J]. 控制工程, 2014, 21(6): 1–5.
Zhou Y, Yao X X, Pian J X, et al. Precision motion monitoring software design and development[J]. Control Engineering of China, 2014, 21(6): 1–5. |
[18] | Lam D, Manzie C, Cgood M. Model predictive contouring control for biaxial systems[J]. IEEE Transactions on Control Systems and Technology, 2013, 21(2): 552–559. DOI:10.1109/TCST.2012.2186299 |
[19] | Shi J Z, Liu Y, Huang J T, et al. Novel intelligent PID control of traveling wave ultrasonic motor[J]. ISA Transactions, 2014, 53(5): 1670–1679. DOI:10.1016/j.isatra.2014.05.022 |
[20] |
罗熹, 周鑫.
基于小生境的菌群算法的改进[J]. 武汉理工大学学报, 2012, 34(4): 445–448.
Luo X, Zhou X. Advanced bacterial foraging optimization based on niche technology[J]. Journal of Wuhan University of Technology, 2012, 34(4): 445–448. |
[21] | Pan J X, Wang D, Zhou Y, et al. Precision motion control method based on artificial Bee colony algorithm[C]//Proceedings of the 2nd International Conference on Harmony Search Algorithm. Piscataway, NJ, USA:IEEE, 2015:29-38. http://link.springer.com/10.1007/978-3-662-47926-1_4 |
[22] | Sellier J M, Amoroso S M, Nedjalkov M, et al. Electron dynamics in nanoscale transistors by means of Wigner and Boltzmann approaches[J]. Physica A:Statistical Mechanics and its Applications, 2014, 398: 194–198. DOI:10.1016/j.physa.2013.12.045 |