【導讀】PLC技術發(fā)展至今,軟硬件都發(fā)生了很大的變化,不僅硬件功能多樣化,軟件也在朝向高級語言、面向對象編程的方向發(fā)展!其中傳統(tǒng)的梯形圖必會,結構化編程必學。下面我們就來詳細闡述IEC 61131-3規(guī)范的五種編程語言,到底應該選哪幾種作為學習的重點?
概述
IEC 61131-3規(guī)范的編程語言是IEC工作組對世界規(guī)模的PLC廠家的編程語言合理地吸收、學習的基礎上構成的一套針對工業(yè)操控體系的世界編程語言規(guī)范,它不光適用于PLC體系,并且還適用于更廣泛的工業(yè)操控范疇,為PLC編程語言的全球規(guī)范化做出了重要的奉獻。
IEC 61131-3規(guī)范的5種圖形和文本語言,即LD、SFC、FBD、STL和IL。由于IL指令表語言類似匯編語言使用的人越來越少,也即將從IEC 61131-3的新版本中被刪除。而面向對象的編程方式已經(jīng)引入了IEC61131-3,甚至像C、C++等高級語言,也實際變成PLC常用的編程語言。
下圖是2020年美國的一個名為automation.com的網(wǎng)站和PLCopen國際組織聯(lián)合調查的結果,也印證了上述的結論,使用結構化文本編程的人數(shù)已經(jīng)是最多的了。因此建議大家在學習PLC編程語言的時候也要分清主次,高級編程語言融入到自控系統(tǒng)已經(jīng)很正常。
01繼電器梯形圖(LD)
繼電器梯形圖(LadderDiagram)語言是PLC首要選用的編程語言,也是PLC最普遍選用的編程語言。梯形圖編程語言是從繼電器操控體系原理圖的基礎上演變而來的,與繼電器操控體系梯形圖的根本思想是共同的,只是在運用符號和表達方式上有必定差異。
梯形圖邏輯編程極受電氣工程技術人員歡迎,其優(yōu)點是不言而喻的。首先,這種由Bedford公司開發(fā)的梯形圖邏輯編程中相關的符號,來源于電氣工程中描述順序操作功能,這使廣大的電氣工程師和電工能以非常容易理解的方式用計算機對PLC編程。PLC的規(guī)劃初衷是為工廠車間電氣技術人員而運用的,為了契合繼電器操控電路的思維習氣,作為首要在PLC中運用的編程語言,梯形圖保留了繼電器電路圖的風格和習氣,成為廣大電氣技術人員最直觀接受和運用的語言。其次,這個語言是最早利用通用計算機作為工具,對工業(yè)控制器進行編程的案例之一。沿用至今,既體現(xiàn)了“工業(yè)軟件以工具軟件為主流”的特點,又歷經(jīng)幾十年電氣工程和工業(yè)自動化從業(yè)人員的反復錘煉,并在所有的工業(yè)場合中廣泛采用。
(1)軟繼電器PLC梯形圖中的某些編程元件沿用了繼電器這一稱號,如輸入繼電器、輸出繼電器、內部輔佐繼電器等,可是它們不是實在的物理繼電器,而是一些存儲單元(軟繼電器),每一軟繼電器與PLC存儲器中映像寄存器的一個存儲單元相對應。該存儲單元假如為“1”狀況,則表明梯形圖中對應軟繼電器的線圈“通電”,其常開觸點接通,常閉觸點斷開,稱這種狀況是該軟繼電器的“1”或“ON”狀況。假如該存儲單元為“0”狀況,對應軟繼電器的線圈和觸點的狀況與上述的相反,稱該軟繼電器為“0”或“OFF”狀況。運用中也常將這些“軟繼電器”稱為編程元件。
(2)能流有一個設想的“概念電流”或“能流”(Power Flow)從左向右活動,這一方向與履行用戶程序時的邏輯運算的次序是共同的。能流只能從左向右活動。運用能流這一概念,能夠協(xié)助咱們更好地了解和剖析梯形圖。
(3)母線梯形圖兩邊的筆直公共線稱為母線(Bus bar),。在剖析梯形圖的邏輯聯(lián)系時,為了借用繼電器電路圖的剖析辦法,能夠幻想左右兩邊母線(左母線和右母線)之間有一個左正右負的直流電源電壓,母線之間有“能流”從左向右活動。右母線能夠不畫出。
(4)梯形圖的邏輯解算依據(jù)梯形圖中各觸點的狀況和邏輯聯(lián)系,求出與圖中各線圈對應的編程元件的狀況,稱為梯形圖的邏輯解算。梯形圖中邏輯解算是按從左至右、從上到下的次序進行的。解算的結果,立刻能夠被后邊的邏輯解算所運用。邏輯解算是依據(jù)輸入映像寄存器中的值,而不是依據(jù)解算瞬時外部輸入觸點的狀況來進行的。
1、與電氣操作原理圖相對應,具有直觀性和對應性;2、與原有繼電器邏輯操控技術相共同,對電氣技術人員來說,易于撐握和學習;3、與原有的繼電器邏輯操控技術的不同點是,梯形圖中的能流(Power Flow)不是實際意義的電流,內部的繼電器也不是實際存在的繼電器,因而,運用時,需與原有繼電器邏輯操控技術的有關概念差異對待;4、與指令表程序規(guī)劃語言有一一對應聯(lián)系,便于彼此的變換和程序的查看。
02功用塊圖(FBD)
功用塊圖(Function Block Diagram)選用相似于數(shù)字邏輯門電路的圖形符號,邏輯直觀,運用方便,它有梯形圖編程中的觸點和線圈等價的指令,能夠處理規(guī)模廣泛的邏輯問題。
(1)以功用模塊為單位,從操控功用下手,使操控計劃的剖析和了解變得簡略;(2)功用模塊是用圖形化的辦法描繪功用,它的直觀性大大方便了規(guī)劃人員的編程和組態(tài),有較好的易操作性;(3)對操控規(guī)模較大、操控聯(lián)系較復雜的體系,因為操控功用的聯(lián)系能夠較清楚地表達出來,因而,編程和組態(tài)時刻能夠縮短,調試時刻也能削減。
03次序功用圖(SFC)
次序功用圖(Sequential Function Chart)亦稱流程圖或狀況搬運圖,是一種圖形化的功用性闡明語言,專用于描繪工業(yè)次序操控程序,運用它能夠對具有并發(fā)、挑選等雜亂結構的體系進行編程。
(1)以功用為主線,條理清楚,便于對程序操作的了解和溝通;(2)對大型的程序,可分工規(guī)劃,選用較為靈活的程序結構,可節(jié)約程序規(guī)劃時刻和調試時刻;(3)常用于體系的規(guī)模較大,程序聯(lián)系較雜亂的場合;(4)只需在活動步的命令和操作被履行,對活動步后的變換進行掃描,因而,整個程序的掃描時刻較其他程序編制的程序掃描時刻要大大縮短。
04指令表(IL)
指令表(Instruction List)編程語言相似于計算機中的助記符匯編語言,它是可編程操控器最基礎的編程語言,所謂指令表編程,是用一個或幾個簡略回憶的字符來代表可編程操控器的某種操作功用。
(1)選用助記符來表明操作功用,具有簡略回憶,便于撐握的特色;
(2)在編程器的鍵盤上選用助記符表明,具有便于操作的特色,可在無計算機的場合進行編程規(guī)劃;
(3)與梯形圖有一一對應聯(lián)系,其特色與梯形圖語言根本類同。
05結構化文本(ST)
結構化文本(Strutured Text)是一種高檔的文本語言,能夠用來描繪功用,功用塊和程序的行為,還能夠在次序功用流程圖中描繪步、動作和改變的行為。對于結構化文本編程西門子稱之為SCL,其實是一樣的,只是名字不同而已。結構化文本語言表面上與 PASCAL語言很相似,但它是一個專門為工業(yè)操控運用開發(fā)的編程語言,具有很強的編程才能用于對變量賦值、回調功用和功用塊、創(chuàng)建表達式、編寫條件句子和迭代程序等。最近幾年結構化文本編程已經(jīng)越來越盛行,使用ST編程的人數(shù)已經(jīng)超過了使用梯形圖編程的人數(shù),大量的PLC工程師從中受益。
(1)選用高檔語言進行編程,能夠完結較雜亂的操控運算;(2)需要有必定的計算機高檔程序規(guī)劃語言的常識和編程技巧,對編程人員的技術要求較高,一般電氣人員無法完結。(3)直觀性和易操作性等功用較差;(4)常被用于選用功用模塊等其他語言較難完成的一些操控功用的施行。
注意:不是所有的PLC都支撐一切的編程語言(如功用塊圖、次序功用圖就有許多等級低PLC不支撐),而大型的PLC操控體系一般都支撐這5種規(guī)范編程語言或相似的編程語言。