• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于數(shù)字孿生的機(jī)房可視化管理系統(tǒng)

    2021-07-24 08:00:54彭玉元
    關(guān)鍵詞:機(jī)房客戶(hù)端可視化

    彭玉元

    (韓國(guó)又石大學(xué)大學(xué)院造景建設(shè)工學(xué)科,全羅北道 全州 55338 )

    0 概述

    隨著計(jì)算機(jī)圖形學(xué)和軟件處理技術(shù)的發(fā)展,三維可視化技術(shù)廣泛用于各種領(lǐng)域[1]。數(shù)字孿生概念也在近年被重新提及,其是指使用物理模型、互聯(lián)網(wǎng)、物聯(lián)網(wǎng)以及傳感器技術(shù)采集生命周期的數(shù)據(jù),并在設(shè)備或系統(tǒng)上進(jìn)行仿真的過(guò)程,能有效實(shí)現(xiàn)對(duì)現(xiàn)實(shí)環(huán)境和虛擬空間的映射。

    機(jī)房擔(dān)負(fù)著存儲(chǔ)數(shù)據(jù)、運(yùn)行系統(tǒng)以及服務(wù)高校發(fā)展的重要使命。機(jī)房三維可視化設(shè)計(jì)是對(duì)數(shù)字孿生概念的實(shí)際運(yùn)用,常規(guī)的機(jī)房管理系統(tǒng)相對(duì)于該系統(tǒng)存在數(shù)據(jù)呈現(xiàn)形式弱、機(jī)房監(jiān)控復(fù)雜等劣勢(shì)。該項(xiàng)目進(jìn)行了數(shù)字孿生技術(shù)的應(yīng)用模式探索,以Unity 3D 為客戶(hù)端的技術(shù)支持,并結(jié)合C#程序開(kāi)發(fā)了一款可在PC 端使用的三維機(jī)房管理軟件,極大地提高了機(jī)房管理的效率,優(yōu)化了機(jī)房管理系統(tǒng)的用戶(hù)使用界面。機(jī)房的三維可視化管理可通過(guò)三維建模(機(jī)房設(shè)備、機(jī)房格局等的數(shù)字孿生體)配合實(shí)時(shí)渲染的三維引擎進(jìn)行機(jī)房的虛擬仿真并展示出來(lái),讓用戶(hù)可以與三維場(chǎng)景交互,從而實(shí)現(xiàn)機(jī)房的三維可視化管理和運(yùn)維[2]。目前國(guó)內(nèi)外對(duì)該領(lǐng)域都具有一定的研究,相關(guān)產(chǎn)品有Visual DAQ 系統(tǒng)和Twaver系統(tǒng)等。

    1 三維可視化機(jī)房管理的優(yōu)勢(shì)分析

    1.1 三維可視化對(duì)機(jī)房管理的意義

    機(jī)房三維可視化是對(duì)傳統(tǒng)管理系統(tǒng)的進(jìn)一步提升,通過(guò)三維可視化的形式呈現(xiàn)機(jī)房的大量數(shù)據(jù),提高管理人員對(duì)機(jī)房數(shù)據(jù)的查閱、接收效率。該系統(tǒng)具有實(shí)時(shí)性,便于機(jī)房管理人員對(duì)機(jī)房進(jìn)行資產(chǎn)查看、設(shè)備定位,直觀地提供了全方位視角,可以對(duì)機(jī)房進(jìn)行立體的分析、管理。

    1.2 機(jī)房三維可視化管理的優(yōu)勢(shì)

    傳統(tǒng)的機(jī)房管理系統(tǒng)主要使用一維或二維的系統(tǒng)構(gòu)架圖、網(wǎng)絡(luò)拓?fù)鋱D來(lái)表達(dá)機(jī)房數(shù)據(jù),視覺(jué)呈現(xiàn)難以精確描述機(jī)房的整體結(jié)構(gòu),不利于直觀理解機(jī)房數(shù)據(jù)。而基于數(shù)字孿生理念的可視化機(jī)房管理系統(tǒng)通過(guò)虛擬仿真來(lái)進(jìn)行信息表達(dá),可以通過(guò)三維可視化的形式直觀地呈現(xiàn)復(fù)雜的機(jī)房數(shù)據(jù)、位置等各種重要信息,幫助管理人員完成更為高效的行動(dòng)與決策[3]。其優(yōu)勢(shì)如圖1 所示。

    圖1 可視化機(jī)房管理系統(tǒng)與傳統(tǒng)管理的差異對(duì)比圖

    2 數(shù)字孿生理念機(jī)房仿真技術(shù)實(shí)現(xiàn)

    2.1 機(jī)房資產(chǎn)的三維可視化編輯模塊

    機(jī)房的業(yè)務(wù)具有復(fù)雜性和專(zhuān)業(yè)性,難以將所有的管理內(nèi)容全部遷移到三維可視化客戶(hù)端,在經(jīng)過(guò)一系列的實(shí)踐后,筆者認(rèn)為三維可視化部分應(yīng)該保持其功能的獨(dú)立性和單一性,主要實(shí)現(xiàn)客戶(hù)端的表現(xiàn)功能,其余復(fù)雜的業(yè)務(wù)邏輯工作依舊交由后臺(tái)管理程序和傳統(tǒng)機(jī)房管理系統(tǒng)進(jìn)行處理。

    因此,機(jī)房的三維可視化客戶(hù)端首先需要解決的就是資產(chǎn)的三維可視化編輯。通過(guò)預(yù)先制作好的三維模型等資源,例如設(shè)備機(jī)柜、機(jī)房空調(diào)以及門(mén)禁等各種三維資源組件,在客戶(hù)端實(shí)現(xiàn)場(chǎng)景的編輯功能,可實(shí)時(shí)編輯機(jī)房的布局圖,并實(shí)時(shí)生成三維可視化場(chǎng)景。已經(jīng)開(kāi)發(fā)實(shí)現(xiàn)的軟件界面截圖如圖2 所示。

    圖2 客戶(hù)端實(shí)時(shí)布局演示(軟件截圖)

    該軟件使用Unity 3D 技術(shù),并基于C#編程規(guī)范進(jìn)行開(kāi)發(fā)。開(kāi)發(fā)過(guò)程中,在進(jìn)行三維模型預(yù)制件的動(dòng)態(tài)編輯布局時(shí),使用C#編程語(yǔ)言來(lái)計(jì)算多邊形網(wǎng)格,從而繪制墻體和地面的實(shí)時(shí)三維模型。其步驟依次為設(shè)置多邊形頂點(diǎn)數(shù)組、設(shè)置三角形序列和設(shè)置網(wǎng)格UV。在Unity 3D 中將這些步驟依次編寫(xiě)為3個(gè)步驟的靜態(tài)函數(shù):1)SetVertices(Listobj)。該函數(shù)通過(guò)輸入的墻體連接點(diǎn),獲取墻體連接點(diǎn)的世界坐標(biāo)并將其處理成1 個(gè)Vector3 數(shù)組進(jìn)行返回,作為地面模型繪制的頂點(diǎn)序列。2)SetUVs(Listobj)。該函數(shù)通過(guò)輸入墻體連接點(diǎn)對(duì)象,并獲取其世界坐標(biāo),即為地面網(wǎng)格的定點(diǎn)坐標(biāo),并將其坐標(biāo)映射到二維平面空間,即得到地面網(wǎng)格的UV 坐標(biāo),將其處理為1 個(gè)Vector2 數(shù)組并在最終返回。3)SetTriangles(Listobj)。該函數(shù)通過(guò)輸入墻體連接點(diǎn)對(duì)象,獲取其世界坐標(biāo),即地面網(wǎng)格的頂點(diǎn)坐標(biāo),然后通過(guò)頂點(diǎn)數(shù)量減2 得到三角形數(shù),并通過(guò)三角形數(shù)乘以3 得到三角形序列數(shù)組的長(zhǎng)度。最后通過(guò)循環(huán)對(duì)三角形序列進(jìn)行正反向排列,得到1 個(gè)描述三角形構(gòu)成的int 數(shù)組,最終返回該數(shù)組供外部使用。

    2.2 機(jī)房三維可視化模塊與后臺(tái)數(shù)據(jù)交互的實(shí)現(xiàn)

    機(jī)房場(chǎng)景實(shí)時(shí)編輯解決了三維機(jī)房可視化的客制化需求,可以根據(jù)自己的需求進(jìn)行三維可視化場(chǎng)景的快速編輯布局,簡(jiǎn)單快捷地創(chuàng)建出現(xiàn)實(shí)機(jī)房的數(shù)字孿生體模型。但是只有機(jī)房的三維模型是不夠的,還要將三維模型與對(duì)應(yīng)的后臺(tái)數(shù)據(jù)快速關(guān)聯(lián)起來(lái),從而滿(mǎn)足對(duì)機(jī)房數(shù)據(jù)信息可視化的要求。

    在開(kāi)發(fā)過(guò)程中,使用Web 開(kāi)發(fā)技術(shù)從傳統(tǒng)機(jī)房管理系統(tǒng)中提取必要的數(shù)據(jù)接口,并借助橋接層,供三維可視化客戶(hù)端調(diào)用,從而實(shí)現(xiàn)后臺(tái)數(shù)據(jù)的交互。流程結(jié)構(gòu)如圖3 所示。

    圖3 三維可視化客戶(hù)端與后臺(tái)數(shù)據(jù)交互流程圖

    三維可視化客戶(hù)端中的橋接層使用C#語(yǔ)言進(jìn)行編寫(xiě),自定義接口采用Web services 技術(shù),以XML 格式的形式進(jìn)行數(shù)據(jù)交互,在Unity 3D 中編寫(xiě)C#代碼,周期性主動(dòng)請(qǐng)求調(diào)用數(shù)據(jù)接口,然后根據(jù)所獲得的數(shù)據(jù)實(shí)時(shí)關(guān)聯(lián)到機(jī)房三維場(chǎng)景(即數(shù)字孿生體)模型中。三維可視化客戶(hù)端會(huì)根據(jù)現(xiàn)實(shí)機(jī)房中對(duì)應(yīng)設(shè)備的狀態(tài)來(lái)觸發(fā)數(shù)字孿生體中相應(yīng)的行為條件,從而在三維場(chǎng)景模型中呈現(xiàn)相應(yīng)的數(shù)據(jù)信息,實(shí)現(xiàn)了三維場(chǎng)景模型和數(shù)據(jù)的關(guān)聯(lián)與交互。

    2.3 用戶(hù)交互模塊的實(shí)現(xiàn)

    雖然通過(guò)實(shí)現(xiàn)以上2 個(gè)功能,用戶(hù)已經(jīng)可以自定義機(jī)房的三維模型以及獲取相應(yīng)的數(shù)據(jù),但是還要給用戶(hù)提供三維模型及UI 的可視化操作。該系統(tǒng)主要是通過(guò)鼠標(biāo)和鍵盤(pán)進(jìn)行交互,因此該系統(tǒng)需要穩(wěn)定、可擴(kuò)展的三維對(duì)象交互系統(tǒng)。

    在開(kāi)發(fā)過(guò)程中,需要在Unity 3D 中使用C#編寫(xiě)能與多種三維物體對(duì)象進(jìn)行交互的鼠標(biāo)事件,從而實(shí)現(xiàn)用戶(hù)對(duì)三維模型與UI 的拖拽等交互操作。筆者基于Unity 3D 中的MonoBehaviour 類(lèi)以及自定義封裝Unity RayCast API 中的PRayCast 類(lèi)來(lái)對(duì)射線(xiàn)進(jìn)行檢測(cè),從而實(shí)現(xiàn)鼠標(biāo)拾取三維空間中的虛擬對(duì)象的功能。同時(shí)配合單例PMouseManager 進(jìn)行事件分發(fā),實(shí)現(xiàn)三維虛擬對(duì)象的選擇和取消選擇事件。使用單例模式可以方便地在任何地方調(diào)取當(dāng)前交互狀態(tài)的信息供開(kāi)發(fā)更多的功能。BaseObjectHandle 類(lèi)實(shí)際作為接口和父類(lèi)來(lái)使用,其直接繼承了MonoBehaviour 和所有EventSystem 的交互接口,讓EventSystem 中的Unity 默認(rèn)交互事件能夠?qū)⑹录职l(fā)到擴(kuò)展的所有BaseObjectHanlde的子類(lèi)中??偟膩?lái)說(shuō),在該系統(tǒng)下,只需要為具體的虛擬對(duì)象新建一個(gè)實(shí)現(xiàn)類(lèi),并繼承BaseObjectHandle,然后重寫(xiě)其中需要響應(yīng)的交互,并實(shí)現(xiàn)具體邏輯,再將腳本中的GameObject.AddComponent()方法動(dòng)態(tài)添加到對(duì)象中,并將自定義ObjectHandle 添加到對(duì)象上,再將其預(yù)制為Prefab,就可以簡(jiǎn)單地實(shí)現(xiàn)各種三維虛擬對(duì)象的實(shí)際交互效果。該系統(tǒng)交互類(lèi)的結(jié)構(gòu)如圖4 所示。

    圖4 用戶(hù)交互模塊中主要類(lèi)名與結(jié)構(gòu)

    2.4 數(shù)據(jù)存儲(chǔ)

    為了存儲(chǔ)每個(gè)自定義編輯場(chǎng)景的數(shù)據(jù),且將場(chǎng)景數(shù)據(jù)與后臺(tái)服務(wù)器進(jìn)行交互,筆者研究設(shè)計(jì)了一套基于XML 的數(shù)據(jù)存儲(chǔ)系統(tǒng)。該系統(tǒng)的主要功能在于能夠在Unity 3D 框架下進(jìn)行擴(kuò)展和管理,并完成對(duì)不同需求數(shù)據(jù)的生成、增加、查找、修改與保存工作。

    在整個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)中,由Storer子類(lèi)實(shí)現(xiàn)存儲(chǔ)功能,對(duì)應(yīng)一個(gè)或多個(gè)數(shù)據(jù)文件。每一次將數(shù)據(jù)序列化并保存為文件時(shí),PXDocCore 方法都會(huì)創(chuàng)建一個(gè)XDocDirectory 目錄文件,該文件所保存的數(shù)據(jù)為具體目錄信息和相關(guān)參數(shù)(例如是否在PXDocCore 首次初始化時(shí)就進(jìn)行數(shù)據(jù)加載并緩存到內(nèi)存),文件默認(rèn)保存在數(shù)據(jù)目錄的根目錄下。

    為了解決存儲(chǔ)實(shí)現(xiàn)類(lèi)Storer的自定義數(shù)據(jù)類(lèi)型,筆者特別設(shè)計(jì)了一個(gè)能夠在C#中實(shí)現(xiàn)泛型返回值的ReadData(params string[] keys)方法,該方法能夠讓Storer的子類(lèi)實(shí)現(xiàn)自定義返回值,且只需要聲明一個(gè)類(lèi)class 或結(jié)構(gòu)體struct,同時(shí)為了存儲(chǔ)邏輯實(shí)現(xiàn)類(lèi)Storer的子類(lèi),只需要在繼承時(shí)設(shè)定其該存儲(chǔ)實(shí)現(xiàn)類(lèi)所使用的數(shù)據(jù)類(lèi)型即可。

    為了避免數(shù)據(jù)文件因遭遇不必要的修改而導(dǎo)致程序運(yùn)行錯(cuò)誤,在該框架中筆者為數(shù)據(jù)的存儲(chǔ)添加了一個(gè)AES 加密算法,以提供一定的安全加密功能和防串改功能,在項(xiàng)目中采用了C#的RijndaelManaged 類(lèi)制作數(shù)據(jù)加密模塊。

    3 運(yùn)行環(huán)境

    3.1 客戶(hù)端服務(wù)器后臺(tái)

    客戶(hù)端服務(wù)器主要采用php 進(jìn)行開(kāi)發(fā),部署運(yùn)行于Windows Server 或Linux 操作系統(tǒng)上,通過(guò)固定域名地址為三維可視化客戶(hù)端提供數(shù)據(jù)訪問(wèn)接口。

    測(cè)試采用的的系統(tǒng)軟件具體部署如下:1)Windows Server。IIS(Internet Information Services)。2)MySQL。3)PHP Linux(CentOS)。Nginx、MySQL 以及PHP。

    3.2 客戶(hù)端運(yùn)行環(huán)境

    客戶(hù)端為運(yùn)行于Windows 操作系統(tǒng)上的三維軟件,需要有中高性能顯卡硬件作為支持,在測(cè)試中使用的軟硬件配置為intel core i7、8G DDR4 2133 ram、256g SSD、NVidia GTX 980 8G 顯卡以及windows 10 64bit 操作系統(tǒng)。

    4 其他可納入功能

    4.1 手機(jī)端數(shù)據(jù)快速查看

    配合橋接層后臺(tái)可以擴(kuò)展手機(jī)端的信息查看功能,通過(guò)配合手機(jī)App 可以快速查看服務(wù)器的信息,如果出現(xiàn)緊急狀況也可以讓運(yùn)維人員第一時(shí)間掌握故障信息的初步狀況。

    4.2 多種傳感器數(shù)據(jù)可視化

    可以在橋接層服務(wù)器納入更多的數(shù)據(jù)處理程序,配合部署在服務(wù)器機(jī)房?jī)?nèi)的各種傳感器(溫度、濕度及風(fēng)量等)進(jìn)行數(shù)據(jù)采集,并將其提供給三維可視化客戶(hù)端,再由客戶(hù)端以二維圖表或三維的形式呈現(xiàn)相關(guān)數(shù)據(jù),例如服務(wù)器機(jī)房的溫度布局就可以通過(guò)熱力圖計(jì)算疊加到三維空間中,可直觀地了解機(jī)房的溫度分布。

    4.3 動(dòng)環(huán)信息可視化

    可以同時(shí)對(duì)機(jī)房的動(dòng)環(huán)信息進(jìn)行三維可視化操作,可以實(shí)現(xiàn)動(dòng)力監(jiān)控、計(jì)算環(huán)境監(jiān)控、安防監(jiān)控以及服務(wù)器監(jiān)測(cè)等功能。運(yùn)維人員能夠通過(guò)三維圖形直接了解機(jī)房的動(dòng)環(huán)信息,配合傳統(tǒng)管理系統(tǒng)提供的相關(guān)數(shù)據(jù),實(shí)現(xiàn)更高效的動(dòng)環(huán)系統(tǒng)控制。

    4.4 非機(jī)房三維可視化布局

    借助原有的客戶(hù)端動(dòng)態(tài)布局功能可以設(shè)計(jì)更多其他領(lǐng)域的三維組件模型供用戶(hù)調(diào)用,即可應(yīng)用于其他領(lǐng)域的三維可視化快速預(yù)覽,例如室內(nèi)布局、園區(qū)布局等。

    5 結(jié)語(yǔ)

    該文根據(jù)數(shù)字孿生理念所設(shè)計(jì)的機(jī)房可視化管理方案可以滿(mǎn)足三維機(jī)房可視化的客制化需求,簡(jiǎn)單快捷地創(chuàng)建出現(xiàn)實(shí)機(jī)房的數(shù)字孿生體模型,并能與傳統(tǒng)機(jī)房的后臺(tái)進(jìn)行數(shù)據(jù)交互,可以快速實(shí)現(xiàn)不同機(jī)房場(chǎng)景的搭建以及對(duì)機(jī)房場(chǎng)景的擬真,從而提升機(jī)房的管理效率。

    猜你喜歡
    機(jī)房客戶(hù)端可視化
    基于CiteSpace的足三里穴研究可視化分析
    基于Power BI的油田注水運(yùn)行動(dòng)態(tài)分析與可視化展示
    云南化工(2021年8期)2021-12-21 06:37:54
    基于CGAL和OpenGL的海底地形三維可視化
    “融評(píng)”:黨媒評(píng)論的可視化創(chuàng)新
    縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶(hù)端
    孵化垂直頻道:新聞客戶(hù)端新策略
    基于Vanconnect的智能家居瘦客戶(hù)端的設(shè)計(jì)與實(shí)現(xiàn)
    N通信公司機(jī)房節(jié)能技改實(shí)踐
    新型有線(xiàn)電視機(jī)房UPS系統(tǒng)的配置
    大功率發(fā)射機(jī)房冷卻送風(fēng)改造
    崇信县| 方山县| 灵川县| 新闻| 卢湾区| 敦化市| 梅州市| 万安县| 滁州市| 莱阳市| 腾冲县| 崇州市| 黎川县| 温宿县| 城市| 武安市| 舟山市| 嵩明县| 台安县| 景洪市| 河间市| 苏尼特右旗| 志丹县| 平乐县| 谷城县| 长兴县| 富顺县| 佛坪县| 罗山县| 宝丰县| 高碑店市| 曲沃县| 台北市| 开鲁县| 慈利县| 资源县| 南涧| 长沙市| 黄大仙区| 磴口县| 曲松县|