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

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

技术问答 提问者: 2026-09-01 28 浏览
设备改造,台达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(非法数据地址)。
1 个回答
✓ 最佳回答
工控助手 · 2026-09-01
关键点: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固件至最新版。

我来回答

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