作者:程立輝,劉大成,金小偉,鄭力
設備的遠程監(jiān)控是制造系統(tǒng)遠程監(jiān)控中的重要組成部分,包括對設備的運行進行監(jiān)視和控制,對設備可能出現(xiàn)的故障進行預測,對設備已經(jīng)出現(xiàn)的故障進行診斷等內(nèi)容。
圖形圖像信息是人類認識世界、掌握知識的重要方法。資料表明人類從外界所獲得知識,其中80%以上來自圖形圖像以及聲音信息。因而在遠程監(jiān)控系統(tǒng)設計中,特別是面向設備監(jiān)控中,較多地包含圖形圖像信息以及聲音信息,包括現(xiàn)場的視頻信息以及將各種傳感器信息轉(zhuǎn)換成比較容易識別的圖形信息。
然而,由于圖形圖像等視頻信息和音頻信息的數(shù)據(jù)量非常大,嚴重阻礙了具有海量數(shù)據(jù)的信息在遠程監(jiān)控系統(tǒng)中的使用,特別是在基于Intranet/Internet的遠程監(jiān)控系統(tǒng)中的應用。因此,如何在只有較少信息量傳輸?shù)那闆r下實現(xiàn)以視頻和音頻等多媒體信息為主要呈現(xiàn)方式的遠程監(jiān)控系統(tǒng)成為遠程監(jiān)控系統(tǒng)實現(xiàn)的主要原因之一。
本研究采用了傳感器驅(qū)動的虛擬現(xiàn)實輔助監(jiān)控的方法。虛擬現(xiàn)實技術(shù)是指綜合利用計算機圖形系統(tǒng)和各種現(xiàn)實及控制等接口設備,在計算機上生成的、可交互的三維環(huán)境技術(shù),具有沉浸(Immersion)、交互(Interaction)和構(gòu)想(Imagination)等三個基本特征。但由于這樣的系統(tǒng)造價高昂,操作復雜,尚無法在普通的工作環(huán)境中得到應用。目前虛擬現(xiàn)實的含義有所拓寬,即使用半沉浸和非沉浸技術(shù),通過顯示器對三維物體進行瀏覽的系統(tǒng)同樣可以被稱為虛擬現(xiàn)實系統(tǒng),從而在更大的范圍中普及和應用虛擬現(xiàn)實技術(shù)。
JAVA 3D是Java語言在三維圖形領域的擴展,是一組API(Application Programming Interface),可以創(chuàng)建基于Web的、與互聯(lián)網(wǎng)結(jié)合的三維交互環(huán)境的場景。用戶通過使用帶有插件的普通瀏覽器,便可以觀賞到由Java 3D創(chuàng)建的三維虛擬現(xiàn)實。由于Java 3D易于實現(xiàn)、適合網(wǎng)絡傳輸,交互性好等特點,因此,對建立基于Web的三維可視化交互式應用提供了一種很好的解決方案。
1、基于虛擬現(xiàn)實的設備遠程監(jiān)控系統(tǒng)
如圖1所示,虛擬現(xiàn)實輔助實現(xiàn)的設備遠程監(jiān)控系統(tǒng)可采用服務器/瀏覽器的模式。系統(tǒng)采用Java技術(shù)和Java 3D API虛擬現(xiàn)實技術(shù)實現(xiàn)。這主要是考慮到Java程序運行與操作系統(tǒng)無關的特性。遠程監(jiān)控系統(tǒng)主要分為客戶端、服務器以及現(xiàn)場設備等3個層次。
圖1 基于虛擬現(xiàn)時的設備遠程監(jiān)控系統(tǒng)
1.1 客戶端設計
客戶端采用增加插件的通用網(wǎng)頁瀏覽器,它是監(jiān)控系統(tǒng)用戶的工作界面。頁面主要包括設備的三維模型、設備運行參數(shù)顯示、設備控制、共享討論區(qū)等模塊。
當用戶經(jīng)過身份驗證進入監(jiān)控系統(tǒng)后,用戶選擇所要監(jiān)控的設備。這時,頁面將顯示用戶所選設備的三維虛擬圖像以及設備運行的相關信息。本文中,我們實現(xiàn)了抓取機器人的瀏覽器監(jiān)控畫面。
1.2 服務器設計
服務器主要包括網(wǎng)絡服務器、應用程序服務器以及數(shù)據(jù)庫服務器等。網(wǎng)絡服務器主要負責相關的發(fā)布,網(wǎng)絡通訊的安全等方面的內(nèi)容。應用程序服務器主要負責以下工作:①采集現(xiàn)場設備的多種傳感器信息,并將信息一方面存儲在數(shù)據(jù)庫中,另一方面通過網(wǎng)絡服務器發(fā)布;②獲取從網(wǎng)絡服務器得到的相關設備的控制信息,經(jīng)過分析確認后對現(xiàn)場設備進行控制;③從數(shù)據(jù)庫服務器中查詢設備的歷史信息,實現(xiàn)設備歷史運行的再現(xiàn)。數(shù)據(jù)庫服務器主要存儲設備監(jiān)控的歷史信息、設備的三維模型數(shù)據(jù)等內(nèi)容。
1.3 現(xiàn)場設備
現(xiàn)場設備是指那些現(xiàn)場存在的、需要實現(xiàn)遠程監(jiān)控的設備以及其他相關設備?,F(xiàn)場設備與服務器之間的通訊主要取決于設備本身的通訊能力。對于具有網(wǎng)絡通訊能力的設備,主要采用網(wǎng)絡通訊手段,應用TCP/UDP等技術(shù);對于沒有網(wǎng)絡通訊能力,但具有計算機串并口通訊能力的設備采用計算機串并口通訊技術(shù)實現(xiàn)通訊;對于不具備以上兩種通訊能力的設備,可以考慮采用開發(fā)單片機等方法實現(xiàn)通訊。
2、JAVA 3D模型
JAVA 3D是Java語言在三維圖形領域的擴展,是一組API,即應用編程接口。本文利用Java 3D提供的API,構(gòu)造了傳感器數(shù)據(jù)實時驅(qū)動的機器人運動的三維模擬軟件。
Java 3D的場景圖是DAG圖(Directed-acyclic Graph),類似于一種樹形結(jié)構(gòu),上面的分枝并不對稱,其中每一個節(jié)點均為對象,稱為節(jié)點(Node)。不管什么節(jié)點,都是Java 3D類的實例,節(jié)點之間的連線則代表對象之間的父子或引用關系。見圖2。
圖2 機器人的三維場景圖結(jié)構(gòu)
Java 3D的場景圖中,最底層(根部)的節(jié)點是Virtual Universe,每一個場景圖只能有一個Virtual Universe,就像一棵大樹的根。Virtual Universe的上面是Locale節(jié)點,每個程序可以有一個或多個Locale,但只能有一個Locale處于顯示狀態(tài)。絕大部分程序都只有一個Locale。每一個Locale上面擁有一個到多個BranchGroup節(jié)點。一般說來,要想建立三維應用環(huán)境,必須定義所需要的形體(Shape),給出形體的外觀(Appearance)及幾何信息(Geometry),再把它們擺放在合適的位置。這些形體及其擺放位置都是由相應的節(jié)點給出的,他們必須擺放在BranchGroup節(jié)點上面,擺放的具體位置由節(jié)點TransformGroup設定。另外,擺放好三維形體之后,還需要設定具體的觀察位置及觀察參數(shù)如視角。完成了這些工作,就算完成了三維場景圖的建立。
在虛擬現(xiàn)實輔助的設備遠程監(jiān)控系統(tǒng)的設備監(jiān)控畫面中,Reset、Move Up、Move Down、Move Right、Move Left、Zoom In、Zoom Out等功能鍵的作用分別表示控制虛擬三維物體恢復到系統(tǒng)默認視角、俯視、仰視、左視、右視、虛擬物體放大、虛擬物體縮小等功能。功能按鈕旁邊的綠色顯示標志表示設備目前運行正常,如果設備的運行出現(xiàn)異常甚至發(fā)生故障時,顯示標志將分別顯示橙色和紅色。在虛擬視窗下面的SelectMode下拉列表中可以選擇設備的運行方式,包括實時的設備監(jiān)視、設備運行狀態(tài)的歷史回顧以及設備的遠程控制方式。Robot Procedure File的功能是當機器人的工作方式選擇為控制方式時,通過發(fā)送控制命令文件實現(xiàn)設備的遠程控制。監(jiān)控頁面的右上部分的Select Sensor和Sensor Data組合起來,為用戶查詢各種傳感器信息提供了方便。頁面右下角的Chat Room為設備監(jiān)控的共享討論區(qū),為系統(tǒng)用戶提供了方便的交互手段。
3、結(jié) 語
采用虛擬現(xiàn)實輔助的設備遠程監(jiān)控系統(tǒng)為用戶提供了非常方便的設備監(jiān)控平臺。綜合采用Java技術(shù)和Java 3D虛擬現(xiàn)實技術(shù),首先可以實現(xiàn)監(jiān)控系統(tǒng)的跨平臺運行;其次,通過采用設備傳感器驅(qū)動的Java 3D虛擬現(xiàn)實模型的方法,一方面實現(xiàn)了設備運行狀態(tài)和運行信息的圖形圖像化描述,另一方面由于通訊網(wǎng)絡中傳輸?shù)闹皇窃O備相關的各種傳感器信息,與圖形圖像信息相比較,所需傳輸?shù)男畔⒘看蟠鬁p少。
責任編輯:gt
-
監(jiān)控系統(tǒng)
+關注
關注
21文章
4075瀏覽量
182425 -
JAVA
+關注
關注
20文章
2989瀏覽量
109496 -
虛擬現(xiàn)實
+關注
關注
15文章
2299瀏覽量
99426
發(fā)布評論請先 登錄
評論