摘要:在工業系統信息化與智能化逐步推進的形勢下,邊緣計算已變得越發重要。相比云計算在大數據處理分析方面的優勢,邊緣計算在低延時與高可靠的場景中有著云計算無法替代的優勢。邊-云協作已經成為工業互聯網、自動駕駛、智慧城市等邊緣計算重要場景的新趨勢。利用云的強大計算與儲存能力來處理歷史數據進行分析優化,而依靠邊緣計算的能力解決高實時性任務。然而,現有的邊-云協作數據管控缺乏統一標準,造成各個平臺與設備兼容性差,導致工業互聯網無法互聯互通。因此,IEEE P2805邊緣計算節點系列標準的設立為自主管理、數據清洗緩存、邊-云協同機器學習等方向提供了標準化參考。
關鍵詞:邊緣計算;標準化;數據清洗緩存;自主管理;數據分析;邊云協同;邊緣機器學習
1 引言
邊緣計算利用日益提升的設備級計算、儲存、網絡資源,協同完成高可靠、低延遲的實時控制、數據處理、完全防護等任務。邊緣計算在工業互聯網、自動駕駛、智慧城市等領域有著廣泛的應用前景。隨著邊緣計算的崛起,現有工業自動化體系結構發生根本的改變,由原來基于ISA-95的結構[1]逐漸向工業云+邊緣計算系統的形態轉變。在新的體系下,工業軟件從最上層的ERP、PLM、CRM等系統一直到邊緣側的工控軟件都將發生模式上的根本轉變。在ISA-95的傳統模式下[2],信息交互往往只在相鄰的層級之間進行。例如ERP系統只與MES系統直接對接,而MES也只與下層的SCADA系統以及上層的ERP系統進行交互。當最底層新增的傳感數據需要與上層系統交互時,需要對數據鏈路上的每一個系統進行修改,造成系統開發與維護的效率低下。在系統規模日益龐大、交互功能復雜的情況下,軟件開發與測試的時間將成倍增長,逐步超過項目硬件成本支出。
在工業互聯網+邊緣計算的模式下,工業軟件的開發模式將從傳統的桌面應用向基于服務化的工業App過渡。工業軟件根據實時性、可靠性與數據量的需求分為云端或者邊緣端應用兩類。CAD、CAE、ERP、MES、PLM、CRM等傳統工業設計、運營管理類軟件由于功能眾多、體積龐大、數據復雜、實時性要求低、擴展性要求強,適合以工業云為載體進行服務化升級轉型。以ERP和MES系統為例,此類系統由大量的軟件模塊組成,包括銷售、需求計劃、供應鏈管理、計劃與執行、庫存、財務會計、人力資源、倉庫管理、采購、品質管理等。由于工業系統具有很強的行業特性,不同行業、不同生產模式的企業對于此類系統的需求有著極大的差異,很難找到兩個企業擁有完全相同的運營方式。因此,如將每個模塊單獨封裝成為工業App部署在云端,可以針對不同企業滿足深度定制的需求,減少用戶由于頻繁升級造成的不便。單獨部署的模塊也可以減少企業在此類軟件上的投入,避免造成資源浪費。
而SCADA、HMI、PLC、DCS等生產控制、裝備嵌入式軟件對實時性與可靠性要求極高,因此一般功能較為單一。部分控制代碼響應時間甚至需要控制在1ms之內,而與云的通訊時間則遠遠超過這個時間,以至于在一個通訊周期內,控制代碼已經運行了幾百個周期,因此此類工業App更適合以邊緣計算系統為載體,以獨立設備資源運行確保實時性與可靠性不受影響。隨著芯片技術的不斷進步以及儲存價格的下降,目前邊緣計算節點的運算與儲存資源已可承擔多個實時性要求較高的工業應用同時部署執行。
模式的改變帶來軟件開發方式的改變,如圖1所示,以服務為基礎的工業App的流程開發者可以使用任意編程語言(比如IEC 61131-3 ST、LD[3]、C/C++、Java,甚至是JavaScript)編寫的工業邊緣計算App通過打包為容器上傳到工業云Edge App商店中,而使用者則無需開發任何代碼,從工業Edge App商店中選擇所需的應用并且配置部署模型下載或者更新工業EdgeApp,通過賦能的方式定義邊緣計算節點的功能與職責范圍,包含實時控制、可視化、監控、數據采集、數據過濾、數據在線分析等。基于IEC 61499[4]的高靈活性的部署帶來不單是用戶的自由度,通過有效整合邊緣資源,能夠有效降低成本,提升設備利用率。當然,受制于現有工業總線以及設備物理位置的所限,部署的靈活性受到一定的限制。當TSN[5]以及5G[6]在工業普及后,能給工業云+邊緣計算系統的構架帶來更大的柔性。
圖1 工業云+邊緣計算軟件開發流程
2 邊緣計算節點管控體系
在新的工業云+邊緣計算體系下,節點與節點間的智能管控已經成為必不可少的部分。一個邊緣計算節點除了承擔計算、儲存、通訊功能外,還應該具備任務管理、數據管理、數據分析等功能。此外,由于工業系統對可靠性與安全性的特殊要求,不能完全依賴基于云計算的決策機制。工業現場生產系統應即使在與工業云連接斷開的情況下也能保證正常生產,因此也更加凸顯邊緣計算在工業互聯網的重要性。在2018年邊緣計算產業聯盟峰會上,邊-云協同的概念被作為邊緣計算參考構架3.0的主要亮點提出[7]。在工業互聯網邊緣計算框架下,工業系統可以選擇邊-云協同的模式,包括公有云+邊緣計算系統或者私有云+邊緣計算系統,當然也可以選擇僅有邊緣計算系統支撐。在任意一種模式下,都需要對現有的設備節點進行管控。然而,目前的工業互聯網邊緣計算則處于起步階段,并未有標準協議與規范來約束邊緣計算節點的管理、邊緣端數據的處理、邊-云協同機制。
因此,IEEE P2805系列標準孕育而生。IEEE P2805系列標準由IEEE工業電子學會標準專委會推薦的針對邊緣計算相關的系列標準,目前已經獲得IEEE標準委員會批準立項的共有三個部分:分別是P2805.1邊緣計算節點自我管理協議[2];P2805.2邊緣計算節點數據采集、過濾與緩存管理協議[2];以及P2805.3邊-云協作機器學習協議[2]。如圖2所示,三部分協議相輔相成,共同形成完整的邊緣計算智能管控體系。
圖2 IEEE P2805邊緣計算節點標準系列
2.1 IEEE P2805.1邊緣計算節點自我管理協議
IEEE P2805.1邊緣計算節點自我管理協議主要面向多個邊緣計算節點之間的自組織、自配置、自恢復和自發現等相互協作機制相關協議。隨著邊緣計算節點數量的增長,邊緣計算節點網絡和分布式應用程序的管理將成為巨大的挑戰。此部分管理協議針對邊緣計算節點間分布式應用的部署,降低用戶的部署復雜度,實現設備的即插即用所建立。在更靠近數據源的邊緣端作為決策,可以減少由于通信延遲帶來的實時性問題。邊緣計算節點根據反饋數據進行實時分析,依仗當前信息以及知識做出決策,并且對執行進行實時干預,例如改變執行的動作或者參數等。當前,邊緣計算節點發現、標識、協作等消息傳遞和安全性機制并無統一定義。因此,此部分標準將制定對邊緣計算節點軟硬件的兩部分管理方法,硬件管理部分包括:
·如何在邊緣計算節點上注冊、更新、查找、刪除其他節點;
·如何查詢其他節點的計算、儲存以及通訊資源使用情況;
·如何遠程啟動、停止節點。軟件管理部分則包括:
·如何在邊緣計算節點上創建、更新、查詢、刪除應用;
·如何分布式更新應用以及故障診斷;
·如何在邊緣計算節點上設置數據的權限、隱私、所有權;
·如何支撐邊緣計算節點間的擴展性與負載平衡;
·如何在邊緣計算節點間共享文件。
2.2 IEEE P2805.2邊緣計算節點數據采集、過濾與緩存管理協議
IEEE P2805.2邊緣計算節點數據采集、過濾與緩存管理協議主要針對控制器(包括可編程邏輯控制器、計算機數字控制器(CNC)和工業機器人控制器等不同設備)進行數據采集的協議。當前的數據采集無法實現高度定制化,因此必須引入可重配置的數據規則,例如定制化的數據采集周期、頻率,數據格式轉換和過濾無效數據等功能,并根據工業云或者其他邊緣計算網絡節點下發的規則對通過不同接口獲取的現場設備數據進行自動緩存、過濾和計算。通過對數據預處理操作,可以實現在將數據轉發到工業云或者其他存儲空間之前,對其進行清洗與壓縮,以便能夠對歷史數據進行高效分析,優化生產工藝流程。這部分標準的主要內容包括:
·定制化數據采集(包括分組、周期、頻率、質量等);
·數據過濾清洗;
·數據恢復;
·數據分區;
·數據緩存;
·數據預處理算法下發;
·數據完整性與來源檢測;
·自定義數據類型。
2.3 IEEE P2805.3邊-云協作機器學習協議
IEEE P2805.3邊-云協作機器學習協議制定了如何使用邊-云協同的方式在邊緣計算節點上啟用機器學習協議。該標準為低功耗、低成本的嵌入式設備上實現機器學習算法提供了實施參考。目前,尚未定義任何標準來涵蓋邊-云協同的機器學習功能。例如,邊緣計算基于機器學習模型以及實時數據來判斷是否更改節點控制流程或者甚至向工業云、其他節點發送警報。此部分的標準包含:
·提供邊緣機器學習、邊 -云協同機器學習等模式;
·提供分布式機器學習模型參考;
·提供分布式機器學習訓練方法參考;
·如何下發部署已訓練好的機器學習模型;
·在線優化;
·邊緣計算節點推理。
3 結語
綜上所述,在工業網絡化系統逐漸普及的情況下,邊緣計算系統的軟件開發模型即將產生巨大的改變,邊緣計算節點相比以往能夠提供大量全新智能管控方法。然而,目前的邊緣計算仍然處于早期研究階段,相關標準的制定已經落后于市場實際需求。因此,IEEE P2805邊緣計算節點系列標準以解決邊緣端智能數據與設備管控為目標,通過定義自我管理協議、數據采集、過濾與緩存管理協議以及邊-云協作機器學習協議來實現設備賦能。在邊-云協作的模式下,邊緣計算在工業互聯網、智慧城市、自動駕駛等領域一定能發揮更大的作用。
參考文獻:
[1] B. Scholten. The road to integration: A guide to applying the ISA - 95 standard in manufacturing[S]. ISA, 2007.
[2] W. Dai, H. Nishi, V. Vyatkin, V. Huang, Y. Shi and X. Guan. Industrial Edge Computing: Enabling Embedded Intelligence[J]. IEEE Industrial Electronics Magazine, 2019, 13 (4).
[3] IEC 61131-3. Programmable controllers - Part 3: Programming languages (Third Edition)[S]. 2013.
[4] IEC 61499. Function Blocks (Second Edition) [S]. 2012.
[5] N. Finn. Introduction to time-sensitive networking[J]. IEEE Communications Standards Magazine, 2018, 2 ( 2 ), 22 - 28.
[6] J. Andrews, S. Buzzi, W. Choi, S. Hanly, A. Lozano, A. Soong, and J. Zhang. What will 5G be [J]. IEEE Journal on selected areas in communications, 2014, 32 (6) : 1065 - 1082.
[7] 邊緣計算產業聯盟. 邊緣計算參考架構3.0 [Z]. 2018.
摘自《自動化博覽》2020年3月刊