王朝百科
分享
 
 
 

FlexRay

王朝百科·作者佚名  2010-02-18  
宽屏版  字体: |||超大  

FlexRay车载网络标准已经成为同类产品的基准,将在未来很多年内,引导整个汽车电子产品控制结构的发展方向。FlexRay是继CAN 和LIN之后的最新研发成果,可以有效管理多重安全和舒适功能:譬如,FlexRay适用于线控操作(X-by-Wire)。

FlexRay是戴姆勒克莱斯勒公司的注册商标。FlexRay联盟 (FlexRay Consortium)推进了FlexRay的标准化,使之成为了新一代汽车内部网络通讯协议。FlexRay关注的是当今汽车行业的一些核心需求,包括更快的数据速率,更灵活的数据通信,更全面的拓扑选择和容错运算。

因此,FlexRay可以为下一代的车内控制系统提供所需的速度和可靠性。CAN网络最高性能极限为1Mbps。而FlexRay两个信道上的数据速率最大可达到10Mbps,总数据速率可达到20Mbit/秒,因此,应用在车载网络,FlexRay 的网络带宽可能是CAN的20倍之多。

FlexRay还能够提供很多CAN网络所不具有的可靠性特点。尤其是FlexRay具备的冗余通信能力可实现通过硬件完全复制网络配置,并进行进度监测。FlexRay同时提供灵活的配置,可支持各种拓扑,如总线、星型和混合拓扑。设计人员可以通过结合两种或两种以上的该类型拓扑来配置分布式系统。

另外,FlexRay可以进行同步(实时)和异步的数据传输,来满足车辆中各种系统的需求。譬如说,分布式控制系统通常要求同步数据传输。

为了满足不同的通信需求,FlexRay在每个通信周期内都提供静态和动态通信段。静态通信段可以提供有界延迟,而动态通信段则有助于满足在系统运行时间内出现的不同带宽需求。FlexRay 帧的固定长度静态段用固定时间触发(fixed-time-trigger)的方法来传输信息,而动态段则使用灵活时间触发的方法来传输信息。

FlexRay不仅可以像CAN和LIN网络这样的单信道系统一般运行,而且还可以作为一个双信道系统运行。双信道系统可以通过冗余网络传输数据——这也是高可靠系统的一项重要性能。

FlexRay的各种特点均适合实时控制的功能。

FlexRay的应用

FlexRay 面向的是众多的车内线控操作(X-by-Wire)。

FlexRay 导线控制应用的例子包括:

* 线控操作转向-典型的是使用电子控制单元

*防抱死制动系统(ABS)-包括车辆稳定控制(VSC)和车辆稳定助手(VSA)

FlexRay 节点运算

每个FlexRay节点都包括一个控制器和一个驱动器部件。控制器部件包括一个主机处理器和一个通信控制器。驱动器部件通常包括总线驱动器和总线监控器(可选择)。总线驱动器将通信控制器与总线相连接,总线监控器监视接入总线的连接。主机通知总线监控器通信控制器分配了那些时槽。接下来,总线监控器只允许通信控制器在这些时槽中传输数据,并激活总线驱动器。若总线监控器发现时间时序有间隔,则断开通信信道的连接。

FlexRay的节点有几个基本的运行状态:

*配置状态(默认配置/配置)-用于各种初始化设置,包括通信周期和数据速率

*就绪状态-用于进行内部的通信设置

*唤醒状态-用于唤醒没有在通信的节点。在该状态下,节点向另一节点发送唤醒信号,唤醒并激活总线驱动器、通信控制器、和总线监控器。

*启动状态-用于启动时钟同步,并为通信做准备。

*正常状态(主动/被动)-可以进行通信的状态

*中断状态-表明通信中断

FlexRay节点还有与错误处理相关的状态转移。这些转移是在时钟同步和时钟校正错误的错误计数器的数值基础上加以管理的。当个别节点的时钟与FlexRay同步节点时钟有所出入时,就会出现时钟校正错误。FlexRay 网络有一个或一个以上传输同步信息的同步节点。在收到任意一条同步信息后,节点会将其时钟与同步节点的时钟相比较,并根据同步需要做出必要的变化。

每个节点都要进行错误计数,其中包括时钟同步中连续发生错误的次数。同时,节点还要监测和帧转移/接受状态相关的错误,其中包括语法错误、内容错误、总线干扰错误以及转移冲突所导致的错误。一旦某节点发现该类错误,就会通知主机处理器。错误计数器的使用取决于应用用途和系统设计。

FlexRay帧和信号

FlexRay使用的通信帧有三个帧段。

和CAN网络的事件触发协议不同的是,FlexRay使用时间触发协议来转移帧。FlexRay的时间触发模式可以确保数据按照事先确定的时间表进行传输。此外,双冗余通信信道Ach和Bch都能传输数据。

头段包括以下几位:

*保留位-为日后的扩展做准备

*负载段前言指示-指明帧的负载段的向量信息。在静态帧中,该位指明的是NWVector;在动态帧中,该位指明的是消息ID

*零帧指示-指明负载段的数据帧是否为零

*同步帧指示-指明这是一个同步帧

*起始帧指示-指明发送帧的节点是否为起始帧

*帧ID-指明在系统设计过程中分配到每个节点的ID(有效范围:1至2047)

长度-说明负载段的数据长度

* 头部CRC- 表明同步帧指示器和起始帧指示器的CRC计算值,以及由主机计算的帧ID和帧长度

*周期-指明在帧传输时间内传输帧的节点的周期计数

帧的负载段包括三个部分:

*数据-可以是0至254字节

*消息ID-任意。 该消息ID 使用负载段的前两个字节进行定义,可以在接收方作为可过滤数据使用。

*网络管理向量——任意。该向量长度必须为0至10个字节,并和所有节点相同。

该帧的尾段包括硬件规定的CRC值。这些CRC值会在连接的信道上面改变种子值,以防不正确的校正。FlexRay 在时槽中传输帧。图8展示了与FlexRay周期有关的时槽的组成结构。

在物理层,FlexRay根据uBP和uBM的不同电压,使用不同的信号BP和BM进行通信。四个信号(见图9)代表了FlexRay总线的各种状态:

*Idle_LP: 低功率状态

*Idle: 无通信状态

*Data_1: 逻辑高

*Data_0:逻辑低

注意在Data_1 和Data_0之间不允许有冲突

经过数年的改进,FlexRay网络标准已经成熟,BMW已经在X5中有5个ECU(电控减震、主控悬吊系统等)应用了FlexRay,在下一代产品中将有16ECU予以应用。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格​十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有