文档库 最新最全的文档下载
当前位置:文档库 › 基于Modbus协议和WinCC6.2的电力参数采集系统设计

基于Modbus协议和WinCC6.2的电力参数采集系统设计

基于Modbus协议和WinCC6.2的电力参数采集系统设计

万美,闫宝瑞*

(北京化工大学机电学院塑料机械及塑料工程研究所北京100029)

摘要:利用S7-200 PLC与德国倍福总线终端系统进行Modbus通讯,采集相关电力参数,同时与WinCC组态软件相结合,实现数据的实时采集和趋势图显示,通过对双螺杆挤出机工作的实时监控,证实该系统具有很高的稳定性和实时性,满足采集系统的要求。

关键词:数据采集,S7-200 PLC,Modbus通讯,WinCC6.2,倍福总线终端系统

0 引言

为了采集挤出机工作时的电力参数,进而对挤出机的能耗进行评价,本论文介绍了基于Modbus协议和WinCC6.2的挤出系统数据采集平台的设计,目前已在挤出机上经过现场实验,系统稳定,很好的满足了采集系统的要求,值得推广。

1 系统概述

本系统采用分布式系统结构,由上位机和现场设备构成。系统上位机采用WinCC组态软件开发监控界面,能够完成数据动态显示和趋势分析等管理任务。分布于现场的PLC、电力监测设备及现场传感器,作为该系统的下位机,完成挤出机相关电力参数的实时采集。

2 Modbus通信协议简介

Modbus通信协议是Modicon公司开发的一种通信协议,以其开放性、灵活性、可靠性等优点,成为了一种使用相当普遍的工业通讯协议方式。该协议有两种传输模式即RTU 模式和ASCII 模式。在相同波特率下RTU模式具有更大的数据流量[1]。因此在一般工业场合下,RTU模式更为常用。

信息传输为异步方式,并以字节为单位。在主站和从站之间传递的通讯信息是11 位的字格式。通讯数据的信息帧格式为:1字节地址码,1字节功能码,N字节数据区,错误校验码采用冗余循环校验码(16位CRC码)。当通讯命令由主站发送至从站时,符合相应地址码的从站接收通讯命令,并根据功能码及相关要求读取信息,如果CRC校验无误,则执行相应的任务,然后把执行结果返送给主站。返回的信息中包括地址码、功能码、执行后的数据以及CRC校验码。如果CRC校验出错就不返回任何信息[2,3]。Modbus主从设备通讯过程如图1所示。

图1:Modbus协议主从查询-回应周期示意图

3 系统硬件设计

系统主站采用西门子S7-200 CPU 224XP,上位机安装S7-200 PC Access作为OPC服务器,WinCC作为OPC客户端,并通过以太网模块CP243-1与PLC进行以太网通讯;从站采用德国倍福总线终端系统BK7300(带三相电力测量终端KL3403和终端KL9010),通过RS485总线与CPU 224XP的0口进行Modbus RTU主从通讯,采集挤出机系统的功率、功率因数、能耗等状态信息。系统结构图如图2所示。

图2:系统结构图

4 以S7-200 PLC为主站的主从通讯

4.1 从站通讯规则和数据桢格式

不同厂家提供的Modbus数据格式略有不同,给工程应用带来了一定困难。本项目采用倍福总线终端系统[4],它有两张数据表,分别需要Modbus的功能4(读模拟量输入)和功能6(写模拟量输出)来访问,先用功能6向KL3403寄存器Output区的三相通道CB1、CB2、CB3写入数据。不同的CB值对应不同的电力参数:16#00对应电流,16#01对应电压,16#02对应功率,16#03对应功率因数,16#04对应能耗,16#08对应频率等等。再用功能4读取Input区三相通道数据:DataIN1、DataIN2、DataIN3,数据与Modbus地址的对应情况及高低字节排布如表1中所示。

表1:地址对照表

例如读取通道1电压的过程如图3所示(以下是串口调试过程,以串口调试软件为虚拟PLC与倍福总线终端系统进行串口通讯。数据均为十六进制,数据帧格式:8位数据位+无奇偶校验位+1位停止位)。

图3:数据读取过程示意图

① 先写入通道1的Control byte1(CB1),写命令代码为:0B 06 08 00 00 01 4A C0,按照Modbus 通讯规则:其中0B 为地址码,06为功能码写模拟量输出,08 00 00 01表示电压CB1值(01)对应的Modbus 字地址0x 0800的低字节,4A C0为CRC 码;

② 返回同样的数据:0B 06 08 00 00 01 4A C0;

③ 再读取通道1的数据DataIN1,读命令代码为:0B 04 00 00 00 02 71 61,按照Modbus 通讯规则:其中0B 为地址码,04为功能码读模拟量输入,00 00 00 02表示DataIN1高低字节分别对应Modbus 字地址0001的低字节和0000的高字节,则从0x 0000开始读取2个字的内容,71 61为CRC 码;

④ 返回的数据为:0B 04 04 19 01 00 09 C7 1E ,按照Modbus 通讯规则:其中0B 为地址码,04为功能码,04为字节数量(跟之前读取字的数量对应),19 01 00 09即对应表中的0x0000和0x0001数据分布,19为数据低字节DataIN1(byte )L ;01为Status byte 1 (SB1),值与写命令的状态值CB1对应;00为Status byte 2(SB2),值与写命令的状态值CB2对应,因为之前写命令中未写入CB2的值,所以此处为00

09

为数据高字节DataIN1(byte )H ,合起来为0919,转化为十进制为2329,再由计算公式得到232.9V 。

4.2 S7-200 PLC 主站指令库

S7-200 PLC Modbus RTU 主站指令库的功能是通过在用户程序中调用预先编好的程序功能块实现的,如图4所示。

图4:Modbus RTU 主站初始化与读写功能块参数设置示意图

在初始化功能块MBUS-CTRL 中,根据其参数意义设置为Modbus 协议功能, 波特率19200bps ,无校验,主站等待从站响应的时间为1000ms 。读写功能块中并没有直接写出对从站操作的功能码和保持寄存器号,而是通过对RW 、Addr 和Count 几个参数的设置,由S7-200 PLC 系统程序转换为符合Modbus 协议规定的功能码和存放数据的保持寄存器号。其中

Modbus 数据地址Addr 尤为重要,有0xxxx 、1xxxx 、3xxxx 和4xxxx 四种形式,分别表示数字量输出、数字量输入、模拟量输入等数据地址,而且要写出的数据和要读回的数据分别放在特定的存储区内。读写功能块按照倍福三相测量终端的规则先写后读,此时再以串口调试软

件为虚拟传感器与PLC进行串口通讯调试,各参数的设置如图4中所示才会与上述的例程得到代码一样,所以最后当把PLC和倍福总线终端系统连接起来进行Modbus通讯时就能顺利的得到数据。

5 系统软件设计

上位机监控界面的开发基于西门子公司的SIMATIC WinCC6.2组态软件[5,6],该软件功能强大、灵活性好、可靠性高,使用Microsoft SQL Server 2005作为其组态数据和归档数据的存储数据库,一键式的数据导出非常方便。

5.1 WinCC与PLC建立通讯

WinCC不能直接与S7-200系列PLC进行通讯,需要添加OPC通讯驱动程序来建立以PC Access作OPC服务器和以WinCC作OPC客户端的通信。PC Access是专为S7-200 PLC所作的OPC服务器。WinCC中连接的变量是PC Access软件中的各个项目,而PC Access中的项目和现场PLC内存地址相对应,在PC Access中建立的变量连接见图5所示。所以经过以上工作,在WinCC中组态画面时直接使用PC Access中的项目名,也就相当于调用了现场PLC中相应的内存地址。

图5:在PC Access中建立变量连接

5.2系统组态与调试

在WinCC监控界面中,主要为电力参数显示窗口,实时曲线和历史曲线势的绘制界面,画面组态完毕之后如图6所示。在画面中,“开始运行”将启动程序开始进行数据的通讯。设置的“开始采集”和“停止采集”两个按钮就是用于采集挤出机某段时间的能耗。对采集系统进行实验调试:接好硬件线路,开启挤出机,电力参数显示窗口开始变化,能耗和总功率的曲线图开始绘制,系统运行稳定,达到电力参数采集系统的目的。

图6:WinCC组态界面

6 结束语

PLC与第三方设备间的Modbus通讯连接,取代点对点的接线连接,简化了系统结构,节约了硬件设备,减少了数据传送误差,提高了测量精度;WinCC开发的人机交互界面友好,功能全面,方法简便易行。目前该系统已经在挤出机系统上得到应用,运行良好。

参考文献:

[1] 陈铭.基于MODBUS协议的设备和PLC实现通信的研究[J].湖南科技学院学报,

2009,(04): 60-62

[2] 孙宗文. BB-RTU与第三方设备Modbus通讯的实现方法[J].石油化工自动化,2009,

(05): 48-51

[3] 夏勇. Modbus通讯协议在S7-200通讯中的应用[J].自动化与仪器仪表,2009(01):

48-50

[4] 德国倍福自动化有限公司.产品及解决方案,2009

[5] 赵文刚,刘进.基于WinCC6.0及S7-200 PLC的材料分拣监控系统设计[J].可编程控制

器与工厂自动化,2009,(08):31-33

[6] 蔡小亮,罗益民,孙锋等. 基于PLC和WinCC的智能双腔监测换热器系统[J].化工自动

化及仪表,2010,(02):81-83

[7] S7-200系统手册[M],2006.04: 444

Design of power date acquiring System Based on Modbus protocol and WinCC6.2

Wan Mei,Yan Baorui

(Institute of Plastic Machinery and Engineering,College of Mechanical and Electronical Engineering,Beijing University of Chemical Technology,Beijing,100029)

Abstract: Based on performance characteristics of the system, this paper establishes the Modbus communication between S7-200 PLC and Beckhoff bus terminal system to acquire related power values. Making use of the WinCC configuration software carries out real-time data acquisition and trend chart shows. The system was confirmed to achieve stability and real-time performance and the requirement of date acquiring system was met though the twin-screw extruder.

Key words: date acquiring; S7-200; Modbus;WinCC6.2; Beckhoff bus terminal system;

1

国家科技支撑计划“工程塑料高性能化制备关键技术的研究与开发”(2008BAE59B04)

* 作者简介:万美(1985-),男,在读硕士研究生,主要从事自动化控制系统研究。TEL:134-2628-2643

Email:wmlkl2008@https://www.wendangku.net/doc/4f15821523.html,

通讯联系人:闫宝瑞,男,1962年生,汉族,北京市人,高级工程师。1988年毕业于北京化工大学自动化仪表专业,获学士学位;于2001年晋升为高级工程师。从事的科研工作主要涉及塑料机械先进控制,PLC控制系统以及虚拟仪器检测技术等。

工作单位:北京化工大学机电学院塑料机械及塑料工程研究所

通讯地址:北京市朝阳区北三环东路15号60信箱.邮政编码:100029

TEL:139-1083-1320 64435228

Email:yanbr@https://www.wendangku.net/doc/4f15821523.html,

相关文档
相关文档 最新文档