关键字: LIN网络
介绍
长期以来,许多大的汽车生产商采用的是对汽车所有节点进行集中控制的解决方案。这些采用集中控制的节点负责为车窗升降、锁门和车镜位置调整等几种用户操作提供接口和控制。
过去,这些采用集中控制的节点基于高性能的MCU,这个MCU负责处理模块中的各种功能。
模块通常通过CAN总线连接,现在该方法已在大量汽车平台中得到实施。虽然该方法能够解决大量联网问题,但同时也导致基础结构太过复杂、速率要求过高。
汽车行业的发展趋势继续对生产商提出更多要求。创新和功能增强一直是竞争市场的驱动因素:在现有平台上实施这些功能已变得越来越困难。
增强各个集中控制节点的MCU功能是解决问题的一个途径,但是,MCU规格增大、互连数量增加、缺乏灵活性等问题最终会导致效率降低。
还有一种方法是降低集中控制的集成度,将部分功能移植到更小,更可靠的节点。本地互联网络(LIN)是实现该目的的理想网络,提供了一种低速率、低成本的实施方法。
本文将以本地互连网络为例,重点介绍这些简化的网络。将讨论几种LIN网络方案,并且比较各个解决方案的优劣势。
LIN概况
LIN总线是针对低成本应用而开发的汽车串行协议。它对现有CAN网络进行了补充,支持车内的分层式网络。本协议是简单的主/从配置,主要流程在主节点上完成。为了减少成本,从节点应当尽量简单。
LIN总线是主从协议,总线中的所有数据传输都由主节点发起。现在有两种完全不同的方法可以将数据传输到从节点,即主-从传输(主节点中的从任务传输数据)或从-从传输(主节点发送帧头,从某个从节点传输数据,然后由另一从节点接收该数据)。这两种方法具有不同的优势和劣势。
使用LIN协议的信息传输定时是可以预测的。该协议是时间触发型,不需要总线仲裁,同样可以计算每条信息帧在最差环境的定时。每条信息帧的传输都由主节点上执行的调度表控制。调度表在既定时间传输信息帧帧头。
网络实施
本节主要介绍单个LIN网络、多个LIN网络和混合CAN/LIN网络的各个方面。
单个LIN网络(多个门节点)
在这类网络中,车身控制器模块(BCM)将通过单个LIN网络与其它所有节点相连。如下图所示:
这类网络具有非常直接的结构体系,LIN连接有效地取代了CAN解决方案。虽然LIN协议最初是设计为对CAN进行补充(而不是替换CAN),但是如上图所示的连接可以实现一个简单的LIN解决方案。
这是一个能降低成本的解决方案,因为它不需要任何CAN节点。BCM是LIN 网络的主节点,所有LIN节点都可以接入LIN网络上传输的所有信息。采用该种解决方案,网络上通常拥有5个LIN节点。减少节点数量和定义初始信息传输方法使网络更直接有效。
但是,制定调度(定义哪条信息会在网络中以什么顺序出现)比较困难。如果该系统使用从-从通信,就可以简化调度表的制订过程,并能有效地将网络流量减少到最小程度。例如,如果一个车门有任何键盘操作,这时主节点需要作出决策:网络上的任何节点都能在同一个信息帧内响应。
这类网络信息流最短,从而引起的EMC问题最少。同时,流量密度的降低,还有助于减少辐射。由于所有节点都通过单线连接,接头数量减少到最少,这样增加了可靠性。
既然该方法具有如此显著的优势,为什么许多生产商不实施该解决方案呢?原因如下:首先,网络上各个节点的复杂度与CAN解决方案没有太大区别。每个车门节点仍然需要控制车镜、车窗升降和锁门等操作,仍然是居于高性能MCU的方案。
在安全性十分重要的应用中(如汽车),每个节点应完全依靠"单主节点/单线"连接。如果使用本网络的汽车发生撞车,那么所有节点都很容易被破坏,进而可能无法响应。
在低功率应用中(仍以汽车为例),网络需要频繁的返回到低功率状态,这时所有节点都处于"睡眠"模式。尽管所有LIN节点都能唤醒网络,但主节点可能需要一定时间才能决定哪个节点负责唤醒网络。
两个LIN网络(左边和右边)
为了克服单个LIN网络的缺点,部分公司开始使用双LIN网络。结构图如下:
BCM控制两个完全独立的LIN网络,使得制定调度表变得相对简单,网络灵活性也增强,即使出现撞车事件,大部分网络仍能保持完整状态。同时采用两个完全独立的LIN网络,有利于各个网络准时进行通信。
但是,这个方法仍然有几个缺点。首先,各个节点智能没有降低,仍然需要高性能的MCU。其次,尽管信息定义变得更简单,但两个网络之间的信息交换变得困难,有时比较慢。在这种配置中,虽然键盘作为LIN节点配置在网络右侧,但键盘的大量功能却需要左手方网络控制,这会导致响应时间延迟的问题。
具备LIN分层结构的CAN
仅仅依靠LIN不能克服所有的局限。
因此,在汽车应用中,怎么应用LIN呢?我们在前面的介绍中提到,LIN是作为CAN的补充,而不是彻底替换CAN。下图是CAN/LIN混合网络的解决方案:
如前所述,通常BCM和四个车门通过一个CAN网络连接。这是目前大量生产商采用的典型方案。这时,每个车门内的高性能控制器(MCU),如常见的Freescale HC908AZ60A, 直接控制车窗和车镜。
采用LIN结构实现车门功能,就可以选择规格更小的MCU(如HC908GZ16),其除了能为BCM通信提供必要的CAN接口,还有足够的资源去控制单个LIN网络。在本例中,驾驶员车门MCU除了是BCM 的CAN 接口,还是控制后视镜、键盘、锁和车窗升降等操作的LIN网络的主节点。
这样做虽然会增加车门内的MCU,但如果对MCU和LIN状态机进行合适的选择,就可以获得功能更强大、更灵活的分布式系统。
在当今飞速变化的行业中,客户要求更多能满足其需求的定制产品,灵活性是实现这种需求的重要因素。通过在车内引入规格更小的单独模块,汽车生产商能够迅速修改其标准产品平台,去迎合客户的需求。
车门控制
前面的例子介绍了车门内部的典型LIN网络,同时还针对上面提及的局限性提出了解决方法。但是,现在车门网络仍然存在几个问题,特别是功能失效和安全问题。车镜是系统中最容易被破坏的部件,在市区驾驶时经常被人取走,从而造成网络中断,甚至给部分生产商带来无法承受的风险。在安全方面,大量罪犯可以轻松取走车镜,从而获得驾驶员车门MCU的直接接入。这又是一个重大风险。
有几种方法可以减少这种风险。方法之一如下:
在本例中,车门内部有两个LIN网络。从图上可以看到,车镜与系统其它部分有效地隔离开,大大降低车镜被取走而带来的危害。任何罪犯行为只能访问驾驶员车门MCU,但无法接入关键组件,如门锁等。
还有一种方法是从LIN子节点控制车镜。
在本例中,安全和可靠性问题都能够有效解决。车镜由键盘MCU或LIN节点直接控制。两种方法都是合适的系统设计。
典型的LIN节点
上图介绍了车门内部的LIN网络。
下面是车内常见LIN节点的例子。
驾驶员车门模块
在上面的系统中,该模块是车门网络的主节点,提供车门内部LIN网络的控制和定时功能。它能控制车门内所有LIN 节点,同时也充当车身控制模块(BCM)和本地LIN 网络之间的网关。
后视镜模块
典型的新型后视镜镜通常能够支持X、Y方向和折叠功能。车镜模块还保存车镜位置等详细信息,有时驾驶员或乘客车镜还安装温度感应器来持续监控外界环境。该信息一般被用作驾驶员信息,也可以作为复杂的发动机管理系统信息。车镜模块通常是LIN从节点。
车窗升降模块
电子车窗包括升、降和防夹控制。
车窗升降节点一般是LIN 从节点,有时前车窗模块同时充当BCM的LIN从节点和后车门的主节点。
门锁模块
锁定功能包括"标准锁"和"童锁"。车门内部的LIN直接与模块连接,这也是实现童锁功能的前提条件,这样司机才能取消特定的门锁功能。门锁模块一般是LIN 从节点。
前开关面板
汽车舒适性控制的大量功能(如锁门、车窗升降和车镜控制的开关)有时集成到单个模块中,作为LIN网络的从节点。
通信方法
如前所述,LIN网络的数据通信主要包括两种不同方法:主-从数据传输或从-从数据传输。两种方法都由主节点控制,有各自的优势和劣势。
主-从通信
主节点传输信息ID(参见第2节),进而发送数据传输命令。网上所有LIN节点将该信息进行转换,然后再进行相应的操作。
根据该主-从通信模式,主节点内部有一个从节点正在运行。它对正确的ID进行响应,然后将规定的比特传输到LIN总线。不同LIN节点在网络中都拥有完整的LIN帧,同时还按照各自的不同应用提供主节点数据和流程。
例如,主节点可能希望所有门锁都打开,这样每个门锁节点被设定为对单个信息进行响应,然后完成开锁;或者主节点可能传输四条不同信息,然后选择性地打开门锁。
主-从通信模式将大部分调度操作转移到主节点上,从而简化其它节点操作。因此,LIN从节点硬件大幅减少,甚至可能减少为单个状态设备。另一个优势是,由于主节点能够同时与所有节点通信,已信息和要求的ID数量都大大减少。
主节点将所有数据通信发送到全部节点(然后在所有数据传输到其它设备之前从节点上接收该数据),这样可以检查传输数据的有效性。该操作允许主节点对所有通信进行监测,减少并消除潜在错误。
但是,这种通信方法速度缓慢。这时,LIN节点很难及时地接收和处理数据,并选择性地将它传输给其它节点。
从-从通信
主节点同样发送信息帧头。但是,在从-从通信模式下,响应"从任务"的是远程节点,如键盘。当键盘"填满"信息帧数据字节时,网上所有节点都能看到整个传输过程,并响应相应的操作。本例中,车窗LIN 从节点响应键盘LIN节点数据。
与主-从通信相比,从-从通信方法更迅速。各个信息帧上的节点共用信息,从而极大地提高响应速度。单个信息可以打开两扇车窗,关闭一个车门,打开三个车门或者移动车窗。这样就可以明显减少网上的数据流量。
但是,从-从通信方法有重要的局限:首先,各个从节点的时钟源未知,因此从节点将数据传输到网络时(根据主节点请求),数据可能发生漂移。主节点有一个精确度很高的时钟,数据漂移有较大的误差范围,但另一个接受数据的LIN 从节点却没有,这会导致数据误译。其次,这种情况下,主节点不显示"从-从"通信已经失效。
数据传输速率
信息帧传输持续时间
下表介绍了2、4、8字节信息在传输速率为600bit/sec 和19200bit/sec时的最长持续时间。本协议专用于1kbps和 20kbps之间的运行,建议在LIN技术规范中也使用这些传输速率。
标准的信息传输时间 | ||||
信息中的字节数(N)(字节) | T帧-最小(10xN) +44(字节) |
TFRAME_MAX (TFRAME_MIN+1) x 1.4(字节) T帧-最大 |
Tx Time @ 9600bit/sec(ms) | Tx Time @ 19200bit/sec(ms) |
2 | 64 | 91 | 9.45ms | 4.74ms |
4 | 84 | 119 | 12.4ms | 6.12ms |
8 | 125 | 175 | 18.23ms | 9.11ms |
这些数据可能看起来速率很慢(特别是与CAN 比较时),但这样规定有多方面的原因,两大主要原因是最大限度地降低EMC辐射和简化从节点。
结论
随着汽车的一些智能控制功能转移到最小的节点中,对满足这样要求的小而可靠的微处理器的需求越来越多。
LIN网络方案使大量节点之间的互连变得简单、经济高效,因此是理想的解决方案。同时,系统设计人员在设计时还应考虑大量其它因素。