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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/376135.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

DAY5.

握手: 第一次握手:客户端发送SYN包给服务器,并进入SYN_SENT状态,等待服务器返回确认包。 第二次握手:服务器接收到SYN包,确认客户端的SYN,发送ACK包,同时发送一个SYN包,…

docker常用10条容器操作命令

Docker 中一些常用的容器操作命令,我们可以根据需要使用这些命令来管理和操作 Docker 容器。我们这次以Hell-world这个镜像为例来说明: 1. docker pull hello-world #拉取hell-world镜像 2. docker images # 查看本地拉取的镜像 3. docker run hello…

[leetcode] 29. 两数相除

文章目录 题目描述解题方法倍增java代码复杂度分析 题目描述 给你两个整数,被除数 dividend 和除数 divisor。将两数相除,要求 不使用 乘法、除法和取余运算。 整数除法应该向零截断,也就是截去(truncate)其小数部分…

得物自研API网关实践之路

一、业务背景 老网关使用 Spring Cloud Gateway (下称SCG)技术框架搭建,SCG基于webflux 编程范式,webflux是一种响应式编程理念,响应式编程对于提升系统吞吐率和性能有很大帮助; webflux 的底层构建在netty之上性能表…

【SpringBoot篇】解决Redis分布式锁的 误删问题 和 原子性问题

文章目录 🍔Redis的分布式锁🛸误删问题🎈解决方法🔎代码实现 🛸原子性问题🌹Lua脚本 ⭐利用Java代码调用Lua脚本改造分布式锁🔎代码实现 🍔Redis的分布式锁 Redis的分布式锁是通过利…

【C语言】socket函数

一、socket函数函数的原型 int socket(int domain, int type, int protocol); 其中: domain参数指定套接字应该使用的协议族(例如,AF_INET表示IPv4协议族)。type参数指定套接字类型(例如,SOCK_STREAM表示…

阿里云游戏服务器多少钱一个月?

阿里云游戏服务器租用价格表:4核16G服务器26元1个月、146元半年,游戏专业服务器8核32G配置90元一个月、271元3个月,阿里云服务器网aliyunfuwuqi.com分享阿里云游戏专用服务器详细配置和精准报价: 阿里云游戏服务器租用价格表 阿…

MATLAB语音去噪系统

目录 一、背景 二、GUI页面 三、程序 3.1 LMS滤波程序 3.2 GUI程序 四、附录 一、背景 本文介绍了一种最佳的自适应滤波器结构,该结构采用最小均方差(LMS)作为判据,通过不断迭代自适应结构来调整得到最佳滤波器…

Godot 游戏引擎个人评价和2024年规划(无代码)

文章目录 前言Godot C# .net core 开发简单评价Godot相关网址可行性 Godot(GDScirpt) Vs CocosGodot VS UnityUnity 的裁员Unity的股票Unity的历史遗留问题:Mono和.net core.net core的开发者,微软 个人的独立游戏Steam平台分成说明独立游戏的选题美术风…

Win32 SDK Gui编程系列之--ListView自绘OwnerDraw

ListView自绘OwnerDraw 1.ListView自绘OwnerDraw 正在试错是否使用了列表视图,尽量制作出智能的表格编辑器。本页显示了业主抽签的表格数据(二维数组数据)的显示方法。 显示画面和整个程序如下所示。使用ListView_GetSubItemRect宏的话,就不需要getRect函数了。 当nCol的…

归并排序(Java)

归并排序是常见的八大排序算法之一,归并排序也是一种时间复杂度比较好的一种算法,为0(n*logn)级别。 归并排序可以用递归和非递归两种方式来实现,当然,递归方法是比较简单的,而非递归则是相对而言比较难的一种思路。 归…

使用 NtQuerySystemInformation 遍历进程信息

在 Windows 操作系统中,了解正在运行的进程的信息对于系统管理和性能优化至关重要。通过遍历系统进程信息,我们可以获取进程的 ID、名称、线程数、句柄数以及各种性能指标,从而帮助我们了解系统的运行状况并进行必要的调整和优化。本文将详细…

python coding with ChatGPT 打卡第17天| 二叉树:找树左下角的值、路径总和

相关推荐 python coding with ChatGPT 打卡第12天| 二叉树:理论基础 python coding with ChatGPT 打卡第13天| 二叉树的深度优先遍历 python coding with ChatGPT 打卡第14天| 二叉树的广度优先遍历 python coding with ChatGPT 打卡第15天| 二叉树:翻转…

Quicker读取浏览器的书签(包括firefox火狐)

从edge换了火狐,但是quicker不能读取本地的bookmarks文件了,就研究了一下。 方法1:读取本地Bookmarks文件(仅谷歌内核浏览器) 谷歌内核的浏览器本地会有Bookmarks文件,放了所有的书签数据,直接…

新版MQL语言程序设计:键盘快捷键交易的设计与实现

文章目录 一、什么是快捷键交易二、使用快捷键交易的好处三、键盘快捷键交易程序设计思路四、键盘快捷键交易程序具体实现1.界面设计2.键盘交易事件机制的代码实现 一、什么是快捷键交易 操盘中按快捷键交易是指在股票或期货交易中,通过使用快捷键来进行交易操作的…

故障诊断 | 一文解决,TCN时间卷积神经网络模型的故障诊断(Matlab)

效果一览 文章概述 故障诊断 | 一文解决,TCN时间卷积神经网络模型的故障诊断(Matlab) 模型描述 时间卷积神经网络(TCN)是一种用于序列数据建模和预测的深度学习模型。它通过卷积操作在时间维度上对序列数据进行特征提取,并且可以处理可变长度的输入序列。 要使用TCN进行…

昆仑万维发布天工 2.0 大语言模型及AI助手App;AI成功破解2000年前碳化古卷轴

🦉 AI新闻 🚀 昆仑万维发布天工 2.0 大语言模型及AI助手App 摘要:昆仑万维近日推出了新版MoE大语言模型“天工 2.0”和相应的“天工 AI 智能助手”App,宣称为国内首个面向C端用户免费的基于MoE架构的千亿级参数大模型应用。天工…

购物车底部工具栏全选、总价、总数量实现

购物车商品加一个checked属性 定义allChecked属性 <!-- 底部工具栏 开始 --> <view class"footer_tool"><!-- 全选 开始 --><view class"all_chk_wrap"><checkbox-group><checkbox checked"{{allChecked}}">…

视频上传 - 断点续传那点事

在上一篇文章中&#xff0c;我们讲解了分片上传的实现方式。在讲解断点续传之前&#xff0c;我要把上篇文章中留下的问题讲解一下。读过上一篇文章的小伙伴们都知道&#xff0c;对于分片上传来说&#xff0c;它的传输方式分为2种&#xff0c;一种是按顺序传输&#xff0c;一种是…

如何安装x11vnc并结合cpolar实现win远程桌面Deepin

文章目录 1. 安装x11vnc2. 本地远程连接测试3. Deepin安装Cpolar4. 配置公网远程地址5. 公网远程连接Deepin桌面6. 固定连接公网地址7. 固定公网地址连接测试 正文开始前给大家推荐个网站&#xff0c;前些天发现了一个巨牛的 人工智能学习网站&#xff0c; 通俗易懂&#xff…