在為工業(yè)控制系統(tǒng)應(yīng)用程序做準(zhǔn)備時,都有哪些選擇?對于用戶來說,控制解決方案的魯棒性和功能性是否能兼而有之?能否實(shí)現(xiàn)工業(yè)控制系統(tǒng)的快速搭建?
大多數(shù)成品可編程邏輯控制器(PLC)都可以使用IEC61131-3標(biāo)準(zhǔn)中規(guī)定的至少一種編程語言進(jìn)行編程:
■ IL(指令表)——與匯編語言類似的低級編程語言。
■ LD(梯形圖)——基于電路走線和繼電器等規(guī)則的圖形語言。
■ FBD(功能塊圖)——一種能夠?qū)崿F(xiàn)復(fù)雜控制和數(shù)字功能的簡單的圖形語言。用戶可以使用庫中提供的功能模塊或者創(chuàng)建用戶自定義功能模塊(使用符合IEC 61131-3標(biāo)準(zhǔn)的任何一種編程語言)來創(chuàng)建控制算法。
■ ST(結(jié)構(gòu)文本)——語法上與Pascal語言和Basic語言類似的一種文本語言;能夠有效應(yīng)對各種復(fù)雜的控制算法。
■ SFC(順序功能圖)——描述過程和設(shè)備作業(yè)的一種圖形語言。它是IEC 61131-3標(biāo)準(zhǔn)中規(guī)定的唯一一種依賴于至少其他一種編程語言的語言。SFC用來創(chuàng)建過程狀態(tài)機(jī);每一個狀態(tài)機(jī)都使用另外一種語言編寫,例如ST或者IL。
現(xiàn)在最常用的是什么語言?在Control Engineering美國和波蘭讀者群中控制工程網(wǎng)版權(quán)所有,最流行的編程語言是梯形圖。
功能塊圖與電路類似,都具有邏輯元件CONTROL ENGINEERING China版權(quán)所有,在常用PLC編程語言中排名第二位。
第三位是指令表語言。先進(jìn)的加法器管理引擎能夠在控制系統(tǒng)算法中支撐這種數(shù)字依賴性很高的最復(fù)雜的編程語言。
使用ST實(shí)現(xiàn)簡單的PID控制。
資料來源:Control Engineering Poland
結(jié)構(gòu)文本語言能夠用來實(shí)現(xiàn)控制算法。高級用戶可以很容易地創(chuàng)建自己的功能模塊,實(shí)現(xiàn)單輸入單輸出和多輸入多輸出過程。這種語言在最受歡迎的PLC編程語言中排名第四位。隨著新型PLC的計(jì)算功能越來越強(qiáng)大,這種語言也變得越來越流行。這種語言是創(chuàng)建自定義庫的最佳工具,為PLC增色不少。
功能塊圖的使用是通過PLC創(chuàng)建面向?qū)ο笕蝿?wù)的第一步。對結(jié)構(gòu)文本語言開始了解的人每年都在增加,相比于梯形圖CONTROL ENGINEERING China版權(quán)所有,很多年輕的工程師更喜歡結(jié)構(gòu)文本語言,所以未來這種語言在業(yè)界的應(yīng)用將會更流行。
順序功能圖被稱為“專家所使用的語言”,用戶使用這種語言可以創(chuàng)建整套設(shè)備或者過程的流程圖。
有一些PLC現(xiàn)在可以使用符合Kernighan& Ritchie標(biāo)準(zhǔn)的ANSI C語言進(jìn)行編程,有些型號的PLC甚至支持C++語言編程。工業(yè)控制系統(tǒng)生產(chǎn)廠商通常都提供額外的基于自身產(chǎn)品平臺的專用編程語言,它們能與硬件更好地整合www.cechina.cn,例如對BIOS和唯一序列號等進(jìn)行操作。
工業(yè)PC(IPC)配有傳統(tǒng)的操作系統(tǒng),通常是微軟公司的Windows操作系統(tǒng)和運(yùn)行于同一臺計(jì)算機(jī)上的實(shí)時系統(tǒng)。這種組合的優(yōu)勢在于既能利用IEC 61131-3標(biāo)準(zhǔn)中規(guī)定的“編程”語言又能利用基于微軟公司W(wǎng)indows系統(tǒng)的高級語言,例如C++或者C#。
最近幾年傳統(tǒng)PLC獲得了長足的發(fā)展,有時很難將PLC和IPC進(jìn)行明確界定。當(dāng)一臺設(shè)備的功能超過PLC,計(jì)算功能類似于IPCwww.cechina.cn,但是同時又具備了PLC耐用的外殼,那么它就被稱為可編程自動化控制器(PAC)。PAC獲得了分布式控制系統(tǒng)(DCS)生產(chǎn)廠商的關(guān)注,一些廠商已經(jīng)將PAC作為其DCS產(chǎn)品供應(yīng)市場。PAC支持使用大量的文本形式的高級編程語言(C、C++、C#),還支持圖形編程語言(如前文所列)。