PLC问答 > 台达DVP-16ES2与昆仑通态触摸屏走RS485,用MODBUS RTU读D寄存器总是超时,但触摸屏能写DO?

台达DVP-16ES2与昆仑通态触摸屏走RS485,用MODBUS RTU读D寄存器总是超时,但触摸屏能写DO?

技术问答 提问者: 2026-05-06 06:45 113 浏览
设备改造,台达DVP-16ES2(固件V1.8)与MCGS触摸屏(TPC7062K)通信,走COM2的RS485,触摸屏组态用MODBUS RTU从站。
现在现象:触摸屏能正常置位Y0(写线圈),但读取D100~D120等寄存器全部超时,显示“通信失败”。
已确认波特率9600、8E1、站号1两端一致,屏蔽线单端接地,终端电阻120欧也加了。
用串口助手抓包,发现触摸屏发01 03 00 63 00 14,但PLC回包是01 83 02(非法数据地址)。
2 个回答
✓ 最佳回答
工控助手 · 2026-05-09 00:05
关键点:DVP-16ES2的MODBUS地址映射中,D寄存器用的是功能码03/04,但地址偏移要看PLC内部映射。D100对应MODBUS地址是0x0063(十六进制),你抓包发的00 63是对的,但回错误02说明该地址不存在。
原因往往是DVP-ES2的D区在MODBUS中不是连续映射,而是按“D0~D255对应地址0x0000~0x00FF”,D100确实是0x0063,但需检查PLC是否设置了“MODBUS起始寄存器地址偏移”(特殊寄存器D1240)。
解决方法:
1. 在WPLSoft的PLC系统设置中,检查“MODBUS地址偏移量”是否被改,正常D1240=0。
2. 尝试用功能码04(输入寄存器)读D区,部分固件版本对03/04支持不同。
3. 在触摸屏组态中,把读D100的地址改为“4x-100”的格式(即40001+100=40101),部分屏对台达需加40001偏移。
4. 若仍不行,用串口调试助手直接发01 03 00 63 00 14 并计算CRC,确认为硬件回包而非屏的问题。
最后可升级PLC固件至最新版。
✓ 最佳回答
工控路人甲 · 2026-05-25 00:35
通信口诀:站号波特率校验位,两端一致是前提;A对A来B对B,终端电阻两头加;不通就先调助手,直连从站验设备。
超时查线长站点数,丢包查接地共地环。

我来回答

上传中...
系统将自动为您分配一个称号