战斗机机动动作分类与模型

一、机动动作分类

机动动作一般是根据飞行员的实际飞行经验总结得出的,具有很强的实战意义,经过多年的发展,已经形成了从简单到复杂的诸多机动动作。

从理论上看,机动飞行动作是指飞行器的飞行状态(速度、位置、姿态等)随时间的快速变化。在实际空战当中,飞行员驾驶飞行器通过采用机动飞行来改变飞机当前的位置与角度,从而占据有利的进攻位置或逃避对方的攻击。机动飞行最早出现在第一次世界大战时期,由于当时飞机的动力系统较弱,机动飞行通常停留在水平平面内。到第二次世界大战期间由于发动机技术的进步,大推重比的飞行器以及三维空间内的机动飞行开始不断产生。

其中三维空间内的机动飞行动作通常可看做二维空间内的机动动作的组合,即铅垂面内的机动,包括:跃升机动、俯冲机动以及筋斗机动、水平加(减)速机动等;以及水平面内的机动,包括:快速滚转机动、小半径转弯机动等[48]。通过这些基本的飞行动作,可以实现复杂的综合机动飞行,如:滚筒机动、破S(Split S)机动等。

但应注意到,三维复杂机动飞行中飞行器呈现出横、纵向相互耦合的气动特性,这是二维平面内的机动飞行所不存在的,因此其控制难度较大。

还有一类特殊的机动行为被称作过失速机动,又称超机动,是新一代战斗机的典型特征之一,常见的超机动动作有眼镜蛇机动、Herbst机动等。这种状态下飞机迎角往往很大,动态特性表现出高度的非线性特征,而且气动参数随时间变化的范围较大。未来空战仍是近距空战与远距空战并存,因而超机动格斗能力也不能忽略,其中基于矢量推力的超机动飞行也是近些年的一个研究热点。

下图展示了几种经典的机动动作,包含铅垂面机动筋斗,水平面的横滚机动,复杂综合的破S机动,以及过失速眼镜蛇机动。

                                      

                                                      (a) 筋斗机动                                                   (b) 横滚机动

                                      

                                                         (c) 英麦曼机动                                           (d) 眼镜蛇机动

                                                                                        典型战术机动动作

二、机动动作的模型

机动动作包括飞行轨迹和操纵指令,大多基于数学公式描述和示教法产生。由于部分机动动作的复杂性,难以用数学公式描述;示教法又称为学徒学习,是指学习者模仿专家的行为或者控制策略,现已成功应用于机器人导航、无人机及无人车控制等领域。

⑴ 数学公式

根据有经验的驾驶员完成的试飞结果,模拟出近似曲线,推导得出机动动作的轨迹模型。同时记录生成飞行员的操纵指令,得出机动动作的指令生成器。

⑵ 离散模型

数据序列:结合多条已经校正后的演示轨迹以及它们相应的噪声估计,通过灵活运用卡尔曼滤波算法,学习出了期望的参考轨迹。其中:z 目标轨迹数据序列的状态向量, y 是演示轨迹数据序列的状态向量, \tau是目标轨迹的时间指数。

                                                                                         轨迹学习算法

神经网络拟合:普通机动动作的描述可以采用位置序列加上随机干扰,采用迭代学习控制的方法实现。在有人机的实现中,主要靠飞行员根据短时的姿态感知控制飞机实现。考虑到战术机动的动作时间更短,采用姿态时间序列描述机动动作更加合适。而实际中,每次得到的机动动作数据不可能完全相同,这种相似性的描述可以通过加入随机扰动项描述,非线性的时间序列可以采用反馈时序网络等构建。

                                                                                     姿态序列的时序网络

这种模型的优点在于:可以从数据中获得,描述了有人机战术机动飞行控制具有状态局部性的特点。还可以利用神经网络和深度学习生成悬停指令,降落和其他指令等,用于直接操纵飞行伺服系统。这种端到端的网络直接输出控制器指令、使用方便,但功能有限、抗干扰能力相对较差。

  • 7
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论
MATLAB可以通过使用动力学方程和数值积分方法来构建飞机机动模型。下面是一个简单的示例,展示如何使用MATLAB构建一个简化的飞机机动模型: ```matlab % 飞机机动模型 % 初始化参数 mass = 5000; % 飞机质量 (kg) initial_v = 100; % 初始速度 (m/s) initial_alpha = 0; % 初始迎角 (rad) initial_theta = 0; % 初始俯仰角 (rad) initial_q = 0; % 初始俯仰角速度 (rad/s) % 初始化时间和步长 t0 = 0; % 初始时间 (s) dt = 0.01; % 时间步长 (s) tfinal = 10; % 模拟结束时间 (s) % 创建时间向量 t = t0:dt:tfinal; % 初始化数据存储变量 v = zeros(size(t)); alpha = zeros(size(t)); theta = zeros(size(t)); q = zeros(size(t)); % 设置初始条件 v(1) = initial_v; alpha(1) = initial_alpha; theta(1) = initial_theta; q(1) = initial_q; % 模拟飞机机动 for i = 2:length(t) % 计算力和力矩 lift = 0.5 * 1.225 * v(i-1)^2 * 50; % 简化的升力计算 drag = 0.5 * 1.225 * v(i-1)^2 * 5; % 简化的阻力计算 moment = 0.1 * lift; % 简化的俯仰力矩计算 % 计算加速度和角加速度 acceleration = (lift * cos(alpha(i-1)) - drag) / mass; angular_acceleration = moment / mass; % 更新速度、迎角、俯仰角和俯仰角速度 v(i) = v(i-1) + acceleration * dt; alpha(i) = alpha(i-1) + q(i-1) * dt; theta(i) = theta(i-1) + q(i-1) * dt; q(i) = q(i-1) + angular_acceleration * dt; end % 绘制飞机机动曲线 figure; subplot(2,2,1); plot(t, v); xlabel('时间 (s)'); ylabel('速度 (m/s)'); title('速度 vs. 时间'); subplot(2,2,2); plot(t, alpha); xlabel('时间 (s)'); ylabel('迎角 (rad)'); title('迎角 vs. 时间'); subplot(2,2,3); plot(t, theta); xlabel('时间 (s)'); ylabel('俯仰角 (rad)'); title('俯仰角 vs. 时间'); subplot(2,2,4); plot(t, q); xlabel('时间 (s)'); ylabel('俯仰角速度 (rad/s)'); title('俯仰角速度 vs. 时间'); ``` 这个示例构建了一个简化的飞机机动模型,通过数值积分方法模拟飞机的速度、迎角、俯仰角和俯仰角速度随时间的变化。在模拟过程中,根据简化的力和力矩计算公式计算飞机的加速度和角加速度,然后使用欧拉方法更新飞机的状态变量。 请注意,这只是一个简化的飞机机动模型示例,实际的飞机模型可能更加复杂,涉及到更多的物理因素和控制参数。此外,该模型还可以根据需要进行进一步的扩展和改进。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牛仔很忙^

雪中送炭者,定当铭记在心!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值