刘 岩,丁大伟
LIU Yan, DING Da-wei
(长春理工大学 机电工程学院,长春 130022)
在红外寻的弹头中,红外目标模拟器主要用来模拟目标源和干扰源,用来检测红外寻的系统的灵敏度、捕获概率和跟踪特性等性能[1]。为了达到很好的模拟效果,受控部件间的运动关系具有一定的相关性,并且必须完成对它们的准确控制,因此对目标模拟器的驱动控制系统性能要求比较高。
近年来,国内已经将单片机、FPGA和DSP等数字控制器成功的应用到多轴运动控制系统中。数字控制器具有对环境变化不敏感、可实现复杂算法和可增加附属功能等优点,是今后控制器发展的方向[2]。数字信号处理器(DSP)被广泛应用于电机控制中,如TI公司的C2000系列DSP,其可以高速完成一些较为复杂的算法,但是其外设模块结构是固定的,用户无法对其修改,使设计缺少灵活性。现场可编程逻辑门阵列(FPGA)具有集成度高、功耗低、编程配置灵活且易于移植等优点。将FPGA应用到多电机的控制系统,可以简化系统的硬件结构,增加系统设计的灵活性。在国内现有的运动控制器中,FPGA通常只负责一些简单的逻辑操作,并没有充分发挥它的性能[3]。
本文采用DSP和FPGA的结构设计了红外目标模拟器的驱动控制系统,其具有良好的人机交互界面,实现了可变光阑电机与干扰投放电机的同步变速控制,以及两个干扰投放电机间的同步控制,并且完成了对它们的精确定位。系统中对DSP和FPGA进行了功能划分,在硬件上实现了对多路电机的并行控制。
目标模拟器系统是由黑体作为红外光源产生两路红外光,经光学系统形成一路平行目标光线和两路平行干扰光线。其光学总体结构中包括离轴抛物面镜组、可变光阑、干扰模拟组件和目标模拟组件。它是一种对称的结构,包括两个对称的干扰通道和一个目标通道,主要受控部件为可变光阑(目标通道)和干扰模拟组件 (干扰通道),共有7个电机。
在模拟器系统中可变光阑机构的作用是模拟目标的形状、大小和弹目距离[4],由图1可知:
式中为为可变光阑开口的大小,L为弹目距离, 为投影物镜焦距,D为目标大小。
又因为弹目距离:
式中L0为弹目距离初值,v为弹目接近速度,t为工作时间。
图1 弹目距离模拟原理
由机械结构知可变光阑开口大小和电机的位置成一定的线性关系,则电机运动角度:
其中k为常数。
对(3)式求导得:
由式(3)、式(4)知可变光阑电机模拟目标接近时,其运动轨迹是不规则的,且其运动速度是单调增的,因此可变光阑电机需一直加速运行。
图1中干扰模拟组件1和2是对称的,都是由干扰模拟板和可控光阑组成。其中干扰模拟板的设计是以阿基米德螺旋线和高斯公式为基础的,阿基米德螺旋线又称等速螺线[5]。每个通道的模拟板包括直线板和阿基米德螺旋线板,两块模拟板需同轴安装。在工作时首先使直线板旋转一定角度,然后旋转螺线板,输出的光信号会按照直线板的角度匀速移动。可控光阑是用于实现干扰的工作状态,单干扰时将不工作的通道光阑关闭。
若干扰弹从平飞的飞机向下以速度V抛射,模拟的弹目距离为L,则根据高斯公式:
又由于:
其中x',x分别为模板线位移和模拟的干扰位移,则:
对上式求导得模板旋转的线速度:
根据式(9)知螺线板的运行速度与可变光阑电机的位置有关,其也为变速运动。模拟一次干扰时,螺线板旋转一圈,因此需对螺线板进行定位,同时在模拟连射干扰时,两次干扰间的间隔可调。
控制系统采用基于定点DSP和FPGA的结构,结合电机驱动电路以及编码器来完成对多路步进电机的驱动控制,其硬件结构如图2所示。
图2 系统硬件结构框图
根据DSP和FPGA的不同特点,在本系统中对它们进行了功能划分。DSP负责完成系统的初始化、与上位机的通信和PWM信号的产生,以及完成对电机的同步变速和电机位置的计算;FPGA主要负责完成对编码器和传感器信号的采集,通过与DSP之间的数据交换完成对电机的控制。在FPGA中还设计了脉冲发生器模块,用于模拟器系统的初始化,便于系统的扩展。系统中选用的电机均为两相混合式步进电机,本系统步进电机的驱动电路是基于东芝公司的大电流驱动芯片THB6064H设计的, THB6064H采用双全桥MOSFET驱动,输出峰值电流可以达4.5A,高耐压,具有多种细分选择,最高可以进行64细分。
本系统采用的是一种离线编制数据表,实时查表控制的方法。电机的同步变速是在DSP中实现的,由于DSP不仅是只用来对电机的控制,还需要实时的控制SCI串口,接受和发送人机交互界面需要的数据。如果采用实时计算的控制方法,一方面系统运行速度受限制,另一方面由于系统资源有限,实时计算会导致系统其它功能受影响。
可变光阑电机在有效工作时间内运行轨迹为不规则的,所以采用多份匀速运动来拟合变速运动。当弹目接近速度为v时,可变光阑电机从闭合运行到最大尺寸时(即模拟目标从初始位置到终点)的工作时间为tmax。设每份匀速运动时间为T(与系统采样时间相等),则:
由式(10)、式(11)可以计算出可变光阑电机的位置数据表。在通过查表运行时,在[nT,(n+1)T]内,电机需转过的角度为:
式中 n = 0,1,2 … N-1。
其中R[·]为取整运算。如果mn大于一个脉冲当量,在nT时刻,输出脉冲周期 ,如果mn小于一个脉冲当量,则不输出脉冲,这样就实现了可变光阑电机的变速。
干扰模拟电机运行速度与可变光阑位置有关,因此需把可变光阑的最大开口尺寸等分,计算出对应干扰模拟电机的速度,建立速度表。在每个可变光阑工作时间T内,首先读出其位置,然后通过查表给出干扰模拟电机的运行速度,实现干扰模拟电机与可变光阑电机间的同步变速。
在DSP接受到上位机发射命令后,将执行电机同步变速子程序,其流程如图3所示。θ0、θ1、V分别为可变光阑电机初始位置、需要工作到的位置和干扰模拟电机速度。在此程序中,主要任务是设定系统工作的初值,系统采样的时间可以由制表间隔确定。
图3 同步变速子程序流程图
中断程序主要完成主从电机位置的采集,以及对可变光阑电机和干扰模拟电机工作速度值的更新,即对定时器1、2重新装载周期值,实现电机的变速,其程序流程如图4所示。
图4 中断服务程序
在做实验时,系统通过编码器对可变光阑电机和干扰模拟电机进行了速度测试。测试方法为在一定采样时间内,通过编码器读取电机的位置值,通过仿真器把数据导出,然后通过Matalb软件计算分析。
可变光阑电机工作速度与模拟的弹目接近距离和速度有关,实验中测试了模拟弹目距离初值为10000m,终点为450m,模拟速度分别为1000m/s、600m/s、100m/s时的可变光阑电机工作情况。实验结果如图6所示。从图中可以看出,电机在三种模拟速度下,工作时间满足设计的要求。电机在前段部分速度是一直加速运行的,运行速度与建立的速度数据表相比,通过计算均方误差在1%以内。为了使电机能够停在最终模拟位置,在电机工作末尾还作了一定的减速处理。
干扰模拟电机工作速度与可变光阑电机位置有关,实验中测试了投放一次干扰时电机的工作速度值,如图6所示。
图5 可变光阑电机运行结果
图6 干扰模拟电机运行结果
图6中上图是左右通道干扰模拟电机在目标模拟速度为250m/s,干扰投放速度为10m/s时的运行结果对比,从图中可以看出,两边干扰同时投放时电机基本保持同步,满足系统的设计要求。下图是在模拟目标速度为600m/s和250m/s,干扰投放速度为10m/s时的运行结果。从图中可以看出干扰电机运行速度与可变光阑电机位置有关,模拟速度在600m/s时,干扰模拟电机速度上升比较快,对应可变光阑位置变化比较大;而250m/s时投放一次干扰,干扰模拟电机速度基本保持不变,可变光阑电机位置基本不变。通过对测试数据中的一些数据计算分析,其误差可以保证在2%以内。
本文以某红外目标模拟器系统为背景,设计了一套基于DSP和FPGA的控制系统。通过对DSP和FPGA的功能划分,实现了对目标模拟器中多路步进电机的控制。文中首先通过分析目标模拟器的基本工作原理,即在正常工作时,模拟器中受控部件如可变光阑电机和干扰模拟电机需同步变速运行。系统中提出一种三路电机的同步变速算法,实验结果表明,该控制系统可以实现对三路电机的同步变速以及其他电机的联动操作,可以对电机进行定位,具有较好的动、稳态性能,满足模拟器系统的性能要求。另外使用DSP和FPGA的控制系统结构,具有一定的通用性,便于进一步研究其他多轴运动控制系统的设计。
[1] 戴景明,萧鹏.红外目标模拟器校准系统研究与分析[J].仪器仪表学报,2007,28(4),96-99,117.
[2] 王大彧,郭宏.采用DSP和FPGA直驱阀用音圈电机驱动控制系统[J].电机与控制学报,2011,15(4):7-12.
[3] 颜景斌,刘嘉辉,谢金宝,等.矢量控制速度伺服系统的FPGA实现[J].电机与控制学报,2007,11(1):17-20.
[4] 王治乐,张伟,何芸芸,等.红外目标模拟器视场光阑机构研究[A].纪念马祖光院士全国光电子与光电信息技术学术研讨会论文集[C],2006:614-616.
[5] 胡洋,冯进良,闫钰峰,等.多目标模拟干扰器中的运动特征的模拟[J].长春理工大学学报,2011,34(1):30-33.