实时测试模型
您可以通过使用 Simulink® Real-Time™ 和 Simulink Test™ 在与您的应用程序环境相似的环境中测试您的系统。您首先在开发计算机上进行模型仿真,然后使用软件在环 (SIL) 和处理器在环 (PIL) 仿真。您可以使用 Simulink Test 创建基线、等效性和仿真实时测试,或将桌面测试用例转换为实时测试。实时测试在与物理系统连接的独立目标计算机上运行应用程序。实时测试可以包括时间、信号接口、系统响应和生产硬件的影响。
您可以使用实时测试来执行:
快速原型制作--在与工厂硬件连接的独立目标上进行迭代测试。您通过实时测试系统并验证测试结果与需求及模型结果的一致性来评估系统。利用快速原型设计的结果,您可以修改建模并更新需求。在优化设计后,您需在独立目标上重新进行测试。
硬件在环 (HIL) 测试 - 对已通过多个验证阶段的系统进行测试,通常包括安全完整性等级 (SIL) 和物理在环 (PIL) 仿真。您可以在 Windows® 或 Linux® 计算机上使用 Simulink Test,使用 Simulink Real-Time 运行实时测试用例。
注意
要使用 ASAM XIL 进行测试,请参阅安装并设置 Simulink XIL 标准的 ASAM Test 支持包和使用 ASAM XIL 标准创建并运行测试。
准备、创建并运行实时测试
要创建实时测试,您必须在实时应用程序上设置模型和硬件以进行测试,然后设计、运行并报告实时测试结果。
了解每个步骤的具体内容:
准备实时测试 - 通过以下方式为实时测试准备建模、测试和组件:
编写测试用例以验证模型是否符合需求,并执行模型仿真测试。
配置实时目标设置。
创建测试框架并标记日志记录信号。您还可以向 Test Assessment 模块中添加
verify
语句,以评估评估实时执行的逻辑表达式.配置模型参数。
创建并运行实时测试 - 创建实时测试用例,指定测试属性,运行测试并查看结果,通过以下方式:
使用测试管理器创建基线、等效性或仿真实时测试用例。
指定模型或测试框架、仿真设置覆盖项,以及从何处加载目标应用程序。
使用预启动实时应用程序回调函数在实时应用程序执行之前执行命令。
设置测试迭代以使用不同数据执行测试用例。
执行测试,在测试管理器中分析测试结果,并由报告器报告测试结果。
实时测试注意事项
如果您希望在实时目标上重用一个桌面仿真测试用例,请使用
verify
语句。在实时环境中,verify
语句失败仅在测试用例结果的测试管理器部分的验证语句部分中显示。您还可以通过getVerifyRuns
访问有关verify
运行情况的信息.您的目标计算机必须具有文件系统才能使用
verify
语句和测试用例记录。当您使用
verify
语句时,可以选择仅记录pass
和fail
结果,以减少数据传输量,从而提升仿真效率。要仅记录pass
和fail
的结果,请在测试或框架选项卡的测试用例部分中,点击隐藏未经测试的结果。基线或等效性比较可能会由于实时目标计算机的数据缺失或时间偏移而失败。调查实时测试失败时,寻找时间变化或缺失的数据点。
实时测试限制
在 Test Sequence 模块或 Stateflow® 图中,
assert
语句不支持代码生成且会被忽略,因此在 Simulink Real-Time 仿真过程中,如果断言条件失败,不会引发错误。然而,verify
语句支持 Simulink Real-Time 代码生成,并在测试管理器中自动记录测试用例的结果。使用 Simulink Assert 模块时可获得相同的日志记录行为。您不能使用变体配置。
您无法记录状态,或者在某些平台上无法记录输出端口。
您无法覆盖由包含 Test Sequence 模块的模型构建的应用程序的实时执行采样时间。为 Test Sequence 模块生成的代码包含硬编码的采样时间。覆盖目标计算机采样时间可能会产生意外结果。