工業物聯網(IIoT)是涉及邊緣裝置、雲端應用、感測器、演算法、內部安全、外部防禦、龐大通訊協定元件庫、人機介面(HMI)以及其他必要元件的多面向緊密連結之系統鏈。

IT與OT的整合方法

有些人說工業物聯網的願景是操作技術(OT)與資訊科技(IT)的整合,但其目標其實更加深遠。OT應用的時間敏感性與IT應用的資料密集性要求這些元件須融為一體,並確實且精準地執行各種關鍵任務,然而當加入「生命週期」這項必要條件時,衝突就會浮現。

「生命週期」能確保系統供應商與其客戶都能從工業物聯網系統中獲得報酬,現在,分析、機器學習、網路安全與其它物聯網系統的基礎技術都已有重大進展,因此擴展的產品生命週期也需要進行修改或升級,這些緊密整合的需求勢必會對時序要求嚴格的系統產生負面的連帶效應。

對此最常見的解決方法就是一款可作為工業物聯網邊緣系統核心之嵌入式電子元件,它能提供最佳規格,為未知狀況預留調整空間。邊緣系統是指位於網路邊緣處,最靠近實體工廠與其他工業環境的決定性嵌入式通訊和即時控制引擎,例如:動作控制器、繼電保護器、可編程邏輯控制器及其他類似系統。

雖然許多如高達數千兆赫的時脈、更大的記憶體、輸入/輸出埠的增加與最新的加密引擎等技術,似乎可為日後未知的需求提供解決方案,但當對應工業設備的時間表時,因其重要的子系統時間尺度是在數百毫秒(或更短)內運行,且必須在工廠以及偏遠地區持續作業數十年,僅依賴一顆先進的多核心嵌入式處理器在工業物聯網內進行擴充並不實際。更糟的是,短視的作法會衍生出一連串困難、昂貴的行銷及工程設計,無法因應管理效能的瓶頸。

隨著時間演進,企業對於在工業物聯網邊緣擴充更加迫切,也需要更多的自由,而採用可編程硬體來輔助在嵌入式處理器核心上運行的軟體,可讓企業擁有所需的彈性。這種更具一貫性的作法,不僅能更容易的進行決策、避免延遲及管理效能,還能消弭IT與OT領域之間,以及OT領域中各子系統之間的干擾。

20180123_Xilinx_TA71P1 圖1:典型工業物聯網系統的時間尺度、特質以及生命週期

另一方面,處理器有許多功能具有恆久性的價值,像是硬體虛擬化,讓架構能容納新的虛擬主機作業系統(guest OS),為用戶提供自主性與隔離性。另外其他長久實用的功能,像是同位檢查或是更搶手的ECC錯誤校正碼等記憶體保護,在產品報廢前都能持續正常的使用。運用特殊硬體去強化較少異動的處理器架構,為即將發生的任務建立平均且理想的分工機制,這在嵌入式電子領域早有先例,其實大家更注意的是,根據時間演變調整任務與分工機制。其中一個例子就是新型預測性維護演算法,其需要的感測器輸入資料比以往還多,因此讓硬體分擔日漸繁重的運算任務,不僅能維持整體承載量,最重要的是還能維持處理器子系統的週期時間。這樣的彈性不論是對購買並安裝系統的客戶,還是在未來數十年能從加值軟體服務獲取營收的系統供應商來說,都能帶來可觀的好處。

本文基於選擇一個能隨著時間演進,適應市場趨勢衝擊的工業物聯網邊緣平台(edge platform),探討三個組成工業物聯網的關鍵應用領域,包括連結、網路安全以及邊緣運算這三個元素。對於工業物聯網平台來說,具備卓越彈性、擴充性及能應付各種OT與IT技術是很關鍵的,例如像All Programmable SoC這類的系統單晶片,其硬體與軟體都能進行編程化,正是理想的解決方案。

連結:從既有標準到未來通訊協定

工業物聯網時代的連結朝向精簡發展,但這波轉變也帶來新的複雜性。如OPC基金會的開放平台通訊——統一架構(OPC-UA)及即時系統資料分發服務(DDS)的邊緣與系統涵蓋的協定,都在各自的領域快速發展,這兩種標準皆受益於要求時效性的時間敏感網路(TSN)的崛起,TSN這類以乙太網路為基礎的決定性傳輸機制能應付結合多種時效性的傳輸資料流。TSN能在整個邊緣與工業物聯網解決方案鏈中,有效幫助達成統一網路通訊協定的願景,因為它同時支援各種優先等級的排程傳輸流量(scheduled traffic)並盡力傳送傳輸流量(best-effort traffic)。TSN還在持續演進,因此在標準規範制定完成,及各邊緣市場專屬的次規範(profiles)確定之前,就貿然宣傳ASIC或ASSP等晶片組符合標準,實屬危險之舉。

同樣的道理,試圖透過純軟體的方式,在現有管理即時資料的控制器中加入對TSN的支援,充其量只會導致出乎預料的時序行為,最可能出現的結果是中斷反應速度、記憶體存取時序變差等退化現象,畢竟這並非合理的解決方案,因為TSN需要某種尚未存在於現今控制器中的時間感知形式。即使未在同一個元件中整合TSN來管理各種如端點的控制功能,但若把外部TSN交換器加到系統中,可能會使連到各種端點的交換器產生乙太網路回溯相容性,藉以支援非TSN控制器。將TSN整合到端點的目的,是要在調度排程傳輸流與盡力傳送傳輸流時,對控制功能時序的影響減到最小,如圖2所示。

20180123_Xilinx_TA71P2 圖2:TSN結構圖與優勢

在控制器上整合一個執行TSN功能的All Programmable元件,能在不對軟體時序產生太大衝擊下,透過將頻寬密集與具時效性的功能建置在硬體,將變動產生的影響減到最小。設計者可運用賽靈思內部開發,且完全符合相容標準的TSN最佳化建置方案,來著手開發純端點或橋接端點。不論是將運用All Programmable SoC所設計的控制器從標準乙太網路升級至TSN,或配合持續演進的TSN標準設計全新的控制器,賽靈思的All Programmable方案相對於ASIC與ASSP來說,不僅能讓設計者在變更時,將關鍵時序的衝擊減到最小,還能符合未來的需求。

另一種替代性但同樣常見的使用案例也值得我們考慮。由於工業物聯網並非嶄新的產業,它還需要支援眾多既有的產業通訊協定,業界從過去到現在都還在使用這些片斷式的標準,但大多數新型SoC僅支援少部分這類協定,此外,網路介面的數量甚至還多過大多數這類固定式SoC的I/O功能。例如,賽靈思的All Programmable SoC能用於建構理想的系統,達到顧客需要的客制化環境,像是支援各種既有通訊協定以及相關的I/O連結。不論通訊協定要求是250μs還是64μs的週期時間,這些工業通訊協定控制器的完全封裝化與硬體分流能力,就足以省去額外元件的成本,而且和軟體方案相比,不會對主流軟體與韌體造成副作用。

網路安全:強化及適應未來威脅

工業物聯網的意見領袖採用縱深防禦(defense-in-depth)手法來因應網路安全的問題。縱深防禦是一種多層次的安全機制,從供應商的供應鏈開始,一直涵蓋到邊緣用戶的企業與雲端應用軟體,甚至還延伸到軟體可能連結的所有萬物。在此部份要探討於工業物聯網邊緣部署嵌入式電子元件的信任鏈範疇,隨著網路延伸到類比-數位的邊緣,資料一旦進入數位領域就必須立即加以保護。縱深防禦的安全需要一個堅穩的硬體信任根(root of trust),以便執行安全且經檢驗的開機作業,並藉由隔離硬體、作業系統、軟體、及安全通訊,來維持執行階段的安全。透過可信任的遠端驗證伺服器、憑證簽發等單位的進行獨立憑證驗證,都應廣泛部署在整個信任鏈。

在預料網路安全攻擊會越來越頻繁的情況下,安全已不再是靜態,而是持續演變的。舉例來說,自1995年起,傳輸層安全(TLS)安全傳訊協定已進行五次重大改版,未來還會有更多改版等著進行。工業物聯網系統供應商與其顧客不僅需要知道如何降低隨著時間演變的安全風險,還要提高昂貴資產的壽命以及實用性。加密演算法凸顯出像TLS這樣的通訊協定大多都建置在軟體中,但隨著邁向IT-OT的整合,IT端的變革對於要求時效性的OT效能可能產生負面影響。為降低衝擊,如虛擬機器管理器等的軟體架構工具,與其他隔離方法現已開始問世。產品實際使用數年後,也可將這些軟體概念,與使用可編程硬體並具有分載及支援嶄新與目前尚未定義的加密功能的能力進行整合。這種作法提供更有效的風險規避方案,能避免所費不貲的產品召回、軟體更新檔、以及衍生法律訴訟的威脅。

軟體定義的硬體

如前所述,硬體負載分流機制不光只在All Programmable SoC的可編程硬體上才有支援,要完全達到目標,需要有加速技術運行的軟體自動化功能(需最佳化此一技術的軟體自動化功能)。像SDSoC開發環境這類的工具,讓使用者能撰寫C/C++/OpenCL及數量持續成長的語言清單,並能將所有或部份功能移到可編程硬體或軟體中。SDSoC開發環境亦能產生處理器與可編程硬體之間的資料移動引擎與基礎架構。在2015年,SDSoC工具搭配先進加密標準(AES)-256演算法,將部分演算法移到可編程硬體時,效能立即提高4倍。

此效能量測的重點是在探索軟體智慧與可編程硬體最佳化之間的最佳平衡點,但該工具也可以將功能完全分流給可編程硬體。同樣地,透過硬體加速引擎加快馬達控制迴路的收合時間,顯示其效能比純軟體方案高出30至40倍。

邊緣運算:可擴充、成本效率、即時

如同通訊與安全一樣,邊緣運算朝不同方向不斷演化。雲端的運算威力,能從以往無法存取的系統中處理未鎖住的資料流,為使用者提供過去不曾看出或理解的洞察力,以作為行動的參考依據,這衍生出一連串可作為發展起點的期盼或籌碼。如同依賴GPS導航系統,使得大多數公路地圖無用武之地,工業設備的買家與使用者,對於從其工業物聯網系統的回饋也有不同的期待。目前的趨勢是將這些洞察產生的源頭從雲端轉移到邊緣,主要推動力量有三:

  • 渴望在從邊緣到雲端的往返傳送中,更快速的運用洞察訊息
  • 將數量(在許多情況)高得離譜的資料傳送到雲端所需要的成本
  • 將資料傳送到雲端涉及的安全、可靠性、及隱私方面的疑慮

我們不應以絕對的態度看待這些產業趨勢,光是在本地端預先處理資料,然後將經過最佳化擾碼處理(obfuscated)的資料傳送到雲端,就能對排除這些安全與隱私疑慮有極大幫助。其中一個簡單例子就是運用一個低通或求均值過濾器,在負責管控主機的控制器上處理時間序列資料,其結果是同時降低傳送到雲端的資料點數量,並抑制異常(outlier)資料。可編程硬體讓你能運用這些最佳化功能,在資料以串流模式傳送到主機時套用在資料上,相對於使用複雜的記憶體交換,其過程涉及對資料進行任何潛在決策的反應時間(減緩反應時間),就能創造出最具效率的處理機制。這個例子僅用單一感測器的單一資料流來說明,但實際上大多數工業系統都含有數百甚至數千個同時傳輸資料流。龐大的連結數量不僅放大問題,也放大解決方案的價值,而可編程硬體透過各種感測器融合技巧以及晶片內部分析提供這方面的價值。

在這個例子中,智慧內嵌於控制器中,能讓產品在本機就對時效要求較高的項目進行調整,並以壓縮格式將時效性較低的資料傳送至雲端。這個例子說明了邊緣與雲端彼此互補。嵌入式智慧與邊緣-雲端協作也能套用到邊緣的機器學習,這個主題的重要性在工業物聯網領域內迅速上升。機器學習包含基於神經網絡的機器學習推論與部署,以及類似回歸與其他方面的傳統技巧,都非常適合可編程硬體的省電、可客製化以及大規模平行運算架構。

因此,可編程硬體的加速卡被廣泛運用在雲端環境。相同的 All Programmable技術可運用在邊緣,為多種感測器機器學習應用提供最低的延遲、耗電、以及成本。由於All Programmable技術能夠有效率地支援 IT-OT 整合的所有基本層面,同時在新興領域提供卓越功能,因此它能在單一元件中,提供最廣的工業物聯網應用覆蓋率。舉例來說,將馬達控制、機器視覺、網路通訊、功能安全、網路安全等應用與邊緣分析及機器學習做結合,可望成為All Programmable 技術在工業物聯網的預期案例。

FPGA作為既有處理器的夥伴

為建置廣泛的IT-OT功能,工業物聯網邊緣平台最常見的選擇是All Programmable SoC。這些元件除了提供先前所述的整合優勢,還能節省功耗與成本。另外一個選項則是之前已存在架構下的嵌入式處理器中的既有編碼。在這些例子中,上述某些優點即使更換成名為FPGA的可編程硬體元件也仍然有效。FPGA在運行時就像一個隨附元件,能輕易連結到主要嵌入式處理器。這些FPGA除了作為主要嵌入式處理器的協同處理器,還另外建置一個微型微控制器或微處理器(例如賽靈思MicroBlaze處理器),這類運用可編程元件建構的軟型處理器,能支援許多種類的作業系統與即時作業系統,因此要在既有系統的環境中分擔持續演化或要求時效性的功能,仍可運用這些功能。

在新工業時代藉由硬體與軟體可程式化讓產品達成更長生命週期

由電力驅動的工業控制系統已問世超過百年,有些人將IIoT稱為第四波工業革命,除了可用的技術與所需完成的任務都已改變,整個工業的發展步調也飛快地提升。如今浮現許多新技術可作為IIoT邊緣平台的建構元件,這些平台為不斷提升廣度與深度的IT-OT任務,提供更廣的覆蓋率。像是Zynq-7000與Zynq UltraScale+這類All Programmable SoC能運用軟體與硬體的可編程能力,讓資產長期保持實用,表現遠勝於過去20至30年傳統嵌入式架構所使用的建構元件。

針對每種邊緣產品使用不同嵌入式控制器,卻不規劃它們與相同雲端基礎設施之間的連結,這種策略是失敗的,因為工業物聯網系統中大約75%的成本是歸於雲端以及嵌入式軟體的開發。對於系統供應商而言最重要的是通用平台,讓他們能把投入的研發時間與資金,透過軟體服務來創造價值,而不是忙著重新發明通訊介面、安全基礎設施、控制迴路時序、資料分析演算法等元件。以FPGA為基礎的方法為必須處理既有處理器系統的供應商,提供上述這些優勢。