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

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

 

1.触发类型:

 

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

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

 

 
图2-3
 

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

 

 
图2-4
 

2.触发条件:

 

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

 

  1. Start:选中 Start 触发条件,数据将会从测量开始记录,这种情况下Pre-trigger 时间将变得没有意义并设置为0,Post-trigger 时间指定了记录的时间长度。若选择了Infinitepost-trigger time,所有的数据将会从测量开始记录到测量结束,这等效于Entire Measurement模式。
  2. Stop:选中Stop触发条件,触发会在测量结束时开始。Pre-trigger时间定义了Logging的时间长度。在这种情况下,Post-trigger 时间将变得没有意义并设置为0。
  3. CAPL:该触发条件将由CAPL程序触发,Pre-trigger 和 Post-trigger 定义了 Logging的时间长度。
  4. User defined:该触发条件将由用户自定义,包括总线报文或 Attribute、统计时间、环境变量的值等。用户可以通过 Define 按钮进行自定义。
  5. Time:

 

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

 

  1. 高级选项:

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

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

  1. 手动触发:

(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:选择是否记录诊断相关信息。

 

 

实际应用

 

 

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

 

 
图4-1
  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

 

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

 

 
图4-5

 

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

 

图4-6

 

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

 

图4-7

 

 

总结

 

 

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

 

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

 

posted @ 2024-05-22 13:43  北汇信息  阅读(144)  评论(0编辑  收藏  举报