时间:2024-05-04
陈春凯 马娅 刘付祥
(1.江苏食品药品职业技术学院 江苏省淮安市 223001 2.淮安市实验小学新城校区 江苏省淮安市 223001)
(3.扬州振华航标器材有限公司 江苏省扬州市 225000)
航标被称为“水上红绿灯”,保障了内河航运中航行的安全。随着移动互联网、物联网、大数据、人工智能等技术的发展,毛熊磊等人指出,智能航道的发展是大势所趋,也是必然的[1]。本文主要研究的是智能航标管理系统的设计与开发,本平台操作简单,航标管理人员可以随时随地进行航标灯的管理,减轻维护人员的维护强度与成本。
本文主要使用THINKPHP框架,采用MVC三层模式进行设计开发,数据库使用Mysql进行物理数据模型设计。MVC即模型、视图、控制器,使三层进行分离,具有开发灵活、多人协同等优点。MVC模式可以使每一层修改甚至替换容易方便,保证了层的可扩展性和可移植性[2]。智能航标管理系统的MVC三层结构如图1所示。模型层包括用户、角色、航标、短信等数据源。控制层包括系统管理、用户管理、航标管理、统计管理等控制管理,是连接模型层与视图层的桥梁。视图层包括系统设置页、用户角色管理页、航标管理页、航标遥测页、统计查询页等用户交互管理界面。
图1:智能航标系统的MVC三层架构模型
根据实际业务需要,采用RBAC(基于角色的访问控制)进行系统权限设计,如图2为RBAC控制模型。
图2:RBAC模型
笔者设置了超级管理员、航道处管理员、分站管理员三种角色,如图3展示了角色拥有的权限。
图3:角色功能图
超级管理员:拥有系统所有权限,包括用户、角色、航标的增删改查,对系统全部航标灯远程遥测以及统计分析。
航道处管理员:只针对本航道处各分站航标的管理,遥测信息统计。
分站管理员:只能对本站的航标进行增加、修改、查看的管理以及遥测信息统计。
本系统是基于B/S架构,分为客户端和服务端,客户端可以用PC或者移动设备进行访问,系统的功能结构设计如图4所示。
图4:功能结构
该系统主要有常规管理模块、权限管理模块、航标管理模块、遥测信息管理模块以及短信管理模块。常规管理模块可以对系统的站点名、备案号等基础信息进行设置;权限管理模块可以对用户、角色、菜单进行管理;航标管理模块包括航标的增删改查等功能;遥测信息管理即是对航标灯发送过来的遥测信息进行统计分析;短信管理模块对具体的遥测短信进行查阅。
本系统开发主要使用到ThinkPHP、Bootstrap开发框架,关键技术包括前端的HTML5、CSS3、JavaScript、Ajax等技术,后端的PHP以及MySql数据库技术。ThinkPHP是一个免费开源的PHP开发框架,基于框架的开发会节省很多开发成本,该框架具有低耦合高内聚的优点。 Bootstrap是深受欢迎的HTML、CSS和JS框架,一次开发即可实现PC与移动端界面的布局。
本系统主要由遥测信息、航标管理、短信管理三部分组成。
2.2.1 遥测信息
遥测:航标人员可以方便查看到航标总数、正常运行数、报警总数。笔者结合百度地图,将航标灯实时显示在地图上,绿色灯表示正常,红色灯表示异常,如图5所示。鼠标点击地图中的航标会弹出航标的详细信息,如图6所示。
图5:遥测图
图6:航标详情图
昨日遥测信息:针对昨日航标灯运行状况进行信息采集,在该界面可以根据管理处、航标编号等条件筛选查看到昨日航标的灯的闪光、闪光周期、实测电压、实测电流、充电电流、工作状态等信息,如图7所示。
图7:昨日遥测信息
历史遥测信息:相比于昨日遥测信息,历史遥测信息页面中可以对任何时间段的航标进行查询。
2.2.2 航标管理
添加航标:根据航标的具体信息,对航标的名称、编号、管理处、航标类型、标题颜色等进行设置添加,如图8所示。
图8:航标添加
维护航标:根据管理处、航标编号等条件对航标进行筛选查询,该模块实现航标灯的查看修改、远程遥测、定时信息采集等功能,如图9所示。
图9:维护航标
2.2.3 短信管理
该模块实现了对航标灯发送过来的原始短信息进行查询的功能。
本系统采用ThinkPHP框架和Mysql数据库,实现了航标灯管理以及实时定位报警功能,方便了航标管理人员日常维护管理。目前实现了初步的功能,后期还需要进一步优化,比如航标预警提醒功能有待完善,系统管理人员需要手动刷新页面才可查看到最新预警信息。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!