jackcat 发表于 2025-5-14 12:55

CAN总线的终端电阻

接触过CAN总线的小伙伴都知道,在实际项目中CAN总线都需要在首尾两端各并上一个120Ω的电阻,那么问题来了,为什么一定要120Ω,其他阻值不行吗?https://eestar-public.oss-cn-shenzhen.aliyuncs.com/article/image/20250426/20250426095925680c3dfd56c64.png?x-oss-process=image/watermark,g_center,image_YXJ0aWNsZS9wdWJsaWMvd2F0ZXJtYXJrLnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzQwCg==,t_20我们以TJA1044内部架构图为例进行展开。https://eestar-public.oss-cn-shenzhen.aliyuncs.com/article/image/20250426/20250426095925680c3dfd23352.png?x-oss-process=image/watermark,g_center,image_YXJ0aWNsZS9wdWJsaWMvd2F0ZXJtYXJrLnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzQwCg==,t_20CAN总线:显性代表0,隐性代表1。当总线为隐性时:TJA1044内部的上下两个管Q1和Q2都会截止,CANH和CANL处于无源状态,压差为0V。当总线为显性时:TJA1044内部的上下两个管Q1和Q2都会导通,CANH和CANL之间差生压差。如果总线上没有负载的时候,而且总线处于隐性时,那总线的差分阻值就会很大,致使外部很微小的能量都可以让总线进入显性,主要原因在于一般收发器的显性最小门限电压只有500mV左右。所以为了提高总线的抗干扰能力,就需要增加一个终端电阻,但是,这个阻值尽量小(同时也要考虑不能有过大的电流)。https://eestar-public.oss-cn-shenzhen.aliyuncs.com/article/image/20250426/20250426095925680c3dfd9c23b.png?x-oss-process=image/watermark,g_center,image_YXJ0aWNsZS9wdWJsaWMvd2F0ZXJtYXJrLnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzQwCg==,t_20除此之外,总线上的寄生电容也要考虑在内。总线显性时,电容充电,总线隐性时,电容放电,如果总线没有并任何的电阻的话,总线只能通过向两端的收发器进行放电了,这就影响了两个转态(隐性和显性)之间的转换时间,从而出现波形异常(爬坡),如上图所示。当信号在高速传输的路径中如果碰到阻抗不连续的情况,就会造成信号发射,也就是我们说的阻抗不连续,这个现象可以比喻成汽车在道路上行驶的时候遇到道路变窄时,汽车就很容易堵塞。https://eestar-public.oss-cn-shenzhen.aliyuncs.com/article/image/20250426/20250426095925680c3dfd58591.png?x-oss-process=image/watermark,g_center,image_YXJ0aWNsZS9wdWJsaWMvd2F0ZXJtYXJrLnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzQwCg==,t_20那加入终端电阻就可以消除或者减小这个信号反射的影响,主要靠终端电阻吸收信号的能量,使得能量不在总线上乱窜。那为什么是120Ω?其实在ISO 11898-2标准文件中就明确定义出,120Ω是通过大量的实验测试得出的最合理的阻值,如下图所示:https://eestar-public.oss-cn-shenzhen.aliyuncs.com/article/image/20250426/20250426095925680c3dfdd6f30.png?x-oss-process=image/watermark,g_center,image_YXJ0aWNsZS9wdWJsaWMvd2F0ZXJtYXJrLnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzQwCg==,t_20如果想验证实际项目中总线需要多大的终端电阻,可以通过下面手段进行测试。https://eestar-public.oss-cn-shenzhen.aliyuncs.com/article/image/20250426/20250426095925680c3dfda1137.png?x-oss-process=image/watermark,g_center,image_YXJ0aWNsZS9wdWJsaWMvd2F0ZXJtYXJrLnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3Jlc2l6ZSxQXzQwCg==,t_20在总线上并联可调电阻,通过调节可调电阻,进而观察波形即可。那这个终端电阻的封装是不是可以随意定?当然不行!这个终端电阻我们在选型时必须要考虑到接口短路的情况,也就是说在短路发生时,CAN总线的节点也必须能够承受的住短路的风险,假设CANH和电源18V发生了短路,那这个短路电流会直接通过CANH流向CANL,但是一般的CAN收发器能承受的电流也就几十ma(收发器内部有限流措施),就比如TJA1145就只有50mA。根据P=I²*R,可以得到50ma*50ma*120Ω=0.3W。考虑到环境存在高温的情况,所以电阻的功率选择在0.25W是合适的,也就是常见的1206封装,少数有0805和0603封装的。

穷得掉渣大侠 发表于 2025-5-15 11:39

确实,120Ω的终端电阻是CAN总线设计中的一个标准,它有助于减少信号反射和提高抗干扰能力。

逆鳞风暴 发表于 2025-5-15 19:15

确实,120Ω的终端电阻是CAN总线设计中的标准配置,它有助于减少信号反射,保持信号完整性。

幻想收藏家 发表于 2025-5-15 22:37

确实,120Ω的终端电阻是CAN总线设计中的一个标准配置,它有助于减少信号反射和提高抗干扰能力。

jimmhu 发表于 2025-7-2 12:21

终端电阻的使用是确保信号完整性和稳定通信的关键因素之一。

robertesth 发表于 2025-7-3 18:42

CAN总线最多支持110个节点。节点数量过多会增加总线电容,可能影响信号质量。

tifmill 发表于 2025-7-3 22:36

每段总线仅需 2 个 120Ω            

uptown 发表于 2025-7-4 11:38

CAN总线采用​​差分传输​​(CAN_H和CAN_L两根线),其信号传输依赖双绞线的特性阻抗。当信号在总线上传播时,若遇到阻抗不匹配的情况(如总线末端未接终端电阻),会发生​​信号反射​​

kkzz 发表于 2025-7-4 14:27

在总线两端各加一个120Ω电阻,适用于直线型拓扑或长距离传输,确保全段阻抗均匀

febgxu 发表于 2025-7-4 19:45

中间节点若安装终端电阻,会改变总线特性阻抗,导致信号反射。

albertaabbot 发表于 2025-7-4 21:34

CAN总线的终端电阻主要用于匹配总线的特性阻抗(通常为120Ω),以减少信号反射和驻波现象。

benjaminka 发表于 2025-7-5 22:19

终端电阻应尽量靠近CAN收发器的引脚,以减少走线长度和寄生电感。

10299823 发表于 2025-7-6 10:17

在显性状态(发送“0”)时,总线寄生电容被充电;切换至隐性状态(“1”)时,电容需通过终端电阻放电。若无终端电阻,仅靠收发器内部高阻放电会导致RC时间常数过大,延长隐性转换时间,影响通信效率

uiint 发表于 2025-7-6 14:35

在总线处于隐性状态时,终端电阻可以减少外部干扰对总线的影响,防止总线误判为显性状态。

usysm 发表于 2025-7-7 12:17

在标准CAN总线中,只需在总线两端各安装一个120Ω电阻,中间节点不需要安装。

lzmm 发表于 2025-7-7 13:15

选择适当的功率等级,以防止在高温或高负载条件下电阻过热。

adolphcocker 发表于 2025-7-10 11:35

CAN信号线应尽量短且直,避免过长走线和高频干扰

hudi008 发表于 2025-7-10 16:58

根据总线的实际拓扑结构配置终端电阻,确保所有节点都能正确接收信号。

kkzz 发表于 2025-7-11 11:04

仅在总线最远端加一个电阻,适用于短线路或星型拓扑,可降低成本但需确保最远节点匹配

timfordlare 发表于 2025-7-11 12:37

正确配置终端电阻是保障CAN总线系统稳定运行的重要环节之一。
页: [1] 2
查看完整版本: CAN总线的终端电阻