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