杨姗姗,王 彪
(南京航空航天大学 自动化学院,南京 210016)
基于FlightGear的三维可视化飞行控制仿真实验平台的设计
杨姗姗,王 彪
(南京航空航天大学 自动化学院,南京 210016)
以某种典型的六自由度固定翼飞机模型为基础,设计并建立了基于FlightGear的三维可视化飞行控制仿真实验平台。该平台基于Matlab/Simulink编写飞机模型仿真和飞行控制设计实验界面,并与FlightGear直接对接,实时显示三维立体飞行场景,展现飞行控制过程。平台界面实时显示飞行状态变量曲线,与飞行场景对应,增强数学变量与其物理含义之间的相关性,提升学生理论联系实际的直观理解。平台具有很强的开放性,可以由教师演示操作,也可以由学生主导交互,分步骤分难度让学生自主设计飞行控制系统,有效提高学生综合运用飞行控制理论的能力。
飞行控制系统; 三维可视化; 开放式实验平台
飞行器控制系统作为飞行器的神经中枢,其可靠性、稳定性及精确度是飞行器安全飞行和执行任务成功与否的重要保障[1]。因此飞行控制系统课程是航空航天院校自动控制专业一门重要的专业基础课程,此课程内容具有理论性、系统性,同时又有很强的应用背景。但是在理论讲授时,由于过于抽象和对空间想象力的要求过高,导致学生对课程理解不透彻,难以形成形象和直观的认识[2]。因此,高校实验系统的开发应与专业方向紧密结合,才能为培养飞行控制专业基础扎实的创新型人才提供支撑[3]。
目前,国内各高校自动控制专业也在建立飞行控制系统实验教学平台上有很大发展。空军工程学院[4]和沈阳航空航天大学[5]等高校均建立了针对各种教学实验需求的飞行控制实验教学平台。但这些实验教学平台专业性和针对性过强,开放性不够好,不能广泛应用于控制类本科生的实验教学,并且不具备三维可视化能力,直观性较差。
而如今,国内外各大航空企业和研究机构,均在建立和发展飞机可视化仿真实验室上取得了较大成绩,对飞机的研制、培训和使用起到了重大作用。其中,作为国际最著名的跨平台开源飞行模拟软件之一,FlightGear不但以其强大真实的飞行仿真功能吸引了众多的飞行模拟爱好者,而且其开放式的程序构架和预留的外部数据输入/输出接口,也赢得了专业用户的青睐,成为众多国外大学的飞行仿真可视化引擎[6]。Illinois大学将其用于飞行结冰过程的仿真可视化平台开发[7];Wales大学则在飞控系统仿真中,利用FlightGear引擎实现了可视化仿真环境[8]。
目前,我校学生在大学生创新实验平台设计中,也已开始使用FlightGear软件,但由于没有进行过系统学习,使用便利程度和深度均存在很大的不足,因此需要实验室教师结合经典控制理论和现代控制理论[9-10],理论结合实际,将飞行控制系统设计和FlightGear软件相结合,搭建飞行控制实验教学平台。
针对此问题,本文拟基于典型的固定翼飞机模型,建立一个三维可视化飞行控制仿真与设计实验教学平台。通过该教学平台进行飞行器控制器设计实验及其三维可视化显示,使学生能更直观、更形象地理解在飞行控制系统课程中学习到的理论和方法,并通过开放实验系统自行进行控制器设计,真正做到理论与实际相结合,学会应用理论来进行实际飞行器控制系统设计。该实验教学平台可为自动控制、探测与制导及机械自动化等专业的本科生培养提供实验条件。
本仿真实验平台选取一款典型固定翼飞机为控制对象,使用Matlab/Simulink工具编写飞行器仿真模型并设计飞行控制器和实验界面,利用Simulink 软件提供的FlightGear 飞行模拟器外部数据输入/输出API 接口,即UDP_FlightGear 模块,将飞行姿态仿真数据通过UDP 网络协议予以实时传输;最终,驱动FlightGear 可视化引擎,实现固定翼飞行仿真姿态数据的三维实时可视化仿真实验。基于上述思想构建的仿真平台总体架构如图1所示。
2.1飞机模型的建立
飞机模型为一个典型的六自由度固定翼飞机模型,其模型基于12阶运动方程建立[11-12],其气动参数如表1所示。
图1 基于FlightGear三维可视化飞行控制实验教学平台结构图
表1 飞机模型的气动参数
仿真模型基于Simulink中S-function技术开发实现,方便使用m语言描述飞机的气动特性和运动变化,易于实现复杂非线性的多输入多输出系统模型,便于集成封装和模块化。
输入分别为升降舵、副翼、方向舵和发动机油门,其特性如表2所示。
表2 飞机模型的输入
其输出值和范围如表3所示。
表3 飞机模型的输出
2.2实验界面二级标题
实验界面基于Matlab编写,如图2所示,分为两部分,左边是飞控设计的实验操作流程,右边是飞控设计步骤中的参数和曲线显示窗口。该实验平台既可以开展难度低的演示和验证实验,也可以开展难度高的自主控制设计实验,以针对不同学习程度的学生。
图2 飞行控制实验界面
飞控设计步骤中目前开放了配平和控制器参数设计两步,其余部分也会根据使用情况逐步开放。为了直观显示设计的效果,在界面中将设计和结果(输出参数的曲线)放在了同一个界面中。而仿真控制又分为了实时和非实时仿真,非实时仿真是用于快速验证参数的正确性,实时仿真则是和FlightGear连接起来验证参数的正确性和三维立体观察飞机的控制过程。
2.3飞机控制器设计的实验步骤
在本实验平台的界面中,学生通过一步一步的进行实验设计,可以直观完整地感受到飞行控制设计的过程,从而帮助学生将书本中的理论联系到工程实际。
(1) 配平。飞机配平是飞行控制器设计中的第一步骤,在本实验平台中开放给学生自主设计。图2实验界面中给出了一个设计示例,可用于演示实验。
示例中选择的状态点为高度2 km,速度200 m/s,在该状态下进行配平。其姿态为俯仰角1.5°,其他姿态角都为0°。俯仰角为1.5°,侧滑角为0°。轨迹角为0°,飞行器处于定直平飞状态。
配平工作可以使用Matlab提供的trim函数完成,也可以由学生根据所学的知识自己编写配平程序代码完成,从而适用于不同水平、不同需求的学生。类似地,在配平基础上进行小扰动线化,可以使用Matlab提供的linmode函数完成,也可以由学生自己手动完成,从而获得被控对象的状态空间模型矩阵。可见,配平设计直接影响到模型的线性化和后期控制律的设计,这是非常重要的一个步骤,应该让学生自主设计以真实感受重要性。
(2) 控制器参数设计。 在设计飞行控制律时,学生们可以应用所学的经典控制理论,也可以应用现代控制理论完成。同时,本平台中已经基于之前配平步骤中的配平参数和经典飞行控制设计理论资料[11-12]计出了一个控制器示例用于演示,便于初学者参考,并且该控制器中的参数已经开放出来,供学生自行整定、锻炼,如图2右下角所示。
2.4FlightGear视景软件的连接
本平台中采用了开源软件FlightGear来实现虚拟场景的三维显示,该软件具备代码开放和场景逼真的优点,并且接口简单,仅通过UDP协议就可以实现交互[13-14]。
(1) FlightGear数据发送模块建立。数据发送模块基于Matlab/Simulink建立,该模块主要由数据处理、FlightGear组帧和UDP数据发送3个部分组成。数据处理部分负责将输入的飞行器状态数据和执行机构输入数据进行整理,然后连接到FlightGear组帧的模块上,由UDP数据发送部分将完成组帧的数据通过网络发送出去。数据模块如图3所示。
本平台中使用Native-fdm数据协议发送数据。Native-fdm协议是FlightGear中定义的一个二进制数据协议,协议的格式封装在”Pack net_fdm Packet for FlightGear”模块中,该协议中包含了视景中所需的所有数据。然后即可通过UDP将数据发送给FlightGear,发送通过Matlab提供的” Send net_fdm Packet to FlightGear”模块实现。该模块能够将按照net_fdm数据协议组好帧的数据通过UDP发送给FlightGear。
(2) FlightGear接口设置。FlightGear 作为一款优秀的开源飞行模拟器,为用户预留了多种输入输出接口,方便用户对其功能进行扩展[15]。FlightGear 的输入信息为六自由度固定翼飞行器的信息,根据设计方案,使用FlightGear飞行模拟器接收外部数据驱动视景模块,显示飞行姿态。作为UDP 网络通信的一端,需要对FlightGear的I/O接口进行设置。 FlightGear软件I/O接口设置如图4,其中Protocol设置为Native-fdm; Medium设置为socket; Hz设置为100;Direction设置为in;端口选择5502;选择UDP模式。
图3 FlightGear数据发送模块框图
图4 FlightGear软件接口设置
本文以控制飞机高度为例展示平台的易用性。飞机初始设定的高度为2 km,仿真时间100 s,设定期望改变飞机的高度到1.5 km,然后开始实时仿真。FlightGear中的运行场景如图5所示,图中可见飞机升降舵上偏,给飞机一个向下的力矩,飞机向下转动,非常直观生动。同时,飞机高度的响应曲线如图6所示,飞机俯仰角的响应曲线如图7所示,图中曲线在数值上分别给出高度下降和飞机低头的过程,从而使学生能够把控制量到物理量的转换、控制量到物理现象联系起来,理解更深刻。
图5 FlightGear运行场景
图6 高度响应曲线
图7 俯仰角响应曲线
值得注意的是,上述实验过程,既可以由教师在课堂上演示,也可以由学生自己整定参数,甚至是设计控制律,以便有更深切的体会。
本飞行控制实验平台是一个开放式实验平台,既可以完成验证和演示飞行控制原理的实验教学,也可以在此基础上根据不同学习程度的学生开展不同难度的自主设计的课程设计,并且设计结果可以在FlightGear软件里实时三维直观显示。
可以开设的实验项目有:①飞机配平和单通道姿态(滚转、俯仰、偏航)控制系统仿真实验(验证和设计);②飞机纵向姿态控制系统仿真实验(验证和设计);③飞机横侧向姿态控制系统仿真实验(验证和设计);④飞机高度控制系统仿真实验(验证和设计);⑤飞机速度控制系统仿真实验(验证和设计)。
为了提高学生对飞行控制原理的三维立体直观的认识,加强飞行控制设计理论的理解,锻炼自主设计飞行控制器的能力,开发了一套基于FlightGear的三维可视化飞行控制实验平台。在该平台上,通过三维立体实时显示、控制器设计,让学生对飞行控制理论有一个全面的系统的认识和把握,完成一个分析、设计、验证的全过程,理论结合实际,为以后开展复杂的飞行控制研究打下坚实的基础。
[1] 刘根旺.飞行器控制系统设计与仿真实验平台的构建[J].实验室研究与探索,2008,27(3):26-28.
[2] 郭卫刚,韩 维,王秀霞.基于Matlab/FlightGear飞机飞行性能的可视化仿真系统[J].系统仿真学报,2010,27(10):110-112.
[3] 夏 洁.舵机在回路的半实物飞控实验教学系统[J].实验室研究与探索,2012,31(9):14-17.
[4] 张红梅,徐 谨.飞行控制系统实验教学的实践与探索[J].实验室科学,2011,14(3):13-15.
[5] 蔡满意,何长安,陈亚滨.飞行控制系统动态实验平台的设计[J].计算机仿真,2005,21(3):60-62.
[6] 黄 华,徐幼平,邓志武.基于Flightgear模拟器的实时可视化飞行仿真系[J].系统仿真学报,2007(19):4421-4423.
[7] Bragg Michael B,Tamer Basar.Smart icing systems for aircraft icing safety [C]// 40th AIAA Aerospace Sciences Meeting and Exhibit.USA: AIAA,2002:2002-8013.
[8] Shaw A,Barnes D P,Summers P.Landmark recognition for localisation and navigation of aerial vehicles [C]// 2003 IEEE/RSJ International Conference on Intelligent Robots & Systems.USA: IEEE,2003:42-47 vol.1.
[9] 胡寿松.自动控制原理[M].4版.北京:科技出版社,2001.
[10] 陈复扬.自动控制原理[M].北京:国防工业出版社,2010.
[11] 吴森堂.飞行控制系统[M].2版.北京:北京航空航天大学出版社,2013.
[12] Nelson R.Flight stability and automatic control (second edition)[M].New York: McGraw-Hill Education,1997.
[13] 翟 彬,薛明旭.Flightgaer在无人机实时飞行仿真中的应用[J].现代电子技术,2010(13):24-30.
[14] 王立波,张复春,高文琦,等.基于FlightGear飞行仿真软件数据的采集与处理[J].电子设计工程,2011,19(24):53-57.
[15] 应 进,潘浩曼,代翼阳,等.Matlab/FlightGear直升机视景仿真研究[J].实验技术与管理,2014,31(8):106-109.
Flight Control Experimental Platform Based on FlightGear Simulator
YANGShanshan,WANGBiao
(College of Automation,Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China)
Based on a classic six-degree fixed wing aircraft,a flight control experimental platform based on FlightGear simulator is presented in this paper.Aircraft model and flight control GUI are written based on Matlab/Simulink,and flight simulation data are fed to the FlightGear simulator through its I/O port,then the real-time 3D visual flight simulation is implemented.At the meantime,the curves of the flight parameters are obtained in the flight GUI,the relevance between mathematical variables and their physical meanings can be enhanced and the understanding of the linking theory with practical can be improved.The simulator presented in this paper has high openness,and can be not only operated by teachers for demonstration but also can be used by students for designing flight systems with different difficulty rating.Therefore,the ability of the application of the aircraft control theory can be advanced.
flight control system; three-dimensional visualization; open type experimental platform
2016-11-15
南京航空航天大学“实验技术研究与开发”项目(2015050300015842)
杨姗姗(1983-),女,江苏盐城人,硕士,实验师,主要从事飞行控制、自动控制原理相关的实验。
Tel.:025-84892035×812;E-mail:shanshankitty@nuaa.edu.cn
TP 273;V 249.1
:A
:1006-7167(2017)07-0113-05