一种电能表编程器
技术领域
本发明涉及一种电能表编程器,属电力计量技术领域。
背景技术
随着多功能电能表的应用越来越广泛,对多功能电能表编程、抄表的工作量也日益增加。出于上位机、集中器与电能表通讯的需要,国家在1997年颁布了DL/T645-1997电能表通讯规约。但由于该规约制定时间较早,随着多功能电能表的扩展功能日益增多,该规约已经不能满足不断发展的各项需求。于是各省电力公司、电能表供应厂商纷纷制定各自的通讯协议,因而各家通讯规约各不相同,并且不同厂家、不同型号的电能表通讯规约、结构都存在较大的差异。
在对多功能电能表进行编程、抄表、检验精度与功能时,都需要使用厂家专门的掌上编程器对电能表进行通讯和控制。虽然现在各个电表生产厂家都开发了针对本厂特定型号电能表的编程、抄表掌机,但各电能表厂商均采用不同的编程、抄表电能表编程器和编程软件、使用自定义的通讯方式和通讯协议,即使在同一个电表厂内,不同型号的电能表和电能表编程器的通讯规约和软件都各不相同。在江西电网已安装运行的有长沙威胜、百富华隆、华立仪表、东方电子、上海金陵、深圳容亮、珠海国测、漳州科能、科陆电子等近二十家电表厂商,近80余种型号的电能表。这样操作人员需要学会使用几十种编程、编程器的方法,加大了使用难度,同时也加大了出错的机率,增加了工作量,造成编程、抄表人员身心疲惫,效率低下。
为了改变这一状况,本发明提出了一种全新的思路:统一电能表编程器对电能表编程、抄表的软件规范,并兼顾已安装运行的多功能电能表,使本标准适应在运行的任一种多功能表。重新编制一套掌机编程、抄表软件,可对各种类型的电能表编程抄表。操作人员只要学习一个程序的操作即可,提高工作效率,避免错误操作的发生,降低成本,减少掌机的使用量,降低生产成本。
发明内容
本发明的目的是:公开一种电能表编程器,统一各多功能表编程软件,解决现在各个电表厂的电表编程器各自独立互不通用的问题,统一多功能表电能表编程器编程软件的技术规范,适应技术管理的需要。
本发明的技术方案是,建立电能表编程器对电能表编程、抄表的软件规范,并兼顾已安装运行的多功能电能表,使之适应在运行的任一种多功能表。
本发明在通信软件编写中数据链路层采用主-从结构的半双工通信方式,以编程器为主站,电能表为从站;每个电能表均有各自的地址编码;通信链路的建立与解除均由主站发出的信息帧来控制;每帧由帧起始符、从站地址域、控制码、数据域长度、数据域、帧信息纵向校验码及帧结束符7个域组成。每部分由若干字节组成;通讯字节格式采用每字节含8位二进制码,传输时加上一个起始位(0)、一个偶校验位和一个停止位(1), 共 11位;D0 是字节的最低有效位,D7 是字节的最高有效位。先传低位,后传高位。
数据传输时,在主站发送帧信息之前,先发送4个字节FEH,以唤醒接收方;传输次序采用所有数据项均先传送低位字节,后传送高位字节。发送时每个字节加33H再发送,接收时每个字节减去33H再使用。
数据标识编码采用四个字节区分不同数据项,四字节分别用 DI3、DI2、DI1 和 DI0 代表,每字节采用十六进制编码。数据类型分为七类:电能量、最大需量及发生时间、变量、事件记录、参变量、冻结量、负荷记录。
本发明在编程器内建立一个通讯协议数据库,将各种不同类型电能表的通讯协议按应用层内容(如包头、通讯地址、数据标识、控制字、包尾等内容)分离开,再将应用层的各段内容和其不同的表达方式进行排列组合,并为其编写一个ID号,即同一个内容(如包头)每种不同的表达方式赋予一个ID号。再将各种不同的规约的各段内容ID号组成和顺序保存到数据库中,调用时自动按数据库中保存的对应格式进行通讯。兼顾了原有已安装运行的电能表的编程及使用。
1. 编程器通信软件的编写
(1) 数据链路层
采用主-从结构的半双工通信方式。编程器为主站,电能表为从站。每个电能表均有各自的地址编码。通信链路的建立与解除均由主站发出的信息帧来控制。每帧由帧起始符、从站地址域、控制码、数据域长度、数据域、帧信息纵向校验码及帧结束符7个域组成。每部分由若干字节组成。
(2)通讯字节格式
每字节含8位二进制码,传输时加上一个起始位(0)、一个偶校验位和一个停止位(1), 共 11位。其传输序列如图2所示,D0 是字节的最低有效位,D7 是字节的最高有效位。先传低位,后传高位。
(3)通讯帧格式
帧是传送信息的基本单元。编程器数据通讯帧格式如图1所示。
(4) 帧起始符68H
标识一帧信息的开始,其值为 68H=01101000B。
(5)地址域 A0~A5
地址域由 6 个字节构成,每字节 2 位 BCD 码,地址长度可达12位十进制数。每块表具有唯一的通信地址,且与物理层信道无关。当使用的地址码长度不足 6 字节时,高位用“0”补足。
(6) 控制码 C
控制码的格式见附图2:编程器数据通讯控制码的格式图。
(7)数据域长度L
L 为数据域的字节数。读数据时 L≤200,写数据时 L≤50,L=0 表示无数据域。
(8)数据域 DATA
数据域包括数据标识、密码、操作者代码、数据、帧序号等,其结构随控制码的功能而改变。传输时发送方按字节进行加33H处理,接收方按字节进行减33H处理。
(9)校验码 CS
从第一个帧起始符开始到校验码之前的所有各字节的模 256 的和,即各字节二进制算术和,不计超过 256 的溢出值。
(10)结束符 16H
标识一帧信息的结束,其值为 16H=00010110B。
2. 传输
(1) 前导字节
在主站发送帧信息之前,先发送4个字节FEH,以唤醒接收方。
(2)传输次序
所有数据项均先传送低位字节,后传送高位字节。发送时每个字节加33H再发送,接收时每个字节减去33H再使用。
3. 数据标识
数据标识编码用四个字节区分不同数据项,四字节分别用 DI3、DI2、DI1 和 DI0 代表,每字节采用十六进制编码。数据类型分为七类:电能量、最大需量及发生时间、变量、事件记录、参变量、冻结量、负荷记录。
本发明与现有技术比较的有益效果是,本发明通过统一各多功能表编程软件,解决了现在各个电表厂的电表编程器各自独立互不通用的问题,统一多功能表电能表编程器编程软件的技术规范,适应技术管理的需要。
本发明适用于对各种电能表编程使用。
附图说明
附图1为本发明编程器数据通讯帧格式图;
附图2为本发明编程器数据通讯控制码的格式图。
具体实施方式
本发明一种能对各种电能表进行编程的电能表编程器。具体实施如下:本发明最大的特点就在于一套编程器要兼顾各电表厂的不同类型、不同通讯方式、不同通讯规约的电能表进行通讯。不同通讯方式、不同通讯规约的主要体现如下:
(1)物理层:
分为红外接口或RS485接口两种方式;
(2)数据链路层:
包括:字节格式、帧格式、帧起始符、地址域、控制码、数据域长度、数据域、校验码、结束符等;
(3)数据标识:
体现在数据标识及结构和数据传输形式(是采用单项数据传输还是采用数据块方式)两方面;
(4)状态字、特征字、模式字、错误信息字的表述方式不同。
各不同类型的电能表通讯规约虽互不相同,但又存在相同的节点交集。软件管理的目标是不仅要将属于各个不同的通讯规约、流程、事务清晰地分开,还希望能够自己定制或删除流程类型,对于每一个流程类型可以添加、删除节点并可将其内部节点进行排序,为业务上可能出现的变动做好准备。由于不同类型间存在节点交集,可以创建一个流程池,即各项业务所涉及的流程全集。柔性流程的配置目标可抽象为:全集元素的不同排列、组合。
针对各多功能电表厂商所使用的编程器不同、采用的通讯规约不同、通讯方式有异、各有自我保护的技术壁垒、编程器互不通用的情况,首先在编程器内建立一个通讯协议数据库,将各种不同类型电能表的通讯协议按应用层内容(如包头、通讯地址、数据标识、控制字、包尾等内容)分离开,再将应用层的各段内容和其不同的表达方式进行排列组合,并为其编写一个ID号,即同一个内容(如包头)每种不同的表达方式赋予一个ID号。再将各种不同的规约的各段内容ID号组成和顺序保存到数据库中,调用时自动按数据库中保存的对应格式进行通讯。兼顾了原有已安装运行的电能表的编程及使用。编程器具有自动识别判断通讯规约功能,若遇上新表新协议,也能添加进入数据库,编程器自动从编程器协议数据库中调用对应的通讯协议,确保能进行控制通讯。