基于百度地图的智慧路灯数字化管理系统的设计与实现

2019-09-26 02:50闫雨亭王新龙董玉德
照明工程学报 2019年4期
关键词:照明设备视图网关

王 帅,闫雨亭,鲁 聪,王新龙,刘 希,董玉德

(1.合肥工业大学 机械工程学院,安徽 合肥 230009;2.富鑫雅光电科技有限公司,安徽 阜阳 236400)

引言

随着社会经济的快速发展,城市化进程的不断推进,城市道路照明工程的体量日益庞大[1]。城市道路照明作为公共照明的重要组成,采用节能的照明方式可缓解能源危机、实现可持续发展,并推进“节能减排”政策的实施[2]。

根据数据统计,目前我国每年照明用电量约占总发电量的13%左右,其中城市照明用电约占总发电量的7%~8%[3]。这个数据表明城市照明工作的实施要求路灯管理部门节约照明设施运维成本,降低照明能耗。如何发挥路灯资源特有的属性优势、挖掘新的盈利增长点等问题成为路灯管理部门关心和思考的重点[4]。智慧路灯建设随着物联网技术的发展逐渐进入路灯管理部门的视野,成为研究热点,为实现节能减排、照明管理系统升级、降低城市照明管理成本及改善城市公共服务系统提供了方向。

在现有技术的基础上结合路灯管理系统实际需求,我们提出基于百度地图的智慧路灯数字化管理系统,采用百度地图API实现照明设备的可视化监测和控制;提供的策略模式可以制定满足生活照明需求的节能策略,从而实现照明设备的远程实时监控,并且能达到很好的节能环保效果。该系统的具体设计包括实时监控、设备管理、策略设置、统计分析、数据中心等多项功能,使得路灯的管理变得可视化、数字化、智能化。

1 系统设计

1.1 系统架构的选取和设计

根据系统的性能需求选取适当的系统架构,考虑到系统将来需应用于数万盏路灯以及B/S相比于C/S的优势,系统选取B/S架构进行开发设计[5]。系统的可视化人机交互界面需要成熟的技术来保证其稳定性,因此选择ASP.NET MVC4.0框架进行综合搭建。

MVC设计模式即是模型(model)、视图(View)、控制器(controller)相互协作。模型主要是业务实体组件和逻辑实体组件相关的数据逻辑并且独立于视图和控制器存在,通常在数据库中被用来获取和储存相应的数据;视图是应用程序中用来实现人机交互的部分,依据模型数据来创建相应的界面视图,通常把数据加工后展示给用户;控制器是应用程序中处理视图和数据库交互的模块,通常在视图和数据库的数据传送中起到一个桥梁的作用。

MVC模式可以让模型、视图和控制器三个模块相互分离而又能使它们相互协作,提高了系统的机动性以及互换性。使用MVC模式的用户界面设计往往将这些对象整理得井井有条,避免了不必要的代码混乱。

MVC模式的优点主要是模型和视图的关系为一对多,创建新的视图也不需要重写模型。这样模型就可以重复利用,提高工作人员开发系统的效率。

系统需要满足控制数万盏路灯的性能,并且后期需要相关人员进行升级、维护等操作,因此该系统选择MVC架构进行开发设计。视图通过数据绑定技术建立联系,接受浏览器传来的请求并传给数据层,同时将处理结果返回到浏览器[6]。百度地图 API、Ajax(Asynchronous JavaScript and XML)技术、JSON(JavaScript Object Notation)数据传输技术的结合构成系统业务逻辑层的核心[7]。编写控制器完成对SQL Server数据库中数据进行添加、删除、更新和查询等必要的数据交互,系统内的数据交互如图1所示。

图1 MVC设计模式

1.2 系统总体功能设计

系统选用成熟的Microsoft Visual Studio 2015为开发工具,选择稳定的Microsoft.NET Framework 3.5为开发环境,同时以主流的Microsoft SQL Server 2015为作为后台数据库管理工具[8]。在MVC框架内控制器使用面向对象的C#语言实现数据库与后台数据的交互,视图以HTML+CSS布局、JavaScript为客户端脚本语言等,实现数据的成功发送与获取。根据智慧路灯数字化管理系统的性能需求将系统划分为实时监控、设备档案、策略设置、统计分析、数据中心五个模块,五个模块能够分配各自的任务并且能够紧密配合满足整个项目的功能需求,各功能模块之间基本达到了低耦合、高内聚的要求[9]。

2 程序子功能

根据该项目用户提出的实际需求以及项目的初步方案,我们将系统子程序功能细化分解,初步完成系统功能模块图,如图2所示。

图2 系统功能模块图

2.1 实时控制

对于Web GIS的选取,系统采用百度地图实现地理信息可视化。百度地图提供的免费地图服务可以通过在HTML文件内的head部分加入