基于Modbus协议实现PLC与智能仪表的通讯

Bit1-Bit4:使用Modem时需设定的相关参数
Bit5:是否使用XON/XOFF流控制。设为1时表示使用XON/XOFF流控制
Bit6:是否使用RTS/CTS握手信号。设为1时表示允许使用RTS/CTS信号
Bit7:是否清除“BackSpace”字符。设为1时表示在“SimpleASCIIInput”和“Terminated
ASCIIInput”模式下,清除MsgIn中的“BackSpace”字符
Bit8:是否接管通讯口FIFO缓冲区。设为1时表示XXMIT指令接管通讯口FIFO缓冲区的控制
Bit9:是否启用Modbus模式。设为1时表示通讯口工作在ModbusMaster模式下
Bit10:是否启用标准串口模式。设我1时表示通讯口工作在标准串口模式下
注:Bit9,Bit10不能同时设为1
Bit11:是否启用“SimpleASCIIInput”模式,设为1时表示启用
Bit12:是否启用“TerminatedASCIIInput”模式,设为1时表示启用
Bit13:不用
Bit14:是否启用RS485模式。设为1时表示启用。只有在使用ModiconMomentum系列PLC时,该位才设为1
Bit15:是否启用RTS/CTSModem控制。设为1时表示启用
Bit16:不用
2.2.2Msgout参数
该参数中存放需发送的字符或数据。通常在Concept中用一个WORD型数组来给该参数赋值。当通讯口工作在ModbusMaster模式下时,需按ModbusRTU的格式来给该参数赋值,但不含CRC校验值,具体的格式见下表

2.2.3Port参数
只要使用ModiconMomentum系列PLC时,该参数才被设为2,否则该参数的值都被设定为1,表示用Port1进行通讯。
3实例
下面的例子为笔者在西宁寺沟口水电厂机组监控项目中,用ModiconCompactPLC与MP6000智能功率仪表通讯的程序,基此来对XXMIT指令的使用做更进一步的说明。
3.1工程要求
通过PLC从MP6000智能仪表中读取机组当前的有功功率、无功功率等数据。
3.2硬件情况:
PLC:施耐德ModiconCompact系列PLC,CPU型号为TSXPC-E984-265
智能仪表:MP6000功率表
通讯协议:Modbus协议
3.3软件情况:
PLC编程软件:Concept2.2+ServiceRelease2
编程方式:ST文本编程
MP6000的数据区情况:把MP6000仪表中从第一个地址开始的64个数据读出来
PLC的数据区:从MP6000读出的数据写入PLC40031开始的64个寄存器中
数字通信相关文章:数字通信原理
通信相关文章:通信原理
评论