紀(jì)建光
(潔創(chuàng)貿(mào)易(上海)有限公司,上海 201107)
可編程邏輯控制器(Programmable Logic Controller,PLC)作為可靠的控制中樞,被廣泛地應(yīng)用在各大設(shè)備系統(tǒng)中。PLC 與各個傳感器之間的數(shù)據(jù)交互決定指令執(zhí)行,因此數(shù)據(jù)傳輸?shù)目煽啃灾陵P(guān)重要。
本文案例源于一起客戶實例:一濃度監(jiān)控系統(tǒng)偶發(fā)通信故障而沒有被及時關(guān)注,造成大批產(chǎn)品存在不良風(fēng)險。由于該產(chǎn)品不能通過無損檢測判定好壞,客戶損失巨大。技術(shù)團隊?wèi)?yīng)客戶要求進行系統(tǒng)的可靠性改良設(shè)計。
故障根源最終被確定為:傳感器端金屬碎屑掉入以太網(wǎng)口,引起不同觸點之間的短路,故而發(fā)生通信故障。硬件故障是難以徹底避免的,系統(tǒng)可靠性不僅要著眼于降低故障發(fā)生率,也要考慮故障發(fā)生后如何減少損失。
原系統(tǒng)數(shù)據(jù)傳輸建立在威綸HMI 的背景資料傳輸功能上,鏈路結(jié)構(gòu)如圖1 所示,沒有采用儀表到PLC 直連的模擬通信方式。一方面是考慮到數(shù)字通信的精度比模擬傳輸高,不存在數(shù)模轉(zhuǎn)換損失;另一方面是為了節(jié)省PLC 模擬采集模塊的硬件支出??梢钥闯觯摲桨竿瑫r依賴Modbus TCP 通信和RS-422 通信,通信鏈路過長是其風(fēng)險點之一。此次故障源頭即為Modbus TCP 通信鏈路起點。
圖1 原系統(tǒng)數(shù)據(jù)采集鏈路
PLC 以固定頻率到指定寄存器讀取數(shù)據(jù),但并不對數(shù)據(jù)進行有效性甄別。原程序指定寄存器為掉電保持型,異常發(fā)生后的數(shù)個工作日內(nèi),該寄存器保存的數(shù)據(jù)始終為故障發(fā)生前的最后一個數(shù)據(jù)。該數(shù)據(jù)符合正常區(qū)間,因而沒有觸發(fā)PLC 端報警。從這一點看,有必要將該寄存器設(shè)置到非掉電保持區(qū),并進行一定頻率的刷新檢驗。
觸摸屏偵測到通信異常后,彈窗提示“PLC no response”,但沒有被及時關(guān)注。一方面是因為設(shè)置了屏保;另一方面,系統(tǒng)自帶的提示信息為英文顯示,作業(yè)者不能馬上關(guān)聯(lián)到是哪一段出了問題。彈窗信息被操作者確認后消失,即便報警源仍然存在。從這些教訓(xùn)來看,將觸摸屏內(nèi)部報警源顯性化,讓作業(yè)者及時關(guān)注到告警信息,是減小風(fēng)險損失的有效途徑。
問題產(chǎn)品的追溯是本案事故處理的難點,原因是該事件沒有被注冊到事件登錄,即沒有進入報警日志。
通常,報警日志記錄事件的發(fā)生時間,但不會記錄事件的結(jié)束時間。這對于事件發(fā)生的時長判定會造成困難。
圍繞故障發(fā)生后有報警、不停工(替代方案切換)、可精確追溯的原則,可靠性設(shè)計從兩方面著手:一方面是通過技術(shù)冗余來增加系統(tǒng)可正常運行的寬裕度;另一方面是一旦故障發(fā)生,盡可能為善后處理提供支持。
冗余技術(shù)是工控系統(tǒng)普遍采用的方式。冗余包括硬件冗余和軟件冗余[1]。硬件冗余主要是指增加同等功能的部件作為備用,軟件冗余是通過軟件程序?qū)崿F(xiàn)主備系統(tǒng)的數(shù)據(jù)同步和切換[2]。軟、硬件冗余都會增加系統(tǒng)支出和工作負荷,設(shè)計的時候需要考慮成本效用比。
2.1.1 硬件冗余的選擇和構(gòu)建
根據(jù)既有的硬件平臺,搭建一條從傳感器到PLC 直連的模擬通道,是最具性價比的方案,所需的硬件開支僅為一個PLC 模擬輸入模塊FX3U-4AP-ADP,如圖2 所示。傳感器到PLC 的距離超過25 m,考慮到工廠復(fù)雜的電氣環(huán)境,采用屏蔽線連接,輸入模式切換到4~20 mA[3]。
圖2 改良后的數(shù)據(jù)采集鏈路
2.1.2 冗余數(shù)據(jù)分析及決策
通過上述硬件冗余,PLC 同時得到兩路獨立通道的數(shù)據(jù)。這時需要協(xié)調(diào)處理3 個問題。
(1)如何甄別通道各自的數(shù)據(jù)是正常的。這里包括兩個層次:其一,數(shù)據(jù)通信是否還在運行,即是否存在數(shù)據(jù)刷新呆滯;其二,滿足刷新頻率的數(shù)據(jù)在多大程度上有精度損失,即數(shù)據(jù)失真是否可接受。
在整個系統(tǒng)中,被測量的參數(shù)是動態(tài)變化的,PLC 采集到的數(shù)據(jù)也隨著變化。數(shù)據(jù)分辨率越高,其末尾波動越大。濃度數(shù)據(jù)以雙精度浮點數(shù)表示,精確到小數(shù)點后面6 位。操作中發(fā)現(xiàn),小數(shù)點后面第二位就會在相鄰掃描周期內(nèi)發(fā)生變化。因此,在一定掃描周期數(shù)內(nèi),可以以同一通道的數(shù)據(jù)是否發(fā)生變化作為該通道數(shù)據(jù)是否正常刷新的判據(jù)[4]。
兩個通道傳遞的是同一個數(shù)據(jù)源,但在同一個掃描周期內(nèi)采集的數(shù)據(jù)可能是不同的。至少有兩個原因會造成這種差異:其一,Modbus TCP 和RS-422 屬于數(shù)字通信方式,不存在精度損失的問題[5],而模擬通道的數(shù)模轉(zhuǎn)換精度損失不可避免[6];其二,由于采樣頻率不同,同一掃描周期內(nèi)得到的兩個通道的數(shù)據(jù)可能來自于不同的瞬間時點[7]。比較同一掃描周期內(nèi)的兩個數(shù)據(jù),將其差值限定在一定的范圍內(nèi),一旦超過該范圍,即可認定至少有一個通道可能存在問題。
(2)在兩種模式都正常的情況下,應(yīng)該選擇哪一個通道的數(shù)據(jù)作為PLC 運行決策的條件。從采樣周期來看,模擬量通道的采樣率要高于數(shù)字通信通道[8](一般PLC 的掃描周期在100 ms 以內(nèi),而本案的數(shù)字通道傳輸周期設(shè)定為1 s),即模擬量數(shù)據(jù)更具及時性。但是濃度數(shù)據(jù)本身是一個緩變量,1 Hz 的采樣率足以應(yīng)對實際變化,且數(shù)字通信不存在精度損失問題,在通信都正常的情況下宜優(yōu)先采用數(shù)字通道所得數(shù)據(jù)。
(3)當(dāng)一個通道發(fā)生異常時,如何做通道切換決策。遵循有效性優(yōu)先、兼顧準(zhǔn)確性的原則,通道切換的決策流程如圖3 所示。
圖3 通道決策流程圖
2.1.3 參數(shù)優(yōu)化
數(shù)據(jù)有效性分析過程涉及兩個參數(shù)的設(shè)定,即:
(1)在判定數(shù)據(jù)刷新有效時,同一通道的數(shù)據(jù)在多少個相鄰掃描周期內(nèi)未見變化才被認定為刷新失效;
(2)在同一個PLC 掃描周期內(nèi),兩路通信所得數(shù)據(jù)允許存在多大的差異。
上面兩個容許區(qū)間,若定義太小會引起頻繁報警,若定義太大會降低故障偵測的敏感度,因此需要通過一定的數(shù)據(jù)收集來定義合理的區(qū)間范圍。在24 小時內(nèi)抽樣了144 個數(shù)據(jù),通過統(tǒng)計軟件分析,得到模擬量有效刷新所需的掃描周期數(shù),結(jié)果如圖4 所示。
圖4 模擬通道有效刷新周期數(shù)統(tǒng)計
控制限按照“μ+3σ”計算取整得5。用同樣的方法可推算出數(shù)字量有效刷新周期數(shù)界限為5;同周期內(nèi)兩通道讀數(shù)合理差異界限為0.35。上述參數(shù)基于有限的觀測值得出,需要根據(jù)后續(xù)應(yīng)用情況進行適當(dāng)調(diào)整。
冗余方案提高了系統(tǒng)的容錯性,倘若故障依舊無法避免,應(yīng)盡快通過醒目的報警提示作業(yè)者,盡早排除隱患,減少風(fēng)險產(chǎn)品。
報警源可分為外部報警源和內(nèi)部報警源。外部報警源通常來自傳感器信號,如溫度過高,壓力過大,電流過載等[9],這些都不容易被設(shè)計者忽略。然而,PLC 和觸摸屏本身也可能發(fā)生故障,這些內(nèi)部報警通常會被認為是小概率事件因而缺少關(guān)注。誠然,這些故障也會有提示,比如PLC 的“error”指示燈,觸摸屏的彈窗提示等,但僅有視覺提示,并不容易被操作者發(fā)現(xiàn)?,F(xiàn)代工廠作業(yè)人員少,而PLC通常被安裝在密閉的電氣柜里面,觸摸屏長期工作時會被設(shè)計成屏保狀態(tài)。將這些報警源通過PLC程序鎖定,并顯性化到設(shè)備報警燈塔和蜂鳴器[10],從而吸引作業(yè)人員注意,是十分必要的。
編程手冊會提供這些狀態(tài)位的地址清單。根據(jù)經(jīng)驗和系統(tǒng)需要,本案將如下狀態(tài)位列入PLC 掃描范圍,并適時關(guān)聯(lián)報警燈塔及蜂鳴器。內(nèi)部報警源掃描清單如表1 所示。
表1 內(nèi)部報警源掃描清單
故障發(fā)生后的產(chǎn)品通常需要被分揀出來,并通過額外的質(zhì)量評價手段來確定是否可以交付。精確追溯風(fēng)險產(chǎn)品是降低故障成本的有效方法。在掃碼技術(shù)廣泛應(yīng)用的今天,只要確定故障發(fā)生時間范圍,即可確定風(fēng)險產(chǎn)品范圍。
不同于以“高低電平切換”為依據(jù)生成單條日志,改良系統(tǒng)同時掃描狀態(tài)位上升沿和下降沿,成對生成日志記錄,如圖5 所示。這樣,不僅可以記錄故障發(fā)生時間,還可以計算故障存續(xù)時長,故障存續(xù)區(qū)間即為需要管控的風(fēng)險區(qū)間。
圖5 注冊事件日志記錄
報警或者停機可以及時提示人為介入,而日志記錄仍然是必要的,它可以幫助管理者和客戶更有效地管控工藝,避免作業(yè)者的道德風(fēng)險。
上述改良方案在北京威訊聯(lián)合半導(dǎo)體有限公司進行了實測。評估期內(nèi)的兩次異常都被及時關(guān)注并解除,通過日志記錄迅速鎖定了風(fēng)險產(chǎn)品范圍。
上述可靠性改良方案對緩變量的低頻數(shù)據(jù)采集有參考意義,比如濃度、溫度、濕度等采樣率不超過1 Hz 的數(shù)據(jù)傳輸應(yīng)用。方案涉及了大量比較、容錯、選擇運算,對于高頻數(shù)據(jù)采集系統(tǒng)如DCS(Data Collect System)可能存在資源消耗過多的問題。在這種情況下,進一步對方案進行簡化梳理是必要的,以求得可靠性和效率的平衡,這是個值得進一步討論的話題。