
現(xiàn)代的PLCs可以通過多種方式編程,從底層的階梯邏輯到編程語言。另一種方法是狀態(tài)邏輯,一種非常的編程語言,它設計基于狀態(tài)轉換圖的PLCs。目前,大多數PLC系統(tǒng)都遵循IEC 61131/3控制系統(tǒng)編程標準,定義了5種語言:梯形圖(LD)、結構化文本(ST)、函數框圖(FBD)、指令列表(IL)和順序流程圖(SFC)。它們初是在汽車工業(yè)中發(fā)展起來的,它提供了靈活、耐用、易于編程的控制器來代替硬連接的繼電器、定時器和序列器。自那以后,它們被廣泛采用為適合惡劣環(huán)境的高可靠性自動化控制器。PLC是一個“硬”實時系統(tǒng)的例子,因為必須在有限的時間內對輸入條件產生輸出結果,否則會導致意外的操作。PLC內部由處理器的CPU,并帶有外部I/O口,擴展的I/O接口地址和存儲器組成部分。CPU的核心是一個或多個累加器組成,它們具有邏輯的數算能力,并能讀取程序存儲器的內容,通過計算后去驅動相應的存儲器和l/O口,l/O口將內部累加器和外部的輸入和輸系統(tǒng)連接起來,并將相關的數據存入程序存儲器或數據存儲器中,存儲器可以將l/O口輸入的數據存入存儲器中,并在工作時調轉到累加器和l/O接口上。許多早期的PLCs并沒有相應的編程終端,它們能夠對邏輯進行圖形化的表示,因此,邏輯在某種形式的布爾格式中表示為一系列邏輯表達式,類似于布爾代數。隨著編程終端的不斷發(fā)展,基于上述原因的梯形邏輯變得越來越常見,因為它是一種常見的用于機電控制面板的格式。新的格式,如狀態(tài)邏輯和功能塊(類似于使用數字集成邏輯電路時所描述的邏輯),但它們仍然不像梯形邏輯那樣受歡迎。這其中的一個主要原因是,PLCs在可預測和重復序列中解決了邏輯問題,而梯形邏輯允許程序員(編寫邏輯的人)更容易地看到邏輯序列的時間問題,而不是其他格式的問題。










