1.2.2 车载通信与总线技术
1.导线传递信号的时代
汽车线束又被称为汽车神经,是汽车传送电气信号的载体,它由电线、接插件和外部包扎及其他器件组成。为了区分不同导线的功能,1937年彩色汽车导线第一次被应用到汽车上。
这里以制动灯为例,说明在用导线传递信号的时代如何实现制动灯随制动踏板自动亮起的功能。制动灯(20世纪40年代后期出现)及高位制动灯(20世纪60年代后期出现)是陆续被发明和应用的电器,它能有效预警后方汽车前方车辆的状态,避免追尾事故。在图1-5中,ON档位开关联通的时候表示车辆运行中,此时如果制动踏板踩下实施制动,开关闭合,那么制动灯亮起。由于档位ON开关、制动开关、制动灯分别位于仪表台前侧、乘员舱底部、整车尾部外侧及发动机舱内,为了完成该功能,需要用到四根导线及至少4个接插件(当然还没考虑电器盒、熔丝等)。
图1-5 制动开关与制动灯开关的连线示意图
电器之间在功能上或工作状态上往往存在着各种关系,比如联动关系、制约关系、互斥关系等等。通过导线的连接、分配器和继电器等电器来实现“与”“或”“非”等各种逻辑,完成电器之间的相互协调工作。
由于新电器、新应用的出现,从20世纪80年代开始,汽车内部线束数量开始出现跳跃式增长。据估计,在2000年一辆高档汽车已经拥有多达400多个接插件和多达3000个接线端子,一辆普通高档汽车其电缆总长度达到了1500~2000m。Gabriel统计了自汽车发明以来至2000年车内平均使用连线总长度的增长,如图1-6所示。
图1-6 汽车车内连线总长度的增长趋势
汽车导线和接插件经常引起失效故障,据德国一家研究机构统计,车上电气系统30%~60%的失效源于线束中的接插件。
2.早期的多路复用技术
多路复用技术(Multiplexing Technology)的目的就是用一条信号通道传递多个信号,代替以前使用导线来传递信号的方式,也称为车载总线技术。车载总线技术开发与应用的早期,各个汽车生产厂家并没有遵循统一的标准,而是各自独立开发。如二十世纪八、九十年代,各个汽车厂家以不同的定义和规格,各自发展出如图1-7所示的车载通信技术。由于早期的车载总线技术互不兼容,极大地制约了技术的普及和推广。
图1-7 车载总线技术的早期(二十世纪八、九十年代)发展过程
这其中比较著名的有博世公司的CAN总线、美国汽车工程师协会制定的J1850总线、国际标准组织制定的VAN总线、飞利浦公司的D2B总线、LIN协会的LIN总线等多种总线标准。为方便研究和设计使用,美国汽车工程师协会将车载总线根据速率划分为A、B、C三类,如表1-4所示。
表1-4 汽车总线划分
3.低速总线技术
A类总线的特点是电磁兼容性较好、成本低,主要包括通用汽车公司制定的UART总线、原克莱斯勒公司制定的CCD总线、丰田公司的BEAN总线、福特公司的ACP和UBP总线以及维也纳工业大学制定的TTP/A总线。
LIN是1999年由LIN协会共同努力下推出的,用于汽车分布式电控系统的开放式的低成本串行通信标准。LIN是一种基于UART的数据格式、主从结构的单线12V的总线通信系统,主要用于智能传感器和执行器的串行通信。2001年梅赛德斯-奔驰公司率先在SL级轿车上使用了LIN总线,LIN总线事实上已成为A类网络的主流。
4.中速总线技术
B类总线具有中等速率的数据传输能力以及较好的电磁兼容性,包括美国汽车制造商采用的J1850总线、欧洲雷诺、标致公司采用的VAN总线和低速CAN总线等。SAE的J1850总线有41.6kbit/s双线差分脉宽调制和10.4kbit/s单线可变脉冲宽度两种类型,总线最长可达35m,驱动32个节点,主要用于故障诊断和车载信息共享,被用在美国福特公司、通用公司以及克莱斯勒公司的汽车中。1994年SAE正式将J1850作为B类网络标准协议。但J1850并不是一个单一标准,福特公司采用的J1850标准,其物理层与通用公司和克莱斯勒公司使用的不同,而通用公司和克莱斯勒公司在相同的物理层上又使用不同的数据帧格式。CAN总线是德国博世公司从20世纪80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议。它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维,通信速率可达1Mbit/s。1991年博世公司正式颁布了CAN技术规范。1993年11月ISO正式颁布了ISO11898,为CAN的标准化、规范化铺平了道路。此后,越来越多的北美和日本汽车公司也开始采用CAN。1994年美国汽车工程师协会货车和大客车控制通信协会选择CAN作为SAEJ1939标准的基础。低速CAN还发展出一种具有容错功能的协议规范,在汽车应用中可靠性大大增加。由于CAN总线具有诸多的优点,它已经成为B类和C类网络的主流和标准。
5.高速总线技术
C类标准主要用于与汽车安全相关、实时性要求比较高的地方,如传动系统、动力系统,所以其传输速率比较高,通常在125kbit/s到1Mbit/s之间。C类网络中的主要协议包括高速CAN(ISO11898-2)、TTP/C、FlexRay、ByteFlight、车载以太网等协议。
TTP/C协议由维也纳工业大学研发,基于TDMA的访问方式。TTP/C是一个应用于分布式实时控制系统的完整的通信协议,它能够支持多种的容错策略,提供了容错的时间同步以及广泛的错误检测机制,同时还提供了节点的恢复和再整合功能。其采用光纤传输的工程化样品速度将达到25Mbit/s。TTP/C支持时间和事件触发的数据传输。
FlexRay是宝马、梅赛德斯-奔驰、Motorola和Philips等公司制定的功能强大的通信网络协议,基于FTDMA的确定性访问方式,具有容错功能及确定的通信传输时间,同时支持事件触发与时间触发通信,具备高速率通信能力。FlexRay采用冗余备份的办法,对高速设备可以采用点对点方式连接,构成星型结构,对低速网络可以采用类似CAN总线的方式连接。
ByteFlight是由宝马主导推出的高速数据传输协议,其位数率高达10Mbit/s数据更新率可达4kHz。为了抑制电磁干扰,ByteFlight采用了光缆作为传输媒介。ByteFlight主要是面向安全气囊系统的网络通信,还可用于X-by-Wire系统的通信和控制。
车载以太网初衷是希望满足汽车行业对带宽、延迟、同步、干扰、安全性和网络管理等方面的要求,是近几年流行起来的一种车用有线通信网络。最早在2004年宝马公司考虑采用博通公司(Broadcom)的以太网技术,并于2008年在宝马7系上成功量产,其中关键点在于博通公司的单对非屏蔽以太网全双工技术,保证EMC测试全部成功。2013年BroadR-Reach技术成功在宝马环视系统中应用。近年来,由著名汽车整车厂与供应商组成的OPENAlliance SIG相继发布了TC8(车载以太网ECU测试规范),以及TC10(车载以太网休眠唤醒规范)。
6.车载总线协议结构
相对于CAN的3层结构(物理层、数据链路层和应用层),车载以太网协议是一组具有5层结构的协议系统,从下到上分别是物理层、数据链路层、网络层、传输层、应用层。5层结构对应于OSI参考模型,并且提供了各种协议框架下形成的协议簇及高层应用程序,区别于传统以太网,车载以太网的协议架构如图1-8所示。
以太网的物理层(BroadR-Reach,Layer1)采用差分电压实现,单对双绞线可实现100Mbit/s通信速率,因为传输速率高,对物理层一致性测试要求更严格。
数据链路层(MAC + VLAN Layer)为标准以太网数据链路及虚拟局域网控制协议,数据链路层可细分为逻辑链接控制(Logic Link Control,LLC)以及媒介访问控制(Media Access Control,MAC)两个层级。此两层级定义与作用如下:LLC层负责向上层提供服务,管理数据链路通信,链接寻址定义等,与所用物理介质没有关系;MAC层负责数据帧的封装,总线访问方式,寻址方式以及差错控制等,MAC层的存在则可以使得上层软件与所用物理链路完全隔离,保证了MAC层的统一性。其中LLC子层的服务在IEEE 802.2 LAN协议中有所定义,MAC层的主要功能则在IEEE 802.3中有定义,并采用CSMA/CD访问控制方式,一般MAC层协议在俗称的“网卡”中实现,MAC层完整的帧格式如图1-9所示。
图1-8 车载以太网的协议架构
图1-9 以太网的5层结构的帧结构
特别说明一下,如图1-9所示,“VLAN Tag”字段可选,当没有VLAN Flag则为基本MAC帧,当存在该字段时,则为VLAN MAC帧,即MAC帧可分为基本MAC帧(无VLAN)和标记MAC帧(包括VLAN)两种。其中“类型”字段通常可以为以下几种类型,且该类型列表由IEEE组织来维护,表1-5列举了车载以太网领域常用的Ethernet Type。
表1-5 车载以太网领域常用的Ethernet Type
网络层就是IP协议所在的层级,IP协议可以分为IPV4以及IPV6,常用的主要是IPV4,IP协议的主要作用就是基于IP地址转发分包数据。同时IP也是一种分组交换协议,但是IP却不具备自动重发机制,即使数据没有达到目的地也不会进行重发,所以IP协议属于非可靠性协议。车载以太网主要使用IPV4协议,同时由于该协议也属于传统以太网范畴,所以不会对该模块做过多细节性阐述。
传输层还是基于TCP/IP协议簇,主要负责主机到主机之间的端到端通信。TCP/IP两个关键的传输协议为用户数据报协议(UDP)和传输控制协议(TCP),TCP/UDP作为传统以太网的标准协议,在这里同样不做过多展开。
传输层之上是应用层协议,它是用户与网络的交互界面,负责处理网络特定的细节信息覆盖了OSI参考模型的第5层至第7层。应用层可根据用户需求为用户提供多种应用协议,如超文本传输协议(HTTP)、通信控制(SOME/IP)、服务发现(Service Discovery)、动态主机配置协议(DHCP)、流媒体服务(Stream Media Service)、设备发现、连接管理和控制协议(IEEE 1722.1 AVDECC)等。