羅珊珊 冷佳
摘 要:針對當前機房的監(jiān)控管理方式單一、實時性差、透明度低等問題,構(gòu)建了一種基于數(shù)字孿生機房的三維可視化監(jiān)控系統(tǒng)。以數(shù)字孿生的五維模型為指導(dǎo),構(gòu)建機房虛擬場景,實現(xiàn)機房三維可視化。論文采用Three.js三維引擎搭建機房三維場景,使用JavaScript語言實現(xiàn)各模塊間的功能交互,運用深度學(xué)習(xí)算法完成機房故障診斷的功能。實驗證明:基于數(shù)字孿生的機房三維可視化監(jiān)控系統(tǒng)可以實時監(jiān)測系統(tǒng)狀態(tài),動態(tài)展示設(shè)備信息,提高了管理效率。
關(guān)鍵詞:數(shù)字孿生;三維可視化監(jiān)控;故障診斷;虛擬機房
中圖分類號:TP39????? 文獻標識碼:A
Design and Realization of Computer Room 3D Visual
Monitoring System Based on Digital Twin
LUO Shan-shan, LENG Jia
(Jiangsu University of Science &Technology, Zhenjiang, Jiangsu 212100,China)
Abstract:Aiming at the problems of single monitoring and management modes, poor real-time performance and low transparency in the current computer room, a 3D visual monitoring system for computer room based on digital twin is constructed. Guided by the five-dimensional model of the digital twin, the virtual scene of the computer room is constructed to realize the 3D visualization of the computer room. The paper uses three.js which is a 3D engine to build the 3D scene of the computer room, uses JavaScript language to realize the functional interaction between the modules, and uses deep learning algorithms to complete the function of fault diagnosis. Experiment has proved that the 3D visual monitoring system of the computer room based on digital twin can monitor the system status in real time, dynamically display equipment information and improve management efficiency.
Key words:digital twins; 3D visualization monitoring; fault diagnosis; virtual computer room
隨著互聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能等新一代信息技術(shù)迅速發(fā)展,信息技術(shù)對于數(shù)據(jù)的強大計算和分析能力為各行業(yè)發(fā)展開辟嶄新的發(fā)展空間,對數(shù)據(jù)的安全性要求也隨之提高。隨著機房的設(shè)備越來越復(fù)雜,系統(tǒng)愈發(fā)增多,使得管理越發(fā)困難。目前,機房管理存在幾個問題:一是機房管理系統(tǒng)和應(yīng)用系統(tǒng)之間缺乏有效的信息交互手段;二是無法實時獲取機房設(shè)備的運行狀態(tài),對于網(wǎng)絡(luò)中斷、設(shè)備故障等問題無法及時處理;三是多數(shù)系統(tǒng)的數(shù)據(jù)維護還采用人工記錄、二維報表等方式,沒有采用統(tǒng)一化管理,實時性和可視化效果較差。
數(shù)字孿生[1]的出現(xiàn)為解決上述問題提供了新的方案,數(shù)字孿生是數(shù)字模型對物理系統(tǒng)的真實等價映射。通過實時監(jiān)測系統(tǒng)狀態(tài),動態(tài)更新數(shù)字模型,能夠提升數(shù)字模型的診斷、評估與維護能力。數(shù)字孿生最初是由Grieves[1]在美國密歇根大學(xué)的產(chǎn)品全生命周期管理課程中提出。自2017年開始,涌現(xiàn)了一大批相關(guān)的研究與應(yīng)用,其中主要在生產(chǎn)車間、航空航天、船舶等方面取得一定的成果。劉義[2]等人針對目前智能車間存在的管理效率低、精準決策難等問題,設(shè)計了基于數(shù)字孿生智能車間的管控體系架構(gòu),開展了智能車間管控平臺應(yīng)用建設(shè)。李利民[3]等人提出了船舶與海洋工程裝備智能車間可視化管控系統(tǒng)的開發(fā)與應(yīng)用。
而基于數(shù)字孿生機房的三維可視化監(jiān)控系統(tǒng)目前還沒有得到較多應(yīng)用,數(shù)字孿生機房的應(yīng)用可以實時監(jiān)測機房系統(tǒng)狀態(tài),動態(tài)展示設(shè)備信息,提高管理效率,降低管理成本,及時發(fā)現(xiàn)隱患并解決故障。
1 基于數(shù)字孿生機房的三維可視化監(jiān)控系統(tǒng)分析
1.1 需求分析
數(shù)字孿生機房是物理機房、虛擬機房、服務(wù)數(shù)據(jù)和孿生數(shù)據(jù)的集成融合,物理機房和虛擬機房通過服務(wù)數(shù)據(jù)和孿生數(shù)據(jù),可以進行實時交互和真實映射。通過三維可視化監(jiān)控從幾何維度展現(xiàn)數(shù)字孿生機房,并從監(jiān)控需求出發(fā),建立了三維可視化監(jiān)控系統(tǒng),如圖1所示。
機房三維可視化監(jiān)控系統(tǒng),要求能夠?qū)C房的基礎(chǔ)設(shè)備進行狀態(tài)監(jiān)控并通過界面實時展示設(shè)備運行信息,并通過二維圖表實時統(tǒng)計設(shè)備功耗、空間利用率等數(shù)據(jù)。系統(tǒng)能夠?qū)崟r記錄機房設(shè)備的運行數(shù)據(jù)以及故障數(shù)據(jù),出現(xiàn)告警信息時,管理人員能及時查找設(shè)備及處理解決告警狀況。
針對機房設(shè)備出現(xiàn)的故障問題建立故障歷史數(shù)據(jù)庫,通過深度學(xué)習(xí)算法[8]對故障數(shù)據(jù)進行數(shù)據(jù)清理、數(shù)據(jù)融合,對數(shù)據(jù)進行深度挖掘從而預(yù)防設(shè)備故障的發(fā)生。
1.2 系統(tǒng)功能設(shè)計
基于數(shù)字孿生機房的三維可視化監(jiān)控系統(tǒng)分為兩部分:數(shù)字孿生機房模型三維可視化展示和數(shù)字孿生監(jiān)控系統(tǒng),功能框圖如圖2所示:
1.2.1 數(shù)字孿生機房模型三維可視化展示
(1)機房環(huán)境可視化是根據(jù)實際機房的建筑結(jié)構(gòu)、機房布局建立虛擬機房三維模型場景,包括機房中機柜布局擺放位置、配電設(shè)備、精密空調(diào)設(shè)備、攝像頭、溫濕度傳感器、漏水繩等輔助設(shè)施布局的擺放位置都在系統(tǒng)中展示。對機柜空間、機柜載重、功耗統(tǒng)計等進行展示實現(xiàn)對設(shè)備運行狀態(tài)、告警信息進行實時監(jiān)控。
(2)資產(chǎn)配置可視化是將各個機柜以及機柜里設(shè)備的基本信息通過三維建模方式導(dǎo)入到機房可視化系統(tǒng),通過點擊模型設(shè)備可查看相應(yīng)的配置信息。并且提供歷史查詢記錄,完善信息管理檔案。
(3)機柜容量可視化將機房的機柜U位展示在平臺,機柜空間和機柜載重都使用柱狀圖來展示每個機柜當前的空間利用率和承重情況,通過顏色區(qū)分當前機柜的空間利用情況和承重情況。
1.2.2 數(shù)字孿生監(jiān)控系統(tǒng)
(1)動環(huán)監(jiān)控系統(tǒng)可實時監(jiān)控UPS、精密空調(diào)、漏水、溫濕度、煙霧傳感器、消防等設(shè)備的數(shù)據(jù)信息,在監(jiān)控服務(wù)平臺實時可視化展現(xiàn)各設(shè)備的運行參數(shù)以及功耗統(tǒng)計,讓管理人員及時了解機房的健康狀態(tài)。
(2)故障診斷系統(tǒng)通過采集機房各設(shè)備異常數(shù)據(jù),使用深度學(xué)習(xí)算法對數(shù)據(jù)進行分析,找出故障原因,定位到故障設(shè)備。監(jiān)控系統(tǒng)將發(fā)出多種形式的告警信號,同一報警源按照權(quán)限和等級分別推送到管理人員的PC端,管理人員可及時處理故障。
1.3 平臺架構(gòu)設(shè)計
針對機房三維可視化監(jiān)控系統(tǒng)需求,進行機房三維可視化監(jiān)控系統(tǒng)總體設(shè)計,如下圖3。平臺采用Ajax引擎的B/S架構(gòu)[4-6]三層結(jié)構(gòu),數(shù)據(jù)庫中主要存儲了機房設(shè)備的各類信息,包括機房環(huán)境三維模型、資產(chǎn)配置、機柜容量數(shù)據(jù)以及設(shè)備告警數(shù)據(jù)等,采用JSON(JavaScript Object Notation)格式來存儲。服務(wù)器采用Tomcat小型輕量級應(yīng)用服務(wù)器提供Web服務(wù),啟動服務(wù)器后,系統(tǒng)可以自動加載Web應(yīng)用程序。瀏覽器端采用JavaScript和WebGL[7-9]技術(shù)實現(xiàn)機房模型三維可視化和設(shè)備信息的交互查詢功能。
2 基于數(shù)字孿生機房的三維可視化系統(tǒng)的實現(xiàn)方法
實現(xiàn)數(shù)字孿生機房三維可視化監(jiān)控,需要對虛擬機房場景和機房故障進行有效管理。使用WebGL技術(shù)及其Three.js三維引擎實現(xiàn)機房虛擬模型構(gòu)建,使用深度神經(jīng)網(wǎng)絡(luò)對歷史故障數(shù)據(jù)建立訓(xùn)練模型,不斷的訓(xùn)練優(yōu)化從而提高診斷的正確率。
2.1 虛擬機房場景建模
虛擬機房場景構(gòu)建主要由幾何建模、場景構(gòu)建、人機交互構(gòu)成。幾何模型是虛擬機房場景的基礎(chǔ);場景構(gòu)建是對幾何模型的優(yōu)化,通過添加材質(zhì)、紋理貼圖、燈光等效果,使得虛擬機房更加逼真;人機交互可以通過鼠標、鍵盤對機房模型進行控制,改變虛擬場景展示的內(nèi)容。
2.1.1 幾何建模和場景構(gòu)建
采用三層組織結(jié)構(gòu)實現(xiàn)機房幾何模型管理,機房幾何模型結(jié)構(gòu)如圖4所示,機房幾何模型以機房為為父節(jié)點,機房環(huán)境和資產(chǎn)為子節(jié)點,通過對葉子節(jié)點進行三維建模,構(gòu)建和實際機房布局一致的虛擬機房場景。
本系統(tǒng)采用基于原生WebGL封裝運行的Three.js三維引擎[10-11]進行幾何建模。以機房機柜模型為例,具體實現(xiàn)步驟如下:
step1: 場景初始化,建立一個空白的三維場景,包括場景(Three.Scene)、相機(Three.Camera)、光源(Three.PointLight)、渲染器(Three.Render)。
step2: 通過Geometry幾何模型創(chuàng)建機柜幾何模型,使用Material紋理對機柜進行紋理貼圖,使用Three.mesh(Geometry,Material)三維網(wǎng)格動態(tài)創(chuàng)建機柜場景模型;
step3: 渲染機柜場景模型,使用Three.WebGLRenderer.render(scene,camera)渲染模型;
Step4: 頁面展示機柜場景模型。
2.1.2 人機交互
人機交互可以對事件進行響應(yīng),以此來改變虛擬場景的展示內(nèi)容。借助Three.js中的OrbitControls.js控件實現(xiàn)鼠標控制三維場景,OrbitControls.js控件會使瀏覽器自動檢測鼠標事件,把鼠標平移的距離按照一定算法轉(zhuǎn)化為相機的旋轉(zhuǎn)角度。模型操作如表1所示:
2.2 監(jiān)控系統(tǒng)設(shè)計
2.2.1 動環(huán)監(jiān)控
系統(tǒng)使用物聯(lián)網(wǎng)平臺作為數(shù)據(jù)總線,通過ModBus、SNMP等協(xié)議對機房基礎(chǔ)設(shè)備監(jiān)控信號接入監(jiān)控主機,由監(jiān)控主機內(nèi)置的軟件模塊對設(shè)備運行狀態(tài)以及參數(shù)進行動態(tài)監(jiān)測。將監(jiān)控數(shù)據(jù)通過文本、圖像的方式直觀的展示在平臺上。同時還增加實時視頻的方式對關(guān)鍵區(qū)域進行監(jiān)控,可以了解機房具體狀況,及時處理狀況的發(fā)生。
2.2.2 故障診斷
機房監(jiān)控系統(tǒng)的故障診斷實施方案結(jié)構(gòu)如下圖5所示,機房故障診斷采用基于數(shù)據(jù)驅(qū)動的方法,使用深度神經(jīng)網(wǎng)絡(luò)算法實現(xiàn)機房的故障診斷。具體步驟為:獲取機房真實運行數(shù)據(jù)和機房模型測試數(shù)據(jù),對數(shù)據(jù)進行數(shù)據(jù)清理、數(shù)據(jù)集成和數(shù)據(jù)轉(zhuǎn)換等數(shù)據(jù)預(yù)處理操作,然后將數(shù)據(jù)樣本送入到訓(xùn)練模型中進行學(xué)習(xí),生成故障診斷模型。將產(chǎn)生的結(jié)果與設(shè)備的歷史故障數(shù)據(jù)庫、故障專家知識庫進行全方位比對,將比對結(jié)果使用數(shù)據(jù)融合等算法得到設(shè)備故障特征值。通過對故障結(jié)果進行反饋,產(chǎn)生新的訓(xùn)練樣本,再通過訓(xùn)練模型生成新的診斷模型。通過上述過程的反復(fù)迭代,逐步提高故障診斷的準確性。
3 系統(tǒng)驗證
以某高校機房為實驗對象,根據(jù)本文方法設(shè)計了機房三維可視化監(jiān)控系統(tǒng),便于管理人員的運維,及時發(fā)現(xiàn)機房設(shè)備異常,優(yōu)化管理。系統(tǒng)使用VS Code(Visual Studio Code)軟件平臺進行開發(fā),基于Three.js引擎構(gòu)建虛擬機房三維場景,關(guān)系型數(shù)據(jù)庫MySQL存儲機房實時數(shù)據(jù),同時使用Ajax引擎對數(shù)據(jù)實時通信。使用Javascript腳本控制機房功能的實現(xiàn)并進行人機交互,監(jiān)控界面如圖6所示。
管理人員可以通過控制設(shè)備的狀態(tài)信息面板進行人機交互,機房中的告警異常會通過彈窗的方式提醒管理人員,如圖7所示。
4 結(jié) 論
設(shè)計了一種基于數(shù)字孿生的智能機房的三維可視化監(jiān)控系統(tǒng),通過基于工業(yè)物聯(lián)網(wǎng)平臺的數(shù)據(jù)采集方法,對設(shè)備運行狀態(tài)和參數(shù)進行動態(tài)監(jiān)測。以Three.js三維引擎構(gòu)建虛擬機房場景,實現(xiàn)場景三維可視化,并對實體設(shè)備的要素部分進行實時動態(tài)展示。使用深度神經(jīng)網(wǎng)絡(luò)算法對機房故障進行診斷,減少機房故障?;跀?shù)字孿生機房三維可視化監(jiān)控系統(tǒng)解決了機房監(jiān)管系統(tǒng)監(jiān)控方式單一、實時性差、透明度低等問題,提高機房系統(tǒng)管理效率,降低故障率,減少機房的運維費用。
參考文獻
[1] GRIEVES M. Product lifecycle management: the new paradigm for enterprises[J]. International Journal of Product Development,2005,2(1/2):71.
[2] 劉義,劉曉冬,焦曼,等.基于數(shù)字孿生的智能車間管控[J].制造業(yè)自動化,2020,42(07):148-152.
[3] 李利民,畢晉燕,丁衛(wèi)剛,等.船舶與海洋工程裝備智能車間可視化管控系統(tǒng)的開發(fā)與應(yīng)用[J].現(xiàn)代工業(yè)經(jīng)濟和信息化,2020,10(01):49-51.
[4] 林偉婷.C/S與B/S架構(gòu)技術(shù)比較分析[J].科技資訊,2018,16(13):15-16.
[5] 李筠.基于B/S架構(gòu)的圖書管理系統(tǒng)探究[J].科技傳播,2019,11(23):131-132.
[6] 張曉琳.基于B/S模式的3D服裝定制系統(tǒng)設(shè)計與實現(xiàn)[J].軟件導(dǎo)刊,2018,17(02):96-98.
[7] 汪浩,田豐,張文俊.基于WebGL的交互平臺設(shè)計與實現(xiàn)[J].電子測量技術(shù),2015,28(8):119-122.
[8] 徐文鵬,徐躍通,常勇,等.基于WebGL紋理映射技術(shù)的水立方貼圖的設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2013,(16):3889-3891.
[9] 李倩.基于WebGL的3D技術(shù)在網(wǎng)頁中的運用[J].信息安全與技術(shù),2020,12:125-126.
[10]聶帥,秦爽,麥文.通過Three.js引擎加載OBJ模型[J].黑龍江科技信息,2019,(14):80-82.
[11]安一飛.基于Three.js庫的雙模界面在交互式Web3D中的應(yīng)用[J].電子技術(shù)與軟件工程,2018,(10):46-46.
[12]卿宇搏,莫學(xué)芳,吳上海.故障診斷技術(shù)綜述及發(fā)展趨勢[J].中國儲運,2012,11:124-127.
[13]陳志強, 陳旭東, José,等.深度學(xué)習(xí)在設(shè)備故障預(yù)測與健康管理中的應(yīng)用[J].儀器儀表學(xué)報,2019,40(09):209-229.
[14]崔昊.基于數(shù)據(jù)驅(qū)動的行星齒輪箱關(guān)鍵零部件故障診斷[D].2020.
[15]張振良,劉軍強,黃亮,等.基于半監(jiān)督遷移學(xué)習(xí)的軸承故障診斷方法[J].北京航空航天大學(xué)學(xué)報,2019,45(11): 2291-2300.
[16]曲向儒.機房動環(huán)及視頻監(jiān)控系統(tǒng)[J].中國高新技術(shù)企業(yè),2008,24:170-171.
[17]魏佩霞.淺談動環(huán)監(jiān)控系統(tǒng)在通信機房中的監(jiān)測與預(yù)警作用[J].數(shù)字通信世界,2018,8:261-262.
[18]孟令.數(shù)據(jù)中心動環(huán)故障分析及展望[J].電子世界,2020,591(09):101-103.
[19]陳美玲,陳書明.高校數(shù)據(jù)中心機房監(jiān)控管理系統(tǒng)的設(shè)計與實現(xiàn)——以龍巖學(xué)院為例[J].龍巖學(xué)院學(xué)報,2019,37(5): 15-20.