我的PLC用的是官方库:Modbus Rtu Slave(3.1)
波特率是9600,无校验,Port0
功能码:05 设置单个继电器状态(强制离散输出位)
QB0对应数据地址 00 00----00 07
QB1 对应数据地址 00 08----00 0F
QB2 对应数据地址 00 10----00 07
FF 00是输出高电平
00 00 是输出低电平
举例说明:
PC----PLC
发送:03 05 00 00 FF 00 8D D8
03:从站地址,PLC地址,类型BYTE
05:功能码,设置单个继电器状态(强制离散输出位),类型BYTE
00 00:设置地址,类型WORD
FF 00:设置状态,类型WORD
FF 00 Q0.0 = 1;
00 00 Q0.0 = 0
FC 28: CRC校验;类型WORD
PLC---PC
接受:03 05 00 00 FF 00 8D D8
03:从站地址,PLC地址,类型BYTE
01:功能码,设置单个继电器状态(强制离散输出位),类型BYTE
00 00 : 设置地址,类型WORD
FF 00 :设置状态,类型WORD
FF 00 Q0.0 = 1;
00 00 Q0.0 = 0
3D E2: CRC校验;类型WORD
通过以上的实例你可以用各种语言编写控制程序,通过串口控制plc
[ 此帖被yulin3192在2020-06-21 11:27重新编辑 ]