施江濤,韓小濤,謝劍峰
(華中科技大學(xué)國家脈沖強磁場科學(xué)中心(籌),武漢 430074)
脈沖強磁場裝置監(jiān)控軟件系統(tǒng)的研制
施江濤,韓小濤,謝劍峰
(華中科技大學(xué)國家脈沖強磁場科學(xué)中心(籌),武漢 430074)
針對現(xiàn)有脈沖強磁場實驗裝置的監(jiān)控系統(tǒng)操作繁瑣、交互性差等問題,研制了脈沖強磁場裝置監(jiān)控軟件系統(tǒng),從監(jiān)控軟件系統(tǒng)采用C/S結(jié)構(gòu)、監(jiān)控內(nèi)部通信采用TCP和UDP混合協(xié)議,控制軟件與裝置的通信采用TCP、OPC技術(shù),界面設(shè)計采用Flash開發(fā)程序等方面分析關(guān)鍵技術(shù),實現(xiàn)了遠(yuǎn)程監(jiān)視和控制功能,應(yīng)用效果良好,為強磁場下的科學(xué)研究提供了良好的操作平臺。
監(jiān)控軟件;TCP;UDP;Flash;脈沖強磁場
脈沖強磁場裝置為物理、材料、化學(xué)及生物醫(yī)學(xué)等領(lǐng)域提供了重要研究平臺。武漢強磁場中心目前已建成大型脈沖強磁場實驗裝置,該裝置將提供50~80T的長脈沖、短脈沖、長短脈沖等各類磁場,成為世界上四大脈沖強磁場中心之一[1-2]。已有強磁場實驗裝置的控制系統(tǒng)主要采用現(xiàn)場硬件操作,不同的科學(xué)實驗系統(tǒng)配置不同的控制子系統(tǒng),操作繁瑣,交互性差。隨著計算機技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,開發(fā)統(tǒng)一的遠(yuǎn)程監(jiān)控系統(tǒng)既可以保障人員和設(shè)備安全,也可簡化實驗操作,減少人為操作失誤。該文設(shè)計和研發(fā)了脈沖強磁場裝置的監(jiān)控軟件系統(tǒng),實現(xiàn)了電源模塊和所有實驗系統(tǒng)的統(tǒng)一遠(yuǎn)程控制,軟件系統(tǒng)采用基于以太網(wǎng)通信的分布式架構(gòu),實現(xiàn)強磁場裝置的實時監(jiān)視和安全可靠控制。
脈沖強磁場監(jiān)控系統(tǒng)主要包括本地控制子系統(tǒng)、遠(yuǎn)程監(jiān)控軟件系統(tǒng)、觸發(fā)裝置等。每個電源模塊/實驗站均根據(jù)功能需求配置一套本地控制子系統(tǒng)。本地控制子系統(tǒng)由現(xiàn)場采集控制設(shè)備組成,負(fù)責(zé)采集現(xiàn)場的開關(guān)/模擬量信號、實驗波形
數(shù)據(jù)等,接收和執(zhí)行監(jiān)控軟件的控制命令,完成控制操作。為了提高系統(tǒng)可靠性,本地控制子系統(tǒng)還需完成一定的控制邏輯,檢測本單元的故障,以便迅速切除故障,并將信息反饋給監(jiān)控軟件,通過監(jiān)控軟件實現(xiàn)各模塊之間的連鎖保護(hù)。
監(jiān)控軟件系統(tǒng)布置在中央控制室的計算機上,包括服務(wù)器、客戶端、工程師站,是脈沖強磁場裝置的唯一操作平臺,起著至關(guān)重要的作用,它需要給用戶提供一個友好的操作界面,協(xié)調(diào)好各個模塊的工作,控制整個裝置的實驗流程。觸發(fā)裝置接收監(jiān)控軟件的命令產(chǎn)生脈沖時序,以毫秒級時序觸發(fā)各現(xiàn)場設(shè)備按設(shè)定的時序進(jìn)行工作。
脈沖強磁場監(jiān)控軟件系統(tǒng)通信網(wǎng)絡(luò)選擇以太網(wǎng)。在硬件上,中央控制室與各電源/實驗站之間采用光纖連接,通過光信號隔離強電以保障安全。同時以太網(wǎng)通信技術(shù)為軟件系統(tǒng)的靈活性奠定了堅實的基礎(chǔ),使得軟件系統(tǒng)開發(fā)可以采用更靈活的架構(gòu)、開放式的通信方式。
2.1 監(jiān)控軟件系統(tǒng)的結(jié)構(gòu)設(shè)計
脈沖強磁場監(jiān)控軟件系統(tǒng)采用C/S結(jié)構(gòu)開發(fā),分成三個部分:配置端、服務(wù)器、客戶端,其系統(tǒng)結(jié)構(gòu)如圖1??蛻舳撕头?wù)器既可以運行在不同的計算機上,也可以運行在同一臺計算機上。這種架構(gòu)下,可以配置多個客戶端,實現(xiàn)多用戶的操作。
圖1 監(jiān)控軟件系統(tǒng)結(jié)構(gòu)
配置端程序配置系統(tǒng)的各個硬件設(shè)備信息,設(shè)定各種硬件參數(shù)以及用戶權(quán)限的管理,為整個系統(tǒng)運行提供基礎(chǔ)數(shù)據(jù)支持。配置信息包括。
a.完成各類信息的配置,如電源參數(shù)、磁體信息、用戶信息、用戶權(quán)限、監(jiān)控設(shè)備地址等。
b.配置磁體連接關(guān)系,使得磁體可以關(guān)聯(lián)任意磁體間,并接入需要的分接器,完成系統(tǒng)放電電流結(jié)構(gòu)的配置。
服務(wù)器是整個監(jiān)控軟件系統(tǒng)的核心,與現(xiàn)場監(jiān)控設(shè)備實時通信,獲取設(shè)備的實時狀態(tài);接收客戶端的控制命令,對命令進(jìn)行校驗并下發(fā)到監(jiān)控設(shè)備,從而完成實驗流程控制;協(xié)調(diào)不同客戶端實驗時的資源互鎖。監(jiān)控服務(wù)器通過數(shù)據(jù)庫獲取系統(tǒng)配置信息,并將系統(tǒng)運行記錄保存到數(shù)據(jù)庫。
(4) 為保障施工質(zhì)量和優(yōu)化支護(hù)設(shè)計,確保鋼拱架受壓變形可控,還需進(jìn)行圍巖變形監(jiān)測,施工監(jiān)測每天不得少于1次,在拱架變形嚴(yán)重、圍巖過渡段、注漿前后等特殊時期每日檢測不得少于2次。
客戶端程序是功能實現(xiàn)的主要載體,為客戶提供友好的用戶接口和操作平臺,完成實驗計劃的管理、根據(jù)用戶的需求完成實驗方案的制定、設(shè)備調(diào)試、以及實驗數(shù)據(jù)查詢顯示。用戶的操作請求被客戶端發(fā)送到服務(wù)器,服務(wù)器經(jīng)過處理后將處理結(jié)果送回客戶端。為了簡化服務(wù)器的處理,客戶端直接從數(shù)據(jù)庫服務(wù)器獲取系統(tǒng)配置信息和統(tǒng)計查詢數(shù)據(jù)。
2.2 基于TCP和UDP混合協(xié)議的監(jiān)控內(nèi)部通信
脈沖強磁場監(jiān)控軟件系統(tǒng)的客戶端和服務(wù)器之間的通信數(shù)據(jù)可以大致分為廣播數(shù)據(jù)和點對點數(shù)據(jù),根據(jù)不同數(shù)據(jù)對可靠性的要求,文中所設(shè)計的監(jiān)控軟件系統(tǒng)采用TCP和UDP結(jié)合的混合通信協(xié)議,既可減少系統(tǒng)資源消耗,又可保障數(shù)據(jù)的可靠傳輸。
a.廣播數(shù)據(jù)。這類數(shù)據(jù)主要是實時狀態(tài)數(shù)據(jù),比如現(xiàn)場開關(guān)/繼電器的位置、電容器當(dāng)前電壓值、控制設(shè)備的故障狀態(tài)等,此類信息需要發(fā)送給所有客戶端,用于刷新用戶界面,進(jìn)行實時顯示,一般由服務(wù)器以0.5s為周期循環(huán)向所有客戶端發(fā)送,客戶端不需要應(yīng)答,只需單向通信。對于廣播數(shù)據(jù),采用UDP協(xié)議,只使用一個端口進(jìn)行廣播或者組播發(fā)送,不用針對每個客戶端建立獨立的連接,可以減少系統(tǒng)資源消耗。盡管UDP不是可靠連接,有丟包的可能性,但目前以太網(wǎng)設(shè)備處理能力越來越強,丟包的概率很小。即使丟包,也只是客戶端延遲一個周期接收到數(shù)據(jù)。
b.點對點數(shù)據(jù)。主要是操作命令及響應(yīng)數(shù)據(jù),比如客戶端發(fā)出調(diào)試命令、實驗操作命令以及服務(wù)器處理客戶端命令后的響應(yīng)報文,以及當(dāng)前實驗操作過程中產(chǎn)生的各類實驗消息記錄、實驗波形。這些數(shù)據(jù)在當(dāng)前操作客戶端和服務(wù)器之間進(jìn)行傳輸,而與其他客戶端無關(guān)。對于點對點的數(shù)據(jù),必須可靠傳輸并且響應(yīng)速度快,如果數(shù)據(jù)丟
失,客戶端的操作應(yīng)答沒有響應(yīng),可能導(dǎo)致客戶端無法進(jìn)行后續(xù)操作。所以采用TCP協(xié)議進(jìn)行通信,服務(wù)器程序作為TCP的服務(wù)端,開啟TCP連接偵聽,客戶端程序啟動后進(jìn)行TCP連接,在客戶端運行過程中一直保持連接狀態(tài)。
2.3 控制軟件與裝置的通信設(shè)計
該系統(tǒng)中現(xiàn)場檢測控制設(shè)備均用以太網(wǎng)方式接入監(jiān)控軟件系統(tǒng),但系統(tǒng)中存在3類不同的設(shè)備,不同的設(shè)備采用不同的方式接入監(jiān)控軟件系統(tǒng):
b.只有串口的自制設(shè)備,采用串口轉(zhuǎn)以太網(wǎng)的模塊進(jìn)行轉(zhuǎn)換后再接入以太網(wǎng);
c.自帶網(wǎng)口的西門子S7-300系列PLC設(shè)備。
針對前2種設(shè)備,制定了“一問一答”的應(yīng)用層通信協(xié)議,然后經(jīng)TCP協(xié)議封裝后進(jìn)行通信。監(jiān)控程序只需利用Socket編程即可實現(xiàn)與這些設(shè)備的通信,這樣既利用了網(wǎng)絡(luò)通信的開放性,又可保證采用串口通信的設(shè)備通信可靠性[3]。
西門子S7-300系列PLC設(shè)備被用于電源模塊的本地監(jiān)控單元。采用PLC的好處是可靠性高、擴展性強、實時性高、功能強,而且編程方便靈活,可以大大提高開發(fā)速度。監(jiān)控軟件并不直接和PLC通信,而是通過OPC接口訪問PLC的數(shù)據(jù)[4]。監(jiān)控程序通過OPC接口函數(shù)Read讀取OPC服務(wù)器上的數(shù)據(jù)實現(xiàn)數(shù)據(jù)刷新;通過Write函數(shù)寫OPC服務(wù)器上的數(shù)據(jù)向PLC發(fā)送控制指令,PLC接收到指令后則通過邏輯處理實現(xiàn)開關(guān)分合控制、實驗流程控制等功能。
2.4 控制軟件的界面設(shè)計
在監(jiān)控軟件系統(tǒng)中,系統(tǒng)狀態(tài)圖、電源模塊狀態(tài)圖、實驗步驟狀態(tài)圖、實驗室布局圖等均采用Flash動畫進(jìn)行顯示。每個Flash動畫中包含一些基本的元件,用來表示一種現(xiàn)場設(shè)備。每個元件通常包含多個幀,每幀顯示設(shè)備的一種狀態(tài)。如開關(guān)元件用于顯示開關(guān)的狀態(tài),該元件內(nèi)包含3個幀,分別對應(yīng)開關(guān)的斷開、閉合和異常狀態(tài),在Flash中只需切換幀的顯示即可顯示開關(guān)的不同狀態(tài)。Flash主畫面通常只有一幀,用ActionS-cript3.0語言編寫對外訪問接口。如:提供接口SwitchSts實現(xiàn)開關(guān)狀態(tài)顯示。若被外部程序調(diào)用,接口函數(shù)首先須在初始化腳本中調(diào)用ExternalInterface.addCallback進(jìn)行注冊。
監(jiān)控軟件系統(tǒng)采用VC#開發(fā),可以和Flash實現(xiàn)雙向交互,其交互原理如圖2所示:
圖2 VC#和Flash交互原理
通過VC#控制Flash,首先需在VC#工程中添加動態(tài)庫的引用,將AxShockwaveFlash控件添加到界面上,該控件作為容器顯示Flash動畫,然后通過調(diào)用控件的LoadMovie和Play函數(shù)加載Flash文件并播放動畫。對于Flash中的接口函數(shù),VC#通過Flash.External.ExternalInterfaceProxy類作為代理并通過call函數(shù)進(jìn)行訪問,以達(dá)到動態(tài)顯示的效果。
在Flash動畫中也可以觸發(fā)VC#的事件實現(xiàn)雙向交互。當(dāng)Flash中調(diào)用ExternalInterface. call時,可以觸發(fā)VC#中Flash控件產(chǎn)生事件; VC#中則通過為AxShockwaveFlash控件添加ExternalInterfaceCall事件處理函數(shù)響應(yīng)Flash中用戶的指令。利用Flash技術(shù)設(shè)計的客戶端主界面如圖3所示,圖中電源結(jié)構(gòu)圖①、系統(tǒng)結(jié)構(gòu)圖②和實驗流程狀態(tài)指示圖③均用Flash開發(fā),在實驗過程中能顯示開關(guān)狀態(tài)、電壓值的變化,以信號燈的形式顯示實驗的當(dāng)前狀態(tài)。
圖3 監(jiān)控軟件客戶端主界面
以上所研制的監(jiān)控軟件系統(tǒng)已經(jīng)于2014年正式投入使用,在中央控制室部署了1臺服務(wù)器,4臺客戶端,1個工程師站。該系統(tǒng)實現(xiàn)了對13套電容器電源模塊、8個實驗站子系統(tǒng)的遠(yuǎn)程監(jiān)視和控制,主要包括以下功能:
a.狀態(tài)監(jiān)視:實時監(jiān)視開關(guān)的狀態(tài)、測量值、現(xiàn)場控制設(shè)備的運行狀態(tài),實時刷新頻率為1s;
b.實驗方案管理:操作人員可以根據(jù)實驗需要預(yù)先配置使用的實驗站、電源模塊以及實驗參數(shù)等,形成實驗方案,方便多次實驗時使用;
c.實驗流程控制:實現(xiàn)充電、放電、泄能、急停等實驗操作功能,系統(tǒng)自動順序完成各操作功能的內(nèi)部流程;
d.調(diào)試功能:提供對各類開關(guān)、觸發(fā)信號、警示信號等等的調(diào)試手段;
e.安全閉鎖功能:實現(xiàn)多種安全手段和閉鎖功能,保障設(shè)備和人員安全,例如設(shè)備不正常閉鎖實驗、前置操作不完成不允許后續(xù)操作、多用戶實驗互鎖等。
該系統(tǒng)還記錄了詳細(xì)的歷史數(shù)據(jù),具有完善的統(tǒng)計查詢功能,可以按時間、操作人、狀態(tài)、電壓等級等條件查詢實驗信息、電源和磁體的使用情況,同時可以按不同的條件進(jìn)行分類統(tǒng)計。截止2015年12月,利用該監(jiān)控軟件系統(tǒng),進(jìn)行各類科學(xué)實驗18 950次,系統(tǒng)運行穩(wěn)定。
脈沖強磁場監(jiān)控軟件系統(tǒng)采用了C/S系統(tǒng)結(jié)構(gòu),實現(xiàn)分布式處理和多用戶操作,使用靈活。在通信方式的選擇上,采用TCP和UDP結(jié)合的混合通信協(xié)議,該方式保證了數(shù)據(jù)傳輸?shù)目煽啃?同時降低了系統(tǒng)資源的消耗。系統(tǒng)界面采用Flash技術(shù),實現(xiàn)了操作界面的矢量化顯示,有效提高了人機交互性。通過脈沖強磁場監(jiān)控軟件的應(yīng)用,實現(xiàn)了脈沖強磁場裝置的實時監(jiān)視和安全可靠控制,為強磁場下的科學(xué)研究提供了良好的操作平臺。
[1] Li Liang,Peng Tao,Han Xiaotao,et al.Magnet development program at the WHMFC[J].IEEE Trans.Appl.Supercond.,2012,22(3):4300304
[2] Li Liang,Lv Yiliang,Ding Hongfa,et al.Short and long pulse high magnetic field facility at the Wuhan National High Magnetic Field Center[J].IEEE Trans.Appl.Supercond.,2014,24(3):9500404
[3] 施江濤,黃瀾濤,謝劍鋒,等.脈沖強磁場測量數(shù)據(jù)實時遠(yuǎn)程傳輸?shù)脑O(shè)計與實現(xiàn)[J].儀表技術(shù)與傳感器,2013(7):49 51,61.
[4] 韓小濤,孫文文,謝劍鋒,等.基于OPC技術(shù)的脈沖強磁場裝置實時控制系統(tǒng)的研究[J].儀表技術(shù)與傳感器,2010 (6):97-100.
本文責(zé)任編輯:谷麗娜
Design and Realization of Control and Monitoring Software of Pulsed High Magnetic Field Facility
Shi Jiangtao,Han Xiaotao,Xie Jianfeng
(Wuhan National High Magnetic Field Center,Huazhong University of Science and Technology,Wuhan 430074,China)
In the traditional control systems for the pulsed high magnetic field facility,the operation is complicated and the user needs to operate in field.To approve the convenience of the operation,a control and monitoring software system was designed and developed for the pulsed high magnetic field facility.The system is based on Client/Server architecture.The combination of TCP and UDP is applied in the communication between the different parts of the system,and such open communication technologies as TCP and OPC are used in the communications between the system and the field devices.The user interface is developed base on Flash.The control and monitoring software system implements remote monitoring and control to pulsed high magnetic field facility and has been put into use.It works well and provides a good operation platform for the scientific research under the pulsed magnetic field.
control and monitoring software;TCP;UDP;Flash;pulsed high magnetic field
TM83
B
1001-9898(2016)04-0018-03
2016-03-01
施江濤(1975-),男,工程師,主要從事電磁測量及檢測技術(shù)、電力系統(tǒng)信息及其自動化技術(shù)的研究。