能源管理系统建设电能数据的采集
能源管理系统在能耗数据采集时通常需要把计量设备支持的通信协议转换为数据采集软件支持的通信协议。电能表电能数据采集可采用网关和PLC方式。网关采集方式具有结构简单、无需编程的特点,而采用PLC读取电能表数据则具有携带电能表数量多、适用性广、具备数据处理能力、性价比高等优势。
1、能源管理系统的架构
企业在能源管理系统建设中,最重要的一项工作是对现场电能数据的采集,采集的数据主要有正向有功电能累计、反向有功电能累计(即发电量)、功率、功率因数等。现企业使用的电能表主要分为两种,一种是带有RS485通信接口的智能电能表,该种电能表通信口绝大多数支持MODBUS RTU通信协议;另一种电能表为一些传统式电能表,这类电能表不带通信接口,把计量到的电能累计数值以脉冲方式输出进行显示(如3200imp/kWh表示每计量1 kWh的电能,电能表累计输出3200个脉冲),通过对输出的脉冲数进行采集即可实现电耗统计,这类传统式电能表已较少使用,但在有些投产年限较长的工厂仍能看到。
华润水泥封开有限公司能源管理系统主要包括现场采集装置、数据采集服务器、能源管理服务器。数据采集服务器安装有SCADA软件(数据采集与监视控制软件),放置于中央控制室工程师站,现场采集装置放置于电力室用于连接电能表读取数据,同时提供接口把采集到的数据提供给数据采集服务器。现场采集装置的作用就是通过电能表和SCADA软件的交互实现对电能表数据的采集。我公司现场采集装置主要使用网关和PLC,SCADA软件采用WINCC。数据采集服务器SCADA软件对现场采集装置采集到的数据进行汇总后传输给能源管理服务器。
能源管理服务器负责对所有的电能数据进行分析处理,最终实现能源监控、能源统计、能源消费分析、重点能耗设备管理等功能,服务器还需要完成信息和网页发布,让使用者通过互联网监控到能源管理数据。配置数据采集服务器目的主要是能源数据的采集,需要在电脑上安装各种通信卡件和软件,这些硬件和软件会占用电脑大量资源,而能源管理服务器主要是对大量数据的处理,增加数据采集服务器可避免采集过程在系统服务器上运行造成的负荷加重,进而提高系统服务器运行的效率和稳定性。能源管理系统结构如图1所示。
图1 能源管理系统结构
2、通过网关采集电能数据
网关是一种通信协议转换设备,用于把设备所支持的协议转换成SCADA支持的通信协议。WINCC支持的通信协议有MODBUS TCP/IP协议、OPC协议、PROFIBUS DP,但并不支持MODBUS RTU协议,不能直接与电能表连接读取数据,通过网关把电能表MODBUS RTU协议转换为MODBUS TCP/IP协议即可实现WINCC对电能表数据的读取。我公司使用的网关有两个通信口,通信口1为RS485接口,支持MODBUS RTU协议,该通信口用于连接电能表通信口读取电能表数据;通信口2为RJ45接口,支持MODBUS TCP/IP协议,该通信口与数据采集服务器连接。
通过对网关和数据采集服务器设置IP地址,使双方IP地址处于同一网段,再设置电能表和网关波特率,无需编写程序WINCC即可通过MODBUS TCP/IP协议读取到通信口1采集的电能数据。网关使支持不同通信协议的设备和数据采集软件实现了数据的读取。网关有多种类型,不管电能表支持什么通信协议,都可以采用相应网关把电能表支持的通信协议转换为SCADA软件支持的通信协议。例如我公司余热发电并网系统使用的电能表支持的通信协议为DLT645协议,通过支持DLT645协议的网关把DLT645协议转换为MODBUS TCP/IP协议就可实现WINCC对余热发电并网系统电能表数据的采集。使用网关采集电能表数据的网络结构如图2所示。
图2 网关采集电能表数据的网络结构
网关的优点是结构简单,在使用时只需设置IP地址、波特率即可,无需编写程序即可实现对电能表数据的读取。缺点是携带的电能表数量较少,如我公司使用的网关理论上连接电能表的数量可达到32台,但在使用中发现当连接的电能表数量超过15台时,数据读取开始出现卡顿、传输延迟等问题;另外,网关只适用于具有通信功能的电能表数据读取,无法实现端子连接的开关量或模拟量信号的读取,适用面较窄;还有,网关无法对读取到的电能数据进行必要的处理,例如为了最大限度的对电耗进行计量,电能表会把正向有功电能这个数据分解为正向有功电能高位字和正向有功电能低位字,并分别保存在两个保持寄存器中,每个寄存器为16位,最大计量累计可达到FFFFFFFFH(即4 294 967 295kWh)。
如当前电能表显示的正向有功电能是1000000 kWh,十六进制表示为F4240H,电能表将会把高位字000FH存放在地址为11BH的寄存器A中,低位字4240H存放在地址为11CH的寄存器B中,WINCC通过网关使用功能码03H 从地址11BH开始按双字来读取两个寄存器数值就可以得到F4240H(即正向有功电能),但有些电能表高低字存放地址相反,即低位字存在前地址,高位字存在后地址,此时按双字来读取得到的数据为4240000FH,这就需要对按双字读取到的数据进行高低位移位才能得到真正的正向有功电能。
又如当网关采集的电能数据为二次侧数据时,采集的数据需要乘以电流互感器变比和电压互感器变比才能得到实际的数值,网关不具备对数据高低位移位和数据加减乘除等数据处理功能,这些工作需要在WINCC上编写脚本进行处理后才能得到最终正向有功电能,当电能表数量较多时就需要编写大量脚本,从而影响到WINCC的运行效率,因此,我公司对网关主要是在矿山等位置比较偏远、电能表比较分散的场合使用。
3、采用PLC采集电能数据
为克服用网关采集数据存在的不足,我公司通过创新,采用西门子S7-200 224XP PLC对电能表数据进行采集。224XP PLC自带PORT0和PORT1两个通信口,通信口除常用于下载和上传程序、连接触摸屏外,还支持MODBUS RTU通信协议,因此可采用PLC自带通信口对电能表数据进行读取。224XP PLC还自带2个AI/AO模拟量点,16个DI点和10个DO点,支持6个高速计数器,最大支持脉冲输入频率为200 kHz,可对只能输出脉冲信号的传统电能表进行数据采集。
通信口PORT0和PORT1最大支持连接247台电能表,相对于网关携带的电能表数量大大提高,这是采用PLC采集电能表数据最大的优势。224XP PLC需要与西门子CP243-1模块配合使用,PLC主要负责电能表数据读取,数据采集服务器通过CP243-1读取PLC采集到的电能表数据。在成本上,一套224XP PLC和CP243-1模块采集装置与网关近似,但PLC方式性价比更高。
WINCC不能直接通过CP243-1读取PLC数据,需要在数据采集服务器上安装西门子PC ACCESS或者OPC SERVER软件,PC ACCESS或OPC SERVER为西门子开发的OPC软件,它们可通过CP243-1读取S7-200 PLC数据,数据读取完成后无需设置即可作为OPC服务器,WINCC可通过OPC读取PC ACCESS或OPC SERVER数据来实现对电能表数据的读取。PC ACCESS软件为免费软件,不需要授权,OPC SERVER需要授权,并且主要在西门子PCS 7控制系统基础上使用,使用OPC SERVER需具备一定的PCS 7应用基础。采用PLC采集电能数据的过程如图3所示。
图3 PLC采集电能表数据过程
4、PLC采集电能数据的应用
根据能源管理系统的要求,需要对功率大于55 kW的设备安装电能表以对电能数据进行采集。我公司两条熟料生产线大于55 kW的设备数量有:A、B线配料站4台;A线生料磨23台;A线窑尾4台;A线窑头煤磨47台;B线生料磨14台;B线窑尾4台;B线窑头煤磨36台,合计132台。两条熟料线需要读取的电能表数量远小于PLC所能携带电能表数量,出于技术可行性和节约成本考虑,只需要一台PLC即可实现A、B线所有电能表数据读取。A线窑头煤磨电能表数量最多,因此把PLC放置于该电力室DCS柜内。数据采集需要组建一个通信网络,把PLC与各电力室电能表连接起来。
我公司A、B熟料线配置有一套DCS控制系统,网络结构为环网,各电力室DCS柜安装有一台带2光口和8电口的交换机,交换机间采用四芯多模光纤连接,电能采集与DCS系统不共用网络。组建电能采集环网,需要在各电力室DCS柜增加一个带2光口的RS485光电转换器,转换器需要支持冗余环网。如图4所示,RS485光电转换器电口A、B端与电能表A、B端连接,光口分为两组,1、2口为一组(1口为发送端,2口为接收端),3、4口为一组(3口为发送端,4口为接收端),两个电力室转换器间的连接遵循发送口连接接收口原则,如A线生料磨的4口和3口要分别和A线窑尾1口和2口连接。
环网组建完成后,A线窑头煤磨电力室内的224XP PLC PORT0口和PORT1口、RS485转换器、电能表间采用DP接头按首尾相连方式连接,PORT0口、PORT1口、RS485转换器、电能表相当于并联在一起,连接PORT0口的DP接头需要带有编程口以便调试。CP243-1与数据采集服务器通过以太网连接。各电力室间电能表通过光纤连接可实现电气隔离,避免电能表间互相干扰。
为合理分配PLC两个通信口资源,编写程序时需要对每个通信口读取电能表数量进行分配,PORT0口负责读取A线窑头煤磨、窑尾、生料磨共74台电能表电能数据,PORT1口负责读取B线窑头煤磨、窑尾、生料磨及A、B线配料站共58台电能表电能数据。PORT0口和PORT1口为MODBUS RTU主站接口,电能表均为从站。能管系统通过PLC采集电能表数据的网络结构如图4所示。
图4 PLC采集电能表数据网络结构
[Page]
5、网络测试
电能表安装完成后,需要对所有电能表设置通信地址和波特率,每台电能表通信地址是唯一的,电能表波特率应与PLC通信口波特率一致。电能表、光电转换器、PLC间的通信电缆连接完成后,通过笔记本电脑、Modscan32软件在PLC端集中对所有电能表通信口进行测试,以判断电能表通信口通信功能是否正常和电能表接线是否正确,以及整个通信网络是否正常。由于现在的笔记本电脑只配置USB口,不配置COM1口,因此需要一根USB转RS485串口数据线用于笔记本电脑连接电能表。
测试时,选取网络上任意一台电能表A,把电能表A与网络连接断开,用数据电缆连接电能表通信口和电脑USB口,运行Modscan32软件,通过读取电能表通信地址快速判断该电能表通信口是否正常,如数据无法读取就需要检查电能表波特率、通信地址设置和电能表通信口A、B端接线是否正确,电能表A测试完成后将其重新接回网络;回到PLC侧把连接PORT0口的DP接头拔下,用数据电缆串口端连接DP接头可编程接口,再次运行Modscan32软件读取电能表A通信地址,如电能表A接回网络后数据无法读取,可对RS485光电转换器的光纤、DP接头接线、电能表通信口A、B端在网络上的接线进行检查。通过以上方法可快速完成整个通信网络的测试。
为避免或减少干扰,PLC、光电转换器、电能表间的通信电缆建议采用带双层屏蔽的双绞线,电力室内电能表的连接顺序也需要做好规划,根据现场实际情况确定通信电缆在桥架、电缆沟的走向,使电缆铺设长度最短。连接PORT0口、RS485光电转换器的DP接头终端电阻均要连接。在PLC读取电能表数据时如出现某次数据读取正常而下次数据却无法读取情况时,可通过降低PLC和电能表的通信波特率来减轻外部电场对通信的干扰。
6、程序编写
MODBUS通信涉及到功能码和数据地址,功能码用来指定主站要读取从站哪些类型数据,常用的功能码有01H(读取输出点状态)、02H(读取输入点状态)、03H(读取保持寄存器状态),电能相关数据均保存在保持寄存器中,因此只需要用到功能码03H。电能表数据包含多个参数,包括有功电能、无功电能、电流、电压、频率、功率因数等,每个参数都有一个地址并将该数据保存到一个寄存器中,通过功能码和数据地址就可以读取到该参数。不同厂家的电能表数据格式不尽相同,需要向厂家索取。PLC读取电能表程序主要包括:PORT0和PORT1通信口初始化、CP243-1的IP地址设置、轮询方波产生、数据读取。
通过MBUS_CTRL和MBUS_CTRL_P1指令对PORT0口和PORT1口进行初始化,初始化完成,PORT0口和PORT1口启用MODBUS RTU通信功能,这时PORT0口和PORT1口不能再用于PPI通信,V4.0 STEP 7 MicroWIN无法通过PPI电缆对PLC上传下载程序,也无法连接触摸屏。通过PORT0口和PORT1口上传下载程序,要把PLC运行开关拨到STOP位置。设置CP243-1 IP地址时,需要在V4.0 STEP 7 MicroWIN运行以太网向导,CP243-1 IP地址必须和数据采集服务器IP地址处于同一网段。设置完成后,需要将PLC和CP243-1断电后重新上电,使CP243-1 IP地址生效。
CP243-1 IP地址只要修改过,都需要断电后重新上电。CP243-1配置完成后,就可通过以太网对PLC程序进行下载、上传和监控。MODBUS RTU通信属于异步串行通信方式,MODBUS主站发出数据请求后,对应从站响应主站,向主站发出相关的数据,程序里需要编写方波产生指令,产生多个脉宽为2 s的方波对电能表进行轮询,当方波从0到1跳变时,主站发出一个数据请求指令,同时主站需要一直使能数据接收。在2 s时间内从站要完成数据发送,主站要完成数据接收。通过调整方波的脉宽可以调整主站接收从站数据的时间。PLC通过PORT0口和PORT1口读取电能表数据的主程序如图5所示。
图5 PLC通过PORT0口和PORT1口读取电能表数据主程序
该段程序主要实现通过PORT0口和PORT1口分别读取两个不同厂家电能表有功电能累计。MBUS_MSG为PORT0口数据读取指令,V501.1和V501.2都是脉宽为2 s的脉冲,SM0.0为PLC内部标志位,在PLC工作时SM0.0一直保持为1。程序在线运行,当V501.1从低电平跳跃为高电平时,通过| P |指令在First 管脚产生一个脉冲,PORT0口发出数据请求,请求读取电能表地址为9、寄存器地址从40025开始的两个寄存器数据。V501.1同时连接MBUS_MSG 指令的EN管脚,一直保持2 s的高电平使能MBUS_MSG接收数据,如在2 s内未收到数据或数据有误,V601.1置0,同时生成故障代码存储于VB619,数据接收成功则V601.1置1,VB619为0。
地址为9的电能表正向有功电能高位字地址为VW732,保存在40025寄存器中,低位字地址为VW734,保存在40026的寄存器中。通过监控状态表可以看到,VW732=16#0003(十六进制表示),VW734=16#7E87,则按双字来读取的VD732=16#00037E87,该厂家电能表高低字不需要转换,16#00037E87即为电能表的正向有功电能,与电能表面板显示的数值一致。MBUS_MSG_P1为PORT1口数据读取指令,读取电能表地址为10、寄存器地址从40047开始的两个寄存器数据,该品牌电能表正向有功电能高低位需要转换,在状态表里按双字读取得到的数据VD736=16#1151025A,PLC通过指令ROR_DW对数据16#1151025A循环右移16位后最终得到16#025A1151,该数值与电能表面板显示的有功电能累计一致,ROR_DW指令的EN管脚必须要接一个触点,因此用PLC内部标志位SM0.0进行连接,否则程序会编译出错。经ROR_DW指令处理的数据由WINCC运算得到实际电能累计值。类似的数据处理,网关是无法实现的。
7、结束语
能源管理系统建设时应采用符合现场实际情况的方式对电能数据进行采集,通过利用DCS系统已有光纤网络构建电能采集通信网络可降低系统建设成本。网关采集电能表数据是一种比较常用的方式,无需编写程序,简单易懂,但携带电能表数量少,因此适用于计量电能表数据较少的场合; PLC具有携带电能表数量多、数据读取稳定、性价比高等优点,同时PLC所具备的数据处理能力可替代能源管理服务器对采集到的电能表数据进行基础处理,减轻服务器的负荷,因此在计量电能表数量较多时,建议采用。
编辑:俞垚伊
监督:0571-85871667
投稿:news@ccement.com