基于Prescan的智能驾驶辅助系统在环研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
10.16638/ki.1671-7988.2019.09.014
基于Prescan的智能驾驶辅助系统在环研究
赵伊齐,张引,申成刚,王严
(华晨汽车工程研究院,辽宁沈阳110141)
摘要:为在短时间内完成大量验证高级驾驶辅助系统的产品性能,利用Prescan对控制器进行软件在环研究。首先对产品的性能及功能规范提出开发需求,作为测试依据;利用仿真软件Prescan完成测试场景及动力学模型的搭建;运用Matlab/Simulink实现自动化测试。结果表明,利用Prescan进行软件在环测试,可缩短开发周期,减少开发成本,有效提高产品性能。
关键词:高级驾驶员辅助系统;软件在环;自动化测试
中图分类号:U467 文献标识码:A 文章编号:1671-7988(2019)09-47-04
Research on the loop of Advanced driver assistance systembased on Prescan
Zhao Yiqi, Zhang Yin, Shen Chenggang, Wang Yan
( Brilliance Auto R&D Center, Liaoning Shenyang 110141 )
Abstract: In order to complete a large number of product performance verification of advanced driving assistance system in a short time, Prescan was used to study the controller software in the loop. Firstly, the development requirements of product performance and functional specifications are proposed as the test basis. The simulation software Prescan was used to build the test scene and dynamic model. Matlab/Simulink for automated testing. The results show that using Prescan can shorten the development cycle, reduce the development cost and improve the product performance.
Keywords: Driving assistance system; Software in the loop; Testautomation
CLC NO.: U467 Document Code: A Article ID: 1671-7988(2019)09-47-04
前言
高级驾驶员辅助系统(以下简称ADAS)是一项提高安全系数的主动安全技术,其主要通过传感器完成对周围信号的采集、CAN等通讯系统完成相关信号的传递。最后将信号传送给整车控制器,使驾驶员能够在最快时间内察觉可能发生的情况。
目前,很多在研究高级驾驶员辅助系统设计环节中引入在环仿真测试,主要有模型在环(Model in the loop,以下简称MIL)、软件在环(Software in the loop,以下简称SIL)及硬件在环(Hardware in the loop,以下简称HIL)。MIL 主要验证控制模型,其控制算法模型是否准确实现功能要求;SIL旨在通过PC验证代码实现的功能是否实现功能需求;HIL是将被控对象模型放在模拟整车环境下进行测试。SIL 可实现被控模型算法的在线或离线仿真,减少实际代码的调试,从而降低成本[1]。
本文利用Prescan对控制器软件进行软件在环测试,将对产品提出的功能需求以及安全需求作为测试用例并作为仿真测试依据,利用Prescan完成测试场景以及传感器模型的搭建;将模型代码以S function的形式进行封装并通过simu -link进行比较;最后基于Matlab完成M文件的编写,实现控制器软件的自动化测试。
作者简介:赵伊齐,工程师,就职于华晨汽车工程研究院,从事自动驾驶系统软件测试工作。
项目基金:*国家重点研发计划(2016YFB0101107)资助。
汽车实用技术
1 软件在环
当前ECU开发流程一般是工程师根据控制目标开发控制模型,由控制模型生成控制代码(或者手工编写控制代码),将代码导入ECU硬件然后通过模型仿真被控对象及系统环境进行硬件在环测试(HIL)。软件在环仿真(SIL)测试可通过特定的控制软件设置ECU的相关信号代替HIL中的硬件,并将待测ECU代码信息集成配置为虚拟ECU,通过运行虚拟控制器中的I/O模型和系统环境中的车辆模型来模拟控制器所需的各种传感器信号,并接收虚拟ECU发出的控制信号及台架传感器的信号。从而与被测ECU的代码信息和系统环境模型连接。最终实现闭环仿真,完成对控制系统进行测试验证。
由于目前许多汽车公司已经从传统的开发模式转移到V 形开发模型(如图1),以减少重复的代码编制和实车试验[2]。在V形开发模式下,通过SIL平台一方面可在开发过程中更早介入,确保前期开发过程中通过对嵌入式软件的测试及时发现存在的问题,以提高整改效率从而大幅节约ECU功能开发成本和周期;另一方面,由于SIL测试采用纯软件仿真的手段,无需真实车辆及HIL台架测试。可在开发和测试过程中灵活使用,因而软件在环测试系统正在成为一种理想的功能测试工具。
图1 V形开发模型
2 仿真软件
Prescan是一款用于高级驾驶员辅助系统和主动安全系统开发验证的仿真软件,支持基于摄像头、雷达、激光雷达等多种应用功能的开发应用。包含场景搭建、传感器建模、开发控制算法以及运行仿真(如图2)。其中场景搭建可利用prescan自带软件库对道路、交通使用者、环境模型以及天气光照等车辆周边环境因素的搭建(如图2);实现高级驾驶员辅助系统的前提即为可实时获取周边交通以及环境信息,Prescan可通过模拟传感器并保证与真实传感器功能一致。传感器建模主要是针对摄像头、雷达/毫米波雷达以及车联网短程通讯传感器的模型仿真,根据ECU软件提供的传感器类型可运用Prescan对摄像头和雷达进行不同程度上的仿真。
开发控制算法即通过仿真平台(Matlab/Simulink),可引入编程工具开发的算法代码。本文利用控制器软件算法作为输入端接收传感器模型输入的传感器信号,经过算法计算作为输出端发送请求指令给车辆动力学模型[3]。动力学通过接收的请求指令做出响应形成驾驶场景,形成一个闭合的在环测试,从而达到验证控制器算法的目的,即为软件在环测试。动力学模型可在Prescan自带demo基础上通过更改模型参数(主要指底盘、传动系统和发动机,具体可参考图3)或者直接通过第三方仿真软件直接插入得到理想动力学模型[4]。
图2 运行仿真
图3 动力学模型
3 SIL测试流程
3.1 SIL测试
基于SIL平台,测试人员可根据不同的功能需求实现以下测试:
(1)手工测试
手工测试也称交互式测试。通常利用SIL系统配置相应的仿真面板GUI,从而直接控制变量输入,并通过仿真面板的控界面直接观察输出量的变化是否符合要求[5]。Prescan仿真软件提供多种GUI单元。用户可以通过简单的拖放操作来创建及调试GUI(如图4)。
图4 手工测试
手工测试操作具有较好的问题处理能力,能通过人为的逻辑判断校验当前步骤的功能实现正确与否。