硬件连接
S1200是一款紧凑型、模块化的PLC,可完成简单逻辑控制、高级逻辑控制、HMI 和网络通信等任务的控制器。S1200与尼得科CT Unidrive M700驱动器板载以太网模块Modbus TCPIP 通讯硬件连接如下图所示:
Unidrive M700驱动器Modbus地址设定
(1)驱动器本身16位参数Modbus地址
驱动器本身16位参数Modbus地址格式为:mm*100+ppp+400000。例:参数20.01,Modbus地址为:402001
(2)驱动器本身32位参数Modbus地址
驱动器本身32位参数Modbus地址格式为:16384+mm*100+ppp+400000。例:参数20.21,Modbus地址为:418405
(3)驱动器扩展插槽SI-app模块参数Modbus地址
驱动器扩展模块SI-app中70、71、72、73、74、75为32位参数Modbus地址格式为:mm*100+ppp+400000。例:参数72.69,Modbus地址为:423653
S1200 Modbus Client 编程
(1)S1200 Modbus TCP简述
S1200与尼得科CT Unidrive M700驱动器通过Modbus TCP进行数据通讯,PLC作为客户端,驱动器作为服务器。S1200编程环境TIA中集成Modbus TCP通讯指令,编程时只需调用相应指令进行参数设置即可。
Modbus TCP Client通讯指令(如下图所示):包含输入参数和输出状态参数,具体解释如下:
输入参数:
REQ:通讯请求位,正跳沿即可
DISCONNECT:连接请求,0=建立连接;1=断开连接
CONNECT_ID: 连接编号,唯一标识PLC中的某个连接,无具体含义
IP_OCTET_1:IP地址第一部分
IP_OCTET_2: IP地址第二部分
IP_OCTET_13:IP地址第三部分
IP_OCTET_4:IP地址第四部分
IP_PORT:服务器IP端口号,一般502
MB_MODE:模式选择,0=读取,1=写入,具体见S1200系统手册
MB_DATA_ADDR:读取或写入参数Modbus地址
MB_DATA_LEN:读取或写入数据长度
MB_DATA_PTR:指向读取或写入数据寄存器指什
输出参数:
DONE:数据交换完成
BUSY:通读状态,1=MB_CLIENT正在进行操作,0=MB_CLIENT空闲
ERROR:通讯状态,1=故障,0=正常
STATUS:通讯状态代码,0=正常,非零为故障码,具体查S1200系统手册
(2)具体编程
读取或写入尼得科CT Unidrive M700驱动器本身参数组:地址按上述2中的计算,直接调用Modbus TCP Client通讯指令,按(1)中的描述设定参数即可进行通讯。如读取20.21开始10个连续双字。
读取或写入尼得科CT Unidrive M700驱动器扩展模块参数组:地址按上述2中的计算,直接调用Modbus TCP Client通讯指令,按(1)中的描述设定参数,但需根据相应插槽改变ID号。如M700驱动器SLOT3上插入SI_app模块,读取SI_app模块扩展参数72.69开始12个连续双字,需将ID改为3。若写入参数只需将MB_MODE参数改为1即可。
注意:上图所示修改ID所用MOVE指令输出地址位于MB_CLIENT背景数据块中。该参数默认设置为255(0XFF)。
根据尼得科CT Unidrive M700驱动器Modubs TCP服务器要求,该ID用于识别所访问参数位于驱动器或扩展模块上,M700不同参数ID如下所示
(来源:尼得科控制技术英国CT)