胡铭立 黄熙
摘 要:本文介绍了S7-200在工业以太网与Modbus网络同步通讯的应用,基于TCP/IP通讯协议与Modbus RTU通讯协议,设计了一种集成化、可视化、人性化的综合监控系统,详细阐述了通讯程序设计中通讯模块CP243-1和软件库Modbus Master(V1.1)的应用,为工业系统在信息集成化方面提供了理论依据和实践经验。
关键词:CP243-1;Modbus Master(V1.1);综合监控
中图分类号:TN915.04 文献标识码:A 文章编号:2096-4706(2019)17-0058-03
Abstract:This paper introduces the application of S7-200 in synchronous communication between industrial Ethernet and Modbus network. Based on TCP/IP communication protocol and Modbus RTU communication protocol,an integrated,visual and humanized integrated monitoring system is designed. In the program design,the communication module CP243-1 and the software library Modbus Master (V1.1) application provide theoretical basis and practical experience for industrial system in information integration.
Keywords:CP243-1;Modbus Master(V1.1);comprehensive monitoring
0 引 言
隨着工业制造的飞速发展,工业控制已从单一控制向集成控制、多元化控制发展。如今,伴随网络时代的日新月异,实现了信息及时共享,在互联网高度发达的今天,网络互联也在工业制造领域得到了广泛应用,工业组网为信息传递共享提供了方便,通过不同通讯协议、控制组件之间,或在网络(例如以太网或Modbus网络)和其他设备之间可以通信,从而便捷地完成复杂的监控要求。本文针对深圳地铁四号线供电系统组网通讯设计要求,通过硬件连接与组网编程,给出了可行的具体解决方案。
1 设备网络组态方案设计
目前,地铁供电系统中包括的主要设备有变压器、交流开关柜、整流柜、直流开关柜等。为了实现不同设备的实时监测,将交流开关柜、整流柜、直流开关柜的主要报警信息进行集中监测显示。在本项目中,1500V直流开关柜的通讯接口是以太网口,35kV交流开关柜的通讯接口是RS485,Modbus网络。供电系统组网原理图如图1所示。
根据图1所示原理图,虚线框代表单个整流装置,实线代表信号线,CP243-1自带RS485串口,3#与4#变流装置组成一组整流机组。整流机组通过A1B1端和A2B2端将2个整流装置的相同状态信息集中显示在一个西门子触摸显示屏。用作通讯的PLC通过扩展通讯扩展模块CP243-1与1500V直流开关柜组成以太网进行通讯;PLC本身直接通过RS485串口与35kV交流开关柜组成Modbus网络进行通讯。
PLC与CP243-1构成通讯控制器,1500V直流开关柜与35kV交流开关柜通过通讯控制器将状态信息显示于触摸屏上;变流装置通过并联另外两个PLC,将自身信息显示于触摸屏上。触摸屏与三个PLC通过RS485串口组成MPI网络,显示三种设备的实时状态,实现综合监控。
2 S7-200及S7-300以太网通讯
本项目中1500V直流开关柜的控制器为S7-300PLC,变流装置的控制器为S7-200PLC。S7-200通过以太网扩展模块CP243-1或CP243-1IT接入工业以太网。S7-200与S7-300通讯时,S7-200可以作为Client端或Server端,本项目中选择CP243-1,并且在网络中将S7-200设为Client端(设为Server端时S7-300的扩展模块不支持TCP/IP),使用STEP 7-Micro/WIN对S7-200进行编程,在以太网向导中将CP243-1的IP地址设为192.168.0.3,子网掩码设为255.255.255.0,其他参数配置设为默认值,点击下一步进入配置连接对话框,如图2所示,将远程服务器(S7-300)的IP地址设置为192.168.0.10,这样就使得S7-200与S7-300的通讯在同一网段内;同时将远程服务器的TSAP设为03.02,其中第一个字节定义连接号,第二个字节表示CPU的槽号,客户机的TSAP设为10.00;连接名设为Connection0_0。点击数据传输进入配置CPU至CPU数据传输对话框,如图3所示,将第1项读取字节设置为4;第2项设置数据交换的存储区将服务器的DB60.DBB0至DB60.DBB3内的数据读入到客户机的VB0至VB3内;第3项为此数据传输定义符号名PeerMessage00_1(此名称在项目中会应用到),点击确认完成以太网向导的设置。
完成上述配置后会在指令树的子程序中生成有关的以太网通讯指令,如图4所示,分别调用这两个通讯指令块:(1)ETHx_CTRL子程序用于开启和实施以太网模块错误检查。此子程序在每次扫描开始时调用(该子程序在每个模块中只能使用一次)。每当CPU变更为RUN(运行)模式时,该子程序命令CP243-1以太网模块检查V内存区是否存在新配置。(2)ETHx_XFR子程序通过指定客户机连接信息号码,该指令负责在S7-200和远程连接之间进行数据传送。只有当至少配置了一个客户机连接时,才会生成该子程序。其中Connection0_0与PeerMessage00_1将自动分配地址。传输线路类型决定了数据传送所需的时间。如要提高传输速度,可使用配备扫描时间低于1s的程序。
完成上述所有配置后,采用交叉连接方式将S7-200与S7-300连接即可通讯。
3 S7-200与35kV开关柜Modbus网络通讯
Modbus是一种用于工业控制器的网络协议。Modbus协议是一种通讯约规,广泛应用于电子器件控制器上,不同厂商生产的控制设备,只要符合Modbus协议的可以连成工业网络,进行集中监控。
关于Modbus通讯,需要建立主站和从站,主站侧需要配置程序库“MBUS_MSG”和“MBUS_CTRL”,从站侧需要配置程序库“MBUS_SLAVE”and“MBUS_INIT”,如果想要实现在S7-200CPU与其他支持Modbus-RTU的设备之间使用Modbus-RTU协议通讯,则需将S7-200CPU设为Modbus主站。S7-200CPU做主站时,必须使用自由口模式,按规定协议编程。S7-200控制系统使用时,Modbus RTU作为从站,其指令库仅支持CPU上的通讯口0(Port0)。要启动Modbus-RTU通讯,需要Step7-Micro/WIN 32 V3.2以上版本编程软件,且必须安装Modbus Master(V1.1)指令库。Modbus-RTU功能是通过在指令库中预先编好的程序功能块实现的。
调用Modbus主站指令编程前应分配库存储区,存储区的分配对程序的编写有直接的影响,库指令数据区是相应库的子程序和中断程序所要用到的变量存储空间,如果在编程时不分配库指令数据区,编译时会产生许多相同的錯误,同时也要保证在任何情况下不能再被其他程序所使用,点击“建议地址”按钮,系统将自动计算存储区的截止地址。
接下来我们将着重讨论如何应用Modbus Master(V1.1)指令库的指令来实现与ABB 35KV开关柜的通讯。
3.1 MBUS_CTRL指令
MBUS_CTRL指令如图5所示,此指令用于MBUS_CTRL指令(位于S7-200端口0)可初始化、监控或限用Modbus通讯。在MBUS_MSG指令使用前,必须正确执行MBUS_CTRL指令。指令完成后立即设定“完成”位,才能继续执行下一条指令。
当CPU每次扫描且EN输入接收打开信号时,MBUS_CTRL指令开始执行。MBUS_CTRL指令必须在每次扫描时(包括首次扫描)被调用,其作用为开启监视随MBUS_MSG指令启动的任何突出消息的进程。
每次必须执行MBUS_CTRL指令,否则Modbus主设备协议将不能正确运行。
3.2 MBUS_MSG 指令
MBUS_MSG指令如图6所示,用于请求启动Modbus从站及处理应答。当EN位和“首次”输入都为1时,MBUS_MSG指令启动,向Modbus从站发送请求并等待应答、处理应答过程时需要多次扫描。EN输入端必须打开以开启请求的发送,保持直到“完成”位被置位。
注意,MBUS_MSG指令每次只能激活一条。如果启用多条指令,则只执行第一条MBUS_MSG指令,之后所有MBUS_MSG指令将被禁止并产生错误代码6。由于ABB 35kV开关柜通讯器中信息的存储地址不连续,实际编程时调用了两条MBUS_MSG指令,为了避免错误采用了循环指令,保证在同一时刻只有一个MBUS_MSG指令处于运行状态。
将以上两个“MBUS_CTRL”和“MBUS_MSG”指令加入事先已编好的以太网程序中,再根据已设置好的存储器地址将所有信息一一储存起来,通过硬件的连接,就可以与1500V开关柜和35kV开关柜进行同步实时通讯。
4 结 论
本文通过实验调试,实现了1500V开关柜和35kV开关柜的状态信息的显示监测,证实此组网方案切实可行,满足设计要求,实现了变电所内主要设备的综合监控,大大提高了人工工作效率,减少了设备的故障率。在城市轨道交通供电系统中,基于TCP/IP通讯协议与Modbus-RTU通讯协议,实现了S7-200在工业以太网中与Modbus网络同步通讯的应用。
参考文献:
[1] 蔡忠勇.现场总线与工业以太网产品手册 [M].北京:机械工业出版社,2007.
[2] 崔坚.西门子工业以太网络通信指南 [M].北京:机械工业出版社,2005.
[3] 西门子.SIMATIC S7-200系统手册 [Z/OL].[2019-07-04].https://search.siemens.com/en/?lang=zh&site=siemens_c_cn&q=SIMATIC%20S7-200&lr=lang_zh&collapse=true&class=search%2Cbanner%2Ctext&_charset=UTF-8.
作者简介:胡铭立(1981-),男,汉族,山西太原人,高级工程师,学士学位,研究方向:电气工程。