穆罕默德·拉乌夫,瓦雷奥
阿姆Elshenawy,法雷奥
基于模型的设计已经成为汽车领域的重要课题之一。在开发方面,工程师通常使用基于模型的设计工具,如MATLAB®,S金宝appimulink®、和状态流®,来实现系统的规范和算法,并进行仿真验证其实现,最后生成代码。
在测试方面,工程师通常执行诸如模型在环(MIL)、软件在环(SIL)和硬件在环(HIL)测试等活动。在所有这些测试阶段之后,当代码闪现到ECU并在主机车辆上测试时,仍可能检测到一些错误行为。此时,需要对代码进行有效的深度调试。
通过商业校准和验证工具(如INCA),可以调试由Simuli金宝appnk模型生成并在ecu上运行的代码。这些工具获取信号,以物理形式显示它们,并记录它们以供进一步处理。这种方法对于表示数学计算的Simulink信号很有用金宝app,但对于Stateflow状态图不起作用。开发人员需要创建一个代表当前活动状态的变量,如果状态图非常大,那么即使是这个变量的图也没有多大帮助。
本演示展示了一个新概念,用于调试Stateflow生成的代码,同时该代码直接在主车辆的ECU上运行。这是通过Simulink和ECU之间使用物理CAN总线上的CAN协议进行外部通信实现的。使用这种方法,工程师可以通过观察MATLAB、Simulink和Stateflow环境中的动画状态图来分析ECU上运行的Stateflow生成的代码,这代表了软件中的当前情况。这种想法也适用于LIN、Flexr金宝appay和其他车辆通信协议。
记录日期:2015年9月24日
您还可以从以下列表中选择网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家/地区网站未针对您所在地的访问进行优化。