刘春晖,张 文
(山东华宇职业技术学院,山东 德州 253034)
2010年款奥迪A8由奥迪公司位于巴登符腾堡州的内卡苏姆工厂生产,于2010年10月上市,其采用了一个新的总线系统,即FlexRay总线。FlexRay代表的含义:Flex的德语意义为Flexibilität(灵活),Ray的德文意义为Rochen(FlexRay联盟标志中的鳐鱼),其标志如图1所示。采用FlexRay总线是为了满足将来对汽车控制单元联网结构更高的要求,特别是为了实现更快的数据传输率、更强的实时控制和更高的容错运算。使用FlexRay总线之后才可以实现驾驶动态控制、车距控制ACC(Adaptive Cruise Control,自适应雷达巡航控制系统)和图像处理功能。
2010年款奥迪A8的FlexRay总线具有如下特征:①双绞线总线;②数据传输率:最快10 Mb/s;③传输3种信号状态:空闲、Data0、Data1;④主动星型拓扑结构;⑤实时控制;⑥实现分布式控制和与安全相关系统的使用。
FlexRay总线的基本工作方式与使用至今的数据总线系统 (CAN总线、LIN总线和MOST总线)不同。FlexRay总线的基本工作方式用索道做比喻就很恰当:索道的站点就像总线用户,即信息发送和接收器 (控制单元);索道的吊车就像数据帧,而乘客就是信息。
总线用户通过FlexRay总线发送信息的时间点可以精准地确定,发出信息到达接收器的时间也可以精确地识别,这就与索道既定不变的时刻表相同。
即使总线用户不发送任何信息,也为它预留一定的带宽,就像索道上,无论是否有乘客,索道都在运行。所以,不需要像在CAN总线上那样设定信息的优先级。奥迪将空吊车情况视作信息发送器发生故障,也就是说,控制单元总是发送信息,但用Update Bit标记新内容。如果没有可以使用的新数据,则再次发送旧数据。CAN总线与FlexRay总线的异同如表1所示。
表1 CAN总线与FlexRay总线的异同
在FlexRay总线上,信息通过通信周期(Communication Cycles)传输。通信周期不断循环,也就是说,接连不断。一个通信周期持续5ms,由静态段、动态段、网络空闲时间 (空载)3部分组成。
1)静态段 静态段在总线用户之间传递信息。为了传输数据,静态段被分为62个时隙,即时间槽,如图2所示。一个静态时隙只能发送到一个特定的总线用户中,但是,所有总线用户可以接收所有静态时隙,也包括那些与它没有确定关系的时隙。
所有静态时隙的长度都相等,都是42字节,时隙的顺序固定不变。在接连不断的通信周期中,各个静态段传输不同内容的信息。一般无论所有时隙是否都承载信息,整个时隙结构都会被传输。在奥迪车上,总线用户还会持续发送 “Update Bit”。
2)动态段 动态段被分成若干最小时隙 (Minislot),所有总线用户都会接收动态段。动态段是通信周期中为了能够传输事件触发的数据而预留的位置,FlexRay总线的动态段如图3所示。
3)网络空闲时间 网络空闲时间就是网络静止时间,如图4所示。在这段时间内,FlexRay总线上没有信息在传输。数据总线诊断接口J533需要这段时间同步FlexRay总线上数据传输的过程。所有总线用户利用网络空闲时间使内部时钟与全球时基同步。
FlexRay总线的拓扑结构如图5所示。FlexRay总线的拓扑结构可以分为点对点连接的主动星型拓扑结构 (支路3)和总线型拓扑结构 (支路1、2和4)。数据总线诊断接口J533用作控制器,上面有4个支路 (支线)接口。其它总线用户围绕着数据总线诊断接口J533分布在若干支路上。
在2010年款奥迪A8中,每条支路上最多连接2个控制单元。其中主动星型连接器以及支路上的末端控制单元终接低电阻 (内电阻较低),而中间控制单元则终接高电阻 (内电阻较高)。
一条FlexRay支路上的中间控制单元通过4个芯脚与FlexRay总线连接,其中2个用来将总线信号转送给下一个控制单元;另外2个用于直接与FlexRay总线通信。节点控制单元,例如ABS控制单元J104(图6)只有2个芯脚。
如果FlexRay总线处于休眠模式,系统会先通过唤醒过程使FlexRay变成待机模式。即使激活所有接线端30的用户,FlexRay总线也无法主动进行通信。
启动后,FlexRay总线才有真正的通信。启动,指的就是网络的启动,只能由冷态启动控制单元完成。第1个向FlexRay总线发送信息的冷态启动控制单元开始启动过程。冷态启动和同步控制单元将会启动网络,并建立同步。冷态启动和同步控制单元有:数据总线诊断接口J533、ABS控制单元J104、电子传感器控制单元J849。
然而,非冷态启动控制单元则不会启动FlexRay总线,对建立同步也没有帮助。只有当2个以上其它总线用户在FlexRay总线上发送信息后,非冷态启动控制单元才可以发送信息。非冷态启动控制单元有:车距控制装置控制单元J428、车距控制装置控制单元2 J850、图像处理控制单元J851、四轮驱动系统控制单元J492、水平高度调节系统控制单元J197(图7,无法启动网络,但是对同步有帮助)。
FlexRay总线的2条导线分别是Busplus和Busminus。2条导线上的电平在最低值1.5V和最高值3.5V之间变换,如图8所示。FlexRay的信号状态有3种:①空闲——两导线的电平都为2.5V;②Data0——Busplus上低电平,Busminus上高电平;③Data1——Busplus上高电平,Busminus上低电平。
一个比特占100ns带宽,传输时间与导线长度以及总线驱动器的传输用时有关。信号差别传输,也就是说,需要2条导线。接收器通过2个信号的差别确定本来的比特状态,典型的数值是1.8~2.0V的压差。发送器附近必须至少有1200mV的压差;接收器处的直接最小压差为800mV。如果在640~2660μs之内,总线上没有变化,FlexRay总线自动进入休眠模式 (空闲)。
数据总线诊断接口J533识别到网络中的故障,并使没有故障的区域可以继续工作。故障可能仅出现在某一部分网络内,但是也有可能涉及整个网络。
下述FlexRay总线故障可以用车辆诊断测试仪(图9)诊断 (地址码19——数据总线诊断接口):①控制单元——无通信;②FlexRay数据总线损坏;③FlexRay数据总线初始化失败;④FlexRay数据总线信号出错。出现故障时FlexRay总线的表现如下。
1)一条导线搭铁短路数据总线诊断接口J533识别到一个持续不变的压差,相关的总线支路关闭,直到再次空闲,也就是说,识别到休眠模式的电平。
2)2条导线相互短路数据总线诊断接口J533识别到空闲电压持久不变,该总线支路上再也无法发送和接收数据。
3)控制单元持续发送空闲 数据总线诊断接口J533识别到总线支路空闲,并关闭总线支路。
[1]一汽大众有限公司.Audi A8L—电路和网络[Z].
[2]一汽大众有限公司.10款奥迪A8车载电网和联网[Z].