简要介绍飞行仿真模型建立
本文将简单介绍如何利用simulink建立飞机动力学模型。飞机动力学模型是模拟飞机飞行运动的数学模型,精确的动力学模型可以帮助我们分析飞机的气动特性,帮助进行飞行控制研究等。MATLAB的simulink有专门的航空航天模拟板块,可以很方便的建立飞机动力学模型。 1 从6自由度运动方程开始 Simulink众多6自由度运动方程模块中的一种 如上图,6自由度运动方程模块就是将一系列方程封装成了一个模块,输入飞机所受到的力和力矩,就能计算出位置变化、欧拉角、角速率等。上图所示模块以欧拉角表示飞机姿态,如有其它需求,也可以选择由四元数来表示飞机姿态。模块要求输入力和力矩,我们就得计算飞机所受到的力和力矩,而且是体轴系的。 2 飞机受力和力矩计算 飞机受力和力矩基本分3种:气动力和力矩、发动机力和力矩、重力。 2.1升力计算 升力主要由以下3部分相加而成: 全机升力——由Xflr5计算的升力系数曲线计算。 升降舵偏转引起的升力——由导数CLde计算。 俯仰角速率引起的升力——由导数CLq计算。 2.2阻力计算 阻力一般只计算全机阻力即可,即按照Xflr5计算的阻力系数曲线计算。如果有需求或有可信的计算数据,也可增加舵面偏转引起的阻力,比如要模拟飞翼布局阻力舵的时候就是必不可少的。 2.3侧力计算 侧力主要由以下4部分相加而成: 侧滑角引起的侧力——由导数CYb计算。 滚转角速率引起的侧力——由导数CYp计算。 偏航角速率引起的侧力——由导数CYr计算。 方向舵引起的侧力——由导数CYdr计算。 2.4滚转力矩计算 滚转力矩主要由以下5部分相加而成: 侧滑角引起的滚转力矩——由导数Clb计算。 滚转角速率引起的滚转力矩——由导数Clp计算。 偏航角速率引起的滚转力矩——由导数Clr计算。 副翼偏转引起的滚转力矩——由导数Clda计算。 方向舵偏转引起的滚转力矩——由导数Cldr计算。 2.5俯仰力矩计算 俯仰力矩主要由以下4部分相加而成: 全机俯仰力矩——由Xflr5计算的俯仰力矩系数曲线计算。 俯仰角速率引起的俯仰力矩——由导数Cmq计算。 洗流时差引起的俯仰力矩——由洗流时差导数计算。 升降舵偏转引起的俯仰力矩——由导数Cmde计算。 2.6偏航力矩计算 偏航力矩主要由以下5部分相加而成: 侧滑角引起的偏航力矩——由导数Cnb计算。 滚转角速率引起的偏航力矩——由导数Cnp计算。 偏航角速率引起的偏航力矩——由导数Cnr计算。 副翼偏转引起的偏航力矩——由导数Cnda计算。 方向舵偏转引起的偏航力矩——由导数Cndr计算。 (以上计算涉及动压、参考长度确定等,不再赘述) 需要注意这里的升力、阻力都属于在风轴系下定义的力,需要进行坐标转换,将升力、阻力、侧力分解合成到体轴系。风轴系与体轴系的区别就是风轴系以来流方向为X轴,体轴系则以机身方向为X轴。 2.7发动机力和力矩及重力 发动机推力和力矩根据转速和来流速度进行计算即可,而且发动机力和力矩就是在体轴系下定义的。重力则可根据飞机姿态角直接分解到体轴系。 让气动力和力矩、发动机力和力矩、重力在飞机体轴系下叠加即可得到总的力和力矩,再把这个力和力矩输入到上文中的6自由度运动模块就完成了简单的飞行仿真模型的搭建。 当然,更高级的动力学建模还包括大气环境、舵机模型、飞机质量变化、飞机弹性变形等。一定要先确定模型的使用场景,判断哪些环节是可以省略而哪些是必须详细且真实的,然后一步一步细化模型,才能获得有效的飞机运动仿真模型。 目前根据之前所设计和计算的结论建立的模型如下: 发动机模型 发动机模型输入有左发转速、右发转速、来流速度、偏航角速率,输出为左右发动机各自产生的力和力矩。 飞机本体模型 飞机本体模型输入有4个,分别为油门、副翼偏角、升降舵偏角、方向舵偏角,以后可以根据需要增加襟翼等舵面。输出包含速度、3向位置、欧拉角、迎角、侧滑角、3向角速率等,并且可输出数据到tacview进行轨迹回放。 以后想基于这个数学模型与大家一起探讨飞行控制律的设计,或者更进一步,利用MATLAB对Xplane等软件里的各种飞机进行仿真、控制、辨识,并与大家进行这方面的探讨。 长按 |
转载请注明地址:http://www.feixingzhao.com/fxzpf/8791.html
- 上一篇文章: 南苏丹人道主义飞行救援实录6机组成员介绍
- 下一篇文章: 惠州大鹏滑翔伞飞行体验介绍