在PLC中有多種程序設計語言,它們是梯形圖語言、布爾助記符語言、功能表圖語言、功能模塊圖語言及結構化語句描述語言等。梯形圖語言和布爾助記符語言是基本程序設計語言,它通常由一系列指令組成,用這些指令可以完成大多數簡單的控制功能,例如,代替繼電器、計數器、計時器完成順序控制和邏輯控制等,通過擴展或增強指令集,它們也能執行其它的基本操作。功能表圖語言和語句描述語言是高級的程序設計語言,它可根據需要去執行更有效的操作,例如,模擬量的控制,數據的操縱,報表的報印和其他基本程序設計語言無法完成的功能。功能模塊圖語言采用功能模塊圖的形式,通過軟連接的方式完成所要求的控制功能,它不僅在PLC中得到了廣泛的應用,在集散控制系統的編程和組態時也常常被采用,由于它具有連接方便、操作簡單、易于掌握等特點,為廣大工程設計和應用人員所喜愛。
根據PLC應用范圍,程序設計語言可以組合使用,常用的程序設計語言是:梯形圖程序設計語言;布爾助記符程序設計語言(語句表);功能表圖程序設計語言;功能模塊圖程序設計語言;結構化語句描述程序設計語言;梯形圖與結構化語句描述程序設計語言;布爾助記符與功能表圖程序設計語言;布爾助記符與結構化語句描述程序設計語言。
1、梯形圖(Ladder Diagram)
程序設計語言梯形圖程序設計語言是用梯形圖的圖形符號來描述程序的一種程序設計語言。采用梯形圖程序設計語言,程序采用梯形圖的形式描述。這種程序設計語言采用因果關系來描述事件發生的條件和結果。每個梯級是一個因果關系。在梯級中,描述事件發生的條件表示在左面,事件發生的結果表示在后面。梯形圖程序設計語言是最常用的一種程序設計語言。它來源于繼電器邏輯控制系統的描述。
在工業過程控制領域,電氣技術人員對繼電器邏輯控制技術較為熟悉,因此,由這種邏輯控制技術發展而來的梯形圖受到了歡迎,并得到了廣泛的應用。梯形圖程序設計語言的特點是:(1)與電氣操作原理圖相對應,具有直觀性和對應性;
(2)與原有繼電器邏輯控制技術相一致,對電氣技術人員來說,易于撐握和學習;
(3)與原有的繼電器邏輯控制技術的不同點是,梯形圖中的能流(Power FLow)不是實際意義的電流,內部的繼電器也不是實際存在的繼電器,因此,應用時,需與原有繼電器邏輯控制技術的有關概念區別對待;
(4)與布爾助記符程序設計語言有一一對應關系,便于相互的轉換和程序的檢查。
2、布爾助記符(Boolean Mnemonic)
程序設計語言布爾助記符程序設計語言是用布爾助記符來描述程序的一種程序設計語言。布爾助記符程序設計語言與計算機中的匯編語言非常相似,采用布爾助記符來表示操作功能。
布爾助記符程序設計語言具有下列特點:
(1)采用助記符來表示操作功能,具有容易記憶,便于撐握的特點;
(2)在編程器的鍵盤上采用助記符表示,具有便于操作的特點,可在無計算機的場合進行編程設計;
(3)與梯形圖有一一對應關系。其特點與梯形圖語言基本類同。
3、功能表圖(Sepuential Chart)
程序設計語言功能表圖程序設計語言是用功能表圖來描述程序的一種程序設計語言。它是近年來發展起來的一種程序設計語言。采用功能表圖的描述,控制系統被分為若干個子系統,從功能入手,使系統的操作具有明確的含義,便于設計人員和操作人員設計思想的溝通,便于程序的分工設計和檢查調試。
功能表圖程序設計語言的特點是:
(1)以功能為主線,條理清楚,便于對程序操作的理解和溝通;
(2)對大型的程序,可分工設計,采用較為靈活的程序結構,可節省程序設計時間和調試時間;
(3)常用于系統的規模校大,程序關系較復雜的場合;
(4)只有在活動步的命令和操作被執行,對活動步后的轉換進行掃描,因此,整個程序的掃描時間較其他程序編制的程序掃描時間要大大縮短。功能表圖來源于佩特利(Petri)網,由于它具有圖形表達方式,能較簡單和清楚地描述并發系統和復雜系統的所有現象,并能對系統中存有的象死鎖、不安全等反常現象進行分析和建模,在模型的基礎上能直接編程,所以,得到了文泛的應用。近幾年推出的PLC和小型集散控制系統中也已提供了采用功能表圖描述語言進行編程的軟件。關于佩特利(Petri)網的一些基本概念,我在以后有機會時再介紹給各位,以有助于對功能表圖的進一步理解。
4、結構化語句(Structured Text)
描述程序設計語言結構化語句描述程序設計語言是用結構化的描述語句來描述程序的一種程序設計語言。它是一種類似于高級語言的程序設計語言。在大中型的 PLC系統中,常采用結構化語句描述程序設計語言來描述控制系統中各個變量的關系。它也被用于集散控制系統的編程和組態。結構化語句描述程序設計語言采用計算機的描述語句來描述系統中各種變量之間的各種運算關系,完成所需的功能或操作。大多數制造廠商采用的語句描述程序設計語言與BASIC語言、 PASCAL語言或C語言等高級語言相類似,但為了應用方便,在語句的表達方法及語句的種類等方面都進行了簡化。
結構化程序設計語言具有下列特點:
(1)采用高級語言進行編程,可以完成較復雜的控制運算;
(2)需要有一定的計算機高級程序設計語言的知識和編程技巧,對編程