- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于模型的汽车电子控制系统单元测试的
开发与研究
1,2 1,2 1,2 1,2 1,2 1,2
陈杰 ,李颖涛 ,李琦 ,李刚 ,张瀛 ,阎涛
(1.长城汽车股份有限公司技术中心,河北保定,071000;2.河北省汽车工程技术研究
中心,河北保定;071000)
摘要:在基于MBD (Model Based Development )模式的汽车电子控制系统开发过程中,为了保证建模
的正确性,在模块层级对其开展单元测试尤为重要。这样做一方面,可以在开发初期尽早地对建模质
量进行验证;另一方面,单元测试所生成的测试用例,可以在后面的集成测试以及整车测试中加以复
用,从而缩短开发时间,降低开发成本。本文结合在研项目,重点阐述了模型验证的3 个步骤,即静
态检查,动态验证以及功能验证。这三者之间层次递进,缺一不可,保证了各模块实现功能的正确性
及合理性。
关键词:MBD ,Simulink 模型,静态检查,动态验证,功能验证
引言
近些年来,基于模型的开发方法在汽车电子领域中逐渐成为主流。基于模型的开发方法
能否成功,在很大程度上取决于工具链的使用及整合。目前业界较为通用的开发工具包括德
国易特驰公司推出的ASCET 软件,美国迈斯沃克公司推出的MATLAB/Simulink 软件等,
其中MATLAB/Simulink 由于其通用性和开放性,已经成为动态系统建模和仿真领域中的事
实标准。
迈斯沃克公司于1984 年推出了MATLAB 1.0 版本,首先在一些大学中推广应用,后经
逐步完善并商业化。2001 年迈斯沃克公司在积累多年开发经验的基础上,推出了跨时代的
产品——MATLAB 6.0/Simulink 1.0 ,使得科研工作者有可能考虑许多以前不得不做简化假
设的非线形因素、随机因素,从而大大提高了人们对非线形、随机动态系统的认知能力。随
着MATLAB/Simulink 软件功能的日益强大,其应用范围也从最初的科学计算发展到多领域
建模仿真。
在汽车电子控制开发领域,世界上许多知名企业均采用MATLAB/Simulink 作为上层控
制策略的开发工具。采用Simulink 软件,可以很方便地创建和维护一个完整的模块,评估
不同的算法和结构,并验证系统的性能。由于Simulink 采用图形化的建模方式,使的用户
[1]
能够快速、准确地创建动态系统仿真模型,特别是对复杂的不确定非线性系统,更为有效 。
汽车电子控制系统是一个大尺度、多因素耦合的复杂系统。为了保证系统建模的正确性,
通常情况下,将整个控制系统分解成具有相对独立功能的子系统,每个子系统再分解为具有
特定功能的功能组,最终细化到具有特定功能的单元模块,单元模块的划分准则为:相对独
立的功能,和其他模块的耦合度较小,较容易开发测试用例。
当进入测试环节时,首先从整个树状层级结构的最底层(单元模块)开始,对每个单元
模块进行测试。其次,当单元模块测试完毕后,进入集成测试阶段,则采用自下而上的测试
顺序,形成层级测试,从而保证了整个系统功能的正确性。本文将结合正在开展的发动机控
制系统研发项目重点介绍基于模型的单元测试静态检测,逻辑检测以及功能验证。
作者简介:陈杰 (1982- ),男,硕士研究生;研究方向:汽车电子控制系统研究。E-mail :
xihuanchenjie1919@163.com.
1 模型的单元测试
单元测试需要从模型的内部结构出发设计测试用例,一个完整的模型单元应具备输入、
算法和输出三个环节。单元测试是集中对该模型所包含的每一个单元模块进行测试,检查各
个单元模块是否正确的实现了功能需求所规定的功能,其目的是在于发现各模块内部可能存
在的各种错误。
单元测试的对象是模型的最小单位——单元模块。单元测试应根据单元模块所具有的全
部功能进行测试用例的开发,同时也要保证该单元模块能够满足变更条件/分支覆盖度
(MC/DC )测试的要求。通过对单元测试结果的评价分析,最终验证所建模型是否满足预
[2-5]
期的功能需求 。
发动机在怠速
文档评论(0)