上一篇写了关于CAN-FD的简介,公众号后台一些朋友希望能了解一下其他目前整车内常用的总线系统标准,如CAN、LIN、J1850、MOST及本文简单聊聊的FlexRay。

FlexRay的技术相对也较为成熟,网上资料甚多,简单做了个总结,供大家参考。文末点击阅读原文可下载FlexRay标准文档。

一、FlexRay背景

FlexRay联盟成立于2000年,于2009年年底解散,核心成员为:

  • BMW

  • Volkswagen

  • Daimler AG

  • General Motors

  • Robert Bosch GmbH

  • NXP Semiconductors

  • Freescale

FlexRay是由该联盟专为车内局域网设计的一种具备故障容错的高速车载总线系统。

FlexRay可拆字为:

Flex = Flaxibility 意为灵活的

Ray FlexRay联盟的标志 鳐鱼

打开网易新闻 查看精彩图片

由于该总线系统设计时采用了基于「时间触发」的机制(会在下面具体介绍),且具有高带宽容错性能好等特点,在实时性、可靠性以及灵活性等方面越来越凸显其优势。

二、FlexRay主要特点

1、高数据速率

上一篇也提及,传统CAN线分高低速两种,高速CAN最高速率为1Mbps,低速CAN为250kbps,比较之下,FlexRay有两个信道,其最高速率都可达到10Mbps,总的数据速率可达20Mbps。而正也是因为是两条线路,能更好地实现冗余,使得消息具有容错能力。但当这两条信道传递不同的信息时,使得数据吞吐量加倍。

2、确定性

由于FalexRay是一种时间触发式的总线系统,符合TDMA(Time Division Multiple Access)的原则,因此在时间控制区域内,时隙会分配给确定的消息,即会将规定好的时间段分配给特定的消息,时隙是经固定周期重复,也就是说信息在总线上的时间可以被预测出来,因此保证了其确定性。

打开网易新闻 查看精彩图片

看到其他地方有用景点缆车来比喻,非常形象:

总线上的数据收发用户比作缆车的两个站点,即信息发送接收器(控制单元),索道的吊车就像是数据帧,车上的乘客认为是有效数据信息

用户按照精准的时间节点,通过FlexRay发出消息;接收器也会按照精准的时间收到消息,与缆车的时刻表一致。

就算总线空闲时,用户不发送任何消息,总线也会预留出一定带宽,就像及时没有乘客,缆车依然会不断运行一样。

打开网易新闻 查看精彩图片

3、灵活性

上面提到了FlexRay是时间触发的总线系统,事实上,它仍可通过事件触发方式来进行部分的数据传输,尤其对于时间要求不高的其他消息,就可以在事件控制区域内传输。因此形成了以时间触发为主,兼顾「事件触发」的灵活特性。

其次FlexRay的拓扑结构多样,既能像CAN线一样使用线型结构,也可使用星型结构,并且由中心节点来负责消息的转发,当除中心节点外的节点出现故障时,由中心节点断开与该损坏节点的通信,但若中心节点损坏了,整个总线系统就无法工作。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

4、容错性

在高速特性中提到了FlexRay是双信道的系统,在真实的传输环境中,两个信道传输的信息是相同的,称之为通过冗余备份来实现容错。简单理解就是当其中某一条信道出现故障或者信息出现损坏时,另一条信道仍可以继续正常传输,并不会互相影响对方的数据传输。

另外,在灵活性中提到的星型结构也通用具有故障隔离功能,当某控制器出现故障时,主节点可以自动断开故障节点,以防止对其他正常节点功能的影响。

三、FlexRay的应用

FlexRay最常见的应用场景是汽车的车内线控操作(X-by-wire),这个概念引申自飞机控制系统,飞机上所说的Fly-By-Wire指的是用电线代替机械的控制系统。

X-by-wire引入到其他行业中后特指「去掉机械以及液力后备系统并与安全相关的、具有容错能力的线控系统。」

其中X对应车内可以包括Brake,Steer,Shitt,Accelerate,Suspension等,如在刹车控制系统中,在取消掉原本的机械传动结构基础上,集成为制动-转向-悬架的电控结构,但正因为取消了传统的液压结构,就会要求现有电子控制线路有足够强的可靠性,能满足严格容错以及确定性的操作。

X-by-wire若使用传统CAN总线,就会出现

  • 事件触发——报文不确定

  • 总线负载率——接近极限

  • 没有带宽储备及对应容错设计

显然,FlexRay总线系统能满足这样条件。宝马5系07款SUV的电子控制减震系统首次搭载了15个FlexRay节点,当时采用的策略是单通道,10Mbps,星型及总线拓扑结构,由此成为了首款FlexRay通信系统车型。

后来宝马新七系上,使用了跨系统方式实现行驶动态管理系统和发动机管理系统的联网,其中用了一个网关来实现CAN/FLEXRAY/MOST/LIN等总线之间的通信。

另一个应用就是由于FlexRay的高速率性,可以利用其成为车载通信骨架,FlexRay的两条信道最高都能达到10Mbps的速率,可以用于连接动力总成、底盘、车身、安全以及多媒体系统等独立系统。

打开网易新闻 查看精彩图片