2.2.5 LIN从属控制单元

在LIN数据总线系统内,LIN从属控制单元的通信受到LIN主控制单元的完全控制,只有在LIN主控制单元发出命令的情况下,LIN从属控制单元才能通过LIN总线进行数据传输。单个的控制单元、传感器、执元件都相当于LIN从属控制单元,传感器是信号输入装置,传感器内集成有一个电控装置,它对测量值进行分析,分析后的数值是作为数字信号通过LIN总线进行传输的。有的传感器或者是执行元件只是用LIN主控制单元插口上的一个针脚,就可以实现信息传输,也就是单线传输。

LIN执行元件都是智能型的电子或机电部件,它们通过LIN主控制单元的LIN数字信号接收任务。LIN主控制单元通过集成的传感器来获取执行元件的实际的工作状态,然后就把规定状态和实际状态进行对比,并发出相应的控制指令。LIN主控制单元发出控制指令后之后,传感器和执行元件才能够做出反应。LIN从属控制单元等待主控制单元的指令,根据需要与主控制单元进行通信。如果要结束休眠模式,LIN从属控制单元可自行发送唤醒信号。LIN总控制单元安装在LIN总线系统设备上。

2.2.4 主控制单元的信息结构

LIN主控制单元控制总线导线上的每条信息的开始处都通过LIN总线主控单元发送一个信息标题,它由一个同步相位构成,后面部分是标识符字节,可以传输2、4、8个字节的数据。标识符用于确定主控单元是否会将数据传输给从属控制单元。信息段包含发送到从属控制单元的信息。校验区可为数据传输提供良好的安全性。校验区由主控制单元通过数据字节构成,位于信息结束部分。LIN总线主控制单元以循环形式传输当前信息。

2.2.2 LIN总线工作原理

LIN总线所控制的控制单元一般都分布在距离较近的空间,传输数据是单线,数据线最长可以达到40m。在主节点内配置1kΩ电阻端接12V供电,从节点内配置30kΩ电阻端接12V供电。各节点通过电池正极端接电阻向总线供电,每个节点都可以通过内部发送器拉低总线电压。

图2.1 LIN总线控制系统

2.2.1 LIN总线介绍

LIN总线是针对汽车分布式电子系统而定义的一种低成本的串行通讯网络,是对控制器区域网络(CAN)等其它汽车多路网络的一种补充,适用于对网络的带宽、性能或容错功能没有过高要求的应用。LIN总线是基于SCI(UART)数据格式,采用单主控制器/多从设备的模式,是UART中的一种特殊情况。

2.1.4 总线协议层次结构

(1)物理层
  • 在物理层中定义实际信号的传输方法,包括位的编码和解码、位的定时和同步等内容,作用是定义不同节点之间根据电气属性如何进行位的实际传输;
  • 在物理连接上, CAN 总线结构提供两个引脚 –CANH 和 CANL ,总线通过 CANH 和 CANL 之间的差分电压完成信号的位传输;在不同系统中, CAN 总线的位速率不同;在系统中, CAN 总线的位速率是唯一的,并且是固定的,这需要对总线中的每个节点配置统一的参数。
(2)传输层
  • 传输层是 CAN 总线协议的核心。传输层负责把接收到的报文提供给对象层,以及接收来自对象层的报文。传输层负责位的定时及同步、报文分帧、仲裁、应答、错误检测和标定、故障界定。
(3)对象层
  • 在对象层中可以为远程数据请求以及数据传输提供服务,确定由实际要使用的传输层接收哪一个报文,并且为恢复管理和过载通知提供手段.

2.1.3 总线工作的特点

  • 特权阶级:不论计算机还是真是社会中,都有特权阶级的存在,CAN总线上的节点会被划分为不同优先级,为满足的是不同的实时要求,采用的是非破坏性位仲裁总线结构机制,当两个节点同时向网络上传送信息时,优先级低的节点会主动的停止数据发送,优先级高的就可以不受影响继续传输数据.仲裁(Arbitration) 只要总线空闲,任何节点都可以向总线发送报文。如果有两个或两个以上的节点同时发送报文,就会引起总线访问碰撞。通过使用标识符的逐位仲裁可以解决这个碰撞。仲裁的机制确保了报文和时间均不损失。当具有相同标识符的数据帧和远程帧同时发送时,数据帧优先于远程帧。在仲裁期间,每一个发送器都对发送位的电平与被监控的总线电平进行比较。如果电平相同,则这个单元可以继续发送,如果发送的是“隐性”电平而监视到的是“显性”电平,那么这个单元就失去了仲裁,必须退出发送状态。
  • 报文(Message)总线上的数据以不同报文格式发送,但长度受到限制。当总线空闲时,任何一个网络上的节点都可以发送报文。
  • 信息路由(Information Routing)在CAN中,节点不使用任何关于系统配置的报文,比如站地址,由接收节点根据报文本身特征判断是否接收这帧信息。因此系统扩展时,不用对应用层以及任何节点的软件和硬件作改变,可以直接在CAN中增加节点。
  • 标识符(Identifier) 要传送的报文有特征标识符(是数据帧和远程帧的一个域),它给出的不是目标节点地址,而是这个报文本身的特征。信息以广播方式在网络上发送,所有节点都可以接收到。节点通过标识符判定是否接收这帧信息。
  • 数据一致性应确保报文在CAN里同时被所有节点接收或同时不接收,这是配合错误处理和再同步功能实现的。
  • 位传输速率不同的CAN系统速度不同,但在一个给定的系统里,位传输速率是唯一的,并且是固定的。
  • 优先权 :由发送数据的报文中的标识符决定报文占用总线的优先权。标识符越小,优先权越高。
  • 远程数据请求(Remote Data Request) 通过发送远程帧,需要数据的节点请求另一节点发送相应的数据。回应节点传送的数据帧与请求数据的远程帧由相同的标识符命名。
  • 总线状态 总线有“显性”和“隐性”两个状态,“显性”对应逻辑“0”,“隐性”对应逻辑“1”。“显性”状态和“隐性”状态与为“显性”状态,所以两个节点同时分别发送“0”和“1”时,总线上呈现“0”。CAN总线采用二进制不归零(NRZ)编码方式,所以总线上不是“0”,就是“1”。但是CAN协议并没有具体定义这两种状态的具体实现方式。
  • 故障界定(Confinement) CAN节点能区分瞬时扰动引起的故障和永久性故障。故障节点会被关闭。
  • 应答接收节点对正确接收的报文给出应答,对不一致报文进行标记。
  • CAN通讯距离最大是10公里(设速率为5Kbps),或最大通信速率为1Mbps(设通信距离为40米)。
  • CAN总线上的节点数可达110个。通信介质可在双绞线,同轴电缆,光纤中选择。
  • 报文是短帧结构,短的传送时间使其受干扰概率低,CAN有很好的校验机制,这些都保证了。
CAN通信的可靠性:

(1)具有实时性强、传输距离较远、抗电磁干扰能力强、成本低等优点;

(2)采用双线串行通信方式,检错能力强,可在高噪声干扰环境中工作;

(3)具有优先权和仲裁功能,多个控制模块通过CAN 控制器挂到CAN-bus 上,形成多主机局部网络;

(4)可根据报文的ID决定接收或屏蔽该报文;

(5)可靠的错误处理和检错机制;

(6)发送的信息遭到破坏后,可自动重发;

(7)节点在错误严重的情况下具有自动退出总线的功能;

(8)报文不包含源地址或目标地址,仅用标志符来指示功能信息、优先级信息。

2.1.2 CAN工作原理

(1)以广播的形式发送报文.当CAN总线上的某个节点需要给其他节点发送消息时,会以广播的形式发送给总线上所有的节点,因为总线上的节点不适用地址来进行配置CAN系统,而是根据报文的开头的11位标识符决定是否要接受其他节点发来的报文;

(2)每个节点都有自己的处理器和CAN总线接口控制器;

(3)当一个节点需要发送数据到另一个节点时,自身节点的处理器需要将要发送的数据和自己的标识符传给自身的总线控制接口,处于准备状态;当获取到总线的使用权后,将数据和标识符组装成报文,将报文以一定格式发出,此时其他的节点处于接收状态.至于其他节点是否接收,由其他节点决定,是都会对某些报文进行过滤;

(4)当新增的节点仅仅是纯粹的数据接收设备时,只需要该设备直接从总线上接收数据即可。