- 艾寶物聯(lián)IOBOV? ─ 工業(yè)無線測控專家
PLC的軟件由系統(tǒng)程序和用戶程序組成。
系統(tǒng)程序由PLC制造廠商設(shè)計編寫的,并存入PLC的系統(tǒng)存儲器中,用戶不能直接讀寫與更改。系統(tǒng)程序一般包括系統(tǒng)診斷程序、輸入處理程序、編譯程序、信息傳送程序、監(jiān)控程序等。
PLC的用戶程序是用戶利用PLC的編程語言,根據(jù)控制要求編制的程序。在PLC的應(yīng)用中,最重要的是用PLC的編程語言來編寫用戶程序,以實現(xiàn)控制目的。由于PLC是專門為工業(yè)控制而開發(fā)的裝置,其主要使用者是廣大電氣技術(shù)人員,為了滿足他們的傳統(tǒng)習(xí)慣和掌握能力,PLC的主要編程語言采用比計算機語言相對簡單、易懂、形象的專用語言。
PLC編程語言是多種多樣的,對于不同生產(chǎn)廠家、不同系列的PLC產(chǎn)品采用的編程語言的表達方式也不相同,但基本上可歸納兩種類型:一是采用字符表達方式的編程語言,如語句表等;二是采用圖形符號表達方式編程語言,如梯形圖等。
以下簡要介紹幾種常見的PLC編程語言。
1.梯形圖語言
梯形圖語言是在傳統(tǒng)電器控制系統(tǒng)中常用的接觸器、繼電器等圖形表達符號的基礎(chǔ)上演變而來的。它與電器控制線路圖相似,繼承了傳統(tǒng)電器控制邏輯中使用的框架結(jié)構(gòu)、邏輯運算方式和輸入輸出形式,具有形象、直觀、實用的特點。因此,這種編程語言為廣大電氣技術(shù)人員所熟知,是應(yīng)用最廣泛的PLC的編程語言,是PLC的第一編程語言。
如圖1所示是傳統(tǒng)的電器控制線路圖和PLC梯形圖。
圖1 電器控制線路圖與梯形圖
a) 電器控制線路圖 b)PLC梯形圖
從圖中可看出,兩種圖基本表示思想是一致的,具體表達方式有一定區(qū)別。PLC的梯形圖使用的是內(nèi)部繼電器,定時/計數(shù)器等,都是由軟件來實現(xiàn)的,使用方便,修改靈活,是原電器控制線路硬接線無法比擬的。
2.語句表語言
這種編程語言是一種與匯編語言類似的助記符編程表達方式。在PLC應(yīng)用中,經(jīng)常采用簡易編程器,而這種編程器中沒有CRT屏幕顯示,或沒有較大的液晶屏幕顯示。因此,就用一系列PLC操作命令組成的語句表將梯形圖描述出來,再通過簡易編程器輸入到PLC中。雖然各個PLC生產(chǎn)廠家的語句表形式不盡相同,但基本功能相差無幾。以下是與圖1中梯形圖對應(yīng)的(FX系列PLC)語句表程序。
步序號 指令 數(shù)據(jù)
0 LD X1
1 OR Y0
2 ANI X2
3 OUT Y0
4 LD X3
5 OUT Y1
可以看出,語句是語句表程序的基本單元,每個語句和微機一樣也由地址(步序號)、操作碼(指令)和操作數(shù)(數(shù)據(jù))三部分組成。
3.邏輯圖語言
邏輯圖是一種類似于數(shù)字邏輯電路結(jié)構(gòu)的編程語言,由與門、或門、非門、定時器、計數(shù)器、觸發(fā)器等邏輯符號組成。有數(shù)字電路基礎(chǔ)的電氣技術(shù)人員較容易掌握,如圖2 所示。
圖2 邏輯圖語言編程
4.功能表圖語言
功能表圖語言(SFC語言)是一種較新的編程方法,又稱狀態(tài)轉(zhuǎn)移圖語言。它將一個完整的控制過程分為若干階段,各階段具有不同的動作,階段間有一定的轉(zhuǎn)換條件,轉(zhuǎn)換條件滿足就實現(xiàn)階段轉(zhuǎn)移,上一階段動作結(jié)束,下一階段動作開始。是用功能表圖的方式來表達一個控制過程,對于順序控制系統(tǒng)特別適用。
5.高級語言
隨著PLC技術(shù)的發(fā)展,為了增強PLC的運算、數(shù)據(jù)處理及通信等功能,以上編程語言無法很好地滿足要求。近年來推出的PLC,尤其是大型PLC,都可用高級語言,如BASIC語言、C語言、PASCAL語言等進行編程。采用高級語言后,用戶可以像使用普通微型計算機一樣操作PLC,使PLC的各種功能得到更好的發(fā)揮。