理论教育 低成本汽车网络解析-汽车嵌入式系统手册

低成本汽车网络解析-汽车嵌入式系统手册

时间:2023-08-26 理论教育 版权反馈
【摘要】:这个描述语言有利于通过软件工具自动生成网络配置。图4.4描绘了1帧数据在传送期间,LIN的帧格式和称为“帧时槽”的时间周期。

低成本汽车网络解析-汽车嵌入式系统手册

几种现场总线网络已被开发来满足对低速度/低成本通信的需要,其中的通信发生在基于机电一体化的系统内,而系统则通常是由ECU和其传感器及执行机构组成的系统。这种网络的两个代表是LIN和TTP/A。达到低成本的目标不仅是因为通信控制器的简易,也是因为在微控制器上驱动通信的设置要求降低了(即计算能力低、内存少、振荡器成本低)。这些网络的典型应用包括门的控制(如门锁、开/关窗)或座椅的控制(如座椅位置电动机、占用控制)。除了对成本的考虑外,一个包括了如CAN的主干网和如LIN的几个子网的分层通信结构,可以减少在主干网上的总流量负载。

LIN和TTP/A都是主/从网络,其中一个单独的主节点协调总线上的通信,且该唯一主节点必须拥有一个准确且稳定的时基:当从属网络被查询时,只允许它发送信息。更确切地说,对话开始于由“命令帧”控制的传送,“命令帧”中包含了要求传输的信息的标识符。命令帧后面紧跟着“数据帧”,它包含了由从属网络或主干网本身发送(即信息可以由主干网产生)的要求的信息。

4.2.3.1 LIN

LIN[16,17]是低成本的串行通信系统,它被用作SAE的A类网络,其中的通信需求并不需要更高的宽带多路切换网络(如CAN)来实现。LIN由汽车行业内的一组专业公司(例如,戴姆勒-克莱斯勒、大众、宝马沃尔沃)开发,并已广泛应用在生产的汽车上。

LIN的规范程序包(LIN 2.1版本[16])不仅包括了关于主-从通信的传输协议(物理和DLL)的规范,也包括了在DLL顶部的诊断协议的规范。该程序包提供了一种描述节点能力(例如,可以使用的传输速率、由节点披露和认定的帧的特征等)和描述整个网络的语言(例如,网络上的节点、传输调度表等)。这个描述语言有利于通过软件工具自动生成网络配置。

一个LIN簇由一个“主”节点和几个“从”节点连接到一个共同的总线上组成。为了实现低成本运行,物理层被定义为一个由于EMI局限性而把数据传输速率限制到20kbit/s的单线。根据调度表,主节点决定了哪1帧应该在什么时间被传送。调度表是LIN的关键因素,它包括了需要被发送的帧的列表和与之相关的帧时槽,从而确保传送顺序的决定。当1帧调度到传送时,主节点发送一个头段(一种传输请求或命令帧)要求从属节点发送响应数据。任何感兴趣的节点都可以读总线上传送的数据帧。正如在CAN中,每条信息都必须被确定:可利用64个不同的标识符。图4.4描绘了1帧数据在传送期间,LIN的帧格式和称为“帧时槽”的时间周期。

978-7-111-52251-5-Part02-4.jpg(www.daowen.com)

图4.4 LIN帧的格式,1帧在其“帧时槽”期间被传送,时槽对应调度表的一个入口

包含一个标识符的帧的头段通过主节点传播,然后拥有该标识符的从节点将数据插入响应域来传送。“中断”符号用于发出1帧开始的信号。它至少包含13个优势位(逻辑值为0),跟随这些显性位的是一个作为中断分隔符的隐性位(逻辑值为1)。由字节字段组成的帧的剩余部分由一个起始位(值为0)和一个停止位(值为1)来划定界限,从而每个字节会产生10bit的比特流。“同步”字节有一个固定的值(它对应一个非0即1的比特流);它允许从节点检测一个新帧的开始,并在标志符字段的开始处同步。所谓的保护的标识符由两个子字段组成:头6bit用于标识符的编码,后2bit被用于表示标识符的奇偶性。数据字段最多可以包含8B的数据。总和检验码在保护的标识符和数据字段上计算出来。奇偶校验位和总和检验码使帧的接收器能够检测到传送过程中反相的位。

LIN定义了五种不同的帧类型:无条件的、事件触发的、散发的、诊断的和用户定义的。后一种类型的帧分配了一个特定的标识符的值,并且打算以特定方式使用,而这个方式并没有在规范中描述。前三种类型的帧被用来传递信号。无条件类型帧是通常在主从对话框中使用的帧类型,并且它们总是在帧时槽中发送。只有当至少一个信号组成的帧更新完成时,散发的帧才由主节点发送。通常,多个散发帧被分配到同一个帧时槽中,并且有一个已更新信号的较高优先级的帧将被传送。事件触发帧由意愿从不同的节点中获得几个信号列表的主节点使用。如果从节点产生的信号已经更新,那么从节点将只回应主节点,从而在更新不经常发生时,节省了带宽。如果不止一个从节点回应了,那么将会发生冲突。主节点通过一个接一个地请求列表中的所有信号来解决这个冲突。在文献[44]中给出的使用事件触发传送的典型例子是在一个中央门锁系统中门把手的监测。因为多个乘客同时按把手是罕见的,因此不用查询四个门中的每一个,而是可以使用一个单独事件触发帧。当然,在罕见的多个从节点响应的事件中,将会发生冲突。然后主节点会在保留连续帧时槽来查询列表的期间,通过发送列表中一个接一个独特的标识符来解决该冲突。最后,诊断帧有固定的8B大小和固定值的识别符用于主节点请求和从节点的响应,并且总是包含诊断或配置数据,这些数据的解释都定义在规范中。

还值得一提的是,LIN提供服务来发送节点进入睡眠模式(通过一个被称为“进入睡眠指令”的特殊的诊断帧),并且提供服务来唤醒它们,因为这很方便优化能源消耗,尤其是当发动机不运行时,这是一个在汽车上真正需要关注的问题。

4.2.3.2 TTP/A网络

和TTP/C一样,TTP/A[18]最初由维也纳科技大学发明。TTP/A追求相同的目标并且共享如LIN一样的主要设计原则,同时在通信控制器的层面上它提供一些类似的功能,尤其是在插件及播放功能和在线诊断服务的领域内。TTP/A实现了被称为“主从循环”的经典主从对话框,在对话框内从节点回应主节点的请求,而这个请求有一个4B的固定长度数据负载的帧。“多伙伴”循环可以使多个从节点在一个单独的命令帧后,发送总量达62B的数据。一个“散布式循环”是一个特殊的主从循环,其中从节点不发送数据;比如,它被用来实施睡眠/唤醒服务。就LIN而言,在单线传输支持上的数据传输速率等于20kbit/s,但是其他的传输支持可以使用更高的数据传输速率。据我们所知,TTP/A目前没有用在量产的汽车中。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈