本站小编为你精心准备了飞机气动力工程的程序化实施参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
1实现工程估算程序化处理的方案流程
计划方案如图1。图1工程估算程序化处理方案的流程示意图方案流程说明:第一步,建立整体方案的标准化库,由于整个案实现的子程序和涉及的飞机气动力参数很多,为了便于设计人员相互协作并且使程序调用参数方便,在方案实施开始阶段要统一规定数据存储方式、各全局变量符号的定义、功能函数的命名方式等。第二步,开始对所有的曲线图表数字化,每条曲线存储为二维数组,同一图表的曲线统一存储在一个结构变量名下,最后根据命名规则存储为数据文件。第三步,编写查图所需参数的子函数,调用图表数据文件并根据曲线形态编写插值函数,然后存储为标准的M文件;然后根据飞机气动特性分类,根据参考公式和适用范围,编写每部分的子函数。第四步,对主程序的主要部分分别定义,做到计算状态、参数输入、计算方式的定义都通俗易懂,然后对程序各部分调试,验证程序运行无误并且没有冲突。第五步,对结果输出格式进行描述,调用曲线绘图等功能。第六步,后期处理工作,主要是编写可视化界面,方便结果的输入和输出,对飞机的气动特性有更直观的描述。
2实现过程
2.1图表曲线的数据化处理由于工程估算需要查阅大量图表,因此首先解决的是联合get-data、Excel、Matlab软件的功能实现图表曲线的数据化过程:利用getdata软件主要利用它的自动取点功能,Excel可以将取到的数据点进行单调排序,利用Matlab读取数据并存储统一格式。以飞机机翼零升阻力估算时的升力面修正因子的经验曲线为例,它是马赫数和机翼最大厚度线后掠角的函数,数据化建模的过程如下:
2.1.1把图像保存为.BMP位图文件,然后导入getdata软件,利用getdata软件定义好纵横坐标,利用它的自动取点功能把每条曲线转化成二维数组。得到的二维数组一定保证X坐标为单调函数(可以借助EXCEL的升序排列功能)。
2.1.2在Matlab中建立图表数据的结构变量,例如:curve(M1,M2,M3,M4),假设M1,M2,M3,M4分别表示M1=0.25,M2=0.6,M3=0.8,M4=0.9的四条曲线,通过把取点得到的四个二维数组分别赋值给curve.M1,curve.M2,curve.M3,curve.M4。
2.1.3利用Matlab的SAVE功能将结构变量存储为数据文件,例如:savecurveXXX.matcurve(具体运用时可根据图表编号来命名,方便查找)以便以后的程序直接调用取值。
2.2建立曲线取值的子函数建立图表数据库后,还要从数据库中准确查找所对应的参数,才能达到精确取值的目的,根据2.1节建立的数据文件,如果给出最大厚度线后掠角Λt/c,max和马赫数M,这就需要从curveXXX.mat文件中检索出所对应的RLS值。由于原始图表里面只有四条曲线,相对应只有四个二维数组,如果要查找任意马赫数下的RLS,那么唯一的办法就是插值,插值的具体方法可以用两点线性插值,三点线性插值或者非线性插值,选用什么方法根据曲线形态来决定。如果这些都写到主程序,那么会造成不易修改而且容易出错,为避免程序臃肿,可以使用Matlab的特色功能,建立一个曲线取值的功能函数。这个功能函数(M文件)可以供任何子函数调用。
2.3创建分块函数根据飞机气动力工程估算主要内容,可以根据飞机的气动特性分类建立分块函数,如升力特性、阻力特性、俯仰力矩特性等;也可以根据飞机部件来定义,例如机翼气动特性、机身气动特性、尾身组合体气动特性等。分块函数是互不干扰,可以互相调用彼此结果。以升力特性计算为例,其创建过程为:
2.3.1定义函数function[Cy0,Cymax,Cay,α0,…]=ShengLiTeXing(bA,l,S,…),其中括号里面Cy0,Cymax,Cay,α0表示函数返回值,也就是要计算的气动导数方面输出,可根据需要进行添加;小括号里面bA,l,S表示变量名,也就是需要输入的飞机总体参数。
2.3.2编写各气动导数的计算过程,例如需要查图1的曲线数值,那么可以直接调用子函数RLS=curve(M,Λt/c,max)读取数据。
2.3.3将计算的各参数结果统一存在规定格式的文件中,方便其它函数调用数据。
2.4主程序运行示意图前面建立很多各部分子函数和分块函数,其主要目的是简化主程序行数,方便输入,方便读写,复杂部分均写成了函数,让没有使用过Matlab的设计人员也能够娴熟调用函数并进行计算,以图2为例,主程序仅包含四个部分内容:
2.4.1标号1部分的主要功能是进行计算空间的内存清理和所有计算方法的来源(参考资料),这部分不需要改动,仅供分析计算结果时参考;
2.4.2标号2部分是计算状态输入和说明,包含飞行马赫数、飞行高度、大气运动粘性系数等,和所要计算的飞机飞行状态密切相关;
2.4.3标号3部分主要是飞机主要几何参数输入,例如机翼形状参数,机身外形参数以及尾翼外形参数等,此处要求参数尽可能简化,中间参数不需要输入,具体输入参数需求根据计算内容而定。3.4.4标号4部分为主要的计算内容,根据需要计算的气动导数来调用相关函数,也可以在此对所需要的气动导数进行输出。例如,需要查看全机的Cαy,那么仅需要输入Cαy即可在Matlab主程序的运行状态栏即可看到Cαy的输出结果。
3界面可视化
根据前三节实现了气动力工程估算的自动处理的整个过程,并且程序也能够被不熟悉Matlab的人员操作使用,但存在参数输入不方便,容易对总体参数的输入产生错误,并且输出结果不便查找(需要对照符号表查找计算的导数符号)数值,输出不直观等问题。因而,需要对整个方案进行后期的可视化封装,这不仅使界面明了清晰,并且还可以对计算结果进行特定处理,更加直观体现飞机的气动特性。
3.1参数输入功能:建立参数输入对话界面,通过中文文字说明,参数输入过程将不再需要和符号一一对应,这不仅减小了人为的输入错误,也提高了效率。
3.2计算与数据输出:参数输入完成以后,即可点击开始计算,默认状态下时将把可能计算的所有气动导数完全计算,实际编写程序时可加入对特定的导数进行计算。计算完成后可以将计算结果按已设定好的数据格式进行输出。
4结束语
飞机气动力工程估算是飞机气动布局设计的一项重要工作,它的发展关系飞机气动布局设计的时间和成本。文章通过Matlab软件,提供了一种飞机气动力工程估算程序化自动处理方法,对存在的主要技术问题提供了解决的办法。这种工程估算程序化自动处理方法在XXX飞机气动力工程估算的过程中实现部分应用,体现出了高效、快捷的特点,并且计算结果的重复性精度很高。不足之处是功能还不是很强大。参考国内外同行在这方面的经验,基于文章基础,可以在后续工作将逐步加入结果分析、参数优化设计等功能,为设计人员提供一个较为完善的计算处理软件。
作者:陈春鹏杨康智王莉萍单位:中航通飞研究院