J1939协议标准是由SAE(美国汽车工程师学会)制定的一种车辆网络通信协议,广泛应用于重型车辆和商用车辆(如卡车和公交车)之间进行电子信号和控制信息的交换。它涵盖了多个文档,形成了一个完整的网络版本,其中SAE J1939-71推荐实践特别描述了车辆应用层(Vehicle Application Layer)。SAE J1939标准的应用不限于卡车和巴士,也可以适应建筑和农业设备以及固定电力系统的应用。
J1939协议基于CAN(Controller Area Network)技术,定义了物理层、数据链路层以及网络层。它还规定了如何使用CAN网络来实现车辆内部设备间的实时通信,包括但不限于引擎控制、传动系统、制动系统和仪表等部件之间的通信。
SAE J1939标准的制定,是SAE下属的卡车和巴士控制与通信网络分委员会的工作。该分委员会的目标是开发有关在车辆组件之间传输电子信号和控制信息的设备的设计和使用要求、信息报告、推荐实践和标准。这些文档作为标准化实践的指南,随着经验和技术创新,它们也会不断更新。
SAE的每份技术报告至少每五年审查一次,在审查时可能会被重新确认、修订或取消。SAE鼓励读者提供书面评论和建议。
J1939协议在各个组成部分之间建立了通信规则,其中包括:
- 确定通信协议的物理层和数据链路层参数。
- 定义用于网络上设备的网络地址。
- 定义网络上交换的消息和参数。
- 提供设备如何传输和接收数据的程序。
- 定义故障诊断和性能监控机制。
协议的通信是基于CAN 2.0B规范,其中CAN 2.0A是标准帧格式,CAN 2.0B是扩展帧格式。J1939利用扩展帧格式(29位标识符),这允许更多的地址和参数在一个数据包中传输。
J1939协议标准的特点包括:
- 高速通信:在250 kbps的速率下运行。
- 多主节点通信:允许多个控制单元同时发送数据。
- 动态优先级分配:确保实时性和关键信息优先传输。
- 数据封装和解析:通过参数组(Parameter Group)和传输协议(Transport Protocols)来封装和解析数据。
SAE J1939协议的应用层通过定义特定的应用层协议数据单元(Application Protocol Data Unit,APDU)来实现通信。这些APDU允许数据在车辆网络中被识别和使用。SAE J1939协议详细定义了消息传输和数据表示的标准,这些标准包括了源地址、目的地地址、参数组号、数据长度、数据字节以及附加的通信控制功能。
该标准包括了大量的诊断功能,使制造商和维修技术人员能够检查车辆通信网络,诊断和解决通信问题。这些功能也是现代车辆电子控制单元的重要组成部分。
J1939协议标准为车辆内部设备之间的通信提供了一套完整的技术规范和指导,帮助制造商确保其产品在复杂的车辆电子系统中能够有效、安全地工作。随着车辆技术的不断发展,J1939协议标准也在不断地进行更新,以适应新的技术需求和挑战。