2.1 CAN技术
控制器局部网(ControllerAreaNetwork,CAN)属于现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通信网络。CAN的应用范围遍及从高速网络到低成本的多线路网络。
(1) CAN的分层结构
CAN遵从OSI模型,按照OSI基准模型,CAN结构划分为2层:数据链路层和物理层,如图1所示。
图1 CAN分层结构
按照IEEE802.2和802.3标准,数据链路层又划分为逻辑链路控制和媒体访问控制;物理层又划分为物理信令、物理媒体附属装置和媒体相关接口。其中,逻辑链路控制子层为数据传递和远程数据请求提供服务;访问媒体控制子层的功能主要是传送规则,即控制帧结构、执行仲裁、错误检验、出错标定和故障界定。
(2) CAN总线的主要特点
CAN为多主工作方式,网络上的任意节点在任意时刻都可以主动地向其他节点发送信息,不分主从,方式灵活。其采用非破坏性的总线仲裁技术,可以进行点对点、一点对多点和全域广播方式传递信息,多点同时发送信息时,按优先级顺序通信,节省总线冲突仲裁时间,避免网络瘫痪。报文传送采用短帧数据结构,传输时间短,抗干扰能力强,检错效果好。网络节点在错误严重的情况下可以自动关闭输出功能,脱离网络,实现了标准化、规范化。
2.2 FlexRay技术
(1) FlexRay分层结构
FlexRay的分层结构由物理层、传输层、表示层及应用层组成。物理层定义了信号的实际传输方式,包括在时域上检测通信控制器故障的功能;传输层是FlexRay协议的核心,它的功能是从表示层获得节点要发送的信息和把网络上接收的信息传送给表示层;表示层完成信息过滤、信息状态处理以及通道控制器与主机的接口;应用层由应用系统定义。
(2) FlexRay节点结构
FlexRay节点的核心是ECU(Electronic Control Unit),是接入车载网络中的独立完成相应功能的控制单元。主要由电源供给系统、主处理器、固化FlexRay通信控制器、可选的总线监控器和总线驱动器组成。主处理器提供和产生数据,并通过FlexRay通信控制器传送出去。其中驱动器和监控器的个数对应于通道数,与通信控制器和微处理器相连。总线驱动器连接着通信控制器和总线,或是连接总线监控器和总线。主处理器把FlexRay控制器分配的时间槽通知给总线监视器,然后总线监视器就允许FlexRay控制器在这些时间槽中传输数据。数据可以随时被接收。结构图如图2所示。