Skip to content

kcanfd_test - 测试工具

功能介绍

kcanfd_test 是 UCANFD 设备的压力测试工具,用于验证设备在高负载条件下的收发数据完整性和稳定性。

工具流程:

  • 根据指定的通道数量自动两两组合 / 支持手动指定测试通道组合
  • 支持 CAN 2.0 和 CAN FD 两种模式
  • 支持配置仲裁段 / 数据段波特率、报文数量和报文长度
  • 生成详细测试日志

接线准备

测试前需将设备 CAN 接口按通道顺序两两对接

默认自动配对关系如下:

  • can0 <-> can1
  • can2 <-> can3
  • can4 <-> can5

接线示例

快速开始

基本测试

使用默认参数执行测试:

  • 默认模式:fd
  • 默认通道数:2
  • 默认仲裁段波特率:1000000
  • 默认数据段波特率:5000000
  • 默认每端口测试包数:1000000
  • 默认负载长度:8
bash
sudo kcanfd_test

指定通道数自动配对

例如测试 4 个通道,自动配对为 can0<->can1can2<->can3

bash
sudo kcanfd_test -c 4

指定端口对测试

如需测试非顺序通道,可通过 -p receiver:sender 手动指定端口对。该参数可重复使用,多次指定时会覆盖 -c 的自动配对行为。

bash
sudo kcanfd_test -p can0:can2
sudo kcanfd_test -p can0:can2 -p can1:can3

测试过程中,推荐在新终端中运行 kcan_monitor 观察通道状态与收发统计。

参数说明

参数说明默认值示例
-c NUM自动配对使用的 CAN 端口数量2-c 4
-p receiver:sender手动指定测试端口对,可重复使用;指定后覆盖 -c-p can0:can2
-m MODE总线模式,can 表示 CAN 2.0,fd 表示 CAN FDfd-m can
-b BITRATE仲裁段波特率,单位 bit/s1000000-b 500000
-d DBITRATE数据段波特率,单位 bit/s,仅在 CAN FD 模式下生效5000000-d 2000000
-t COUNT每个端口的测试报文数量1000000-t 500000
-s SIZE帧负载长度(字节)8-s 64
-h显示帮助信息-h

-s 取值范围

  • CAN 2.0:0-8
  • CAN FD:0-8, 12, 16, 20, 24, 32, 48, 64

使用示例

bash
# 使用默认参数(CAN FD,2 端口自动配对)
sudo kcanfd_test

# CAN 2.0 模式,自动配对 4 个端口
sudo kcanfd_test -m can -c 4

# CAN FD 模式,自动配对 4 个端口
sudo kcanfd_test -c 4

# CAN 2.0 模式,指定测试端口对与仲裁段波特率
sudo kcanfd_test -m can -p can0:can2 -b 500000

# CAN FD 模式,指定测试端口对与仲裁段 / 数据段波特率
sudo kcanfd_test -p can0:can2 -b 500000 -d 2000000

# 指定每端口测试报文数量
sudo kcanfd_test -m can -p can0:can2 -t 500000

# CAN FD 模式下发送 64 字节负载
sudo kcanfd_test -p can0:can2 -s 64

日志说明

测试完成后会生成日志,便于排查丢包、配对错误或波特率配置问题。

日志文件

测试日志文件

日志目录结构

日志目录结构

日志内容通常包含:

  • 端口配对信息
  • 报文收发统计
  • 帧率和错误计数
  • 各接口测试结果

注意事项

  1. 测试前请确认端口已按要求两两对接。
  2. 使用 -c 自动配对时,通道数量应为参与测试的实际端口数。
  3. 通过日志可用于分析通信性能以及故障排查。

驱动智能连接,赋能科技未来