PPT Template English Version 2 - MathWorks · 21/06/2018 21...

23
© 2015 The MathWorks, Inc. 使用基于模型设计开发符合 ISO26262的车用ECU软件 陈伟

Transcript of PPT Template English Version 2 - MathWorks · 21/06/2018 21...

Page 1: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

© 2015 The MathWorks, Inc.

使用基于模型设计开发符合ISO26262的车用ECU软件

陈伟

Page 2: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

21 June 2018

使用基于模型设计开发符合ISO26262的车用ECU软件

蔚来汽车陈伟

Page 3: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

3

蔚来汽车实施ISO 26262的背景

如何在MBD开发中符合ISO 26262

Page 4: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

421/06/2018

蔚来汽车实施ISO 26262的背景

如何在MBD开发中符合ISO 26262

Page 5: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

车载控制器软件开发趋势

521/06/2018

汽车电子和软件在整车上所占比例越来越大,电子和软件在整车开发中的地位越来越高,预计2030年电子电器会达到整车成本的50%

传统车厂大多由供应商开发控制器软件

新能源汽车公司越来越多的由主机厂开发控制器软件

Page 6: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

软件相关的车辆召回趋势图

2011-2015年共发生189起独立软件召回,影响超过1300万辆汽车。根据制造商分析,141起存在崩溃的风险; 44起可能导致伤害。(报告时间:2016年5月)

因软件失效导致的车辆召回统计

621/06/2018

Page 7: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

实施ISO26262的目的

721/06/2018

ISO 26262是汽车行业对于汽车电子开发的最佳实践

ISO 26262有助于规范企业的开发流程

ISO 26262有助于提升企业的开发能力

ISO 26262有助于提高电子产品品质

Page 8: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

821/06/2018

关于蔚来:全球13个中心,汇聚来自近40个国家和地区6000+顶尖人才

Page 9: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

921/06/2018

FE赛车 EP9 EVE

蔚来产品家族

ES8

Page 10: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

1021/06/2018

蔚来汽车实施ISO 26262的背景

如何在MBD开发中符合ISO 26262

Page 11: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

ISO26262对软件开发的需求

1121/06/2018

设计阶段的Verification

基于模型的设计改善了设计阶段的Verification

Page 12: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

蔚来汽车MBD开发流程

1221/06/2018

Requirement Analysis

•Requirement Specification

•Requirement analysis report

Architecture Design

•Software architecture in EA/DaVinCi Rte

•ICD document

Unit Design

•Model file

•DD

•Model design document

Unit Test

•Test suite

•Model check report

•Unit test case

•Unit test report

•Coverage report

Code Generation

•C code

•Code generation report

Integration

Page 13: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

概念及架构阶段仿真验证

1321/06/2018

借助电机模型,建立闭环控制系统

Control System

闭环模型上设计电机控制策略及架构

Page 14: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

辅助架构设计

1421/06/2018

Test Vectors

Desktop Simulation(on PC)

Results

Model

Object Code Execution (on MCU)

Results

Generated Code

Object File

CodeGenerator

CrossCompiler

== ?

Compare

借助PIL测试,获得粗略的执行时间,为架构设计提供参考

Page 15: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

项目起始阶段定义建模规范

1521/06/2018

MAAB和Modeling Guidelines for HIS为基础

开发过程中逐步完善建模标准

Simulink Check提供建模标准的检查功能

Page 16: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

模型设计阶段的复杂度监控

1621/06/2018

软件开发中经常使用圈复杂度来表达单元模块的复杂程度

圈复杂度过大,会给后续的开发、维护和验证工作带来很多麻烦

使用Simulink Check的Advisor功能检查复杂度

Page 17: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

静态验证阶段的设计错误检查

1721/06/2018

Simulink Design Verifier提供了对模型溢出、死逻辑等错误的检查功能

-破坏性强

-不易定位

相比于手工编码方式开发软件,这类错误的检查也大大提前

Page 18: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

模型的单元测试

1821/06/2018

创建测试框架

导入测试数据并执行测试

测试结果分析

Page 19: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

单元测试阶段的覆盖率

1921/06/2018

基于功能需求做测试用例的设计

单元测试阶段,需要关注测试覆盖率

Page 20: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

代码生成后的等效性测试

2021/06/2018

在单元模型基础上做PIL测试

PIL做背靠背测试

-真实目标处理器

-同时获得资源消耗

Test Vectors

Desktop Simulation(on PC)

Results

Model

Object Code Execution (on MCU)

Results

Generated Code

Object File

CodeGenerator

CrossCompiler

== ?

Compare

Page 21: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

要点

2121/06/2018

以通用的建模标准为基础逐步形成公司标准

需求定义阶段引入闭环仿真

控制单元模型的圈复杂度

保证单元测试的高覆盖率

通过MathWorks工具进行设计错误检查

PIL实现背靠背测试和计算资源估算

Page 22: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

2221/06/2018

Q&A

Page 23: PPT Template English Version 2 - MathWorks · 21/06/2018 21 以通用的建模标准基础逐步形成公司标准 需求定义阶段引入闭环仿真 控制单元模型的圈复杂度

Thank you