TSMaster的数据回放默认支持blf格式(未来会增加对其他格式的支持)。如果需要分析其他数据格式的log文件,需要通过文件转换器从其他格式转成blf格式。
一、离线回放
离线回放也就是通常所说的查看记录报文。离线回放完全模拟接收报文的过程,用户可以到Trace窗口中直接查看报文记录。同样的,Trace窗口的所有属性,比如过滤等都是有效的。
1.离线回放基本步骤
2.添加回放文件
1)从回放窗口添加
2)直接拖拽添加
在桌面上选择一个Log文件,拖拽进入TSMaster软件区域,放掉鼠标,TSMaster即自动回放该报文,同时把该报文添加到报文回放管理窗口中。
3.选择报文范围
因为Trace窗口一个屏幕最多一次呈现9999帧报文,因此,在分析记录文件的时候,需要合理选择报文范围。在新的版本中,将在报文回放模块中增加脚本模块,给报文回放分析提供更大的灵活性。
二、在线回放
1.在线回放配置
在线回放又被通俗的称为“数据回灌总线”,为了给用户提供尽可能大的灵活性,提供了如下的配置界面:
如上配置界面,主要包含如下的配置参数:
1)是否自动启动在线回放
AutoStart:在设备连接之后就自动启动报文的回放。
Donotautostart:在设备连接之后并不立即启动报文回放,而由用户进入回放界面中自己启动。
2)输出次数选择
Outputonlyonce:只回放一次即可
Repetitiveoutputmode:循环回放报文记录
3)输出模式选择
Step:Pauseafteronemessageissent:需要用户点击,一次只发送Log文件中的一帧报文。
Immediately:Directsendthefirstmessage:用户选择回放报文过后,立即就开始回放报文。
就表示用户启动报文播放过后,延迟100ms开始实际回放报文。
5)启动/暂停快捷键
让用户设置启动/暂停回放的快捷键,如上所示:用户按下键盘上的S键时,启动回放;用户按下键盘的P键时,暂停回放。
6)选择回放TX/RX报文
SendTxmessages:回放中包含方向为发送的报文
DonotsendTxmessages:回访中不包含方向为发送的报文。
7)回放通道选择
为了给用户提供尽可能大灵活性,TSMaster的回放模块提供了回放通道的映射。主要为了解决以下一些应用场景的问题:
Log报文中有通道1的数据,也有通道2的数据,最好理解的是通道1的数据在工具端对应的通道上播放。如果数据通道2的需要到CAN工具的通道1上面播放,数据通道1需要到CAN工具的通道2上面播放,则需要用到映射,如下所示:
这种情况下,数据通道3,4,5的数据就没有通道播放了。如果基于通道映射的方式,用户可以选择数据通道到任意CAN工具的通道上播放,如下所示:
通道上述映射,就把数据通道2,3,4的数据映射到CAN工具的通道2上进行播放,把数据通道1,5的数据映射到CAN工具的通道1上进行播放。回放通道映射配置界面如下所示:
SourceChannel:Log文件中的数据通道。
DestinationChannel:TSMaster中CAN工具的数据通道。
如上所示的配置就表示:Log文件中数据通道为1和2的数据在CAN工具的通道1中回放;数据通道为3的数据在CAN工具的通道2中回放。
三、应用案例介绍
1.自动回放屏蔽报文
根据前面的介绍,自动回放报文提供了选择通道,选择回放RX,TX等机制。但是用户使用过程中,往往还需要选择性的回放一部分报文,或者选择性的屏蔽部分报文。因为回放报文数量可能会很多,因此,基于ID的回放过滤,目前没有做到在线回放模块里面。但是通过TSMaster的C脚本工具,用户一样可以基于ID屏蔽报文的在线回放的功能。
基本思路:
把需要屏蔽的ID的报文发送到虚拟通道上,这样这些报文就不会真实回放到物理通道上。
操作步骤详解:
四、释疑
1.Blf文件(文件名带空格)无法加载
当把blf加载到TSMaster回放(离线/在线)模块中,发生加载错误,系统消息如下所示:
原因:blf文件名中间不能有空格。如上图所示,修改文件名称为TSMaster.blf,则加载成功,如下所示:
3.总线回放按钮为什么是灰色(不使能状态)
在总线连接工作状态,不能进行报文记录的回放。需要点击Stop按钮,停止工作状态,BusReplay才能变成使能状态,允许用户添加回放的报文。
4.为什么TSMaster连接设备后立即往总线发送报文?
TSMaster提供了在线回放数据的功能,为了支持用户挂上总线就开始回放的需求,在回放设置中添加了一个连接总线过后自动回放的功能,如下图所示:
首先,通过如下步骤进入在线回放配置界面:
配置界面中,选择在启动设备瞬间是否自动启动报文回放,如下所示:
如果选择donotautostart,则连接设备的时候不会自动播放报文。
5.回放提示通道错误失败
触发原因:通道映射错误。
Log报文中的数据通道没有正确的映射到CAN工具的通道上。比如上面报的错误,Log文件中使用了数据通道2,数据通道2映射到了TSMaster中的CAN工具的通道2,但是实际上TSMaster中没有配置CAN通道2,就造成发送失败。具体通道映射,见前序章节:在线回放配置->回放通道选择
解决办法:在进入在线回放配置界面,配置通道映射。如下所示:
如上所示,DesinationChannel中实际上不存在通道2,因此,把SourceChannel=2的通道也配置到DestinationChannel=1上。再次启动回放,不再出现此错误。
6.在线回放直接错误帧
如果用户回放的时候,总线直接错误帧。很可能的情况是,在Log文件中,不同的数据通道中有同样ID的报文,结果播放的时候,这些报文在同一条CAN总线上面通过不同的通道播放出来,造成帧ID冲突,引起错误帧进而无法正常的回放数据。
7.在线回放卡死
在线回放如果出现卡死情况,请检查是否使用了虚拟通道。有些电脑平台上虚拟通道支持有些问题,碰到这种情况,用户尽量避免使用虚拟通道。或者插上实物通道进行报文的在线回放。
8.为什么出现回放数据跟三方工具对不上的情况
情况描述:
通过在线回放数据,监测信号值,发现总线报文上有信号值比如信号A值,跟第三方监测工具(如OE)上解析的A值不一致。比如TSMaster上A值为0.0,OE上解析的A值为0.3.
原因分析:
经过分析后,发现回放的blf文件中包含来自两个通道的数据(Channel1和Channel2),两个Channel中有同样ID的报文(比如都包含信号A的报文),而且来自通道2中的报文值全部为0,因此,回放的时候,从通道2中解析出来的信号A值就全部为0。造成用户错误的把通道2中的值跟第三方工具解析出来的值进行比较。
解决办法:
因为通道2中的信号值不是有效数据,回放过程中屏蔽掉通道2的回放即可。如下所示:
Tips:
9.CAN通道已就绪,软件在线回放失败
载入blf文件,报文里面只有通道1的报文,但是回放还是失败,错误提示如下:
在线回放是把记录的报文反向回灌回物理总线上。本次案例中Blf文件记录的报文是fd报文,但是硬件是普通CAN(classicCAN),因此造成在线回放失败。
更换支持FDCAN的硬件,如果硬件已经支持,则把该硬件工作模式设置为FDCAN模式。然后重新回放即可。