当前位置: 首页 > article >正文

虚拟飞控计算机:飞行控制系统验证与优化的利器

01.背景介绍

随着航空技术的飞速发展,飞行控制系统作为飞机的心脏,全面负责监测、调整和维持飞行器的姿态、航向、高度等参数,用以确保飞行的安全和稳定。为了满足这些要求,现代飞控系统通常采用先进的处理器和外设来确保其高效、稳定的运行。

▲C919模拟驾驶舱

然而,在实际应用中,受到成本、技术、安全等多种因素的限制,真实的处理器和外设往往难以满足测试和验证的需求。为解决这一困境,虚拟飞控计算机应运而生,它能够模拟出真实的处理器及外设,为飞控软件提供接近真实环境的运行支撑。

02.飞控计算机硬件技术方案

为实现飞控计算机的虚拟仿真,首先需要了解飞控计算机的硬件技术方案。现代飞控计算机的设计方案通常包括指令支路和监控支路两部分。

指令支路涉及飞行控制系统的实际控制部分,包括姿态控制、油门控制、舵面控制等。在指令支路中,飞控计算机会根据传感器提供的数据和控制算法的指导,计算出相应的控制指令,然后发送给执行器系统。

监控支路通常涉及故障检测、系统诊断、性能监测等功能。飞控计算机会定期检查传感器的数据、执行器的响应以及其他系统的运行情况,如果发现任何异常,则会采取相应的措施,如发出警报、停止指令支路的指令输出、采取容错控制或自动转换备用系统等,以保证飞行控制的安全和稳定。

飞控计算机的硬件架构拓扑图如下:

▲飞控计算机的硬件架构拓扑图

2.1 飞控计算机系统

飞控计算机的设计方案中,指令和监控支路分别采用了基于PowerPC和ARM架构的处理器,其余的硬件模块则主要依赖于FPGA来实现。这两条支路共享电源、时钟和复位,以确保处理器在相同的复位和时钟信号下同步运行。

2.2 系统功能和通讯

指令支路为不同单元提供分时分区同步中断,确保各任务能够同步运行;

数据传输借助基于FPGA的CLDL总线(一种总线通讯协议),实现指令支路与监控支路之间的通信。这种设计使得飞控计算机能够高效、安全地处理飞行控制指令,并实时监控飞机状态,从而确保飞行的安全性和稳定性;

飞控计算机通过以太网与上位机通信,允许上位机配置网络参数,使用指令获取系统软件中的变量数据,获得真实飞机运行状态及控制的关键参数。 

03.基于SkyEye的虚拟飞控计算机实现方案

与飞控计算机的硬件技术方案相对应,SkyEye仿真实现的虚拟飞控计算机的基本架构如下图所示:

▲SkyEye飞控计算机系统仿真基本架构

3.1 架构与同步机制

与真实硬件一致,基于SkyEye的虚拟飞控计算机由指令支路板卡和监控支路板卡构成。指令支路板卡包含CPU1和FPGA模型,监控支路板卡则包含CPU2和FPGA模型。两个支路的同步是通过SkyEye的同步工具实现的,该工具利用同步步长来确保指令支路与监控支路同步运行。在任何给定时刻,这两个支路的仿真时间都是相同的。 

3.2 同步中断设计

为了实现两支路的分时分区同步中断,基于实际硬件情况,虚拟飞控计算机将指令支路的同步中断传递给监控支路。一旦此中断被触发,指令支路和监控支路的同步中断任务将同步启动,确保两支路之间的同步运行。这种设计提高了系统的可靠性和稳定性,使得虚拟飞控计算机能够更好地模拟真实硬件的行为,并为飞控计算机系统软件的测试和分析提供了便利。

3.3 CLDL通信模拟

基于SkyEye的虚拟飞控计算机模拟了两支路间的CLDL通信协议。当指令支路需要向监控支路发送数据时,相关任务将数据传输给指令支路的CLDL模块,CLDL模块解析数据并通过网络发送给监控支路的CLDL模块,并由该模块将数据解析并保存到指定ID的CLDL缓冲区中。随后,监控支路的处理任务读取该缓冲区中相应ID的数据,并进行进一步的处理。

3.4 网络数据交互设计

基于SkyEye的虚拟飞控计算机通过以太网与上位机相连,确保数据传输的稳定性和高效性。为实现网络数据的收发,指令支路采用虚拟W5100网络接口芯片,保持与硬件使用芯片一致,监控支路采用TAP虚拟网卡模拟芯片GMAC模块。

这种配置保证了两条支路能快速、准确地接收和发送网络数据。一旦上位机完成网络IP和端口号的配置,便能通过发送指令获取飞控计算机软件的数据。这一功能使得上位机能实时监控飞控计算机软件的运行状态,并观察到软件内部各个变量的变化情况,为开发者、测试人员和操作员提供了极大的便利,使得他们能更直观地了解飞控计算机软件的运行状况,并及时发现、解决潜在问题。

04.总结

基于SkyEye虚拟飞控计算机技术不仅提供了一种新的开发方式,还对传统的开发模式进行了优化和替代。具体表现在以下几个方面:

1. 开发流程优化:通过逼真地仿真硬件技术路线实现全流程的仿真测试,使得开发流程更加高效、精准。

2. 早期验证与评估:实现早期阶段的验证与评估,通过提前发现问题并修复来降低后期风险和成本。

3. 并行开发与协同工作:支持多团队、多平台的并行开发与协同工作,提高开发效率。

4. 持续测试与迭代优化:通过不断地测试、分析和改进进一步提高飞控系统的性能和稳定性。

5. 可扩展性与灵活性:可根据技术不断发展随时进行更新和升级,以适应新的硬件设备和系统需求。

6. 安全性与可靠性提升:避免真实硬件可能出现的物理损伤或故障,提前发现潜在问题,进一步提高飞控系统的可靠性和稳定性。

综上所述,基于SkyEye的虚拟飞控计算机通过逼真仿真出真实飞控计算机的技术路线,为飞控系统软件的开发带来了显著的优势和价值。随着虚拟技术的不断发展和完善,相信虚拟飞控计算机将在未来发挥更加重要的作用,为航空工业的繁荣做出更大的贡献。


http://www.kler.cn/a/233652.html

相关文章:

  • SOLIDWORKS代理商鑫辰信息科技
  • 机器学习——损失函数、代价函数、KL散度
  • Rust学习(二):rust基础语法Ⅰ
  • 基于promtail+loki+grafana搭建日志系统
  • 企业如何提高团队管理的能力?
  • LLM - 使用 LLaMA-Factory 微调大模型 Qwen2-VL SFT(LoRA) 图像数据集 教程 (2)
  • 汇编语言程序设计(二)十六位汇编框架、子程序与堆栈
  • 小周带你读论文-2之“草履虫都能看懂的Transformer老活儿新整“Attention is all you need(4)
  • 2024年-视觉AI检测的面试题目总结
  • 如何实现视线(目光)的检测与实时跟踪
  • 《CSS 简易速速上手小册》第5章:CSS 动画与过渡(2024 最新版)
  • 【社交电商】带直播电商功能,可以DIY前端,可以H5和小程序一般商城常用功能齐全
  • C++Linux网络编程day02:select模型
  • 基于完全二叉树实现线段树-- [爆竹声中一岁除,线段树下苦踌躇]
  • 风行智能电视G32Y 强制刷机升级方法,附刷机升级数据MstarUpgrade.bin
  • 【Java八股面试系列】并发编程-并发关键字,线程池
  • Leetcode 337 打家劫舍 III
  • 软件测试学习笔记-使用jmeter进行性能测试
  • ChatGPT高效提问—prompt常见用法(续篇四)
  • Acwing831KMP字符串
  • 【极数系列】Flink集成KafkaSink 实时输出数据(11)
  • 神经网络 | CNN 与 RNN——深度学习主力军
  • Redis篇之过期淘汰策略
  • springboot微信小程序 uniapp学习资料分享系统v9uy4
  • 【大厂AI课学习笔记】【1.5 AI技术领域】(8)文本分类
  • containerd中文翻译系列(二十一)用户命名空间