陳剛 李剛 王志杰
摘? 要: 為了實(shí)現(xiàn)對分布在各地的盾構(gòu)集中監(jiān)控,采用JavaScript結(jié)合Html5方式,自主開發(fā)出盾構(gòu)遠(yuǎn)程監(jiān)控組態(tài)。該系統(tǒng)通過OPC協(xié)議循環(huán)讀取PLC地址,采集盾構(gòu)機(jī)施工參數(shù),并發(fā)送給云端;云端服務(wù)器接收各個(gè)工地端發(fā)送過來的數(shù)據(jù),插入進(jìn)RabbitMQ消息隊(duì)列,存儲到mongoDB實(shí)時(shí)數(shù)據(jù)庫內(nèi);組態(tài)通過MD5加密訪問云數(shù)據(jù)庫,將數(shù)據(jù)可視化展示在屏幕上。該組態(tài)不受制于商業(yè)組態(tài)軟件公司,降低了開發(fā)價(jià)格,避免了敏感信息泄露,支持各種操作系統(tǒng)和手機(jī)移動端使用,可定制各種功能界面。經(jīng)過百余臺盾構(gòu)的實(shí)際應(yīng)用證明,本軟件運(yùn)行穩(wěn)定,實(shí)現(xiàn)了組態(tài)軟件的功能,可遠(yuǎn)程實(shí)時(shí)監(jiān)控盾構(gòu)機(jī)各種設(shè)備狀態(tài),有效地監(jiān)控了盾構(gòu)工程施工過程的全部參數(shù)。
關(guān)鍵詞: 盾構(gòu)施工; 遠(yuǎn)程監(jiān)控; 組態(tài)軟件; 云數(shù)據(jù)庫
中圖分類號:TP399? ? ? ? ? 文獻(xiàn)標(biāo)志碼:A? ? ?文章編號:1006-8228(2018)12-32-05
Abstract: In order to achieve centralized monitoring shields all over the country, the shield remote monitoring configuration is self-developed by the combination mode of JavaScript and Html5. The system reads PLC through OPC protocol to get data of shield, and sends it to cloud database. The cloud server receives data sent by each site, inserts it into RabbitMQ, and stores it in mongoDB real-time database. Configuration access to the cloud database via MD5 encryption, and visualize data on the screen. This configuration is not restricted by commercial configuration software companies, which reduces the development price and avoids the leakage of sensitive information, supports various operating systems and mobile phone, can customize various function interfaces. After the actual application of more than one hundred shields, it is proved that the software runs stably and effectively monitors all parameters of the shield construction.
Key words: shield construction; remote monitoring; configuration software; cloud database
0 引言
隨著國內(nèi)城市地下空間開發(fā)的快速發(fā)展,盾構(gòu)得到了廣泛的應(yīng)用,和眾多大型工程機(jī)械一樣,盾構(gòu)運(yùn)行中存在大量過程控制、運(yùn)動控制等系統(tǒng),對這些系統(tǒng)集中、有效地監(jiān)測控制顯得極其必要[1]?,F(xiàn)有盾構(gòu)組態(tài)是通過計(jì)算機(jī)運(yùn)行Windows系統(tǒng),使用商業(yè)組態(tài)軟件開發(fā)監(jiān)控界面,本地儲存并以窗體形式在就地端展示數(shù)據(jù)[2],這意味著必須在計(jì)算機(jī)附近部署顯示器,操作人員只能通過該顯示器與數(shù)據(jù)采集系統(tǒng)交互。目前使用比較普遍的商業(yè)組態(tài)軟件有WinCC[3-4]、Movicon[5]、組態(tài)王[6]等,需向軟件廠商支付版權(quán)費(fèi)用,數(shù)據(jù)采集終端成本較高[7],不利于在所轄工程中大范圍推廣應(yīng)用。上述軟件為國外企業(yè)開發(fā),采集的數(shù)據(jù)包含全國各地土層地質(zhì)資料,信息較為敏感,使用閉源軟件可能造成敏感信息泄露。針對上述問題,上海隧道工程有限公司管控中心開發(fā)了盾構(gòu)施工監(jiān)控系統(tǒng)遠(yuǎn)程組態(tài),該軟件使用JavaSript和Html5來開發(fā),不受制于商業(yè)組態(tài)軟件公司,支持各種操作系統(tǒng)和手機(jī)移動端使用,可定制各種功能界面。
1 總體架構(gòu)
盾構(gòu)遠(yuǎn)程監(jiān)控組態(tài)軟件的主要功能是監(jiān)測盾構(gòu)參數(shù)變化、狀態(tài)報(bào)警、實(shí)時(shí)曲線等,采用顯示界面與云端數(shù)據(jù)庫的通訊方式,組態(tài)軟件顯示對象全面直接來自于盾構(gòu)機(jī)各個(gè)設(shè)備PLC。各個(gè)工地端采集到的數(shù)據(jù),發(fā)送到云端服務(wù)器里mongoDB數(shù)據(jù)庫,再按照工程名稱進(jìn)入到各個(gè)mySQL數(shù)據(jù)表內(nèi)。界面與數(shù)據(jù)庫之間通信使用JavaScript開發(fā)的公用接口,數(shù)據(jù)訪問采用銘文密鑰保證安全性,主程序讀取數(shù)據(jù)繪制出各種界面。盾構(gòu)遠(yuǎn)程組態(tài)軟件總體框架如圖1所示。
⑴ 現(xiàn)場數(shù)據(jù)采集:主要負(fù)責(zé)循環(huán)讀取PLC,通過OPC協(xié)議獲取盾構(gòu)機(jī)各個(gè)設(shè)備的實(shí)時(shí)信息,將現(xiàn)場設(shè)備數(shù)據(jù)采集、轉(zhuǎn)換、存儲到本地,同時(shí)發(fā)送到云服務(wù)器上。
⑵ 云端數(shù)據(jù)庫:主要負(fù)責(zé)接收各個(gè)工地端發(fā)送過來的數(shù)據(jù),并存儲到mongoDB實(shí)時(shí)數(shù)據(jù)庫內(nèi),同時(shí)數(shù)據(jù)會插入到RabbitMQ消息隊(duì)列,然后進(jìn)入到MySQL數(shù)據(jù)庫的各個(gè)對應(yīng)表中。
⑶ 組態(tài)顯示界面:主要負(fù)責(zé)將數(shù)據(jù)可視化展示在屏幕上,呈現(xiàn)盾構(gòu)的當(dāng)前信息、狀態(tài)報(bào)警、實(shí)時(shí)曲線等,實(shí)現(xiàn)刀盤、推進(jìn)、螺旋機(jī)、姿態(tài)、泥水管路等多種顯示效果,組態(tài)界面也可以在移動設(shè)備上(手機(jī)、平板等)顯示。
2 開發(fā)工具選擇
盾構(gòu)實(shí)時(shí)信息組態(tài)屬于數(shù)據(jù)采集與控制領(lǐng)域,業(yè)內(nèi)普遍采用專業(yè)組態(tài)軟件的方式開發(fā),例如組態(tài)王、movicon等,但組態(tài)軟件不利于系統(tǒng)功能擴(kuò)展和移動端開發(fā)[7-8],且開發(fā)周期長、需要購買價(jià)格不菲的加密狗授權(quán)等處處受制于人[9-10]。
上海隧道工程有限公司能自行生產(chǎn)盾構(gòu)機(jī),自主開發(fā)盾構(gòu)組態(tài)軟件十分必要。目前軟件業(yè)界存在主流開發(fā)語言為C++、java等。Java集中了所有關(guān)于軟件開發(fā)和軟件工程研究的最新成果,面向?qū)ο?、類型安全、組件技術(shù)、自動內(nèi)存管理、跨平臺異常處理、版本控制及代碼安全管理。設(shè)計(jì)html5的目的是為了在移動設(shè)備上支持多媒體。新的語法特征被引進(jìn)以支持這一點(diǎn),如video、audio和canvas 標(biāo)記。html5還引進(jìn)了新的功能,可以真正改變用戶與文檔的交互方式,且支持手機(jī)端開發(fā)。綜合以上考慮,本組態(tài)軟件使用JavaScript結(jié)合html5來開發(fā)。
3 數(shù)據(jù)采集與云數(shù)據(jù)庫
各個(gè)工地現(xiàn)場數(shù)據(jù)采集客戶端與云端數(shù)據(jù)庫構(gòu)成星型架構(gòu),本地端主要負(fù)責(zé)OPC通訊,讀取預(yù)設(shè)PLC地址并做數(shù)據(jù)處理,將結(jié)果存儲到本地,伺機(jī)將處理好的數(shù)據(jù)發(fā)送到云服務(wù)器。云端數(shù)據(jù)庫依次響應(yīng)各客戶端的離散請求,依據(jù)項(xiàng)目編號將數(shù)據(jù)存儲至相應(yīng)數(shù)據(jù)庫表中,按照設(shè)定的掃描周期,定時(shí)批量讀取PLC寄存器。數(shù)據(jù)按照數(shù)據(jù)類型依次處理后,寫入指定的本地文件夾內(nèi)。為了保證網(wǎng)絡(luò)中斷后數(shù)據(jù)可以續(xù)傳、傳送數(shù)據(jù)可穩(wěn)定追溯行,數(shù)據(jù)以CSV文件形式保存在工地端電腦,按照年(YYYY)/月(MM)/日(DD)/時(shí)(HH24)形式存放。
數(shù)據(jù)傳輸服務(wù)負(fù)責(zé)將工地端PLC數(shù)據(jù),通過調(diào)用WEB API接口形式同步到云服務(wù)器端。數(shù)據(jù)采集服務(wù)開機(jī)自動啟動,復(fù)制掃描這些文件,如果有需要上傳文件則按照文件生產(chǎn)時(shí)間先后傳送??紤]到工地端電腦文件存放硬盤空間不大,設(shè)計(jì)了自動刪除歷史數(shù)據(jù)功能,可自行配置數(shù)據(jù)保留在工地端電腦時(shí)間,超過時(shí)間的數(shù)據(jù)將會自動刪除。
工地端電腦中數(shù)據(jù)上傳服務(wù)將數(shù)據(jù)上傳后,數(shù)據(jù)上傳接口會將最新數(shù)據(jù)保存到Mongo DB數(shù)據(jù)庫和MQ消息隊(duì)列,消息隊(duì)列中排隊(duì)后才做入庫操作。云數(shù)據(jù)庫配置如圖2所示。通過Mongo DB數(shù)據(jù)庫存放最新4小時(shí)內(nèi)實(shí)時(shí)數(shù)據(jù),開發(fā)接口給相關(guān)程序,這樣做解決了用戶并發(fā)訪問以及數(shù)據(jù)實(shí)時(shí)傳送的問題。
4 監(jiān)控界面
盾構(gòu)是定制性產(chǎn)品,每臺盾構(gòu)的界面都不同,為便于管理盾構(gòu)施工遠(yuǎn)程組態(tài)軟件采用界面和數(shù)據(jù)庫分離,界面內(nèi)部由各個(gè)分系統(tǒng)模塊構(gòu)成,這樣就不使用任何開發(fā)工具自帶的控件,保證界面網(wǎng)頁發(fā)布并能夠在不用類型瀏覽器上跨平臺使用。操作人員通過組態(tài)界面,可以及時(shí)了解盾構(gòu)機(jī)上各個(gè)設(shè)備當(dāng)前工作狀態(tài)、出現(xiàn)的故障及其產(chǎn)生原因,根據(jù)需要對比當(dāng)前情況,進(jìn)行適當(dāng)?shù)恼{(diào)整, 以保證掘進(jìn)工作順利進(jìn)行。
4.1 盾構(gòu)組態(tài)界面
地鐵盾構(gòu)組態(tài)界面分為刀盤、推進(jìn)、螺旋機(jī)、加泥加水、同步注漿、鉸接、狀態(tài)報(bào)警、實(shí)時(shí)曲線、盾構(gòu)姿態(tài)等基礎(chǔ)模塊,各個(gè)模塊之間相互獨(dú)立,模塊中的具體內(nèi)容根據(jù)數(shù)據(jù)采集PLC表單決定,如圖3所示。
⑴ 刀盤和推進(jìn):刀盤區(qū)域主要是顯示刀盤扭矩?cái)?shù)值、刀盤轉(zhuǎn)動的速度、刀盤的角度等信息。推進(jìn)區(qū)域主要顯示盾構(gòu)機(jī)狀態(tài)、千斤頂狀態(tài)兩種模式顯示,在該板塊還顯示上下左右千斤頂?shù)男谐讨怠⒂蛪褐?、速度值等情況、刀盤的土壓情況以及當(dāng)前盾構(gòu)機(jī)推進(jìn)速度等信息。
⑵ 加泥加水和螺旋機(jī):螺旋機(jī)區(qū)域主要顯示螺旋機(jī)的轉(zhuǎn)速值、泄口油壓值和油壓值、前土壓值、后土壓值以及螺旋機(jī)當(dāng)前旋轉(zhuǎn)狀態(tài)等信息,加泥加水主要是#1、#2、#3、#4號口的壓力和流量。
⑶ 鉸接:鉸接主要顯示#1、#2、#3、#4號的鉸接行程,以及上下、左右的角度等信息。
⑷ 報(bào)警:報(bào)警區(qū)域主要是顯示異常數(shù)據(jù)變量等信息。
⑸ 姿態(tài):盾構(gòu)機(jī)姿態(tài)采取分級顯示,共分三級:正常范圍(-50mm~50mm之間)為藍(lán)色方框,警示范圍(-75mm~75mm之間)為黃色方框,報(bào)警范圍(-100mm~100mm之間)為紅色方框。
⑹ 下拉曲線:實(shí)時(shí)曲線主要顯示推進(jìn)和刀盤的各個(gè)量的實(shí)時(shí)變化曲線,左右兩邊參數(shù)一樣可以同顯示同一變量和不同變量的曲線圖。
大直徑泥水平衡盾構(gòu),其組態(tài)界面除了基礎(chǔ)模塊以外,還有工作人員關(guān)心的刀盤電機(jī)、盾尾油脂、泥水管路等模塊。由于頂管與盾構(gòu)在設(shè)計(jì)、制造和維護(hù)上有很大區(qū)別,針對矩形頂管開發(fā)了主控參數(shù)、管節(jié)泥漿、土體改良系統(tǒng)等模塊,如圖4所示。
4.2 報(bào)警信息
報(bào)警對于任何組態(tài)軟件都至關(guān)重要。有效的報(bào)警信息可以幫助工程施工人員及時(shí)地發(fā)現(xiàn)系統(tǒng)故障,對于預(yù)防危險(xiǎn)、安全生產(chǎn)意義重大。通過PLC采集到工地端的數(shù)據(jù)分為模擬量和開關(guān)量兩種,部分開關(guān)量本身就是報(bào)警數(shù)據(jù)。施工數(shù)據(jù)報(bào)警分為兩類:通過直接讀取PLC地址中開關(guān)量報(bào)警;對模擬量數(shù)據(jù)人工設(shè)定閾值報(bào)警。這些開關(guān)量一旦出現(xiàn)報(bào)警情況,就在組態(tài)頁面的報(bào)警欄中顯示出來。對于模擬量報(bào)警,請有經(jīng)驗(yàn)的專業(yè)人士設(shè)定這些量的閾值(最大值和最小值),超過閾值的部分實(shí)時(shí)數(shù)據(jù)頁面顯示為紅色,處于范圍內(nèi)的顯示為藍(lán)色。同時(shí)對于該變量的實(shí)時(shí)曲線,也采用類似的方法,超過范圍則顯示為紅色,范圍內(nèi)顯示為綠色,如圖5所示。
4.3 智能移動組態(tài)
智能移動組態(tài)界面是為了方便用戶使用手機(jī)、平板等,查看各個(gè)項(xiàng)目盾構(gòu)機(jī)設(shè)備情況。移動段組態(tài)界面除了顯示盾構(gòu)各種設(shè)備實(shí)時(shí)狀態(tài)以外,還能讓用戶查看該盾構(gòu)機(jī)的產(chǎn)品信息,如圖6所示。
5 結(jié)束語
盾構(gòu)施工監(jiān)控遠(yuǎn)程組態(tài)軟件實(shí)現(xiàn)了組態(tài)軟件的功能,可遠(yuǎn)程實(shí)時(shí)監(jiān)控盾構(gòu)機(jī)各種設(shè)備狀態(tài)。截至目前,該軟件應(yīng)用到47個(gè)項(xiàng)目、127臺次盾構(gòu)機(jī)上,包括上海隧道工程有限公司及申通地鐵的所有項(xiàng)目,涵蓋了各種類型盾構(gòu):能源隧道盾構(gòu)、土壓平衡盾構(gòu)、泥水平衡盾構(gòu)、異型盾構(gòu)、矩形頂管等。系統(tǒng)運(yùn)行正常、有效地監(jiān)控了盾構(gòu)工程施工建設(shè)的全部參數(shù)。本系統(tǒng)使用JavaScript和Html5開發(fā),降低了開發(fā)價(jià)格、避免了敏感信息泄露,可在各種操作系統(tǒng)上運(yùn)行。軟件設(shè)計(jì)注重實(shí)用性,界面美觀稍顯不足,需要進(jìn)一步美化。
參考文獻(xiàn)(References):
[1] 譚順輝,孟祥波,徐受天,蒲曉波.盾構(gòu)監(jiān)控系統(tǒng)人機(jī)界 面組態(tài)開發(fā)[J].隧道建設(shè),2014.34(4):380-386
[2] 沈立新.盾構(gòu)實(shí)時(shí)遠(yuǎn)程監(jiān)控系統(tǒng)技術(shù)[J].鐵道建筑技術(shù),2010.8:34-38
[3] 高勇.基于WinCC盾構(gòu)刀盤遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)工程應(yīng)用技術(shù),2011.18:4462-4464
[4] 戰(zhàn)桂禮,王慧鋒,羅曉明.Movicon X組態(tài)在氣瓶閥型式試驗(yàn)測試系統(tǒng)的應(yīng)用[J].自動化技術(shù)與應(yīng)用,2010.8:3-5
[5] 李瑞先.組態(tài)王軟件在監(jiān)控系統(tǒng)中的應(yīng)用[J].電氣傳動自動化,2006.28(5):49-51.
[6] 胡國良.組態(tài)技術(shù)及其在模擬盾構(gòu)監(jiān)控系統(tǒng)中的應(yīng)用[J].機(jī)床與液壓,2008.1:140-142
[7] 張東星.盾構(gòu)設(shè)備信息化管理系統(tǒng)的研制[J].測控技術(shù),2007.26(2):84-86
[8] 徐受天,蒲曉波.基于OPC的盾構(gòu)地面數(shù)據(jù)采集和監(jiān)視系統(tǒng)設(shè)計(jì)[J].隧道建設(shè),2009.29(6):674-677
[9] 楊揚(yáng),龔國芳,胡國良,楊華勇.基于組態(tài)軟件的盾構(gòu)推進(jìn)液壓控制系統(tǒng)[J].機(jī)床與液壓,2006.7:126-128
[10] 龍偉,祝琴,鐘祥微.淺談組態(tài)軟件在過程控制中的應(yīng)用[J].中國儀器儀表,2004.8:1-3