劉瑩 陳明
[摘 要]隨著物聯網技術的發展,物聯網與傳統工業結合得越來越緊密。課題組介紹了應用在工廠中的物聯網設備監控系統設計架構,描述了在工廠中的實際應用情況,并對以后發展方向進行了展望。
[關鍵詞]物聯網;工業4.0;智能設備監控系統;智能插座
[中圖分類號] TP393 [文獻標識碼] A [文章編號] 2095-3437(2019)07-0104-05
進入21世紀,互聯網、新能源、新材料和生物技術正在以極快的速度形成巨大產業能力和市場,這將使整個工業生產體系提升到一個新的水平,推動一場新的工業革命,也稱為“工業4.0”。
“工業 4.0”是制造業發展的重要方向。“工業 4.0”諸如生產線優化排程、產品質量早期預警、生產設備預測性維護等服務能力的實現需配合機器互聯、無線通信、智能傳感、云計算、大數據分析等信息技術。物聯網是這些信息技術的實現和應用基礎。未來伴隨著傳感器以及網絡技術的演進,越來越多的生產制造環節,以及產品本身都將由物聯網連接起來,進而可取得大量實時數據。這些數據與研發過程、生產制造過程、服務過程融合,同時借助互聯網的社區網絡、電子商務等服務,能夠協助制造企業打造全面優化的生產及服務過程,實現真正的“工業 4.0”。
本文提出的智能工廠物聯網設備監控系統是物聯網與智能工業的融合應用,此系統遵循標準的智能工廠物聯網協議,便于接入工廠內部數據平臺。功能上涵蓋工廠各種設備狀態監測、分析、控制的超大系統,集成設備數據顯示系統、狀態監測系統、異常報警系統、通信系統等諸多系統的綜合體,這種基于物聯網技術的大系統會為工廠的信息化管理、精細化管理帶來非常好的效用。
一、系統架構設計
基于RESTful架構的智能工廠物聯網設備監控系統是通過Web服務層提供服務的。Web服務層向下與基礎支撐層連接,通過設備驅動接口訪問物理設備接口,實現與物理設備的信息交互;向上通過Internet連接Web客戶,接收、解析并處理Web客戶端的請求,發送處理結果。此外,Web服務層還運行各類應用業務代理,實現RESTful Web客戶端對Non-RESTful物理設備的訪問。
基于RESTful架構的智能工廠物聯網設備監控系統分為兩大層:基礎軟件層和應用服務層。
二、基礎軟件層
基礎軟件層包含了智能工廠物聯網設備監控系統運行所必需的軟件模塊,如操作系統、設備驅動、輔助支撐程序等。
智能工廠物聯網設備監控系統中操作系統采用的是LINUX系統。LINUX是開放源代碼的,不存在黑箱技術;LINUX的內核小、效率高,內核的更新速度很快,LINUX是可以定制的,其系統內核最小只有約134KB。LINUX是免費的OS,在價格上極具競爭力。LINUX適應于多種CPU和多種硬件平臺,是一個跨平臺的系統,到目前為止,它可以支持二三十種CPU,而且性能穩定,裁剪性很好,開發和使用都很容易。同時,LINUX內核的結構在網絡方面是非常完整的,LINUX對網絡中最常用的TCP/IP協議有最完備的支持,提供了包括十兆、百兆、千兆的以太網絡,以及無線網絡、光纖甚至衛星的支持。所以,LINUX可以作為智能工廠物聯網設備監控系統的操作系統。
智能工廠物聯網設備監控系統中使用的NIO數據通信控制模塊為Non Blocking ?Input/Output,即非阻塞式的數據輸入/輸出讀寫控制。傳統上使用的是阻塞式數據讀寫控制,需要使用一個線程在無限等待數據的輸入,比較耗費系統資源。非阻塞式數據讀寫使用觀察者模式進行端口監聽,只有數據寫入的時候才會通知線程進行處理,大大提高了系統的效率。
設備接口驅動模塊主要用于解析各類物聯網終端設備,將終端設備接入系統中。
終端設備是監控系統的眼睛與手臂,通過終端設備可以對生產環境、被測設備進行監測、分析,并通過圖形化形式進行展現,方便用戶進行控制。終端設備包括各類環境傳感器,如溫濕度傳感器、光照度傳感器、人體紅外傳感器、二氧化碳傳感器等,以及相關控制器,包括智能插座、智能空調控制器、燈光控制器等。通過NIO數據層接收終端設備發送的數據并進行解析,同時將解析好的數據傳遞給上層應用進行處理。
三、應用服務層
應用服務層所包括的主要模塊有: Web服務控制、NIO數據通信控制、RESTful Web應答模塊、RESTful Web推動模塊、RESTful Web數據管理模塊、應用業務管理、安全策略管理及各類應用業務代理和相應的應用協議轉換模塊。
(一)RESTful Web應答模塊
RESTful Web應答模塊負責與Web客戶端和應用平臺間的信息應答。模塊支持HTTP連接與協議處理,模塊建立連接后,收到客戶的請求報文,從請求報文中獲得URI,解析得到可控進一步處理的操作指令。REST風格的HTTP請求包括GET、PUT、DELETE、POST四種操作:GET是獲得操作指令中URI對應物理設備的信息,RESTful Web應用交互模塊根據網關中獲得的設備信息組成text/html的信息反饋給客戶端或應用平臺;PUT操作用于更新物理設備配置、向物理設備發送控制指令或數據;DELETE操作用于刪除物理設備上的配置信息或其他數據;POST操作用于在物理設備上建立或更新配置的信息或數據記錄。
HTTP請求被轉換為操作指令數據結構后交由Web服務控制模塊進行進一步處理。當Web服務控制模塊處理完請求指令后將處理結果返回至Web應用界面模塊,模塊將處理結果封裝成RESTful的命令應答,返回至客戶端。
(二)RESTful Web 推送模塊
RESTful Web支持實時推送的通信模式。客戶端向RESTful Web服務訂閱要關注的具體設備事件信息,與服務器保持長連接,當服務器收到符合條件的設備信息后,立即將其推動給客戶端。 RESTful Web客戶端模塊實現應用系統與客戶端的HTTP連接交互與協議處理。當系統連接的物理設備發生用戶訂閱的事件時,系統的應用業務模塊生成應用響應數據上報命令,數據上報命令經由Web服務控制模塊到達RESTful Web客戶端模塊。Web客戶端模塊將應用數據命令編碼封裝成REST風格的請求報文,上報到訂閱用戶或應用系統。如光照度超過某一閾值,一旦事件發生,設備或應用系統會主動將事件信息推送至訂閱用戶。
(三)RESTful Web數據管理模塊
RESTful Web數據管理模塊就是對系統下連接的物理設備類型、功能、指標參數等基本信息進行收集并存儲管理,同時提供數據操作接口供系統內部其他模塊對設備資源信息進行查詢和更改。
除此之外,RESTful Web數據管理模塊還負責向全局設備資源管理體系發布、更新其所管理的設備資源信息,以供互聯網上其他用戶搜索定位到目標設備和設備相關信息。
在系統下連接的設備還可以按照群組進行管理,設備群組信息通常是用戶在部署設備時設置的。在設備部署時,用戶通過Web界面向系統發送群組配置命令,系統將群組配置命令交由RESTful Web數據收集模塊處理,RESTful Web數據收集模塊處理群組設置請求,最后通過Web用戶界面返回處理結果。
當用戶通過RESTful Web接口操作群組設備時,Web服務控制模塊向設備群組管理模塊查詢群組信息,找到目標設備列表,向目標設備發送業務指令。
(四)應用業務管理模塊
應用業務管理模塊就是將基本數據功能模塊和業務邏輯功能模塊封裝成RESTful Web服務,該RESful Web服務由管理界面及所述接口統一調用。該方法是用戶發起業務請求,然后系統通過調用RESTful Web服務進行邏輯處理。應用業務管理模塊統一由RESTful Web服務實現業務功能,達到了接口功能和業務邏輯的分離。
應用業務管理模塊對運行在Web服務層的應用業務模塊進行管理,包括應用注冊、注銷、查詢等。系統程序啟動時,初始化代碼將應用業務模塊逐一加載到Web服務層,并調用應用業務管理API在應用業務數據庫中注冊。
系統接收到Web業務請求后,Web服務主控模塊從應用業務數據庫查找到請求對應的應用業務模塊,向應用業務模塊發送業務請求。
系統退出或應用業務注銷時,控制代碼調用應用業務管理API從應用業務數據庫中刪除業務對應條目。
(五)Web服務控制模塊
Web服務控制模塊是Web服務層軟件的核心。該模塊連接Web應答模塊、各類管理模塊和應用業務管理模塊,起到Web服務主控的作用。Web服務主控模塊工作流程基于事件響應模型,模塊接收其他模塊發送的事件請求,進行綜合判斷、處理,得出響應結果,將結果返回給事件請求者。
例如,Web應用界面模塊接收到客戶端發送的RESTful溫度傳感器采集請求,請求被轉換為請求指令結構后交由服務控制模塊,服務控制模塊查詢設備資源庫定位目標傳感器,將請求傳遞給對應的應用業務模塊,應用業務模塊驅動設備接口采集傳感器數據,并將采集到的溫度數據返回服務控制模塊,服務控制模塊查找與數據對應的用戶請求,最后通過Web服務界面將采集結果編碼成RESTful的Web應答返回客戶端。
其中,業務信息的傳遞可以采用過程調用(同步)或消息傳遞(異步)的方式。
另外,在事件觸發或定期上報類型的應用中,如溫度定期采集業務,溫度采集應用業務模塊定期采集傳感器數據,生成數據上報請求發送給Web服務控制模塊,Web服務控制模塊將上報請求交給Web服務界面編碼發送給客戶端或溫度信息服務器。
在對業務請求的處理過程中,Web服務控制模塊可能還要與系統其他模塊進行交互,如查詢設備訪問權限、數據讀取權限、讀取或更新設備資源信息庫、讀取更新設備群組信息庫等。與其他功能庫的交互同樣也可以采取過程調用或消息傳遞的方式。
(六)安全策略管理模塊
安全策略管理是智能工廠物聯網設備監控系統需要實現的一項重要功能,不同的用戶對不同的應用業務數據和物理設備的訪問權限都不盡相同,系統需要一套完備的安全策略來支撐智能工廠應用。
對RESTful Web服務的設計應該遵循以下安全策略:
(1)RESTful API啟用已經部署的Web應用同樣的安全機制。
(2)使用那些被互審過測試過的框架或現有的包。
(3)對XML 消息的數據進行轉換和驗證。
(4)HTTP協議上發送的信息需要加密。
(5)使用基于哈希的消息驗證碼(HMAC)。
安全策略管理模塊維護系統安全策略數據庫,并提供API接口對安全策略數據庫進行增加、更改、刪除、查詢等操作。
(七)應用業務代理和相應的應用協議轉換模塊
智能工廠物聯網設備監控系統的核心功能是服務于各類應用業務,如傳感數據采集、設備控制等,不同應用業務對不同設備的交互與操作不同,不同的應用業務在系統中對應不同的應用業務模塊。
應用業務模塊在系統初始化時初始化并注冊,在系統接收到客戶端請求時被Web服務主控調用。
不同的應用業務可能對應不同底層應用協議與物理設備接口,例如智能工廠應用需要通過Zigbee協議、Wifi協議與底層設備交互。不同的應用協議轉換模塊實現Web應用業務指令與不同的底層應用業務協議間的轉換與交互。根據實際情況不同,應用業務模塊和應用協議轉換模塊可以是一對一的關系,也可以是一對多的關系。
四、設備智能監控系統應用
在某機械工廠可通過設定自動控制程序來進行設備零件的自動加工,而機器加工的實際時間不固定,結束時間也無法預判。工廠中需要根據訂單的數量動態分配、增加加工設備,為了更有效地使用設備,需要知道每臺設備的使用率信息,之前需要人手工去統計設備的加工時間與使用率,這樣比較費時,效率也低,同時還不能保證準確性。
將智能插座結合智能監控系統進行部署,通過智能插座檢測設備的功耗狀態來判斷設備是否在工作,根據功率波動率計算出設備使用情況,極大提高了效率和準確率,同時可以根據設備檢測的能耗信息判斷設備是否老化,出現問題時可以提前預警,方便工廠進行設備管理與維護。
在計算設備使用率時,最初是根據設備待機功率進行判斷,如果檢測到實時功率大于待機功率,則認為該設備處于工作狀態。但是,在實際中發現,即使是同一型號的設備,工作功率和待機功率都不一定相同,甚至有些設備在切換工作狀態時,待機功率比工作功率要高,因此不能通過單一的待機功率值進行工作狀態判斷。
通過搜集設備一段時間的運行功率,使用Excel表格繪制功率數值曲線,發現設備在待機狀態時功率曲線波動較小,曲線較為平滑,而在工作狀態時,功率曲線波動較大,因此,可以通過波動率對工作狀態進行判斷。
在實際運行過程中,先通過統計被測設備一段時間的功率曲線,計算出可以區分出工作狀態的波動率,然后根據這個波動率與待機功率數值一起去判斷設備的工作狀態。這樣對工作狀態進行使用率計算,與人工統計的使用率數值相差不超過3%。
在實際開發過程中,因為設備數量很多,如果是通過比較相鄰兩條設備功率數據來對工作狀態進行判斷,耗費的時間較長,而工廠中需要盡可能快速地得到數據進行每日的分析。因此,需要對使用率計算程序進行優化。通過分析,在數據庫獲取數據的時候,通過一定的SQL語句直接將滿足工作狀態的功率數據篩選出來,然后對篩選出來的數據進行時間累積,這樣就可以快速得到工作時間數值。因為智能插座是通過無線的形式與系統進行通信,所以不可避免地存在丟包的情況,在統計過程中,如果中間有時間是斷開的,需要通過插座上傳數據中的幀號來判斷是丟包損失的時間還是因為無線延遲引起的。在計算過程中,需要使用兩個中間表對中間數據進行存儲,其中,一個中間表用于存儲判斷為工作狀態的插座能耗數據,一個中間表用于存儲這段數據的幀號,最后程序通過統計這兩個中間表的信息,用于累積滿足條件的工作使用率和丟包率,以此取得更為精確的工作使用率計算值。
同時系統還可以通過RESTful Web形式對外提供數據接口和控制接口,可以將系統中的插座數據分享給其他系統用作統計、分析,提高了數據的復用性;通過控制接口,還可以設定多種控制策略,可以實現多種自動化控制設備策略模式,方便工廠提高自動化程度。
圖3顯示的是設備的使用率查詢情況,設備使用率分為8小時和24小時,從圖中可以得出,可以精確獲取設備的使用情況,有助于對設備使用進行良好的配置管理。
五、未來展望
制造業已經進入大數據時代,智能制造需要高性能的計算機和網絡基礎設施,傳統的設備控制和信息處理方式已經不能滿足需要,物聯網將設備緊密聯系在一起,可以多方位感知設備狀態信息。基于物聯網的智能制造已經指日可待,物聯網提供計算資源的共享池( 網絡服務器應用程序和存儲) ,本地計算機安裝數據采集和監控系統后,可將數據發送給服務器進行處理、存儲和分配,并在需要時從服務器接收指令。隨著物聯網與工業的不斷結合、不斷應用,必將產生新的工業體系。
[ 參 考 文 獻 ]
[1] 胡向東.物聯網研究與發展綜述[J].數字通信,2010(2):17-21.
[2] 陳柳欽.物聯網:國內外發展動態及亟待解決的關鍵問題[J].決策咨詢通訊,2010(5):15-25.
[3] 趙志軍,沈強,唐暉,等.物聯網架構和智能信息處理理論與關鍵技術[J].計算機科學,2011(8):1-8.
[4] 張歆爽.一種物聯網資源共享平臺的數據建模與實現[D].北京:北京郵電大學,2012.
[5] 佟立飛,李龍華.通用網關協議數據轉換軟件開發[J].動化技術與應用,2012(1):16-18.
[責任編輯:鐘 嵐]