陳春凱 馬婭 劉付祥
(1.江蘇食品藥品職業(yè)技術(shù)學(xué)院 江蘇省淮安市 223001 2.淮安市實(shí)驗(yàn)小學(xué)新城校區(qū) 江蘇省淮安市 223001)
(3.揚(yáng)州振華航標(biāo)器材有限公司 江蘇省揚(yáng)州市 225000)
航標(biāo)被稱為“水上紅綠燈”,保障了內(nèi)河航運(yùn)中航行的安全。隨著移動互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能等技術(shù)的發(fā)展,毛熊磊等人指出,智能航道的發(fā)展是大勢所趨,也是必然的[1]。本文主要研究的是智能航標(biāo)管理系統(tǒng)的設(shè)計與開發(fā),本平臺操作簡單,航標(biāo)管理人員可以隨時隨地進(jìn)行航標(biāo)燈的管理,減輕維護(hù)人員的維護(hù)強(qiáng)度與成本。
本文主要使用THINKPHP框架,采用MVC三層模式進(jìn)行設(shè)計開發(fā),數(shù)據(jù)庫使用Mysql進(jìn)行物理數(shù)據(jù)模型設(shè)計。MVC即模型、視圖、控制器,使三層進(jìn)行分離,具有開發(fā)靈活、多人協(xié)同等優(yōu)點(diǎn)。MVC模式可以使每一層修改甚至替換容易方便,保證了層的可擴(kuò)展性和可移植性[2]。智能航標(biāo)管理系統(tǒng)的MVC三層結(jié)構(gòu)如圖1所示。模型層包括用戶、角色、航標(biāo)、短信等數(shù)據(jù)源??刂茖影ㄏ到y(tǒng)管理、用戶管理、航標(biāo)管理、統(tǒng)計管理等控制管理,是連接模型層與視圖層的橋梁。視圖層包括系統(tǒng)設(shè)置頁、用戶角色管理頁、航標(biāo)管理頁、航標(biāo)遙測頁、統(tǒng)計查詢頁等用戶交互管理界面。
圖1:智能航標(biāo)系統(tǒng)的MVC三層架構(gòu)模型
根據(jù)實(shí)際業(yè)務(wù)需要,采用RBAC(基于角色的訪問控制)進(jìn)行系統(tǒng)權(quán)限設(shè)計,如圖2為RBAC控制模型。
圖2:RBAC模型
筆者設(shè)置了超級管理員、航道處管理員、分站管理員三種角色,如圖3展示了角色擁有的權(quán)限。
圖3:角色功能圖
超級管理員:擁有系統(tǒng)所有權(quán)限,包括用戶、角色、航標(biāo)的增刪改查,對系統(tǒng)全部航標(biāo)燈遠(yuǎn)程遙測以及統(tǒng)計分析。
航道處管理員:只針對本航道處各分站航標(biāo)的管理,遙測信息統(tǒng)計。
分站管理員:只能對本站的航標(biāo)進(jìn)行增加、修改、查看的管理以及遙測信息統(tǒng)計。
本系統(tǒng)是基于B/S架構(gòu),分為客戶端和服務(wù)端,客戶端可以用PC或者移動設(shè)備進(jìn)行訪問,系統(tǒng)的功能結(jié)構(gòu)設(shè)計如圖4所示。
圖4:功能結(jié)構(gòu)
該系統(tǒng)主要有常規(guī)管理模塊、權(quán)限管理模塊、航標(biāo)管理模塊、遙測信息管理模塊以及短信管理模塊。常規(guī)管理模塊可以對系統(tǒng)的站點(diǎn)名、備案號等基礎(chǔ)信息進(jìn)行設(shè)置;權(quán)限管理模塊可以對用戶、角色、菜單進(jìn)行管理;航標(biāo)管理模塊包括航標(biāo)的增刪改查等功能;遙測信息管理即是對航標(biāo)燈發(fā)送過來的遙測信息進(jìn)行統(tǒng)計分析;短信管理模塊對具體的遙測短信進(jìn)行查閱。
本系統(tǒng)開發(fā)主要使用到ThinkPHP、Bootstrap開發(fā)框架,關(guān)鍵技術(shù)包括前端的HTML5、CSS3、JavaScript、Ajax等技術(shù),后端的PHP以及MySql數(shù)據(jù)庫技術(shù)。ThinkPHP是一個免費(fèi)開源的PHP開發(fā)框架,基于框架的開發(fā)會節(jié)省很多開發(fā)成本,該框架具有低耦合高內(nèi)聚的優(yōu)點(diǎn)。 Bootstrap是深受歡迎的HTML、CSS和JS框架,一次開發(fā)即可實(shí)現(xiàn)PC與移動端界面的布局。
本系統(tǒng)主要由遙測信息、航標(biāo)管理、短信管理三部分組成。
2.2.1 遙測信息
遙測:航標(biāo)人員可以方便查看到航標(biāo)總數(shù)、正常運(yùn)行數(shù)、報警總數(shù)。筆者結(jié)合百度地圖,將航標(biāo)燈實(shí)時顯示在地圖上,綠色燈表示正常,紅色燈表示異常,如圖5所示。鼠標(biāo)點(diǎn)擊地圖中的航標(biāo)會彈出航標(biāo)的詳細(xì)信息,如圖6所示。
圖5:遙測圖
圖6:航標(biāo)詳情圖
昨日遙測信息:針對昨日航標(biāo)燈運(yùn)行狀況進(jìn)行信息采集,在該界面可以根據(jù)管理處、航標(biāo)編號等條件篩選查看到昨日航標(biāo)的燈的閃光、閃光周期、實(shí)測電壓、實(shí)測電流、充電電流、工作狀態(tài)等信息,如圖7所示。
圖7:昨日遙測信息
歷史遙測信息:相比于昨日遙測信息,歷史遙測信息頁面中可以對任何時間段的航標(biāo)進(jìn)行查詢。
2.2.2 航標(biāo)管理
添加航標(biāo):根據(jù)航標(biāo)的具體信息,對航標(biāo)的名稱、編號、管理處、航標(biāo)類型、標(biāo)題顏色等進(jìn)行設(shè)置添加,如圖8所示。
圖8:航標(biāo)添加
維護(hù)航標(biāo):根據(jù)管理處、航標(biāo)編號等條件對航標(biāo)進(jìn)行篩選查詢,該模塊實(shí)現(xiàn)航標(biāo)燈的查看修改、遠(yuǎn)程遙測、定時信息采集等功能,如圖9所示。
圖9:維護(hù)航標(biāo)
2.2.3 短信管理
該模塊實(shí)現(xiàn)了對航標(biāo)燈發(fā)送過來的原始短信息進(jìn)行查詢的功能。
本系統(tǒng)采用ThinkPHP框架和Mysql數(shù)據(jù)庫,實(shí)現(xiàn)了航標(biāo)燈管理以及實(shí)時定位報警功能,方便了航標(biāo)管理人員日常維護(hù)管理。目前實(shí)現(xiàn)了初步的功能,后期還需要進(jìn)一步優(yōu)化,比如航標(biāo)預(yù)警提醒功能有待完善,系統(tǒng)管理人員需要手動刷新頁面才可查看到最新預(yù)警信息。