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