作业帮 > 综合 > 作业

S7-200PLC Modbus协议与16路继电板之间的通讯

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/22 11:58:11
S7-200PLC Modbus协议与16路继电板之间的通讯


如上图所示,我想通过PLC的Mudbus协议与16路继电板通讯来控制继电板的1号线圈跳动,控制线圈跳动无疑是写入,则RW设置为1,请问Slave,Addr,Count,DataPtr设置为什么,
Slave参数是Modbus从站的地址.允许的范围是0到247.地址0是广播地址,只能用于写请求.不存在对地址0的广播请求的应答.并非所有的从站会支持广播地址.S7-200 Modbus从站协议库不支持广播地址.
RW参数指定是否要读取或写入该消息."读写"参数允许使用下列两个值.
0 -读
1 -写
离散输出(线圈)和保持寄存器支持读取和写入请求.离散输入(触点)和输入寄存器仅支持读取请求."地址"参数是起始的Modbus地址.允许使用下列取值范围:00001至09999是离散输出(线圈)
10001至19999是离散输入(触点)
30001至39999是输入寄存器
40001至49999是保持寄存器
Addr参数-"地址"的指定取值范围基于Modbus从站支持的地址.
Count-"计数"参数指定在该请求中读取或写入的数据元素的数目."计数"值是位数(对于位数据类型)和字数(对于字数据类型).
地址0xxxx "计数"是要读取或写入的位数.
地址1xxxx "计数"是要读取的位数.
地址3xxxx "计数"是要读取的输入寄存器的字数.
地址4xxxx "计数"是要读取或写入的保持寄存器的字数.
MBUS_MSG指令将读取或写入最大120个字或1920个位(240字节的数据)."计数"的实际限值将取决于Modbus从站中的限制.
"DataPtr"参数是指向S7-200 CPU的V存储器中与读取或写入请求相关的数据的间接地址指针.对于读取请求,DataPtr应该指向用于存储从Modbus从站读取的数据的第一个CPU存储器位置.对于写入请求,DataPtr应该指向要发送到Modbus从站的数据的第一个CPU存储器位置.
DataPtr值作为间接地址指针传递到MBUS_MSG.例如,如果要写入Modbus从站的数据从S7-200 CPU中的地址VW200开始,则DataPtr的数值将会是&VB200 (VB200的地址).指针必须始终是VB类型,即使它们指向字数据.
再问: