首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
RS485终端电阻怎么选?110Ω还是120Ω?现场调试经验总结
📅 2026/10/6 7:14:52
✍️ 爱科研究院
👁 阅读 3,247
相信每个做过现场总线调试的工程师都有一段被 RS485 折腾到怀疑人生的回忆。通讯时好时坏、偶尔超时、距离一长就掉线排查到最后发现问题往往不是协议、不是程序而是总线两端那两颗不起眼的终端电阻。我最早接触 RS485 时也跟很多人一样困惑终端电阻到底该选 110Ω 还是 120Ω装一个还是装两个为什么设备手册上写 120Ω可有些老师傅张口就是 110Ω这两颗电阻选错、装错轻则波形畸变重则整个系统通讯瘫痪。这篇文章我就把这么多年在 RS485 组网、调试里关于终端电阻踩过的坑、验证过的方法一次性说清楚。不管是刚入门的学生、做嵌入式开发的兄弟还是常年跑现场的自动化工程师都能在这里面找到可以直接拿走用的经验。1. RF485物理层与终端电阻的作用1.1 为什么差分信号还需要终端电阻很多人有个误区RS485 是差分信号A、B 两根线的电压相减就能出数据抗干扰能力已经很强了怎么还需要终端电阻这里得先理解一个物理现象信号在线缆里传播本质上是一个电磁波向前推进。当这个波走到线缆末端时如果末端阻抗和线缆的特性阻抗不一致能量不会全部被吸收一部分会反射回来。这个反射波叠加在原信号上就会让波形出现过冲、振铃、畸变。你可以想象成在走廊里喊一嗓子如果走廊尽头是敞开的大空间声音直接散掉如果是一堵实心墙回声就会很清晰。RS485 线缆末端如果不做阻抗匹配就相当于那堵实心墙反射回来的能量会把原来的差分信号搞得乱七八糟。标准 RS485 收发器的差分输出一般只有 1.5V 到 5V 的幅度反射信号哪怕只是原信号的三四成也足以让接收端的逻辑判断出错。尤其是在长距离、高波特率场景下这个问题会非常致命。1.2 终端电阻的匹配原理与等效电路终端电阻的作用说穿了就是在线缆末端并联一个电阻让这个电阻的阻值等于线缆的特性阻抗。这样电磁波传到末端时能量被电阻吸收不会反射回来。正常一条 RS485 总线需要在物理最远端的两端各接一个终端电阻。电阻跨接在 A、B 差分线之间。当总线两端各有一个 120Ω 电阻时从发送端看进去等效阻抗是两个电阻串联后再跟线缆并联的模型理想情况下驱动力矩等效负载约 60Ω。这也是 RS485 芯片手册里常说“驱动器可以驱动 32 个单位负载、等效 60Ω”的原因。值得强调的是终端电阻关注的不是直流电阻而是高频特性下的阻抗匹配。因此电阻本身的材质、引脚引线长度也会影响效果。现场应用时我一般推荐使用普通 1/4W 金属膜电阻就够了但引脚要尽量短直接焊在接线端子或者设备接口旁边。1.3 短距离低速场景可以不加吗这个问题被问过很多次。理论上如果线缆长度相对于信号波长很小反射信号衰减很快不加终端电阻也可能正常工作。比如 10 米以内的两个设备点对点通讯波特率只有 9600这时候不少板子不加终端电阻跑得好好的。但我自己的习惯是无论长短能加就加。原因是现场情况远比实验室复杂你这次不加能跑下次线缆换了个走向、旁边多了一台变频器、波特率从 9600 调到 38400隐患就会立刻爆发。而且很多 RS485 收发器芯片内部本来就有微弱的上拉和下拉用于失效保护。有没有终端电阻波形差异在示波器上非常明显。不加终端电阻远端波形往往带着振铃加了之后立刻变成干净的方波。2. 110Ω与120Ω只差10Ω为什么能折腾人半天2.1 110Ω从哪里来120Ω又从哪来查 RS485 相关的历史资料会发现一个有意思的现象老一点的美系设备资料里经常写 110Ω欧系和国内主流工控设备则清一色 120Ω。120Ω 的来源非常明确TIA-485 标准明确规定 RS485 总线使用的双绞线特性阻抗应为 120Ω所以标准配套的终端电阻就定为 120Ω。现在市面上绝大多数 RS485 专用电缆特性阻抗也是按 120Ω 设计的。110Ω 的来源则要追溯到更早的通讯时代。Bell 202 调制解调器标准以及早期电传设备使用线缆的特性阻抗为 110Ω很多设备厂商延续了这一设计习惯导致一批老式设备、部分欧洲仪表和 PLC 通讯模块的内置终端电阻是 110Ω。这跟 RS-422 时代遗留下来的习惯也有关系。所以 110Ω 不是错误只是历史遗留标准。关键在于你的系统里不能同时混用这两种电阻更不能让一个系统里出现“一端 110Ω、一端 120Ω”的搭配。2.2 线缆特性阻抗才是真正的参考值选择终端电阻阻值正确参考依据不是设备铭牌而是你实际使用的线缆特性阻抗。只有电阻阻值等于线缆特性阻抗匹配才是完全的。市面上的 RS485 专用电缆特性阻抗通常为 120Ω但也有人图方便直接用五类网线、普通双绞线这类线缆的特性阻抗一般是 100Ω。严格来说用 100Ω 网线布 RS485 总线时终端电阻选 100Ω 更合适但说实话RS485 驱动器的设计兼容范围比较宽两端用 120Ω 也能跑只是匹配度稍微差一点。我个人的选型原则是这样的使用 RS485 专用电缆终端电阻选 120Ω这是最标准的做法使用五类/超五类网线布线终端电阻可以选 120Ω也可以用 100Ω但必须保证两端一致维修替换老设备时如果原系统用的是 110Ω 内置电阻新买的终端电阻尽量选 110Ω 配套或者把内置电阻断开统一改成 120Ω。注意同一条 RS485 总线上两端的终端电阻阻值必须一致。一端 110Ω 一端 120Ω 的做法会导致两个末端反射系数不同波形不对称比不加终端电阻还难排查。2.3 混用和内置电阻是现场最大的两个坑第一个坑是阻值混用。我在现场就遇到过自动化系统里一端的终端电阻是 120Ω另一端用的是一批旧设备设备内部跳线默认接了 110Ω。表面上系统能跑但总线信号幅度明显偏低而且通讯距离一超过 200 米就开始偶发误码。原因是两端阻抗不对称驱动器的负载也不均衡。第二个坑更隐蔽是设备内置终端电阻。现在很多 RS485 转接器、中继器、仪表、PLC 通讯模块为了使用方便内部都集成了终端电阻通过拨码开关或跳线帽控制。很多工程师不知道这回事要么全部拨到“开”要么全部拨到“关”。全部拨开的话如果系统里有 3 个以上设备同时启用了内置终端电阻A-B 之间等效阻抗会远低于 60Ω。这时候驱动芯片负载过重输出信号幅度会被拉低设备多了发热也厉害。我之前量过一组全是默认开启终端电阻的设备总线上 A-B 静态电阻只有 20Ω 出头通讯基本瘫痪。全部拨关也不行总线末端没有任何匹配反射严重。正确做法是先画总线拓扑确定哪两个设备在物理两端只把这两个设备的内置终端电阻开关打开其余全部关闭。3. 终端电阻选型的实战决策3.1 先定拓扑再定终端方案RS485 组网的第一原则是总线型的菊花链结构所有设备从总线上引短下线接入而不是星型结构。终端电阻的位置不是看你从哪台主站开始数而是看线缆物理上最远的两个端点。举一个典型例子主站 PLC 在控制柜里通过一根 RS485 总线连接分布在车间里的 5 台仪表其中 3 号仪表离主站最近但 5 号仪表在车间最远端。这时候终端电阻应该装在主站侧和 5 号仪表侧而不是 1 号仪表侧。如果现场存在短下线stub比如从总线接线盒引了 5 米线到某个设备这根 5 米下线如果过长在高速通讯时会形成一个小的反射源。经验做法是下线长度尽量控制在 1 米以内或者保证波特率低、反射影响小。实在避免不了长下线最好的办法是把这个设备挪到总线主路径上让它充当总线中间的一个节点而不是挂在末尾。对于星型或者树型拓扑标准 RS485 无法完美处理通常的折中方案是在每个分支末端都加终端电阻但这样会导致总等效阻抗偏低驱动能力不足时就要加中继器或者改拓扑结构。3.2 用万用表倒推终端电阻是否装对在断电情况下用万用表量总线 A-B 之间的电阻是判断终端电阻有没有装对最直接的手段。这个方法不需要示波器任何一个现场工程师都能做。以标准 120Ω 终端电阻为例总线两端各并联一个 120Ω 电阻从任意一端量进去等效直流电阻理论上接近 60Ω如果量到 55Ω 左右大概率两端装的都是 110Ω 电阻如果量到 40Ω 左右说明可能有三个终端电阻并联或者电阻值偏小如果量到接近 120Ω说明只有一端接了终端电阻如果量到接近开路说明两端都没接。不过要注意万用表量的是直流电阻实际总线上可能还有其他并联负载比如某些设备的失效保护偏置电路、防雷管、TVS 管都会让实测值偏低。但只要量出来的数值大致在 50Ω 到 70Ω 之间基本可以判断终端配置是正常的。如果你在此基础上还加了偏置电阻计算时要考虑偏置电阻和终端电阻并联后的值。比如主机端 A 线上拉到 5V 用 1kΩ 电阻、B 线下拉到 GND 用 1kΩ 电阻这两个电阻通过终端电阻形成分压回路对测量结果会有影响实际量到的阻值会比 60Ω 略低。3.3 偏置电阻、失效保护与终端电阻的关系RS485 总线空闲时没有任何节点在驱动总线A-B 之间的电压可能是 0V这对很多接收器来说属于未定义状态会出现乱码。为了解决这个问题芯片厂商设计了失效保护接收器在 A-B 电压低于某个阈值比如 -200mV时输出确定的逻辑电平。但失效保护不是万能的。在总线空载或只有一个终端电阻的情况下A-B 电压可能落在阈值附近造成判断不稳定。现场最稳妥的方案是在主站端额外加上拉和下拉偏置电阻A 线通过一个电阻接到 5VB 线通过一个电阻接到 GND让空闲时 A 比 B 高 200mV 以上。偏置电阻的阻值选择有讲究。阻值太小待机功耗大且拉低总线等效阻抗阻值太大分压效果差不足以建立稳定的偏置电压。经验值是 470Ω 到 1kΩ具体取决于总线上的设备数量和终端电阻值。如果总线两端各有一个 120Ω 终端电阻一颗 560Ω 上拉和一颗 560Ω 下拉配合失效保护接收器实测效果很好。这里要特别提醒偏置电阻不是终端电阻它们的作用完全不同。终端电阻解决阻抗匹配和反射偏置电阻解决总线空闲时的电平确定性。很多人把终端电阻和偏置电阻混为一谈结果调试的时候发现空闲电平还是乱跳这种混淆我在知乎和论坛上见过太多次。4. 实操安装与常见问题排查实录4.1 终端电阻的位置、接法与屏蔽处理终端电阻的安装位置有两个要求物理末端、A-B 之间并联。很多人接线时喜欢把终端电阻并接在设备的接线端子上这没问题但要注意这个设备必须是总线物理上的最远端设备。如果总线末端还有一段几米的线悬空没接设备终端电阻最好装在整条电缆真正结束的位置而不是装在倒数第二个设备上。A、B 的极性也经常搞反。RS485 标准里 A 对应差分负端B 对应差分正端但不同厂商的设备端子标注并不统一有的标 A、B有的标 D、D-有的标 P、N有的标 485、485-。这本身还好说最坑的是 DB9 接口。RS485 走 DB9 时不同厂家的定义各不相同有的用 1 脚和 2 脚有的用 3 脚和 8 脚完全没有任何统一标准。所以拿到一个 DB9 转 RS485 的接头时不要只看线色一定要用万用表通断档或拆开看内部走线确认引脚映射。屏蔽层处理方面RS485 电缆的屏蔽层应该单端接地一般是在主站端接地避免形成地环路。终端电阻接好之后屏蔽层不需要跨接在终端电阻两端而是应该沿着总线拉通在末端做好绝缘处理。现场如果遇到强干扰可以把屏蔽层在末端通过一个 1nF 的电容接地抑制高频干扰同时阻断地环路。4.2 用示波器看波形判断终端电阻是否到位万用表只能判断电阻装没装示波器才能看出信号质量。有条件的项目我强烈建议在总线两端各放一支探头或者用差分探头观察 A-B 之间的波形。正常的 RS485 波形应该是干净的方波逻辑“1”时 A-B 电压为负大约 -1.5V 到 -5V逻辑“0”时为正大约 1.5V 到 5V边沿陡峭没有明显的过冲和振铃。如果波形出现下面几种情况基本可以和终端电阻挂钩远端波形有明显的高频振铃上升沿之后跟着一串衰减振荡最典型的原因就是没有终端电阻或者终端电阻开路波形上升沿变缓、幅度比发送端低很多可能是终端电阻数量太多驱动器负载过重波形出现台阶或畸变检查有没有短线分支、阻抗不连续点以及两端终端电阻阻值是否一致。用普通双通道示波器观察 A 对 GND、B 对 GND 两条波形也可以但要注意探头地线夹子要尽量短不然地环路会引入噪声把原本正常的波形测出异常来。现场没有差分探头时我常用 A-B 数学通道功能来合成差分信号前提是两路探头的延迟要一致。4.3 三个现场排查案例实录案例一1200 米总线偶发超时最后查到是内置终端电阻被误开。车间里一台主站带了 20 台仪表正常情况下 9600bps 跑 1200 米没有问题但实际运行中每隔几分钟就会有一次超时。我断电后量 A-B 电阻只有 34Ω明显偏低了。顺着节点一个一个查发现有三台仪表的内置终端电阻拨码都在 ON 位置。把多余的两个拨掉只保留物理最远端的那台仪表内置电阻A-B 电阻恢复到 58Ω通讯恢复正常。案例二USB 转 485 模块与设备点对点通讯失败。一个测试台用 USB 转 485 模块直接连设备距离不到 2 米一开始终端电阻都没接通讯时好时坏。量波形发现远端振铃严重。在设备端并了一个 120Ω 电阻模块这边也打开内置终端电阻后波形立刻干净了问题解决。越是短距离越容易被忽视但 2 米短线加上边沿很陡的收发器反射一样会造成误码。案例三两种阻值混用导致信号不对称。某系统一端用的是某品牌的 RS485 中继器内置 110Ω 终端电阻另一端自己接了一个 120Ω 电阻。实测通讯距离超过 300 米后不断误码示波器上看正负半周波形不对称。把中继器内部的 110Ω 断开换成统一的 120Ω 后传输距离恢复到了 800 米以上。这个案例让我彻底明白现场选型不是看单个电阻标称而是看整个链路的一致性。4.4 常见问题速查表故障现象可能原因排查方法通讯完全不通A-B 无波形接线错误、A/B 接反、收发器损坏先查线序和端子定义再查设备供电和收发器方向脚通讯偶发误码、超时缺少终端电阻、终端电阻过多、阻值不一致断电量 A-B 电阻确认在 50Ω~70Ω 之间且两端一致距离一长就掉线未接终端匹配、线缆阻抗与终端电阻不匹配、屏蔽层未处理检查两端终端电阻检查线缆类型处理屏蔽层接地波形振铃严重总线末端反射终端电阻缺失或开路补接终端电阻用示波器对比补接前后波形空闲时乱码缺少偏置电阻总线空闲电平不确定在主站端 A 上拉、B 下拉470Ω~1kΩ设备发热严重终端电阻过多驱动器过载只保留两端终端电阻拔掉多余内置电阻雷击或静电损坏缺少防护器件屏蔽层处理不当加 TVS 管、气体放电管屏蔽层单端良好接地5. CAN和RS485终端电阻的异同兼看物理层容错5.1 CAN的120Ω和RS485的120Ω不是一回事现场总线领域还有一个大户叫 CAN它同样使用 120Ω 终端电阻。经常有人问RS485 和 CAN 都是差分信号线缆也差不多终端电阻能不能互换着用结论是阻值上可以换但技术实质不同。CAN 总线的物理层标准明确规定总线两端各接一个 120Ω 电阻任何一端偏离太大都不行。CAN 正常工作时显性电平靠发送器拉低总线隐性电平靠终端电阻让总线回到 2.5V 共模电压。也就是说CAN 的 120Ω 终端电阻不仅是阻抗匹配还承担着建立隐性电平的功能。RS485 则不同终端电阻只是为了阻抗匹配即使没有电阻驱动器和接收器也能正常工作只是信号质量差。所以同一个 120Ω 电阻放在 RS485 上是辅助角色放在 CAN 上就是必需角色。另一个区别是拓扑容错。CAN 对拓扑的要求相对严格总线两端必须各有一个终端电阻中继器还会处理终端电阻的复制问题。RS485 的容错性稍好一些在短距离、低速场景下甚至可以不接终端电阻也能跑但这也让很多人养成了不规范的习惯。5.2 容错测试时为什么先查终端电阻做 CAN 物理层容错测试时常见的手段包括总线短路、对电源短路、对地短路、断线、单节点脱离等。其中断线测试特别能暴露终端电阻的问题。比如一条 500kbps 的 CAN 总线如果一端终端电阻丢失发送节点发出的显性电平传播到开路端时会产生反射反射回波使得总线上出现振铃。在高速率下振铃会穿过隐性电平阈值造成节点误判为新的显性位接收端直接报错。RS485 做故障排查时逻辑也类似但 RS485 没有像 CAN 那样自动重发机制一旦反射导致采样错误对应用层来说就是直接丢帧。所以不管 RS485 还是 CAN现场物理层容错测试的第一件事就是确认总线两端的终端电阻在位且阻值正确。这个步骤要放在查线缆通段之前做原因很简单万用表量 A-B 电阻是最快、最不依赖其他条件的检查手段而线缆通断情况需要两端有人配合才能测全。6. 现场调试的个人检查清单6.1 我每次接RS485总线的固定动作踩过的坑多了自然就形成了一套固定流程。现在每到一个现场接 RS485 总线我都会按这个顺序来基本能杜绝大部分低级问题。第一步确认拓扑。把这根总线上的所有节点列出来搞清楚主站位置、物理最远端设备、中间节点和分支情况。不画图不施工拓扑错了后面怎么查都别扭。第二步检查终端配置。把所有设备的内置终端电阻开关状态拨到图纸要求的位置物理两端保留终端电阻其余全部关闭。如果没有内置电阻就在两端的接线端子上并接 120Ω 金属膜电阻引脚尽量短。第三步断电量电阻。万用表拨到电阻档在总线两端各量一次 A-B 电阻确认数值在 50Ω 到 70Ω 之间。如果数值异常马上排查是终端电阻数量不对还是接线存在短路。第四步上电看波形。有条件就上示波器分别在主站端和远端看 A-B 差分波形确认没有振铃、幅度正常、边沿清晰。没有示波器就通电跑一段时间通讯观察有无偶发误码。第五步处理屏蔽和地。屏蔽层在主站端接地末端做好绝缘。注意设备之间的地电位差必要时加隔离或者共地。6.2 哪些工具值得常备跑现场这么多年我的工具包里这几样东西是常年备着的一支好的数字万用表带真有效值和通断蜂鸣功能一个小型示波器现在很多便携式的自带电池频率 100MHz 足够还有一小包 120Ω 和 110Ω 金属膜电阻以及配套的防水接线端子、热缩管。万用表是排查终端电阻问题的第一工具示波器是验证信号质量的最终依据。没有示波器的工程师遇到信号问题只能“盲调”效率低不说还不一定找得到根因。另外我会准备一小卷标签纸每根 RS485 线两端都标清楚 A、B、屏蔽、机柜编号。现场线缆一多没有标签全靠线色认神仙也救不了。这个习惯帮我节省了无数次查线时间强烈建议每个工程师都养成。终端电阻这件小事看上去只是两颗电阻但背后是整个物理层的匹配、反射、抗干扰逻辑。搞懂它RS485 调试的很多疑难杂症都能迎刃而解。
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/10/6 7:09:52
Java数据结构与算法实战:从ArrayList扩容到KMP匹配避坑指南
2026/10/6 7:09:52
LDO环路稳定性深入解析:极点分布与ESR补偿实践
2026/10/6 7:09:52
ESP32-S3四层板设计实战:电源完整性与射频布局优化指南
2026/10/6 7:49:54
基于 Jinja2 的自动化 README 生成模板:解析 python-docs-samples 的 README.tmpl.rst 渲染机制
2026/10/6 7:49:54
MIT 6.S081 util 实验篇(lab1):sleep (easy)
2026/10/6 7:49:54
深度解读 remoteintech.company 的 Wolfram 公司档案:从 Frontmatter 到页面渲染的完整链路
2026/10/6 7:49:54
AWS SDK for Java 2.x 实战:Amazon ECR 仓库全生命周期管理入门场景
2026/10/6 7:49:54
深入理解 JavaScript 中 `[1]` 与 `[0]` 的 Truthiness 与隐式类型转换
2026/10/6 7:44:53
基于 YOLO11 的海底垃圾视觉巡检系统:水下 ROV + Streamlit 全流程实战
2026/10/6 1:04:29
搭建无线EEG采集前端:BW16+ESP32-CYD实时波形显示实战
2026/10/6 1:04:29
CH10D功放芯片DIY音箱实战:从选型到调试的完整指南
2026/10/6 1:04:29
视频序列目标跟踪实战:解决ID跳变与遮挡丢失
2026/10/5 4:43:56
Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化
2026/10/6 4:47:52
多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系
2026/10/5 13:05:37
hindsight:面向LLM应用的事后可观测性工程实践
2026/10/5 20:28:25
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
2026/10/5 20:28:23
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026/10/5 20:28:21
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)