软件系统的出现
急剧攀升的软件代码量、庞杂的总线通信导致汽车电子系统日渐复杂。
根据ADAC(全德汽车俱乐部,德国最大的交通协会)统计,德国2004年有40%的车辆故障最终归咎于软件问题或电子部件故障。为此,必须在保证电子系统整体可控的前提下研发新功能,软件工程师绝不能容忍自己迷失在亲手创建的庞大系统中。
正如汽车行业的那句老话:Divide et Impera!维基百科对应的中文词条将它翻译为“分而治之”。德语将这句拉丁语翻译为Teile und beherssche!,直译中文是拆解和掌控。

首先,如上图所示将电子系统研发拆解为软件系统、硬件系统、传感器和执行器研发四大部分,经过V模型流程研发,最终再次集成。这个V模型涵盖了从系统层面到软件层面以及集成后的功能测试和系统测试等流程,是当今汽车行业广泛应用的开发流程。因为其形状如字母V而因此得名。
下面将以下图所示的软件系统开发为例,分步骤介绍V模型。

1、分析终端客户需求、定义逻辑系统架构
这一步是根据终端客户的需求以及法规需求定义出整车软件系统的逻辑架构。其中包含各大功能块的定义,功能块接口定义和功能块之间的通信定义。这一步仅考虑满足原始需求,不会涉及任何技术层面的具体分析。
2、分析逻辑系统架构需求、定义技术层面系统架构
逻辑系统架构为定义具体的技术层面系统架构提供了基础。在这一步中开始讨论具体的技术问题,哪些功能将通过软件实现、软件块分装在哪些电子控制单元以及电控单元之间采用什么通信协议等等。软件系统初现雏形。
3、分析软件需求、定义软件架构
这里开始具体到电控单元中对于软件本身的需求分析。根据需求,定义出合适的软件架构。同时,还要考虑电控单元存储资源的最优使用、为满足安全法规的冗余系统设计等等。这里,会把软件进一步细分为更小的软件部件,定义各个部件之间的接口、分层和边界。
4、定义软件部件
针对每个软件部件会继续定义出需求。这里的需求集中在功能层面,尚不考虑具体的软件实现方式等。
5、设计、实现及测试软件部件
依据具体的需求,工程师开始分别搭建不同的软件部件。在前面一系列的拆解、分析和定义后,终于抵达了软件最核心最具体的世界——代码。与人们熟知的程序员直接写代码稍有区别,传统的汽车软件研发采用的是基于模型开发。
如下图所示,逻辑运算通过模型的方式表达出来,相比于代码更加直观,便于日后的标定工作和维护。在一个电控单元中,有上千个这样的功能函数,如下图所示的功能模型组合到一起,会形成一份上万页的文件。这份文件是接下来所有流程的基础。

当然这套模型只是工程师之间便于交流的高级语言,最终它们会被人工或计算机转为代码进入控制器中工作。
早年间,模型到代码中间的转换工作由人工完成。这造成的问题是,代码无法统一化和标准化。面对一个软件逻辑模型,程序员可以用多种方法完成代码编译工作,达到同样的功能效果。
但是,代码运行所占用的硬件资源或严谨度会大不相同。因此,近年来转码工作逐渐被机器取代。软件工程师事先定义标准的编译规范,保证最终代码统一和标准。
每一个软件部件完成后,要进行相应的软件测试。这里还不会聚焦功能层面的测试,仅仅针对软件本身。
例如软件中是否因设计不当产生死循环、每个信号定义的范围是否恰当、会不会造成溢出错误或者会不会出现除以零的运算情况等等。针对这些,工程师要事先定义测试方案,由计算机进行全方位全覆盖的软件逻辑测试。例如,对于if, else语句需要把每一种可能的情况都测试检查到。
6、集成及测试软件部件
单一软件部件研发测试完成后,将它们集成到一起就形成了每个电控单元中完整的软件包。
这套软件包在集成后依然需要测试,检查各部件之间是否兼容,是否有开放接口等等。
7、系统集成及测试
当软件包集成测试结束,它们将被刷进每一个电子控制器中。每个控制器与相应的传感器、执行器等用线束相连,最后控制器之间接通总线通信。
这样整套电子系统终于诞生。如新生儿一般,这套系统依然十分脆弱和稚嫩,还有很大的潜力等待被开发。
系统集成后的第一批测试往往是问题重重。因为系统高度复杂,各个研发部件被分工研发,即便之前有严格的测试流程,仍会有许多漏网之bug。如果分工研发的各部门之间没有在开发过程中充分交流,集成后可能会出现各类兼容性问题。
针对每一个问题,工程师们都不会忘记前面提到的拆解和掌控。拆解表象问题,找到根源,修复软件bug,掌控整套系统。

8、标定
系统测试结束后将进入软件标定阶段,这也是软件开发中的重要阶段。在软件实现阶段,工程师会在软件中预留一些可标定参数而不是固定的数值,等待标定。
这是基于成本考量,车型繁多的整车厂不可能为每款车型单独开发一套软件系统。一般的解决方案是研发平台软件,适用于多款车型。然而每款车型都有自己的特点,平台软件无法让这些特点发光,标定可以。
通过改变不同的参数数值,可以让车辆实现不同的驾驶性能,这也给了标定工程师很大的发挥空间。
9、系统测试及接受度测试
标定完成后,就进入了整套流程的最终阶段。依据流程一开始提出的需求,忽略那些具体的技术实现手段,站在整个系统的高度检验它是否达到了终端客户的需求。
到了这一步,整套软件系统已经十分成熟。在正式进入量产前会从一个时间点开始,停止所有软件和标定变更,为最终量产做准备。
整套V模型走下来可以看到,左侧和右侧的每个环节相互对应。需求为定义测试方案提供基础,而测试结果又会带动进一步的开发和完善。
图片
你或许会问,如果从V模型的左上角好不容易一路走到右上角,结果最后一步测试发现当初第一步的系统构架出了设计问题,那岂不是为时已晚?难道还要一切重新来过?的确,软件系统十分复杂,研发周期长。如果只是沿着V模型慢慢悠悠从左到右走一遍,等最后一步才发现问题,那确实一切都来不及了。
因此,在实际研发中会持续不断地集成、持续不断地测试,工程师们会把V模型从左到右重复走许多遍。

研发初期连原型车都还没有的时候,软件测试会依靠整车仿真系统在计算机中进行,发动机、变速箱、电子控制器、总线等都虚拟存在于工程师电脑中(SiL, Software in the Loop)。在仿真系统中,汽车可以如真实般开动,模拟各种工况提供给工程师测试。
随着车型研发推进,某些电子控制器研发完成,他们可以取代那些虚拟的电子控制器进入测试环境,但是其他部件仍为虚拟仿真(HiL, Hardware in the Loop)。
直到有一天,原型车研发完成,软件集成和测试进入试验台架。最终,原型车调试完毕落地,软件测试进入实车阶段。
可以说,软件开发的起始点非常早,从虚拟到现实一路走来,一直延续到最后的量产前夕。其实目的只有一个,通过不断集成和测试,尽可能发现所有问题,保证汽车的驾驶性、舒适性和安全性。

Sam GIU 焉知自动驾驶

Jetbrains Rider 2020 for Mac(跨平台.Net开发IDE)v2020.2.4中文正式版
Rider2020mac版是全面的IDE解决方案,包含开发.NET项目所需的一切,您可以在其中快速开始处理各种类型的.NET项目,查看和修复代码错误,然后运行和调试项目。而且rider基于两个强大的平台IntelliJ和ReSharper,可帮助您执行超过2000次代码检查,帮助您根据当前上下文执行各种操作,等等。喜欢的小伙伴快来下载使用rider2020中文版吧!
https://t.cn/A6UlSysJ

#S.COUPS崔胜澈[超话]#[给你小心心]#崔胜澈的心动日记#

【HD】161001 TVBS 全球中文音樂榜上榜

//禁一切,转载请注明出处

【10月新专—1V1帆布包特典】https://t.cn/A6bZwpMn
【10月新专—1V1折叠桌特典】https://t.cn/A6bzGEUZ
【10月新专—1V1围巾特典】:https://t.cn/A64g7GgJ
【10月新专—1V1相框特典】:https://t.cn/A64uPjyF
【2021存钱罐秋季刊】:https://t.cn/A64b3ysI
【招新】:https://t.cn/A6yH1EJ4


发布     👍 0 举报 写留言 🖊   
✋热门推荐
  • ★★长剑风云展位解锁★★互动游戏!重要通知!
  • 截至2019年11月,学校有20个学院(含6个科教融合共建学院)、33个系以及苏州研究院、上海研究院、北京研究院、先进技术研究院、附属第一医院等;有12个国家级
  • 戳图↓↓↓#达州新闻#【祝贺!戳图↓↓↓祝贺!
  • 我个人感觉更像是一场人文电影,多了感情少了冰凉(相对一贯的机器侠)但也残酷,回归到人对人的打打杀杀。某种程度上,《彗星来的那一夜》可以说是《恐怖游轮》与《这个男
  •   积阴德是「给人」但不为人所知,是「为人」但不为人所明,也就是佛教所说的无相功德。阿弥陀佛我们有许多理由相信,好人自有好报,阴德是使命运向好发展的最重要的动
  • 因为是虚拟典礼,所以你不需要穿着学位袍,大学以外的朋友和家人也欢迎加入共同庆祝,我们还邀请了很多校友和特别来宾,比如喜剧演员Jo Brand和Greg Davi
  • 每个‮都人‬有自己‮好最‬的时刻​‎ ͏ 那‮是个‬你的高光时刻当然不‮于限‬你賺‮少多‬钱而是你最有意义‮时的‬刻-人生起‮落起‬落很正常‮为因‬这才是人生就
  • 同时这一年职场人际关系也比较差,不管是为人处世还是待人接物,都要把握好尺度,以免给自己惹来不必要的麻烦和纠纷。当然属龙人在破太岁的年份,最应该注重的还是身体健康
  • 你拆我的台,我装不知道,这是聪明人。你捧我的场,我捧你的场,这是好朋友。
  • 当代恶臭年轻人会叫外卖会写材料会拍视频,不会买菜[裂开][裂开][裂开]我妈让我去买猪肉,我说去哪儿买怎么买我会被坑的,然后跟着表嫂去还走错了菜市场,买25块钱
  • 他:你可以从那边走过来嘛,要懂得自己给自己加戏[酷](所以这一秒我可以看到自己了吗?不要让这身外之物偷走了我们的幸福和快乐。
  • 为了推动花椒基地建设,提高花椒种植的组织化程度,该村成立了村集体经济合作社,把种植户全部吸收进来,在强化合作社日常管理的基础上,千方百计筹措资金,投资25万元实
  • 随后,谢华海一行在企业监控室观看了企业生产运营状态,并祝愿企业蒸蒸日上,为经济建设贡献力量。  创新:   培育科技创新主体 产业创新活力增强  近日,我县
  • 放假通知!重要呼吁!所有驻马店市民都要知晓!
  •   (5)固定板:带有6个孔的不锈钢板,用夹具将其固定于石板上,用于固定安装试验容器  (6)橡胶支撑:带有4个橡胶支撑,用于调节水平,固定仪器位置,防止移动。
  • 在这里,“打工人”是对所有从事体力劳动或者技术劳动的人的统称。有网友认为,自称“打工人”是对自己的一种自嘲,工作辛苦、薪资待遇一般,但为了生存不得不“打工”;也
  • 净空老法师开示 世出世间一切法,败都败在财、色上 《沙弥律》里头说,「在家五戒,惟制邪淫;出家十戒,全断淫欲」。在家五戒里头,不邪淫;出家《沙弥律》里头,不淫
  • 制备:对于奶油,将巧克力切碎,放入装有150毫升奶油的锅中,用小火熔化,不时搅拌。 用所得的奶油涂抹蛋糕,将切碎的奇异果放在奶油上。
  • 天文学家使用美国国家航空航天局(NASA)的哈勃太空望远镜(Hubble Space Telescope)首次捕获了幼小的白矮星的快照,这些白矮星开始了缓慢的,
  • 495.「种种闹」无量劫以来,特别是今生世你造的种种业,这个时候统统现前。许多修行人明白了《法华经》的重要性,到处奔走呼号,想方设法引导众生学《法华经》在各