基于可插拔式接口的固定翼飞行器快速建模设计方法

文档序号:10725312阅读:731来源:国知局
基于可插拔式接口的固定翼飞行器快速建模设计方法
【专利摘要】本发明提出基于可插拔式接口的固定翼飞机气动参数编辑规范,设计可插拔式接口,将气动参数从动力学模型中剥离并抽象化,实现气动参数即插即用。使用VC2010开发工具,完成固定翼飞机的操纵输入、动力学方程和运动学方程模块开发。设计气动参数XML文件解析程序,将获取的气动参数同动力学模块相结合,实现飞行性能仿真模型的快速开发。用户通过在XML文件中替换不同飞行器的气动参数,在发动机类型与型号固定的前提下,对不同的飞行器建模时只需修改XML文件中的气动参数便可完成仿真模型设计。可快速建立针对不同固定翼飞机机型的空气动力学模型,缩短模型开发周期。减少在飞行器数学建模过程中的重复性劳动,提高了飞行器建模的灵活性、快速性,以及通用性。
【专利说明】
基于可插拔式接口的固定翼飞行器快速建模设计方法
技术领域
[0001] 本发明具体涉及一种基于可插拔式接口的固定翼飞行器快速建模设计方法,属于 计算机飞行器性能仿真领域。
【背景技术】
[0002] XML为可扩展标记语言或可延伸,是一种置标语言。本发明的创新点就在于应用可 扩展标记语言定于气动参数的XML文档,将飞行器的气动参数从飞行方程中抽离出来写入 XML文档,在进行仿真的时候再将气动参数从文档中解析到飞行方程中就可以进行飞行器 性能仿真。使用XML文档标记气动参数可以使得在对不同飞行器进行仿真时可共用飞行方 程,只需要修改文档中的气动参数即可,如此可提高开发效率,实现代码的复用。XML语言具 有简洁有效、高效扩充的特点,并且使用XML可以在不同的计算机系统间交换信息。XML支持 复用文档片段,使用者可以发明和使用自己的标签,可伸缩性大,可以有效的进行XML文件 的扩充,在飞行器平台不同的时候可以通过修改扩充XML文件快速的进行飞行器仿真建模。

【发明内容】

[0003] 本发明提出了一种基于可插拔式接口的固定翼飞行器快速建模设计方法,提出基 于XML的固定翼飞机气动参数编辑规范,设计可插拔式接口,将气动参数从动力学模型中剥 离并抽象化,实现气动参数即插即用。使用VC2010开发工具,完成固定翼飞机的操纵输入、 动力学方程和运动学方程模块开发。设计气动参数XML文件解析程序,将获取的气动参数同 动力学模块相结合,实现飞行性能仿真模型的快速开发。用户通过在XML文件中替换不同飞 行器的气动参数,在发动机类型与型号固定的前提下,对不同的飞行器建模时只需修改XML 文件中的气动参数便可完成仿真模型设计。可快速建立针对不同固定翼飞机机型的空气动 力学模型,缩短模型开发周期。减少在飞行器数学建模过程中的重复性劳动,提高了飞行器 建模的灵活性、快速性,以及通用性。
[0004] -种基于可插拔式接口的固定翼飞行器快速建模设计方法,主要包含以下内容:
[0005] 步骤一:定义XML文档,将飞行器的气动参数从飞行方程中剥离并写入文件中,实 现飞行方程在初始化时从中读取气动参数;
[0006] 步骤二:根据飞行器的运动分解,将其运动分为横侧向运动与纵向运动,分别编写 运动状态解算方程;
[0007] 步骤三:设计XML解析程序,将气动参数加载到空气动力学模型中,实现运动状态 解算方程的初始化;
[0008] 步骤四:在发动机类型与型号固定的条件下,对于不同的飞行器可以复用同一飞 行方程,只需修改XML文件中的气动参数再重新解析到动力学模型中即可;
[0009] 所述步骤一中定义XML文档的实现思路为:
[0010] ⑴.首先由XML编辑器创建XML文档,定义文档根节点;
[0011]⑵.定义第一层节点,共8个节点,分别标记第一层节点数、升力解算相关气动参 数、侧力解算气动参数、俯仰力矩解算气动参数、滚转力矩解算气动参数、偏航力矩解算气 动参数、阻尼力解算气动参数、角加速度解算气动参数;
[0012] (3).为第一层的每个节点创建子节点,根据对应节点的气动参数个数创建子节点, 涉及多少个气动参数就创建几个子节点,其中第一个子节点标记当前节点的子节点个数;
[0013] ⑷.一个子节点代表一个气动参数,由于存入文档的气动参数为一系列离散点,因 此需要为子节点创建一系列里层节点。每个子节点扩展了21个里层节点,其中第一个里层 节点标记气动参数离散点个数,其余里层节点标记气动参数离散值;
[0014] (5).保存并关闭XML文档,实现气动参数的标记;
[0015]所述步骤三中XML文档解析实现思路为:
[0016]⑴.加载XML文档,开始进行气动参数解析;
[0017]⑵.将文档指针定位到根节点,获取第一层节点的节点数;
[0018] (3).将文档指针依次定位到第一层的每个节点,开始遍历每个节点的子节点;
[0019]⑷.遍历子节点扩展的里层节点,将里层节点中标记的气动参数值,读取到对应气 动解算模块中对应的气动参数数组中;
[0020] (5).重复上述操作,直到所有节点的子节点中的里层节点全部读取为止;
[0021] (6).保存并关闭XML文档,将启动参数加载到计算机内存中;
[0022]所述第一层节点代表对应的气动力、力矩解算模块;节点的子节点代表该气动解 算模块涉及的气动参数;子节点的里层节点代表该气动参数标记的一维表数据个数;
[0023]需要写入XML文件的气动参数表:
[0024]为便理解,附如下机翼升力系数的XML文档标记格式。


[0028] 具体实现:
[0029] 1定义变量:
[0030] 变量模块包括飞行器的各气动参数对应的抽象变量、运动状态变量、力学状态变 量以及控制输入。其中气动参数变量用于飞行器空气动力模型的解算;运动状态变量用于 记录模型解算出的姿态信息、位置信息等;力学状态变量用于记录模型解算出的俯仰力矩、 横滚力矩,偏航力矩、侧向力矩以及阻力、升力等状态信息;控制输入包括[δτ δβ Sr],对 应油门推杆输入、升降舵偏角、副翼偏转角、方向舵偏角。
[0031] 2定义XML文档及XML解析程序:
[0032]将飞行器空气动力学模型的气动参数写入XML文件中。从空气动力学模型中将气 动参数剥离出来并抽象化,在各解算模块中以变量代替,通过XML解析程序将文件中的气动 参数解析到对应的变量中,实现空气动力学模型的初始化。XML文档的定义是将表1中的气 动参数按照解算方程以树状层次结构依次记录到文档中,这样飞行器的所有气动参数就构 成了具有多层分叉结构的树,每一个气动参数对应为其中一个分支的一个元素。解析程序 的作用就是分析树,通过进行树遍历就可以对每个元素进行操作,将其解析到飞行器飞行 方程中,从而将飞行方程具体化。创建XML文档的方法见说明书附图1、图2,XML文档解析方 法见说明书附图3。
[0033] 3状态解算模块:
[0034]状态解算模块包括飞行器的力方程组、运动方程组、力矩方程组、导航方程组四部 分,编写状态解算模块时将对应的方程组离散化转换成计算机程序。在确定了状态向量 XT = [u v fP P% 与控制输入[δτ δ0 5r]之间的关系 后,在已知飞行器相关的气动参数、特征参数,很据飞行高度h,马赫数Ma以及飞行状态,就 可以确定力(FxFyFz)和力矩:(? Μ #),应用状态解算模块便可以求解飞行器在任何时 刻的运动状态。其中(U,V,W )为机体坐标系的三个速度分量;(P A y)为姿态角,分别为滚转 角,俯仰角,航向角;(P,q,r)为机体角速度分量,分别为机体滚转角速度、机体俯仰角速度 以及机体偏航角速度;(x g,yg,zg)为地面坐标;37外人^分别为油门开度输入、升降舵偏 输入、副翼舵偏输入以及航向舵偏输入。
[0035] 1).根据控制输入[δτ δθ δτ]解算力、力矩。
[0036] 力主要包括升力L、侧力Υ、发动机推力Τ。具体解算如下:
[0040] p:当前气压高度空气密度;
[0041] V:飞机水平飞行速度;
[0042] Clw:机翼升力系数;
[0043] CLb:机身升力系数;
[0044] Sb:机身横截面积;
[0045] Sw:机翼面积;
[0046] CLt:平尾升力系数;
[0047] St:平尾面积;
[0049] P:当前气压高度空气密度;
[0050] V:飞机水平飞行速度;
[0051] Sw:机翼面积;
[0052] CY{!:侧滑角引起的侧力导数;
[0053] β:侧滑角;
[0054] :方向舵侧力导数;
[0055] δΓ:方向舵偏角输入;
[0056] :滚转角速度侧力导数;
[0058] 偏航角速度侧力导数;
[0060]俯仰力矩解算方程:
[0062] P:当前气压高度空气密度;
[0063] V:飞机水平飞行速度;
[0064] U,a=():静不定俯仰力矩;
[0065] Ua:迎角俯仰力矩导数;
[0066] α:迎角;
[0067] :升降舵俯仰力矩导数;
[0068] δθ:升降舵偏角;
[0069] C"if :平尾附加俯仰力矩系数;
[0071] :平尾下洗时差阻尼力矩导数;
[0073] :升降舵偏角速率俯仰力矩导数;
[0075] CA:机翼平均几何弦长;
[0077] C1{!:横滚静稳定导数;
[0078] V:飞机水平飞行速度;
[0079] b:b为机翼展长;
[0080] P:当前气压高度空气密度;
[0081] ^:滚转操纵导数;
[0082] δ3:副翼偏转角;
[0083] 4:方向舵操纵交叉导数;
[0084] ^:横滚阻尼导数;
[0086] Cv:交叉动导数;
[0089] P:当前气压高度空气密度;
[0090] V:飞机水平飞行速度;
[0091] Cn{!:偏航静稳定导数;
[0092] C成:副翼操纵交叉导数;
[0093] δ3:副翼偏转角;
[0094] C喊:航向操纵导数;
[0095] δΓ:航向舵偏角;
[0096] 交叉动导数;
[0098] CW:航向阻尼导数;
[0100] 阻尼力解算方程:Dk = CDVk (6)
[0101] CD:阻尼系数;
[0102]由方程(1)~(6)可计算出飞行器沿机体坐标系力向量:
[0104] 其中k为第k个解算周期;Dk为飞行阻力;mk为第k个解算周期飞机的质量;gk为第k 个解算周期的重力加速度。
[0105] (7)由方程(1)~(6)可计算飞行器沿机体坐标系分解力矩向量:
[0107] 其中分别为第k个解算周期滚转操纵力矩、俯仰操纵力矩、偏航操纵力 矩;Tk为第k个解算周期的发动机推力;ly,l z分别为y轴的转动惯量、Z轴的转动惯量;Lk,Mk, Nk分别为滚转力矩、俯仰力矩、偏航力矩。
[0108] 2).由[Fkx Fky Fkz]T、[Uk vk c0k]T、[(K 0k ik]T、[pk qk rk]T解算出当前状态加速 度分量。
[0110] 由方程(9)解算出当前状态加速度分量
[0111] 3).由[Lk Mk Nk]T、[pk qk rk]T解算出当前状态角加速度分量。
[0117] 由方程(10)解算出当前状态角加速度分量[/,,:屯4Γ?
[0118] 4) ·由[Uk vk cok]T、["7 & 解算出下一状态的速度分量[Uk+i vk+1 cok+1]T
[0120] 其中Δ τ为解算周期。
[0121] 5) ·由[pk qk rk]T、j/),也4]_解算出下一状态的角速度分量[Pk+i qk+i rk+i]T
[0122] 下一状态的角速度分量解算方程:
[0124] 其中Δτ为解算周期。
[0125] 6).由[(H 0k ik]T、[Pk+1 qk+1 rk+1]T解算出当前状态姿态角速率
[0126] 当前状态姿态角速率解算方程:
[0128] 由方程(13)可计算出当前状态姿态角速率[4 4 %]'。
[0129] 7).由[4 4 Α]Γ、[φι< 0k 解算出下一状态的姿态角[Φμ 9k+1也+1]丁
[0130] 下一状态姿态角解算方程:
[0132] 其中Δτ为解算周期。
[0133] 8).由[Uk+i Vk+i c0k+i]T、[ Φ k+i 9k+1 i])k+1]T解算出飞行器的位置状态信息变化率
[0134] 位置状态信息变化率解算方程:
[0136] 由方程(15)可解算出当前位置状态变化率〇(叫 >(化
[0137] 9) ·由夕(幻g 心这」[x(k)g y(k)g z(k)g]T解算下一位置信息[x(k+i)g y(k+i)g Z(k+l)g]
[0138] 下一状态位置信息解算方程:
[0140] 将方程(1)~(16)进行离散化即可编写计算机程序,建立飞行方程,通过飞行方程 解算出飞行器每个时刻的力的变化率、力矩变化率、姿态角变化率、速度变化率就可以得到 飞行器每一个时刻的状态信息以及位置信息。通过状态解算便实现了飞行器模型仿真,从 而可以模拟出飞行器的性能参数。
[0141] 与现有技术相比,本发明具有的有益效果是:
[0142] 本发明定义了飞机动力学模型的气动参数xml配置文件,可以通过修改配置文件 即可实现不同机型动力学模型的快速建模。这种动力学模型建模的特点是将气动参数与动 力学方程相分离,实现了动力学模型的模块化设计,然后在解算状态前将气动参数加载到 模型中,根据当前飞行状态解析气动参数实现飞机运动状态的解算。采用这种建模方式可 以实现动力学模型建模的灵活组合,提高了开发效率,缩短了开发周期,并且可以减少工程 人员在建模过程中的重复性劳动,提高飞行器建模的灵活性、快速性以及通用性。
【附图说明】
[0143] 图1为本发明设计方法流程示意图;
[0144] 图2是气动参数XML文档定义实现框架1;
[0145] 图3是气动参数XML文档定义实现框架2;
[0146] 图4气动参数XML文档流程图;
[0147] 图5是飞行方程模型实现结构图;
【具体实施方式】
[0148] 本发明提出了一种基于可插拔式接口的固定翼飞行器快速建模设计方法,提出基 于XML的固定翼飞机气动参数编辑规范,设计可插拔式接口,将气动参数从动力学模型中剥 离并抽象化,实现气动参数即插即用。使用VC2010开发工具,完成固定翼飞机的操纵输入、 动力学方程和运动学方程模块开发。设计气动参数XML文件解析程序,将获取的气动参数同 动力学模块相结合,实现飞行性能仿真模型的快速开发。用户通过在XML文件中替换不同飞 行器的气动参数,在发动机类型与型号固定的前提下,对不同的飞行器建模时只需修改XML 文件中的气动参数便可完成仿真模型设计。可快速建立针对不同固定翼飞机机型的空气动 力学模型,缩短模型开发周期。减少在飞行器数学建模过程中的重复性劳动,提高了飞行器 建模的灵活性、快速性,以及通用性。
[0149] -种基于可插拔式接口的固定翼飞行器快速建模设计方法,主要包含以下内容:
[0150] 步骤一:定义XML文档,将飞行器的气动参数从飞行方程中剥离并写入文件中,实 现飞行方程在初始化时从中读取气动参数;
[0151] 步骤二:根据飞行器的运动分解,将其运动分为横侧向运动与纵向运动,分别编写 运动状态解算方程;
[0152]步骤三:设计XML解析程序,将气动参数加载到空气动力学模型中,实现运动状态 解算方程的初始化;
[0153] 步骤四:在发动机类型与型号固定的条件下,对于不同的飞行器可以复用同一飞 行方程,只需修改XML文件中的气动参数再重新解析到动力学模型中即可;
[0154] 所述步骤一中定义XML文档的实现思路为:
[0155] (1).首先由XML编辑器创建XML文档,定义文档根节点;
[0156]⑵.定义第一层节点,共8个节点,分别标记第一层节点数、升力解算相关气动参 数、侧力解算气动参数、俯仰力矩解算气动参数、滚转力矩解算气动参数、偏航力矩解算气 动参数、阻尼力解算气动参数、角加速度解算气动参数;
[0157] (3).为第一层的每个节点创建子节点,根据对应节点的气动参数个数创建子节点, 涉及多少个气动参数就创建几个子节点,其中第一个子节点标记当前节点的子节点个数;
[0158] ⑷.一个子节点代表一个气动参数,由于存入文档的气动参数为一系列离散点,因 此需要为子节点创建一系列里层节点。每个子节点扩展了21个里层节点,其中第一个里层 节点标记气动参数离散点个数,其余里层节点标记气动参数离散值;
[0159] (5).保存并关闭XML文档,实现气动参数的标记;
[0160]所述步骤三中XML文档解析实现思路为:
[0161]⑴.加载XML文档,开始进行气动参数解析;
[0162] ⑵.将文档指针定位到根节点,获取第一层节点的节点数;
[0163] (3).将文档指针依次定位到第一层的每个节点,开始遍历每个节点的子节点;
[0164] ⑷.遍历子节点扩展的里层节点,将里层节点中标记的气动参数值,读取到对应气 动解算模块中对应的气动参数数组中;
[0165] (5).重复上述操作,直到所有节点的子节点中的里层节点全部读取为止;
[0166] (6).保存并关闭XML文档,将启动参数加载到计算机内存中;
[0167] 所述第一层节点代表对应的气动力、力矩解算模块;节点的子节点代表该气动解 算模块涉及的气动参数;子节点的里层节点代表该气动参数标记的一维表数据个数;
[0168] 需要写入XML文件的气动参数表:
[0169] 为便理解,附如下机翼升力系数的XML文档标记格式。

[0172] 具体实现:
[0173] 1定义变量:
[0174] 变量模块包括飞行器的各气动参数对应的抽象变量、运动状态变量、力学状态变 量以及控制输入。其中气动参数变量用于飞行器空气动力模型的解算;运动状态变量用于 记录模型解算出的姿态信息、位置信息等;力学状态变量用于记录模型解算出的俯仰力矩、 横滚力矩,偏航力矩、侧向力矩以及阻力、升力等状态信息;控制输入包括[δτ δβ Sr],对 应油门推杆输入、升降舵偏角、副翼偏转角、方向舵偏角。
[0175] 2定义XML文档及XML解析程序:
[0176]将飞行器空气动力学模型的气动参数写入XML文件中。从空气动力学模型中将气 动参数剥离出来并抽象化,在各解算模块中以变量代替,通过XML解析程序将文件中的气动 参数解析到对应的变量中,实现空气动力学模型的初始化。XML文档的定义是将表1中的气 动参数按照解算方程以树状层次结构依次记录到文档中,这样飞行器的所有气动参数就构 成了具有多层分叉结构的树,每一个气动参数对应为其中一个分支的一个元素。解析程序 的作用就是分析树,通过进行树遍历就可以对每个元素进行操作,将其解析到飞行器飞行 方程中,从而将飞行方程具体化。创建XML文档的方法见说明书附图1、图2,XML文档解析方 法见说明书附图3。
[0177] 3状态解算模块:
[0178]状态解算模块包括飞行器的力方程组、运动方程组、力矩方程组、导航方程组四部 分,编写状态解算模块时将对应的方程组离散化转换成计算机程序。在确定了状态向量 v仿炉6? f尸gr r %為&]与控制输入[δτ δΓ]之间的关系 后,在已知飞行器相关的气动参数、特征参数,很据飞行高度h,马赫数Ma以及飞行状态,就 可以确定力(FxFyFz)和力矩(? Μ #),应用状态解算模块便可以求解飞行器在任何时 刻的运动状态。其中(u,V,W)为机体坐标系的三个速度分量;(0 60//)为姿态角,分别为滚转 角,俯仰角,航向角;(Ρ,q,r)为机体角速度分量,分别为机体滚转角速度、机体俯仰角速度 以及机体偏航角速度;(Xg,yg,zg)为地面坐标;37外人^分别为油门开度输入、升降舵偏 输入、副翼舵偏输入以及航向舵偏输入。
[0179] 3).根据控制输入[δτ δθ δτ]解算力、力矩。
[0180]力主要包括升力L、侧力Υ、发动机推力Τ。具体解算如下:
[0183] Q:动压;
[0184] Ρ:当前气压高度空气密度;
[0185] V:飞机水平飞行速度;
[0186] Clw:机翼升力系数;
[0187] CLb:机身升力系数;
[0188] Sb:机身横截面积;
[0189] Sw:机翼面积;
[0190] CLt:平尾升力系数;
[0191] St:平尾面积;
[0193] P:当前气压高度空气密度;
[0194] V:飞机水平飞行速度;
[0195] Sw:机翼面积;
[0196] CYe:侧滑角引起的侧力导数;
[0197] β:侧滑角;
[0198] 方向舵侧力导数;
[0199] δ?:方向舵偏角输入;
[0200] &:滚转角速度侧力导数;
[0204]俯仰力矩解算方程:
[0206] Ρ:当前气压高度空气密度;
[0207] V:飞机水平飞行速度;
[0208] Cm,a=Q:静不定俯仰力矩;
[0209] Cma:迎角俯仰力矩导数;
[0210] α:迎角;
[0211] :升降舵俯仰力矩导数;
[0212] δθ:升降舵偏角;
[0213] :平尾附加俯仰力矩系数;
[0219] CA:机翼平均几何弦长;
[0221] C1{!:横滚静稳定导数;
[0222] V:飞机水平飞行速度;
[0223] b:b为机翼展长;
[0224] P:当前气压高度空气密度;
[0225] :滚转操纵导数;
[0226] δ3:副翼偏转角;
[0227] C崎:方向舵操纵交叉导数;
[0228] 仏:横滚阻尼导数;
[0230] 交叉动导数;
[0233] Ρ:当前气压高度空气密度;
[0234] V:飞机水平飞行速度;
[0235] Cn{!:偏航静稳定导数;
[0236] 副翼操纵交叉导数;
[0237] δ3:副翼偏转角;
[0238] <^4:航向操纵导数;
[0239] δ?:航向舵偏角;
[0240] 交叉动导数;
[0244] 阻尼力解算方程:Dk = CDVk (6)
[0245] CD:阻尼系数;
[0246]由方程(1)~(6)可计算出飞行器沿机体坐标系力向量:
[0248]其中k为第k个解算周期;Dk为飞行阻力;mk为第k个解算周期飞机的质量;g k为第k 个解算周期的重力加速度。
[0249] (7)由方程(1)~(6)可计算飞行器沿机体坐标系分解力矩向量:
[0251] 其中Z?,MkA,NkA分别为第k个解算周期滚转操纵力矩、俯仰操纵力矩、偏航操纵力 矩;Tk为第k个解算周期的发动机推力;l y,lz分别为y轴的转动惯量、z轴的转动惯量;Lk,Mk, Nk分别为滚转力矩、俯仰力矩、偏航力矩。
[0252] 4).由[Fkx Fky Fkz]T、[Uk vk c0k]T、[(K 0k ik]T、[pk qk rk]T解算出当前状态加速 度分量。
[0254] 由方程(9)解算出当前状态加速度分量匕4_f。
[0255] 3).由[Lk Mk Nk]T、[Pk qk rk]T解算出当前状态角加速度分量。

[0261] 由方程(10)解算出当前状态角加速度分量f A & 4f。
[0262] 4) ·由[Uk Vk c0k]T、jV,,,. & 今.]7'解算出下一状态的速度分量[Uk+i Vk+i c0k+i]T
[0264] 其中Δ τ为解算周期。
[0265] 5) ·由[Pk qk rk]T、[ft ft 解算出下一状态的角速度分量[Pk+i qk+i rk+i]T
[0266] 下一状态的角速度分量解算方程:
[0268] 其中Δτ为解算周期。
[0269] 6).由[(H 0k ik]T、[Pk+1 qk+1 rk+1]T解算出当前状态姿态角速率
[0270] 当前状态姿态角速率解算方程:
[0272] 由方程(I3)可计算出当前状态姿态角速率「成為务]'
[0273] 7).由[4 4 <]厂、[牴9 k ik]T解算出下一状态的姿态角[(H+1 0k+1也+1]丁
[0274] 下一状态姿态角解算方程:
[0276] 其中Δτ为解算周期。
[0277] 8).由[Uk+i Vk+i c0k+i]T、[ Φ k+i 9k+1 i])k+1]T解算出飞行器的位置状态信息变化率
[0278] 位置状态信息变化率解算方程:
[0280]由方程(15)可解算出当前位置状态变化率@(A)g
[0281] 9) ·由[i(ihg _i,a)g iWiJ[x(k)g y(k)g z(k)g]T解算下一位置信息[x(k+i)g y(k+i)g Z(k+l)g]
[0282] 下一状态位置信息解算方程:
[0284] 将方程(1)~(16)进行离散化即可编写计算机程序,建立飞行方程,通过飞行方程 解算出飞行器每个时刻的力的变化率、力矩变化率、姿态角变化率、速度变化率就可以得到 飞行器每一个时刻的状态信息以及位置信息。通过状态解算便实现了飞行器模型仿真,从 而可以模拟出飞行器的性能参数。
[0285] 表1动力学模型气动参数

【主权项】
1. 一种基于可插拔式接口的固定翼飞行器快速建模设计方法,其特征在于,其包含W 下步骤: 步骤一,定义XML文档,将飞行器的气动参数从飞行方程中剥离并写入文件中,实现飞 行方程在初始化时从中读取气动参数; 步骤二,根据飞行器的运动分解,将其运动分为横侧向运动与纵向运动,分别编写运动 状态解算方程; 步骤Ξ,设计XML解析程序,将气动参数加载到空气动力学模型中,实现运动状态解算 方程的初始化; 步骤四,在发动机类型与型号固定的条件下,对于不同的飞行器可W复用同一飞行方 程,只需修改XML文件中的气动参数再重新解析到动力学模型中即可。2. 根据权利要求1所述的一种基于可插拔式接口的固定翼飞行器快速建模设计方法, 其特征在于,所述步骤一中定义XML文档的具体步骤如下: (1).首先由XML编辑器创建XML文档,定义文档根节点; 间.定义第一层节点,共8个节点,分别标记第一层节点数、升力解算相关气动参数、侧 力解算气动参数、俯仰力矩解算气动参数、滚转力矩解算气动参数、偏航力矩解算气动参 数、阻尼力解算气动参数、角加速度解算气动参数; 间.为第一层的每个节点创建子节点,根据对应节点的气动参数个数创建子节点,设及 多少个气动参数就创建几个子节点,其中第一个子节点标记当前节点的子节点个数; (4). 一个子节点代表一个气动参数,由于存入文档的气动参数为一系列离散点,因此需 要为子节点创建一系列里层节点;每个子节点扩展了 21个里层节点,其中第一个里层节点 标记气动参数离散点个数,其余里层节点标记气动参数离散值; 巧).保存并关闭XML文档,实现气动参数的标记。3. 根据权利要求1所述的一种基于可插拔式接口的固定翼飞行器快速建模设计方法, 其特征在于,所述步骤Ξ中XML文档解析的具体步骤如下: (1).加载XML文档,开始进行气动参数解析; 间.将文档指针定位到根节点,获取第一层节点的节点数; 间.将文档指针依次定位到第一层的每个节点,开始遍历每个节点的子节点; (4).遍历子节点扩展的里层节点,将里层节点中标记的气动参数值,读取到对应气动解 算模块中对应的气动参数数组中; 间.重复上述操作,直到所有节点的子节点中的里层节点全部读取为止; (6).保存并关闭XML文档,将启动参数加载到计算机内存中。4. 根据权利要求1所述的一种基于可插拔式接口的固定翼飞行器快速建模设计方法, 其特征在于,所述步骤Ξ中飞行器运动状态解算方程,包括W下内容: 所述状态解算方程包括飞行器的力方程组、运动方程组、力矩方程组、导航方程组四部 分,编写状态解算模块时将对应的方程组离散化转换成计算机程序;在确定了状态向量 义r=[" V呀巧食r梦g r 4毎]与控制输入阳SeSaSr]之间的关系,在 已知飞行器相关的气动参数、特征参数,很据飞行高度h,马赫数MaW及飞行状态,就可W确 定力(FxFyFz)和力矩(I Μ Λ0,应用状态解算模块便可W求解飞行器在任何时刻的运 动状态;其中(U,v,w)为机体坐标系的Ξ个速度分量;切,代的为姿态角,分别为滚转角,俯 仰角,航向角;(P,q,r)为机体角速度分量,分别为机体滚转角速度、机体俯仰角速度W及机 体偏航角速度;(xg,yg,zg)为地面坐标;5了成,53成分别为油口开度输入、升降舱偏输入、畐山 翼舱偏输入W及航向舱偏输入; 1).根据控制输入[St Se Sa 5r]解算力、力矩; 力主要包括升力L、侧力Y、发动机推力T;具体解算如下: 升力解算方程:其中有Q:动压; P:当前气压高度空气密度; V:飞机水平飞行速度; Clw:机翼升力系数; CLb:机身升力系数; Sb:机身横截面积; Sw:机翼面积; CLt:平尾升力系数; St:平尾面积; 侧力解算方程:(2) P:当前气压高度空气密度; V:飞机水平飞行速度; Sw:机翼面积; Cyp:侦雌角引起的侧力导数; 0:侧滑角; ;方向舱侧力导数; δτ:方向舱偏角输入; 滚转角速度侧力导数; 歹:为量纲的滚转角速度,b为机翼展长; 2V 偏航角速度侧力导数; F 为量纲的偏航角速度,b为机翼展长; 俯仰力矩解算方程(3) P:当前气压高度空气密度; V:飞机水平飞行速度; Cm, α=0:静不定俯仰力矩; Cma:迎角俯仰力矩导数; α:迎角; C":4;升降舱俯仰力矩导数; δβ:升降舱偏角; Cr,:平尾附加俯仰力矩系数; 承:W穿为量纲的俯仰角速度,b为机翼展长; ?,,? :平尾下洗时差阻尼力矩导数; S山占=^:为量纲的迎角速度 2V C,,毎升降舱偏角速率俯仰力矩导数; (6:?? 为量纲的升降舱偏角速率; 2V CA:机翼平均几何弦长; 滚转力矩解算方程:(4) Cie:横滚静稳定导数; V:飞机水平飞行速度; b:b为机翼展长; P:当前气压高度空气密度; 0;,,=滚转操纵导数; 5a:副翼偏转角; Gs,=方向舱操纵交叉导数; 横滚阻尼导数; 罗:W /7 = 为量纲的滚转角速度,b为机翼展长; 2V 馬;交叉动导数; F : W Γ = ^-为量纲的偏航角速度,b为机翼展长; 偏航力矩解算方程:(5) P:当前气压高度空气密度; V:飞机水平飞行速度; Cne:偏航静稳定导数; C,A=副翼操纵交叉导数; 5a:副翼偏转角; CU;航向操纵导数; δτ:航向舱偏角; c,,p:交叉动导数; 梦;w,方为量纲的滚转角速度,b为机翼展长; 航向阻尼导数; r 为量纲的偏航角速度,b为机翼展长; 阻尼力解算方程:Dk = CDVk (6) Cd:阻尼系数; 由方程(1)~(6)可计算出飞行器沿机体坐标系力向量:C7) 其中k为第k个解算周期;Dk为飞行阻力;皿为第k个解算周期飞机的质量;gk为第k个解 算周期的重力加速度; 由方程(1)~(6)可计算飞行器沿机体坐标系分解力矩向量:其中rw,MkA,NkA分别为第k个解算周期滚转操纵力矩、俯仰操纵力矩、偏航操纵力矩;Tk 为第k个解算周期的发动机推力;ly,lz分别为y轴的转动惯量、Z轴的转动惯量;Lk,Mk,Nk分别 为滚转力矩、俯仰力矩、偏航力矩; 2).由[Fkx Fky Fkz]T、[Uk Vk Qk]T、[d)k 目k ik]T、[pk qk rk]T 解算出当前状态加速度分 量·由方程(10)解算出当前状态角加速度分量[A 4 4f; 4) .由[Uk Vk c〇k]T、[如成]解算出下一状态的速度分量[Uk+l Vk+l C〇k+l]T下一状 态的速度分量解算方程(1].) 其中A τ为解算周期; 5) .由[pk qk rk]T、[知知Α-Γ解算出下一状态的角速度分量[Pk+i qk+i rk+i]T下一状 态的角速度分量解算方程:(12): 其中A τ为解算周期; 6) .由[(Κ目k ik]T、[pk+i qk+i化ι]τ解算出当前状态姿态角速率当前状态姿态角速率 解算方程:(13) 由方程(13)可计算出当前状态姿态角速率[茲4奴了; 7) .由在爲、[ Φ??目k Φ??]τ解算出下一状态的姿态角[Φ??+ι目k+i也+1]吓一状态 姿态角解算方程:(14) 其中A τ为解算周期; 8) .由[Uk+i vk+i Qk+i]T、[(l)k+i目k+i也+ι]τ解算出飞行器的位置状态信息变化率位置状 态信息变化率解算方程:由方程(15)可解算出当前位置状态变化率[^& 了 Γ ηΤ Γ -|Γ 9).由L%《戈脚g %)J- L尤脚g A化气城J解算下一位置信息[X化")gy(k")g Z(k+l)g]T下一状态位置信息解算方程:(16) 将方程(1)~(16)进行离散化即可编写计算机程序,建立飞行方程,通过飞行方程解算 出飞行器每个时刻的力的变化率、力矩变化率、姿态角变化率、速度变化率就可W得到飞行 器每一个时刻的状态信息W及位置信息。通过状态解算便实现了飞行器模型仿真,从而可 W模拟出飞行器的性能参数。
【文档编号】G06F17/50GK106096194SQ201610487530
【公开日】2016年11月9日
【申请日】2016年6月28日
【发明人】孟光磊, 罗元墙, 梁宵, 田丰, 薛继佳, 朱琳琳, 喻勇涛
【申请人】沈阳航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1