汽车通信总线(一)——LIN总线介绍

花点时间看了一些关于 LIN 总线基础的内容,把其中的关键点提取了出来,在这里分享给大家。在这里你可能要问“不都有 CAN 总线了吗?这个 LIN 总线又是从哪里来的?”其实理由很简单,就是 CAN 总线太贵啦!处处都用 CAN 总线的话,那整车的总线架构成本将会变得很高!在一些比如车身电子配件的地方(如车窗、后视镜、大灯、车锁等),我们不需要报文像 CAN 总线上传输的那样“高速”!各大厂商一拍脑门就研究了这个 LIN 总线!

一、什么是 LIN 总线?

LIN(Local Interconnect Network)总线是基于 UART/SCI(通用异步收发器/串行接口)的低成本串行通讯协议。其目标定位于车身网络模块节点间的低端通信,主要用于智能传感器和执行器的串行通信,而这正是 CAN 总线的带宽和功能所不要求的部分。

汽车通信总线(一)——LIN总线介绍

由于 LIN 网络在汽车中一般不独立存在,通常会与上层 CAN 网络相连,形成 CAN-LIN 网关节点。

汽车通信总线(一)——LIN总线介绍

二、LIN 总线的主从关系

LIN 总线采用的是单线传输形式,应用了单主机多从机的概念,总线电平一般为 12V,传输速率最高限制为 20kbps。由于物理层的限制,一个 LIN 网络最多可以连接 16 个节点。

汽车通信总线(一)——LIN总线介绍

总线任务负责:

1. 调度总线上帧的传输次序

2. 监测数据,处理错误

3. 作为标准时钟参考

4. 接收从机节点发出的总线唤醒命令

从机任务不能直接向总线发送数据,需要接受到主节点发送的帧头后,根据帧头所包含的信息来判断:

1. 发送应答

2. 接收应答

3. 既不接收也不应答

三、LIN 的特点

1. 网络由一个主节点与若干个从节点构成。

2. 使用 LIN 总线可以大幅度削减成本。

3. 传输具有确定性,传播时间可以提前计算

4. LIN 具有可预测的 EMC(电磁兼容性)性能,为了限制 EMC 的强度,LIN 协议规定最大传输速率为 20kbps。

5. LIN 总线提供信号的配置、处理、识别和诊断功能。

四、LIN 报文帧结构

LIN 报文帧包括帧头(hearder)与应答(response)两部分。主机负责发送至帧头;从机负责接收帧头并作出解析,然后决定是发送应答,还是接收应答或不回复。

汽车通信总线(一)——LIN总线介绍

帧头结构包括同步间隔段、同步段、PID 段(受保护 ID)段,应答部分包括数据段与效验和段。其中值“0”为显性电平、“1”为隐性电平,这点与 CAN 总线相类似。在总线上实行“线-与”:当总线有至少一个节点发送显性电平时,总线呈现显性电平;所有节点均发送隐性电平或者不发送信息时,总线呈隐性电平,即显性电平起着主导作用。

汽车通信总线(一)——LIN总线介绍

4.1 同步间隔段

同步间隔段至少是由 13 位的显性电平组成,由于帧中的所有间隙或者总线空闲时总线均保持隐性电平状态。所以同步间隔段可以标志一个帧的开始。其中同步间隔段的间隔符至少为 1 位隐性电平。

汽车通信总线(一)——LIN总线介绍

4.2 同步段

LIN 同步以下降沿为判断标志,采用字节 0x55(01010101b)进行同步。在从机节点上可以不采用高精度的时钟,由此带来的偏差,需要通过同步段来进行调整。

汽车通信总线(一)——LIN总线介绍

4.3 PID 段

受保护的 ID 的前 6 位叫做帧的 ID,加上两个奇偶效验码后称作受保护的 ID。帧 ID 的取值范围为 0x00~0x3f 总共 64 个,帧 ID 标识了帧的类别和目的地。从机任务会根据帧头 ID 作出反应(接收/发送/忽略应答)。其中 P0 与 P1 效验如下:

汽车通信总线(一)——LIN总线介绍

LIN 总线根据帧 ID 号的不同,把报文分为信号携带帧、诊断帧、保留帧。

汽车通信总线(一)——LIN总线介绍

PS:从机应答帧是一个完整的帧,与帧结构中的“应答”不同!

4.4 数据段

数据段可以包含 1-8 个字节,其中包含有两种数据类型,信号(singal)和诊断消息(diagnostic messages)。信号由信号携带帧传递,诊断消息由诊断帧传递。

汽车通信总线(一)——LIN总线介绍

协议中并没有规定哪一部分显示数据长度码的信息(这点与 CAN 总线不同),数据的内容与长度均是由系统设计者根据帧 ID 事先约定好的。

总线上的数据是以广播形式发出,任何节点均可以收到,但并非对每个节点有用(与 CAN 相同)。具体到发布与接听是由哪个节点进行完成这个取决于应用层的软件配置,一般情况下,对于一个帧中的应答,总线上只存在一个发布节点,否则就会出现错误。事件触发帧例外,可能出现 0,1,多个发布节点。

4.5 效验和段

汽车通信总线(一)——LIN总线介绍

校验和段是为了对帧传输内容进行效验。效验分为标准型效验与增强型效验。采用标准型还是增强型是由主机节点管理,发布节点和收听节点根据帧 ID 来判断采用哪种效验和。

汽车通信总线(一)——LIN总线介绍

五、LIN 总线波形

汽车通信总线(一)——LIN总线介绍

上图展示的是 LIN 总线的通讯方式,可以看出无论什么时候帧头总是由主机节点发布,当主机节点想发布数据时,整个帧全部由主机节点发送。当从机节点想发布数据时,帧头部分由主机节点发布,应答部分由从机节点发布,这样其余节点都能收到一个完整的报文帧。可以很直接的观察到,LIN 总线的通讯都是由主机节点发起的,只要合理的规定要每个节点的配置,这样就不会存在总线冲突的情况(事件触发帧冲突时采用采用冲突解决进度表)。

六、帧类型

6.1 无条件帧

无条件帧是具有单一发布节点的,无论信号是否发生变化,帧头均会被无条件应答的帧。

汽车通信总线(一)——LIN总线介绍

如上图中帧 ID=0x30 应答部分的发布节点为从机节点 1,收听节点为主机节点,应用在从机节点向主机节点报告自身状态;帧 ID=0x31 中,应答部分为主机节点,收听部分为从机节点,应用在主机节点向从机节点发送消息;帧 ID=0x32 中应答部分的发送节点为从机节点 2,收听节点为从机节点 1,应用与从机节点之间的通信。

6.2 事件触发帧

事件触发帧是主机节点在一个帧间隙中查询各从机节点的信号是否发生变化时使用的帧。当存在多个发布节点时,通过冲突解决进度表来解决冲突。

当从机节点信号发生变化的频率较低的时候,主机任务一次次地查询各个节点信息会占用一定的带宽。为了减小带宽的占用,引入了事件触发帧的概念。其主要原理就是:当从机节点信息状态没有发生变化的时候,从机节点可以不应答主机发出的帧头;当有多个节点信息同时发生变化的时候,同时应答事件触发帧头会造成总线的冲突。当主机节点检测到冲突时,便会查询冲突解决进度表来依次向各个节点发送无条件帧(无条件帧只有能 1 个节点应答)来确定从机节点的信息状态。

汽车通信总线(一)——LIN总线介绍

与事件触发帧关联的多个无条件帧需要满足以下 5 个条件:

  • 数据段所包含的数据字节数等长
  • 使用相同的效验与类型
  • 数据段的第一个字节为该无条件帧的受保护 ID,这样才能够知道应答是哪个关联的无条件帧发送出来的
  • 由不同的从机节点发布
  • 不能与时间触发帧处于同一个进度表中

6.3 偶发帧

偶发帧是主机节点在同一帧时隙中当自身信号发生变化时向总线启动发送的帧。当存在多个关联的应答信号变化时,通过预先设定的的优先级来仲裁。 与事件触发帧类似,偶发帧也定义了一组无条件帧。规定偶发帧只有由主机节点发布。偶发帧的传输可能出现三种情况:1)当关联的无条件帧没有信号发生变化,这是主机连帧头也不需要发送。2)当关联的一个无条件帧信号发生变化则发送该帧。3)当有多个无条件帧发生信号变化时,则按照事先规定要的优先级依次发送。

汽车通信总线(一)——LIN总线介绍

6.4 诊断帧

诊断帧包括主机请求帧和从机应答帧,主要用于配置、识别和诊断。主机请求帧 ID=0x3c,应答部分的发布节点为主机节点;从机应答帧 ID=0x3d,应答部分的发布节点为从机节点。数据段规定为 8 个字节,一律采用标准效验和。

6.5 保留帧

保留帧的 ID=0x3e 与 0x3f,为将来扩张需求用。

七、进度表

进度表是帧的调度表,规定了总线上帧的传输次序以及传输时间。进度表位于主机节点,主机任务根据应用程需要进行调度。进度表可以有多个,一般情况下,轮到某个进度表执行的时候,从该进度表的入口处开始执行,到进度表的最后一个帧时,如果没有新的进度表启动则返回到当前进度表的第一个帧开始执行;也有可能在执行到某个进度表时发生中断,跳到另一个进度表后再返回,如事件触发帧就是一个典型的例子。

汽车通信总线(一)——LIN总线介绍

八、状态机的实现

8.1 主机状态机

汽车通信总线(一)——LIN总线介绍

8.2 从机状态机

从机任务负责发布或者接听帧的应答状态,包括连两个状态机:同步间隔段与同步段检查器、帧处理器。

汽车通信总线(一)——LIN总线介绍

汽车通信总线(一)——LIN总线介绍

九、后语:

LIN 总线与 CAN 总线是汽车上最重要的两种总线,其中 LIN 总线在车身电子(BCM)的设计中运用广泛,也是 ECU 设计中一个重要的部分。

十、参考文献:

Lin 入门书(Renesas)

扫码关注尚为网微信公众号

尚为网微信公众号
每天学习电路设计嵌入式系统的专业知识,关注一波,没准就用上了。

原创文章,作者:sunev,如若转载,请注明出处:https://www.sunev.cn/automotive/181.html

(5)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2016年12月1日
下一篇 2017年3月20日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注