這些在物聯網(IoT)基礎設施上部署AI功能的先進應用,稱為「人工智慧物聯網」(AIoT)。雖然仍須訓練位於雲端的AI模型,但只要將訓練後的AI模型部署於邊緣電腦上,便可以在現場收集並推論資料。本文探討如何選擇適合的工業AIoT應用的邊緣電腦,文中並提供多個案例研究,以協助讀者起步。
將AI導入IIoT
IIoT的出現,讓許多企業可以從過去無法擷取資料的地方,收集大量的資料,並找到可提升生產力的新空間。藉由從現場設備和機具取得效能和環境資料,企業現在可自由運用更多的資訊,因此可做出更好的商業決策。然而,IIoT提供的資料量已經遠超出人類所能處理的量,因此大多數的資料並不會經過分析,就這麼白白浪費了。
有鑑於此,企業和產業專家轉向AI和機器學習解決方案,以取得更全面的視野,更快做出更聰明的決策。
多數IIoT資料均未經分析
連線至Internet的工業設備數量正逐年攀升,預計將於2025年成長到416億個。更驚人的是,每一台設備皆產生極其龐大的資料量。事實上,如果用人工方式分析整個生產線的感測器產生的資料,可能要耗費一生的時間才能完成分析。也難怪「只有不到一半的企業結構化資料,真正被用於決策制定—而真正有進行分析或被使用的非結構資料則少於1%」。舉例而言,IP攝影機每天可產生1.6Exabytes(EB)的視訊資料,其中真正經過分析的只有10%。這些數據顯示,儘管人們有能力收集更大量的資料,但卻完全輕忽自身無法分析巨量資料的事實。由於以人工方式分析各種設備每日產生的資料,實在太不可行了,因此企業正想方設法,要在IIoT應用中導入AI和機器學習。
只要想想,如果人們一天8小時、一週5天,只依靠肉眼來檢視生產線上每一顆高爾夫球的細微瑕疵,就知道這件事有多累人了。就算可雇用一大批人來進行檢查,他們還是有可能因為視覺疲勞和人為疏失而出錯。同樣的,以肉眼檢視鐵道鋼軌扣件的工作,只能在夜間鐵路系統停止運轉時進行,不但浪費時間,而且困難重重。另外像是人工檢視高壓電纜和變電站,也使得工作人員曝露在危險之中。
結合AI與IIoT
AIoT針對前面探討的每一種工業應用,提供減少人力成本和人為疏失,並可最佳化預防性維護的優點。AIoT指的是在IoT中採用人工智慧技術,以改善運作效率、人機互動、資料分析和管理等。但AI到底是什麼,它究竟要如何與IIoT結合呢?
「人工智慧」是一個廣泛的科學領域,研究方向為,如何建立具智慧功能的程式和機器,以解決傳統上人力無法處理的問題。人工智慧還包含了「機器學習」,這是AI的子領域,可以讓系統利用各種演算法和神經網路來自動學習,並透過經驗來改善系統運作效能,而不是透過編寫程式來告訴系統該怎麼做。另一個相關的術語是「深度學習」(DL),它是機器學習的一個分支,利用多層的神經網路,從大量資料中吸收知識。
由於AI是個廣博的科學,接下來的內容將介紹電腦視覺或AI視訊分析,以及其他常與ML搭配使用的AI子領域,如何在工業應用中進行資料分類與辨識。從遠端監測和預防性維護的資料讀取,到進行車輛辨識,以便控制智慧運輸系統中的交通訊號,再到農用無人機(Agricultural Drone)和戶外巡邏機器人,一直到可檢查高爾夫球和其他產品之細微瑕疵的自動光學檢測(AOI)作業,電腦視覺和視訊分析,極致提升了工業應用的生產力和效率。
將AI移至IIoT邊緣
如前所述,數量激增的IIoT系統,產生了極大量的資料。舉例來說,一個大型煉油廠的所有感測器和設備,每天可產生1TB的原始資料。若想要立即將這些資料傳回共用雲端或私人伺服器並進行儲存,需要有相當可觀的頻寬、可用性和電力才做得到。對於許多工業應用設備,特別是位於偏遠地區的高度分散式系統,想要持續傳送大量的資料到中央伺服器,根本不可行。
即便擁有充足的頻寬和基礎設施,其部署和維護成本極端高昂不說,資料傳輸和分析還是會有相當嚴重的延遲。關鍵任務型工業應用必須能夠以最快的速度分析原始資料。
為了減少延遲、降低資料傳輸和儲存成本,並提高網路可用性,IIoT應用開始將AI和機器學習功能移動到網路邊緣,以便直接賦予現場更強大的處理能力。更精確地說,邊緣運算能力的躍進,讓IIoT應用能夠從遠端地點執行AI決策功能。藉由將現場設備連接至配備強大的本地處理器和AI功能的邊緣電腦,使用者不用再將所有的資料傳輸至雲端進行分析。事實上,遠端邊緣和近端邊緣站點所產生和處理的資料量,預計將在2025年從10%成長到75%;而邊緣AI硬體市場,預計將在2019至2024年間,以20.64%的年複合成長率(CAGR)大幅成長。
邊緣電腦選擇須貼近工業AIoT
將AI導入工業IoT應用時,請注意幾個關鍵問題。雖然AI模型訓練大部分都是在雲端進行,但最後還是要將完成訓練的推論模型部署到現場。AIoT邊緣運算讓使用者能夠在現場進行AI推論,毋需將原始資料傳送至雲端,再進行處理和分析。為了有效執行AI模型和演算法,工業AIoT應用需要一個可靠的邊緣硬體平台。如欲為自身的AIoT應用選擇合適的硬體平台,請審慎考慮以下要素,如不同AI部署階段處理效能要求、邊緣電腦等級、開發工具以及環境因素。
不同AI部署階段處理效能要求
一般而言,AIoT運算的處理效能要求,與使用者需要的運算能力,以及其是否需要CPU或加速器等息息相關。以下三個建立AI邊緣運算應用的階段,分別使用不同的演算法執行不同任務,因此每個階段的處理效能要求各不相同(圖1)。
・資料收集
這個階段的目標是取得大量的資訊來訓練AI模型。原始且未經處理的資料無法直接使用,因為其中包含各種重複資訊、雜訊和異常值。在初始階段預先處理收集到的資料,有助於辨識具有規律模式、異常值和丟失的資訊,方便讀者修正錯誤和誤差。視讀者所收集的資料之複雜度而定,資料收集過程中使用的運算平台,通常採用Arm Cortex或Intel Atom/Core處理器。I/O和CPU規格(而非GPU)對資料收集任務的影響較大。
・訓練
AI模型需在先進的神經網路上進行訓練,而極消耗資源的機器學習或深度學習演算法,需要更強大的運算能力,例如使用高效能GPU來支援平行運算,以便分析所收集的、經過預先處理的大量訓練資料。訓練AI模型時,需選擇機器學習模型,並使用經收集、經過預先處理的資料進行訓練。在這個過程中還需分析並微調參數,以確保訓練的準確度。目前有許多訓練模型和工具可以挑選,包括現成可用的深度學習設計架構,例如PyTorch、TensorFlow和Caffe。訓練通常會在指定的AI訓練機器或雲端運算中心進行,例如AWS Deep Learning AMI、Amazon SageMaker Autopilot、Google Cloud AI,或Azure Machine Learning,而不是在現場進行。
・推論
最後一個階段便是將完成訓練的AI模型部署到邊緣電腦上,讓AI可以根據新收集的和預先處理的資料,進行快速、有效率的推論和預測。在推論階段,AI需要的運算資源通常比訓練階段少,只要一顆CPU或輕量型加速器,就足以因應使用者的AIoT應用需求。不管怎麼說,他們都需要一個轉換工具,讓完成訓練的模型能夠在專門的邊緣處理器/加速器上執行,例如Intel OpenVINO或NVIDIA CUDA。推論階段還涉及多種邊緣運算等級和需求,本文將於接下來的篇幅探討。
邊緣電腦等級
儘管AI訓練主要是在雲端或本地伺服器上進行,資料收集和推論還是得在網路邊緣進行。不僅如此,由於推論是經過訓練的AI執行多數任務,以便達成應用目標的最終階段(做出決策,或根據新收集的現場資料採取行動),使用者需決定以下哪一種邊緣運算等級為其所需要的,以便據此選擇合適的處理器。
・低階邊緣運算等級
在邊緣和雲端之間傳送資料,不僅成本高昂,也非常耗時,因而常常導致延遲。使用低階邊緣運算時,只能傳送少量的有用資料至雲端,以便減少延遲、節省頻寬和資料傳輸費用,以及耗電量和硬體開支。未配備加速器的Arm平台可用於IIoT設備,以便收集並分析資料,進而更快完成推論或做出決策。
・中階邊緣運算等級
這個等級的推論設備,可處理各種不同的IP攝影機視訊串流,並以充足的畫面處理速率,提供電腦視覺或視訊分析結果。中階邊緣運算可依據AI模型和使用案例的效能要求,支援不同的資料複雜度,比方說辦公室進出管控系統所需的臉部辨識應用,亦或是大型的公共監視網路。多數工業邊緣運算應用還需限制功率預算,或是採無風扇的散熱設計。這個等級的設備可以使用高效能CPU、初階GPU或是VPU。例如Intel Core i7系列CPU、OpenVINO工具套件和軟體式AI/ML加速器的組合,可提供有效率的電腦視覺解決方案,以便在邊緣進行推論。
・高階邊緣運算等級
適用於AI專家系統的高階邊緣運算,需處理更大量的資料。AI專家系統採用更複雜的模式識別(Pattern Recognition)方法,例如透過公共安全系統的自動錄影監視功能進行行為分析,以便偵測安全事件或可能發生的威脅。高階邊緣運算等級推論通常需使用加速器,包括高階GPU、VPU、TPU或FPGA,因而消耗更多的電源(200W或更高),並產生過多的廢熱。以鐵路為例,由於移動中火車的耗電量和所產生的廢熱,可能遠超出遠端邊緣網路的限制,因此高階邊緣運算系統通常部署於靠近邊緣的位置,例如火車站,來執行任務。
開發工具加速應用開發時程
目前市面上有多種使用不同硬體平台的工具可供選擇,它們有助於加快應用開發流程,或改善AI演算法和機器學習的整體效能。
深度學習架構
讀者可以考慮使用深度學習架構,這是一種能快速、輕鬆建立深度學習模型的介面、資料庫或工具,而且毋需深入了解任何底層演算法。深度學習架構使用一系列預先建立並經過最佳化的元件,讓使用者能以簡潔明瞭的方式定義模型。其中較受歡迎的架構有:
・PyTorch
PyTorch主要由Facebook的AI研究實驗室開發,是基於Torch程式庫的機器學習開源程式庫。它可用於電腦視覺和自然語言處理等應用,是以修訂後的BSD授權形式免費提供的開源軟體。
・TensorFlow
TensorFlow提供簡單易用的Keras API,可協助定義並訓練神經網路,以便快速實現原型設計、研究和製造。
・Caffe
Caffe提供清晰的架構,毋需編寫程式也能定義、設定模型,並進行最佳化。使用者可設定一個旗標(Flag),以便在GPU機器上訓練模型,然後部署到商用叢集或行動裝置上。
硬體式加速器工具套件
硬體供應商提供的AI加速器工具套件,是為了讓使用者能在他們的平台上,加速開發機器學習和電腦視覺等人工智慧應用而設計。
・Intel OpenVINO
Intel推出的OpenVINO(Open Visual Inference and Neural Network Optimization)工具套件,是專為協助開發者在Intel平台上建立可靠的電腦視覺應用而設計。OpenVINO還可以加速實現深度學習模型的推論。
・NVIDIA CUDA
CUDA工具套件支援高效能的平行運算,讓使用者能在採用NVIDIA CUDA(Compute Unified Device Architecture)架構的嵌入式系統、資料中心、雲端平台和超級電腦上,加速開發以GPU加速的各種應用。
環境因素
千萬別忘了還需考慮應用部署的實體位置。對於部署在室外或嚴苛環境中的工業應用,例如智慧城市、石油與天然氣、採礦、發電,或是室外巡邏機器人等應用,可以選擇的系統須具備寬溫操作範圍和適當的散熱機制,方可確保它在酷熱或嚴寒環境中仍能維持可靠度。某些應用則要求系統需通過特定的產業認證或認可,例如無風扇、防爆結構和抗震設計。許多真實世界的應用,均部署於空間有限的機箱中。在此限制下,體積輕巧的邊緣電腦是更理想的選擇。
不僅如此,位於遠端站點的高度分散式工業應用,可能需要可靠的蜂巢式或Wi-Fi通訊連接。舉例來說,藉由使用整合蜂巢式LTE連結功能的工業邊緣電腦,不用再額外配置蜂巢式通訊閘道器,可節省寶貴的機箱空間和部署成本。另一個考量點是,使用者可能需要以雙SIM卡來提供備援的無線連結,以便在其中一個蜂巢式通訊連結的訊號變弱或斷訊時,確保資料仍能不間斷地傳輸。
若欲進一步了解AIoT邊緣運算為真實世界工業應用帶來的優勢,請閱讀以下兩個案例。
AIoT如何讓大眾運輸系統穩定運轉
所有的鐵道列車—不論是跨越不同城市的火車,或是市區內的大眾運輸系統—都需在鐵軌上行駛,因此這些鐵軌必須根據標準規格隨時進行校正,以便永保筆直並維持正確的間距。如果軌道歪斜,列車可能因而出軌。這就是為什麼人們常常會看到一些支撐物(稱為枕木)被垂直放置在軌道下方。為確保列車平穩地行駛,鐵軌需要用鐵釘、螺絲或鉚釘等鋼軌扣件,牢牢地固定在枕木上。
由於列車車輪和鐵軌會頻繁磨擦並產生震動,再加上自然環境的侵蝕,經過一段時間後鋼軌扣件會疲乏並損壞。為此,必須定期檢查並修復鋼軌扣件,以確保列車的安全行駛。
一個位於東亞的大型都會區鐵路,正尋覓一個更有效率的方法,來檢視此大眾運輸系統中,用於固定數千公里鐵軌的大量鋼軌扣件。這個大眾運輸系統位於地震頻繁的環太平洋火山帶上,其基礎設施絕不能承受任何一絲的安全風險。
然而,列車行駛和高承載流量會產生持續的震動,使得鋼軌扣件一段時間後就會磨損。通常,當某一線列車結束運載服務後,軌道管理處會派出維修工程師,以肉眼檢查是否有鬆脫的鋼軌扣件。如果發現有鋼軌扣件鬆脫或是損壞,就必須在列車再次於軌道上行駛之前完成修復。
在列車停駛時段以肉眼檢查軌道是件極為耗時的工作,而人力疲勞也很容易造成疏忽,因此該鐵路系統公司決定部署一套AI邊緣運算解決方案,透過電腦視覺技術來加速進行鋼軌扣件的檢查工作。具體而言,此運輸系統營運商想要一套適用於鋼軌扣件系統的客製化AI推論模型,其物件辨識功能可在列車行駛期間檢視鋼軌扣件,並且在前一班列車離開後,跟下一班列車到達前,完成維修。用於檢視鋼軌扣件的AI推論模型,其邊緣電腦必須具有強大的運算效能、可擴充的視訊資料儲存空間、方便安裝於狹小機箱中的輕巧體積和無風扇設計,以及寬溫操作範圍,並需符合EN 50155軌道應用標準(圖2)。
第一步,是在列車車廂下方安裝高解析度攝影機,讓系統可以在列車載客行駛時,取得鋼軌扣件的即時影像。接著視訊資料會被傳輸到車上的邊緣電腦,以便針對鋼軌扣件的瑕疵進行影像處理和辨識。該鐵路營運商選擇使用體積輕巧的Moxa V2406C系列鐵路電腦,它配備Intel Core i7處理器,可提供充裕的運算能力,以執行完成訓練的AI推論模型。另外,V2406C具備低功耗特性,並可在-40至70℃的寬溫範圍運作。
最後,V2406C支援Intel OpenVINO工具套件,並配有兩個mPCIe插槽,可用於安裝Intel Movidius VPU模組,以加速執行影像辨識運算和邊緣AI推論。藉由將人工肉眼檢查改成在營運時段進行即時AI視覺檢查,該運輸系統的運作效率獲得大幅提升,而且維護成本也顯著下降。
AIoT加強自動駕駛採礦車安全性/生產力
近來,自動駕駛採礦車愈來愈受露天礦場的青睞。這項應用預計將於2023成長三倍,主要的誘因是自動運輸系統可減少安全事故,而且油耗量和運作成本低,可進而提高機器的壽命和整體生產力。藉由採用自動化採礦車,採礦公司不僅能將操作人員移到安全的遠距控制室,同時還能縮短車輛交換和工作交接時間,進而將整體採礦流程最佳化。
地面採礦作業需要依賴重型砂石車,又稱採礦車,來運輸礦場挖掘到的礦石。在採礦作業中,採礦車需要載運巨大而沉重的礦石和其他物質,因此其噸位通常十分龐大。舉例而言,在露天礦場中,某些最大型的採礦車可載運超過400噸的礦石。過去這些巨大的車輛需依賴人類駕駛,在沙漠或山區等危險、嚴苛的室外採礦場中來回穿梭,而且現場常會使用炸藥來開採地表的礦物。除了露天礦場本身極度危險之外,人類駕駛通常需進行12小時或更長時間的輪班,因而導致疲勞駕駛,以及更嚴重的人為疏失風險。近年來,全世界的採礦鉅子開始關注自動駕駛技術和AI,希望能藉此改善工作環境的安全性和生產力(圖3)。
和商用自動駕駛汽車一樣,如欲建立自動駕駛採礦系統,需訓練並部署AI模型,讓採礦車得以安全在崎嶇路面上行駛,並將礦石運出採礦場。
這些自動駕駛採礦車系統(AHS)也依賴電腦視覺和導航技術來辨識路上的障礙物,並且將自動駕駛採礦車移動到指定位置裝載挖掘機採集到的礦石,並將碎石傾倒到指定的位置。藉由安裝某些高效能邊緣電腦連接車隊中每一輛自駕採礦車上的PTZ攝影機和感測器,採礦公司可以從採礦場取得即時的影像資料,並準確定位每一輛卡車的位置。
如MC-1220搭載高效能Intel Core i7處理器,以進行視訊分析並執行自動駕駛任務,它還具備Wi-Fi和蜂巢式連接功能,可將經過處理的現場資料傳送到控制中心。考慮到採礦車需在崎嶇的路面上行駛,所使用的設備需配備堅固的金屬外殼,並具有耐碰撞和抗震的能力。不僅如此,針對嚴苛的室外採礦環境,它還需支援寬溫操作範圍。此外,其具有Class 1 Div. 2安全認證,可在危險的採礦場進行安全、抗爆的運作,也可在40至70℃的溫度範圍內維持可靠的效能。
如前面的案例研究所述,在網路邊緣使用AI功能,有助於改善運作效率,並可降低工業應用的風險和成本。此外,為工業AIoT應用選擇合適的運算平台,還可滿足資料收集、訓練和推論等三個部署階段的獨特處理需求。而在推論階段,還需決定邊緣運算的效能等級(低、中、高),以便選擇最適合的處理器。
藉由審慎評估自身AIoT在每個階段的特殊需求,可藉此選出最適合的邊緣電腦,以便在現場執行穩定可靠的工業AI推論任務。
(本文作者皆任職於Moxa)