【问题】能耗监测系统数据交换的设计?
【解答】在能耗监测系统中,数据测量仪表得到数字信号,通过数据采集器定时采集数据并发送到数据中心,应用软件处理数据,上传数据,整个过程都是数据交换和数据处理的过程。如何结合能耗监测系统的特点,将现有的成熟技术合理地用到能耗监测系统中,是数据交换设计的关键。数据交换主要包括数据发送、数据传输和数据解析,数据解析依赖数据发送时的数据定义。
1.数据采集过程
在能耗监测系统中数据要记录到省市级信息中心的数据库中需要包括以下几个环节,传感器测量数据,采集器获取传感器数据,采集器向省市级信息中心发送数据,省市级信息中心系统软件接收并存储数据。因此数据交换分为两大部分,其一为数据传感器和采集器的数据交换,其二为采集器和省市级数据中心系统平台软件的数据交换。采集器通过RS-485协议定时和传感器通讯并采集数据,采集器向信息中心上传数据。数据传感器和采集器为现场有线连接,具有标准的协议,不用单独设计,而采集器和信息中心数据交换必须经过INTERNET,在连接方式和数据表示法及其格式方面没有统一标准,必须结合系统特点制定自己的数据表示法和数据传输格式。
2.能耗监测数据的表示方法
数据传输采用数据流方式发送和接收,当采集器与信息中心建立连接后,开始发送数据流,在数据流中包括了采集器获取的各个传感器的数据,因此数据流中必须能够区分数据是哪个传感器的数据,数据代表的物理意义(如空调用电、动力用电等)。能耗监测数据按照《国家机关办公建筑和大型公共建筑能耗监测系统软件开发指导说明书》定义数据代码,明确真实数据和计算机表示数据的关系。定义将随着能耗监测系统的不断完善,进行补充和修改。在本软件中严格执行开发指导说明书中的代码定义,使得后面信息中心的数据解析变得很容易,为解析数据提供了开放的定义,也为数据采集器提供了开放的标准。
3.采用标准的传输数据格式
数据格式应独立于软件和硬件,避免对软件和硬件的依赖,同时也减小了对软件和硬件的限制,便于不同应用程序之间共享数据。本软件采用XML格式传送数据,主要考虑XML数据以纯文本格式进行存储,纯文本数据在不同操作系统之间都是一样的,不依赖于操作系统,同时XML有其独立的语法定义,已成为一种标准,不用单独制定格式定义规则,且通用性强,已开发出一些公开发表的成熟解析工具,减少了编写程序的工作,程序稳定性也大大提高。从数据采集器到数据中转站或信息中心,再上传到住建部信息中心,各级均采用XML格式进行数据交换。
4.在数据接收和数据记录之间采用中间件技术
系统软件接收采集器发送的数据时间短,而接收到的数据需要记录原始数据,并在进行拆分运算后再记录到各自的数据库中,需要时间远大于接收时间,因此接收的瓶颈发生在接收数据后的处理,当有大量的被监测建筑物时,可能造成数据堵塞或丢失数据,因此必须解决传输数据的速度问题。为此将数据接收存储程序分成两部分,第一部分直接与数据采集器直接进行数据交换,及时获取数据,该部分程序功能简单,只起中间传递作用,维护量很小,第二部分保存数据到数据库并进行数据拆分,中间采用具有邮局功能的中间件技术(第三方软件),将两部分隔离,第一部分软件将得到的数据直接发给中间件,中间件可保证将收到的数据准确送达第二部分,这样较好地解决了数据接收速度和准确到达目的地的问题。第二部分程序将获得的数据按照能耗监测系统软件开发指导说明书中的要求进行存储拆分,建立各种数据库,供数据分析展示模块使用。
5.根据软件模块功能确定编程语言
数据接收部分是数据交换的核心,在选择语言时,需要考虑数据传输格式和界面设计,该部分没有复杂界面,传输数据格式在上述3.2和3.3中已经明确,采用XML格式进行数据传输,所以采用JAVA语言作为数据交换部分的编程语言,它具有较强的处理XML格式数据的功能,同时有很强的跨平台可移植性,数据无需转换,所以便于操作系统升级;数据分析展示部分对界面要求高,属于客户服务器模式,采用。Net编程。
6.采用标准的协议与数据采集器进行数据通讯
目前,不同厂家的BAS系统之间很难进行数据交换,各自组成一个封闭的系统。原因是没有开放的统一的数据传输标准。能耗监测系统是一个新的应用系统,而采集器必须与省市级平台软件进行数据交换。因此上游软件开发商应考虑系统的开放性和兼容性,便于采集器生产商自行开发满足系统软件要求的数据发送程序,便于集成商集成系统。通过3.2和3.3建立的开放能耗监测系统数据通讯协议,数据采集器厂商可以方便地开发与系统软件通讯的数据发送程序。
7.双通道设计
监测系统和采集器一直处于连续运行状态,当一些采集器参数需要更新或程序升级时,采用两个连接的逻辑通道,可以在不影响正常使用情况下,保证信息中心与采集器的指令信息交换。
以上内容均根据实际工作中遇到的问题整理而成,供参考,如有问题请及时沟通、指正。