ISO11898 与 SAE J1939 通信协议详细介绍

 ISO11898 与 SAE J1939 通信协议的详细介绍:

ISO11898 通信协议

ISO11898 是一系列国际标准,专门用于道路车辆的控制器局域网(CAN)的数据链路层和物理层6。它定义了 CAN 网络的基本操作,规定了网络设计、实施和测试的要求,为 CAN 网络的设计和实施提供了全面的指导。其核心技术特点包括高可靠性、实时性、支持多主控系统、高效的数据包结构以及灵活性等7。具体如下5:

  • ISO11898-1:主要介绍了逻辑链路控制(LLC)、介质访问控制(MAC),并通过连接单元(AUI)指定了物理编码子层(PCS)。
    • LLC 子层:负责流量控制、恢复管理和时间戳等。它为网络层提供数据传输、错误检测等服务,且服务不依赖于底层介质特性。LLC 子层并不改变 MAC 帧的结构,而是依据过滤规则决定是否向上层传递完整帧结构。
    • MAC 子层:位于 LLC 与物理层之间,负责数据封装、数据解封装、帧编码、位填充、错误检测等。若需发送数据,需将 LLC 包转换成 MAC 包;接收数据时,则进行相反操作。
    • PCS 子层:负责逻辑信号到物理位的编码 / 解码、位定时、同步等。它是通用逻辑规范,不限定具体物理介质。在位表示上,显性位对应逻辑 “0”,物理总线差分电压如高速 CAN 中为 CAN_H - CAN_L = 2V,具有总线仲裁优先级;隐性位对应逻辑 “1”,CAN_H≈CAN_L≈2.5V。位时间可划分为同步段、传播段、相位缓冲段 1 和相位缓冲段 2,通过硬同步和重同步机制确保同步。此外,还有位填充规则,即每连续出现 5 个相同逻辑位后,插入一个相反位,以维持接收方时钟同步。
  • ISO11898-2:主要规定了高速 CAN 网络的物理层电气特性、总线拓扑、信号传输规范等核心内容,为汽车电子控制单元(ECU)之间的高速通信提供指导。
  • ISO11898-3:描述了低速 CAN 的特点,传输速度≤125kbps,主要用于车身电子系统。它定义了低速、高容错 CAN 网络的物理层规范,支持复杂环境下的可靠通信。
  • ISO11898-4:引入了时间触发通信的概念,适用于需要严格时间同步的应用,如线控系统、航空航天控制等。它扩展了经典 CAN 协议,需有支持 TTCAN 的控制器才能使用该协议。
  • ISO11898-5:提出了一种针对 CAN 的容错总线方案,以提高系统的鲁棒性,可应用于对可靠性要求极高的场景。
  • ISO11898-6:定义了没有额外硬件的容错 CAN 网络,是经典高速 CAN(ISO11898-2)的扩展。它支持双速率传输,仲裁段使用经典速率(≤1M),数据段速率可提升至 2~5Mbps,同时将单帧数据长度从 8 字节扩展至 64 字节,能有效提升网络带宽和效率,且保持与传统 CAN 节点的兼容性。

SAE J1939 通信协议

SAE J1939 是由美国汽车工程师协会(SAE)制定的主要针对商用车的 CAN 总线通讯协议,其基础是 CAN2.0B 协议,面向对象为客车、载重货车、船舶、农业机械等非路面设备1。该协议结构清晰,分为物理层、数据链路层和应用层三个主要层次4。具体如下:

  • 物理层(J1939/11)3:描述了针对客车的电气接口。J1939 网络通常采用一对线型屏蔽双绞线,特征阻抗为 120Ω,以差分电压方式传输信号,终端电阻为 120Ω,传输速率为 250kbit/s,最大传输线长度为 40M。考虑到总线上的电气负担,同一网络内最多 ECU 数目为 30 个。此外,允许在 ECU 和总线之间有一个短的末梢网络,以简化总线接线。
  • 数据链路层(J1939/21)2:定义了 CAN 帧(29 位标识符和 PGN 等)的使用和传输协议函数,规定了构建报文、访问总线以及诊断传送故障的规则。J1939 报文被组织成协议数据单元(PDU),由一个标识符和 8 个数据字节组成。CAN 标识符包含一个优先级(3 位)、一个保留位(1 位)、一个数据页(1 位)、PDU 格式(1 个字节)、PDU 特定地址(1 个字节)和源地址(1 个字节)。
    • PDU 格式:有 PDU1 和 PDU2 两种格式。若 PDU 格式字节小于 240 (0xF0),则为 PDU1 格式,用于发送包含特定目的地址的报文;若大于 239,则为 PDU2 格式,只能用于广播发送。
    • 报文类型:包括命令、请求、广播 / 响应、确认和组函数 5 种类型。
    • 长报文传输:对于超过 8 个字节的报文,会被分割成 7 字节的数据包,每个包带有一个序号。通过特殊的连接管理(CM)报文,如请求发送(RTS)、清除发送(CTS)和广播宣布报文(BAM)等,来处理分割报文的通信,在发送方和接收方之间提供虚拟连接和握手过程。
  • 应用层(J1939/71 和 J1939/73):定义了在网络中传送的每条报文的具体数据。J1939/71 文件定义了一些标准的参数组编号(PGN),可描述报文中待传的参数,还包括关于报文优先性和传输速率的信息。大部分 J1939 报文旨在广播,方便网络中的设备获取数据,当需要指向特定设备时,可在报文标识符里包含特定目标地址。

两者关系

ISO11898 是 CAN 总线的数据链路层和物理层标准,为 CAN 通信奠定了基础,规定了 CAN 网络的基本运行规则、物理特性等内容,是 SAE J1939 等高层协议的基础。SAE J1939 则是基于 CAN2.0B(符合 ISO11898 相关规范)制定的针对商用车等领域的高层通信协议。它在 ISO11898 定义的物理层和数据链路层基础上,进一步规定了适合商用车等场景的应用层协议,包括报文格式、通信服务、设备地址分配、参数定义等内容,使得不同厂商的车辆电子控制单元之间能够按照统一的规则进行通信和数据交互。

应用场景

  • ISO11898 应用场景:因其具有高可靠性、实时性等特点,几乎成为汽车行业的标配,广泛应用于发动机控制单元、制动系统、空调系统等之间的通信。同时,它也被应用于工业自动化、医疗设备、航空航天等领域,用于实现设备之间高效、可靠的通信。
  • SAE J1939 应用场景:主要应用于卡车、公共汽车和移动液压等重型车辆,用于实现车辆各部件之间的通信,如发动机、变速器、制动系统等部件之间的数据交互,方便车辆的整体控制和管理,也有助于车辆故障诊断和维护。此外,在船舶、农业机械等非路面设备中也有应用。

发展趋势

  • ISO11898 发展趋势:随着汽车电动化、智能化、网联化的发展,对 CAN 总线的性能要求不断提高,ISO11898 也在不断发展和完善。例如 ISO11898-6 中引入的 CAN FD 技术,通过提升数据速率和扩展数据长度,满足了车辆对更高带宽和更高效数据传输的需求。未来,ISO11898 可能会进一步优化物理层和数据链路层性能,以适应更多复杂场景和更高的通信要求。
  • SAE J1939 发展趋势:随着商用车技术的发展,SAE J1939 将不断扩展其应用范围和功能。一方面,会与车辆的新技术如自动驾驶、车联网等更好地融合,支持更多与智能驾驶相关的传感器和控制器之间的通信;另一方面,可能会进一步优化协议,提高通信效率和可靠性,以满足未来商用车对复杂系统集成和高效数据交互的需求。

综上所述,ISO11898 和 SAE J1939 通信协议在车辆及相关领域中起着至关重要的作用,它们的不断发展和完善将为汽车及相关行业的技术进步提供有力支持。

你可能感兴趣的:(汽车常见功能分享,网络)