출처: Modbus 중국 네트워크(modbus.cn) —— 중국 최고의 Modbus 통신 프로토콜 기술 커뮤니티
本文:渐进式解决Modbus통신문제:从物理层到적용的完整排查手册 · 作者:modbus기술팀 · 发布于 2026-07-01
요약:Modbus RS-485 통신不通怎么办?本文从物理层到적용层,通过真实프레임分析和排查도구演示,给出完整的渐进式排障方法。关键词:Modbus 통신故障排查、RS-485 排障、Modbus 디버깅方法、Modbus RTU 无响应、CRC 검증错误。
在산업 자동화领域,Modbus 통신出문제是最让人头疼的事——不是因为它复杂,而是因为故障点太分散。物理层、데이터链路层、적용层,任何一个环节出문제,现象可能一样:마스터发请求,슬레이브不回。
这篇글不是教你 Modbus 프로토콜基础。我假设你已经在用 Modbus,现在的문제是「不通」,你需要一份能照着操作的排障清单。我们就从最底层开始,一层一层往上查。
核心关键词:Modbus 통신故障排查、RS-485 排障、Modbus RTU 无响应、CRC 검증错误。更多 Modbus 기술글请访问 modbus.cn。
一、典型的现场故障长什么样
先看三个真实시나리오,如果你遇到过类似的,这篇글就是写给你的。
시나리오 1:某污水处理站,16 个 Modbus RTU 슬레이브挂在一条 RS-485 总线上。每天下午三点准时전체掉线,十分钟后自动恢复。查了三个星期,最后发现是隔壁泵房的光伏逆变器每天下午三点启动,EMI 干扰耦合到 485 线上,把信号淹了。
시나리오 2:一台三菱变频器通过 RS-485 接入게이트웨이,마스터发기능 코드 03 读频率,偶尔能读到,偶尔报 CRC 错误。통신 속도是 9600。折腾了两天最后发现是 A/B 线接反了——마스터的 A 接到了슬레이브的 B。但为什么偶尔还能读到데이터?因为 RS-485 收发器有一定的共模容限,在信号质量好的时候真能通,一有干扰就 CRC 报错。
시나리오 3:产线上新加了一台温控器,주소设成 05,挂上去之后 05 号没反应,但原来的一台 07 号也不通了。拔掉新设备,07 号恢复正常。查到最后,新设备默认설정了 120Ω 终端电阻,总线上一共挂了三个终端电阻——阻抗不일치,信号反射导致所有슬레이브时断时续。
这三个시나리오指向同一个道理:Modbus 不通,不能猜,要一层一层排除。 下面就是这个排查的完整路径。
二、排查综述:从物理层到적용层的四层模型
Modbus 통신문제的排查路径,按层次从低到高:
┌────────────────────────────────────────────┐
│ 第四层:적용层 │
│ 슬레이브 주소、레지스터 매핑、기능 코드、바이트序 │
│ 现象:슬레이브回异常码,或데이터值明显不对 │
├────────────────────────────────────────────┤
│ 第三层:데이터链路层 │
│ 통신 속도、패리티、CRC/LRC 체크섬 │
│ 现象:CRC 错误、帧不完整、偶发性丢帧 │
├────────────────────────────────────────────┤
│ 第二层:电气层 │
│ A/B 线接法、终端电阻、偏置电阻、接地 │
│ 现象:完全不通、데이터全是乱码、间歇性断连 │
├────────────────────────────────────────────┤
│ 第一层:物理연결 │
│ 线缆通断、接头氧化、屏蔽层、布线路径 │
│ 现象:마스터发데이터,슬레이브完全无反应 │
└────────────────────────────────────────────┘
排障铁律:永远从第一层开始排查,确认没문제再往上走。 不知道有多少人在第三层(改통신 속도、改超时时间)上浪费了三天,最后发现是第一层的 A/B 线接反了。如果你只记住一句话,记住这句。
三、第一层:物理연결检查
3.1 万用表打线——最基本的第一步
先把所有设备断电。万用表调到电阻档或通断档,测:
- A 线从마스터到最远端슬레이브是否导通(电阻应 < 10Ω,取决于线长和线径) - B 线同样 - A 和 B 之间不能短路(电阻应为无穷大或接近无穷大) - A/B 分别对 GND 不能短路
如果通断都正常,再把电送上,万用表调到直流电压档:

- A 对 GND:静止状态下약 2.5V ~ 3.5V(取决于偏置电路) - B 对 GND:静止状态下약 1.5V ~ 2.5V - A-B 差分电压:静止状态下약 0.2V ~ 2V,A 应高于 B
如果 A-B 差分电压接近 0V,甚至 A 低于 B,你的偏置电路有문제。 很多廉价 USB-485 컨버터没有内置偏置电阻,挂在一根长总线上工作时,空闲状态下 A-B 差分会漂移到不确定状态,导致슬레이브的 UART 收到随机垃圾데이터。
3.2 A/B 线到底怎么接——这个坑踩的人最多
RS-485 的 A/B 배선没有统一的行业标签표준。不同设备厂商对 A 和 B 的定义可能是反的。以下是你可能会遇到的기호방식和它们的对应关系:
| 常见기호 | 另一种기호 | 空闲电压 | 설명 |
|---|---|---|---|
| A / + / D+ / TX+ / 正 | Non-Inverting | 高于 B | 同相端 |
| B / - / D- / TX- / 负 | Inverting | 低于 A | 反相端 |
快速判定方法:断电状态下用万用表二极管档测。 红表笔接 GND,黑表笔接 A——大多数 RS-485 收发器芯片(如 MAX485、SN75176)的 A 脚对 GND 有一个反向保护二极管,会测出正向压降약 0.6V。B 脚对 GND 也一样。如果测不出来,换个极性再测。
还有一个更暴力的方法:如果接了不通,把 A 和 B 交换一下试试。不是笑话——这在现场是最常用的「排障手段」。因为很多变频器的 RS-485 端子标注就是反的。

3.3 终端电阻——什么时候接、接在哪
终端电阻 120Ω,接在总线的最两端。这句话每个人都听过。但实际엔지니어링中这些细节才决定成败:
什么时候必须接。 总线길이超过 50 米,或통신 속도 ≥ 19200。判断표준不是길이,是你用示波器看信号波形——如果有明显的过冲或反射台阶,加终端电阻。
什么时候可以不接。 测试台上,一米短线,통신 속도 9600。这时候加终端电阻反而可能因为驱动能力不足导致信号幅值下降。
一个容易被忽略的坑。 很多 RS-485 设备内部已经통합了终端电阻,通过跳线或DIP 스위치활성화。如果你不知道这一点,在总线上手动加了 120Ω,而设备上也开着 120Ω,等于并联成了 60Ω——信号幅度大幅下降,反而更不通了。这就是前面的시나리오 3。
排查方法:所有设备断电,万用表电阻档测 A-B 之间的直流电阻。正常应该是几 kΩ 到几十 kΩ(偏置电阻决定)。如果测出来是 60Ω 或 120Ω,설명至少有一个终端电阻在起作用。逐个拔设备,看哪个设备拔掉后阻抗变了。
3.4 屏蔽和接地——大部分人做错的地方
RS-485 屏蔽层应该单端接地,在마스터或게이트웨이侧接大地。如果两端都接地,地电位差会在屏蔽层上形成环流,反而把干扰引入信号线。
另外,不要用网线的空闲线对做 RS-485。网线是 100Ω 特性阻抗,RS-485 电缆是 120Ω 特性阻抗,不일치会导致高速率下信号反射严重。短距离(< 10 米)凑合能用,但不要作为正式엔지니어링方案。正规的 RS-485 电缆是一对双绞线加屏蔽层,特性阻抗 120Ω,比如 Belden 3105A 或等效型号。
四、第二层:电气层检查
物理연결确认没문제之后,如果还是不通或有误码,进入电气层。
4.1 用示波器看波形
示波器探头挂在 A 线对 GND 和 B 线对 GND,观察:
- 空闲状态下 A 和 B 的电压值是否稳定(A 应高于 B 至少 200mV) - 有데이터传输时,A 和 B 是否呈现표준的差分信号(A 和 B 镜像对称) - 波形上升沿和下降沿是否干净(不应该有明显的台阶或圆弧)
如果波形边缘很圆,可能是线缆电容太大(线太长或线径太细),或者驱动能力不足。降低통신 속도通常能缓解。
4.2 偏置电阻(Fail-Safe 偏置)
RS-485 표준要求差分입력电压 ≥ 200mV 时判定为逻辑 1,≤ -200mV 时判定为逻辑 0。但在总线空闲(所有设备都不驱动)时,差分电压可能落在 -200mV 到 +200mV 的不确定区间内,导致수신器출력随机데이터。
这就是为什么需要偏置电阻:在总线的某一个位置(通常在마스터或偏置电路所在处)用两个电阻把 A 上拉到 VCC、B 下拉到 GND,保证空闲状态下 A > B 且差值 > 200mV。
常见的偏置电阻取值是 680Ω 或 560Ω(上拉和下拉各一个)。但要注意:偏置电阻和终端电阻是并联关系。如果你的终端电阻是 120Ω,偏置电阻各 680Ω,实际的空闲差分电压是:
V_diff = VCC × R_term / (R_term + R_pullup + R_pulldown)
= 5V × 120 / (120 + 680 + 680) ≈ 0.405V = 405mV
这个值 > 200mV,满足要求。但如果你把终端电阻换成了 60Ω(两个 120Ω 并联),差分电压就只剩약 210mV,卡在临界点上。所以终端电阻的数量和位置是规划偏置电阻的前提。
五、第三层:데이터链路层检查
电气层没문제,但통신还是不对——进入프로토콜本身的排障。这一层需要시리얼 포트抓包도구。
5.1 确认슬레이브是否支持 Modbus
这里不是让你看设备설명书——설명书写了支持不代表固件真的开了。用시리얼 포트助手发一条最简单的请求帧,看슬레이브回不回。
以 Modbus RTU 为例,发기능 코드 03(读유지 레지스터):
슬레이브 주소: 01
기능 코드: 03
시작주소: 00 00(레지스터 40001)
레지스터数: 00 01(读 1 个)
CRC: 84 0A
전체 프레임: 01 03 00 00 00 01 84 0A
把你的 USB-485 컨버터接到슬레이브的 RS-485 口上,시리얼 포트助手设好통신 속도/데이터 비트/패리티/정지 비트,发上面这帧。如果슬레이브回了:
01 03 02 00 2A 39 9B
설명슬레이브支持 Modbus,레지스터 40001 里的值是 0x002A(10진수 42)。如果没有任何响应,继续查下面几项。
5.2 통신 속도和帧형식
Modbus RTU 的默认帧형식通常是:9600-8-N-1(통신 속도 9600,8 데이터 비트,패리티 없음,1 정지 비트)。但很多老设备用 9600-8-E-1(짝수 패리티)或 19200-8-N-1。还有一些国产设备默认 4800。
如果你的 USB-485 컨버터통신 속도设对了,슬레이브会回应。如果통신 속도不对,슬레이브会收到乱码。슬레이브看到乱码后的行为取决于其固件实现——有的设备直接丢弃,有的设备会尝试분석失败后复位수신缓冲区,表现为完全沉默。
不要猜통신 속도。 如果手头没有设备手册,用一个笨办法:USB 逻辑分析仪(几十块钱的那种就行)挂在 A、B 线上,看슬레이브上电后有没有发데이터。有些슬레이브启动后会主动发一段标识信息,测量这段데이터的位宽就能反推통신 속도。
5.3 패리티、정지 비트、데이터 비트
9600-8-N-1 vs 9600-8-E-1 的区别不仅是一个패리티。帧总길이变了:
- 8-N-1:1 시작位 + 8 데이터 비트 + 1 정지 비트 = 10 位/바이트 - 8-E-1:1 시작位 + 8 데이터 비트 + 1 패리티 + 1 정지 비트 = 11 位/바이트
如果你用 8-N-1 发,슬레이브用 8-E-1 收,슬레이브会把你的정지 비트当패리티来验证。反之亦然。这会导致偶发性的체크섬错误而非전체错误——因为정지 비트是固定的逻辑 1,有 50% 的概率碰巧「체크섬通过」。
这就是为什么통신 속도、패리티、정지 비트的排列组合要从设备手册里确认,而不是凑出来。 16 个슬레이브,7 种통신 속도 × 3 种체크섬 × 2 种정지 비트 = 42 种组合。凑出来纯粹是折磨自己。
5.4 抓包分析——区分「没发出去」「没回应」「回了错误」
用시리얼 포트监控软件(比如 Device Monitoring Studio、Serial Port Monitor,或者简单粗暴地用两个 USB-485 컨버터背靠背接在总线上)抓实际的收发데이터。
看三个关键指标:
마스터发出的帧是否正确。 用 CRC 계산器验证你发出的帧里的 CRC 对不对。一个常见错误是 CRC 高低바이트反了——Modbus RTU 规定 CRC 低바이트在前,高바이트在后。比如帧 01 03 00 00 00 01 的 CRC 是 0x840A,帧里应该是 84 0A 而不是 0A 84。
슬레이브有没有响应。 如果마스터帧正确发出但在合理的时间内(比如 200ms)没有任何데이터回来,检查슬레이브 주소是否일치、总线上是否只有一台设备在线(加另一台后可能주소冲突)、슬레이브是否处于「监听」모드。
슬레이브响应了什么。 如果슬레이브回了异常帧,기능 코드最高位置 1 再加异常码(比如 01 83 02 C0 F1,83 = 03 + 0x80,异常码 02 = 非法데이터주소),那至少链路层是通的,문제在적용层。
5.5 CRC 검증错误的精准排查
CRC 검증错误是最常见的链路层문제,可能的原因有这些,按频率从高到低:
1. A/B 线接反。 差分极性反了,所有데이터 비트反转,CRC 大概率不对。但有共模容限时偶尔能对——这就是시나리오 2。 2. 통신 속도偏差。 两个设备的时钟偏差导致采样点漂移。如果통신 속도偏差超过 ±2%,수신端 UART 会采样到错误的位值。特别是在高温환경下,MCU 内部 RC 振荡器的温漂可能达到 ±5%。 3. 배선松动或接触不良。 一个位的丢失会导致后续所有바이트移位,CRC 必错。 4. 电磁干扰。 变频器启动瞬间、电焊机工作时的强 EMI 会直接改变传输线上的电平,导致位错误。如果 CRC 错误只在特定设备启动时出现,基本可以锁定干扰源。
六、第四层:적용层检查
链路层通了(슬레이브有响应且 CRC 正确),但返回的데이터不对或功能不如预期。
6.1 슬레이브 주소
Modbus RTU 帧的第一个바이트是슬레이브 주소。주소范围 1-247。
주소 0 是广播주소——마스터用 0 发写命令,所有슬레이브执行但不回应。如果你用주소 0 发了读命令,不会有任何슬레이브响应。
很多新设备出厂默认주소是 1。如果你总线上已经有了一台주소 1 的设备,又加上一台出厂默认주소也是 1 的新设备,两台设备会在마스터寻址 1 时同时响应——总线冲突,마스터收到的데이터是两路信号的叠加,表现为 CRC 错误或乱码。
排查方法:一次只往总线上接一个슬레이브,逐个测试。 这是最笨但最有效的方法。一次测通了再加下一个。
6.2 레지스터주소偏移
Modbus 的레지스터주소有两个概念,搞混了就会读到错误的데이터:
- 프로토콜주소: 帧里填的 16 位数值,从 0 开始。기능 코드 03 读유지 레지스터时,프로토콜주소 0 对应的是第 1 个유지 레지스터。 - PLC 주소: 厂商在手册里写的번호,可能从 1 开始,也可能从 40001 开始。
举例:设备手册写「频率设定值在레지스터 40003」。这个 40003 可能有三种含义:
| 厂商习惯 | 프로토콜주소 | 你在帧里填的值 |
|---|---|---|
| 40003 就是프로토콜주소 | 40003 | 40003(超出单바이트范围,看厂商怎么处理) |
| 40003 表示유지 레지스터区第 3 个 | 2 | 00 02 |
| 40003 表示유지 레지스터区第 3 个(从 0 开始) | 3 | 00 03 |
如果你不确定,从프로토콜주소 0 开始,读 10 个连续레지스터。看哪个주소返回了你认识的值(比如设备型号编码、固件버전号、或者当前频率这些已知데이터),反推厂商的编址방식。
6.3 功能和기능 코드
Modbus 표준기능 코드和对应的데이터区:
- 01:读코일(0xxxx) - 02:读이산 입력(1xxxx) - 03:读유지 레지스터(4xxxx) - 04:读입력 레지스터(3xxxx) - 05:写单코일 - 06:写单유지 레지스터 - 15:写多코일 - 16:写多유지 레지스터
但并不是每个슬레이브都实现了所有기능 코드。一台简单的温控器可能只支持 03 和 06——你发 16(写多레지스터)它不认识,回异常码 01(非法기능 코드)。
如果슬레이브回了异常码,异常码含义如下:
| 异常码 | 含义 | 常见原因 |
|---|---|---|
| 01 | 非法功能 | 슬레이브不支持这个기능 코드 |
| 02 | 非法데이터주소 | 레지스터주소超出范围 |
| 03 | 非法데이터值 | 쓰기的值不可接受(超出量程等) |
| 04 | 슬레이브设备故障 | 슬레이브自检失败 |
| 05 | 确认 | 命令已수신但需要时间处理 |
| 06 | 슬레이브设备忙 | 正在处理上一个命令 |
收到异常码是好事——설명链路层通了,物理层没문제,你可以把注意力集中在적용层。
6.4 바이트序(大端/小端)
Modbus 프로토콜规定多바이트데이터以大端序传输(高바이트在前)。但 32 位浮点数怎么传?표준里没有定义。于是各家厂商各搞一套:
- 一些厂商用 ABCD 序(最高바이트在前) - 一些厂商用 CDAB 序(两个字交换位置,每个字内部仍然大端) - 一些厂商用 BADC 或 DCBA
如果你读两个连续的유지 레지스터拼成一个 32 位浮点数,读到的值和期望值差好几个数量级,大概率是바이트序反了。用已知值——比如把频率设成 50.0Hz(IEEE 754 表示是 0x42480000)——读回来,看16진수排列顺序,反推厂商的바이트序。
七、逐步추가슬레이브的正确方法
现在假设你排查完了一个슬레이브,통신正常。接下来要加更多슬레이브——这是最容易出幺蛾子的环节。
正确做法:
1. 总线上只留一个슬레이브(슬레이브 A),确认 A 통신正常。 2. 断开슬레이브 A,只接슬레이브 B,确认 B 통신正常。 3. A 和 B 同时接上,确认两者都통신正常。 4. 如果 A+B 正常,断开所有,只接슬레이브 C,确认 C 正常。 5. A+B+C 同时接上,确认三者都正常。 6. 以此类推。
如果在第 3 步 A+B 同时接上后出문제,检查这两件事:
- 주소冲突: A 和 B 的슬레이브 주소是不是相同。 - 终端电阻累积: A 和 B 是不是都内部활성화了 120Ω 终端电阻。参见 3.3 节。
如果在第 5 步 A+B+C 同时接上后出문제(前两步都正常),大概率是:
- 总线驱动能力不足。 每个슬레이브的 RS-485 收发器在수신状态下都有一个입력阻抗(표준 ≥ 12kΩ)。按照 RS-485 표준,一条总线上最多 32 个单位负载。如果你用的是 1/4 或 1/8 负载的收发器,数量可以更多。但如果用最便宜的 MAX485 级别芯片,挂 30 个슬레이브后信号衰减会很明显。솔루션:选 1/4 或 1/8 负载的收发器,或者加 RS-485 中继器。 - 总线拓扑有문제。 RS-485 必须是菊花链(Daisy Chain),不能星星形分支。星形拓扑会产生信号反射,反射位置刚好在分支点。如果现场布线已经星星形了且没法改,加 RS-485 Hub 或中继器来隔离各分支。
八、마스터轮询策略与超时设置
8.1 超时时间怎么算
Modbus RTU 的超时分两个层面:
문자间超时(t1.5): 两个连续바이트之间的最大允许间隔,设为传输 1.5 个문자的时间。用来判断一帧是否종료。在 9600 통신 속도下,一个문자(11 位)약 1.15ms,t1.5 ≈ 1.75ms。
帧间超时(t3.5): 两个连续帧之间的最小间隔,设为传输 3.5 个문자的时间。在 9600 통신 속도下,t3.5 ≈ 4ms。
如果你的마스터发完请求后等 30ms 还没有收到响应,不能简单地认为슬레이브坏了。有些슬레이브(尤其是低速 MCU 驱动的温控器、电能表)处理一个请求需要 50-100ms。把这个值设成至少 200ms 作为시작值,确认통신正常后再根据实际响应时间调短。
8.2 先读后写
在尝试写任何레지스터之前,先读一个已知的레지스터(比如设备型号、固件버전号、或者一个你已知当前值的레지스터)。确认读操作正常后,再尝试写。
不要一上来就往코일里写 1。 你不知道那个코일控制的是什么——可能是急停信号。用 06 기능 코드写유지 레지스터同理,先想清楚你写的레지스터是干什么的。
九、排查清单速查表
在산업 제어现场,你可能没有条件一步一步按本文顺序来。把这张表拍照存手机里,디버깅时对着查。
| 순번 | 检查项 | 도구 | 通过표준 |
|---|---|---|---|
| 1 | A/B 线通断 | 万用表电阻档 | A 线导通,B 线导通 |
| 2 | A/B 线不短路 | 万用表电阻档 | A-B 电阻 > 1kΩ |
| 3 | 空闲电压 | 万用表 DC 电压档 | A > B,差值 > 200mV |
| 4 | 终端电阻 | 万用表电阻档(设备断电) | A-B 电阻 120Ω 或 > 1kΩ(取决于是否활성화) |
| 5 | 偏置电阻 | 万用表电阻档(设备断电) | A-VCC 和 B-GND 各약 680Ω |
| 6 | 통신 속도/체크섬/정지 비트 | 设备手册 | 与슬레이브手册一致 |
| 7 | 发空帧测试 | 시리얼 포트助手 | 슬레이브对 01 03 00 00 00 01 84 0A 有回应 |
| 8 | CRC 正确 | CRC 계산器 | 마스터发出的 CRC 与계산一致 |
| 9 | 响应 CRC 正确 | CRC 계산器 | 슬레이브响应的 CRC 与계산一致 |
| 10 | 슬레이브 주소唯一 | 逐个接入测试 | 总线上没有重复주소 |
| 11 | 레지스터주소正确 | 从 0 开始读连续 10 个 | 返回데이터含已知值 |
| 12 | 바이트序正确 | 读已知值对照 | 32 位值분석符合厂商사양 |
十、FAQ:高频排障문제
Q1:마스터发데이터,슬레이브偶尔回偶尔不回,통신 속도 9600。为什么?
A:偶尔性문제最常见的原因是 A/B 线接反、终端电阻설정不当、或电源干扰。先查 A/B 极性,再查终端电阻位置和数量,最后用示波器看波形。
Q2:USB-485 컨버터在测试台上正常,一到现场就不行。换了好几个컨버터都一样。
A:两个可能。一是现场的 RS-485 线路上有强共模干扰,普通 USB-485 컨버터的共模抑制比不够。换一个带隔离的산업용 USB-485 컨버터(比如宇泰 UT-890A 或同等产品)。二是现场的电脑 USB 口接地和 RS-485 设备的地之间有电位差,通过컨버터形成回路。隔离型컨버터能解决这个문제。
Q3:多个슬레이브轮询时,第一个总是通,后面几个经常不通。
A:检查마스터的轮询间隔。如果你在发完上一个请求后바로发下一个,而总线上的上一个响应还没传完,就会发生冲突。确保两次轮询之间的间隔 ≥ 슬레이브数量 ×(请求时间 + 响应时间 + t3.5)。在 9600 통신 속도下,如果每个슬레이브的平均响应时间是 15ms,10 个슬레이브的轮询间隔至少设 200ms。
Q4:CRC 总是报错,检查了 A/B 极性和통신 속도都没문제。
A:用逻辑分析仪或示波器检查信号质量。看上升沿和下降沿的斜率,如果过于平缓(> 30% 位宽),可能是线容太大或驱动能力不足。降低통신 속도到 4800 试试。如果能通,설명信号质量确实是문제根源。
Q5:怎么知道슬레이브到底支不支持 Modbus?
A:发 01 03 00 00 00 01 84 0A 过去。如果不回,再用 9600/19200/4800 三种통신 속도各试一遍(8-N-1 和 8-E-1 各一遍)。如果全都不回,检查以下可能——设备根本没通电、RS-485 인터페이스未使能需要跳线或설정、设备 RS-485 只支持 ASCII 모드、设备需要特殊的唤醒시퀀스。
有문제再聊。现场디버깅这种事,文字能说清楚八成,剩下两成靠你自己去试。不过只要按这个顺序来,不走回头路,一个下午足够把大多数 Modbus 통신문제搞定了。
답글 작성