基于双DSP的某飞行器飞行姿态控制系统的软件设计*
2015-01-01秦东旭
倪 原,刘 琦,秦东旭,刘 源
(西安工业大学 电子信息工程学院,西安710021)
在现代战争中,作为精确打击实现的手段,飞行器武器在近些年几场典型的高技术战争中得到了广泛应用.飞行器飞行姿态控制系统包括了GPS导航系统和控制系统,控制系统主要由飞行器上的小型处理器来完成飞行轨迹偏差的计算、导引指令的生成以及对舵机偏转的控制[1-3].在专门用于控制数字电机的数字信号处理器还没有出现的时代,研发人员一直在研究通过单片机来实现对电动舵机的控制.飞行姿态控制系统需要在高速运动的情况下进行大量的数据处理,所以运行速度相对较低的单片机是无法满足的[4-5].20世纪80年代初出现的数字信号处理器(Digital Signal Processor,DSP)适应了飞行器武器对数据计算处理速度的需要.但是如果采用单DSP,既要执行数据采集和计算,还要进行姿态控制,无法有效地缩短控制周期[6-7].本控制系统的主控制器采用了两块TI公司生产的TMS320F28335DSP芯片,将导航数据计算和飞行姿态控制分开,避免了单DSP计算数据量过大影响控制系统反应速度的问题[8].
此外,传统的飞行器都是采用液压伺服系统或气压伺服系统,但是这些伺服系统具有结构复杂、加工精度高、质量大、成本高、技术难度大等缺点;本系统的舵机伺服系统采用了永磁无刷直流电机作为伺服电机,具有成本低、易于控制、控制精度高和可靠性高等优点[9].
1 双DSP飞行姿态控制系统的分析
1.1 控制系统原理
飞行器姿态控制系统的功能是控制和稳定飞行器的飞行.控制是指按控制指令的要求操纵舵面偏转,改变飞行器的姿态,使飞行器沿基准轨道飞行.稳定是指消除因干扰引起的飞行器姿态的变化,使飞行器的飞行方向不受扰动的影响.控制系统原理如图1所示.
图1 控制系统原理图Fig.1 Principle of the control system
飞行器飞行姿态控制系统包括舵机回路及姿态回路.舵机回路的主要作用是通过舵面位置传感器确定当前的舵面位置,为主控制器形成控制指令提供参考;姿态回路的主要作用是通过惯性导航装置检测飞行器的实时姿态角,从而为飞行器的稳定飞行提供参考.
1.2 控制系统的硬件结构
飞行器姿态控制系统主要由捷联惯导系统、主控制器及舵机系统构成.飞行器的实时飞行姿态信息由捷联惯导系统给定.舵面的实时位置信号是由舵机输出轴上的角度传感器提供给副DSP,该位置信号经过调理电路处理之后输入到副DSP的A/D采样端.副DSP通过控制器局域网络(Controller Area Netwrok,CAN)总线接收到主 DSP计算的姿态偏差信息,求得四路舵机的预定参考位置,经过内部控制算法处理后输出控制信号,经过专用四路舵机驱动器,驱动四路舵机按要求转动.舵机作为飞行轨迹控制系统的执行机构,由四套无刷直流电机、谐波减速器、位置传感器组成.整个系统的硬件结构如图2所示.
图2 控制系统硬件结构图Fig.2 Hardware structure of the conrtol system
2 控制算法的分析
2.1 弹体坐标系与地面坐标系
在飞行器飞行的过程中导航系统要实时计算飞行器所处的位置和姿态,其位置和姿态是由弹体坐标系和大地坐标系之间的关系确定.
如图3所示为飞行器在弹体坐标系和地面坐标系的示意图,O′X′Y′Z′为弹体坐标系,OXYZ为地面坐标系.
弹体坐标系的原点O′为飞行器质心.O′X′轴与弹体纵轴重合,指向头部为正;O′Y′轴在弹体纵向对称平面内,垂直于O′X′轴,向上为正;O′Z′轴垂直于X′O′Y′.弹体坐标系与飞行器固联,是一个动坐标系.O′X′、O′Y′、O′Z′与飞行器的相对方向关系在飞行过程中保持不变,三轴方向与弹体的相对关系在发射之初就已确定.
地面坐标系OXYZ与地球固联,原点O通常取飞行器质心在地面上的投影点,OX轴在水平面内,指向目标(或目标在地面的投影)为正;OY轴与地面垂直,向上为正;OZ轴按右手定则确定[10].
图3 飞行器在弹体坐标系和地面坐标系示意图Fig.3 The sketch of the aircraft in the body coordinate system and the geographic coordinate system
航向角φ为弹体坐标系O′Y′轴在大地坐标系的投影与大地坐标系OY轴的夹角,以正北为0度,正北向东偏转为正;俯仰角θ为弹体坐标系O′Y′轴与其在大地坐标系的投影间的夹角,以飞行器抬头为正;横滚角γ为弹体坐标系的X′O′Y′面与O′X′轴之间的夹角,以逆时针方向为正.
2.2 控制算法的设计与仿真
在直角坐标系中,根据立体几何关系,由俯仰角偏差和航向角偏差便可以得到飞行器在三维空间里的偏航角Δφ.本系统舵机的安装方式为“X”式,因此由“X”式舵机在飞行器飞行时的动作特点以及气动关系可找出三维空间中的偏航角度Δφ与四路舵机舵面位置δ1、δ2、δ3、δ4之间的关系.
在计算出四路舵机的预定舵面位置δ1、δ2、δ3、δ4后,根据四路舵机的当前舵面位置σ1、σ2、σ3、σ4,再由式(2)可求得四路舵机的舵面位置偏差err1、err2、err3、err4.
飞行姿态控制系统工作的时候是在飞行器处于高速飞行的过程中,为了使舵机能更精确和稳定地的调整飞行器的飞行姿态,采用增量式PID算法对输出的控制信号进行算法处理.由PID控制器组成的控制回路原理如图4所示.
图4 PID控制器组成的控制回路原理图Fig.4 Principle of the control loop with PID controller
其中KJ/(TJs+1)为系统的舵机传递函数,Kδ/(Tδ2s2+2ξδTδs+1)为弹体传递函数,其中KJ、Kδ为比例系数,TJ、Tδ为时间常数,ξδ为阻尼系数,这些参数由舵机转动惯量以及弹体的质量、质心等参数决定.通过对PID参数的整定,经Matlab仿真得到控制回路的单位阶跃响应曲线如图5所示.
图5 控制回路的阶跃响应曲线ig.5 Step response curve of the conrtol loop
3 软件设计
控制系统软件主程序主要包括系统初始化和舵机控制两部分.系统初始化包括初始化DSP需要用到的控制寄存器(包括设定系统时钟、系统状态寄存器等)、初始化I/O端口(包括设定F28335片内多路复用的I/O口功能及其极性)、初始化中断设置(确定系统所需要用到的中断类别及中断源)、检测电机的初始位置、初始化所需用到的控制变量等.舵机控制主要包括导航数据的接收、偏差计算及对姿态角的控制.主程序框如图6所示.
图6 控制系统主程序流程图Fig.6 The flow chart of the main programm of the conrtol system
4 软件测试
对控制系统的软件在地面进行测试,在不同的飞行姿态下对控制系统进行控制算法和舵机位置控制的测试,以判断舵机控制是否正确.另外对单DSP和双DSP的控制周期进行了测试和比较.测试通过地面测试台进行,测试台可以设定飞行轨迹参数及调整飞行器的航向角、俯仰角和高度.
首先记录飞行器在静止状态下的参数,通过轨迹设计功能设定好飞行器的预定飞行轨迹参数,即不同高度时的航向角和俯仰角;控制飞行器进入发射状态,通过改变气压高度计的气压改变飞行器的实时高度,通过试验台改变航向角和俯仰角,判断舵机的运动方向是否正确.在测试中,用调试软件记录单DSP和双DSP的控制周期.通过测试,在不同的飞行姿态时,舵机位置产生的气动合力方向以及单DSP和双DSP的控制周期见表1.
经过测试,控制系统软件的设计使系统的各个功能都已经实现.采用增量式PID控制算法保持了常规PID控制的原理简单、使用方便以及鲁棒性较强的特点,能够较好地满足控制系统对稳定性和精确控制的要求.控制系统对舵机的控制需要满足200°/s的转速,控制周期应小于150ms.在测试中,采用单DSP的控制周期都大于200ms,不能满足要求.采用双DSP,控制周期都小于150ms,缩短了约50%,满足了控制系统对舵机控制的要求,有效地缩短了控制周期,提高了控制系统的反应速度.
表1 飞行姿态控制测试数据Tab.1 Test data of flight attitude control
5 结 论
采用双DSP作为飞行器飞行姿态控制系统的主控制器芯片,将计算数据和控制系统分开,能够有效地缩短控制周期约50%,满足了控制系统对舵机控制的要求,提高了控制系统的响应速度.采用增量式PID算法进行姿态控制,实现了系统对飞行器飞行姿态的实时控制.经过样机地面调试实验,实现了双DSP飞行姿态控制系统对飞行器飞行姿态的控制.
[1] 周传祥.基于DSP的导航/飞控嵌入式系统设计[D].西安:西北工业大学,2007.ZHOU Chuan-xiang.DSP-Based Design of Navigation and Aircraft Control of Embedded System [D].Xi’an:Northwestern Polytechnical University,2007.(in Chinese)
[2] 崔家山.基于自适应模糊PID的飞航导弹控制系统设计[D].哈尔滨:哈尔滨理工大学,2012.CUI Jia-shan.Design of Aerodynamics Missile Controller Based on Adaptive Fuzzy PID[D].Harbin:Harbin Institude of Technology,2012.(in chinese)
[3] 逄旭军.导弹高度控制系统的变结构设计[D].哈尔滨:哈尔滨工程大学,2005.PANG Xu-jun.Design of Missile Altiutde Conrtol System with Variable Structure Conrtol[D].Harbin:Harbin Engineering University,2005.(in Chinese)
[4] 匡斌峰.基于DSP的数字伺服系统研制及控制算法的研究[D].南京:南京理工大学,2007.KUANG Bin-feng.Design of Digital Servo System Based on DSP and Study of Control Algorithm[D].Nanjing:Nanjing University of Science and Technology,2007.(in Chinese)
[5] 刘志强,吴汉松.导弹气动参数变化时PID与模糊控制的仿真[J].火力与指挥控制,2005,30(4):88.LIU Zhi-qiang,WU Han-song.Simulation of PID Control and Fuzzy Logic Control While Missile Parameters Change in Big Scope.Fire Control and Command Control.2005,30(4):88.(in chinese)
[6] 汪慧敏,王明惠.基于双DSP的飞控软件设计[J].四川兵工学报,2013,34(6):108.WANG Hui-min,WANG Ming-hui.Design of Flight Control Software Based on Dual-DSP[J].Journal of Sichuan Ordnance,2013,34(6):108.(in Chinese)
[7] 张锦.DSP软件工程化设计与开发方法研究[D].长沙:国防科技大学,2006.ZHANG Jin.Research on Engineering Design and Development of DSP Software [D].Changsha:National University of Defense Teehnology,2006.(in Chinese)
[8] 邓红德,王博栋,吴佳楠.基于CAN总线的双DSP通信方案设计与实现[J].测控技术,2011,30(6):83.DENG Hong-de,WANG Bo-dong,WU Jia-nan.Design and Implement of Double DSP Communication Based on CAN Bus Interface[J].Measurement and Control Technology,2011,30(6):83.(in chinese)
[9] 吴小婧.永磁无刷直流电机舵机伺服系统的研究[D].南京:南京航空航天大学,2009.WU Xiao-jing.Research on Rudder Servo System of Brushless DC Motor[D].Nanjing:Nanjing University of Aeronautics and Astronautic,2009.(in Chinese)
[10] 周维虎.空间坐标转换技术的分析与研究(一)[J].航空计测技术,1999,19(4):10.ZHOU Wei-hu.Analysis and Study of Spatial Coordinate Transformation Technique(1)[J].Aviation Metrology and Measurement Technology,1999,19(4):10.(in Chinese)