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