远创智控MPI-ETH-YC01Puls转以太网模块支持Modbus功能,可作为Modbus主站或者Modbus从站,实现PLC与其他Modbus设备的通讯。
一、Modbus主站功能介绍
1.1功能和应用
远创智控MPI-ETH-YC01Puls的扩展母口作为Modbus主站运行,连接外部Modbus仪表,根据预置命令在西门子PLC和Modbus仪表之间交换数据。应用于西门子PLC和Modbus仪表进行通讯。
远创智控MPI-ETH-YC01Puls可最多配置72条数据交换命令,可以传送的数据类型包括位、字节和字。单条命令最多一次传送连续的100个字(寄存器),对Modbus站点数目并无限制。
1.2通讯线连接
远创智控MPI-ETH-YC01Puls的扩展总线接口连接外部Modbus仪表,桥接模式下,以太网模块扩展总线接口的针脚定义:
1.3远创智控MPI-ETH-YC01Puls 配置
配置步骤:NetDevice搜索--参数配置--扩展总线接口--Modbus从站。
1.3.1.电脑连接远创智控MPI-ETH-YC01Puls转以太网模块,运行NetDevice(V1013版本以上)配置软件,选择查找到的NetDevice转以太网模块,点击按钮栏【修改设备参数】按钮。
1.3.2.在参数配置界面左侧选择【S7总线接口参数配置】,右侧页面选择【扩展总线接口】,设置【功能选择】为Modbus主站,设置波特率、数据位、停止位和奇偶校验参数。如果为多Modbus从站设备的总线网络,建议设定通讯同步时间,一般为30~50mS;
1.3.3.在参数配置界面左侧选择【Modbus主站】,右侧页面点击【新建命令】配置数据交换命令。
1.3.4.编辑新建Modbus数据传送命令对话框,配置完成后点击【检查】查看有无错误,点击【确定】保存该命令。
如上:
1)数据传送方向
ModbusS7:读取Modbus仪表数据传送到西门子PLC;
S7Modbus:读取西门子PLC数据传送到Modbus仪表;传送的数据个数、数据类型和数据区域
对于位传送,只能传送一个位,数据区域:COIL和INPUT;
对于字节传送,最多连续的200个字节,数据区域:COIL和INPUT;字节传送只能是ModbusS7方向。
对于字传送,最多连续的100个字,数据区域:INPUT REG和HOLDING REG(输入寄存器和保持寄存器)。
2) S7站点的起始地址:指定PLC的通讯口站地址和传送区域,对于S7-200的V区请选择DB1。另外对于S7-200的SM/AI区只能读取,不能写入。
3) Modbus站点的起始地址:指定Modbus站号和数据区起始地址。另外对于INPUT REG只能读取不能写入。
1.3.5.命令示例
1)S7Modbus字传送:读取PLC地址为2的DB10.DBW0~18传送到Mdobus 1号站的40001(HoldingRegsiter保持寄存器1)开始的10个字。
2)S7Modbus字传送:读取PLC地址为2的QW0~18传送到Mdobus 1号站的40001(HoldingRegsiter保持寄存器1)开始的10个字。
3)ModbusS7字节传送:读取Modbus 1号站的00001(Coil线圈1)~00008(Coil线圈8)之间的数据传送到2号PLC的MB0。
4)ModbusS7位传送:读取Modbus 1号站的00001(Coil线圈1)数据传送到2号PLC的Q0.0。
1.3.6.配置完成后点击【下载参数】按钮,将参数下载到远创智控MPI-ETH-YC01Puls;设备重启运行后可对运行状态进行监视;
1.4通讯测试
Modbus仪表较常见的有各种智能温控仪,示例以集成ModbusRTU从站通讯口的温控器仪表为例,说明如何实现远创智控MPI-ETH-YC01Puls的Modbus主站数据通讯。示例功能:将两台温控仪表的实际温度值(PV)分别读取到一台S7-300的DB1.DBW100和DB1.DBW102数据区;将S7-300的DB1.DBW200和DB1.DBW202数据作为温度设定值(SV)分别传送到两台温控仪表。
1.4.1.接线:用PROFIBUS电缆连接两台温控器,将PROFIBUS网络插头插在远创智控MPI-ETH-YC01Puls的扩展总线接口上。如果自制通讯线,远创智控MPI-ETH-YC01Puls扩展总线接口的3脚接RS485+(接温控器A端口),8脚接RS485-(接温控器B端口),5脚接RS485地。
1.4.2.设置温控器参数为Modbus通讯协议,地址分别为1和2,设置9600bps波特率,8数据位,偶校验,一个停止位;
1.4.3.配置远创智控MPI-ETH-YC01Puls参数,下载参数。
1)扩展总线接口参数:Modbus主站,9600bps波特率,8位数据位,1位停止位,偶校验。
2)配置Modbus主站命令:
温控器的当前温度(PV值)在保持寄存器16#14,即保持寄存器的20;设定值(SP值)在保持寄存器的16#28,即保持寄存器的40。
按示例要求配置如下命令:
1.4.4.点击参数配置页面的【Modbus执行监视】,查看命令执行信息。
1.4.5.打开Step7软件,连接远创智控MPI-ETH-YC01Puls,在监控表中输入DB1.DBW100,DB1.DBW102,DB1.DBW200和DB1.DBW202,查DB1.DBW100/1002是否为温控器的实际温度,修改DB1.DBW200/2002查看温控器设定温度是否一致。
1.4.6.总结:
1)远创智控MPI-ETH-YC01Puls的Modbus主站功能依据预先配置的数据交换命令自动执行Modbus仪表和PLC之间的数据传输,无须在PLC中编程;
2)远创智控MPI-ETH-YC01Puls的Modbus主站通讯并不影响上位机的以太网通讯,上位机(如编程软件、监控组态软件、以太网触摸屏等)仍然可以通过以太网读写PLC数据;
3)利用命令的连续数据区多字节/字传送可减少每个站点的命令数,从而增加可通讯站点;
4)对于位传送,可以采用字节数据类型,连续的8个位值将直接传送到PLC中的一个字节地址;
5)提高PLC的波特率(如S7-200设置为187.5Kbps)和远创智控MPI-ETH-YC01Puls扩展通讯口的波特率(最高256Kbps)可以加快Modbus数据交换的速度;如果Modbus通讯线较长应适当降低波特率;
6)所有的Modbus站点需设置为站地址不一样,波特率、数据位和校验位应该相同并和远创智控MPI-ETH-YC01Puls扩展通讯口参数一致;