null汽车总线应用技术汽车总线应用技术第二章 LIN 总线技术原理黄爱蓉
huangqcxy2010@163.com本章主要内容本章主要内容LIN 总线原理与应用
LIN的主要技术特点
LIN的通信任务和报文帧类型
LIN的报文通信
LIN的应用www.huat.edu.cn 汽车LIN总线原理与应用 汽车LIN总线原理与应用2.1 LIN 概述
LIN ( Local Interconnect Network 局部互联网) 是面向汽车低端分布式应用的低成本(0.5美元)、低速率(20kbps)、串行通信总线。 汽车LIN总线原理与应用 汽车LIN总线原理与应用2.1 LIN 概述
LIN ( Local Interconnect Network 局部互联网) 是面向汽车低端分布式应用的低成本(0.5美元)、低速率(20kbps)、串行通信总线。
由汽车行业开发,用作经济高效的子总线系统;
是CAN的下层网络;
属于SAE规范的汽车A类网络;
是CAN总线的补充,适用于对总线性能要求不高的车身系统,如车门、车窗、灯光等智能传感器、执行器的连接和控制。
LIN实现了一种具有成本效益的智能传感器和执行器的通讯方式。
汽车LIN总线原理与应用 汽车LIN总线原理与应用2.1 LIN 概述
LIN的目标
为现有的汽车网络(CAN网络)提供辅助功能
在不需要CAN总线的带宽和多功能的场合使用,降低成本。
将开关、执行元件和传感器从子总线连接到主总线(如CAN总线)。
Lin总线广泛应用的原因:
目前,高/低速CAN和J1850总线已经成为
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
的车用网络总线。这些总线速度极高,具有高抗电磁干扰性和高传输可靠性等优越的性能,但价格也较高。
大量的车身和安全性能方面的应用对车用网络总线的性能要求并不太高,只需要一种性价比更高的标准车用网络总线,而LIN总线正好可以满足这一需求。因此,目前LIN总线技术正被越来越广泛的应用到车身电子中。2 汽车LIN总线原理与应用2 汽车LIN总线原理与应用LIN 起源和发展
LIN联盟成立于1999年,并发布了LIN 1.0版本。
最初的成员有 奥迪, 宝马, 克莱斯勒, 摩托罗拉, 博世, 大众和沃尔沃 等
2000年,LIN联盟再次发布了1.1版本。
2001年,第一辆采用LIN1.1版本的量产汽车面世。
2003年,2.0版本出现。
2006年,2.1版本面世并沿用至今。
LIN的市场
LIN总线产品已经成为汽车总线的第二大市场;
第一大市场是CAN总线,其在2006年已经达到顶峰。 LIN LIN LIN节点结构LIN节点结构LIN接口由两部分组成:
协议控制器、线路接口协议控制器集成在微控制器中的一个标准UART上实现,微控制器软件负责管理LIN协议,实现以下功能:
(1)发送/接收8位字节;
(2)构成请求帧,接收为应帧;
(3)发送帧线路接口:
(1)负责将LIN总线的信号翻译成无干扰的RX信号传入LIN协议控制器;
(2)或将协议控制器的RX信号进行翻译传入LIN总线 汽车LIN总线原理与应用--主要技术特点(1) 汽车LIN总线原理与应用--主要技术特点(1)物理层采用单线连接,两个电控单元间的最大传输距离为40m
其总线驱动器和接收器的规范遵从改进的ISO 9141 单线标准。
低成本
LIN是基于SCI/UART( 通用异步收发接口的单总线串行通信)协议;
目前几乎所有的微控制器芯片上都有SCI/UART接口。
低传输速率。小于20kb/s
采用NRZ编码。LIN总线融合了I2C和RS232的特性:像I2C总线那样,LIN总线通过一个电阻上拉到高电平,而每一个节点又都可以通过集电极开路驱动器将总线拉低;像RS232那样通过起始位和停止位标识出每一个字节,每一位在时钟上异步传输。 汽车LIN总线原理与应用--主要技术特点(1) 汽车LIN总线原理与应用--主要技术特点(1)单主/多从媒体访问、无需仲裁。
在总线拓扑结构的LIN网络中,由主节点控制对传输介质的访问,从节点只是应答主节点的命令。不需要仲裁和冲突管理机制。
LIN总线的网络节点数不能超过16,否则,节点增加将会减少网络阻抗,导致环境条件变差。每增加一个节点,就会降低3%的阻抗 汽车LIN总线原理与应用--主要技术特点(2) 汽车LIN总线原理与应用--主要技术特点(2)同步机制简单
LIN通信中的从节点采用简单的自我同步机制(不需要晶体或陶瓷共鸣器)。
主节点在报文帧的头部发送同步间隙,标记报文帧的开始。
从节点根据此间隙与总线同步,无需专门的时钟同步装置,降低硬件成本。
通信确定性。
主节点控制整个网络的通信,控制不同节点的传输时间;
每个报文帧的长度是预知的;
采用调度表,可保证信号的周期性传输、保证总线不会出现超负载现象
报文的数据长度可变。
LIN应答帧报文的数据域长度可在0~8个字节之间变化,便于不同任务的通信应用。
采用奇偶校验和求和校验相结合的双重校验机制。 汽车LIN总线原理与应用—LIN网络结构模型 汽车LIN总线原理与应用—LIN网络结构模型LIN网络由数据链路层和物理层构成
数据链路层
逻辑链路控制子层(LLC)
报文滤波、恢复管理、报文确认等
媒体访问控制子层(MAC)
是LIN的核心
对来自LLC的报文封装串行化;
对来自物理层的数据进行解串、错误检测、错误标定等操作;
由故障界定管理实体进行监控;
物理层
定义了信号如何在总线媒体上传输;
定义物理层的驱动器/接收器特性。汽车LIN总线原理与应用-- LIN 的通信任务汽车LIN总线原理与应用-- LIN 的通信任务几个概念
主机节点:控制网络中各节点通信的节点
一个LIN网络上的通讯总是由主发送任务所发起的
在主节点上可执行主通信任务和从通信任务
可控制整个总线网络和协议;
主通信任务:
在主节点上运行的,用于控制总线上所有的通信,负责报文的进度表、发送报文头的任务称为主任务。
常见主任务:如定义传输速率,发送同步时间间隔、同步场、标识符ID场,监控并通过检查校验和(check sum)验证数据的有效性。汽车LIN总线原理与应用-- LIN 的通信任务汽车LIN总线原理与应用-- LIN 的通信任务几个概念
从节点:是总线上的2-16个成员,它们在主节点发送适当的ID后接收或发送数据
从通信任务
从节点从事的任务都称为从通信任务;但主节点也会执行从任务
节点接收来自主通信任务的ID
节点根据ID决定做什么。
– 接收数据
– 或发送数据
– 或什么都不做
发送数据时,节点:
– 发送2、4或8个数据字节
– 发送检验字节
汽车LIN总线原理与应用-- LIN 的通信任务汽车LIN总线原理与应用-- LIN 的通信任务汽车LIN总线原理与应用-- LIN 的通信任务汽车LIN总线原理与应用-- LIN 的通信任务 LIN协议是一主多从结构,通信只能由主节点中的主任务发起,一个完整的LIN报文帧的传输是由主任务和从任务共同实现的,主任务发送“报头”,从任务发送或接收“响应”。 汽车LIN总线原理与应用-- LIN 的通信任务汽车LIN总线原理与应用-- LIN 的通信任务LIN通信:
在总线上发送的信息,有长度可选的固定格式。
每个报文帧都包括2、4或8个字节的数据以及3个字节的控制、安全信息(同步场、标识符场和校验场)。
通过主机控制单元中的从机任务,数据可以被主机控制单元发送到任何从机控制单元。
相应的主机报文ID可以触发从机-从机通信。
汽车LIN总线原理与应用--报文帧类型汽车LIN总线原理与应用--报文帧类型(二)报文帧类型:有6种类型
无条件帧:携带数据信息;
事件触发帧:处理偶发的事件;
偶发帧:
保证在调度表确定性的条件下为系统动态行为的灵活性而设定的。
上述3中帧的报文标识符的范围为0~59(0x3b)
诊断帧(命令帧、应答帧):
携带8个字节的诊断信息或组态信息,主节点诊断请求帧的标识符为60(0x3c),从节点诊断应答帧的标识符为61(0x3d)
用户自定义帧:
可携带用户自定义的任何信息,标识符为62(0x3e),在调度时可给用户自定义帧分配报文帧时隙,每当时隙到来时发送用户自定义帧的帧头。
保留帧:
保留帧标识符63(0x3f),在LIN2.0中没有被使用。
汽车LIN总线原理与应用--报文帧格式汽车LIN总线原理与应用--报文帧格式报文传输是由报文帧的格式表示和控制。
报文帧格式:
一个主机节点发送的报文头;
一个主机或从机节点发送的响应组成。汽车LIN总线原理与应用汽车LIN总线原理与应用2.3 LIN 的报文传输
报文头包含同步间隙、同步字节和报文标识符(0~63)。
响应报文由1-9个字节构成:
其中2、4或8个字节的数据场和
1个校验和场。
报文帧之间有帧间间隔分隔;
报文与响应之间有帧内响应空间分隔;
最小帧间间隔和帧内响应空间均为0;
最大长度收到报文帧的最大长度FRAME_max限制。汽车LIN总线原理与应用--报文结构之字节场汽车LIN总线原理与应用--报文结构之字节场字节场
格式:
说明:
每一个字节场的长度由10个定时位定时(BIT TIME);
起始位(START BIT)是一个“显性”位,标志字节的开始;
8为数据位,先发送最低位;
停止位(STOP BIST)是一个“隐性”位,标志着字节场的结束。
汽车LIN总线原理与应用汽车LIN总线原理与应用报文头(HEADER FIELDS)
同步间隔(synchronisation break)
作用:标识报文的开始,由主节点发送;使得所有的从机任务和总线时钟信号同步。
同步间隔:至少13bit的显性位,之后紧随至少1bit隐性值的同步界定符。
同步界定符的作用:
用来检测接下来的同步域(Synch Field)的起始位。
汽车LIN总线原理与应用汽车LIN总线原理与应用2.3 LIN 的报文传输—报文结构
报文头(HEADER FIELDS)
同步场(SYNCH FIELD)
包含了时钟的同步信息。格式为0x55,表现为8个位定时中有5个下降沿(隐性到显性的跳变)
汽车LIN总线原理与应用汽车LIN总线原理与应用报文头(HEADER FIELDS)
标识符场(IDENTIFIER FIELD)
定义了报文的内容和长度。
6个标识符位(ID0~ID5)和2个标识符奇偶校验位(P0 P1);
ID4和ID5定义了数据场的数据长度;汽车LIN总线原理与应用汽车LIN总线原理与应用报文头(HEADER FIELDS)
标识符场(IDENTIFIER FIELD)
ID4和ID5与数据长度的关系数据长度;汽车LIN总线原理与应用汽车LIN总线原理与应用2.3 LIN 的报文传输—报文结构
报文头(HEADER FIELDS)
标识符场(IDENTIFIER FIELD)
奇偶校验位P0 P1:
⊕异或运算汽车LIN总线原理与应用汽车LIN总线原理与应用2.3 LIN 的报文传输—报文结构
数据场(DATE FIELDS)
由多个8位的字节场组成,传输由LSB开始
汽车LIN总线原理与应用汽车LIN总线原理与应用2.3 LIN 的报文传输—报文结构
校验和场(CHECK SUM FIELDS)
校验和域是数据域所有字节的和的反码。
校验和按“带进位加(ADDC)”方式计算,每个进位都被加到本次结果的最低位(LSB)。这就保证了数据字节的可靠性。
所有数据字节的和的补码与校验和字节之加的和必须是“0xFF”。
LIN报文结构—命令帧LIN报文结构—命令帧
►0x3C(ID 60)表示主节点请求帧(诊断帧),以便从主节点向从节点发送命令和数据。
►0x3D(ID 61)表示从响应帧,该帧触发从节点向主节点发送数据。
过程:
标识符为0x3c一个的“主机请求帧”,主机向从机发送数据和命令;标志符为0x3dD的“从机相应帧”触发一个从机向主机发送数据。
命令帧中的第一个数剧场为0x00~0x7F, 其用法由LIN协会定义;
剩下的命令帧用户可以自行分配.LIN报文结构—睡眠模式命令LIN报文结构—睡眠模式命令总线有两种状态:
睡眠模式:从主节点发送睡眠模式命令后到总线上出现唤醒信号结束,没有任何总线活动的这种模式。
唤醒模式:被唤醒信号唤醒之后的总线处于唤醒模式,可以有总线活动。
睡眠模式命令:
是第一个数据字节为0x00的命令帧
总线的睡眠模式可以通过任何节点的从任务发送一个唤醒帧来终止。8bit4bitLIN报文结构—唤醒LIN报文结构—唤醒唤醒过程
某一个节点的从任务发送唤醒信号后,所有的节点都运行启动过程
并等待主机任务发送一个同步间隔场和同步场;
若等待超时(TIME_OUT),请求第一个唤醒信号的节点再一次发送新的唤醒信号;
上述情况最多出现3次,此后,若还没将总线唤醒,则等待3个TIME_OUT时间,再发送唤起信号。8bit>=4bitLIN报文结构—用户自定义帧LIN报文结构—用户自定义帧
►0x3E(ID 62)表示用户定义的扩展帧,后跟任意数量的数据字节。
►0x3F(ID 63)预留供将来使用。汽车LIN总线原理与应用--LIN 的报文的长度汽车LIN总线原理与应用--LIN 的报文的长度报文帧以一个同步间隔作为开始,以校验和域作为结束。
报文帧中的字节域用字节间空间和帧内响应空间分隔。
字节间空间和帧内响应空间的长度没有定义,但限制了整个报文帧的长度。
最小的帧长度TFRAME_MIN是传输一个帧的所需要的最小时间(字节间空间和帧内响应空间应为0);
最大的帧长度TFRAME_MAX是传输一个帧的最大时间。
汽车LIN总线原理与应用--LIN 的报文的长度汽车LIN总线原理与应用--LIN 的报文的长度
汽车LIN总线原理与应用汽车LIN总线原理与应用2.5 LIN 的报文滤波和确认
报文滤波
LIN的报文滤波是基于标识符的,即每一个从机任务对应一个传送标识符。
说明:用户通过网络配置保证任务和标识符间的对应关系
报文确认
如果直到帧的末尾均没有检测到错误,则此报文对于发送器和接收器都有效。
如果报文发生错误,则主机和从机任务都认为报文没有发送。
注意:主机任务和从机任务在发送和接收到一个错误报文时所采取的措施,并没有在协议规范中定义。像主机重新发送或从机的后退操作都由用户按照应用要求在应用层程序中来实现,这些需要用户在应用层中说明汽车LIN总线原理与应用汽车LIN总线原理与应用2.6 LIN 错误和异常处理
错误检测 :有6个不同的报文错误类型
位错误:
节点在发送时也监控总线,当监控到的位的值与发送的位的值不同时,则在这个位时间内检测到一个错误。
校验和错误:
所有数据字节的和的补码与校验和之和不是“0xFF”,则检测到校验和错误。
标识符奇偶错误
所有的从机节点都能区分 ID 场中 8 位都已知的标识 符和一个已知但错误的标识符。 汽车LIN总线原理与应用汽车LIN总线原理与应用2.6 LIN 错误和异常处理
错误检测 :有6个不同的报文错误类型
位错误:
校验和错误:
标识符奇偶错误:
从机不响应错误
如果任何主机任务在发送同步场和标识符后,在最大长度时间内TFRAME_MAX中没有完成报文帧 的发送,则产生一个不响应错误。
同步场不一致错误
当从机检测到同步场的边沿在给出的容差外,则检测到一个同步场不一致错误。
没有总线活动
如果在接收到最后的一个有效信息后,在Ttime_out时间内没有检测到有效的同步间隔场和字节场,则检测到一个没有总线活动错误。
汽车LIN总线原理与应用汽车LIN总线原理与应用2.6 LIN 错误和异常处理
故障界定
故障界定主要依靠主节点,使它可以处理尽量多的错误检测、错误回复和诊断。故障界定基于系统的要求,不是LIN协议内容。
主机控制单元要检测以下错误状态:
主机任务发送:当回读自己的发送时,在同步或标识符字节中的位错误、标识符奇偶错误和没有总线活动错误需要被检测。
主机节点的从机任务:当期望或读取来自总线上的数据时,从机不响应错误和校验和错误被检测。
从机控制单元需检测以下错误情况:
从机任务发送:当回读自己的发送时,数据或校验和场中的位错误被检测。
从机任务接受:当从总线读取数据时,标识符奇偶错误和校验和错误需被检测。汽车LIN总线原理与应用汽车LIN总线原理与应用2.7 汽车上LIN总线的应用2.7 汽车上LIN总线的应用(二)
2.7 汽车上LIN总线的应用(二)
现以车门LIN网络为例介绍LIN总线设计的一般方法。
车门控制LIN网络的结构及其在车门上的布置如右图所示,该网络由主机节点、后视镜从机节点、摇窗机从机节点、门锁从机节点构成。 车门控制LIN网络2.7 汽车上LIN总线的应用(二)
2.7 汽车上LIN总线的应用(二)
主机节点采集本地各控制开关的状态并接受CAN总线上的远程信息,据此产生控制指令,并将指令转换为LIN报文帧通过LIN网络发送给相应从机节点,从机节点接收到与自己相关的报文帧后对报文帧进行拆封、解读,然后根据获得的指令控制相应的执行器动作,从而实现对车门各部件的控制。同时,在需要时从机节点分别将其控制部件所处状态反馈给主机节点,主机节点再将该状态信息通过指示灯或喇叭提供给驾驶员或通过CAN总线发送给其他控制单元。主机节点也作为本LIN网络与上层CAN网络连接的网关。 a.主机节点 b.从机节点 LIN主机节点和从机节点 CAN/LIN网关2.7 汽车上LIN总线的应用(二)2.7 汽车上LIN总线的应用(二) 主机节点主要由控制器、电源、控制按钮、LIN接口、CAN接口和指示灯几部分组成。
后视镜从机节点主要由控制器、电源、LIN接口、执行器驱动单元和执行器如后视镜调整电机、除霜加热器等组成。a.主机节点 b.从机节点 CAN/LIN网关LIN—小结LIN—小结LIN的主要技术特点
同步简单
采用主从总线访问机制,通信是确定的
数据长度可变
两种错误检验,奇偶校验、校验和,保证通信的可靠性
低速、低成本
LIN的通信任务和报文帧类型
主机任务、从机任务,实现主节点--从节点通信、从节点--从节点通信;
报文组成
LIN的报文长度
LIN的故障界定null