智能配电数字终端软件系统消息设计方案
智能电网是一个能够实现对用户和设备进行实时监视的完整体系,是利用各种信息提高电网的可靠性、经济性和灵活性,为电网运行和管理人员提供更完整、便捷的电网状态显示界面,帮助电网实现智能化运行的新型电网。智能电网包括智能发电、智能输电、智能配电和智能变电4个部分。在此,智能配电数字终端软件系统根据内聚性、通用性划分为应用逻辑、业务逻辑、消息控翻、设备管理和基础构建5个层次,降低了层与层之间的耦合性。在智能配电网中智能配电数字终端需要采集的电力数据和数据来源很多,为了管理多个事件源和消息源,采用了基于反应器模式的事件驱动机制,保证了系统的实时性,提高了系统的工作效率。
近年来,智能电网这一新概念逐渐受到国内外电力专家的青昧。智能电网主要是运用先进的网络分析技术以及新的智能化技术手段,将电力企业的各种设备、控制系统、生产任务及工作人员有机地联系在一起,在一种"公共信息模型"的基础上自动收集和存储数据,对供电系统的运行及电力企业的经营管理进行全面、深入的分析,客观正确地优化其资产管理和供电服务。智能电网包括智能发电、智能输电、智能配电和智能变电4个部分。
智能配电网是智能电网的重要组成部分,可实现对微网的灵活控制,从而提高需求侧的供电可靠性和管理水平。智能配电数字终端与系统主站的通信支持《Q/GDW 376.1-2009电力用户用电信息采集系统通信协议》,在与计量设备通讯时支持《DL/T 645-2007多功能电能表通信规约》。智能配电数字终端实现了实时数据采集、定时自动采集、终端主动上报等多种数据采集方式,同时也支持电能数据、交流直流模拟量、电能曲线、电能质量越限统计数据、事件记录等各种电力数据类型,提供友好的人机界面,能够与主控模块进行显示、键盘、本地维护口等信息的交互,在通信端采用了红外、串口、以太网、USB等多种通信方式,实现了配电自动化、事件记录、远程控制一体化。
在智能配电网中,需要采集的电力数据以及数据的来源较多,本文提出的消息设计方案能够很好地解决大量数据源的管理,保证系统的实时响应,提高系统的工作效率。
1 终端软件系统
1.1 终端软件模块
智能配电数字终端软件系统根据各模块职责内聚性、通用性、领域相关性等划分为基础构建模块、设备管理模层、消息控制层、业务逻辑模层、应用逻辑层等5个部分。软件系统逻辑划分如图1所示。
系统中基础构建模块负责向系统提供所有运行所需的基础构建,如引用计数、SQLite数据库、Log运行记、XML解析、消息管理器等;设备管理模块提供对LCD显示模块、ADC设备、电源等硬件设备的基础管理和高层抽象;消息控制模块将设备的输入用消息的形式引入系统;业务逻辑模块主要负责协议解析、数据计算分析、对数据库的存储及操作等;应用逻辑模块处理本地用户输入、界面显示控制,以及用消息注册的方式接收消息,并进行消息处理等相关操作。
1.2 消息控制模块
消息管理为系统运行架构的运行机制,负责控制各个设备产生消息,供其他消息控制模块调用。消息控制模块基于消息管理器,屏蔽各设备实现的差异,以增强系统的扩展性以及降低子系统之间的耦合性,统一各种输入输出设备在系统中的实现,使所有设备的输入均以消息的形式引入系统。系统运行流程如图2所示。从图2中看到,在消息管理循环中,消息管理器将对主站通信设备、用户输入、电能表通信设备、开关量通信设备、直流信号采集设备和定时器等抽象设备的输入以消息的形式引入系统,并通告应用逻辑模块对消息进行处理。
2 系统运行机制
本系统的运行基于反应器(Reactor)模式的事件驱动机制。Reactor释义"反应器",是一种事件驱动机制,与普通函数调用的不同之处在于:应用程序不是主动地调用某个API完成处理,而是根据Reactor提供的回调机制统一将接口注册到Reactor上。当这些事件发生时,消息管理中心会调用这些已经注册的函数处理相应的事件(I/O读写、定时和用户输入等)。这样系统能够将处理函数的调用者与被调用者分离,使本系统更加灵活。
2.1 系统运行结构设计
本系统采用的事件驱动模式与消息服务系统类似,同时又存在区别。在消息系统中,消息客户端和消息服务器端只需建立一个连接,就可以随时发布消息。事件驱动的本系统预先定义事件的触发条件和事件的执行过程并在客户端和服务端建立连接,当3系统在工作过程中发现事件满足触发条件,事件就被激活并开始执行。系统中的事件驱动流程示意图如图3所示。
图3中,事件消费者向事件管理器订阅事件,事件生产者向事件管理器发布事件,当事件管理器从事件生产者那接收到一个事件时,事件管理器把这个事件转送给相应的事件消费者。