文獻(xiàn)標(biāo)識(shí)碼:B文章編號(hào):1003-0492(2023)10-084-04中圖分類號(hào):TP391
★李鵬,李明黨(南京睿首智能技術(shù)研究院有限公司,江蘇南京210046)
關(guān)鍵詞:仿真;培訓(xùn)系統(tǒng);流程工業(yè);WEB;三維
1 引言
化工、熱電和冶金等流程工業(yè)大多數(shù)具有高溫、高壓、易燃、易爆、易中毒、有腐蝕性等特點(diǎn),是一個(gè)具有危險(xiǎn)性的行業(yè),其生產(chǎn)工藝復(fù)雜且差異性大,生產(chǎn)流程長且連續(xù)性強(qiáng),產(chǎn)品種類繁多且質(zhì)量要求高,這些特點(diǎn)對(duì)行業(yè)操作人員的知識(shí)和技能水平提出了非常高的要求[1]。
流程行業(yè)傳統(tǒng)的培訓(xùn)方式是學(xué)員到工廠進(jìn)行學(xué)習(xí),但是為了保障企業(yè)生產(chǎn)的平穩(wěn)安全運(yùn)行,通常不會(huì)讓學(xué)員在實(shí)際生產(chǎn)裝置上進(jìn)行全面操作訓(xùn)練,造成理論與實(shí)踐脫節(jié)。因此,如何讓學(xué)員進(jìn)行全面系統(tǒng)的實(shí)際操作訓(xùn)練,掌握開停車過程以及正常運(yùn)行操作方法,尤其是如何預(yù)防突發(fā)事件以及出現(xiàn)突發(fā)事件時(shí)如何處理,是企業(yè)培訓(xùn)中亟待解決的問題。
仿真培訓(xùn)系統(tǒng)作為一種先進(jìn)的培訓(xùn)工具,為解決企業(yè)“培訓(xùn)難”問題提供了有效的方式。通過仿真培訓(xùn),可以幫助操作人員理解工藝流程和設(shè)備運(yùn)行原理、掌握裝置操作技能和事故處理方法。目前,國內(nèi)外在流程行業(yè)領(lǐng)域的仿真培訓(xùn)系統(tǒng)建設(shè)應(yīng)用已經(jīng)非常普遍,但綜觀下來,仍然存在很多的不足,主要表現(xiàn)在以下幾方面[2][3]:
(1)仿真畫面只有DCS仿真而沒有現(xiàn)場(chǎng)仿真,或者現(xiàn)場(chǎng)仿真以二維形式表現(xiàn),不能直觀形象地體現(xiàn)實(shí)際生產(chǎn)場(chǎng)景中的設(shè)備、管道和儀表;
(2)操作模式簡(jiǎn)單,通常只有單人操作模式,沒有協(xié)同操作模式,不能模擬實(shí)際生產(chǎn)中的班組分工與協(xié)作;
(3)單機(jī)或C/S類型的仿真軟件,對(duì)客戶端硬件要求較高,且客戶端的安裝和升級(jí)過程繁瑣費(fèi)時(shí);組織培訓(xùn)受時(shí)間和地點(diǎn)的限制較大,影響了培訓(xùn)效果;
(4)近些年發(fā)展起來的半實(shí)物仿真培訓(xùn)系統(tǒng),其前期的建設(shè)和后期的運(yùn)營維護(hù)都需要投入較高的費(fèi)用,并且對(duì)場(chǎng)地條件有一定的要求。
基于以上原因,本文通過研究基于Web的多模式流程工業(yè)仿真培訓(xùn)系統(tǒng),建立了一種可隨時(shí)隨地進(jìn)行在線學(xué)習(xí)、結(jié)合二維DCS仿真和三維現(xiàn)場(chǎng)仿真、不同崗位人員可協(xié)同操作的仿真培訓(xùn)方式,以克服傳統(tǒng)仿真培訓(xùn)系統(tǒng)的不足之處。
2 仿真系統(tǒng)的架構(gòu)和功能概述
基于Web的多模式流程工業(yè)仿真培訓(xùn)系統(tǒng)采用B/S(瀏覽器/服務(wù)器)三層架構(gòu)模式[4],其包括表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)層,如圖1、圖2所示。
圖1 仿真系統(tǒng)三層架構(gòu)
圖2 仿真系統(tǒng)B/S架構(gòu)
2.1 表示層
為用戶提供仿真交互操作界面,將用戶的操作請(qǐng)求發(fā)送給WEB服務(wù)器,將仿真運(yùn)算的結(jié)果數(shù)據(jù)在界面上實(shí)時(shí)更新,并呈現(xiàn)給用戶。它包括以下主要功能單元:
(1)二維DCS仿真界面,主要模擬DCS操作站界面及功能,如圖3所示;
圖3 二維DCS仿真界面
(2)三維現(xiàn)場(chǎng)仿真界面,采用三維虛擬現(xiàn)實(shí)技術(shù),模擬工廠現(xiàn)場(chǎng)實(shí)際裝置,包括各設(shè)備、管道、閥門和儀表等,操作者可以通過與仿真系統(tǒng)的交互,獲得接近于現(xiàn)場(chǎng)真實(shí)場(chǎng)景的沉浸式體驗(yàn),幫助了解設(shè)備的內(nèi)部結(jié)構(gòu)、運(yùn)行原理、事故狀態(tài)、操作方式等,如圖4所示;
圖4 三維現(xiàn)場(chǎng)仿真界面
二維DCS仿真界面和三維現(xiàn)場(chǎng)仿真界面之間實(shí)現(xiàn)雙向數(shù)據(jù)傳遞。
(3)仿真管理功能,實(shí)現(xiàn)仿真的運(yùn)行、暫停、停止、速度設(shè)定等功能;
(4)趨勢(shì)曲線功能,包括實(shí)時(shí)趨勢(shì)曲線展示和歷史趨勢(shì)曲線展示,如圖5所示;
圖5 趨勢(shì)曲線界面
(5)工況存取功能,可保存當(dāng)前的工況數(shù)據(jù),也可讀取之前保存的工況數(shù)據(jù);(6)操作模式切換功能,通過對(duì)組的各種操作,包括創(chuàng)建組、結(jié)束組、加入組、離開組,實(shí)現(xiàn)單人操作模式和多人協(xié)同操作模式的切換。
2.2 業(yè)務(wù)邏輯層
對(duì)瀏覽器發(fā)送的用戶操作請(qǐng)求進(jìn)行業(yè)務(wù)邏輯處理,其包括以下主要模塊:
(1)工藝仿真模塊,基于設(shè)備原理模型、流網(wǎng)模型和物性計(jì)算模型,負(fù)責(zé)整個(gè)工藝流程的動(dòng)態(tài)模擬計(jì)算,以用戶對(duì)閥門和設(shè)備的操作作為輸入,得到流量、溫度、壓力、液位等生產(chǎn)工藝參數(shù);
(2)組管理模塊,處理用戶對(duì)組操作的請(qǐng)求;
(3)趨勢(shì)管理模塊,處理用戶查看實(shí)時(shí)趨勢(shì)曲線和歷史趨勢(shì)曲線的請(qǐng)求;
(4)工況管理模塊,處理用戶保存工況或讀取工況的請(qǐng)求;
(5)通訊接口模塊,實(shí)現(xiàn)了OPCUA標(biāo)準(zhǔn)通訊接口,可與其他自動(dòng)控制系統(tǒng)對(duì)接,對(duì)仿真工藝進(jìn)行控制。
2.3 數(shù)據(jù)層
負(fù)責(zé)對(duì)數(shù)據(jù)庫的操作,用于存儲(chǔ)業(yè)務(wù)邏輯層各模塊產(chǎn)生的數(shù)據(jù),并為業(yè)務(wù)邏輯層各模塊提供數(shù)據(jù)。它主要包括用戶狀態(tài)信息表、歷史趨勢(shì)數(shù)據(jù)表、協(xié)同操作組信息表、協(xié)同操作操作信息表、協(xié)同操作實(shí)時(shí)數(shù)據(jù)表等。
3 仿真系統(tǒng)的技術(shù)實(shí)現(xiàn)
3.1 二維DCS仿真界面
二維DCS仿真的交互界面在客戶端瀏覽器中以HTML5標(biāo)準(zhǔn)顯示,通過AJAX技術(shù)與WEB服務(wù)器進(jìn)行異步數(shù)據(jù)傳輸,從而實(shí)現(xiàn)界面的異步更新。用戶的仿真操作請(qǐng)求,使用GET或POST請(qǐng)求類型,封裝成XMLHttpRequest對(duì)象,以HTTP協(xié)議的方式發(fā)送到WEB服務(wù)器。仿真操作請(qǐng)求來自二維DCS仿真交互界面中的可操作輸入點(diǎn),主要包括各閥門和設(shè)備的模擬量和開關(guān)量輸入。WEB服務(wù)器接收到仿真操作請(qǐng)求,解析出其中的仿真操作信息數(shù)據(jù),然后交給業(yè)務(wù)邏輯層進(jìn)行處理,處理完畢后將響應(yīng)數(shù)據(jù)返回給二維DCS仿真交互界面,并且只對(duì)二維DCS仿真交互界面的局部進(jìn)行更新。
趨勢(shì)曲線展示,由基于Javascript的數(shù)據(jù)可視化圖表庫Echarts實(shí)現(xiàn)。
3.2 三維現(xiàn)場(chǎng)仿真界面
三維現(xiàn)場(chǎng)仿真的交互界面在客戶端瀏覽器中以HTML5標(biāo)準(zhǔn)+WebGL標(biāo)準(zhǔn)顯示,通過Unity3D開發(fā)并發(fā)布為WebGL項(xiàng)目所生成。三維現(xiàn)場(chǎng)仿真交互界面中的JavaScript腳本通過調(diào)用GameObjects類中的SendMessage方法向Unity3D腳本發(fā)送消息,而Unity3D腳本通過調(diào)用Application.ExternalCall方法向三維現(xiàn)場(chǎng)仿真交互界面中的JavaScript發(fā)送消息,從而實(shí)現(xiàn)三維現(xiàn)場(chǎng)仿真交互界面中JavaScrip腳本和Unity3D腳本之間的雙向數(shù)據(jù)傳遞。
二維DCS仿真交互界面和三維現(xiàn)場(chǎng)仿真交互界面之間,通過HTML5標(biāo)準(zhǔn)所支持的localStorage本地存儲(chǔ)方式進(jìn)行寫入和讀取,實(shí)現(xiàn)雙向數(shù)據(jù)傳遞。
3.3 操作模式
多人協(xié)同操作模式,具體是通過組管理模塊實(shí)現(xiàn)。組管理模塊,包括創(chuàng)建組、結(jié)束組、加入組和離開組等子模塊,負(fù)責(zé)生成組ID和組名稱等信息,管理當(dāng)前用戶的組狀態(tài),控制仿真模塊的啟動(dòng)和運(yùn)行等。
創(chuàng)建組:先由一用戶(組創(chuàng)建者)在仿真交互界面中發(fā)送創(chuàng)建組請(qǐng)求,WEB服務(wù)器調(diào)用創(chuàng)建組模塊,生成組ID和組名稱等信息,在組數(shù)據(jù)表中新增一條該組信息,并在用戶的登錄信息數(shù)據(jù)表中更新該用戶的所在組ID,同時(shí)將組名稱返回給該用戶的仿真交互界面。
加入組:由其他用戶(組成員)根據(jù)該創(chuàng)建組的名稱,在仿真交互界面中發(fā)送加入組請(qǐng)求,WEB服務(wù)器調(diào)用加入組模塊,在數(shù)據(jù)表中查詢?cè)摻M名稱,如果查詢成功,則在用戶的登錄信息數(shù)據(jù)表中更新該用戶的所在組ID,同時(shí)將組名稱返回給該用戶的仿真交互界面。
離開組:由組成員在仿真交互界面中發(fā)送離開組請(qǐng)求,WEB服務(wù)器調(diào)用離開組模塊,將用戶的登錄信息數(shù)據(jù)表中所關(guān)聯(lián)的組ID還原為默認(rèn)值。
結(jié)束組:由組創(chuàng)建者在仿真交互界面中發(fā)送結(jié)束請(qǐng)求,WEB服務(wù)器調(diào)用結(jié)束組模塊,將用戶的登錄信息數(shù)據(jù)表中所關(guān)聯(lián)的組ID還原為默認(rèn)值,同時(shí)將結(jié)束組的消息通知給各組成員。
在多人協(xié)同操作模式下,仿真模塊的啟動(dòng)由組創(chuàng)建者控制,先由組創(chuàng)建者在仿真交互界面中發(fā)送仿真啟動(dòng)請(qǐng)求,WEB服務(wù)器收到請(qǐng)求后,啟動(dòng)仿真模塊并開始迭代運(yùn)算,運(yùn)算結(jié)果實(shí)時(shí)返回給組創(chuàng)建者的仿真交互界面,同時(shí)將運(yùn)算結(jié)果實(shí)時(shí)傳遞給數(shù)據(jù)庫,組成員從數(shù)據(jù)庫中實(shí)時(shí)讀取運(yùn)算結(jié)果并在各自的仿真交互界面中進(jìn)行更新。
仿真模塊運(yùn)行過程中,每個(gè)組成員在仿真交互界面上進(jìn)行的操作請(qǐng)求,都會(huì)由WEB服務(wù)器解析出其中的操作信息,并按照時(shí)間順序存儲(chǔ)到數(shù)據(jù)庫中,然后再按原來的時(shí)間順序讀取、傳遞給仿真模塊作為輸入進(jìn)行迭代運(yùn)算處理。即在多人協(xié)同操作模式下,每個(gè)組成員通過數(shù)據(jù)庫共享同一個(gè)仿真模塊的運(yùn)算結(jié)果,仿真模塊由組創(chuàng)建者調(diào)用并控制。
3.4 工藝仿真模塊
工藝仿真模塊和通訊接口模塊基于.NETFramework和Visual C#開發(fā),并生成COM組件,在服務(wù)器端通過PHP腳本的com類進(jìn)行訪問調(diào)用。
3.5 數(shù)據(jù)庫設(shè)計(jì)
使用MySQL設(shè)計(jì)并建立仿真系統(tǒng)的數(shù)據(jù)庫,主要包括用戶狀態(tài)信息表、歷史趨勢(shì)數(shù)據(jù)表、協(xié)同操作組信息表、協(xié)同操作操作信息表、協(xié)同操作實(shí)時(shí)數(shù)據(jù)表等。用戶狀態(tài)信息表的字段包括用戶ID、用戶最后活動(dòng)時(shí)間、關(guān)聯(lián)組ID等。歷史趨勢(shì)數(shù)據(jù)表的字段包括數(shù)據(jù)ID、關(guān)聯(lián)用戶ID、數(shù)據(jù)內(nèi)容、數(shù)據(jù)寫入時(shí)間等。協(xié)同操作組信息表的字段包括組ID、組名稱、組創(chuàng)建者、組創(chuàng)建時(shí)間、當(dāng)前成員數(shù)、上次處理的操作步驟ID等。協(xié)同操作操作信息表的字段包括操作信息ID、操作者(關(guān)聯(lián)用戶ID)、操作信息類型、操作對(duì)象位號(hào)、操作輸入舊值、操作輸入新值、操作時(shí)間、關(guān)聯(lián)組ID等。協(xié)同操作實(shí)時(shí)數(shù)據(jù)表的字段包括數(shù)據(jù)ID、關(guān)聯(lián)組ID、數(shù)據(jù)內(nèi)容、數(shù)據(jù)狀態(tài)等。
4 結(jié)論
基于Web的多模式流程工業(yè)仿真培訓(xùn)系統(tǒng),綜合了以下多個(gè)優(yōu)點(diǎn),可以彌補(bǔ)傳統(tǒng)仿真培訓(xùn)系統(tǒng)的不足之處,具體包括:
(1)現(xiàn)場(chǎng)仿真以三維形式表現(xiàn),兼具半實(shí)物仿真培訓(xùn)裝置直觀形象的優(yōu)點(diǎn),且成本更低;
(2)二維DCS仿真和三維現(xiàn)場(chǎng)仿真相結(jié)合并實(shí)現(xiàn)實(shí)時(shí)雙向數(shù)據(jù)傳遞,可模擬實(shí)際生產(chǎn)中中控操作和現(xiàn)場(chǎng)操作的協(xié)作配合;
(3)二維DCS仿真和三維現(xiàn)場(chǎng)仿真均發(fā)布為網(wǎng)頁形式,用戶僅需通過瀏覽器即可訪問,可隨時(shí)隨地進(jìn)行遠(yuǎn)程在線學(xué)習(xí)與培訓(xùn);
(4)仿真系統(tǒng)的主要業(yè)務(wù)邏輯都運(yùn)行在WEB服務(wù)器端,對(duì)客戶端計(jì)算機(jī)的硬件要求較低,并且升級(jí)維護(hù)過程方便高效,只需在WEB服務(wù)器端進(jìn)行;
(5)單人操作模式和多人協(xié)同操作模式相互切換,既能讓操作人員全面掌握裝置的全流程操作技能,又能提升不同崗位操作人員的分工協(xié)作能力。
作者簡(jiǎn)介:
李 鵬(1985-),男,陜西省渭南人,工程師,碩士,現(xiàn)就職于南京睿首智能技術(shù)研究院有限公司,主要研究方向?yàn)榱鞒坦I(yè)仿真模擬。
李明黨(1979-),男,山東省濟(jì)寧人,教授級(jí)高工,碩士,現(xiàn)就職于南京睿首智能技術(shù)研究院有限公司,主要研究方向?yàn)榱鞒坦I(yè)智能優(yōu)化控制和數(shù)字孿生技術(shù)。
參考文獻(xiàn):
[1] 陳曉瑋. 石化企業(yè)人員安全培訓(xùn)軟件平臺(tái)開發(fā)研究[D]. 山東: 中國石油大學(xué) (華東), 2015.
[2] 杜寧. 基于Client/Server構(gòu)架的工業(yè)鍋爐培訓(xùn)/考核仿真系統(tǒng)設(shè)計(jì)與開發(fā)[D]. 遼寧: 大連理工大學(xué), 2008.
[3] 史興盛. 煤化工冷態(tài)半實(shí)物仿真培訓(xùn)系統(tǒng)的研究與設(shè)計(jì)[D]. 浙江: 杭州電子科技大學(xué), 2013.
[4] 魏易松. 基于B/S架構(gòu)的煤化工仿真培訓(xùn)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 浙江: 杭州電子科技大學(xué), 2018.
摘自《自動(dòng)化博覽》2023年10月