工業4.0(Industry 4.0)製造工廠的下一波革命,將會提高彈性與降低成本,但隨之而來的安全議題必須受到重視。而功能安全(Functional Safety)是整體安全的一部分,象徵用戶的信心,可確保設備在要求正常運行時能夠執行其安全機能,本文將探討功能安全對工業4.0帶來哪一些影響。
工業4.0(Industry 4.0)製造工廠的下一波革命,將會提高彈性與降低成本,但隨之而來的安全議題必須受到重視。而功能安全(Functional Safety)是整體安全的一部分,象徵用戶的信心,可確保設備在要求正常運行時能夠執行其安全機能,本文將探討功能安全對工業4.0帶來哪一些影響。
功能安全與聯網
一個功能安全系統通常包含感測器、邏輯、輸出等子系統。這三個元素建構出一項安全機能,以安全機能作為主體,依附不同的安全完整性等級(Safety Integrity Levels, SIL)、每小時危險失效率(PFH)、安全失效比率(SFF)以及硬體故障裕度(HFT)等要求。
此外,這些子系統之間的通訊也具有安全評等。IEC 61508針對功能安全的要求,規範了IEC 61784-3工業通訊Fieldbus標準,其中包含應付隨機與系統性誤差來源的相關措施。
一般接受的誤差預算(Error Budget),是每小時配置最大容許失效機率(圖1),如表1所示。這個模型經過多項修正,以紅色顯示每個介面配置1%的預算。如果安全機能為SIL 3,則最大容許PFH為10-7/h,以1%的比例配置到介面後就成為10-9/h。
整體而言,必須考量表1列出和通訊相關的危險,這些都已納入相關標準中,包括IEC 61784、EN 50159以及IEC 62280.11。
表1中的每一列,必須以至少一種防禦機制來應付。防禦機制的進一步說明,已列於IEC 61784-39以及IEC 62280-1/EN 50159。舉例來說,要解決資料毀損問題,可運用循環冗餘檢查(CRC)與漢明碼(Hamming),根據預期的誤碼率(BER)、SIL等級要求,以及每小時傳送位元量,來對資料進行編碼處理。
由於工業環境會讓各項要求更為複雜,因此倘若安全與非安全資料能在同一個網路上進行通訊,會是相當有利的做法。
IEC 61508-2:2010提供兩種選項。一為白頻道(White Channel)法,整個通訊頻道發展成符合IEC 61508標準;二是黑頻道(Black Channel)法,沒有任何預先設定,包括每個安全裝置以特定功能層來處理安全任務,以及通訊頻道的效能方面都沒有先做規畫。
安全分層運用一整套防禦機制來應付各項威脅,這些防禦機制強化在底層Fieldbus標準運行的防禦功能,包括除了底層通訊協定中的CRC,還會用另一個CRC用來偵測位元毀損。黑頻道法遠比白頻道更為常見,其中一個例子就是PROFIsafe,這個安全分層置於PROFIBUS或PROFINET之上。
功能安全與對外防禦
有一件事很有趣,對內維安(Safety)與對外防禦(Security)這兩個英文字在許多語言中只有一個字(安全)來代表。然而,在工業領域,這兩個字涵蓋不同的考量,有時兩方面的考量因素也會相互衝突。
對內維安的其中一項定義,是避免因非刻意動作造成傷害,而對外防禦,相對應地則是避免因刻意行為所造成的傷害。兩個字的共同點,包括對內維安與對外防禦都必須從最初架構層面就納入考量,否則就很難在日後加入到系統內。
而兩者之所以會相互衝突,因為面對非預期事件,典型的維安反應是關閉系統,而許多駭客可能利用這項反應發動阻斷服務攻擊,而對外防禦要對付的卻正是這類事件。對外防禦功能通常包含密碼與身分驗證,但如果有安全無虞的使用者或是管理員連續輸入三次密碼錯誤,是否會把他們擋在門外,反而導致拖慢維安反應的速度呢?
2010年的IEC 61508第二版納入了關閉所有安全要求,標準中提及安全必須妥善考量與參照,包括尚未釋出的IEC 62443系列標準。此外,目前還有各項標準尚在編撰中,規範包括機器以及核能領域中功能安全與防禦之間的關係。
類似IEC 61508中的SIL等級,IEC 62443定義的安全等級(SL)也分成1到4級。符合SL 1的系統必須抵禦隨意路過人士,而符合SL 4等級的系統,則必須能抵禦國家級機構支持的駭客攻擊。不過,SIL與SL之間沒有直接的對應關係。
IEC 62443規範七項基礎要求(FR),連同IEC 62443-4-2,為各界提供所需的指導,界定在特定SL等級要如何達成每種FR。這裡的七項FR包括:身分與驗證控制(IAC)、使用控制(UC)、系統完整性(SI)、資料機密性(DC)、受限制資料流(RDF)、及時回應事件(TRE),以及資源可用性(RA)。
SL 1可用一個安全向量來代表(1, 1, 1, 1, 1, 1, 1),向量中每個值對應上述七個FR。由於SL 1代表隨意的攻擊,似乎對維安應用的要求最低,這裡則必須考量可預見的濫用。有人可能會認為許多SIL>1維安應用適合的向量為(N1, N2, N3, 1, 1, N6, 1),這方面各界公認資料機密性、受限制資料流以及可用性等方面,屬於工業功能安全應用方面的有限考量因素。然而,不論2、3或是4等這些SIL等級中,N1、N2、N3以及N6之間並沒有明確的關連性。
這裡有一項重點務須牢記,儘管不是所有安全系統都有功能安全方面的要求,但所有與安全有關的系統都必須將其安全需求納入考量。
功能安全與機器人
ISO 10218規範了包括協作機器人在內各種工業機器人的安全要求,涵蓋包括安全煞停(Safe Stopping)、訓練、速度、分隔監控、還有功率和力道設限等方面。ISO 10218-1:2011第5.4.2條款則規定控制系統中與安全相關的零件,其設計須符合ISO 13849-1:2006所述的PL= D Category 3,或是IEC 62061:2005對SIL 2所規範的硬體故障裕度(HFT)。在實務上,這意謂著至少要用一個雙頻道安全系統,診斷覆蓋率每個頻道至少要達到60%。兩項標準(ISO 13849與IEC 62061)皆遵循IEC 61508-3軟體方面的要求。
自動導向車(AGV)在ISO 10218標準中並沒有詳盡規範,而ISO 26262汽車標準則詳盡規範無人車,工業用途是汽車的一種特別應用情境,其範疇遠遠來得更受限制。機械方面的規範有納入自動導向車,加上目前尚缺乏特定的標準,因此一般都沿用IEC 61508相關的規定。
固定式機器人採用的網路技術都是乙太網路,而自動導向車則是採用無線網路,這類網路必然面臨更多維安與防禦方面的要求。
功能安全與軟體
不論是因應維安或防禦,建置高品質軟體所面對的細部要求幾乎都相同。舉例來說,程式開發工程師造成的一項軟體錯誤,當出現特定的情況組合導致該錯誤暴露,就會導致系統失效。
其實很難評估這種狀況的機率,有些功能安全標準認為其機率應認定為100%。然而,合理的做法應是99.99%無臭蟲(Bug Free)的程式通常不會造成安全問題,而駭客則會試著確保總會遇到0.01%的狀況。因此就安全而言,消弭系統性誤差和功能安全一樣重要。然而,要達到100%完美安全的軟體,卻也得面臨許多嚴重的安全問題。
在以往,許多安全系統不允許使用軟體,因為由於軟體會呈現許多不同的狀態,故被視為天生就無法測試。但如今許多新標準提供一種生命週期模型,依循該模型就能提出安全主張(Claim for Safety),因為這些標準提倡的技巧在以往確實能建構許多安全系統。軟體本身就極具吸引力,因為透過軟體就能把通用型機器轉變成特殊用途機器(圖2)。然而,這樣的彈性本身也是其中一項弱點。
包括ESDA-31216在內的文件已經列出許多IEC 61508的技巧來因應各種工業安全要求。依循這樣的程序,就能留下工作結果的文書記錄,用來展示確實達到安全目標。
這些技巧包括進行設計審核、建立一套編碼標準、規畫工具的使用、單元層級的驗證、要求的可追蹤性、獨立驗證,以及評測等。雖然軟體不會磨損,但運行的硬體總是會故障,軟體必須考量到這點。
對於機械與機器人,可運用像ISO 13849裡的Cat 3或Cat 4冗餘架構,藉以減少在積體電路(IC)層面建置診斷機制的需求,但這種做法卻會提高對多種功能軟體的需求。
功能安全與積體電路
IC對於智慧系統至關重要。IC能提供許多途徑來追蹤容器內的多個項目,而不是只能追蹤整個容器,亦即追蹤機器人各手臂的位置,而不是只能追蹤整部機器人,另外還能用來追蹤低價值機器的健康狀態,並且處理資料,然後傳送到雲端,讓這些資料變成有用的資訊。許多新推出的馬達控制IC還能提高馬達的效率,並延長電池續航力。
IC提供運算一個大腦,尤其是在網路邊界,產品搭載的智慧大腦必須小巧且低功耗。另外,它們還提供感測器技術,像是運用雷達、雷射、磁力、攝影機或超音波等技巧。它們能量測速度與位置,而像是異向性磁電阻(AMR)這類新技術的感測器,無須外部機器零件就能判斷速度與位置。許多IC還建置網路中的實體介面與媒體存取控制(MAC)分層。藉由無線通訊,這樣的建置功能可全部做在一顆IC內。
相似的狀況是,有些IC能支援具備物理不可仿製功能(PUF)的安全機制、譯密加速器,以及竄改偵測機制。隨著整合度的攀升,許多以往屬於系統層級的要求,如今已演變成IC層級的要求。
然而,在面對當前工業級功能安全標準,甚至較少的防禦標準之下,IC的能力仍嫌不足。在汽車領域,草擬中的ISO 26262-11預計在2018年釋出,該標準就是一項極佳的資源,對於瞄準工業應用的IC也相當實用。
在第二版IEC 61508方面,特定應用積體電路(ASIC)生命週期模型幾乎和軟體模型相同。事實上,像Verilog這樣的HDL程式碼究竟是軟體或代表著硬體,至今仍是一項有趣的爭論。
IEC 61508-2:2010的附錄E描述晶片內部冗餘性的相關要求,但範圍僅局限於IC,在應用方面並沒有涵蓋多元冗餘或是類比與混合訊號方面的IC。IEC 61508-2:2010的附錄敘述詳盡且極為實用,文中列舉IC研發過程應採取的措施以避免各種系統性誤差。這些需求對應至每種SIL,但範圍僅局限於數位電路,對於類比或混合訊號IC並沒有特別的指導。
IC的高整合度,既是優勢也是劣勢。IC內個別電晶體本身遠比單一元件來得可靠,IC最不可靠的部分通常是針腳。舉例來說,若以Siemens SN 29500標準進行可靠度預測,一顆內含50萬電晶體的IC,推算其非特(FIT)故障率為70,但若電晶體數量增加十倍到500萬,FIT故障率就會提高到80。若使用兩顆各含50萬個電晶體的IC,各自的FIT為70,加總為140。採用高密度IC的做法,除了能讓FIT從140降至80外,還能節省電路板空間、電路板線路、外部被動元件,IC內建的天線也能做得更小,進而減少電磁干擾的問題。
而劣勢部分,則是面對結構複雜的IC,要判斷失效模式會變得極為困難。簡單是安全的好友,兩個單獨封裝的微控制器(MCU),遠比一顆內含兩個微控制器的IC來得更為簡單。IEC 61508-2:2010的附錄E在這方面提供一些指導。然而,在足夠獨立性與最安全的標準方面,一個低於10%的β(兩個頻道同一時間因相同理由失效)水準的數據就被認為是極佳的表現。
IC供應商可協助其維安與防禦方案的供應商,向他們提供有認證的元件、安全手冊或安全資料表,支援包括已釋出的零件、晶片內建硬體加速器、晶片內部與晶片外部診斷機制,以及各種方法區隔關鍵與非關鍵軟體(包括攸關維安與防禦)(圖3)。這些維安與防禦功能必須從一開始就納入設計。倘若在IC設計完成後才試著加入維安與安全功能,必會徒增系統複雜度及額外的元件。
要針對用在功能安全系統的應用著手研發IC,可採取許多不同選項。在標準中,並沒有要求僅採用符合規範的IC,而是要求模組或系統本身的設計須合乎規定,且其選用的IC必須適合用在系統。撰寫獨立評測的安全手冊,是滿足這方面要求的其中一種手段,但並非唯一的選項。
目前可行的選項包括:選項1-開發完全符合IEC 61508的IC,並附上外部評測與安全手冊;選項2-開發一顆符合IEC 61508的IC,沒有進行外部評測,但有提供安全手冊;選項3-根據半導體廠商標準研發程序開發IC,並釋出安全資料表;選項4-根據半導體廠商標準流程著手開發IC。
這裡必須注意的是,對於並未根據IEC 61508標準所研發的元件,安全手冊應命名為安全資料表或類似名稱,以避免混淆。兩者的內容與格式可能相近。
選項1是對於半導體製造商而言最昂貴的選項,但卻能為模組或系統設計者提供最大的利益。一旦有這樣的元件,面對安全概念中的應用,在系統中採用這種IC,不僅能降低遭遇問題的風險,還能省下外部評測模組與系統的作業。針對SIL 2安全功能須額外執行的設計工作量可能達20%之多。如果半導體製造商沒有採取嚴謹的研發流程,額外的設計工作量可能還會更多。
選項2能省下外部評測的成本,但除此之外,其他的影響則是一樣。如果客戶準備將模組/系統送交外部進行認證,而IC在整個系統占有相當高的比重,那麼就適合採用這個選項。
最適合採用選項3的客戶,包括已釋出IC成品並提供安全資料表的廠商,藉以讓模組或系統設計者能獲得所需的額外資訊,推動更高層面的安全設計。這類資訊包括採用實際研發流程的細節、IC的FIT資料、任何診斷的細節,以及製造廠房通過ISO 9001認證的證明。
選項4是研發IC最常用的方法。運用這樣的元件開發安全模組或系統,除了需要額外的元件,對於模組/系統設計而言也相當昂貴,因為元件並沒有足夠的診斷機制來支援雙頻道架構,表現不如在單頻道架構。
此外,這類元件診斷測試的間隔通常未達到最佳水準,以致無法在失效項目出錯時立即辨識,這勢必會影響系統可用度。如果沒有安全資料表,模組/系統設計者仍須做保守的假設,將IC視為一個黑盒子。而這樣的做法會壓低可靠度方面的數據。
為簡化功能安全的實作,IC製造商可能希望自行解釋IEC 61508。亞德諾(ADI)內部制定的ADI61508即是針對IC研發所制定的IEC 61508衍生版標準。IEC 61508的所有七大部分都濃縮到一份文件,與IC無關的章節則刪除,其餘與IC有關的部分則略做調整。
不論採用何種系統層級標準,根據IEC 61508標準研發的IC,除了汽車方面的ISO 26252標準外,都可用來針對汽車應用開發專屬的許多與軟體。
為工業4.0挹注可觀助力
以IEC 61508為基礎衍生的各種功能安全標準,相當完善地涵蓋一般工業和工業4.0。其中,包括軟體、硬體、聯網、安全以及機器人等領域的標準。然而,目前這些資訊散布在各項標準,而工業4.0本身一些獨特功能仍持續變動,以配合工業4.0所需要的彈性。
針對嶄新的世界,可能必須根據幾項基本安全標準為基礎略做修訂,為工業4.0規畫單一專屬標準,也許可稱之為安全4.0(Safety 4.0)或智慧安全(Smart Safety)。類似的狀況是,IEC 61508標準需要更多IC相關資訊,才能展現與達成足夠的安全。展望未來,工業4.0面臨許多機會與挑戰,唯有跨過這些障礙,才能看到光明的未來。
功能安全能為工業4.0挹注可觀助力,不光是因為安全是未來工廠的關鍵要素,更是因為功能安全提供許多技巧,讓各界品質更高的可靠度、診斷機制、復原能力以及冗餘性。
(本文作者任職於亞德諾)