PLC论坛-全力打造可编程控制器专业技术论坛

 找回密码
 注册哦

QQ登录

只需一步,快速开始

微信扫码登录

查看: 24|回复: 0

[西门子] 操作示例|北辰XCNet-MB-S实现S7-1200的Modbus主从站功能

[复制链接]
发表于 2024-4-16 16:39:56 | 显示全部楼层 |阅读模式




西门子S7-1200/1500或西门子以太网口PLC如S7-1200/1500,CPU315-2PN/DP,CP343-1等,通过网口连接北辰XCNet-MB-S协议网关,既可以实现ModbusTCP的服务器和客户机功能,又可以实现2路ModbusRTU的主站和从站功能(每路最多32个从站),在实际的自动化和信息化项目的应用中,非常的方便。本文重点介绍ModbusRTU的主站和从站功能。


‍‍‍‍‍‍‍‍‍‍‍
‍‍‍‍‍‍‍‍‍‍‍
1
作为ModbusRTU的主站
XCNet-MB-S的串口X1或串口X2作为Modbus主站运行,连接外部Modbus仪表,根据预置命令在西门子网口PLC(S7-1200、S7-1500、SMART S7-200等)和Modbus仪表之间交换数据。应用于西门子网口PLC和Modbus仪表之间的Modbus通讯。
XCNet-MB-S可最多配置72条数据交换命令,可以传送的数据类型包括位、字节和字。单条命令最多一次传送连续的100个字(寄存器),对Modbus站点数目并无限制。



1
通讯线连接
XCNet-MB-S的串口X1或串口X2总线接口连接外部Modbus仪表,XCNet-MB-S串行通讯口的针脚定义:




2
XCNet配置


配置以串口X1为例,串口X2配置方法一致;
配置步骤:BCDevice搜索修改设备参数基本参数配置串口X1配置Modbus主站。
1.电脑连接XCNet-MB-S模块,运行BCDevice(V1032版本以上)配置软件,选择查找到的BCDevice模块,点击按钮栏【修改设备参数】按钮。

2.在参数配置界面左侧选择【基本参数配置】,右侧页面选择【LAN配置】,设置PLC的IP地址、模块LAN的IP地址、子网掩码、TSAP等。

3.在参数配置界面左侧选择【基本参数配置】,右侧页面选择【串口1配置】,设置【功能选择】为Modbus主站,设置波特率、数据位、停止位和奇偶校验参数。如果为多Modbus从站设备的总线网络,建议设定通讯同步时间,一般为30~50mS;

4.在参数配置界面左侧选择【Modbus主站1】对应串口X1,右侧页面点击【新建命令】配置数据交换命令。

5.编辑新建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只能读取不能写入。
6.命令示例
1) ModbusS7位传送:Modbus 1号站的000001(Coil线圈0)数据读取到PLC的Q0.0。
2) S7Modbus位传送:PLC的Q1.0写入到Modbus 1号站的000011(Coil线圈10)。
3) ModbusS7字传送:Modbus 1号站的400001(HoldingRegsiter保持寄存器0)开始的10个字数据读取到PLC的DB1.DBW0~18。
4) S7Modbus字传送:PLC的DB1.DBW10~14写入到Modbus 1号站的400011(HoldingRegsiter保持寄存器10)开始的3个字。

7.配置完成后点击【下载参数】按钮,将参数下载到XCNet-MB-S;设备重启运行后可对Modbus主站1运行状态进行监视;




3
通讯测试


Modbus仪表较常见的有各种智能温控仪,以集成ModbusRTU从站通讯口的温控器仪表为例,说明如何实现XCNet-MB-S的Modbus主站数据通讯。
示例功能:将两台温控仪表的实际温度值(PV)分别读取到S7-1200的DB1.DBW100和DB1.DBW102数据区;将S7-1200的DB1.DBW200和DB1.DBW202数据作为温度设定值(SV)分别传送到两台温控仪表。
1.接线:用屏蔽双绞线将两台温控器和XCNet-MB-S串口X1串联,首尾最好放置终端电阻,保证通讯稳定性。XCNet-MB-S的6P端子的1脚接RS485+(接温控器A端口),2脚接RS485-(接温控器B端口),3脚接RS485地。
2.设置温控器参数为Modbus通讯协议,地址分别为1和2,设置9600bps波特率,8数据位,偶校验,一个停止位;
3.配置XCNet-MB-S串口X1参数,下载参数。
1) 扩展总线接口参数:Modbus主站,9600bps波特率,8位数据位,1位停止位,偶校验。
2) 配置Modbus主站1命令
温控器的当前温度(PV值)在保持寄存器16#14,即保持寄存器的20;设定值(SP值)在保持寄存器的16#28,即保持寄存器的40。
按示例要求配置如下命令:

4.点击参数配置页面的【Modbus执行监视】,查看命令执行信息。

5.打开PortalV16软件,连接S7-1200,在监控表中输入DB1.DBW100,DB1.DBW102,DB1.DBW200和DB1.DBW202,查看DB1.DBW100/1002是否为温控器的实际温度,修改DB1.DBW200/2002查看温控器设定温度是否一致。

6.总结:
1) XCNet-MB-S的Modbus主站功能依据预先配置的数据交换命令自动执行Modbus仪表和PLC之间的数据传输,无须在PLC中编程;
2) XCNet-MB-S的Modbus主站通讯并不影响上位机的以太网通讯,上位机(如编程软件、监控组态软件、以太网触摸屏等)仍然可以通过LAN读写PLC数据;
3) 利用命令的连续数据区多字节/字传送可减少每个站点的命令数,从而增加可通讯站点;
4) 对于位传送,可以采用字节数据类型,连续的8个位值将直接传送到PLC中的一个字节地址;
5) 提高XCNet-MB-S串口X1的波特率(最高256Kbps)可以加快Modbus数据交换的速度;如果Modbus通讯线较长应适当降低波特率;
6) 所有的Modbus站点需设置为站地址不一样,波特率、数据位和校验位应该相同并和XCNet-MB-S串口X1参数一致。


2
作为ModbusRTU的从站


上面我们介绍了XCNet-MB-S的ModbusRTU的主站功能,下面介绍下XCNet-MB-S实现西门子S7-1200的ModbusRTU从站功能,通讯连接线与上述接法一致,这里不再重复。
1
XCNet配置


配置以串口X1为例,串口X2配置方法一致;
配置步骤:BCDevice搜索修改设备参数基本参数配置串口1配置Modbus从站。
1.电脑连接XCNet-MB-S模块,运行BCDevice(V1032版本以上)配置软件,选择查找到的XCNet-MB-S模块,点击按钮栏【修改设备参数】按钮。

2.在参数配置界面左侧选择【基本参数配置】,右侧页面选择【LAN配置】,设置PLC的IP地址、模块LAN的IP地址、子网掩码、TSAP等。

3.在参数配置界面左侧选择【基本参数配置】,右侧页面选择【串口1配置】,设置【功能选择】为Modbus从站,设置波特率、数据位、停止位和奇偶校验参数。

[注意]上述项可编辑Modbus从站地址,当多个模块Modbus从站串联时,需要配置不同的Modbus从站地址;
4.编辑Modbus映射,在参数配置界面左侧选择【Modbus映射表】;

5.设置好后点击【下载参数】按钮,将参数下载到XCNet-MB-S。



2
Modbus测试
Modbus测试可采用ModScan软件,该软件作Modbus主站,去连接XCNet-MB-S。
1.采用一根USB转RS485的转换线,USB端口接入计算机,RS485端子通过屏蔽双绞线连接至XCNet-MB-S的串口X1端子。
2.在计算机上运行ModScan.exe,点击“Connection”,设置相应的连接参数,此处USB连接的串口号为COM6;

3.读取了线圈00001的100个线圈状态,查Modbus映射表可知为Q0.0~Q12.4的值;

4.注意:1.选择Direct Connection to COM(USB转换器对应的COM口);2.波特率、校验位等,这里的参数要和XCNet-MB-S的串口X1设置一致;

5.用BCDevice诊断XCNet-MB-S串口X1的状态。

6.总结:
1) XCNet-MB-S的Modbus从站功能根据预置Modbus映射表进行通讯,无须在PLC中编写程序;
2) XCNet-MB-S的Modbus从站通讯并不影响XCNet-MB-S的以太网通讯,上位机(如编程软件、监控组态软件、以太网触摸屏等)仍然可以通过ModbusTCP读写PLC数据。
3) 提高XCNet-MB-S串口X1的波特率(最高256Kbps)可以加快Modbus数据采集的速度;如果Modbus通讯线较长应适当降低波特率。
(无锡市北辰自动化技术有限公司供稿)
END





免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册哦

本版积分规则

QQ|小黑屋|手机版|Archiver|PLC技术网-PLC论坛 ( 粤ICP备17165530号 )|网站地图

GMT+8, 2024-5-5 02:24 , Processed in 0.070015 second(s), 26 queries .

快速回复 返回顶部 返回列表