LIN协议企业培训资料ppt课件_第1页
LIN协议企业培训资料ppt课件_第2页
LIN协议企业培训资料ppt课件_第3页
LIN协议企业培训资料ppt课件_第4页
LIN协议企业培训资料ppt课件_第5页
已阅读5页,还剩114页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

LIN2.1规范,2012-03-09,概述协议规范物理层规范传输层规范节点配置和标识规范诊断规范应用程序层规范节点能力语言规范配置语言规范,概述,Overview,概述,典型车载网络分布,概述,车用总线分级,LIN(LocalInterconnectNetwork)协会成立于1998年成立时的主要成员:5家整车厂:Audi,BMW,DaimlerChrysler,Volvo,VW1家半导体制造商:Motorola1家工具提供商:MentorGraphics目前的主要成员:5家整车厂:Audi,BMW,DaimlerChrysler,Volvo,VW1家半导体制造商:Freescale1家工具提供商:MentorGraphics主要目的:LIN总线的主要目的在于提供一种低成本的车用总线,从而形成对CAN总线的补充。LIN总线已经广泛地被世界上的大多数汽车公司以及零配件厂商所接受,有望成为公认的A类网络标准。,概述,LIN总线的起源,概述,功能简单,实时性低成本低传感器/执行器级的总线基于UART数据格式、主从结构、单线12V串行通信开放、不需要使用费和版税,LIN总线概念,概述,LIN1.11999年7月,底特律SAE大会包括3部分协议规范配置语言规范API规范LIN1.22000年11月LIN1.32002年11月增加了物理层规范,LIN协议版本(1/2),LIN1.2,LIN1.3,概述,LIN2.02003年9月适应当代和未来汽车工业发展趋势为了实现节点的“即插即用”增加了诊断规范和节点能力语言规范LIN2.12006年11月目标是改进LIN2.0规范的理解力增加了传输层规范和节点配置规范形成了8个子规范,LIN1.1,LIN1.2,LIN1.3,LIN2.0,LIN2.1,LIN协议版本(2/2),概述,LIN规范组成(1/2),LIN物理层规范描述了LIN总线的物理层,包括位传输速率,时钟容错范围等LIN协议规范描述了LIN总线的数据链路层LIN诊断和配置规范描述了如何在数据链路层之上提供诊断信息和节点配置服务LIN应用程序接口(API)描述了网络和应用程序之间的接口,包括诊断模块LIN配置语言规范(LDF)介绍了LIN配置文件的格式。LIN配置文件用于配置整个网络,并作为OEM和不同网络节点的供应商之间的通用接口,同时可作为开发和分析工具的一个输入。LIN节点能力描述语言规范(NCF)介绍了描述从机节点的语言格式,LIN集群设计工具可以使用NCF文件自动地生成LIN描述文件,概述,LIN规范组成(2/2),LIN传输层规范描述了传输最高能达到4095个字节数据的方法LIN诊断规范描述了从机节点所支持的诊断服务类型,诊断服务都使用传输层,概述,串行通信线间干扰小,节省线束,传输距离长单线传输单线,总线电压12V最高速率20Kbit/s满足车身上大部分的应用需求单主多从结构不存在冲突,无需仲裁基于通用UART/SCI的低成本接口硬件几乎所有MCU有具备LIN总线的硬件基础从节点无须晶振或陶瓷震荡器就可以实现同步利用报头里的同步场实现同步,大幅度降低成本,LIN总线的特点(1/2),概述,LIN总线的特点(2/2),可计算的信号传输的延迟时间网络通信可预期性可灵活的增加或减少从节点无需改变其他节点的硬件电路一条总线最多可连接16个节点由总线电气特性决定支持多包报文传输基于ISO15765-2的传输层规范支持诊断功能支持ISO14229的诊断服务,概述,LIN网络拓扑结构,一个LIN网络由一个主任务,若干个从任务组成主节点既有主任务又有从任务从节点只包含从任务主任务负责决定总线上的报文,从任务提供每一帧的数据,概述,LIN报文帧,通信原理:主任务发送报头,从任务用响应来补充报头形成完整的报文。系统灵活性:可以自由地增减从节点,而不需要改变其它从节点的软件和硬件报文传输:报文的内容由ID来定义(跟CAN相似)广播:所有节点都能够同时地接受和响应总线上的帧,概述,LIN总线上可以传输两类数据信号报文信号位于帧的数据场中,以数字或数组的形式出现同一种信号在相同ID的报文数据场中的位置总是固定的诊断报文诊断报文由两个保留ID来传输,用来传输节点的诊断信息,数据传输,概述,负责调度网络各报文发送的顺序为每帧报文分配发送时隙(slot)发送时隙:报文可以被发送的时间不同报文的发送时隙可能不同调度表在网络系统设计阶段确定调度表使得LIN通信具有可预测性,调度表,概述,主任务可以拥有多个调度表,并在不同的调度表之间切换增加通信的灵活性,切换调度表,决策,大纲,概述协议规范物理层规范传输层规范节点配置和标识规范诊断规范应用程序层规范节点能力语言规范配置语言规范,协议规范,ProtocolSpecification,协议规范,显性间隔,同步场,响应间隔,标识符场,数据场,校验和场,报头(Header),响应(Response),间隔界定,间隔场,字节间隔,D0,D1,Dn,帧的结构(FrameSturcture),字节间隔位于每个字节之间,响应间隔位于报头与响应之间留给MCU足够的处理时间帧长度可能增长最小值可以是0,协议规范,字节场(ByteField),报头(Header),响应(Response),D1,Dn,D0,基于SCI的通信格式发送一个字节需要10个位时间(TBIT),协议规范,间隔场(BreakField),表示一帧报文的起始,由主节点发出间隔信号至少由13个显性位组成,间隔界定符至少由1个隐性位组成间隔场是唯一一个不符合字节场格式的场从节点需要检测到至少连续11个显性位才认为是间隔信号,协议规范,同步场(SyncBreakField),确保所有从节点使用与主节点相同的波特率发送和接收数据一个字节,结构固定:0X55,协议规范,标识符场(IdentifierField),标识符场,报头(Header),响应(Response),D0,D1,Dn,帧ID的范围从0到63(Ox3f)奇偶校验符(Parity)P0,P1,协议规范,数据场(DataField),数据场长度1到8个字节低字节先发,低位先发如果某一信号长度超过1个字节,采用低位在前的方式发送(小端),协议规范,校验和场(ChecksumField)(1/2),用于校验接收的数据是否正确(1个字节)经典校验(ClassicChecksum)仅校验数据场(1.3)增强校验(EnhanceChecksum)校验标识符场与数据场内容(2.0)标识符为0 x3C(60)和0 x3D(61)的帧只能使用经典校验,协议规范,校验和场(ChecksumField)(2/2),翻转八位和(invertedeightbitsum)例:Data=0 x4A,0 x55,0 x93,0 xE5Checksum=0 xE6,帧长度(FrameLength),最小帧长度THEADER_NOMINAL=34*TBITTRESPONSE_NOMINAL=10*(NDATA+1)*TBITTFRAME_NOMINAL=THEADER_NOMINAL+TRESPONSE_NOMINAL最大帧长度THEADER_MAX=1.4*THEADER_NOMINALTRESPONSE_MAX=1.4*TRESPONSE_NOMINALTFRAME_MAX=THEADER_MAX+TRESPONSE_MAX,协议规范,协议规范,帧类型(FrameType),事件触发帧,零星帧,保留帧,诊断帧,自定义帧,无条件帧,协议规范,无条件帧(UnconditionalFrame),标识符(ID)为0到59(0 x3b)标准LIN帧类型,用于周期通信主任务发出报头,相应的从任务对报头提供响应帧。所有节点接收三种情况,协议规范,事件触发帧(EventTriggeredFrame)(1/2),目的:增强了LIN总线的响应能力,避免为了很少发生的事件,而对从节点进行轮询,从而浪费了大量的带宽传输一个或多个无条件帧的数据场,标识符:059(0 x3B)事件触发帧必须有一个独立的ID,该ID与多个无条件帧的ID相关联这些无条件帧必须满足以下条件:有相同的长度;相同的校验和模型;首个数据字节不带信号在事件触发帧时隙内发送帧头,只有当相关联的无条件帧内有信号被更新时,相关联的无条件帧的生产者才发送帧响应帧响应的第一个数据字节等于PID,即响应最多可以传输7个字节的数据帧响应可由多个节点发送,当有多个节点在同一帧时隙内响应报头时会发生冲突,发生冲突时切换到“冲突解决调度表”,之后再切换回到原来的调度表,协议规范,事件触发帧(EventTriggeredFrame)(2/2),假设与事件触发帧0 x10相关联的两个普通帧,如果只有一个节点响应事件触发帧的报头,如果同时有多个节点响应事件触发帧的报头,切换调度表,进行轮询,协议规范,零星帧/偶发帧(SporadicFrame),一个或多个无条件帧共享一个帧时隙只发送信号报文,标识符:059(0 x3b)当且仅当其中的某个无条件帧有信号被更新时,主节点才发送该帧的帧头。其发布者对帧头发送响应若有多个无条件帧在同一时刻有信号被更新,则主节点根据这些无条件帧的优先级裁定发送顺序若没有无条件帧需要发送,则时隙保持空白,诊断帧用来传输诊断或配置信息,包含8个字节数据。标识符60(0 x3c):主请求帧;(首个数据字节标明具体的从节点),也用于“Go-toSleep”指令61(0 x3d):从响应帧传输方式:,协议规范,诊断帧(DiagnosticFrame),主节点,从节点,协议规范,保留帧(ReservedFrame),用户自定义帧(User-definedframe)标识符:62(0 x3e)可以传输任何信息(由用户自定义)保留帧(Reservedframe)标识符:63(0 x3f)在LIN2.1中未对保留帧进行定义,协议规范,调度表(ScheduleTable),调度表可以保证总线永远不会过载,同时还可以保证信号的周期性。LIN总线最小时间单位是时基(Tbase)。调度表中用来发送一帧报文的时间称为帧时隙(Frame_Slot),帧时隙必须是时基的整数倍,调度表是由帧时隙组成的。TFrame_Slot=Tbase*n偏移(jitter)是指一帧报文实际开始发送的时刻与帧时隙起点的时间差。TFrame_Slotjitter+TFrame_Maximum,协议规范,任务行为模型(TaskBehaviorModel)(1/2),主任务行为模型,协议规范,任务行为模型(TaskBehaviorModel)(2/2),从任务行为模型,协议规范,网络管理(NetworkManagement),初始化,初始化结束(60%VSUP,20%,80%,物理层规范,总线特性(LineCharacteristics)(1/2),物理层规范,总线特性(LineCharacteristics)(2/2),问题假设总线速率为20K,网络中有11个从节点,总线长度40米,主节点、从节点的电阻和电容均为标准值,总线的电容也为标准值。总线特性如何?解答CBUS=2201122040100=6640pFRBUS=1303030=0.75K=CBUSRBUS=4.98s经过计算总线的时间常数为4.98s,物理层规范,容错性能(PerformanceDuringFaultModes),电源或地线断路单个节点电源或地线断路,不影响剩余网络通信排除故障后,节点可重新参与网络通信总线与电源或地线短路总线通信可能无法进行,但ECU不可被损坏排除故障后,总线恢复正常通信,大纲,概述协议规范物理层规范传输层规范节点配置和标识规范诊断规范应用程序层规范节点能力语言规范配置语言规范,传输层规范,TransportLayerSpecification,传输层规范,概述(Overview),传输层应用对象诊断报文传输层功能传输层位于应用层与数据链路层之间,完成应用层的报文与数据链路层的帧之间的相互转换。实现超过8个字节的数据传输,最多可达到4095个字节传输,传输层规范,PDU打包数据单元(PacketDataUnit)一个PDU可以是一个完整的报文,也可以是一个完整报文的一部分,由多个PDU来组成一个完整的报文。请求:从客户端(如测试仪,主节点)发出的报文响应:从服务器端(如主节点,从节点)发出的报文,PDU结构(PDUStucture)(1/2),传输层规范,PDU类型单帧(SF):只用一个PDU传输报文首帧(FF):多PDU传输时,被发送的首个PDU后续帧(CF):多PDU传输时,在首PDU发送后,紧接着发送的PDU,PDU结构(PDUStucture)(2/2),传输层规范,NAD(NodeAddress),NAD从节点地址(NodeAddress)睡眠指令:0物理地址:0 x010 x7D访问一个特定节点功能地址:0 x7E访问所有从节点(只在诊断报文中使用)从节点不允许响应(不允许用在节点配置)广播地址:0 x7F访问所有从节点(广播发送)从节点不响应(推荐)用户自定义:0 x800 xFF,传输层规范,PCI协议控制信息(ProtocolControlInformation)PCI包含PDU的类型、编号和报文的有效数据长度等信息包编号:在多个PDU组成的报文中,在每个连续帧CF中必须加入包编号,第一个CF的包编号是1,第二个CF的包编号是2以此类推,如果包编号超过15则重新从0开始计数,PCI(ProtocolControlInformation),传输层规范,LEN(Length),LEN帧长度(Length)只存在于多PDU报文的第一帧中(FF中)表示报文的有效数据长度的低8位,有效数据长度的高4位在PCI的低4位中由于要发送SID和RSID,所以有效数据长度=数据总长度+1,传输层规范,SID和RSID(ServiceIDLIN_protocol_version=2.0;LIN_language_version=2.0;LIN_speed=9.6kbps;NodesMaster:Mymaster,10ms,0ms;Slaves:Myslave;SignalsMy_first_signal:1,0,Mymaster,Myslave;FramesMyframe:1,Mymaster,1My_first_signal,0;Schedule_tablesMyscheduletableMyframedelay20ms;,LIN协议版本号LIN配置语言版本号LIN总线速率,节点定义主节点,时基,抖动从节点,信号定义信号:长度,初始值,发送节点,接受节点,帧定义帧:ID,发送节点,长度信号列表,起始位,调度表定义调度表帧列表,时隙长度,配置语言规范,验证(Vertify),在CANoe中验证Great,ISeeit!,配置语言规范,进阶(Advance),尝试着给数据库增加新元素第一步,建立一个更复杂的系统NodesMaster:Mymaster,10ms,0ms;Slaves:Myslave1,Myslave2;SignalsMy_signal1:1,0,Mymaster,Myslave1;My_signal2:1,0,Mymaster,Myslave2;My_signal3:1,0,Mymaster,Myslave1,Myslave2;My_signal4:2,0,Myslave1,Mymaster;My_signal5:2,0,Myslave2,Mymaster;,FramesMyframe1:11,Mymaster,2My_signal1,0;My_signal2,1;Myframe2:12,Mymaster,1My_signal3,0;Myframe3:13,Myslave1,1My_signal4,3;Myframe4:14,Myslave2,1My_signal5,2;Schedule_tablesMyscheduletableMyframe1delay20ms;Myframe2delay20ms;Myframe3delay20ms;Myframe4delay20ms;,现在我们的数据库有了:1个主节点,2个从节点5个信号4个帧1个4时隙的调度表,配置语言规范,验证(Vertify),在CANoe中验证Itbecomesbetter!,配置语言规范,事件触发帧和零星帧(ETF/将Myframe1和Myframe2关联成零星帧,注意!它们必须/都由Master发送Schedule_tablesNormalTableMySporadicFramedelay20ms;/在调度表中放入零星帧即可!,Event_triggered_framesETF_Myframes:ETFCollisionResolving,58,Myframe3,Myframe4;/将Myframe3和Myframe4关联成事件触发帧ETF_MyframesSchedule_tablesNormalTableETF_Myframesdelay20ms;/在调度表中只需放入ETF_Myframes即可!ETFCollisionResolvingMyframe3delay20ms;Myframe4delay20ms;/万一发生冲突了,就执行这个解决ETF冲突调度表!,数据库中有形有色!,配置语言规范,验证(Vertify),思考在Trace窗口中为什么出现错误?为什么没有零星帧?,配置语言规范,诊断(Diagnostic)(1/3),上帝说:“要有诊断”于是就有了诊断!给数据库添加诊断功能Diagnostic_signalsMasterReqB0:8,0;MasterReqB1:8,0;MasterReqB2:8,0;MasterReqB3:8,0;MasterReqB4:8,0;MasterReqB5:8,0;MasterReqB6:8,0;MasterReqB7:8,0;SlaveRespB0:8,0;SlaveRespB1:8,0;SlaveRespB2:8,0;SlaveRespB3:8,0;SlaveRespB4:8,0;SlaveRespB5:8,0;SlaveRespB6:8,0;SlaveRespB7:8,0;,Diagnostic_framesMasterReq:0 x3cMasterReqB0,0;MasterReqB1,8;MasterReqB2,16;MasterReqB3,24;MasterReqB4,32;MasterReqB5,40;MasterReqB6,48;MasterReqB7,56;SlaveResp:0 x3dSlaveRespB0,0;SlaveRespB1,8;SlaveRespB2,16;SlaveRespB3,24;SlaveRespB4,32;SlaveRespB5,40;SlaveRespB6,48;SlaveRespB7,56;,诊断信号的定义,诊断帧的定义,配置语言规范,诊断(Diagnostic)(2/3),每个节点都有独有的节点属性Node_attributesMyslave1LIN_protocol=2.0;configured_NAD=0 x2;initial_NAD=0 xa;product_id=0 x1e,0 x1,0;response_error=Myslave1Error;P2_min=100ms;ST_min=20ms;N_As_timeout=1000ms;N_Cr_timeout=1000ms;configurable_framesMyframe3=0 x01;ETF_Myframes=0 x02

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论