基于Delphi的风光互补路灯多平台远程监控系统
2018-01-10齐丽强黄清龙
齐丽强+黄清龙
摘 要:随着风能和太阳能等新能源技术的快速发展,作为早期应用的新能源路灯也得到了愈加广泛的推广。针对目前风光互补LED路灯趋向智能化发展的趋势以及系统可靠性低、工作寿命短、维护成本高等实际问题,文中提出了一种智能的基于GPRS通信并使用Delphi开发的风光互补LED路灯远程监控系统。该系统通过GPRS无线通信网络将路灯控制器终端与PC机或手机平台监控终端互联,路灯控制器中的实时数据通过ZigBee节点经由数据集中器传输到云端服务器,云端服务器处理完数据后分发到相应的监控终端,同时,亦可通过各终端实现对各风光互补路灯的远程控制。实践证明,所设计系统数据通信安全可靠,运行稳定,具有良好的工程应用价值和经济推广价值。
关键词:风光互补路灯;远程监控;GPRS;Delphi
中图分类号:TP24 文献标识码:A 文章编号:2095-1302(2017)12-00-03
0 引 言
随着我国经济力量的不断壮大,国内对能源的需求也越来越大,石油和煤炭等化石能源未来将会愈发紧缺。同时,化石能源的大量使用导致环境污染,国内雾霾天气频发。为了尽快解决此类问题,大力倡导可再生能源的开发利用不仅是当前急需解决的问题,更是具有长远需求的工程。太阳能与风能同是目前发展最成熟的可再生能源,我国幅员辽阔,风能和太阳能潜力巨大,对其进行大力开发并应用在新能源领域有着广阔的前景。
风光互补路灯是风光互补发电技术的典型应用,自2009年开始试点应用。相比太阳能路灯,风光互补路灯中,风力发电和太阳能发电能够弥补彼此单独发电量不足的缺憾,具有良好的资源互补性、供电安全性和稳定性。相比传统市电路灯,风光互补LED(Light Emitting Diode,LED)路灯的建设与发展在为政府节约大量经费的同时,也为城市节能减排作出了巨大贡献。
尽管风光互补LED路灯系统在一些地方得到了大力推广,但由于技术及维护等问题导致项目频频失败,夜间亮灯时间逐步缩短,使用寿命大打折扣等现象屡见不鲜。因此,如何保证路灯的安全、稳定、可靠运行成为新的课题。针对市电路灯系统,文献[1]和文献[2]分别通过GPRS(General Packet Radio Service,GPRS)和电力线载波的方式搭建了智能监控系统,对路灯的节能减排以及智能控制都起到了良好的辅助作用。文献[3]则将无线通信技术应用在太阳能和市电互补路灯中,并在路灯智能控制方面做了进一步研究。本文针对目前使用较为广泛的风光互补LED路灯系统,基于Delphi最新的并不断成熟的多平台开发和DataSnap技术,使用GPRS无线通信网络、ZigBee物联网和阿里云技术,设计了一种智能风光互补LED路灯多平台远程监控系统。该系统在保证系统可靠性和稳定性的同时,延长了系统的工作寿命,大大减少了项目投资建设和运营费用,有利于风光互补LED路灯系统的进一步推广。
1 路灯监控系统总体设计
风光互补LED路灯监控系统结构如图1所示。
系统由道路现场的风光互补LED路灯、ZigBee无线通信节点、集中器网关、远程监控平台以及云端通讯服务器和数据库服务器构成。每个风光互补路灯都设有一个风光互补路灯控制器和对应的无线通信节点。所有路灯节点和集中器网关内的无线通信模块构成了一个无线自组网数据通信网络。每盏风光互补路灯的数据都可以通过对应路灯内的无线通信节点发送至对應路段的集中器网关,并通过GPRS通信上传到云端服务器,并最终由其传送到远程的PC机和手机监控平台。
随着近几年Delphi的不断更新与发展,其依然处于主流软件开发工具的地位,同时也已具备快速开发Windows、iOS、Android等平台的应用程序。本系统的PC机和手机监控平台以及云端服务器程序都基于Delphi开发完成,在提高程序开发效率的同时,也极大地满足了各部分之间兼容性的要求。通讯服务器主要负责数据链路的维护以及数据交互的可靠与稳定,基于DataSnap技术的不断发展,数据库服务器采用DataSnap+Access搭建。DataSnap解决了Access本地小型数据库跨网络通信的问题,后期还会根据系统需求不断推广替换成中大型数据库。通过服务器远程终端便可实时监控路灯的运行状态,也可以查询备份在数据库内的历史数据,并对底层风光互补LED路灯的参数进行远程设置。
2 无线数据传输设计
在整个系统中,数据的无线可靠传输是系统能够稳定运行的关键,ZigBee无线通信节点、相应的数据集中器以及云端服务器便是数据传输设计的核心所在。
2.1 ZigBee无线通信节点
在风光互补LED路灯监控系统底层组成的风光互补LED路灯中,除设置有风光互补LED路灯控制器之外,还对应设置一个无线通信模块,我们称之为无线通信节点。无线通信节点的主要功能是负责将路灯数据发回所属的集中器网关,并最终通过集中器将数据发送回远程监控中心,接收平台通过集中器发给对应控制器的命令。
ZigBee技术是近几年兴起的一种短距离无线通信技术,其工作于免费的ISM频段(2.4 GHz),主要用于低成本、低功耗、低复杂度、低数据速率、近距离、高可靠性的多设备联网应用。ZigBee技术具备强大的自组网能力,支持三种主要的自组网无线网络类型,即星型结构、网状结构和链状结构。根据开发对象的特点和ZigBee的传输特性,设计了基于链状结构的风光互补路灯ZigBee节点网络,并取得了很好的效果。
2.2 数据集中器
通常所监控路段的路灯都远离监控中心,甚至是跨区域监控,因此数据集中器尤为重要。近距离上,由于ZigBee自组网技术的灵活可靠性,只需保证有任意一个与风光互补路灯控制器相连的ZigBee节点可将数据传输给数据集中器即可;远距离上,数据集中器通过内部的无线通信模块将路灯数据接收后,由内部的GPRS模块通过公共GSM网络发送到远程服务器。从服务器传送过来的数据亦通过上述链路逆向回传。endprint
2.3 云端服务器设计
随着阿里云技术的不断发展和推广,从缩减企业开发成本和提高传输便利性角度考虑,使用云技术进行相关技术开发成为越来越多公司的选择,本系统采用的通讯服务器和数据服务器都基于云端支持。从Delphi2009开始,DataSnap技术采用全新的多层架构,不再基于微软的COM,而摆脱COM就意味着摆脱了Windows的束缚。相较于以前,TCP/IP通信也变得简单许多,全新的DataSnap只需一个中间件就可以开发普通的TCP/IP通信。
本系统的通讯服务器基于DataSnap技术进行设计与开发,其核心围绕TDSServer控件、TDSServerClass控件和TDSTCPServerTransport控件展开。
TDSServer控件是DataSnap服务端程序的逻辑核心,用来启动和停止服务。AutoStart属性默认设置为true,程序一旦运行就自动启动服务。
TDSServerClass控件代表一个服务器类,服务端的方法由它来引出供客户端远程调用。DataSnap Server可自动创建和销毁一个服务器类的实例。该实例的生命周期受TDSServerClass的LifeCycle属性控制。
TDSTCPServerTransport控件可实现一个多线程的TCP服务器,多线程监听客户端连接。
而数据服务器则通过DataSnap+Access来完成。作为典型的三层C/S构架,DataSnap解决了Access本地小型数据库跨网络通信的问题。而其关键便是TClientDataSet控件和TDatasetProvier控件。
TClientDataSet控件继承自TDataSet,其最大的特点是不依赖BDE(Borland Database- Engine,BDE),但需要一个动态链接库的支持,该动态链接库为dbclient.dll。由于客户端并不直接连接数据库,因此客户端无需TDatabase构件。
TDatasetProvier控件是存在于应用程序服务器上的一个组件,负责取出TdataSet中应用程序所要求的数据,并进行封装提供给客户端程序。
3 多平台监控软件设计
一直以来,Delphi都是Windows平台开发软件的主流选择[4],但随着Web和移动终端开发需求的日益旺盛,Delphi逐渐被其他开发软件超越。而2013年EMB发布了XE4,则开启了Delphi直接开发苹果App的篇章。同时,OrangeUI开始了紧锣密鼓的研发,耗时四年。期间EMB也发布了XE5、XE6、XE7、XE8、D10 Seattle,直到D10.1 Berlin版,Delphi已经可用一套代码,同时开发稳定的iOS和Android两个平台的App了。
此外,由于DataSetProvider需返回OleVariant格式的数据集,而PC机或手机客户端也用Delphi开发,因此产生的效能是最高的。因此,本系统选择D10 Seattle来开发基于Windows和Android系统的远程监控终端软件。
3.1 基于Windows系统远程监控软件设计
3.1.1 远程监控软件功能设计
(1)数据传输功能
监控平台可以通过数据集中器接收现场路灯控制器通信节点上的数据,也可以在监控平台上通过通信服务器的逆过程下发数据给指定的路灯控制器通信节点。
(2)工程信息管理
可以在平台单独或者批量录入风光互补路灯基础信息,包括项目、区域、路段、网关地址、路灯地址、经纬度、路灯配置信息等。
(3)监测功能
可以通过监控平台实时显示路灯、风力发电机、太阳能板、蓄电池的状态等信息。
(4)数据管理功能
对于所收集的底层路灯数据,远程监控中心可对数据进行编整和初步分析,存储和归档处理,并对错误数据进行报警。考虑到数据的安全需求,监控中心必须具备对数据进行定期备份和还原的功能。
(5)控制功能
可以对整个风光互补LED路灯或者选定的某几盏风光互补LED路灯进行开关控制、风机刹车和解刹车及对时等远程功能控制。
(6)设置功能
可以设置风光互补LED路灯的照明策略(如开关灯周边环境光线亮度、负载工作模式、亮灯时间、亮灯时长及亮灯功率等)。可对风光互补LED路灯蓄电池的充放电参数和风机运转的参数进行设置。
(7)告警功能
风光互补LED路灯监控系统可根据不同的故障代码生成相应的告警码,应及时通过无线通信节点和数据集中器将故障代码上传到远程监控中心,监控中心及时回应故障告警,必要时监控中心可通过短信或电话拨号的形式通知相应的责任人。
(8)数据存储及统计功能
远程监控中心可保存过去一段时间的运行数据,并对运行数据进行统计,生成报表,以方便分析系统运行是否正常,为今后同类型项目提供设计参考,改善系统运行状况。
3.1.2 远程监控软件界面概要设计
按照风光互补路灯远程监控中心的要求,远程监控平台软件结构如图2所示。主要包含首页、项目管理、实时数据、远程控制、路灯设置、历史数据、告警处理、系统日志和系统设置,每个模块之间可以相互切换。
3.2 基于Android系统远程监控软件设计
在基本功能上,基于Android系统远程监控软件与基于Windows系统远程监控软件最大的差别在于设备的局限和操作的不便,前者侧重于单灯的远程控制,包括数据传输功能、监控功能、数据管理功能、控制功能、设置功能、告警功能、数据存储及统计功能,由于是在相同软件平台上进行开发的,具体界面设计便不再赘述。
4 结 语
通过上述分析与设计可以看出,智能风光互补LED路灯多平台远程监控系统在实现多终端便捷操作的同时,能最大限度地发挥无线通信的快捷性,实时掌握路灯的运行状况,保证路灯系统的可靠性和稳定性,延长系统工作寿命,大大减少路灯的建设与维护费用。但如何最大化地利用云端大数据对系统运行状况进行自调整以及对故障状况进行自诊断依然是下一步需要深入研究的内容。
参考文献
[1]张卿杰,徐友,薛国庆.基于Web Service的无线路灯远程监控系统[J].现代电子技术, 2015,38(11):5-9.
[2]刘伊莎,黄胜明,毛周明.基于电力线载波的LED路灯监控系统设计[J].电测与仪表,2015,52(22):113-118.
[3]朱向庆,廖桂明,崔廷佐,等.远程分布式无线智能路灯监控系统设计[J].计算机测量与控制,2015,23(1):83-85.
[4]许洁舟,林伟鹏,林盛雄,等.Delphi7 程序设计与实例[M].北京:冶金工业出版社,2003.
[5]林方键,胥布工.基于ZigBee网络的路灯节能控制系统[J].控制工程,2009,16(3):324-326.
[6]段樹民,吴国增.一款太阳能路灯控制器的设计[J].物联网技术,2014,4(5):76-77.
[7]徐利谋,黄长远.基于GPRS和ZigBee的城市路灯监控系统研究与实现[J].物联网技术,2016,6(6):34-35.
[8]谢磊,邹鹏举.基于ZigBee与移动4G的风光互补路灯监控系统[J].科技视界,2015(30):102-103.endprint