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-11.触发类型
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的值将会变成无效。
4.高级选项
Stop after Trigger Blocks:指定在n个触发块后停止测量。
Notifications in Write Window:选中此项时,在 Write 窗口会有与 Trigger 相关的通知。
5.手动触发
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
Destination folder:用于选择 Logging 文件的保存位置。
Destination file:指定要保存的 Logging 文件的文件名。
Field Codes:帮助用户按需求生成文件名。
File format:指定 Logging File 的格式。
1.Advanced Settings
Warn before overwriting Logging file:选择是否在新的测量 Logging 文件与原有文件重名时弹出覆盖已有文件警告窗口。Show error message on data loss:选择是否在数据丢失时提醒用户。View Logging file(s) after measurement stop:选择是否在测量结束后自动打开已经记录的 Logging 文件。Global format settings:单击 Settings 按钮进入 Option 对话框。
2.Logging Filter
Log bus events:选择是否记录总线事件(如报文、数据帧等)。
Log system and environment variables:选择是否记录环境变量或系统变量事件。
Log trigger events:选择是否记录 Start/Stop 触发事件。
Log test events:选择是否记录 Test Modules 和 Test Units 的信息
Log internal events:选择是否记录内部程序事件。
Log statistic events:选择是否记录数据统计相关的系统变量的信息。
Log CAPL events:选择是否记录 CAPL函数 write To Log和CAPL 程序中的说明。
Log diagnostic events:选择是否记录诊断相关信息。
实际应用
1.当进行测试时,想在工程启动时的时刻开始录制Logging数据,我们可以直接使用Entire Measurement进行触发、记录如图4-1所示。
图4-1
2.如果想信号A或者多个信号的值达到设定的逻辑要求时,触发记录模块开始记录,可以选择记录触发时间前的数据(根据设置 Pre-trigger time实现),触发时间后需要记录的时间根据自己自定义选择,那我们可以采用Single trigger,详细配置如下图4-2,4-3,4-4。选择用户自定义,然后点击Define添加变量或者信号,编辑触发的值,例如当发动机开关Engine::EngineStateSwitch这个变量等于1时开始记录Logging,并记录5000ms。
图4-2
图4-3
图4-4
3.如果想信号A或者多个信号的值达到设定的逻辑要求时,触发记录模块开始记录,信号B或者多个信号值达到设定的逻辑要求停止记录,并且工程不会停止,需要记录很多段,那我们可以使用Toggle trigger,通过Define自定义开始与结束的逻辑,这样我们就可以得到很多组记录数据,并且仅有我们需要的数据,可以节约很多空间,如图4-5,具体逻辑设置过程可以参考上面图4-3和图4-4。
图4-54.如果想要让工程在记录几次文件后自动停止工程,我们可以使用Stop after Trigger Blocks模块,当到达触发次数时,工程便会停止记录。如图4-6所示。
图4-6
注意事项:当我们想记录多组Logging时,要将生成文件名进行更改,要将文件名字改成带有001这种格式,如果不是这种,下一次记录会将之前的Logging文件覆盖掉,如图4-7中打√的就是常用的生成名字格式,并且不会被覆盖掉。
图4-7
总结
Logging是CANoe中的一个功能模块,希望通过本文的介绍,大家对Logging的使用有了更深入的了解。如果您对Logging或CANoe感兴趣或者想要了解更多相关内容,欢迎咨询北汇信息,感谢观看!
北汇信息作为Vector中国的合作伙伴,始终专注于汽车电子领域的新技术和新产品,为整车厂和零部件企业提供完整的研发、测试解决方案,为工程师在汽车领域提供“趁手装备”!我们不仅提供相应的工具和技术支持服务及培训,还针对不同的应用提供相应的解决方案,助力中国客户的研发效率提升。欢迎联系北汇信息,我们将根据不同需求为您提供针对性的高效、灵活、稳定的解决方案!
全部0条评论
快来发表一下你的评论吧 !