数字孪生:让ECU在数字环境中“栩栩如生”

news2025/1/12 13:25:30

很多汽车广告中都会展示这样一个画面:在快要猛烈撞击障碍物之时,汽车所配备的防撞预警功能在最后关头实现停驶,守护车内老少一家人的生命安全。

近年来,汽车安全性能成为众多厂商广告中的主打,侧面印证了安全在当下消费者选车指标中地位的提升。实际上,在一款新车被推广至大众之前,每一个部件都必须经过全面、系统的测试以保证足够的安全性。

汽车的安全问题属于老生常谈的话题。过去的一百年里,汽车开发商进步显著,从纯粹的机械到电子的介入,再到目前“软件定义汽车”的局面,软硬件相结合的嵌入式系统已然成为汽车工业的支柱,可以说每个汽车部件的使用都依赖于软件。

汽车软件需要部署在电子控制单元(Electronic Control Unit,ECU)中,作为半导体芯片上的嵌入式系统,汽车ECU在对各部件的控制上都起着至关重要的作用:无论是发动机控制或刹车这些必需功能,还是安全气囊与电子锁等安保功能,都需要ECU的介入。ECU无疑是汽车安全的核心组成部分。

1.如何对ECU进行测试?

报告显示,汽车所配备的ECU数量在2020年就已经破百。如何对这些越来越复杂的ECU进行全面而系统的测试,是每个汽车厂商都必须直面的问题。

在传统的汽车V字形开发模式中,每个新阶段都必须在上一个阶段已完成的情况下才能推进。原始设备制造商(Original Equipment Manufacturer,OEM)按照指定要求搭建框架,相关软件则由供应商提供,最终的集成与验收测试仍由OEM完成。为保证每个部件都经过严格的安全性与可靠性测试与验证,测试时间会被不断拉长,开发周期整体的反馈时间也会遭到拖延。

在常规的软件开发周期中,以十六进制格式保存的数据通常需要在多个团队之前循环,如果有其他供应商参与协作,整体开发周期会被拖得更长。同时,随着汽车功能与设计的不断创新,每一次新的开发都会导致ECU的测试变得更为简单。昂贵的硬件测试成本和有限的工程师工作量是OEM当前最受掣肘的原因。

为了能在激烈的市场竞争格局下跟上时代步伐,在保证安全的同时,拖短交付周期、高效完成交付,OEM必须采用另外的测试方法。

2.数字孪生:让ECU在数字环境中“栩栩如生”

通过仿真来搭建车身部件以及相关机制数字孪生的虚拟ECU模型,在早期阶段完成排错和概念验证已成为提高汽车电子开发效率的关键。

相较于真实硬件,虚拟ECU有着下列优势:

  • 数量几乎无限并且搭建速度快,软件人员不受硬件数量和硬件开发周期的限制,随时进行软件开发和测试;
  • 具有非常强的可观测性,能够随时观察和修改内存变量甚至硬件状态,为测量和标定带来巨大的效率提升(可能支持自动化标定);
  • 支持无人干预的自动化测试。

然而,ECU作为嵌入式系统必然伴随繁多的处理器类型和外设总线,如何快速且正确地完成仿真建模,保持其运行性能符合汽车电子系统的实时性要求则是一个全新的挑战。

3.国产自主、契合需求的仿真软件

天目全数字实时仿真软件SkyEye,作为基于可视化建模的硬件行为级仿真平台,能够为汽车ECU所需的嵌入式软件提供虚拟化运行环境,开发、测试人员可在该虚拟运行环境上进行软件开发、软件测试和软件验证活动。小到芯片,大到系统,SkyEye均可进行模拟。

目前 SkyEye 仿真的处理器和外设已经涵盖了汽车 ECU 所用到的大部分处理器,如MPC5554、Tricore 系列等。

应用基于SkyEye的虚拟ECU,工程师可以:

  • 无需关心真实线缆繁琐的连接关系,工程一次搭建,持续可复用;
  • 具备真实CAN总线和INCA硬件的仿真能力,支持数量几乎无限制的仿真硬件;
  • 支持符合AUTOSAR协议的OS及应用程序的运行;
  • 集成原有标定上位机软件,外接Simulink模型模拟真实数据。

虚拟ECU的整体设计框架如下图所示:

虚拟ECU除了可以显著减少测试时间和成本外,还能在开发过程中为工程师提供各种功能。随着消费级市场最真实的反馈、自动驾驶商用运营的价值显露,以及5G技术下车联网对车辆电子电气架构的要求,虚拟ECU作为团队无需额外硬件即可进行测试和验证的关键推动因素,无疑已成为推动汽车软件开发的加速器。

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

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

相关文章

【传感器】最小二乘法实现磁力计椭球校准

总体思路 磁力计的数据在实际中是椭球的形状,在此之前使用了球体拟合进行校准,也就是简化为正球体的模型,得出的结果比较差,航向计算不准,还是需要用椭球的模型来估计偏移量,先使用标准的椭球方程&#xf…

微信小程序相关问题整理(一)

文章目录 1、引入 vant-weapp UI2、配置小程序 tabBar3、小程序登录授权流程4、小程序支付(微信支付)5、小程序分享6、小程序打开内置地图(腾讯地图)7、小程序打开app8、小程序打开其他小程序9、小程序获取当前地理位置额外&#…

项目上线出Bug:我踩过的4个大坑及事后反思

最近参与的拥有7大模块的系统项目,从去年11月开始开发,共5个月左右。 该项目是用JavaNode.js开发,开发人员含外包将近10位,测试人员A从头跟到尾,其他测试人员都是紧急时刻从其他项目临时调来,包含兄弟部门…

【LeetCode】HOT 100(2)

题单介绍: 精选 100 道力扣(LeetCode)上最热门的题目,适合初识算法与数据结构的新手和想要在短时间内高效提升的人,熟练掌握这 100 道题,你就已经具备了在代码世界通行的基本能力。 目录 题单介绍&#…

精通编辑和校对:避免常见错误的实用方法

编辑和校对是提高写作质量的关键环节。为了精通编辑和校对,我们需要了解常见的错误并学会避免它们。 以下是一些实用方法,帮助你在编辑和校对过程中避免常见错误。 1.充分理解文本内容和目的 在开始编辑和校对之前,确保充分理解文本的内容和…

今天教会你如何在Chrome中正确使用ChatGPT!

🚀 个人主页 极客小俊 ✍🏻 作者简介:web开发者、设计师、技术分享博主 🐋 希望大家多多支持一下, 我们一起进步!😄 🏅 如果文章对你有帮助的话,欢迎评论 💬点赞&#x1…

笔记本电脑无法正常启动怎么办?

随着计算机技术的发展,笔记本电脑在性能上已经不比台式机落后,并且因其便于携带的优势,受到广大用户的喜爱。那么,在笔记本电脑无法正常启动时,我们该怎么办呢? 笔记本电脑无法正常启动的原因 笔记本电脑无…

这就是00后吗,工作没两年,跳槽到我们公司起薪20K都快接近我了

在程序员职场上,什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事,我们可以帮他。 是技术太强的人吗?也不是。技术很强的同事,可遇不可求,向他学习还来不及呢。 真正让人反感的,是技术平平&…

Vue3-02-响应性 reactive

1. setup setup 是一个组件选项,组合式 API 就定义在 setup 中,包括 data、methods、computed 和 watch 等,都定义在 setup 中。 setup 实际上是一个生命周期钩子函数,执行时间点相当于 Vue2 中 beforeCreate 和 created 的结合…

springcloud-alibaba (03)Sentinel规则-笔记

sentinel Sentinel提供的各种规则的简单说明01,流量控制一,流控规则(阈值类型:QPS)二,流控规则(阈值类型:并发线程数)三,高级选项 02,熔断降级一&…

day45_项目

SQL /* 在分页查询中,有一些常见变量名 pageNo 当前页(页码),默认是1 pageSize 每页展示数据的条数,需求给定 pageCount 共多少页pageCounttotal%pageSize0?(total/pageSize):(total/pageSize)1; total 共多少条数据,select count(id)计算出 */ -- 假设,每页展示4条 …

LEAP软件操作基础/安装与注册/基本原理和数据结构

本次内容突出与实例结合,紧密结合国家能源统计制度及《省级温室气体排放编制指南》,深入浅出地介绍针对不同级别研究对象时如何根据数据结构、可获取性、研究目的,构建合适的能源生产、转换、消费、温室气体排放(以碳排放为主&…

电力系统直流潮流计算研究【IEEE9节点】(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

JavaEE初阶学习:网络原理

1.应用层 应用层和代码直接相关的一层 决定了数据要传输什么,拿到数据之后如何使用 约定应用层数据报,数据格式,就是在自定义协议~~ 如何约定? 1.确定要传输那些信息,(根据需求走的) 外卖程序,有一个核心的功能,加载商家列表 请求 用户ID 用户的位置(经纬度) 响应 …

使用Python脚本和简单的图形用户界面轻松切割MP3文件

应用场景: 需要将大型MP3文件切割成较小的部分以便上传或发送。需要从MP3文件中提取特定的音频片段,以便用于其他目的。需要快速制作铃声或音乐片段,以用于手机等设备。 源代码: import subprocess import wxclass MyFrame(wx.…

常微分方程ODE和Neural Ordinary Differential Equations

微分方程(英語:Differential equation,DE)是一種數學方程,用來描述某一類函数與其导数之间的关系。微分方程的解是一個符合方程的函數。而在初等数学的代数方程裡,其解是常数值。 常微分方程(英…

蓝桥杯青少组python:第十二届国赛

选择题 1、设s"Hi LanQiao",运行一下哪个选项代码可以输出"LanQiao"子串() A、print(S[-7:]) B、print(s[-6:-1]) C、print(s[-7:0]) D、print(s[-7:0]) 2、已知a2021.0529,运行一下代码选项可以输出2021.0…

c# vs2013 制作水晶报表并导出为 pdf

一两年前接触的,当时没有记录,现在把他写下来。 vs2013制作水晶报表,应该要用到插件安装,可以自行搜索安装插件。 在Views/RPT文件夹下创建.rpt后缀的水晶报表文件(这里的文件夹位置根据自身随意更改)。 在…

JavaScript数组去重的常见方法 Set filter indexOf

JavaScript实现对象深拷贝的方法(5种) 知识回调(不懂就看这儿!)场景复现实现数组去重的五种方法1.Set()Array.from()2.filter() indexOf()3.for 嵌套 for,splice 去重4.利用Map()5.利用includes 实际开发问…

如何入门编程

随着信息技术的快速发展,编程已经成为一个越来越重要的技能。那么,我们该如何入门编程呢?欢迎大家积极讨论 一、自学编程需要注意什么? 对于我个人的理解,其实自学编程最重要的就是兴趣。你得培养编程兴趣。 所以在学…