航展畅想:从F35机载软件研发来看汽车车载软件研发

news2024/11/28 5:38:54

两款经典战机的机载软件

在这里插入图片描述

F-22和F-35战斗机的研制分别始于1980年代和1990年代末,F-22项目在1981年启动,主要由洛克希德·马丁(Lockheed Martin)和波音公司(Boeing)合作开发,以满足美军“先进战术战斗机” (ATF) 项目的需求。F-35的研发则开始于1996年,由洛克希德·马丁领导,同样与诺斯罗普·格鲁曼和BAE系统公司合作,以满足美军的“联合攻击战斗机” (JSF) 项目的需求 。

F-35的代码量比F-22大得多,F-35的软件代码行数高达2500万,而F-22仅为约200万。这种差距的原因主要是由于两机型的任务和技术需求不同。F-22主要设计为制空战斗机,注重空对空作战,而F-35是多用途战斗机,不仅具备空战能力,还需要执行空对地攻击、电子战和情报侦察任务,这些任务需要更复杂的传感器融合和信息处理能力 。

关于编程语言的选择,虽然F-22的核心代码使用了Ada语言,但F-35项目团队选择了C++。这部分是因为C++在商业和军事软件开发中变得更为普及,具有更广泛的支持和开发资源。而且C++相比Ada有更好的灵活性,可以更好地支持现代计算平台和硬件接口,符合F-35复杂任务系统的需求。因此,为了满足多任务环境下的模块化和扩展性需求,F-35的软件开发转向了C++而非延续F-22的Ada代码 。

在这里插入图片描述

F35战斗机机载软件的几个重大问题

在F-35的研发过程中,出现了几个重大软件问题,影响了其整体性能和交付进度。以下是一些主要问题:

  1. 武器系统软件问题:在一些早期的软件更新中,增加新的武器功能时,导致之前已经正常运行的武器系统出现故障。例如,在为F-35增加其他武器系统的功能后,AIM-120先进中程空空导弹(AMRAAM)的相关功能出现问题  。
  2. 持续的软件更新失败:F-35采用了“持续能力开发与交付”(C2D2)模型,计划每六个月交付增量的软件更新。然而,这一做法证明是不可持续的,常常引入稳定性问题,甚至影响到其他系统的正常运行。因此,更新的周期被延长至每年一次 。
  3. 测试不足:由于资金和资源的限制,开发团队在软件部署前未能进行充分的测试、回归测试和数据分析,这导致一些软件缺陷和操作问题未能及时发现,通常是在实际使用中由作战单位发现 。
  4. 技术刷新延迟:另一个重大问题是F-35的技术刷新(TR-3)延迟,原计划的更新被推迟了超过一年,这直接影响了飞机的交付进度 。

这些软件问题反映了在将高度依赖软件的功能集成到战斗机中的复杂性。洛克希德·马丁努力解决了这些问题,致力于稳定软件和提高机队的可用性。

给汽车车载软件研发的启示

上面所讲述的F-35的开发过程中遇到的重大软件问题为国内汽车车载软件研发提供了一些重要的启示:

  1. 持续更新与回归测试的重要性

F-35采用的“持续能力开发与交付”(C2D2)模式,尽管初衷是希望通过定期小规模的软件更新不断优化系统,但这一方式未能有效避免新版本引入的稳定性问题。对于国内汽车车载软件而言,类似的情况同样适用。汽车软件,尤其是车载娱乐、自动驾驶和安全系统的更新(O TA),若过于频繁或未进行充分的回归测试,可能会导致新功能与已有功能的冲突,从而影响车辆的可靠性。因此,在进行软件更新时,必须加强回归测试,确保新功能不会破坏现有系统的稳定性 。

  1. 资金与资源的保障

F-35在软件开发过程中由于资金和资源不足,导致了许多测试未能按计划完成,进而影响了软件质量和交付进度。对于车载软件研发,尤其是涉及到智能驾驶、ADAS(高级驾驶辅助系统)等复杂功能时,充足的资金和资源投入至关重要。开发团队需要在前期阶段就确保有足够的时间和资源进行测试,尤其是对安全性和可靠性至关重要的系统 。

  1. 系统的模块化与可维护性

F-35软件中的一些问题是由新增的功能与已有功能的冲突引起的。这提醒我们,在汽车车载软件的设计时,模块化和高可维护性非常重要。如果一个新的软件模块的加入可能影响到其他系统的稳定性,那么必须设计合理的接口和清晰的模块划分,以减少不同模块间的相互干扰和兼容性问题 。

  1. 确保“原始设计”的高质量

F-35软件在设计阶段未能做到完全的完善,导致后期的更新不断修复问题。这表明,在初始版本发布时,软件的质量和稳定性必须尽可能接近最终需求。对于汽车车载系统,特别是在自动驾驶领域以及功能安全相关软件,过于依赖后续的修复和更新可能会带来严重安全隐患。因此,初期的开发阶段要确保软件系统设计的全面性和严谨性,减少后期修复的负担 。

  1. 跨部门协作与整体系统测试

F-35的开发也暴露了在不同部门和技术团队之间协调不力的问题,尤其是在测试阶段。类似的情况在汽车行业中也常会发生,特别是在涉及多个硬件厂商和软件开发团队的情况下。良好的跨部门协作、全面的系统集成测试对于车载软件的成功至关重要,确保各个模块之间的兼容性和整体系统的稳定运行 。

总结来说,F-35在软件开发中的经验和教训为国内汽车车载软件的研发提供了很多有价值的启示,尤其是在测试、资源分配、模块化设计以及初期高质量设计方面,国内厂商可以从中吸取宝贵经验,避免类似问题的发生。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

实践出真知:MVEL表达式empty的坑

目录标题 背景为什么呢?验证下empty的含义case1case2case3 结论具体解释: 背景 //是否白名单 if(goodInfo.?isWhite ! empty){showList.add(["label": "是否白名单","value":["text":(goodInfo.?isWhite tr…

RPC核心实现原理

目录 一、基本原理 二、详细步骤 三、额外考虑因素 RPC(Remote Procedure Call,远程过程调用)是一种计算机通信协议,也是一种用于实现分布式系统中不同节点之间进行通信和调用的技术。其实现原理主要可以分为以下几个步骤&…

Kaggle生物信息学挑战:酶稳定性预测大赛

背景介绍 酶的稳定性是影响其实际应用的关键因素之一。通过定点突变可以改善酶的稳定性,但实验筛选稳定性突变体的成本较高。预测突变对酶稳定性的影响,加速筛选稳定性更高的酶突变体。 概念解释 X 残基:假设 它用 红色表示 , Y 残基:假设…

【开发工具——依赖管理工具——Maven】

1. Maven介绍 Apache Maven 的本质是一个软件项目管理和理解工具。基于项目对象模型 (Project Object Model,POM) 的概念,Maven 可以从一条中心信息管理项目的构建、报告和文档。 对于开发者来说,Maven 的主要作用主要有 3 个: …

vue3+vite搭建脚手架项目本地运行electron桌面应用

1.搭建脚手架项目 搭建Vue3ViteTs脚手架-CSDN博客 2.创建完项目后,安装所需依赖包 npm i vite-plugin-electron electron26.1.0 3.根目录下创建electron/main.ts electron/main.ts /** electron/main.ts */import { app, BrowserWindow } from "electron&qu…

鸿蒙ArkTS中的获取网络数据

一、通过web组件加载网页 在C/S应用程序中,都有网络组件用于加载网页,鸿蒙ArkTS中也有类似的组件。   web组件,用于加载指定的网页,里面有很多的方法可以调用,虽然现在用得比较少,了解还是必须的。   演…

无人车之路径规划篇

无人车的路径规划是指在一定的环境模型基础上,给定无人车起始点和目标点后,按照性能指标规划出一条无碰撞、能安全到达目标点的有效路径。 一、路径规划的重要性 路径规划对于无人车的安全、高效运行至关重要。它不仅能够提高交通效率,减少交…

C语言心型代码解析

方法一 心型极坐标方程 爱心代码你真的理解吗 笛卡尔的心型公式&#xff1a; for (y 1.5; y > -1.5; y - 0.1) for (x -1.5; x < 1.5; x 0.05) 代码里面用了二个for循环&#xff0c;第一个代表y轴&#xff0c;第二个代表x轴 二个增加的单位不同&#xff0c;能使得…

11月7日(内网横向移动(二))

利用系统服务 SCShell SCShell是一款利用系统服务的无文件横向移动工具。与传统的创建远程服务的方法不同&#xff0c;SCShell利用提供的用户凭据&#xff0c;通过ChangeServiceConfigA API修改远程主机上的服务配置&#xff0c;将服务的二进制路径名修改为指定的程序或攻击载…

【YOLOv11[基础]】目标检测OD | 导出ONNX模型 | ONN模型推理以及检测结果可视化 | python

本文将导出YOLO11.pt模型对应的ONNX模型,并且使用ONNX模型推理以及结果的可视化。话不多说,先看看效果图吧!!! 目录 一 导出ONNX模型 二 推理及检测结果可视化 1 代码 2 效果图

力扣—不同路径(路径问题的动态规划)

文章目录 题目解析算法原理代码实现题目练习 题目解析 算法原理 状态表示 对于这种「路径类」的问题&#xff0c;我们的状态表示⼀般有两种形式&#xff1a; i. 从[i, j] 位置出发。 ii. 从起始位置出发&#xff0c;到[i, j] 位置。 这⾥选择第⼆种定义状态表⽰的⽅式&#xf…

传统RAG流程;密集检索器,稀疏检索器:中文的M3E

目录 传统RAG流程 相似性搜索中:神经网络的密集检索器,稀疏检索器 密集检索器 BGE系列模型 text-embedding-ada-002模型 M3E模型 稀疏检索器 示例一:基于TF-IDF的稀疏检索器 示例二:基于BM25的稀疏检索器 稀疏检索器的特点与优势 传统RAG流程 相似性搜索中:神经…

Javascript 获取设备信息 工具

JS获取设备信息(操作系统信息、地理位置、UUID、横竖屏状态、设备类型、网络状态、浏览器信息、生成浏览器指纹、日期、生肖、周几等) Get Device Info Online GitHub - skillnull/DeviceJs: JS获取设备信息(操作系统信息、地理位置、UUID、横竖屏状态、设备类型、网络状态、浏…

【数据仓库】

1、概述 数据仓库&#xff0c;英文名称为Data Warehouse&#xff0c;可简写为DW或DWH。 数据仓库是企业中用于集中存储和管理来自多个源的经过处理和组织的数据的系统。它为复杂的查询和分析提供了一个优化的环境&#xff0c;使得用户能够执行高级数据分析&#xff0c;以支持…

成都栩熙酷网络科技有限公司抖音小店探索

在数字经济的浪潮中&#xff0c;电商行业正以前所未有的速度蓬勃发展&#xff0c;而短视频平台的崛起更是为这一领域注入了新的活力。成都栩熙酷网络科技有限公司&#xff08;以下简称“栩熙酷”&#xff09;&#xff0c;作为这股浪潮中的佼佼者&#xff0c;凭借其敏锐的市场洞…

基于ViT的无监督工业异常检测模型汇总

基于ViT的无监督工业异常检测模型汇总 论文1&#xff1a;RealNet: A Feature Selection Network with Realistic Synthetic Anomaly for Anomaly Detection&#xff08;2024&#xff09;1.1 主要思想1.2 系统框架 论文2&#xff1a;Inpainting Transformer for Anomaly Detecti…

传输协议设计与牧村摆动(Makimoto‘s Wave)

有一条活鱼和一条死鱼&#xff0c;你准备怎么做&#xff0c;你会将活鱼红烧或将死鱼清蒸吗&#xff1f;好的食材只需要最简单的烹饪&#xff0c;不好的食材才需要花活儿。 我此前的文字几乎都在阐述一个观点&#xff0c;广域网就是那条死鱼&#xff0c;数据中心则是那条活鱼。…

基于Python的旅游景点推荐系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…

程序员的生活周刊 #7:耐克总裁被裁记

0. 庙宇 这张图来自 Tianshu Liu&#xff0c; 被树木环绕的宝塔庙宇 1. 耐克总裁 耐克最近的总裁 John Donahoe 干了 5 年&#xff0c;终于被裁掉了。 这位总裁即不了解球鞋文化&#xff0c;也没有零售经验&#xff0c;但不懂事的董事会还是聘用它&#xff0c;寄托把耐克从运…

全面解析:区块链技术及其应用

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 全面解析&#xff1a;区块链技术及其应用 全面解析&#xff1a;区块链技术及其应用 全面解析&#xff1a;区块链技术及其应用 区…