机场终端区飞机进近仿真系统的构建

2021-11-17 07:32贾立山史晓柯夏志朋
计算机仿真 2021年7期
关键词:步长空管坐标系

贾立山,李 昂,史晓柯,夏志朋

(1. 中国民航大学空管基地,天津 300300; 2. 中国民航大学电子信息与自动化学院,天津 300300; 3. 中国民航大学航空工程学院,天津 300300)

1 引言

空管训练仿真系统是空中交通管理系统中必备的模块,可用于平时空管管制员的训练。在平常的训练中,依据训练目的产生模拟的飞行计划和预期航线,构建仿真场景,利用飞行仿真系统实时模拟操控空中目标按照预期的路径飞行,将得到的航迹数据进行处理后发送并显示在空管监视器上,然后便可以利用管制员培训席来进行管制员训练。因此,要建立一个比较好的训练仿真系统,必须建立一个比较方便的、人性化的飞行计划制作界面和一个精确的飞行仿真系统[1]。

在空管训练仿真系统中飞行模型是仿真系统的基础,大部分的仿真数据都是由飞行模型计算出来的,而且实时仿真中飞行模型占用运算时间也是最多的[2]。全量运动方程是飞机非线性刚体运动微分方程组,是飞机运动的原始方程,能够准确的描述飞机的运动。在计算机仿真中,累计误差的来源包括截断误差和舍入误差两个部分。截断误差由数值积分算法本身的截断值产生,舍入误差是在计算中由于计算机字节长度限制而产生的误差。使用的数值积分算法的截断值越小,截断误差就越小。仿真计算的步骤越少,舍入误差就越小[3]。虽然使用高性能计算机和实时仿真硬件能够提高仿真计算速度和数据传输速度[4],从而克服仿真算法计算时间长的缺陷,但是因其计算步骤多造成的舍入误差大的问题却是不能忽略的。使用变步长算法在每个积分过程中选择最优步长,从而使飞行模型的准确性与快速性得到了一定的保证。最终通过 VC++/GL Studio 的混合编程来开发图形化界面,使飞行模型算出的数据可视化,从而完成空管训练系统界面的搭建。

2 飞行模型的建模方法

2.1 坐标系的定义

定义飞机地面坐标系odxdydzd如下:

原点位于地面上某一点od(如飞机起飞点);

纵轴odxd——在地面水平面上选定某一方向;

竖轴odyd——与地面垂直,指向天空方向为正;

横轴odzd——垂直于odxdydzd平面,指向右侧为正;

定义飞机机体坐标系otxtytzt如下:

原点位于飞机的质心ot;

纵轴otxt——平行飞机机身,指向前方为正;

竖轴otyt——在飞机对称面内垂直于otxt轴,指向上方为正;

横轴otzt——垂直于otxtytzt平面,指向右方为正;

航迹坐标系和气流坐标系的各轴定义均参照地面系和机体系的定义。

2.2 飞机全量运动方程的建立

2.1.1 机体坐标系中的质心动力学方程

取机体坐标系作为上述的参考坐标系。以VX,Vy,Vz表示飞机质心速度在机体系下的分量,以ωX,ωy,ωz表示飞机角速度在机体系中的分量。

可得在机体坐标系中列写的飞机质心运动方程

(1)

式中P为发动机推力,φp为发动机安装角,Q为空气阻力,Y为飞机升力,Z为飞机侧力,α为迎角,β为侧滑角,m为飞机质量,θ为俯仰角,γ为滚转角。

2.1.2 质心的运动学方程

为了得到飞机质心在空间的位置,需要知道它在地面坐标系中的速度分量。当知道了速度分量在机体坐标系中的各分量值时,只要把速度由机体坐标系转换到地面坐标系即可。所以有

(2)

(3)

式中Xd,Yd,Zd分别为飞机相对于原点的位置,V为飞机的绝对速度,ψ为偏航角。

2.1.3 转动的动力学方程

飞机绕质心转动的动力学方程:

(4)

式中Ix,Iy,Iz分别为机体轴x,y,z轴转动惯量,Ixy为机体轴x、y轴惯性积,Mx,My,Mz分别为滚转力矩,偏航力矩,俯仰力矩。

2.1.4 转动的运动学方程

(5)

式(1)(2)(3)(4)(5)即为飞机全量运动方程,飞机全量运动方程为非线性一阶微分方程组,它无法用普通的解析法进行解算,只能应用数值积分方法进行解算。

2.3 在仿真模型中应用的变步长算法

Runge-Kutta法是一种常用的数值积分算法。实验已经证明,对于解算飞机全量运动方程,采用2阶Runge-Kutta法能够得到和采用4阶Runge-Kutta法相近的计算精度,但是2阶方法的计算量只有4阶方法的一半[5]。所以,采用2阶Runge-Kutta法作为飞机全量运动方程的解算方法。Runge-Kutta法作为一种单步法,其步长选择非常重要。步长选择过大,会增大截断误差,甚至使解算结果发散。步长选择过小,会增加计算步数,从而增大舍入误差。文献[6]提出一种改进的Runge-Kutta变步长算法。该方法能够快速获取优化的步长值,如下所示:

图1 飞行仿真程序算法流程图

3 飞机进近仿真系统界面的搭建

GL Studio 是面向对象、独立于平台的开发工具,软件工具包主要包括图形设计器和代码生成器两部分。模型开发过程分为图形对象组建与行为代码编写两部分。为实现对飞机导航界面的仿真与建模,其步骤可总结如下:

1) 制作纹理。选择飞机的进近航图,使用图形编辑软件(例如:Photo Shop 等),按照 GL Studio的要求对纹理进行制作处理,去除一些不需要的部分,将面板中需要动态表示的部分从中截取进行单独处理并生成纹理文件;

2) 创建动作。将所有动态图形单元重新插入到图形设计画布中,利用 GL Studio 工具栏,制作仿真界面所需的按钮和数码管等单元的构建;

3) 实现动态功能。在图形用户接口中编写各个对象的方法与属性,实现对飞机航向的动第三,动态控制,通过数码管对飞机飞行高度,位置,速度等相关飞行信息的实时显示以及通过按钮对数码管的显示进行控制;

4) 飞行模型与GL Studio模型的连接。将飞行模型各参数输入到GL studio模型的Class Variables输入区内,并将其具体算法输入到GL Studio模型的Class Method输入区内。利用代码生成器生成导航界面的源代码,将源代码嵌入到 VC++程序中,编译生成的解决方案,并且链接调试[7]。

4 飞机进近仿真系统界面模拟的验证

实验所用飞机各参数如下所示:

图2 飞机初始时航向及高度图

图3 飞机转弯时航向及高度图

图4 飞机降落时航向及高度图

图5 飞机降落完成后系统界面图

由图可知通过对飞机操纵面进行控制,飞机可以按照飞行计划规定的航迹进行航向的变化,飞机飞行的高度等相关飞行信息可以通过数码管进行实时的显示,从而要求培训管制员做出相应的反应,这样就可以达到训练的目的。除此之外,对于航管系统规划的飞行航线,也可以将其转化为飞行计划,输入到模拟训练系统,比较直观的观察和监视飞行过程,看是否存在空域和多机冲突的可能,从而也可以作为对航管系统航线规划的检验和测试。

5 结束语

在整个机场终端区飞机进近仿真系统界面的搭建的过程中,飞机的建模是至关重要的一环,模型的好坏决定着整个仿真过程的逼真度和精度。本文通过飞机的全量运动方程进行建模,并在其基础上通过GL Studio对模拟界面进行搭建,之后通过控制飞机的操纵面使飞机按照进近航图的轨迹进行运动从而验证了模型的正确性和有效性,为进一步构建空管训练系统打下了基础。

猜你喜欢
步长空管坐标系
独立坐标系椭球变换与坐标换算
智慧空管技术的进展
极坐标系中的奇妙曲线
董事长发开脱声明,无助消除步长困境
步长制药50亿元商誉肥了谁?
起底步长制药
空管流量控制过程中的风险控制探析
三角函数的坐标系模型
求坐标系内三角形的面积
民航空管安全文化建设探析