关键字:RT-LAB;航空发动机;实时仿真;监控软件
1 引言
仿真验证是航空发动机控制系统研制过程中的重要环节,能够有效降低实验风险,节省开发成本,提高成功概率,缩短研制周期[1]。RT-LAB既可以与成熟的建模工具如MATLAB、MATRIX等实现无缝连接,又可以实现大系统的实时协同仿真[2]。同时对硬件板卡具有良好的兼容,因此常被用于构建航空发动机控制系统实时仿真的仿真平台。为了提高用户体验,仿真平台构建时,监控软件是必不可少的组成部分。虽然Opal-RT公司针对RT-LAB推出了配套的搭建监控软件的产品TestDriver,但是该产品授权较贵且灵活性不高的缺点日益凸显,因此如何灵活、快速、低成本地开发RT-LAB平台配套监控软件成为迫切需求。同时RT-LAB提供了丰富的应用程序开发接口,因此采用第三方开发软件开发监控软件成为一个不错的替代方案。本文研究采用LabVIEW针对RT-LAB构建的某型航空发动机实时仿真平台进行监控软件开发。
2 监控软件开发需求
本文针对采用RT-LAB构建的某型涡桨发动机实时仿真平台,该平台中发动机模型为部件级模型,螺旋桨模型为桨叶角与螺旋桨转速插值功率的螺旋桨插值模型。结合该发动机的仿真需求,针对以上仿真平台,监控软件开发需求分析如下:
(1)由于燃油量、桨叶角、P3、T8、POWER、XHNP、XHPP等输出变量,都是控制系统设计过程需要参考的变量,因此监控软件应该能够显示以上变量;
(2)为使得发动机模型能顺利完成状态切换,需要增加起动按钮、停车按钮、状态杆(CLA)、油门杆(PLA)、高度(H)、马赫数(Ma)设置信号,同时为监控方便,界面上还应该显示桨距角和燃油调节器输出电流及对应执行机构位置反馈信息;
(3)为方便控制参数调整,监控软件应能选择不同模型,运行不同模型;
(4)为方便实验反复进行,监控软件应具有复位功能;
(5)数据记录与回放功能,为方便试验后对数据分析以及节省试验时间,监控软件应该具有数据记录与回放功能;回放功能包括数据文件的读取显示、数据曲线的放大、缩小、曲线的隐藏、光标指示功能等。
考虑到发动机模型仿真步长为25ms,计算量不算太大,依据RT-LAB仿真要求,对发动机仿真模型划分SM和SC两个模块。其中SM模块主要负责计算,SC模块主要负责外部通信[3]。划分后的模型中两模块之间的信号传递如图1所示。
3 RT-LAB监控软件接口函数
RT-LAB提供了丰富的应用程序开发接口函数,但是针对以上监控软件开发需求,用到的接口函数主要由以下几个接口函数:
(1)Opal_Set_Current_Model.vi
该函数作用是将由路径给出的模型,转换为其它API函数需要的模型操作句柄。
(2)Opal_Load.vi
该函数作用是通过当前的模型操作句柄将相应的模型加载到RT-LAB软件中。
(3)Opal_Get_System_Control.vi
该函数用于得到或者释放对当前模型执行的控制。
(4)Opal_Execute.vi
该函数在得到对当前模型控制之后执行,作用是使模型运行起来,即模型进入running状态。
(5)Opal_Reset.vi
该函数在得到对当前模型控制之后执行,作用是重置当前模型状态,即模型进入reset状态。
(6)Opal_Get_Acq_Group_Sync_Signals.vi
该函数读取从模型计算部分即SM和SS送到SC的信号。
(7)Opal_Set_Signals.vi
该函数用于设置参数,即可以设置从SC传递到SM和SS的参数。
4 监控软件程序结构设计
监控软件按功能可划分为以下几个部分:界面操作部分、RT-LAB模型操作部分、接收和设置模型参数以及数据记录和回放部分。其中界面操作部分包括:
(1)参数显示即:界面上曲线和数值显示部分;
(2)参数设置即:给定需要的参数指令;
(3)RT-LAB模型操作部分主要包含模型的加载执行以及重置;
(4)接收和设置模型参数将从模型中读取的参数传递给界面控件显示以及将界面给定的参数指令发送到模型中;
(5)数据记录和回放将实验数据是实时记录并可在试验后进行回放。
监控软件功能模块划分及各部分关系图如图2所示。
由图2可知监控软件中需要同时运行接收和设置模型参数、界面操作等多个任务。这些任务中接受模型参数以及数据记录任务是必须保证实时运行否则就会出现数据遗漏影响仿真置信度;而界面操作、设置模型参数,只需要能够及时响应操作指令即可。虽然LabVIEW自动多线程给编程者带来极大的方便,但不合理的程序设计却也容易引起资源竞争、起线程死锁等问题[4]。因此监控软件中接收模型参数和数据记录任务应该按仿真步长实时运行每步长运行一次;界面操作显示数据部分应该根据需要设置合适的运行周期;设置模型参数以及界面参数指令给定操作应该采用事件结构。然后采用NI推荐的“生产者消费者架构”,通过LabVIEW独特的同步队列同步机制,在多个循环之间进行数据同步。对于数据操作考虑到其一般是在实验进行之后进行因此独立设计了一个数据回放程序部分。经过以上分析该监控软件结构如图3所示。
仿真监控软件执行流程如图4所示。
数据回放子程序功能相对简单,程序结构和执行流程可以在同一个流程图中较好表达。数据回放子程序功能执行流程如图5所示。
按照以上流程采用LabVIEW编码后,实现监控软件界面及部分RT-LAB接口操作相关软件代码框图如图6-图8所示。
5 总结
采用LabVIEW的监控软件可以很好地与RT-LAB平台完成交互,软件可以满足实际应用。由于采用LabVIEW开发,极大地提高了软件开发灵活性,在降低成本的同时,较好地提高了用户人机交互体验。
参考文献
[1]姜东红,吴根水,屠宁. RT-LAB软件在半实物仿真系统中的应用[J].测控技术,2008,4.
[2]常晓飞,符文星,闫杰.基于RT-LAB的某型导弹半实物仿真系统设计[J].系统仿真学报,2009,21(18).
[3]RT-LAB 6.0 User's Manual[M]. OPAL-RT Inc, 2004.
[4]张义.基于RT-LAB的航空发动机控制系统实时仿真技术研究[D].南京:南京航空航天大学,2014.
[5]唐进元,李松,邵文.基于LabVIEW生产者—消费者模式的齿轮传动振动测试系统[J].机械振动,2011,35.
作者简介
张义(1988-) 硕士研究生 工程师 研究方向:发动机控制
共0条 [查看全部] 网友评论