DP通信是以前常用的现场总线通信方式,随着以太网的发展,虽然以太网的应用越来越广泛,但是在车间级通信项目中,PROFIBUS DP的通信方式还是用的比较多的。
原有项目小型PLC一般是200CN+EM277做DP从站,现在是200Smart+DP做DP从站,应用中虽然相近但是有区别的,下面是主要区别:
EM277组态时与主站的I/O数据区无论是4字节还是32字节、64字节,无论是以BYTE还是以WORD为单位、数据一致性默认是UNIT,且不能修改,如下图:

所以,在主站进行I/O数据读写时即可以部分读写、也可以整体打包读写,如:
//以下是分时读写
L PIW 4
T MW 0
L DB1.DBW0
T PQW 12
//以下是整体读写
CALL "DPRD_DAT"
LADDR :=W#16#4
RET_VAL:=MW8
RECORD :=P#DB1.DBX 0.0 BYTE 32
CALL "DPWR_DAT"
LADDR :=W#16#12
RECORD :=P#DB2.DBX 0.0 BYTE 32
RET_VAL:=MW10
DP01组态时与主站的I/O数据区无论是4字节还是32字节、64字节,无论是以BYTE还是以WORD为单位、数据一致性默认是Total lenth,且不能修改,如下图:

所以,主站进行I/O数据读写时即可以部分读写、也可以整体打包读写,虽然我在使用中未发现问题,但最好使用SFC14、SFC15整体读写。