重新评估 LIN 总线在车辆传感器和控制应用中的作用

时间:2023-03-14


当 Galvin Manufacturing Corp.(今天的摩托罗拉)在 1930 年代推出车载收音机时,很少有人能想象未来会是什么样子。多年来,汽车中的电子元件是收音机。当今汽车中的信息娱乐系统只是众多电控系统之一:当今现代汽车中的电子控制单元 (ECU) 数量可高达 80 个(图 1 )。难怪汽车电子元件市场一直在上升,预计到 2018 年将达到 $18.5B。

在初几年,实践是拥有独立的自主电子系统。人们很快意识到需要一种机制来使系统能够相互通信。这导致了串行通信通道(总线)等网络的引入,这些网络可以协调各个电气系统并改善整个车辆的功能。


图 1:汽车中的多个电气系统

1983 年,博世开始开发控制器局域网 (CAN) 总线,并于 1986 年正式发布该协议。即使在汽车总线标准多种多样的今天,CAN 仍然是的。在 CAN 网络中,所有节点(来自不同的 ECU)充当主节点(即没有主从拓扑)并且没有分配特定地址。相反,消息包含“标识符”。

在给定时间,多个节点可以向 CAN 总线传输数据。然后,消息标识符有助于确定消息的优先级。优先级的消息会将 CAN 总线拉至显性状态,所有其他节点停止传输。这些节点实际上是收发器,并且基于特定的功能,除了传输消息之外,它们还可以从总线中寻找特定的消息。因此,信息流发生在连接到 CAN 总线的不同节点之间。

CAN 是高度可靠的,因为它有多重错误检查,例如填充错误、位错误、校验和错误、帧错误和确认错误。在数据速率方面,CAN 支持 1MB/s。因此,CAN 是连接车辆中关键功能 ECU(例如,变速箱、温度传感器等)的默认选择。

然而,电子设备在汽车中的作用并不仅限于这些关键单元。多年来,汽车车身电子市场一直在增长。车身控制应用示例包括座椅、窗户、智能雨刷和气候控制传感器。对于车身电子设备,关键要求是确保提高车辆的舒适性和安全性。这些系统可能不需要像关键 ECU 那样高的可靠性,但它们仍然需要汽车标准来通过网络进行通信。

不同的系统和它们需要的网络类型分类如下:

对于一类,原始设备制造商使用他们自己的协议时,会出现困难,例如原始设备制造商的供应商在没有标准的情况下设计不同系统的复杂性和费用。因此,在 1990 年代后期,不同的汽车制造商成立了 LIN 联盟。该联盟终在 2002 年为这些类型的系统实施了网络标准,称为 LIN。

与更复杂和广泛使用的 CAN 总线不同,LIN(本地互连网络)是一种串行网络协议,用于车辆组件之间的通信,是由于汽车内基于微控制器的传感器之间对廉价串行通信协议的需求而产生的。

LIN 与 CAN 
CAN 的实施成本高于 LIN。导致 CAN 成本较高的因素包括:

重要的是,整个昂贵的架构对于既不需要高可靠性也不需要高数据速率的应用程序来说是多余的。

由于上述缺点,对 LIN 网络的需求增加了。LIN 总线的作用是补充 CAN 总线,而不是取代它。它是一种廉价的串行通信协议,支持汽车网络中的远程和非关键应用程序。与 CAN 不同,LIN 在主从拓扑上工作。通常,网络包括一个主站和多 16 个从站。所有通信均由主节点发起。因为所有节点都由主节点提供时钟,所以只有主节点需要精密时钟。这是 LIN 比 CAN 便宜的原因之一(其中所有节点都需要晶体或精密时钟发生器)。

LIN 的特性和优势 
LIN 的主要特性和优势如下:

表 1 提供了 LIN 和 CAN 功能的快速比较,以帮助开发人员根据不同参数的要求选择一个网络而不是另一个网络:


表 1:LIN 和 CAN 的比较

基于 LIN 的系统的组件 
设置基于 LIN 的系统远没有设置基于 CAN 的系统复杂。基于 LIN 的系统所需的组件是:

典型的 LIN 网络类似于图 2 中所示的系统, 具有一个主节点和多个从节点。


                                                      1 发动机控制单元 
                                                      2 串行通信模块 
                                                      3 物理收发器


图 2:典型的 LIN 网络

注意物理收发器:大多数 LIN 实现使用收发器来管理接口并支持更高的电压电平。这些收发器通常在微控制器外部。

要充当 LIN 网络中的从节点,MCU 需要 SCI(串行通信接口)或 SCB(串行通信块)来支持 UART 进行接口连接。LIN 协议使用 UART 作为发送和接收的基本方式。如果 MCU 的硬件中没有 UART,也可以使用软件实现。但是,不推荐使用这种方法,因为它会给处理器带来不必要的负载。作为主节点,我们需要更高端的MCU。除了支持SCI的UART之外,主节点的另一个要求是时钟发生器。

LIN 连接中使用的总线是单线的,并且必须符合 ISO9141。如今,我们拥有更先进的汽车级 MCU,它们以内置 LIN PHY 的形式专门支持 LIN。这种集成使实施更加紧凑和简单。

大多数 MCU 供应商至少在他们的一个设备系列中支持 LIN 接口。一个例子是 Cypress Semiconductor 的 PSoC(可编程片上系统),(https://www.cypress.com/psoc/),它提供了一个片上系统架构,将可编程逻辑、存储器和 MCU 集成在一个芯片上。这些器件支持可配置为 LIN 的串行通信接口,因此很有可能适合需要 LIN 的汽车应用。

除了 MCU 和 LIN PHY,通常还需要软件模块等开发工具来配置 LIN 接口的不同参数。处理器供应商通常会提供支持并行硬件和固件设计的设计环境。例如,赛普拉斯提供PSoC Designer 和 PSoC Creator。这些工具提供了一个灵活的 LIN 组件或用户模块,可以根据设计要求进行编程以工作。

MCU 供应商还需要根据符合 LIN 规范的一致性测试对其 LIN 接口进行验证或。几乎所有 OEM 都强制执行此要求,并且 MCU 供应商需要将合规性作为其开发过程的一部分。

LIN 消息帧

LIN 消息帧由标题和响应组成。标头具有固定长度,而响应由 0 到 8 个字节的数据组成。帧间响应时间是从设备响应 LIN 主设备请求所需的时间。它可能因网络上的节点而异,因为它取决于单个节点的硬件和软件实现。响应之后是校验和,它是为消息帧的数据部分计算的。

标头分为三个字段:

  1. SYNC-break 字段用于激活所有连接的 LIN 从机以收听标头的以下部分。它由一个起始位和几个显性位组成。
  2. SYNC 字段是标准数据格式字节。在 RC 振荡器上运行的 LIN 从机将使用固定数量的上升沿和下降沿之间的距离来测量总线上的当前位时间,以重新计算内部波特率。
  3. 标识符 (ID) 字段由主节点发送到所有 LIN 节点,通常包含 64 个不同值之一,并在 8 位数据中包含两个奇偶校验位。标识符包含发送方、接收方、用途和数据字段长度等信息,这些信息随后将在 LIN 总线上传输。

消息帧的结构如所示。

图 3:LIN 消息帧结构

LIN 应用 
我们已经了解了哪些类型的汽车应用需要 LIN。让我们快速浏览一下使用 LIN 网络的示例应用列表(表 2)。这与需要 CAN 以更好地了解差异的应用程序进行了比较。


表 2:典型的 LIN 应用

汽车中的电子设备数量在不断增加,其网络的复杂性也在不断增加。在不远的将来,我们将看到可以相互交谈的无人驾驶汽车。随着汽车电气网络数量和复杂性的增加,更简单和更便宜的替代方案也在增长,其中的恰好是 LIN。

LIN 已经成为大多数不需要 CAN 类型安全性的车身控制应用的标准,并且在未来也将继续成为的选择。LIN 还根据要求不断更新,发布更新版本(版本为 2.2A)以满足更新的汽车标准。这也要求汽车MCU供应商配备版本的LIN接口,使其能够在车身控制应用中发挥作用。


上一篇:为什么测量精度对 EV 性能至关重要
下一篇:使用串行内存协处理器架构实现 200-400GE 网络缓冲速度

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料