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