基于模型的设计在弹载飞行控制器中软件实现的应用*

2017-11-01 22:48徐铁军黄超凡徐天蒙
弹箭与制导学报 2017年3期
关键词:嵌入式代码控制器

徐铁军, 黄超凡, 马 强, 徐天蒙

(1 中国兵器工业第203研究所, 西安 710065; 2 国家电网山东电力公司, 济南 250001)

基于模型的设计在弹载飞行控制器中软件实现的应用*

徐铁军1, 黄超凡1, 马 强2, 徐天蒙1

(1 中国兵器工业第203研究所, 西安 710065; 2 国家电网山东电力公司, 济南 250001)

基于模型的设计是面向越来越复杂的嵌入式控制器开发的一个创新的、高效的、具有长远前途的开发范式。采用基于模型的设计对于提升弹载飞行控制器研制部门自主开发能力具有重要的意义,文中以某型号弹载飞行控制器硬件为目标平台,按照基于模型的设计开发流程,实现了弹载飞行器产品级软件开发。对飞行控制器实物输出结果和仿真结果进行对比和验证,表明基于模型的设计在嵌入式控制器开发中所表现出的适用性和高效性。

基于模型的设计;弹载飞行控制器;软件实现

0 引言

为满足当前小型战术导弹弹载电子设备的高性能、高可靠性、小型化和轻型化需求,弹载飞行控制器硬件平台通常是由16位或32位嵌入式处理器或数字信号处理器(DSP)作为处理核心、辅以A/D转换和D/A转换电路、通讯电路或现场总线等外围电路组成。随着各种类型的高性能、低成本嵌入式处理器芯片及其外围芯片的不断涌现,作为弹载飞行控制器的硬件平台朝着通用化、模块化方向发展,而且成本持续降低,性能不断提升,硬件平台已不再成为约束弹载飞行控制器发展的因素,因此,飞行控制器设计的工作侧重点已转移至其软件实现、验证、测试和维护上。

然而,随着弹载飞行控制器在需求上,例如算法密集的信号处理、智能化等方面以及复杂性不断升级,传统的控制系统软件开发模式遭遇到了发展瓶颈,为了应对越来越复杂的控制系统需求,提高开发效率,缩短开发周期快速投放市场,尤其是在控制工程领域,在与嵌入式计算机系统设计相结合的过程中,经过工程实践及理论总结,逐步形成了一种创新的开发范式,这就是基于模型的设计[1-3]。

1 基于模型的设计流程及工具

对嵌入式控制器而言,基于模型的设计是对整个控制器包括控制器工作流程、I/O设备及其控制算法模型等部分,从数学的视角上看,以数据流驱动或事件驱动的方式,采用可视化的方框图和状态流图的方式进行描述,即建立模型,对模型及模型组成部分进行持续性的测试和验证,尽早发现和排除错误,从模型直接自动生成CC++语言程序或HDL语言代码的过程,实现整个设计过程自动化。

图1所示为基于模型的设计流程,可以看出,基于模型的设计具有很多突出优势:

1)整个开发过程以模型为主线,所有开发工作围绕以模型形式的可执行规范进行,不依赖文本形式的规格说明书,便于开发团队(算法开发部门和控制器实现部门)之间紧密协作;

2)基于模型的设计在开发初期阶段容易发现错误和排除错误;

3)图形化的模块建模方式具有天然的直观性,易于建模,易理解、易测试、易维护;

4)从模型直接生成标准的CC+++代码或VHDL代码,从设计到实现完全做到设计自动化,避免手写代码的繁琐而又易错的问题,极大提高生产效率。

笔者认为基于模型的设计模式最大的优势是在各级开发阶段的持续性的测试与验证,保证在开发初期就能发现和排除尽可能多的错误,大大降低开发风险,确保高品质高效开发。NASA研究结果表明,嵌入式软件在开发初期潜伏的错误未及早发现,导致后期修复成本随发现错误延时成级数增长。

需要强调的是,基于模型的设计不仅仅是建立模型,而高于建模,基于模型的设计的理念突现整个流程的开发,从需求开始,经过系统设计,再到整个控制器的产品级软件的设计实现过程,无不突显出对模型的验证和确认过程。

近年来,国内高等院校、各研究院所和高科技公司的科研人员将基于模型的设计成功应用于汽车电子、电机控制、飞行控制系统快速原型设计[4]、图像识别跟踪系统等嵌入式系统软件实现方面[5]。

目前,国际大多数控制业界主流公司的建模、仿真和开发工具均支持和推崇基于模型的设计方法。支持从基于模型的设计方法的商业软件工具有:

1)Simulink(Mathworks公司);

2)Targetlink(dSPACE公司);

3)VisSim(Altair公司);

4)ASCET(ETAS公司);

5)Lustre/SCADE(Verimag/Esterel-Technologies公司)。

开源软件ScilabScicos也支持基于模型的设计。

文中采用MATLAB公司的Simulink和Embedded Coder产品,按照基于模型的设计流程进行产品级软件的开发。

2 飞行控制器硬件平台

文中的工作目标是以某型反坦克导弹飞行控制器硬件为平台,应用基于模型的设计实现飞行控制器的产品级软件。

图2为某型飞行控制器硬件平台,其核心是32位浮点数字信号处理器C6713,外部通过CPLD扩展了多个外部设备,包括7路RS422串口通讯电路、1路CAN总线通讯电路,16路AD转换电路和4路DA转换电路。

3 飞行控制器设计软件实现

按照基于模型的设计,对控制器软件开发部门来说,按以下流程进行:

1)根据飞行控制器的工作流程和时序逻辑,建立控制器的Stateflow模型,对模型进行调试、测试仿真。由于Simulink是模块可视化的仿真环境,因此调试、测试非常便利且节省资源。

2)对于完成控制算法模型与现实世界的交互的载体的I/O设备,在同一环境下,对I/O设备驱动程序采用S-function方式进行模块封装。文中对控制器的RS422通讯、CAN总线通讯、AD采样和DA输出设备驱动进行了封装。

3)从控制律开发部门获得的控制模型,该模型已经通过仿真进行测试和验证,拿来即可用。软件实现部门需要做的是将控制模型、I/O设备驱动模型、控制器行为模型进行有效的系统集成。

图3所示为某型飞行控制器系统模型。对模型进行仿真测试、查错并修改,对不合适的模块进行等效代替,使模型适于代码生成。

4)对系统模型进行规则检查。

对系统模型的建模规则、安全相关准则例如DO-178C等准则进行检查。随着模型复杂度的提高,人工检查模型属性、配置以及对于模型对特定规则标准的遵守度逐渐成为负担,使用Model Advisor工具可以自动进行标准以及模型配置和属性的检查,并产生检查报告。检查的内容:

①是否会导致仿真出错;

②是否会导致生成的代码无效;

③生成的代码是否符合安全标准。

5)对模型进行配置,自动生成代码。

对模型进行配置,设置优化选项,生成针对TI C6000的特殊优化的C程序。模型一经确认完毕,代码一次成功生成。

6)在目标系统开发环境下,对模型各部分及整个控制器模型进行验证和确认。

将生成的源码程序以及支持库转入TI的CCS3.3集成开发环境中,编译和下载运行,进行控制器在线仿真,由实物在线仿真检验的控制器行为与预期是否符合,控制算法的输出结果与仿真相符程度等。

图4和图5所示为2路独立的控制指令的模型计算结果和控制器输出结果对比,可以看出两者完全保持一致。

上述数值试验结果表明,模型自动生成代码与原模型在数值上具备高度的等效性。

文献[1-2]中,对专业级手写代码和基于模型的自动生成代码在占用ROM和RAM方面进行了对比,表明自动生成代码已经能够达到甚至超过手写代码的效率。这就节省出大量的手工编码、排错和测试验证方面的投入,大大提高软件生产率。

因此,采用基于模型的设计完全可以实现高效的飞行控制器产品级软件开发。

4 结论

综上所述,采用基于模型的设计,能够显著降低整个开发过程的投入,加快弹载飞行控制器软件开发。因此,基于模型的设计作为当前及未来应对复杂嵌入式系统软件设计困境的利器之一,它是一种创新的、具有长远发展前途的设计范式。毫无疑问,基于模型的设计对于提升弹载飞行控制器研发部门的软件开发能力升级具有非常重要的意义。

[1] 刘杰. 基于模型的设计及其嵌入式实现 [M]. 北京: 北京航空航天出版社, 2010: 345-347.

[2] 刘杰. 基于模型的设计: MCU篇 [M]. 北京: 北京航空航天出版社, 2011: 421-425.

[3] 刘杰. 基于模型的设计: DSP篇 [M]. 北京: 国防工业出版社, 2011: 282-284.

[4] 李强, 王民钢, 杨尧. 飞行控制系统快速原型设计与实现 [J]. 计算机测量与控制, 2009, 17(7): 1305-1307.

[5] 范哲意, 周治国, 刘志文, 等. 基于TMS320DM642和模型化设计的图像跟踪实验系统 [J]. 实验技术与管理, 2013, 30(3): 74-77.

ApplicationofModelBasedDesigninSoftwareImplementationofMissileBorneFlightController

XU Tiejun1, HUANG Chaofan1, MA Qiang2, XU Tianmeng1

(1 No.203 Research Institute of China Ordnance Industries, Xi’an 710065, China; 2 State Grid Shandong Electric Power Company, Jinan 250001, China)

MBD was a creative, efficient development paradigm with long term future for more and more complex embedded controller development. Adopting MBD had great significance for improving the autonomous development ability of missile-borne flight controller development department. In this paper, a certain type of missile borne flight controller hardware was taken as the target platform, according to the model based design and development process, the product level software development of missile borne aircraft was realized. The output results and simulation results of flight controller object were compared and validated, which showed the applicability and efficiency of model-based design in the development of embedded controller.

model-based design (MBD); missile-borne flight controller; software implementation

TJ765.2

A

2016-03-09

徐铁军(1976-),男,陕西西安人,高级工程师,博士研究生,研究方向:工程电磁场计算、电子线路设计与仿真、弹载电子设备及嵌入式系统开发。

猜你喜欢
嵌入式代码控制器
基于IMX6ULL的嵌入式根文件系统构建
工商业IC卡控制器改造为物联网控制器实践
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
基于ARM嵌入式的关于图像处理的交通信号灯识别
面向国产化的MCU+FPGA通用控制器设计
TS系列红外传感器在嵌入式控制系统中的应用
神秘的代码
一周机构净增(减)仓股前20名
一行代码玩完19亿元卫星
基于PID控制器和模糊逻辑控制器的D6114柴油机速度控制