馬文新 劉百韜 侯冠麒 姜天凌
(中國市政工程華北設(shè)計研究總院有限公司)
目前污水處理廠等場站類市政設(shè)施存在設(shè)備種類多且布局分散、信息采集速度慢、管理效率低等問題,增加了市政企業(yè)運維的時間成本和人力成本,導致企業(yè)無法實現(xiàn)精準高效的運維管理。受益于工業(yè)互聯(lián)網(wǎng)、大數(shù)據(jù)、3DGIS、人工智能等信息技術(shù)的發(fā)展,上述運維業(yè)務(wù)中存在的問題逐漸得以解決。
基于移動互聯(lián)、三維可視化、web 開發(fā)等數(shù)字化技術(shù),將場站內(nèi)的單體、設(shè)備等生產(chǎn)要素映射到三維場景之中,并實時展示場站內(nèi)的關(guān)鍵運行數(shù)據(jù),以數(shù)據(jù)驅(qū)動運營決策,全面提升場站運維管理效率,最終實現(xiàn)為企業(yè)生產(chǎn)經(jīng)營降本增效的目標。
三維數(shù)字化設(shè)備運維系統(tǒng)的建設(shè)需要貼合市政場站內(nèi)的日常工作場景,因此我們從污水處理企業(yè)的運營管理架構(gòu)及經(jīng)營模式出發(fā),通過先進的信息技術(shù)實現(xiàn)場站內(nèi)的資源共享,并設(shè)計出一套更加實用、高效的業(yè)務(wù)流程,構(gòu)建一套科學完善的運營管理機制。
其中,場站內(nèi)設(shè)備的管理工作是該系統(tǒng)的核心模塊,場站的日常運維工作是緊緊圍繞著設(shè)備開展的。我們充分考慮到市政企業(yè)的設(shè)備管理規(guī)章制度及分類標準,對場站內(nèi)的設(shè)備進行劃分建檔,與設(shè)備的檔案資料、保養(yǎng)維修記錄等信息進行掛接,共同構(gòu)建設(shè)備運行維護和信息化管理的數(shù)據(jù)基礎(chǔ)。通過該系統(tǒng),企業(yè)管理人員可以及時查看場站內(nèi)設(shè)備的動態(tài)和靜態(tài)信息,對場站內(nèi)全部設(shè)備的運行、巡檢、保養(yǎng)、維修、更新直至報廢進行全生命周期的高效數(shù)字化閉環(huán)管理。
設(shè)備運維系統(tǒng)整體采用B/S 結(jié)構(gòu)實現(xiàn),采用瀏覽器作為客戶端,用戶只需要在瀏覽器中輸入網(wǎng)址即可訪問該服務(wù),無需安裝客戶端軟件,使用方便。服務(wù)器端提供服務(wù),所有的業(yè)務(wù)邏輯都在服務(wù)器端運行,客戶端只需要提供輸入和接收輸出即可,這樣可以減輕客戶端的負擔,數(shù)據(jù)集中管理也在服務(wù)器端,可以保證數(shù)據(jù)的一致性和安全性,避免了數(shù)據(jù)的分散和冗余,降低了數(shù)據(jù)管理的成本。
服務(wù)端采用前后端分離架構(gòu),前端和后端可以獨立開發(fā)、測試和部署,各自專注于自己的工作。前端可以專注于用戶界面和用戶交互,后端可以專注于業(yè)務(wù)邏輯和數(shù)據(jù)處理,這樣可以提高開發(fā)效率和質(zhì)量;前后端分離可以將頁面渲染全部交給前端處理,減少了服務(wù)器端的壓力,提高了系統(tǒng)的運行效率和穩(wěn)定性;前后端分離可以非常靈活地進行擴展和升級,可以根據(jù)需求對前端和后端進行單獨的擴展和升級,降低了系統(tǒng)升級和維護的成本和風險。
前端采用Vue.js 框架,后端采用Spring Boot 框架開發(fā)。Vue.js 是一種漸進式開發(fā)框架,可以根據(jù)項目需要逐步引入其功能,也可以與其他庫或項目集成使用;Vue.js 提供一種由數(shù)據(jù)驅(qū)動的組件化架構(gòu),通過響應式的數(shù)據(jù)綁定和指令系統(tǒng),讓開發(fā)者能夠更簡單地實現(xiàn)單頁面應用中數(shù)據(jù)交互的功能需求;Vue.js 的生態(tài)非常完備,提供了大量的插件和工具,例如Vuex 狀態(tài)管理庫、Vue Router 路由庫、Vue CLI 腳手架工具等等,能夠讓開發(fā)者快速掌握從開發(fā)、調(diào)試到生產(chǎn)環(huán)境打包的全過程。
Spring Boot 是一個基于Spring 框架的輕量級Java Web開發(fā)框架,它的設(shè)計目的是簡化Spring 應用的初始搭建和開發(fā)過程。它使用了約定優(yōu)于配置的思想,省卻了大量的XML 配置文件,提供了開箱即用,無需代碼生成的特性。它還支持多種常用的技術(shù)和組件,如JPA,JDBC,MVC,Security 等[1]。Spring Boot 還可以自動化配置應用程序的各個部分,包括數(shù)據(jù)源、Web 框架以及基本的代碼安全性等等。Spring Boot 框架內(nèi)嵌web 服務(wù)器,可以獨立運行,使得開發(fā)者可以更方便地測試、調(diào)試應用。開發(fā)者僅需要配置基本的JDK 環(huán)境,和Maven 構(gòu)建工具,即可管理項目所依賴的第三方庫,在本地完成所有后端功能的開發(fā),很大程度上減少了在環(huán)境配置上消耗的時間,使開發(fā)者更專注于業(yè)務(wù)邏輯的實現(xiàn)。
Spring Boot 采 用MVC(Model-View-Controller)設(shè) 計模式。在Spring Boot 中,Controller 層作為MVC 的控制器,用于接收和處理請求,Model 層負責數(shù)據(jù)存儲和業(yè)務(wù)邏輯處理,View 層則負責頁面渲染和呈現(xiàn)。Spring Boot 中的Controller 層通常使用注解來處理請求,使用Java 類來定義數(shù)據(jù)模型和業(yè)務(wù)邏輯,使用模板引擎來呈現(xiàn)視圖。這種MVC 設(shè)計模式可以有效地分離不同的應用程序組件,使應用程序更易于維護和擴展[2]。
為了使該平臺的功能更加貼合生產(chǎn)實際,設(shè)計人員從市政類場站運維管理人員的日常工作出發(fā),充分考慮了決策層、管理層、和執(zhí)行層三類角色的業(yè)務(wù)需求,基于三維可視化及web 相關(guān)技術(shù),將場站內(nèi)的單體、各類生產(chǎn)設(shè)備關(guān)鍵生產(chǎn)要素映射到三維可視化場景中,使其與日常生產(chǎn)過程的管理工作緊密聯(lián)系起來,實現(xiàn)對場站中資產(chǎn)設(shè)備的全生命周期動態(tài)監(jiān)控及全過程數(shù)字化管理。
如圖1 所示,該系統(tǒng)需要實現(xiàn)以下功能需求:

圖1 總體業(yè)務(wù)需求
將多元數(shù)據(jù)與三維模型融合,能夠動態(tài)地展示模型整體與組成單元,用戶通過與模型的交互實現(xiàn)工藝流程、單體尺寸、空間位置等信息的查詢功能。
圍繞場站內(nèi)的所有生產(chǎn)設(shè)備,建立數(shù)字化設(shè)備臺賬,用戶可直觀地對設(shè)備進行定位檢索、信息查看、編輯等操作。
將設(shè)備臺賬與設(shè)備的日常巡檢、維修、保養(yǎng)、變更、預警等工作建立聯(lián)系,完成設(shè)備資產(chǎn)在生產(chǎn)過程中的全流程閉環(huán)管理。
系統(tǒng)架構(gòu)、采用技術(shù)均具有較好的開放性、先進性、前瞻性和擴展性。前端與后端完全解耦,通過HTTP 協(xié)議進行數(shù)據(jù)交互,展示層在Vue.js 框架的基礎(chǔ)上,整合UI 框架Ant Design Vue 開發(fā),在框架中的基礎(chǔ)組件上封裝新組件,既可以確保展示層基本視覺風格的一致性,又可以根據(jù)系統(tǒng)設(shè)計需求靈活調(diào)整,快速開發(fā)出具有獨創(chuàng)性UI 設(shè)計的展示層服務(wù)[3];業(yè)務(wù)層集成了MyBatis 作為操縱數(shù)據(jù)的ORM 模型,提升了后端開發(fā)效率,數(shù)據(jù)層采用了MySQL 存儲整個系統(tǒng)的業(yè)務(wù)數(shù)據(jù),提供易用、可靠的高性能持久化存儲,還引入了Redis 作為緩存,提升了數(shù)據(jù)的加載速度,降低對系統(tǒng)部署環(huán)境的計算資源消耗,系統(tǒng)架構(gòu)圖如圖2 所示。

圖2 總體架構(gòu)設(shè)計
本系統(tǒng)在數(shù)據(jù)庫的設(shè)計上,遵循基本原則,即一致性原則、完整性原則、安全性原則、可伸縮性與可擴展性原則、規(guī)范性原則。具體到數(shù)據(jù)表的設(shè)計上,也遵守幾個開發(fā)基本規(guī)則:例如表名應該簡單明了,準確描述表的內(nèi)容;表的字段具有唯一性,確保數(shù)據(jù)準確和完整;表的字段與后端Java類的命名一致,確保開發(fā)的易用性和可操作性;表的字段應該遵循命名規(guī)范,確保數(shù)據(jù)的易懂性和可讀性;表的設(shè)計應該考慮系統(tǒng)的性能和可用性,確保數(shù)據(jù)的快速訪問和高效存儲等[4]。
基于上述原則,根據(jù)本系統(tǒng)的實際業(yè)務(wù)需求,共設(shè)計了包括人員權(quán)限、設(shè)備屬性、資料屬性、巡檢記錄、維修保養(yǎng)、告警提示等模塊的81 張表。
設(shè)備的巡檢是場站運維工作的典型場景之一,比較有代表性意義,因此本章以該系統(tǒng)的設(shè)備巡檢模塊為例,簡述系統(tǒng)的后端開發(fā)實現(xiàn)過程。
設(shè)備巡檢模塊的主要功能是由場站的運維管理者派發(fā)巡檢工單,生產(chǎn)任務(wù)的執(zhí)行者在接單后按照指定路線在指定時間內(nèi)對場站內(nèi)相關(guān)設(shè)備進行巡檢,查看當前設(shè)備的運行狀況及周圍環(huán)境的變化,及時發(fā)現(xiàn)現(xiàn)場設(shè)備的缺陷故障及安全隱患,并采取有效措施,從而保障場站的安全有效運行。
如圖3 所示,具體業(yè)務(wù)流程如下:

圖3 設(shè)備巡檢業(yè)務(wù)流程
a.第一環(huán)節(jié)是工單派發(fā),設(shè)計人員通過對運維工作的分析,將巡檢工單分為兩類:計劃工單和臨時工單,前者由管理者根據(jù)日常巡檢需求設(shè)定巡檢計劃,系統(tǒng)將根據(jù)計劃中設(shè)定的時間自動派發(fā)工單,后者是考慮到有臨時巡檢任務(wù)的需求時,管理者可以根據(jù)實際業(yè)務(wù)的需要手動派發(fā)工單。
b.執(zhí)行者在系統(tǒng)上接收派發(fā)給自己的工單,然后去現(xiàn)場執(zhí)行巡檢任務(wù)。
c.如果巡檢過程中發(fā)現(xiàn)異常情況,需要在系統(tǒng)上進行異常上報,交給相關(guān)維修人員進行處理,如果未發(fā)現(xiàn)異常,在巡檢結(jié)果處選擇正常,到此一個完整的巡檢流程結(jié)束。
本節(jié)主要以設(shè)備巡檢模塊為例,簡要介紹系統(tǒng)的后端開發(fā)工作。
(1)數(shù)據(jù)庫設(shè)計
通過對設(shè)備巡檢模塊的業(yè)務(wù)邏輯進行了細致的拆解分析之后,為該模塊設(shè)計了5 張配置表和3 張業(yè)務(wù)表:5 張配置表分別是巡檢時間表、巡檢點位表、巡檢類型表、巡檢班組表、巡檢路線表,用于存儲巡檢模塊的基礎(chǔ)配置數(shù)據(jù);針對巡檢模塊的業(yè)務(wù)流程,為該模塊設(shè)計了巡檢計劃、巡檢工單、巡檢任務(wù)3 張業(yè)務(wù)表,用于存儲巡檢相關(guān)的業(yè)務(wù)數(shù)據(jù)。
(2)業(yè)務(wù)邏輯開發(fā)
設(shè)備巡檢模塊需要實現(xiàn)的業(yè)務(wù)主要包括:
a.巡檢計劃的新增、編輯、刪除及啟停操作。
b.系統(tǒng)需要根據(jù)用戶制定的巡檢計劃完成自動派單,這種工單為計劃工單,當有臨時巡檢需求時,用戶可以填寫臨時工單。
c.巡檢工單、巡檢任務(wù)在不同權(quán)限等級用戶間的流轉(zhuǎn)等。
下面介紹巡檢模塊后端需要完成的工作:
首先是系統(tǒng)自動派單及超時關(guān)閉工單功能的開發(fā)工作,這部分功能是基于SpringBoot 框架自帶的定時任務(wù)功能實現(xiàn)的:
首先引入@EnableScheduling 定時任務(wù)注解,根據(jù)業(yè)務(wù)功能開發(fā)定時任務(wù)類,為該任務(wù)類添加@Scheduled 注解,配置cron 表達式,設(shè)定定時任務(wù)的執(zhí)行時間。我們開發(fā)的任務(wù)類需要完成如下工作:
a.計劃狀態(tài)變更:該任務(wù)在每天的凌晨執(zhí)行,根據(jù)巡檢計劃的啟停狀態(tài)和起止時間,完成巡檢計劃的狀態(tài)變更工作。
b.自動派單功能:該任務(wù)在每天的每個整點執(zhí)行,根據(jù)用戶設(shè)置的提前派單日期、派單時間以及計劃的開始狀態(tài)篩選出符合條件的巡檢計劃,并為這些計劃自動生成巡檢工單(計劃工單)。
c.工單超時關(guān)閉:該任務(wù)在每天凌晨的特定時間執(zhí)行,篩選前一天的工單,根據(jù)該工單對應的巡檢任務(wù)完成情況,修改巡檢工單的完成狀態(tài)。
除了上述需要系統(tǒng)自動執(zhí)行的業(yè)務(wù)邏輯之外,該模塊需要完成如表1 所示的后端接口的開發(fā)工作,在開發(fā)這些接口時需要考慮到與其他操作的關(guān)聯(lián)影響,例如巡檢計劃生效后,已經(jīng)開始按計劃派發(fā)工單時,巡檢計劃是否可以刪除;修改巡檢班組成員時,是否會對歷史巡檢計劃、巡檢工單等數(shù)據(jù)產(chǎn)生影響等等。這些問題都需要經(jīng)過妥善的思考與處理,使系統(tǒng)避免在使用過程中出現(xiàn)致命問題。

表1 設(shè)備巡檢模塊后端接口匯總表
以上功能全部開發(fā)完成后,該模塊順利地通過了測試環(huán)節(jié),用戶制定巡檢計劃之后,系統(tǒng)能夠完成按計劃定時派單及關(guān)閉超時工單的功能,系統(tǒng)生成的工單能夠在相關(guān)用戶之間正常流轉(zhuǎn)。從實際使用效果來看,將巡檢業(yè)務(wù)整合到線上的數(shù)字化運維方式,有效地提升了相關(guān)運維人員的工作效率,幫助員工減少了大量重復性的工作,縮短了溝通時間,使其可以更加專注運維工作本身,更加高質(zhì)量地完成本職工作。
對設(shè)備資產(chǎn)的高效管理是市政場站穩(wěn)定運行的重要基礎(chǔ),將場站內(nèi)的各種資源進行優(yōu)化整合,構(gòu)建以設(shè)備臺賬為基礎(chǔ),以企業(yè)生產(chǎn)運營為主線的數(shù)字化設(shè)備管理應用,可以從以下幾個方面助力運維人員的工作:
a.對場站內(nèi)的生產(chǎn)設(shè)備進行全生命周期管理,規(guī)范備品備件管理,可以有效提高設(shè)備的周轉(zhuǎn)率。
b.根據(jù)企業(yè)日常生產(chǎn)活動的需要,通過線上的方式完成工單派發(fā)、工單流轉(zhuǎn)等工作,可以使相關(guān)工作人員避免過多的重復性工作,縮短溝通時間,有效提高工作效率。
c.對系統(tǒng)產(chǎn)生的各種運維資料進行科學規(guī)范的歸檔,便于日后查閱及生產(chǎn)指導。
綜上所述,三維數(shù)字化設(shè)備運維系統(tǒng)可以幫助運維人員有效地提高生產(chǎn)運維效率,確保場站的穩(wěn)定運行,進而大幅提升企業(yè)運維管理水平,助力實現(xiàn)設(shè)備管理規(guī)范化、資源利用最大化、運維管理自動化、企業(yè)運營最優(yōu)化的目標,同時為今后其他專業(yè)數(shù)字化運維系統(tǒng)的建設(shè)提供了寶貴的經(jīng)驗。