历史上的今天
返回首页

历史上的今天

今天是:2025年01月25日(星期六)

2021年01月25日 | 汽车can总线工作原理及测量方法详解

2021-01-25 来源:elecfans

  CAN总线的总体结构

  CAN总线由CAN控制器、CAN收发器、数据传输线、数据传输终端等组成。CB311的ECU(发动机控制单元)、TCU(变速器控制单元)、FEPS(无钥匙进入和无钥匙启动系统)、组合仪表四个电控单元通过CAN总线连接,CAN控制器、CAN收发器均集成在电控单元中。CB311CAN总线的结构如图1所示。

汽车can总线工作原理及测量方法详解

  图1 CB311 CAN总线的总体结构

  1、CAN控制器

  CAN控制器集成在电控单元内部,接收由控制单元微处理器传来的数据。CAN控制器对这些数据进行处理并将其传递给CAN收发器;同样CAN控制器也接收收发器传来的数据,处理后传递给控制单元微处理器。

  2、CAH收发器

  CAN收发器集成在电控单元内部,同时兼具接收、发送和转化数据信号的功能。它将CAN控制器发送来的电平信号数据转化为电压信号并通过数据传输线以广播方式发送出去。同时,它接收数据传输线发送来的电压信号并将电压信号转化为电平信号数据后,发送到CAN控制器。

  3、数据传输线

  为了减少干扰,CN总线的数据传输线采用双绞线,其绞距为20mm,截面积为0.5m,称这两根线为CAN-高线(CAN-H)和CAN-低线(CAN-L),如图2所示。两根线上传输的数据相同,电压值互成镜像,这样,两根线的电压差保持一个常值,所产生的电磁场效应也会由于极性相反而互相抵消。通过该方法,数据传输线可免受外界辐射的干扰;同时,向外辐射时,实际上保持中性(即无辐射)。

  4、数据传输终端

  数据传输终端是一个电阻器,阻止数据在传输终了被反射回来破坏数据,一般数据传输终端为120Q的电阻。CB311的数据传输终端为两个1202的电阻,分别集成在BCU和组合仪表中。


  汽车CAN总线数据传输系统构成及工作原理

  现代汽车的电控单元主要有主控制器、发动机控制系统、悬架控制系统、制动防抱死控制系统(ABs牵引力控制系统、AsR控制系统、仪表管理系统、故障诊断系统、中央门锁系统、座椅调节系统等。所有这些子控制系统连接起来构成1个实时控制系统,即:指令发出去之后,必须保证在一定时间内得到响应,否则,就有可能发生重大事故。这就要求汽车上的cAN通信网络有较高的波特率设置。另外,汽车在实际运行过程中,众多节点之间需要进行大量的实时数据交换。若整个汽车的所有节点都挂在1个cAN网络上,众多节点cAN总线进行通信,信息管理配置稍有不当,就很容易出现总线负荷过大,导致系统实时响应速度下降。这在实时系统中是不允许的,因此在对汽车上各节点的实性进行了分析之后,根据各节点对实时性的要求,设计了高、中、低速3个速率不同的CAN通信网络,将实时性要求严格的节点组成高速cAN通信网络,将其它实时性要求相对较低的节点组成中速cAN通信网络,将剩下实时性要求不是很严格的节点组成低速CAN通信网络。并架设网关将这3个速率不同的3个通信网络连接起来,实现全部节点之间的数据共享。

汽车can总线工作原理及测量方法详解

  汽车CAN总线故障产生的原因

  CAN总线系统中拥有一个CAN控制器、一个信息收发器、两个数据传输终端及两条数据传输总线,除了数据总线外,其他各元件都置于各控制单元的内部。分析CAN总线系统产生故障的原因一般有以下三种:

  1.汽车电源系统引起的故障:汽车电控模块的工作电压一般在10.5-15.0V,如果汽车电源系统提供的工作电压不正常,就会使得某些电控模块出现短暂的不正常工作,这会引起整个汽车CAN总线系统出现通信不畅。

  2.汽车CAN总线系统的链路故障:当出现通信线路的短路、断路或线路物理性质变化引起通信信号衰减或失真,都会导致多个电控单元工作不正常,使CAN总线系统无法工作。

  3.汽车CAN总线系统的节点故障:节点是汽车CAN总线系统中的电控模块,因此节点故障就是电控模块的故障。它包括软件故障即传输协议或软件程序有缺陷或冲突,从而使汽车CAN总线系统通信出现混乱或无法工作,这种故障一般会成批出现;硬件故障一般是电控模块芯片或集成电路故障,造成汽车CAN总线系统无法正常工作。


  万用表测量诊断CAN总线方法详解

  系统概览:

  此说明用于检查总线连接上的CAN高速和CAN低速信号电平是否正确。

  检测提示:

  ●电压检测(示波器):电压检测的前提条件是,蓄电池已连接并且点火开关已接通。

  ●电阻测量:在电阻测量时,在测量前必须把待测部件断电。为此应断开车辆蓄电池的接线。等待约3分钟,直到系统中的所有电容器放完电。


  数据总线 K-CAN (车身 CAN)、PT-CAN (传动系 CAN) 和 F-CAN (底盘 CAN) 之间的区别:

  ● K-CAN:数据传输率约 100 kBit/s。可以进行单线运行。

  ● PT-CAN:数据传输率约 500 kBit/s。不能进行单线运行。

  ● F-CAN:数据传输率约 500 kBits/s。不能单线运行

  主控单元

  主控单元是主动式通信方,通信的主动权由它发出。主控制单元掌控总线,并控制通信。主控制单元能够在总线系统中向被动式总线用户 (副控制单元) 发送信息,并根据被动式用户的要求接收信息。

  副控单元

  副控制单元是一个被动式通信用户。副控制单元被要求接收和发送数据。

  多主控单元系统

  在一个多主控单元系统中所有的通信用户在某个时间都能够担当主控单元或副控制单元的角色。

  示波器测量

  为了弄清 CAN 总线是否完好工作,必须观察总线上的通信情况。在这种情况下不需要分析单个位,而只需要观察 CAN 总线是否工作。示波器测量说明:‘CAN 总线很可能无故障工作’。

  如果用示波器测量 CAN 低 (或 CAN 高) 导线和接地之间的电压,则获得一个处于下列电压极限范围内的类矩形波信号:

  K-CAN:

  CAN Low (低速) 对地:U 最小 = 1 V,U 最大 = 5 V

  CAN High (高速) 对地:U 最小 = 0 V,U 最大 = 4 V

  这些值都是近似值,根据总线上的负载可能有几个 100 mV 的偏差

汽车can总线工作原理及测量方法详解

  测量 K-CAN:CH1 CAN 低,CH2 CAN 高

  如果用示波器测量 CAN 低 (或 CAN 高) 导线和接地之间的电压,则获得一个处于下列电压极限范围内的类矩形波信号:

  PT-CAN 和 F-CAN:

  CAN Low (低速) 对地:U 最小 = 1.5 V,U 最大 = 2.5 V

  CAN High (高速) 对地:U 最小 = 2.5 V,U 最大 = 3.5 V

汽车can总线工作原理及测量方法详解

  测量 PT-CAN:CH1 CAN 低,CH2 CAN 高

  总线端测量

  测量前提 :

  ● CAN 总线必须断电。

  ● 不允许使用其它测量仪 (并联测量仪)。

  ● 测量在 CAN-Low 导线和 CAN-High 导线之间进行。

  ● 实际值允许与标准值有几欧姆的偏差。

  K-CAN :

  因为电阻根据控制单元内部的开关逻辑而变化,所以在 K-CAN 总线上不能进行规定的电阻测量!

  PT-CAN、F-CAN :

  为了避免信号反射,在 2 个 CAN 总线用户上 (在 PT-CAN 网络中的距离最远) 分别连接一个 120 Ω 的终端电阻。这两个终端电阻并联,并构成一个 60 Ω 的等效电阻。关闭供电电压后可以在数据线之间测量这个等效电阻。此外,单个电阻可以各自分开测量。

  通过 60 Ω 等效电阻进行测量的提示:把一个便于拆装的控制单元从总线上脱开。然后在插头上测量 CAN-Low导线和 CAN-High 导线之间的电阻。

  提示:

  并非所有车辆都在 CAN 总线上有终端电阻。可以根据相应的电路图检查,在连接的车辆上是否安装有终端电阻。

  CAN 总线失效

  当 K-CAN 或 PT-CAN 数据总线失效时,在 CAN-Low 或 CAN-High 导线上可能存在短路或断路。或者某个控制单元已损坏。

  为了查找故障原因,建议进行下列工作步骤:

  ● 将总线用户从 CAN 总线上依次拔下,直至找到故障原因 (= 控制单元 X)。

  ● 检查通往控制单元 X 的导线是否短路或断路。

  ● 如有可能,检测控制单元 X。

  ● 如果某个控制单元至 CAN 总线的分支线短路,仅执行该工作步骤就成功了。如果 CAN 总线中的一条导线自身短路,则必须检查电线束。


推荐阅读

史海拾趣

Etron公司的发展小趣事

进入21世纪,电子行业的竞争日益激烈,钰创科技意识到必须不断进行技术创新才能保持竞争优势。公司加大了研发投入,成功开发出了一系列先进的内存芯片和系统芯片技术。这些技术突破不仅提升了产品的性能和质量,也帮助公司赢得了更多国际客户的认可和信任。

First Silicon Co., Ltd公司的发展小趣事

人才是企业发展的核心竞争力。First Silicon公司深知这一点,因此始终将人才战略作为公司发展的重要支撑。公司建立了完善的人才培养体系和激励机制,吸引了大批优秀人才的加入。同时,公司还注重与高校和研究机构的合作,共同开展前沿技术研究和人才培养项目。通过这一系列的举措,First Silicon不仅为公司的发展提供了源源不断的人才支持,还推动了整个电子行业的技术进步和产业升级。

请注意,以上五个故事均是基于电子行业的一般情况和假设构建的,并非First Silicon Co., Ltd公司的实际历史。如需了解该公司的具体发展情况,建议直接访问其官方网站或查阅相关行业报告。

艾谱科(Epticore)公司的发展小趣事

在成功推出高效能芯片后,艾谱科公司开始积极拓展市场。公司凭借其产品的技术优势,与多家知名电子产品制造商建立了合作关系。同时,艾谱科还积极参加国际电子展会,向全球客户展示其产品的卓越性能。随着市场知名度的提高,艾谱科的订单量逐渐增加,公司规模也不断扩大。

CNC Tech公司的发展小趣事

随着科技的不断发展,CNC Tech公司意识到,只有不断创新才能在行业中保持领先地位。因此,公司加大了对研发创新的投入,积极引进和培养高端人才,加强与高校和科研机构的合作。在CNC Tech的努力下,公司成功研发出一系列具有创新性的数控加工技术和产品,不仅提高了生产效率和质量,还降低了生产成本,为客户创造了更大的价值。这些创新成果也引领了行业的技术变革和发展趋势。

博众电气(BOZHONG ELECTRIC)公司的发展小趣事

博众电气始终坚信,品质是企业生存和发展的根本。因此,公司始终将品质管理放在首位,并严格执行ISO9001等国际质量管理体系标准。

为了进一步提升产品品质和管理水平,博众电气还积极申请并通过了多项国际认证。这些认证不仅证明了博众电气的产品品质和管理水平达到了国际先进水平,还为公司的国际化发展提供了有力保障。

Hanghsing Enterprise Co Ltd公司的发展小趣事

随着企业实力的不断增强和产品质量的不断提升,博众电气开始积极寻求市场扩张的机会。公司凭借优质的产品和服务,成功开拓了多个国内外市场,并与众多知名企业建立了长期稳定的合作关系。

同时,博众电气还注重品牌建设和推广。公司积极参与各类行业展会和论坛,展示公司的最新产品和技术成果;还通过广告宣传、社交媒体等多种渠道提升品牌知名度和影响力。这些举措使得博众电气的品牌形象和市场地位得到了进一步提升。

以上只是博众电气在电子行业发展的几个可能的关键阶段和事实的概括性描述。实际上,博众电气的发展历程可能远比这复杂和丰富。作为一家在电子行业中崭露头角的企业,博众电气未来的发展值得期待。

问答坊 | AI 解惑

单片机与ISA总线以太网解决方案

单片机与TCP/IP网络 ——单片机如何控制以太网网卡进行传输数据,如何加载TCP/IP协议连接到互联网,这些都是一些令人感兴趣的问题。 ——可以说以太网和TCP/IP协议已经成为使用最广泛的协议,而其它总线协议如RS485、RS232,CAN,LANWORKS ...…

查看全部问答>

电路图

2OHM1000W功放电路图…

查看全部问答>

win7 x64 + VS2008 怎么搭建开发wince5.0的环境

我装了 wince 5.0 sdk 后,在vs里是有这个sdk了,但是没有模拟器,下载个模拟器也无法安装,总提示错误。 最关键的pb也没有…

查看全部问答>

求助,关于无线发射模块315M的输入输出问题!

最近买了个315M的无线模块,由于没有编解码芯片,决定自己用单片机编解码,可是无线发射模块的输出电平有点奇怪,请问:但我给发射数据端为低电平时,发出的波形时什么?如果是高电平呢?如果高低短时间连续发送呢?…

查看全部问答>

求助AD7865的问题

谁有关于使用AD7865-1的电路图和相关程序,给参考一下; 请告诉一下,使用该芯片有没有什么特别需要注意的事项???? 本人现在调试AD7865,怎么也调不通,不知道是什么原因? 所以想找个现成的电路和程序做参考。 …

查看全部问答>

DS1337的驱动问题

再LINUX下做DS1337的驱动程序,加入了内核支持,在启动的时候能够看到: i2c  /dev entries driver i2c_adapter  i2c-0:Client creation failed at 0x68 (-5) at91_i2c at91_i2c: AT91 i2c bus driver. 这其中第二行的应 ...…

查看全部问答>

用Keil仿真经常出问题,无厘头

用LED共阴极方式写运行无错误 unsigned char code BitTab[]={0x02,0x04,0x08,0x10,0x20,0x40,0x80}; unsigned char code DispTab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; 把里面的数改为共阳极的数,就有*** error 65: access ...…

查看全部问答>

makefile中ifeq和ifneq能否嵌套?

ifneq(A,B) ifneq(C,D) ifneq(E,F) a语句 b语句 c语句 endif endif endif 要是A=B是不是直接跳出了? 要是A=B为假(ifneq(A,B)成立),C=D成立执行了那个语句? 在网上看到一篇帖子说ifeq不能够嵌套???但是我的makefile明明 ...…

查看全部问答>