日期:2023-01-24 阅读量:0次 所属栏目:应用电子技术
0 引 言
飞控系统仿真工作是飞控系统设计工作的重要辅助手段。在系统设计初期进行数学仿真研究,对飞机运动特性需要进行详细分析,建立飞机的数学仿真模型,检验飞控系统的功能是否符合要求。数字仿真的目的是方便快速地得到初步设计结果,能够很好地指导系统设计工作的进行。
由于对飞控系统仿真实验的实时性要求很高,单纯在Matlab/Simulink下进行的仿真不能够完全满足仿真实时性的要求,本实验平台采用VxWorks操作系统作为软件代码运行环境,完全可以满足系统对仿真实时性的要求,采用RTW自动代码生成功能可以大大减少仿真软件的开发工作量,避免手工编码引入的错误,缩短仿真试验平台的开发周期[1?3]。
1 基于RTW和VxWorks的仿真实验
RTW是Matlab图形建模和仿真环境Simulink的一个重要补充功能模块,它是一个基于Simulink的代码自动生成环境,它能够直接从Simulink的模型中产生优化的、可移植的和个性化的代码,并根据目标配置自动生成多种环境下的程序,利用它可以加速仿真过程,生成可以在不同的快速原型化实时目标下运行的程序。RTW十分适合用于加速仿真过程、快速原型化、形成完善的实时仿真解决途径和生成产品级嵌入式实时应用程序,使用RTW进行实时硬件的设计测试,用户可以缩短开发周期,降低成本[4]。
VxWorks是专门为实时嵌入式系统设计开发的操作系统软件,为程序员提供了高效的实时任务调度、中断管理、实时的系统资源以及实时的任务间通信[5]。VxWorks从1983年设计成功以来,已经经过广泛的验证,成功地应用在航空、航天、舰船、通信、医疗等关键领域。该操作系统具有良好的持续发展能力、高性能内核以及友好的用户开发环境使其在嵌入式实时操作系统领域处于领先地位。
Tornado集成开发环境是嵌入式实时领域中最新一代的开发调试环境,是实现嵌入式应用程序的完整的软件开发平台,是开发调试VxWorks系统不可缺少的组成部分[5]。它是集成了编辑器、编译器、调试器于一体的窗口环境,给嵌入式系统开发人员提供了一个不受目标机限制的开发调试界面。它使用Target Server?Agent模式来建立主机和目标机之间的交叉开发环境,解决了交叉开发环境中诸如有限的调试通信信道,有限的目标机资源等问题。这种模式使所有主机工具可以用于目标机,而不必考虑目标机的资源和通信机制。
基于RTW和VxWorks的飞控系统仿真实验平台,首先使用Matlab/Simulink及其他相关工具快速的进行原理验证和仿真,通过多次的运行和调试,使得所设计的飞机数学模型尽量符合设计要求;然后运用RTW的代码自动生成功能,将Simulink环境下搭建的飞机动力学模型和利用[S]函数功能封装的控制率模型转化成可在目标机操作系统VxWorks上运行的C代码,然后根据模板联编文件的配置,将生成的C代码转换为可在VxWorks操作系统中运行的可执行代码,在仿真机内部进行软闭环。
2 飞控系统仿真实验平台设计与实现
2.1 系统设计
该仿真实验平台由一台仿真主控机和一台仿真目标机组成,仿真目标机是整个系统的核心,考虑到对仿真实时性的要求,仿真目标机采用VxWorks操作系统,主控计算机上运行Matlab软件和Tornado 2.2开发环境。Matlab的主要作用就是进行飞控系统动力学模型和控制率模型的建模以及目标代码生成。在仿真过程中可以利用RTW的外部模式在线调整飞机动力学模型的参数、获取仿真结果数据以及设置要求的飞机姿态角度信息。集成开发环境Tornado 2.2的作用就是完成对VxWorks实时内核的生成、主机和目标机之间的通信连接、下载RTW生成的实时代码等[6?8]。同时主控计算机还可以运行自主开发的仿真管理与控制软件,该软件可以实现仿真主控机和仿真目标机之间的通信连接,生成代码的下载、初始化、运行、停止等,观测仿真数据曲线,实现便捷的仿真控制和管理。仿真设计流程如图1所示。
图1 仿真设计流程
仿真目标机是整个实验平台的核心,在其中运行飞机动力学模型和控制率模型转化而来的实时代码。仿真主控计算机根据需要设置飞机姿态角信息传送给仿真目标机中运行的控制率模型代码,控制率模型代码以此控制飞机动力学模型运行,完成飞机当前姿态角信息的解算,并将这些姿态角信息通过VMIC反射内存网传送给仿真主控机,在仿真主控机上运行自主开发的仿真管理与控制软件,将接收到的飞机姿态信息绘成图像,检验飞机的姿态角变化是否能够跟踪上设定的飞机姿态角。
2.2 实时代码自动生成
在搭建完成飞机数学模型之后,通过纯数字的仿真可以初步修正系统设计,然后修改次数学模型,加入仿真目标机在Simulink的驱动模块,就可以构建起该飞机系统的仿真模型[9?10]。为使生成的代码可以在嵌入式操作系统上运行,需要修改模板联编文件,修改内容如图2所示。
图2 模板联编文件修改内容
其中关键技术如下:
(1) 建立飞机动力学模型以及控制率模型;
(2) 利用Matlab的S?Function功能,将控制率算法封装成模块,供搭建系统模型时使用;
(3) 自动将搭建好的Simulink模型转换成可在VxWorks实时操作系统下运行的实时代码。
3 仿真与验证
基于这一实验平台可以方便地进行多次仿真试验,修改无人机动力学模型、调整控制律,直到获取满意的仿真结果。可以利用RTW工具箱的外部模式功能,在线调整模型参数、监控仿真结果数据,方便对模型参数进行修改,通过在该仿真平台上对飞机控制系统的多次实时仿真试验,改进了飞机爬升、平飞、下滑等过程的控制律,最终测试通过了整套飞控系统。图3为控制飞机模型飞行五角星形轨迹,控制仿真效果比较理想。
图3 控制仿真飞行曲线
4 结 论
本实验平台综合了Matlab/RTW和VxWorks实时操作系统的部分功能,提出了一种新的实时仿真实验平台构建方法,采用这种方法可以大大降低仿真代码的编写量,在花费尽可能低的情况下,保证了仿真实验的实时性,提高仿真实验平台的性能,有效地验证了飞控系统的正确性。
参考文献
.系统仿真学报,2007,19(11):2455?2457.
.现代电子技术,
2012,35(1):113?116.
.南京:南京航空航天大学,2010.
[4] 杨涤,李立涛,杨旭,等.系统实时仿真开发环境与应用[M].北京:清华大学出版社,2010.
: Wind River System Inc, 1999.
[6] 吴森堂,费玉华.飞行控制系统[M].北京:北京航空航天大学出版社,2006.
.火力与指挥控制,2013,38(3):133?136.
.北京:人民邮电出版社,2009.