原创 CANoe中Logging模块使用方法及妙招

2024-5-24 10:07 631 3 3 分类: 汽车电子

Logging是CANoe软件中的数据记录模块,主要在台架测试中使用,支持CAN/CAN FD、LIN、FlexRay以及车载以太网总线的数据记录。常用的数据记录仪还有GL数据记录仪,GL有自己单独的硬件设备,应用场景主要为台架或者实车测试,进行无人看守时的数据记录,和Logging的最大区别就是Logging是CANoe软件中的一个功能点,不是单独的硬件,同时Logging的使用,人员往往在上位机面前会进行互动操作。


使用CANoe测试的过程中,我们不可能时时刻刻盯着每一帧报文去进行分析,这样就需要用到Logging模块记录工程中的报文信号与变量,通过记录的Logging文件去解析报文,分析测试结果。当然这里面有大量数据,会占用较大内存,并且在我们分析的时候去寻找需要的内容时也会看花眼,如果只记录我们需要的数据要如何操作呢?可以参考小编给大家分享一下使用Logging的一些基础知识和经验解决。


一、认识Logging模块


先认识一下Logging模块,如图1-1,Logging模块的位置在Analysis下,包含的功能有,模块的激活,模块的触发方式,文件的设置以及模块的增加。


图 1-1


触发的配置

详细触发配置表格如图2-1所示。


图 2-1


触发类型:


Single trigger:在Single trigger 模式下,所有在触发条件时间段内的数据都将被记录下来。用户可以在 Time 区域内设置Logging的条件,如开始触发(Toggle on)、结束触发(Toggle off)和触发次数。


图2-2


Toggle trigger:在Toggle trigger 模式下,用户可以定义开始触发和结束触发的方式。如果用户选中 Use combined toggle mode,那么开始和结束触发的条件可以保持一致。用户可以在 Time 区域内设置Logging 的条件,如开始触发、结束触发和触发次数。


图2-3


Entire Measurement:在Entire Measurement 模式下,所有测量数据将会被记录,因此用户无法选择触发条件和时间。


图2-4


2.触发条件:


定义了基本的 Logging 条件,例如,起始点、结束点、Logging 时间段。包括以下四种触发模式。


Start:选中 Start 触发条件,数据将会从测量开始记录,这种情况下Pre-trigger 时间将变得没有意义并设置为0,Post-trigger 时间指定了记录的时间长度。若选择了Infinitepost-trigger time,所有的数据将会从测量开始记录到测量结束,这等效于Entire Measurement模式。


Stop:选中Stop触发条件,触发会在测量结束时开始。Pre-trigger时间定义了Logging的时间长度。在这种情况下,Post-trigger 时间将变得没有意义并设置为0。


CAPL:该触发条件将由CAPL程序触发,Pre-trigger 和 Post-trigger 定义了 Logging的时间长度。


User defined:该触发条件将由用户自定义,包括总线报文或 Attribute、统计时间、环境变量的值等。用户可以通过 Define 按钮进行自定义。


3. Time:

在该窗口中,用户可以定义 Pre-trigger 和 Post-trigger 的值,这两个值确定了 Logging的时间长度。选中 Infinite post-trigger time 选项时,终止事件为无穷大,这时 Post-trigger的值将会变成无效。


高级选项:

(1)Stop after Trigger Blocks:指定在n个触发块后停止测量。

(2)Notifications in Write Window:选中此项时,在 Write 窗口会有与 Trigger 相关的通知。


手动触发:

(1)Start/stop key:设置一个按键控制 Logging的开始和结束


文件的设置

新建仿真工程之后,CANoe默认提供一路未启用的Logging Block。在 Measurement Setup 窗口中,右击Logging Block,选择 Logging File Configuration 命令可以打开 Logging File Configuration 对话框。也可以通过点击图3-1画圈位置打开。


图3-1


打开配置如下图3-2所示:


图3-2


1.Destination folder:用于选择 Logging 文件的保存位置。

2.Destination file:指定要保存的 Logging 文件的文件名。

3.Field Codes:帮助用户按需求生成文件名。

4.File format:指定 Logging File 的格式。

5.Advanced Settings

(1)Warn before overwriting Logging file:选择是否在新的测量 Logging 文件与原有文件重名时弹出覆盖已有文件警告窗口。

(2)Show error message on data loss:选择是否在数据丢失时提醒用户。

(3)View Logging file(s) after measurement stop:选择是否在测量结束后自动打开已经记录的 Logging 文件。

(4)Global format settings:单击 Settings 按钮进入 Option 对话框。

6.Logging Filter

(1 Log bus events:选择是否记录总线事件(如报文、数据帧等)。

(2)Log system and environment variables:选择是否记录环境变量或系统变量事件。

(3)Log trigger events:选择是否记录 Start/Stop 触发事件。

(4)Log test events:选择是否记录 Test Modules 和 Test Units 的信息

(5)Log internal events:选择是否记录内部程序事件。

(6)Log statistic events:选择是否记录数据统计相关的系统变量的信息。

(7)Log CAPL events:选择是否记录 CAPL函数 write To Log和CAPL 程序中的说明。

(8)Log diagnostic events:选择是否记录诊断相关信息。


四、实际应用


当进行测试时,想在工程启动时的时刻开始录制Logging数据,我们可以直接使用Entire Measurement进行触发、记录如图4-1所示。


图4-1


如果想信号A或者多个信号的值达到设定的逻辑要求时,触发记录模块开始记录,可以选择记录触发时间前的数据(根据设置 Pre-trigger time实现),触发时间后需要记录的时间根据自己自定义选择,那我们可以采用Single trigger,详细配置如下图4-2,4-3,4-4。选择用户自定义,然后点击Define添加变量或者信号,编辑触发的值,例如当发动机开关Engine::EngineStateSwitch这个变量等于1时开始记录Logging,并记录5000ms。




图4-2


图4-3


图4-4


如果想信号A或者多个信号的值达到设定的逻辑要求时,触发记录模块开始记录,信号B或者多个信号值达到设定的逻辑要求停止记录,并且工程不会停止,需要记录很多段,那我们可以使用Toggle trigger,通过Define自定义开始与结束的逻辑,这样我们就可以得到很多组记录数据,并且仅有我们需要的数据,可以节约很多空间,如图4-5,具体逻辑设置过程可以参考上面图4-3和图4-4。


图4-5


如果想要让工程在记录几次文件后自动停止工程,我们可以使用Stop after Trigger Blocks模块,当到达触发次数时,工程便会停止记录。



图4-6

注意事项:当我们想记录多组Logging时,要将生成文件名进行更改,要将文件名字改成带有001这种格式,如果不是这种,下一次记录会将之前的Logging文件覆盖掉,如图4-7中打√的就是常用的生成名字格式,并且不会被覆盖掉。


图4-7


五、总结

Logging是CANoe中的一个功能模块,希望通过本文的介绍,大家对Logging的使用有了更深入的了解。如果您对Logging或CANoe感兴趣或者想要了解更多相关内容,欢迎咨询北汇信息,感谢观看!

北汇信息作为Vector中国的合作伙伴,始终专注于汽车电子领域的新技术和新产品,为整车厂和零部件企业提供完整的研发、测试解决方案,为工程师在汽车领域提供“趁手装备”!我们不仅提供相应的工具和技术支持服务及培训,还针对不同的应用提供相应的解决方案,助力中国客户的研发效率提升。欢迎联系北汇信息,我们将根据不同需求为您提供针对性的高效、灵活、稳定的解决方案!

作者: 北汇信息, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-3998886.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

文章评论0条评论)

登录后参与讨论
我要评论
0
3
关闭 站长推荐上一条 /2 下一条