Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
SAE J1939通信网络是一套面向重型车辆及水平集成车辆工业的高速CAN总线通信标准,最新版本为2023年6月发布的J1939_202306。顶层文档定义了整个标准族的通用架构与技术基础,支持电子控制单元(ECU)之间进行实时闭环控制、简单信息交换以及诊断数据交换。本文结合文档内容,梳理其核心设计理念与工程实施要点。
SAE J1939网络基于ISO 11898-1高速CAN物理层,采用29位标识符扩展帧格式。其设计目标是为重型车辆(包括公路与非公路卡车、拖车、工程机械、农业装备等)及使用车辆级组件的固定式应用(如发电机组)提供开放、互通的通信平台。
网络架构支持以下通信方式:
通过29位CAN标识符,每个数据帧携带优先级、参数组编号(PGN)、源地址(SA)以及可选的目地址(DA),极大提升了总线利用率和灵活性。
参数组是同类信号的集合,由参数组编号(PGN)唯一标识。每个PG包含若干可疑参数(SP),每个SP拥有唯一的可疑参数编号(SPN)。PGN的分配需遵循PDU格式(PDU1或PDU2),并定义数据长度、传输速率及刷新频率。
每个ECU必须拥有一个唯一的源地址(SA)。地址声明过程通过特定的PGN(ECU地址声明)广播其64位NAME,实现冲突检测与地址动态分配。全局首选地址(0–127、248–253)预留给常见功能,动态地址(128–247)通过地址声明获得。
当消息超过8字节时(通常每个CAN帧最多8字节数据),需使用传输协议(Transport Protocol)进行分片与重组。传输协议采用握手方式,通过CT(Connection Management)和DT(Data Transfer)消息实现可靠的多包传输。
每个DTC由SPN、故障模式标识符(FMI)、发生次数(OC)及可疑参数编号转换方法(CM)组成。统一的DTC定义确保了不同厂商的ECU能理解彼此的故障信息。
以下表格总结了地址范围及其用途:
| 地址范围 | 类型 | 应用说明 |
|---|---|---|
| 0–127, 248–253 | 全局首选地址 | 预留给发动机、变速器等标准ECU功能 |
| 128–247 | 动态地址 | 通过地址声明过程动态分配,适用于可配置或后装设备 |
| 254 | 空地址 | 表示该节点当前不参与通信 |
| 255 | 全局目标地址 | 广播或全局请求的目标地址 |
开发SAE J1939应用时,工程师常遇到以下问题:
每个ECU应构造符合格式的64位NAME,并周期性广播地址声明消息(PGN 60928)。同时监听其他ECU的声明,若检测到重复地址,则根据NAME优先级决定是否切换地址(通常动态地址可重新声明)。应使用J1939/81规定的时间参数。
使用传输协议:首先发送连接请求(RTS),目标ECU回应允许发送(CTS),然后发送方按顺序发送数据包(DT),最后发送方等待确认(EOM)。注意处理超时和重传机制,并遵守最大包数限制。
新PG需登录到SAE J1939DA电子表格(由SAE维护),获取唯一PGN并定义数据内容、长度及传输率。避免使用已分配的PGN,并在PGN分配时注明PDU类型(广播或目标特定)。同时确保SPN在SAE统一注册。
通过合理运用地址声明、传输协议以及规范的PG/SPN定义,开发者可以构建稳定、互通的SAE J1939车载网络系统。建议持续关注J1939标准族的更新,并结合J1939DA电子表格进行参数分配。