劉 歡,畢道偉,劉嘉熙,張東生
(1.上海交通大學 機械與動力工程學院,上海 200240;2.上海核工程研究設計院,上海 200233;3.四川大學電氣工程學院,成都 610065)
設備作為核電站重要的生產要素,如果發生故障,輕則降低生產效率,重則導致機組停機,有時甚至造成災難性的后果。2018年發改委等四部委聯合發布《關于進一步加強核電運行安全管理的指導意見》,要求加強關鍵設備運行狀態監測,改進監控技術手段,提高設備的可靠性,加強對核電機組運行風險的實時跟蹤,精準提高核電運行安全水平。可見對核電廠關鍵設備進行狀態監測與故障診斷研究顯得尤為重要。
在傳統的核電廠內,對各類復雜設備的監控與優化需求非常迫切,這些設備的數據采集具有高頻率、大批量、高并發、長周期的特征,每天產生的運行數據達數百G,如何遠程監測、儲存并利用這些數據,讓其產生價值,成為了一個急需解決的問題。傳統的核電監測與診斷系統多為單機式、集中式、離線式[1],難以實現設備的異地監測。而且其多通過設定閾值,觸發多級報警來實現異常檢測,診斷更是多通過人為經驗來判斷推理。近年來,國家推出了兩化融合、“互聯網+”行動,積極推進了物聯網、云計算等新興技術在設備遠程監測領域的應用,而機器學習等基于數據驅動的智能算法在工業設備故障診斷中的研究也愈來愈廣泛。
楊文廣等[2]利用Bosh Lite搭建了私有的Cloud Foundry PaaS平臺,并在云平臺上進行動力設備的診斷案例開發;宋亞奇[3]等對輸變電設備監測大數據在Hadoop框架下的存儲與處理優化進行了研究;葛二靈[4]等基于hadoop生態開發了設備遠程故障診斷中心的原型系統;王有元[5]等基于云平臺實現了對變電站變壓器的智能診斷,診斷時間縮短了40.11%,提高了故障診斷的可靠性;Zhiqiang Huo[6]等為了解決石化廠大量無線和有線傳感融合產生的高密度異構數據的儲存問題,提出了基于云計算的診斷架構并進行了應用驗證。但是在核電領域基于云平臺的設備監測和診斷研究非常稀少。
本文提出了基于云平臺的核電設備遠程監測及智能診斷的架構,其可以實現數據在云端的高效、可靠地存儲,并快速訪問和分析,用戶不僅可以直接在云平臺上獲得監測設備的歷史與當前狀態,此外,還可以基于機器學習和大數據的方法進行設備狀態異常檢測、故障診斷及預測的研究,從而保障核電機組安全、可靠、高效運行。
云平臺的核心是虛擬化技術,它將計算機集群的硬件資源、軟件平臺、基礎應用抽象成服務的形式提供給用戶使用,根據所提供服務的內容不同分為三層,IaaS(Infrastructure as a Service,基礎設施即服務)、PaaS(Platform as a Service,平臺即服務)、SaaS(Software as a Service,軟件即服務)。而基于云平臺實現大數據處理的核心軟件框架是Hadoop,它的功能是實現大量數據的分布式儲存和計算。
為了解決核電設備遠程監測和智能診斷面臨的問題,本架構采用邊緣-云端的方式,使生產環境與開發環境分隔。采集的設備數據首先通過OPC UA協議與邊緣網關通訊,再通過MQTT協議上傳至云端物聯網(IOT)平臺,其將數據轉發至數據庫儲存以便回溯分析,同時通過RESTful API調用IOT數據實現實時監測;其次數據庫中的設備運維數據可以導出,用于診斷模型訓練,將訓練好的模型在線部署生成API;通過建立API網關被云端或邊緣端調用實現實時診斷,最后將診斷結果返回到監測畫面進行顯示。詳細的設備遠程監測及智能診斷的架構示意圖如圖1所示。
以上架構可以基于阿里云實現,各個功能模塊可依托其PaaS層的產品進行開發。為了保證電廠數據的實時性、安全性,選用了云生態中支持多種協議的物聯網平臺作為數據的中轉;針對設備數據多是時間序列的特點,采用了時序時空數據庫對數據進行高速讀寫;為了高效的搭建診斷模型和快速的開發監測畫面,采用了數據可視化工具(DATAV)和機器學習平臺(PAI)。
1.1.1 數據采集平臺
數據采集平臺采用美國國家儀器(NI)的卡件搭建,利用LabVIEW編程實現對設備運行過程中振動和工藝信號的自適應采集及數據預處理。正常工況,低采樣率采集數據,降低存儲成本;一旦發生異常工況,提高采樣率,以便診斷分析。同時在采集服務器上可以基于LabVIEW開發OPC UA SERVER,與邊緣網關的OPC UA CLIENT實現通訊。
1.1.2 邊緣網關
物聯網邊緣網關,以虛擬鏡像的方式可部署在本地不同量級的智能設備和計算節點中,支持連接不同協議(如OPC UA、MODBUS)接收本地數據,并通過協議轉換將數據傳送至IOT平臺。
1.2.1 物聯網平臺
物聯網平臺作為數據的中轉平臺,支持多種協議實現邊緣端和云端進行雙向通信;對多類設備進行配置管理;同時承擔著數據轉發功能;而且其具有多重防護可有效保障設備云端安全。以上功能可通過如下方式實現:
1)設備通信
提供MQTT協議與邊緣網關通訊,實現設備-OPC UA-邊緣網關-MQTT-物聯網平臺長連接的實時性需求;
提供2G/3G/4G、NB-IoT、LoRa、WiFi等不同網絡設備接入[7];
通過開發設備端SDK讓設備直接接入。
2)設備管理
通過配置邊緣網關信息,可定義不同協議(如OPC UA、MODBUS),關聯相應設備通過定義設備傳感的點名、數據類型等信息生成后臺物模型代碼,可實現多個設備生命周期管理、設備上下線變更通知等功能。
3)規則引擎解析轉發數據
可以配置規則引擎將物聯網平臺中的設備數據轉發至其他模塊中,進而獲得存儲、計算等其他服務。例如,基于規則引擎可以將數據轉發到時序時空數據庫。

圖1 架構示意圖

圖2 PAI內置算法
1.2.2 數據庫
由于電廠采集的設備狀態數據基本都是與時間相關的量,而且工業上的數據采集呈現出采樣率高、采集時間長、測點傳感密集、設備種類多樣等特點,使用傳統的關系型、非關系型數據庫會造成數據的存儲成本高和查詢效率低等問題。本架構采用了時序時空數據庫(Time Series & Spatial Temporal Database,簡稱 TSDB),它是專門針對工業物聯網帶時間標簽數據優化的一種高性能、高實時的數據庫,能達到秒級寫入百萬級數據的能力,可實現數據的高壓縮比以低成本存儲,高效的進行多維聚合計算和預降采樣[8],對于缺失數據可以便捷的實現插值補全,快速的查詢數據并實現可視化和歷史回溯。而且TSDB需安裝在VPC(私有網絡)云服務器上,保證了數據的安全性。
1.2.3 診斷模型訓練及部署
對于設備診斷段模型的開發和部署可以使用機器學習平臺PAI,它封裝了常見的機器學習算法,可通過圖形化的方式建立診斷模型,降低了開發人員的門檻,同時具有命令行工具,可將自己開發的算法嵌入到工程中,PAI內置的算法如圖2所示。
PAI除了內置機器學習算法外,還具有主流深度學習框架Tensorflow、Caffe、MXNet,底層提供GPU可進行模型訓練加速。訓練完的模型可在線部署生成API,通過建立API網關,被云端或邊緣端調用實現實時診斷。
1.2.4 監測畫面
對于監測畫面的開發可以采用DATAV軟件,它是基于BS方式的網頁可視化工具,具有豐富的模板。DATAV數據接入方式有多種,如關系型數據庫和非關系型數據庫、本地CSV上傳、在線RESTful API及動態請求[9]。基于網頁形式開發的畫面,可在任意顯示端通過輸入網址來查看設備監測狀態。
宋振華[10]提到了OPC UA和TSN結合作為下一代的工業通信已成為了業界的共識,能夠解決工業互聯網IT和OT融合面對的三個主要問題:OT端的總線復雜且多樣,周期和非周期性數據的傳輸,實性要求高。TSN是為了解決數據傳輸與實時性問題而開發的數據鏈路標準,它能實現周期和非周期數據在同一網絡中傳輸,并采用搶占式MAC的方式來保證數據傳輸的實時性。OPC UA作為工控領域使用最廣范的協議,能有效解決總線復雜、多樣的問題,統一了標準和規范。
本文中考慮到未來架構應用的代表性,所以設備端與邊緣網關的信息交換采用了OPC UA協議。20世紀90年代發布的OPC規范是基于微軟COM/DCOM的技術,導致OPC的安全性、跨平臺性、連通性方面存在短板。鑒于此,OPC基金會推出了全新一代的數據通信統一規范OPC UA,它集成了現有的OPC規范,并進行了擴展,支持多平臺開發、復雜數據內置、完整的地址空間、安全機制等功能。

圖3 OPC UA通訊架構
OPC UA通訊架構如圖3所示。OPC UA Server把數據、歷史、事件管理和安全配置等模塊抽象成服務的集合,通過通信棧編碼、加密后被OPC UA Client調用。數據管理模塊提供了客戶端對數據的讀寫和訂閱服務;歷史管理模塊提供了歷史數據、事件的保存和瀏覽接口[11];事件管理提供了觸發報警的機制;安全配置通過創建安全證書和認證,保證服務端和客戶端間的安全通信;設備采集驅動提供了讀寫接口給OPC UA Server調用。地址空間為Server中對Client可見的信息集合,以上所有的服務都是基于地址空間實現的。
OPC UA Server提供了一致、完整的地址空間,節點是構成地址空間最基本的元素,節點由屬性和引用組成。引用是節點與節點間的關聯關系,由于節點間的引用形成了地址空間的層次結構。對象是地址空間中的節點類集合的實例,它通過引用將屬性、方法、事件集合在一起。當在地址空間里定義對象時,如創建一個離心泵的對象,屬性對應為泵上各個傳感器,體現了對象的數據特征,方法定義了可以被客戶端調用的操作,如CLIENT可以通過讀、寫、詢問和訂閱等方法訪問屬性值,從而獲取設備數據狀態。事件對應為當某個傳感器數據超過限值而觸發的報警,它體現的對象的狀態更改。
IOT平臺與DATAV信息交換首先通過配置HTTP/2服務端訂閱功能,然后在云上虛擬服務器上創建SDK配置客戶端接收訂閱數據,最后通過基于BS架構的restful api實時調用服務器上數據更新至監視畫面,以上協議可在虛擬服務器上通過JAVA編程實現。
RESTful API由后臺提供被前端調用。前端調用API時向后臺發起HTTP請求,后臺響應請求將處理結果反饋給前端,是一種典型的基于HTTP的協議。但是其相比傳統的HTTP具有復雜度低、安全性高、操作規范等優點,因為其接口設計原則和規范遵循REST(Representational State Transfer,表現狀態轉移化)風格。REST API設計原則規范要素如下:
1)統一的資源操作接口原則。RESTful風格的數據操作采用標準的HTTP方法,GET用來獲取資源,POST用來新建資源,PUT用來更新資源,DELETE用來刪除資源[12]。
2)URI(Uniform Resource Identifier,統一資源標識符)。資源是互聯網上一切實體,例如文本、圖片、數據等。對于設備狀態監測領域,資源多以數據的形式體現并統一采用JSON格式進行傳輸和通信;每個特定的資源都有一個URI與之對應,要獲取這個資源就需要訪問其URI,最常用的URI就是URL(Uniform Resource Locator,統一資源定位符),比如云上服務器的IP地址加信號點名。
3)無狀態原則。所謂無狀態即客戶端與服務器之間交互是無狀態的,所有的資源都可以URI定位,而且這個定位與其他資源無關,也不會因為其他資源的變化而變化,而且API的每次調用都是獨立的,不同請求間互不影響。
在本文架構上以轉子實驗臺架為基礎,開發應用實例驗證了架構的優越性。下面簡要介紹架構應用的流程并展示部分典型界面。
邊緣端的搭建包括轉子試驗臺、傳感器、數據采集硬件(前置放大器、信號調制器、NI PXI采集卡)、工程師監測站、邊緣網關鏡像。轉子試驗臺可以模擬不同工況下的正常數據和不平衡、不對中兩類故障數據,通過硬件現場采集9個通道的信號如圖4所示,可利用LabVIEW進行轉速測量、信號濾波、傅里葉變換、小波變換、軸心軌跡分析等預處理。實驗室布置如圖5所示,邊緣網關鏡像啟動如圖6所示。軸心軌跡分析如圖7所示,轉速測量程序如圖8所示。

圖4 傳感器采集信號示意圖

圖5 實驗室布置

圖6 邊緣網關鏡

圖7 軸心軌跡分析

圖8 轉速測量程序
預處理后的數據傳輸至邊緣網關通過OPC UA協議實現,在云端配置邊緣網關協議驅動可生成OPC UA CLIENT。而OPC UA SERVER通過LabVIEW實現,其程序設計流程圖如圖9所示。

圖9 OPC UA Server程序設計流程
首先建立SERVER,定義SERVER的名稱如TEST SERVER、地址URL如本機IP及端口如49588,然后在SERVER下創建一個交節點對象代表一個設備如命名為DEVICE。接下來根據OPC UA協議規范可以在對象下建立與傳感對應的9個屬性,定義屬性名稱如C2pixAI0、讀/寫方法及數據類型如雙精度浮點數組Array Of Double,建立OPC UA啟動節點,循環將9個采集通道的數據寫入到9個屬性中,退出循環后停止SERVER并釋放空間,以節約計算資源。整體OPC SERVER程序如圖10所示。

圖10 OPC UA Serve程序
3.2.1 設備數據上傳IOT平臺
通過物聯網平臺定義設備傳感信息,生成物模型,配置邊緣網關信息及驅動,并將其配置部署至邊緣節點中,實現邊緣網關通過MQTT協議將數據上報云端IOT平臺,圖11為IOT平臺上的設備狀態數據。

圖11 IOT平臺設備狀態數據
3.2.2 歷史數據儲存與回溯
在云端VPC(私有網絡)的服務器上設置TSDB數據庫實例,保證數據的安全性。上傳到IOT平臺的數據,通過規則引擎解析轉發到TSDB數據庫中,實現時序數據存儲和歷史回溯。歷史數據回溯如圖12所示。
3.2.3 診斷模型訓練

圖12 TSDB中歷史數據回溯
由于PAI構建在數據中臺MaxCompute之上,所以先從云端TSDB數據庫將歷史數據導出,然后在云端虛擬服務器上安裝并配置好MaxCompute客戶端,通過tunnel upload命令上傳數據至MaxCompute被PAI平臺讀取;從而實現數據由數據庫到PAI平臺的流轉。根據上傳的3類數據(正常數據、不平衡故障、不對中故障),采用邏輯回歸二分類實現異常檢測,隨機森林算法多分類實現故障診斷識別,詳細程序如圖13所示。

圖13 診斷算法程序
3.2.4 實時監測畫面開發
使用DATAV可視化工具中豐富的模塊進行監測畫面的開發,界面效果如圖14所示。

圖14 設備數據實時監測畫面
設備連接物聯網平臺后,DATAV通過調用基于JAVA開發的RESTFUL API將數據實時更新到監測畫面;而PAI通過在線部署,生成模型API網關被IOT或邊緣端直接調用,將診斷結果返回至監測畫面。
本文提出采用邊緣-云的架構,以實現核電設備的遠程監測及智能診斷,具有以下優越性:
1)通過OPC UA協議,實現數據高速、可靠的傳輸,特別對于高頻振動數據采集。
2)采用云架構的方式可以解決多個機組多類設備大量數據的儲存和利用問題。
3)對于機組采集的數據大部分是時間相關的變量,采用高速時序數據庫,實現更高效的存儲,便于歷史回溯分析。
4)通過圖形化建模的機器學習平臺PAI,降低了工程師對數據驅動診斷算法的使用門檻,不需要大量的代碼編程,操作簡單,容易上手,縮短了開發時間,同時也支持自主算法代碼上傳。
5)通過將訓練好的模型在線部署,生成API被云端或邊緣調用,配合基于BS架構的DATAV可視化工具,實現了任意端的畫面顯示,極度輕量化了邊緣端的硬件配置要求。
在設計的架構上,以實驗臺架作為應用對象,也驗證了以上優有點。無論企業是選擇私有云還是公有云的形式,本架構都有廣泛的應用價值;而且基于云平臺的方式,也為大數據分析-智能診斷算法研究提供了基礎。