Skip to content

ZCANPRO的使用

约 1295 字大约 4 分钟

CAN

2024-04-013

ZCANPRO的使用

安装

官网:https://www.zlg.cn/can/down/down/id/22.html

image-20250808120903871

在官网选择如图的压缩包

主界面如图:

image-20250808120746168

连接CAN盒

  1. 点击设备管理

image-20250808121030297

  1. 选择类型

    image-20250808121115693

  2. 打开设备并启动

    image-20250808121216998

DBC发送数据

image-20250808135513858

普通发送数据

image-20250808142549909


核心配置参数

  1. 通道 (Channel)
    • Virtual Device 设备0 通道0
    • 作用:选择当前操作的虚拟CAN通道。实际使用时可能连接真实设备(如USB-CAN适配器),此处为软件模拟环境。
  2. 帧类型 (Frame Type)
    • 标准帧CAN
    • 作用:
      • 标准帧:11位标识符(ID范围 0x000-0x7FF),最常用。
      • 扩展帧:29位标识符(ID范围 0x000-0x1FFFFFFF),用于复杂网络(图中未选)。
      • CAN:协议类型(默认为经典CAN协议)。
  3. 帧格式 (Frame Format)
    • 数据帧
    • 作用:
      • 数据帧:携带实际数据(如传感器读数)。
      • 远程帧:请求其他节点发送数据(无数据字段)。
  4. 发送方式 (Transmission Mode)
    • 正常发送
    • 作用:
      • 正常发送:按CAN标准优先级竞争总线。
      • 单次发送:仅尝试发送一次(失败则丢弃)。
      • 自发自收:本地回环测试(不占用总线)。

帧内容参数

  1. 帧ID (Frame ID)
    • 0x100
    • 作用:消息的唯一标识符(十六进制),决定总线优先级(ID值越小优先级越高)。图中ID为256(十进制)。
  2. 数据长度 (Data Length)
    • 8
    • 作用:指定数据字段字节数(范围0-8)。CAN标准规定数据帧最多8字节,远程帧固定为0。
  3. 数据内容 (Data)
    • 0x00 11 22 33 44 55 66 77
    • 作用:实际发送的16进制数据(共8字节)。示例为连续递增的测试数据。

发送控制参数

  1. 发送次数 (Transmission Count)
    • 1
    • 作用:重复发送当前帧的总次数(例如设为100则自动发送100次)。
  2. 每次间隔 (Interval per Transmission)
    • 0 毫秒
    • 作用:连续发送时,帧之间的时间间隔。设为0表示无间隔(高速连续发送,可能导致总线拥堵)。
  3. 每次发送帧数 (Frames per Transmission)
    • 1
    • 作用:单次触发时发送的帧数(批量发送场景使用)。

高级功能

  1. ID递增 / 数据递增 (ID Increment / Data Increment)
    • 作用
      • ID递增:每发送一帧,ID自动增加(如0x100→0x101)。
      • 数据递增:每发送一帧,数据字段按字节递增(如0x00→0x01)。
    • 适用场景:自动化压力测试。
  2. 名称(可选)(Name)
    • 可自定义帧名称(如"Engine_RPM"),便于管理复杂帧列表。

操作按钮

  • 添加到列表:保存当前帧配置到发送列表(批量管理多帧)。
  • 立即发送:按当前参数立刻发送单帧。
  • 发送时间(s):用于按时间计划发送(需搭配列表功能)。

关键注意事项

  • 帧ID冲突:同一总线上多个设备ID必须唯一,否则导致通信错误。
  • 数据长度匹配:若实际数据少于设定的长度(如8字节),未填充字节默认为0x00。
  • 间隔时间风险:0毫秒间隔可能阻塞总线,真实场景建议设置合理间隔(如10-100ms)。

高级功能

UDS诊断

image-20250808145127130

请求PDU:发送给ECU的指令

响应PDU:ECU返回的答复

OBD诊断

ZCANPRO的OBD诊断功能主要用于实时读取/解析车辆ECU数据执行诊断指令

image-20250808154556461

左侧目录树:诊断服务选择

  • 路径Powertrain Diagnostic and Fr...02 03 - Fuel System Status...
    • 02冻结帧(Freeze Frame)数据组(存储故障发生瞬间的车辆快照)
    • 03燃油系统状态(PID码 03
    • 其他示例
      • 01 0C= 当前转速(PID 0C
      • 02 0D= 冻结帧车速(PID 0D

中部操作区:诊断指令执行

  • 请求PDU02 03 00
    • 02模式(Mode),此处为“请求冻结帧数据”
    • 03PID(Parameter ID),此处为“燃油系统状态”
    • 00:预留参数(部分PID需填充附加数据)
  • 名称与数值
    • 名称Fuel System Status Request...(解析后的含义)
    • 数值:返回原始字节(如02 03 00)或解码值(如“开环控制”)。
  • 导航按钮上一个/下一个(快速切换诊断项目)

右侧功能区:批量操作

  • 添加到列表:保存当前诊断项到发送列表(用于批量执行)
  • 循环次数1(设置列表指令的循环次数)
  • 请求间隔(ms)1(每条指令的发送间隔)
  • 列表发送:一键执行列表中的所有诊断请求(如批量读取10个PID)

底部功能区:数据管理

  • 导出/导入:保存或加载诊断配置(用于重复测试)
  • 实时保存:自动记录ECU返回的原始数据
  • 测试统计
    • 测试次数:0 通过:0 未通过:0(自动统计成功/失败的响应次数)