案例背景:
在博文《在CANoeCANalyzer中“在线回放”CAN Log.asc/blf文件_canoe怎么回放blf文件-CSDN博客https://blog.csdn.net/qfmzhu/article/details/128954931》我们介绍了Replay Block模块的一些典型应用。
下面我们介绍如何使用Replay Block代替IG(Interactive Generator Block):“一键发送”一个诊断/命令序列。
目录
1 CANoe / CANalyzer中创建一个Replay blocks
1.1 编辑“一键发送”的CAN Log.asc文件
1.2 配置 “一键发送”Replay block模块
2 在某些场景,Replay blocks代替IG(Interactive Generator Block)的优点
结尾
1 CANoe / CANalyzer中创建一个Replay blocks
在CANoe中,在Simulation Setup窗口下,创建一个Replay blocks,见图1-1。
图1-1
选中Replay blocks,鼠标右键,在其上下文中找到“Insert Replay Block CAN”,见图1-2。
图1-2
注意:在CANalyzer中,在Measurement Setup窗口下,箭头指向的“小方块”位置,鼠标右键,创建Replay block,见图1-3。
图1-3
完成图1-2后,ReplayBlock 1创建成功,见图1-4。
图1-4
1.1 编辑“一键发送”的CAN Log.asc文件
假设我们需要依次读写一系列DID(其它命令序列的发送,也可以参考此法手动编辑CAN Log):
物理寻址ID:0x7FF,间隔1秒,依次读取DID:0xFD91~0xFD9A。
附经典CAN ASC文件模板内容:
date Thu Sep 26 07:47:25.251 pm 2024
base hex timestamps absolute
internal events logged
// version 9.0.0
1.001008 1 7FF Tx d 8 03 22 FD 91 00 00 00 00
2.000914 1 7FF Tx d 8 03 22 FD 92 00 00 00 00
3.001042 1 7FF Tx d 8 03 22 FD 93 00 00 00 00
4.001040 1 7FF Tx d 8 03 22 FD 94 00 00 00 00
5.001178 1 7FF Tx d 8 03 22 FD 95 00 00 00 00
6.001028 1 7FF Tx d 8 03 22 FD 96 00 00 00 00
7.001046 1 7FF Tx d 8 03 22 FD 97 00 00 00 00
8.001044 1 7FF Tx d 8 03 22 FD 98 00 00 00 00
9.001082 1 7FF Tx d 8 03 22 FD 99 00 00 00 00
10.001106 1 7FF Tx d 8 03 22 FD 9A 00 00 00 00
附CANFD ASC文件模板内容:
date Thu Sep 26 09:07:16.437 pm 2024
base hex timestamps absolute
internal events logged
// version 11.0.0
1.001255 CANFD 1 Tx 7ff 0 0 8 8 03 22 FD 91 00 00 00 00 276015 141 301040 e000d264 46500250 460a0250 20011736 20010205
2.001675 CANFD 1 Tx 7ff 0 0 8 8 03 22 FD 92 00 00 00 00 276015 141 301040 e000d264 46500250 460a0250 20011736 20010205
3.001291 CANFD 1 Tx 7ff 0 0 8 8 03 22 FD 93 00 00 00 00 276015 141 301040 e000d264 46500250 460a0250 20011736 20010205
4.001577 CANFD 1 Tx 7ff 0 0 8 8 03 22 FD 94 00 00 00 00 276015 141 301040 e000d264 46500250 460a0250 20011736 20010205
5.001601 CANFD 1 Tx 7ff 0 0 8 8 03 22 FD 95 00 00 00 00 276015 141 301040 e000d264 46500250 460a0250 20011736 20010205
6.001723 CANFD 1 Tx 7ff 0 0 8 8 03 22 FD 96 00 00 00 00 276015 141 301040 e000d264 46500250 460a0250 20011736 20010205
7.001699 CANFD 1 Tx 7ff 0 0 8 8 03 22 FD 97 00 00 00 00 276015 141 301040 e000d264 46500250 460a0250 20011736 20010205
8.001505 CANFD 1 Tx 7ff 0 0 8 8 03 22 FD 98 00 00 00 00 276015 141 301040 e000d264 46500250 460a0250 20011736 20010205
9.001611 CANFD 1 Tx 7ff 0 0 8 8 03 22 FD 99 00 00 00 00 276015 141 301040 e000d264 46500250 460a0250 20011736 20010205
10.001597 CANFD 1 Tx 7ff 0 0 8 8 03 22 FD 9a 00 00 00 00 276015 141 301040 e000d264 46500250 460a0250 20011736 20010205
注意:如果需要了解CAN LOG ASC文件格式,可查阅博文《图文详解CAN Log文件 - ASC文件格式-CSDN博客https://blog.csdn.net/qfmzhu/article/details/130063907》
1.2 配置 “一键发送”Replay block模块
双击ReplayBlock 1,弹出Replay Configuration对话框,默认设置,单击OK,见图1-5。
- Replay name可以给该ReplayBlock 1命名;
- Source file选择Simulate_IG.asc文件的所在路径。
- Start replay on measurement start: 不勾选,表示启动CANoe / CANalyzer工程时,不会启动CAN LOG的回放;
- Start/Stop Key: 勾选,并填入一个键盘符号:
1) 启动CANoe / CANalyzer工程后,按下该键盘符,才会触发该CAN Log按照定义的时间,依次发送每个CAN帧;
2) 如果该CAN Log没有回放结束,再次按下该键盘符,将会停止该CAN Log的回放;
3) 如果该CAN Log回放结束,再次按下该键盘符,将会重新启动该CAN Log的回放。
图1-5
演示效果如下:
图1-6
2 在某些场景,Replay blocks代替IG(Interactive Generator Block)的优点
- IG的一个Key键,一次只能发送一帧报文,如果需要手动发送多个报文,需要触发多个Key键。而Replay blocks一个Key键就可以;
- IG中,帧与帧之间的间隔无法控制,而Replay blocks中只需定义好回放log中每帧的触发时间,就可以实现精确控制;
- 甚至可以实现Automation Sequences部分功能。
图2-1
结尾
获取更多“汽车电子资讯”和“工具链使用”,
请关注CSDN博客“汽车电子助手”,做您的好助手。