1、梯形圖
梯形圖(LD)是PLC的一種最典型的也是最基本的編程方式,它沿用了繼電器的觸點、線圈、串聯、并聯等術語和圖形符號,并增加了新的功能和邏輯符號,具有直觀、易學、好理解的特點,成為使用最為廣泛的編程方式,適用于順序邏輯控制、離散量控制、定時/計數控制等。
梯形圖一般由2條母線和指令構成的梯級(Rung)或階梯組成,每條梯級包括輸入指令和輸出指令。輸入指令和左母線相接,輸 出指令最后連接右母線。梯形圖以結束語句(END)表示程序結束。典型的梯形圖如圖所示,這是一個延時通邏輯,當開關Swith_1閉合后10s,綠燈Green_Light亮。

2、結構化文本
結構化文本(ST)是一種類似于高級語言如BASIC的編程語言,能很方便地建立、編輯修改和實現比較復雜的控制算法。結構化文本包括賦值、條件、循環、重復、跳出等基本語句。特別是在數據處理、計算、存儲、判斷、優化算法等應用場合,以及涉及多種數據類型處理的應用中使用廣泛。
上圖的梯形圖可以寫成結構化文本語句如下圖所示。

3、功能塊圖
功能塊圖(FBD)是一種可視化的編程語言,使用類似布爾代數的圖形邏輯符號來表示控制邏輯。 同時引用儀表控制回路組態方式,用功能塊之間的連接來建立程序結構,并放在表單中。每個功能塊都定義控制策略并連接輸入端和輸出端來實現過程控制。
ContolLogix系統有豐富的功能塊指令,適用于有數字電路基礎和過程控制經驗的技術人員使用。典型的功能塊控制圖如圖所示,這是一個帶復位標簽的延時通功能塊圖,定時預置值為500ms。

4、順序功能圖
順序功能圖(SFC)也是一種圖形化的編程語言,它將工作流程劃分為步(Step),每一步都對應一個控制任務,這個控制任務包含實現控制的程序代碼。該程序既可以是LD,也可以是ST或SFC。步用一個方框和一個步號表示,步與步之間的轉換條件可以是一個條件,也可以是一段程序,用水平線和轉換號表示。SFC有單序列的順序結構、選擇分支、并行分支和循環等4種結構。通過顯示這些步和轉換條件,可以隨時掌握控制過程的狀態。
SFC采用簡單直觀的圖形符號來形象地表示和描述整個控制的過程、功能和特性,將整個邏輯分成容易處理的步和轉換條件,簡單易學、設計周期短、規律性強。整個程序結構清晰,可讀和可維護性好,特別適合于熟悉工藝的編程人員使用。一個有選擇分支的順序功能塊圖如圖所示,圖中,程序從步3開始執行,執行完成后進入選擇分支,從步7、步12和步13順序判斷轉換條件來選擇一個分支執行。如果第一個轉換條件滿足,選擇執行步7;如果第2個轉換條件滿足,執行步12;如果第3個轉換條件滿足,執行步13。

5、編程語言選擇
ControlLogix控制器支持的4種編程語言,除非特別指定,大多數技術人員會根據自己的喜好或掌握熟練程度來選擇。實際上,每一種編程語言各有不同的特點和應用側重點,包括指令集、編程風格、在線監視和注釋等,要根據應用的具體情況和要求來綜合選定,主要考慮因素見表。
