论文部分内容阅读
随着经济、社会的不断发展,电力在社会中的重要性不断提高。如何实现用电户的电表远程抄收与管理问题日益成为配电、用电领域研究的新课题。同时,随着计算机及通讯技术的发展,GPRS技术也已经非常成熟,将GPRS技术应用于电力集抄系统中已经成为当前电力行业的一个研究热点。本篇论文所研究的基于GPRS的电力集抄系统就是使用GPRS技术实现对用户用电情况的远程监控与管理。整个系统由主站管理软件和硬件集抄终端产品两部分组成。主站软件实现对于安装在用户现场的集抄终端的管理,编制并下发抄收或负控计划,接收终端报警数据。集抄终端安装在用户现场,根据主站下发的管理方案进行用户电表的实时抄收、监测与管理。集抄终端本身采用嵌入式平台设计,其内部运行了一个C语言开发的管理程序。本文主要论述了基于GPRS的电力集抄系统的设计与实现方法,具体包括主站软件设计和集抄终端嵌入式软件设计两部分。
在使用GPRS抄表通讯的实际应用中,终端通过GPRS上网,其IP地址是动态获取不断变化的,同时客户端地址也是动态分配的内网地址,如何实现动态地址的双方相互通讯是一个技术难题。在充分调研不同用户实际需求的基础上,本文创新性提出一个切实可行的软件分层设计方案来解决此问题,整个主站系统分为通讯服务器、前置机服务器、应用服务器及客户端程序4层系统,具体说明如下。
■通讯服务器位于Internet上,具有静态Internet IP地址,其功能是为电业局内网访问GPRS终端数据提供中转服务,接收终端上传的数据、将主站下发的命令转发给特定的终端。本质上通讯服务器是客户端和终端之间的通讯代理。
■前置机服务器作为客户端和通讯服务器的通讯中介,一方面提供命令排队、数据缓存、通讯封装、故障监测等功能,另一方面作为客户端与通讯服务器的通讯代理,具体完成客户端命令的执行和结果接收。
■应用服务器系统主要实现两个功能,一个是WEB发布功能,对用户提供WEB查询、统计、分析等功能,同时对其它模块提供WEB服务(WebService);另一个功能是作为应用服务器,对数据及部分逻辑功能进行封装,简化客户端逻辑操作,同时提高数据库访问的安全性。
■客户端直接面向用户,提供各种业务功能,如:终端管理、实时抄收等。
另外,国内终端生产厂家众多,通讯协议等各不相同,如何使用一套主站兼容不同类型、不同厂家的终端也是抄表系统要解决的实际问题。本文创新性提出了一种基于抽象终端的具体软件实现方案,将不同终端的指令集合进行归纳总结,整理出一套虚拟指令,整个系统统一采用虚拟指令操作,直到前置机下发指令的时候再将虚拟指令翻译成物理指令,解决了异种终端的统一管理问题,使得不同终端通讯库可以以插件形式供上层软件调用,添加一种新终端只需要给前置机系统提供一个新的通讯DLL库即可。
整个主站软件系统严格按照三层体系结构设计,表现层、业务逻辑层、数据操作层等三层完全独立设计,以分布式方式运行在不同的计算机上,相互之间通过Remoting和Web Service方式进行远程组件调用与通讯。同时,三层架构也实现了对于数据库的封装与隔离,提高了数据库服务器的物理安全性。
GPRS集抄终端软件系统的主要功能是接收主站的命令,根据主站制定的监测、抄收计划对电表及相关设备进行实时监测,并对抄收的电表数据进行保存和上传。具体功能包括定时抄收、实时抄收、报警监测等。同时,终端程序支持红外、GPRS、串口等多种通讯方式。本文针对ARM平台物理内存小、存储器读写速度慢但需存储数据量大等特点,提出了一种动态存储的解决方案,提高了系统存取效率与利用率:针对FLASH读写次数有限的难题,设计了简单的存储器坏块动态替换方案。
本文对通讯服务器、前置机、应用服务器三部分的具体实现方法、终端软件具体实现方法进行了详细论述,对于客户端及WEB展现层进行了概括性说明。文中针对终端实时通讯的技术难点问题、大量终端同时操作的效率问题、多客户端同时操作的效率问题等提出了行之有效的解决方案。论文最后对于当前计算机比较流行的一些软件技术(如:设计模式、Web Service、Remoting等)在GPRS电力集抄系统中的应用进行了一定的探讨。