台达DVP-ES2与变频器Modbus RTU通讯读频率超时,站号波特率都对仍报错
台达DVP16ES200R通过COM2(RS485)用Modbus RTU读台达VFD-M变频器运行频率(4000H),接线A接A、B接B,终端电阻120Ω已加。ISPSoft里设COM2为RTU 9600,8,N,1,站号2。用MODRW指令读,M1127通讯超时标志置位,读回数据全0。已确认变频器Pr.88=2、Pr.89=9600、Pr.92=1(RTU)。请问指令参数和接线哪里有问题?
✓ 最佳回答
1. 检查MODRW指令参数:S1=站号(2),S2=功能码(03H),S3=数据地址需填4000H对应十进制16384还是偏移,台达MODRW地址按十进制填寄存器实际地址(4000H=16384),不要填偏移后的1。S4=读取笔数(1),D=存放起始。
2. 通讯格式:DVP-ES2的COM2格式由D1120设定,9600,8,N,1对应H86(b0~b3波特率、b4~b7数据位/校验),而非在ISPSoft界面随便选,务必写D1120=H86,且M1138=1(COM2为主站)。
3. 接线核查:RS485的A/B极性与变频器SG+、SG-对应,部分VFD-M标注为SG+/SG-,需与DVP的D+/D-对应,接反则完全无响应。
4. 先只挂一台变频器、短线(<1m)测试,排除干扰;用M1127复位后重试,读M1129判断是否收到帧。