张 然,郑玉根
(马钢自动化工程公司,安徽马鞍山 243011)
电力是钢铁企业消耗的主要能源之一。近年来,为实现我国经济的可持续性发展,国家提出科学发展观,转变粗放型的经济增长模式。落实节能减排政策更成为企业的一项重要任务,企业纷纷上马能源采集监管系统,其中基础电量的采集成为其中的难点。
下文主要介绍使用PLC串口通讯卡采集电能表数据的方法。
通常一级采集系统使用的是计算机系统,具有系统维护升级困难,对于网络安全性要求高,稳定性低的缺点,因而在南钢与马钢一钢轧的能源采集系统中选择了PLC作为采集的一级系统。
电表与PLC的通讯方式通常有两种,脉冲计数与协议通讯方式。
脉冲计数方式对于PLC数字量输入模板的采集速度有要求当计量对象用电量很大时需要使用高速计数模板,而且传输过程中由于干扰等原因容易丢失脉冲日积月累误差较大。协议通讯的方式,可保证采集数据与表内计量数据的一致。支持常见PLC通讯协议如Profibus的电表多为进口电表,价格贵采购周期长,不符合国内电量计量人员操作习惯,国内现有新式电表都支持DL/T645国标的通讯协议,此协议在国内电网系统中使用广泛,是电表升级的首选。
最终采集子站的配置为S7300系列CPU一个,CP341串口通讯卡一个通过编程实现DL/T645协议支持,CP343以太网通讯卡一个作为与二级系统通讯的接口。
3.1.1 电气协议
CP341与电表间采用EIA-485的方式连接,可以支持多点通讯,最大通讯距离1200m,在电表集中的区域安装采集子站,电表以线形网络的方式连接到EIA-485网络中,CP341网卡为主站,对需要采集的数据发送请求消息,电表以应答的方式将数据送至CP341。
3.2.1 字节格式
每字节含8位二进制码,传输时加上一个起始位(0)、一个偶校验位和一个停止位(1),共 11位。其传输序列如图1。D0是字节的最低有效位,D7是字节的最高有效位。先传低位,后传高位。
字节格式见图1所示。
图1 字节格式
3.2.2 帧格式
通信链路的建立与解除均由主站发出的信息帧来控制。每帧由帧起始符、从站地址域、控制码、数据域长度、数据域、帧信息纵向校验码及帧结束符7个域组成。每部分由若干字节组成。帧是传送信息的基本单元。帧格式如图 2所示。
图2 帧格式
当传输数据时,所有通讯伙伴都必须遵守一套用于处理和实现数据通讯的固定规则。ISO定义了一个7层模型,该模型被公认为是国际标准化传输协议的基础。按ISO的OSI七层参考模型DL/T645通信协议主要涉及三层,物理层、链路层、应用层。物理层:规定了数据终端通信接口之间的物理接口、接口的物理和电气特性,负责物理媒体上信息的接收和发送。
数据链路层:负责数据终端之间通信链路的建立并以帧为单位传输信息,保证信息的顺序传送,具有传输差错检测功能。应用层:利用数据链路层的信息传递功能,在数据终端设备之间发送、接收各种数据信息。
3.3.1 组态CP341通讯处理器
ASCII驱动程序通过通讯处理器和通讯伙伴之间的点对点连接控制数据传输。该驱动程序包含物理层(第1层)。在将完整的发送消息帧传输给通讯处理器的过程中,消息帧的结构保持开放。对于接收方向,必须组态消息的结束标准。因而选择CP341通讯协议为ASCII。
按照DL/T645对单个字节的定义对字节格式进行设置。Data为8位,一个停止位,校验方式为偶校验。
按照DL/T645对消息帧的定义,设置消息帧中字节允许的最长间隔时间为500ms,结束符为16H。
3.3.2 PLC端发送主站请求帧
PLC作为采集主站,一般不负责对电表的设置及维护操作,因而发送的请求指令通常为对各种电量的查询指令。以读取08175050号电表当前正向有功总电为例,需要发送的数据帧为“6850501708000068010243C39816”。在数据块中建立14个字节的地址区填入数据帧编写校验程序,确保在发送数据前完成对校验位的数据运算,调用功能块FB 8“P_SND_RK”将请求帧由CP341发送至电表网络。
3.3.3 PLC端接收应答帧
FB 8正确发送请求帧后DONE返回值为1,当网络上电表接收到CP341发送的请求帧后,电表表号与请求帧中吻合的电表做出相应,发送应答帧至网络,CP341调用功能块FB 7“P_RCV_RK”接收数据并由CP341的数据区传送给PLC中由用户指定的数据块中。
前面两节介绍了如何发送请求帧与接收应答帧,但在RS485网络上通常挂有多块电表,由于CP341的通讯与PLC的CPU处理周期并不一致,同时多表抄表的过程中如何分配资源,如何对出错讯息处理均需用户编程实现。
使用FB功能块编程,便于程序重复使用,如下图所示每个采集站调用此功能块时,只需在发送命令数据块中填入地址,控制码,数据长度和数据。制定需要发送的命令帧的数量,发送数据帧所在的DB块,DB地址,抄表返回的数据存放的DB块,DB地址,发送命令帧的间隔时间,通讯超时出错的时间。“P_SND_RK”、“P_RCV_RK”两个 CP341内部功能块均在通讯功能块内部调用,他们的背景数据块不再占用新的DB块,包含在通讯功能块内部,整个程序占用的DB块数量更少,程序结构更加简洁。如图3所示。
图3 通讯功能块调用
通讯功能块,程序时序图如图4所示
本程序在马钢股份公司第一钢轧总厂LF炉电量考核系统中应用,取代原有脉冲计数方法对电量进行记录,项目投用一年来工作,解决了原系统计量误差大的缺点。本程序也应用于南钢集团能源采集系统一级电量采集,对整个集团上百块电表进行抄表工作,由于使用了功能块编程,程序具有良好的通用性避免了重复编程,大大节约了现场调试时间,缩短了工期。
图4 程序时序图