一文详解汽车电子LIN总线
0.摘要
汽车电子LIN总线不同于CAN总线。
LIN总线基本上是CAN总线的廉价补充,相比于CAN总线,它提供较低的可靠性和性能。同时LIN总线也是一个应用非常广泛的网络协议,并且越来越受欢迎。
再一次,我们准备了一个关于LIN总线的简要介绍。以下涉及多个方面的主题与研究内容。本文将结合专业知识,以一种非常简单的方式解释LIN总线和LIN协议,以使其尽可能通俗易懂。
1.什么是LIN总线?
LIN总线代表本地互联网络(Local Interconnect Network (LIN) ),用于车辆组件之间的通信。它也被称为CAN总线的补充。LIN协议具有很高的成本效益,比CAN总线便宜得多。然而,它提供了较低的性能,不像CAN 总线那样可靠。
当CAN总线太昂贵而无法为车辆中的每个组件实现应用时,LIN总线应运而生。或者说LIN Bus被创造出来是为了来应对这个挑战,并且已经完美地完成了既定目标。
2.什么是LIN协议?
LIN协议是电子设备的有线通信协议。它由一个主节点和一个或多个从节点组成。每个LIN帧由两对组成——报头和响应。报头总是由LIN主节点发送,响应由一个专用的LIN从节点或LIN主节点发送。此外,Lin协议使用两种总线状态,睡眠模式和活动模式。
LIN总线是一种低成本的协议,具有部分替代can总线系统的作用,用于车辆部件之间的通信。也称为CAN总线的补充。
3.LIN Bus的主要特点
-
Low-cost option.
-
Single wire with 1-20 kbit/s at maximum 40m bus length (+ground).
-
Operating voltage 12V.
-
Frequently used in vehicles for wipers, air conditioners, steering wheels, windows, and so on.
-
LIN clusters contain 1 master and up to 16 nodes.
-
The latest vehicles have more than 10 nodes.
-
Several data lengths (2,4 and 8 bytes).
-
Guaranteed latency time with time-triggered scheduling.
-
Sleep mode and wake-up support.
-
The physical layer is based on ISO 9141 - K-line.
-
LIN protocol support error detection and configuration.
4.LIN 总线如何工作
LIN总线也可以用于车辆的电池电源线,使用LIN over DC (DC-LIN)收发器,这被标准化为ISO/AWI 17987-8。如今,LIN Bus在所有现代车辆中几乎都是标准化的。LIN总线正在使用的主要有如下几种情形:
-
Sensors for position and temperature.
-
Speed and pressure.
-
Cruise control.
-
Wipers.
-
Radio.
-
Climate control.
-
Small motors.
-
Side mirrors.
-
Seat control.
-
Locks.
-
Rain sensors.
-
Headlights.
-
And more.
此外,LIN Bus还被用于家用电器,如洗衣机、炉灶、冰箱等。有相关的预测表明,LIN总线及其应用的需求还会继续增加。电子控制单元ECU是许多其他应用中的常见应用之一。
5.LIN Bus 与 CAN Bus对比
下面是LIN总线接口和CAN总线接口的主要差异,提到了它们的主要区别以及它们的主要优点。
Lin Bus 接口
-
Lower cost.
-
Latency time - more predictable network.
-
Overall implementation - simpler to implement than CAN.
-
Typically, LIN master works as a gateway to the CAN Bus.
-
LIN clusters have a single master.
-
LIN is settled - not event-driven.
-
Uses single wire 12V.
-
LIN offers a max of 20 kbit/s.
CAN Bus 接口
-
Uses twisted shielded dual wires 5V.
-
Uses 11 or 29-bit identifiers.
-
Very complex and robust interface.
-
CAN could have multiple masters.
-
CAN offer up to 1 Mbit/s.
6.LIN总线数据帧格式
简单地说,LIN总线消息帧由一个报头和一个响应组成。一般来说,LIN主节点通常向LIN总线发送一个报头,然后触发一个从节点。从节点发送最多8个数据字节作为响应。LIN帧格式用下图说明。
现在我们将详细解释LIN帧格式的具体部分。
中断
-
The Sync Break Field (SBF), also known as just Break is a minimum of 13 + 1 bit long.
-
Commonly used as 18 + 2 bits.
-
Operates as a start of the frame.
同步
-
Is 8 bits long.
-
Has a predetermined value of 0x55.
-
Its structure allows the LIN nodes to determine the time between rising and/or falling edges.
标识位
-
Is 6 bits long and followed by 2 parity bits.
-
The ID operates as an identifier for each LIN message.
-
Slaves determine the validity of the ID field and operate accordingly - ignore the subsequent data transmission, listen to the data transmitted from another node, and publish data in response to the header
此外,通常在同一时间使用一个从节点来获取信息。这意味着没有碰撞风险,也不需要采取仲裁。6位允许64个id,其中id 60-61用于诊断。
7.LIN Bus消息帧格式
LIN消息由标识符字节、校验和字节、同步字节和同步字段组成。
Frame types
-
Unconditional frame - 0-59 ID dec, 00-3B ID hex.
-
Event-triggered frame - 0-59 ID dec, 00-3B ID hex.
-
Sporadic frame - 0-59 ID dec, 00-3B ID hex.
-
Diagnostic frame - 60-61 ID dec, 3C-3D ID hex.
-
User-defined frame - 62 ID dec, 3E ID hex.
-
Reserved frame - 63 ID dec, 3F ID hex.
8.LIN Description File (LDF)
LIN网络由LDF描述,其中包含有关帧和信号的信息。LDF用于在主服务器和从服务器上创建软件。
使用时可能需要将原始LIN总线数据解码为物理值,作为LIN数据工作流的一部分。
要将原始数据解码为可读形式,需要从LIN帧有效负载中提取LIN信号。LIN总线解码与CAN总线解码非常相似,需要相同的信息。
9.LIN Bus 的历史
为了更好的理解LIN总线的由来, 创建LIN Bus的历史时间线如下:
-
1999 - LIN 1.0 released by the LIN Consortium (BMW, Volkswagen Group, Volvo Cars, Audi, and Mercedes-Benz)
-
2000 - The LIN Bus protocol was updated - LIN 1.1 and LIN 2.2
-
2002 - LIN 1.3 was released
-
2003 - LIN 2.0 was released with multiple changes
-
2006 - LIN 2.1 specification released
-
2010 - LIN 2.2A was released
-
2010 - 2012 - Based on LIN 2.0, SAE standardized LIN as SAE J2602
-
2016 - LIN standardized as ISO 17987:2016
10.LIN Bus未来展望
由于其低成本的特点,LIN Bus有望在现代汽车中得到更为普遍的应用。
自2015年以来,我们已经看到LIN总线的受欢迎程度有了巨大的增长,预计还会增加更多。
此外,基于它的低成本。LIN总线有可能在J1939中也会得到使用。
11.参考资料
LIN Bus Simplified: The Ultimate Guide in 2023
https://www.ti.com/lit/an/slla383a/slla383a.pdf?ts=1698552801635&ref_url=https%253A%252F%252Fcn.bing.com%252F
相关文章:

一文详解汽车电子LIN总线
0.摘要 汽车电子LIN总线不同于CAN总线。 LIN总线基本上是CAN总线的廉价补充,相比于CAN总线,它提供较低的可靠性和性能。同时LIN总线也是一个应用非常广泛的网络协议,并且越来越受欢迎。 再一次,我们准备了一个关于LIN总线的简要…...

论文阅读——GPT3
来自论文:Language Models are Few-Shot Learners Arxiv:https://arxiv.org/abs/2005.14165v2 记录下一些概念等。,没有太多细节。 预训练LM尽管任务无关,但是要达到好的效果仍然需要在特定数据集或任务上微调。因此需要消除这个…...

星环科技分布式向量数据库Transwarp Hippo正式发布,拓展大语言模型时间和空间维度
随着企业、机构中非结构化数据应用的日益增多以及AI的爆发式增长所带来的大量生成式数据,所涉及的数据呈现了体量大、格式和存储方式多样、处理速度要求高、潜在价值大等特点。但传统数据平台对这些数据的处理能力较为有限,如使用文件系统、多类不同数据…...

滚动条默认是隐藏的只有鼠标移上去才会显示
效果 在设置滚动条的类名中写 /* 滚动条样式 */.content-box::-webkit-scrollbar {width: 0px; /* 设置纵轴(y轴)轴滚动条 */height: 0px; /* 设置横轴(x轴)轴滚动条 */}/* 滚动条滑块(里面小方块) */.…...

Go学习第十五章——Gin参数绑定bind与验证器
Go web框架——Gin(参数绑定bind与验证器) 1 bind参数绑定1.1 JSON参数1.2 Query参数1.3 Uri绑定动态参数1.4 ShouldBind自动绑定 2 验证器2.1 常用验证器2.2 gin内置验证器2.3 自定义验证的错误信息2.4 自定义验证器 1 bind参数绑定 在Gin框架中&#…...

EtherCAT的4种寻址方式解析
我们知道,一个EtherCAT数据帧(frame)里面包含很多个报文(datagram),不管是什么样式的报文,它们的目的只有一个,就是读写从站寄存器或内存。所以寻址就是以什么方式访问哪个从站的哪个…...

Trino 源码剖析
Functions function 反射和注册 io.trino.operator.scalar.annotations.ScalarFromAnnotationsParser 这里是提取注解元素的方法 String baseName scalarFunction.value().isEmpty() ? camelToSnake(annotatedName(annotated)) : scalarFunction.value(); 这里如果 scala…...

element表格自定义筛选
文章目录 前言一、简介二、效果展示三、源码总结 前言 提示:这里可以添加本文要记录的大概内容: …待续 提示:以下是本篇文章正文内容,下面案例可供参考 一、简介 修改el-table的筛选…待续 二、效果展示 三、源码 使用方法…...

全方位 Linux 性能调优经验总结
Part1Linux性能优化 1性能优化 性能指标 高并发和响应快对应着性能优化的两个核心指标:吞吐和延时 图片来自: www.ctq6.cn 应用负载角度:直接影响了产品终端的用户体验系统资源角度:资源使用率、饱和度等 性能问题的本质就是系统资源已经…...
Linux机器网络检查
查看DNS file: dianTestLRSSnapshot:~$ cat /etc/resolv.conf # This file is managed by man:systemd-resolved(8). Do not edit. # # This is a dynamic resolv.conf file for connecting local clients to the # internal DNS stub resolver of systemd-resolved. This file…...

使用示例和应用程序全面了解高效数据管理的Golang MySQL数据库
Golang,也被称为Go,已经成为构建强大高性能应用程序的首选语言。在处理MySQL数据库时,Golang提供了一系列强大的库,简化了数据库交互并提高了效率。在本文中,我们将深入探讨一些最流行的Golang MySQL数据库库ÿ…...

ubuntu 22.04 源码安装 apollo 8.0
对于其他的关于GPU的安装包需求,这里不再列出,因为我之前安装过,偷个懒就不写了,哈哈哈哈1, 安装docker 安装docker命令(这里的安装命令都是在docker官网,还有安装包): 1, 设置docker的apt仓库 # Add Do…...

RK3588编译MXNet框架
目录 1. 背景 2.编译MXNet准备 3.开发板编译 1. 背景 MXNet(也称为Apache MXNet或incubator-mxnet)是一个开源的深度学习框架,它最初由华为和亚马逊AWS共同开发,并于2017年成为Apache软件基金会的孵化项目。MXNet旨在提供高效、…...

港府Web3宣言周年思考:合规困境中的“隐患”
出品|欧科云链研究院 作者|毕良寰 距离《有关虚拟资产在港发展的政策宣言》已过去一年,我们欧科云链研究院在分析全球几个主要国家和地区对Web3的监管政策及态度后,对港府的雄心壮志充满期待。然而,由于近期一些庞氏骗…...
vue点击按钮跳转页面
在Vue.js中,你可以使用<router-link>或this.$router.push()来实现点击按钮跳转页面的功能,前提是你已经配置了Vue Router。以下是两种不同的方法来实现页面跳转: 方法一:使用<router-link> <router-link> 是Vu…...

大中小企业对CRM系统的需求
在以前,CRM客户管理系统是大型企业的专属。如今,不论何种规模的企业都能够使用CRM系统。市面上的CRM有着丰富的功能类型,管理者可以从企业自身规模出发,选择适合的CRM系统。下面说说,大中小企业对CRM系统的需求。 一句…...

.net core iis 发布后登入的时候请求不到方法报错502
.net core iis 发布后登入的时候请求不到方法报错502 502 bad gateway 502 - Web 服务器在作为网关或代理服务器时收到了无效响应。 您要查找的页面有问题,无法显示。当 Web 服务器(作为网关或代理)与上游内容服务器联系时,收到来自内容服务器的无效…...

知识图谱实战应用30-知识图谱在反欺诈情报分析项目中的应用实践
大家好,我是微学AI,今天给大家介绍一下知识图谱实战应用30-知识图谱在反欺诈情报分析项目中的应用实践,现代商业环境中,各类欺诈行为日益猖獗,严重影响企业的运营和社会秩序。传统的欺诈检测方法难以满足实时性和有效性方面的要求。本文介绍了采用知识图谱技术构建反欺诈情报…...

[云原生1. ] 使用Docker-compose一键部署Wordpress平台
文章目录 1. Docker-compose概述1.1 简介1.2 docker-compose 的三大概念1.3 docker-compose配置模板文件常用的字段1.4 docker-compose 常用命令及格式 2. YAML 文件的详细介绍及编写注意事项2.1 简介2.2 yaml的特性2.2.1 语法特点2.2.2 数据结构2.2.3 引号的区别2.2.4 内置类型…...

springboot--基本特性--自定义 Banner
SpringApplication的使用 前言效果1.1 自定义banner1.2 自定义SpringApplication配置文件优先级高于程序化调整的优先级启动自定义banner关闭自定义banner 1.3 FluentBuilder API 前言 修改启动时候的修改banner 效果 1.1 自定义banner banner制定官网链接 在配置文件中设置…...

基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...

YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...