账号:
密码:
最新动态
产业快讯
CTIMES / 文章 /
以模型化基础设计流程开发测试AUTOSAR软体元件与复杂装置驱动
 

【作者: Enric Valencia、Joan Albesa】2019年09月25日 星期三

浏览人次:【10044】

AUTOSAR现在已成为车用软体的设计与实现的产业实际标准(de facto industry standard)。有鉴于AUTOSAR的开放、标准化的软体架构能帮助OEMs与供应商们在专案上进行合作,因为大部分的应用逻辑可以实现在应用层内的软体元件(software components,SW-C)上,并与标准的运行环境层(run-time environment,RTE)介接,而不是在ECU硬体上实现(图1)。



图1 : AUTOSAR软体架构
图1 : AUTOSAR软体架构

当我们团队进行的某些AUTOSAR专案,其中一组须在RTE上层的应用层执行SW-C,而其他专案可能会需要通过在RTE层内运作的复杂装置驱动(complex device driver,CDD),直接介接到ECU微控制器。


从过往历史来看,CDD的开发代表着更大的工程挑战,因为CDD的程式码除了必须与RTE互动之外,还需要与RTE下层的基础软体(basic software,BSW)层互动。


我们使用模型化基础设计(Model-Based Design)来进行SW-C的开发已经有一段时间了。模型化基础设计支援了完善且成熟的工作流程,在这里面,由AUTOSAR认可编写工具产生的软体元件描述ARXML档案被用来建立初步的Simulink设计呈现。我们最近和MathWorks进行顾问服务专案合作,将我们在这方面的能力扩展至CDD开发。现在,与其用人工手动编写CDD软体程式码,我们改采用模型化基础设计来进行SW-C和CDD的开发。


使用相同的工作流程和工具组进行两种不同型态的AUTOSAR软体开发,不仅能降低成本、训练时间、和花在其上的经常性维护资源,也让我们能够很容易地在SW-C和CDD团队之间进行工程师的调度。更重要的是,使用模型化基础设计于所有AUTOSAR专案,我们已缩短了至少50%开发时间,同时在设计早期阶段能够发现的设计瑕疵数量也增加了,且在硬体测试阶段之后所发现的瑕疵数量也因此减少。


一个由上而下的元件设计方法

利用AUTOSAR编写工具-DaVinci Developer,我们定义出软体元件架构及介面,接着汇出软体元件描述的ARXML档。接下来,我们采取由上而下的开发方法,将这些档案汇入至Simulink中,建立一个包含所有如同在DaVinci Developer定义的介面设置的骨干模型。


我们以这个骨干模型作为基础,在Stateflow中建立应用控制逻辑的模型和进行模拟(图2)。把Simulink模型中的元素连结到相关的设计规格,该设计规格系由IBMR Rational DOORS进行管理。这种方法能够建立可追踪性,能够支援冲击分析(impact analysis)和认证所需要的文件活动。



图2 : (上)骨干模型;(下)完整的模型。
图2 : (上)骨干模型;(下)完整的模型。

程式码生成与验证

在执行模拟来检查初始的设计之后,我们会执行正式的测试。从前,若单单只用MATLABR程式脚本作为AUTOSAR专案的验证套件,虽然这一个内部的架构能够良好地运作,不过仍会需要花费相当大的心力来开发和维护。


现在透过MathWorks顾问的协助,我们评估以Simulink测试工具箱(Simulink Test?)作为另一种设计选择,我们发现,Simulink测试工具箱不但提供了和MATLAB程式脚本相同的测试功能,还能减轻维护上的负担。


我们现在利用Simulink测试工具箱来定义测试套件及测试案例,并且将产生测试器具的过程自动化(图3)。首先执行基础测试,在这里将模拟结果与期望的结果作比较。但是,仍然会执行搭配软体回圈(software-in-the-loop,SIL)版本模型的等效测试来做进一步的验证。



图3 : 透过Simulink测试工具箱产生的测试器具样本。
图3 : 透过Simulink测试工具箱产生的测试器具样本。

接下来执行的以模拟为基础的测试,我们会透过嵌入式程式码转码器(Embedded Coder)从我们的模型产生符合MISRAR的C程式码。所产生出来的是已经准备好、且可在目标硬体RenesasR微控制器上使用的程式码,而且不需要任何的后处理。作为验证流程的一部分,我们会利用PolyspaceR静态和动态的程式码分析工具收集程式码度量,并且检查是否出现除以零、溢出、以及其他执行阶段错误。


开发时间更短、品质改善、还有其他优势

使用模型化基础设计来进行AUTOSAR CDDs和SW-Cs的开发,对我们带来显著的改善,从而为IDNEO公司的事业各方面带来很大的商机,例如与客户的合作。如果我们的客户也在使用Simulink,我们可以直接透过模型来合作,这样能够消除自然语言既定会存在的模棱两可,而且可以将开发时间缩短至一半。


除此之外,当具备使用模型化基础设计来开发CDDs的能力,而不是以人工撰写程式码来开发,我们能够有更大的弹性去符合客户的需求,因为我们可以视特定的使用案例来决定要单独使用SW-C、CDD,或者两起一起使用来进行功能的实现。


有的时候,客户提供已开发的AUTOSAR元件给我们,并且希望我们可以把这些元件整合至更大的系统,而这个系统可能还包含其他第三方元件。在这种情况,我们使用元件介面的ARXML定义来简化整合的流程,也让开发时间缩短了70%。


比起以往领域相似、但未使用AUTOSAR和模型化基础设计的专案,现在我们产品开发到上市的时间缩短了许多—以某些例子来说,可从一年缩短为六个月。此外,我们可以更早侦测到错误,让我们可以在设计阶段找出并修正80%的错误,而不是到了硬体测试阶段才发现。


我们现在准备要更精炼模型化基础设计的工作流程,藉由持续的整合与采用最佳实践方式,让此工作流程变得更为敏捷。我们在将Polyspace测试合并到Jenkins持续整合(continuous integration,CI)中获得很大的进展,未来也计画要在近期之内将测试套件从Simulink测式工具箱整合至我们的Jenkins CI管道。


(本文由钛思科技提供;作者Enric Valencia、Joan Albesa任职于IDNEO公司)


相关文章
NASA太空飞行器任务开发光学导航软体
近即时模拟与控制协助自主水下载具机动运行
资料科学与机器学习协助改善颈部损伤评估
配电网路的即时模拟环境开发
MATLAB与Simulink整合自动化机器学习与DevOps
comments powered by Disqus
相关讨论
  相关新闻
» RIN国际研发高峰会手举行 金属中心展出亮眼成果
» 西门子工具机软硬体解决方案 构建数位制造核心应用
» TPCA展??2024台湾PCB产值 有??复苏达8,182亿新台币
» 洛克威尔自动化携手NVIDIA 扩大AI在制造业的应用规模
» 台达子公司泰达8厂及研发中心开幕 扩大电动车研发及产能布局


刊登廣告 新聞信箱 读者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 远播信息股份有限公司版权所有 Powered by O3  v3.20.1.HK83SCIW6HUSTACUKF
地址:台北数位产业园区(digiBlock Taipei) 103台北市大同区承德路三段287-2号A栋204室
电话 (02)2585-5526 #0 转接至总机 /  E-Mail: webmaster@ctimes.com.tw