以顏色標記繼電器的梯形邏輯將被淘汰

返回工業控制與自動化指南

正如馬克吐溫曾經說過的,關於我去世的消息被大大誇大了。

多年來,人們一直在說可編程邏輯控制器(PLC)的梯形邏輯(LL)已經過時了。他們的觀點是,許多高階語言(其中許多源自 C 語言)將取代 LL。

停機成本高昂

我們先從「底線優先」(BLUF)說起。PLC 是一種工業計算機,常用於各種工業環境中的機器和製程控制。這種自動化是一項至關重要的省錢功能。毫不誇張地說,基於 PLC 的自動化是社會運作的重要基礎設施,包括我們的潔淨水、工廠、海洋工業、暖氣、通風和衛生系統。

這是個好消息,但我們必須要體認到,事情可能會出錯,而且一定會出錯。PLC 及其相關系統會崩潰,我們需要大量的技術人員來恢復這些 PLC 系統的全部功能。

BLUF:停機成本極為高。對於小型企業來說,停機成本每分鐘數百美元,而對於大型複雜流程來說,停機成本則高達每分鐘數萬美元。因此,設備的設計和編程必須便於故障排除和快速維修。否則,就會導致勞動力閒置、公司在客戶心目中的地位(聲譽)受損、材料浪費,需要支付加班費才能恢復目標。

什麼是梯形邏輯(Ladder Logic)?

梯形邏輯是一種圖形化的 PLC 程式設計形式,其悠久的歷史可以追溯到最早的電路。我們可以將梯形邏輯比喻為電報時代就存在的繼電器接點和線圈。使用熟悉的符號可以更輕鬆地切換進出 PLC。使用梯形邏輯,PLC 的內部操作就像 PLC 外部的控制繼電器。

梯形邏輯是 IEC 61131-3 語言之一,該語言還包括功能塊圖、結構化文字、順序功能圖和指令表。大多數 PLC 可以使用多種語言進行程式設計。例如,程式設計師可以用功能塊編寫基於代數的程序,例如計算水箱容量,用順序功能圖編寫狀態機,用梯形邏輯編寫基本 I/O 邏輯。有時,這三種語言可能同時在一台 PLC 上運作。這可能是有利的,因為每種語言的優勢都可用於給定的任務,如本段所述。

技術人員的技能組合是什麼?

要知道,PLC 是工業控制系統中雖小卻十分重要的組成部分。「小部件」這一論點得到了以下事實的支持:與其他所有可能出錯且確實會出錯的部件相比,PLC 軟體故障相對罕見。對於正確調試的機器,程式出現問題的可能性很小,但並非完全沒有;如果故障機器之前已經運行了數月,那麼問題就不在於軟體。

這就引出了一個問題:技術人員是否需要了解並理解梯形圖邏輯?

雖然這確實是一個合理的問題,但它與我們的 BLUF 原則背道而馳。要知道,技術人員已經了解梯形圖邏輯,因為他們接受過維修與 PLC 相關的感測器、執行器、控制繼電器和馬達啟動器的培訓。他們可以按照線路圖快速診斷問題。

梯形邏輯之所以如此普及,是因為技術人員能夠無縫地繼續他們的故障排除工作。他們可以毫不費力地將基於繼電器的思維從 PLC 外部延續到內部。

為了說明這一點,一位曾經在阿拉斯加科迪亞克島工作、負責維護和修理真空管無線電發射器的技術人員有以下的的經驗分享。當時一台機器只有小臥室那麼大,裡面的水冷式真空管大小幾乎相當於 5 加侖的水桶。發射器的控制是基於繼電器的,啟動順序為:水、風扇、燈絲、延遲、偏壓、21.5kV 板,然後是訊號。它還包含一個基於凸輪的三次觸發關斷電路。本文末尾附有一張真空管的圖片,如圖 2 所示。

在工作十年後,技術人員對於如何排除這台龐大發射器的故障使用,這並不容易,因為技術手冊有 3 吋厚,而且線路圖通常長達數頁。於是發展出一種想法,用梯形邏輯格式來呈現控制電路,並加入軌道和梯級。最終,圖表上大約有 120 個梯級。

繪製完成之後,發現這個想法其實很簡單:為什麼不給可以觀察到的繼電器用顏色編碼呢?實行後,如果繼電器的狀態可以直觀地觀察到,該繼電器在系統上使用藍色作為標記,並且添加了圖 1 所示的小文字方塊。

圖 1:將機器運作時仍可以安全狀態的繼電器在系統上使用藍色,並加上標記。

這方法剛被使用時已有成果。以前可能需花上大半天的時間才能看完技術手冊,因為症狀和解決方案之間相隔十幾頁,現在可以很快能判斷及作出行動。

只花了大約 20 分鐘就把「有缺陷的」控制繼電器找出來。過程中,檢查員給出了近乎完美的邏輯解釋。知道已標記藍色繼電器是可以觀察到的,這一點十分重要。他們準確地知道要查看的位置,並能夠將問題隔離到單一梯級,然後透過幾次電壓測量找到了問題所在。

這就是圖形化表示的力量。這也是梯形邏輯的強大之處,因為您的技術人員將使用可觀察的(藍色繼電器的 PLC 電子等效物)來隔離問題。

梯形邏輯的局限性

我們將梯形邏輯定義為符合 IEC 61131-3 標準的 PLC 程式語言。我們也曾粗略地用這個術語來描述梯形邏輯,也就是 PLC 外部的控制繼電器、感測器和致動器。最後,我們引入了一種「藍色繼電器」的思維方式,認為這兩個定義是不可分割的。因此,梯形邏輯將永遠伴隨著我們。只要 PLC 連接到物理世界,它就會一直存在。

請不要誤會,我絕不是在說梯形邏輯是唯一的方法。相反,我的意思是,程式必須像我敘述中那些藍色繼電器那樣編寫。編寫程式碼時務必清晰,並考慮技術人員將如何使用這些資訊來恢復機器的正常運作。當我們考慮您的程式時間相對於未來系統停機時間時,這一點尤其重要。

如前所述,功能塊圖對於模擬訊號非常有用。例如,考慮一個具有 4-20mA 輸出的儲能水平位指示器(Tank Level Indicator,TLI)。我認為,與用梯形圖編寫的相同程式相比,功能塊圖版本更容易閱讀和解釋。當我們考慮即時偵錯資訊時,尤其如此,因為值顯示在區塊輸入和輸出旁邊。

同樣,順序功能圖對於基於狀態的機器也很有用。在某些情況下,它們更容易閱讀。對於具有許多狀態的程序尤其如此,因為順序功能圖提供了緊湊的表示。這比梯形圖更具優勢,因為在梯形圖中,即使是簡單的狀態也會跨越多個梯級。

技術提示:對於類比訊號,可以考慮進行中間轉換,將數值轉換為人類可讀的形式。例如,將 ADC 值轉換為浮點型,取值範圍從 4.0 到 20.0。然後將其轉換為人類可讀的值,例如水箱高度。這樣一來,技術人員就可以將製程儀表物理插入感測器迴路,然後驗證 PLC 值是否與儀表讀數相符。這是一種「藍色繼電器」解決方案,可快速驗證感測器迴路和感測器是否按預期運作。對於大多數 PLC 來說,功能塊圖是首選方法,因為即時偵錯值會顯示在對應區塊的旁邊。此外,它不需要中間記憶體位置,例如使用梯形圖時。

如果不提及使用者定義功能塊(User Defined Function Block,UDFB),任何討論都是不完整的。這是一把雙刃劍。一方面,分層設計使程式更易於閱讀;另一方面,過多的抽象會使故障排除過程變得複雜。

結論

梯形邏輯涵蓋了 PLC 內部的代碼以及 PLC 外部錯綜複雜的控制繼電器和現場設備。毫無疑問,技術人員需要對 PLC 所依賴的實體環境進行故障排除。梯形邏輯的概念已融入此過程。我們最好在編寫 PLC 程式時使用指示牌,以便於理解設備運作並快速恢復。

在很多情況下,梯形邏輯及使用藍色繼電器的方法讓您成功進行故障排除。

事實上,我的意見並不重要。相反,重要的是,經過相關培訓的技術人員能夠快速診斷並將機器恢復到完全運作狀態。考慮到每分鐘 100 到 10,000 美元甚至更高的成本,這一點值得考慮。

圖2:正在重建的一批真空管。F1086 型真空管在照片前景中突出地展示。

返回工業控制與自動化指南