基于SAE J1939协议的车辆网络集成方法

发布时间:2010-08-04
分享到

  引 言

  随着车辆电子化和自动化程度的提高,车辆上的ECU日益增多。为了提高信号的利用率,要求在不同的ECU间,大量的数据状态信息能够实现共享,大量的控制信号能够实时交换。这样,传统线束已远远不能满足这种需求。

  总线及基于CAN的车辆网络通信协议提供了解决上述问题的途径。 协议是美国汽车工程师协会(SAE)在CAN2.0B协议基础上制定的重型货车和客车网络通信协议,是目前汽车电子网络中应用最广泛的应用层协议之一。该协议使用多路复用技术为车辆各传感器、执行器和控制器提供建立在CAN总线基础上的标准化高速网络连接,在不同的ECU间实现高速数据共享,以有效减少线束数量并提高车辆电子控制系统的灵活性、可靠性、可维修性。

  目前,车辆的ECU产品大都带有SAE J1939 CAN接口。针对具有SAE J1939 CAN接口的ECU产品(如发动机、变速器及其缓速器和ABS等ECU),自定义若干ECU,集成实现基于SAE J1939协议的车辆网络,完成自定义ECU的信息采集和各ECU间的信息交换。

  1 车辆网络拓扑结构

  具有SAE J1939 CAN接口的ECU产品接上仪表板连成网络后,已基本满足车辆驾驶的要求。为了使自定义ECU对外通信尽量不影响ECU产品间的通信,整个网络分为两个网段,必要时可合并成一个网段。网段A包含信息交互ECU,发动机ECU,变速器及其缓速器ECU,ABS ECU;网段B包括信息交互ECU,发动机外围、I桥及II桥ECU,分动器ECU,III桥及IV桥ECU。信息交互ECU用两个CAN端口分别与两个网段连接,具有报文转发功能。车辆网络拓扑结构如图1所示。

车辆网络拓扑结构

  2 车辆网络通信设计

  按照SAE J1939协议,车辆网络通信设计包括以下几方面内容:

◆物理层与SAEJI939-11兼容;
◆数据链路层与SAE J1939-21兼容;
◆网络层与SAE J1939-31兼容;
◆应用层与SAE J1939-71兼容;
◆应用层诊断与SAE J1939-73兼容;
◆网络管理层与SAE J1939-81兼容。

  2.1 物理层

  物理层实现网络上所有ECU的电气连接。物理介质采用特征阻抗为120 Ω的屏蔽双绞线,CAN_H为黄色、CAN_L为绿色。网段尽可能使用线性拓扑结构,其波特率为250 kbps。网段干线两端均以120 Ω电阻做终端匹配。ECU使用短支线与网段干线连接,在网段中采用不相等布置以防止产生驻波。

  位时间内实现同步、网络延时补偿及采样点位置确定等总线管理功能,其段组成如图2所示。同步是相位缓冲段1加长或相位缓冲段2缩短,其上限为同步跳转带宽 (SJW)。采样点尽量位于(但不超过)位时间的7/8,能实现传播延迟和时钟误差最佳折中。时钟频率为16 MHz时,推荐分频因子=4、SJw=ltq、TSEGl=13tq、TSEG2=2tq(tq为时钟周期)。

段组成

  2.2 数据链路层

  数据链路层在物理层之上提供了可靠的数据传输功能,实现了应用层报文的数据交换。通过数据链路层的组织,实现了发送数据帧必须具有的同步、顺序控制、错误控制和流控制等功能。

  数据链路层通过协议数据单元(PDU)组织数据帧中的协议相关信息。PDU由数据帧中29位ID和O~8字节数据场组成,其数据结构如图3所示。P场决定报文优先级;R位保留;DP位是数据页位;PF场决定PDU格式(PDUl或PDU2);PS场为PDU细节,由PF场决定是目标地址DA还是对PF、的组扩展GE;SA为源地址。

数据结构

  数据链路层提供的报文有命令报文、请求报文、广播/响应报文、应答报文及组功能报文。此外,数据链路层还实现了传输协议功能,用于将大于8字节报文进行打包重组、连接管理,分为广播公告的BAM协议和点对点会话的RTS/CTS协议。

  2,3 网络层

  网络层定义了为不同网段间提供互联功能的设备需求和服务。当多个网段存在时需要网络互联ECU,其功能包括报文转发、报文过滤、报文地址转换、报文重组及数据库管理。网络层功能对于特定ECU来说是可选的,网络中仅信息交互ECU用到网络层功能。

  2.4 应用层

  应用层定义了针对车辆应用的信号(参数)和报文(参数组)。应用层通过参数描述信号,给每个参数分配了一个19位的可疑参数编号(SPN);通过参数组描述报文,给每个参数组分配了一个24位的参数组编号(PGN)。SPN用来标识与ECU相关的故障诊断元素、部件或参数组中参数;PGN用来唯一标识一个特定参数组。除已分配的参数和参数组外,用户还可通过分配未使用的SPN给自定义参数和定义专有报文对应用层进行补充。

收藏
赞一下
0