LIN初了解【小白入门】

提示:本文档帮助小白对LIN通讯方式有初步了解


一、LIN是什么?

LIN 是 Local Interconnect Network 的缩写,是基于 UART/SCI(Universal Asynchronous Receiver-Transmitter / Serial Communication Interface,通用异步收发器/串行通信接口)的低成本串行通信协议。可用于汽车、家电、办公设备等多种领域。本文主要针对 LIN 在分布式的汽车电子网络系统中的应用。
1996 年,Volvo和Volcano通讯(VCT)为Volvo S80 系列开发了一种基于UART/SCI的协议,即Volcano Lite。1997 年,Motorola与Volvo和VCT合作,帮助它们改进Volcano Lite协议以满足各种不同需求(比如无需晶振的从机设备自动同步),并制定可以支持各种半导体产品的开放标准。1998 年 12 月,Audi、BMW、Daimler Chrysler和Volkswagen也加入进来,由此形成了LIN协会(http://www.lin-subbus.org)。开发LIN标准的目的在于适应分层次车内网络在低端(速度和可靠性要求不高、低成本的场合)的需求。

二、LIN的特点

LIN 具有以下特点:
(1) 网络由一个主机节点和多个从机节点构成。
(2) 使用 LIN 可以大幅度的削减成本,表现在以下方面:
● 开放型规范:规范可以免费从官方网站获得。
● 硬件成本削减:基于普通 UART/SCI 接口的低成本硬件实现,无需单独的硬件模块支持;从机节点无需
高精度时钟就可以完成自同步;总线为一根单线电缆。
● 装配成本削减:LIN 采用了工作流(Work Flow)和现成节点(Off-the-shelf Node)的概念,将网络装配标准
化,并可通过 LIN 传输层进行再配置。
● 缩短软件开发周期:LIN 协议将 API(Application Programming Interface,应用编程接口)标准化。
(3) 信号传输具有确定性,传播时间可以提前计算出。
(4) LIN 具有可预测的 EMC(ElectroMagnetic Compatibility,电磁兼容性)性能。为了限制
EMI(ElectroMagnetic Interference,电磁干扰)强度,LIN 协议规定最大位速率为 20kbps。
(5) LIN 提供信号处理、配置、识别和诊断四项功能。

三、LIN 的协议层及帧结构

1.LIN的帧结构

帧(Frame)包含帧头(Header)和应答(Response)两部分。主机任务负责发送帧头;从机任务接收帧头并对帧头所包含信息进行解析,然后决定是发送应答,还是接收应答,还是不作任何反应。帧在总线上的传输如图 3.1所示。
在这里插入图片描述
帧头包括同步间隔段、同步段以及PID(Protected Identifier,受保护ID)段,应答包括数据段和校验和段,如图 3.2 所示,其中值“0”为显性电平(Dominant),值“1”为隐性电平(Recessive),总线上实行“线-与”:当总线上有大于等于一个节点发送显性电平时,总线呈显性电平;所有的节点都发送隐性电平或不发送信息(不发送任何信息时总线默认呈隐性电平)时,总线才呈现隐性电平,即显性电平起主导作用。图中帧间隔为帧之间的间隔;应答间隔为帧头和应答之间的间隔;字节间间隔包括同步段和受保护ID段之间的间隔、数据段各字节间之间的间隔以及数据段最后一个字节和校验和段之间的间隔。下面对帧头和应答的各部分进行详细说明。
在这里插入图片描述

2.帧的类型

无条件帧(Unconditional Frame)
无条件帧是具有单一发布节点,无论信号是否发生变化,帧头都被无条件应答的帧。

事件触发帧(Event Triggered Frame)
事件触发帧是主机节点在一个帧时隙中查询各从机节点的信号是否发生变化时使用的帧,当存在多个发布节点时,通过冲突解决进度表来解决冲突。
当从机节点信号发生变化的频率较低时,主机任务一次次地轮询各个信号会占用一定的带宽。为了减小带宽的占用,引入了事件触发帧的概念。

偶发帧(Sporadic Frame)
偶发帧是主机节点在同一帧时隙中当自身信号发生变化时向总线启动发送的帧。当存在多个关联的应答信号变化时,通过事先设定的优先级来仲裁。

诊断帧(Diagnostic Frame)
诊断帧包括主机请求帧和从机应答帧,主要用于配置、识别和诊断用。主机请求帧(Master Request Frame,MRF),帧 ID = 0x3C,应答部分的发布节点为主机节点;从机应答帧(Slave Response Frame,SRF),帧 ID = 0x3D,应答部分的发布节点为从机节点。数据段规定为 8 个字节,一律采用标准型校验和。

保留帧(Reserved Frame)
保留帧的帧 ID 为 0x3E 和 0x3F,为将来扩展用。

信号处理、配置、识别和诊断

3.传输层

传输层的任务单一,就是充当一个“翻译官”,把来自诊断服务的消息(Message)“翻译”成协议层可以处理的PDU (Packet Data Unit,分组数据单元),或者反过来,把协议层收到的 PDU“翻译”成诊断服务需要的消息。消息到 PDU 的转换过程称为拆分(Packing),PDU 到消息的转换过程称为重组(Unpacking)。PDU 对应着帧结构的数据段,并通过诊断帧发送或接收。

4.PDU结构

为满足汽车行业的要求,LIN 传输层 PDU 的格式与 ISO 制定的基于 CAN 网络的诊断标准(参照参考资料[9])非常相似(是 ISO 标准的子集)。这种兼容性大大减少了在 CAN 和 LIN 之间转换数据格式的工作量,降低了对节点计算能力的要求。
从发送格式上,PDU 单元可分为单帧(Single Frame,SF)、首帧(First Frame,FF)和续帧(Consecutive Frames,CF)三种。从发送源上,主机发送请求 PDU,从机发送应答 PDU。

5.传输层通信

应用层发出的消息如果长度不超过单帧的容量,传输层会按单帧的格式交给协议层发送。传输层收到的单帧也会直接作为消息送往应用层;如果消息长度超过单帧的容量,传输层先要把消息拆分成首帧和续帧并排好次序,然后再交给协议层依次发送。反过来,协议层收到的首帧和续帧,传输层先要按照接收次序将其重组为消息,最后交给应用层处理。
LIN 传输层只能按顺序接收续帧。
LIN 传输层具备出错重传功能。

6.LIN的应用层

概述
LIN 应用层提供信号处理、配置、识别和诊断四项功能。配置、识别和诊断功能又包含若干项目,称为服务(Service)。为了区别,每项服务都有固定、唯一的服务代号(Service ID,SID)。
在这里插入图片描述
① 信号通过信号携带帧通信
② 配置服务通过传输层,以单帧的形式通信
③ 识别服务通过传输层,以单帧的形式通信
④ 基于信号的诊断服务
⑤ 诊断传输层,通过传输层通信,需要使用复帧的形式通信
⑥ 用户自定义的诊断
为便于理解本图,后文对每项功能都分别进行了详细描述并提出了工作模型的概念。LIN 应用层的配置、识别和诊断都是针对逻辑节点(Logical Node)的。逻辑节点是能够对来自主机节点和/或诊断设备的服务请求作出响应的功能实体。为了区别不同的逻辑节点,LIN 定义了 NAD(Node Address for Diagnose,诊断地址)。第 1 章介绍了物理节点(Physical Node)、从机任务和接口(Interface)的概念。对于一个物理节点来说,从机任务和接口对应着实现帧收发的软件和硬件实体,而逻辑节点则代表了配置、识别和诊断方面的能力。物理节点、从机任务以及接口是一一对应的,但是物理节点可以包括 1 个或者多个逻辑节点。

7.信号处理功能

信号处理功能是指应用层可以不经过传输层,直接从协议层获取或修改网络中的信号。这些信号由NCF(Node Capability File,节点性能文件)定义,既可以是工作参数(例如温度、压力的测量值、继电器的开合状态等),也可以是状态标志(例如某信号携带帧的收发状态)。

8.配置功能

LIN 规范规定,每个逻辑节点都应该有 NAD。在网络运行期间,任意两个逻辑节点的 NAD 都必须不同,否则就会产生冲突。此外,每个逻辑节点都要能处理带有某些 PID 的帧。由此可见,NAD 和 PID 分别与逻辑节点建立了一种映射关系,LIN 规范把 NAD 和 PID 的这样一种组合称为逻辑节点的配置项(Configuration)。一个逻辑节点可以有一个以上的配置项,但在网络运行期间,每个逻辑节点只能有一个配置项有效。
配置功能是指 LIN 的主机节点能自动地给所有逻辑节点选择配置项,消除 NAD 和 PID 分配中存在的冲突,使网络正常工作。配置功能是确保各节点协调运作的内部功能,包含分配 NAD、分配 PID 等服务。配置功能通过传输层完成配置服务。

9.识别功能及诊断功能

识别功能
识别功能是指主机节点能够获取逻辑节点的信息,例如产品代号等。借助识别功能,主机节点和逻辑节点还可以实现一些自定义的操作。

诊断功能
诊断功能是指 LIN 网络之外的诊断设备可以直接连接 LIN 的主机节点,或者通过外部的其它网络(例如ISO11898 定义的 CAN 网络,参照参考资料[8])连接主机节点,连接后,诊断设备可以按规定的诊断协议(例如ISO15765 规范,参照参考资料[9])与 LIN 的逻辑节点通讯。与配置功能相比,诊断功能是 LIN 网络作为一个整体对外呈现的可配置、可访问的属性。

四、线性总线构造

LIN的网络拓扑为线形构造。一根LIN总线上会有一个主节点以及复数个从节点。LIN网络推荐的最大节点个数为16,最长总线长度为40米。

1.主从方式

刚刚已经说过LIN通信的方式是主从方式。即,主节点控制整个网络的通信,从节点按照主节点的调度进行通信。
对于LIN节点任务来说,可分为“主任务”和“从任务”两种。
主任务:只有主节点才有的任务,按照事先决定的时刻在网络中发送令牌,从而实现网络的传输时刻管理。
从任务:主节点和从节点双方都有的任务,数据的传输,即,监视的主任务中发送的令牌,在主节点的令牌后发送数据。只要没收到令牌,绝不发送数据。
一个令牌和一条数据构成一条LIN报文。
在LIN的标准中,令牌被称为“header”,数据被称为“response”,报文被称为“Frame”。在“header”中含有表示报文身份的“ID”,各个节点根据“ID”决定是否发送“Response”。同时,LIN报文是地址寻址方式,总线上的所有节点都能收到报文。

2.时刻表

主任务发送“header”的时刻由事先定义好的时刻表决定。LIN的时刻表中定义了包括ID、传送的顺序、以及传送的间隔等信息。主节点根据此时刻表控制整个LIN网络的通信。
另外,LIN的时刻表可以定义多个,比如“启动时的初始化模式”、“通常模式”、“诊断模式”等,根据车辆的状态切换时刻表,可以改变数据传送的周期和内容等。

3.同步方法

LIN出于对成本削减的考虑没有专门布置用于时钟同步的配线,同时,对于LIN的从节点,同样出于对成本削减的考虑一般采用误差较大的CR时钟。这样如果什么都不做的话,LIN的各个节点间容易产生误差。
通过搭载高精度晶振的主节点,将同步信号在总线上发送给各个从节点,各个从节点再根据此信号进行误差补正,从而达到信号同步的目的。
这里提一下,LIN协议中对误差的要求是±14%,而一般高精度晶振的误差为±1.5%。


总结

对LIN通信方式有了初步了解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

测机电子枸吴咬风

感谢投喂~喵

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值