久久久久久久麻豆,中日韩av在线,麻豆av在线免费,中文字幕二区三区,欧美日韩视频一区二区,亚洲欧美日韩在线一区,国产无毒不卡

工控編程語言IEC 61131-3的現(xiàn)狀和發(fā)展


摘要: IEC 61131-3是可編程序控制器的編程語言的標(biāo)準(zhǔn),它將現(xiàn)代軟件的概念和現(xiàn)代軟件工程的機制與傳統(tǒng)的PLC編程語言成功地結(jié)合,使它在工業(yè)控制領(lǐng)域的影響越出PLC的界限,成為DCS、PC控制、運動控制,以及SCADA的編程系統(tǒng)事實上的標(biāo)準(zhǔn)。本文綜述了該標(biāo)準(zhǔn)成功的原因,它的優(yōu)勢和不足,目前和今后的發(fā)展,以及推廣應(yīng)用的活動。
關(guān)鍵詞: 編程語言,工業(yè)控制, PLC,DCS, IEC 61131,IEC 61499, 功能塊, 分布式控制
1993年國際電工委員會(IEC)正式頒布了可編程控制器的國際標(biāo)準(zhǔn)IEC 1131(以后改稱IEC 61131),其中的第三部分關(guān)于編程語言的標(biāo)準(zhǔn),規(guī)范了可編程控制器的編程語言及其基本元素。這一標(biāo)準(zhǔn)為可編程控制器軟件技術(shù)的發(fā)展,乃至整個工業(yè)控制軟件技術(shù)的發(fā)展,起了舉足輕重的推動作用。它是全世界控制工業(yè)第一次制定的有關(guān)數(shù)字控制軟件技術(shù)的編程語言標(biāo)準(zhǔn)。此前,國際上沒有出現(xiàn)過有實際意義的,為制定通用的控制語言而開展的標(biāo)準(zhǔn)化活動。這顯然是注意到由于DCS(分散控制系統(tǒng))等以數(shù)字技術(shù)為基礎(chǔ)的控制裝置在發(fā)展進程中過于專有化,給用戶帶來的大量不便??梢哉f,沒有編程語言的標(biāo)準(zhǔn)化便沒有今天PLC走向開放式系統(tǒng)的堅實基礎(chǔ)。
國際標(biāo)準(zhǔn)IEC 61131概況
1992年以后,可編程序控制器國際標(biāo)準(zhǔn)IEC 61131的各個部分陸續(xù)頒布施行。已正式頒布的有:
IEC 61131-1 通用信息 (1992)
IEC 61131-2 裝置要求與測試 (1992)
IEC 61131-3 編程語言 (1993)
IEC 61131-4 用戶導(dǎo)則 (1995)
IEC 61131-5 通信服務(wù)規(guī)范 (2000)
IEC 61131-7 模糊控制編程軟件工具實施 (2000)
IEC 61131-8 IEC 61131-3語言實現(xiàn)導(dǎo)則 (2001)
2000年8月由PLCopen組織向IEC提出增加IEC 61131-X 功能安全性,這主要是依據(jù)《IEC 61508與安全有關(guān)的電氣/電子/可編程電子系統(tǒng)的功能安全性》,結(jié)合PLC的具體情況提出。目前尚處在草案階段。
中國的工業(yè)過程測量和控制標(biāo)準(zhǔn)化委員會按與IEC國際標(biāo)準(zhǔn)等效的原則,組織翻譯出版工作。于1995年12月29日以GB/T15969.1,15969.2,15969.3,15969.4 頒布了PLC的國家標(biāo)準(zhǔn)。
該標(biāo)準(zhǔn)只涉及IEC 61131的第一、第二、第三和第四部分,沒有納入1995年以后出版的第五部分通信服務(wù)規(guī)范 ,第七部分模糊控制編程軟件工具,第八部分IEC 61131-3語言的實現(xiàn)導(dǎo)則。目前正在啟動該標(biāo)準(zhǔn)的修訂和補充工作,為第二版的正式頒布進行準(zhǔn)備。傳統(tǒng)的梯形圖編程語言的嚴(yán)重不足傳統(tǒng)的PLC最常用的編程語言是梯形圖。它雖然遵從了廣大電氣自動化人員的專業(yè)習(xí)慣,易學(xué)易用,但是也存在許多難以克服的缺點:[1,2]
☆不同廠商的PLC產(chǎn)品其梯形圖的符號和編程規(guī)則均不一致。程序的可移植性差。
☆程序可復(fù)用性差。為了減少重復(fù)勞動,現(xiàn)代軟件編程特別強調(diào)程序的可重復(fù)使用。傳統(tǒng)的梯形圖編程很難在調(diào)用子程序時通過變量賦值實現(xiàn)相同的邏輯算法和策略的反復(fù)使用。
☆缺乏足夠的程序封裝能力。一般要求將一個復(fù)雜的程序分解為若干個不同功能的程序模塊?;蛘哒f,人們在編程時希望用不同的功能模塊組合成一個復(fù)雜的程序,梯形圖編程難以實現(xiàn)個程序模塊之間具有清晰接口的模塊化,也難以對外部隱藏程序模塊內(nèi)部數(shù)據(jù)從而實現(xiàn)程序模塊的封裝。
☆不支持?jǐn)?shù)據(jù)結(jié)構(gòu)。梯形圖編程不支持?jǐn)?shù)據(jù)結(jié)構(gòu),無法實現(xiàn)將數(shù)據(jù)組織成如Pascal、C語言等高級語言中的數(shù)據(jù)結(jié)構(gòu)那樣的數(shù)據(jù)類型。對于一些復(fù)雜應(yīng)用的編程,它幾乎無能為力。
☆程序執(zhí)行具有局限性。由于傳統(tǒng)PLC按掃描方式組織程序的執(zhí)行,因此整個程序的指令代碼完全按順序逐條執(zhí)行。對于要求即時響應(yīng)的程序應(yīng)用(如執(zhí)行事件驅(qū)動的程序模塊),具有很大的局限性。
☆進行順序控制功能編程時,一般只能為每一個順控狀態(tài)定義一個狀態(tài)位,難以實現(xiàn)選擇或并行等復(fù)雜順控操作。
☆傳統(tǒng)的梯形圖編程在算術(shù)運算處理、字符串或文字處理等方面均不能提供強有力支持。在IEC 61131-3標(biāo)準(zhǔn)的制定過程中就面臨著在突破舊有的編程語言的不足的同時,又要繼承其合理和有效的部分。解決好這個問題,會大大地推動PLC編程工具的發(fā)展,推動PLC的開放性。
兼容并蓄是IEC 61131-3成功的基礎(chǔ)[3]
IEC 61131-3的制定,集中了美國、加拿大、歐洲(主要是德國、法國)以及日本等7家國際性工業(yè)控制企業(yè)的專家和學(xué)者的智慧,以及數(shù)十年在工控方面的經(jīng)驗。在制定這一編程語言標(biāo)準(zhǔn)的過程中,PLC正處在其發(fā)展和推廣應(yīng)用的鼎盛時期。主要是在北美和日本,普遍運用梯形圖(LD)語言編程;在歐洲,則使用功能塊圖(FBD)和順序功能圖(SFC);德國和日本,又常常采用指令表(IL)對PLC進行編程。為了擴展PLC的功能,特別是加強它的數(shù)據(jù)處理、文字處理,以及通信功能的能力,許多PLC還允許使用高級語言(如BASIC語言、C語言)。因此,制定這一標(biāo)準(zhǔn)的首要任務(wù)就是把現(xiàn)代軟件的概念和現(xiàn)代軟件工程的機制應(yīng)用于傳統(tǒng)的PLC編程語言。IEC 61133-3規(guī)定了二大類編程語言:文本化編程語言和圖形化編程語言。前者包括指令清單語言(IL)和結(jié)構(gòu)化文本語言(ST),后者包括梯形圖語言(LD)和功能塊圖語言(FBD)。至于順序功能圖(SFC),標(biāo)準(zhǔn)不把它單獨列入編程語言的一種,而是將它在公用元素中予以規(guī)范。這就是說,不論在文本化語言中,或者在圖形化語言中,都可以運用SFC的概念、句法和語法。于是,在我們現(xiàn)在所使用的編程語言中,可以在梯形圖語言中使用SFC,也可以在指令清單語言中使用SFC。
IEC 61131-3允許在同一個PLC中使用多種編程語言,允許程序開發(fā)人員對每一個特定的任務(wù)選擇最合適的編程語言,還允許在同一個控制程序中其不同的軟件模塊用不同的編程語言編制。這一規(guī)定妥善繼承了PLC發(fā)展歷史中形成的編程語言多樣化的現(xiàn)實,又為PLC軟件技術(shù)的進一步發(fā)展提供了足夠的空間。
自IEC 61131-3正式公布后,它獲得了廣泛的接受和支持:
(1)國際上各大PLC廠商都宣布其產(chǎn)品符合該標(biāo)準(zhǔn)的規(guī)范(盡管這些公司的軟件工具距離標(biāo)準(zhǔn)的IEC 61131-3語言尚有一定距離),在推出其編程軟件新產(chǎn)品時,遵循該標(biāo)準(zhǔn)的各種規(guī)定。
(2)許多稍后推出的DCS產(chǎn)品,或者DCS的更新?lián)Q代產(chǎn)品,也遵照IEC 61131-3的規(guī)范,提供DCS的編程語言,而不像以前每個DCS廠商都搞自己的一套。
(3)以PC為基礎(chǔ)的控制作為一種新興控制技術(shù)正在迅速發(fā)展,大多數(shù)PC控制的軟件開發(fā)商都按照IEC 61131-3的編程語言標(biāo)準(zhǔn)規(guī)范其軟件產(chǎn)品的特性。
(4)正因為有了IEC 61131-3,才真正出現(xiàn)了一種開放式的可編程控制器的編程軟件包,它不具體地依賴于特定的PLC硬件產(chǎn)品,這就為PLC的程序在不同機型之間的移植提供了可能。
總部設(shè)在荷蘭的國際性組織PLC open在推廣該標(biāo)準(zhǔn)的應(yīng)用并開發(fā)相關(guān)的軟件產(chǎn)品,以及謀求該標(biāo)準(zhǔn)的進一步發(fā)展進行了不懈的努力,獲得了廣泛的響應(yīng)和優(yōu)秀的成績。以上這些事實有力地說明了這個編程語言標(biāo)準(zhǔn)的生命力。
IEC軟件模型是面向未來的開放系統(tǒng)[4][5][6]
程序


按此在新窗口瀏覽圖片

IEC 61131-3提出的軟件模型是整個標(biāo)準(zhǔn)的基礎(chǔ)性的理論工具,幫助人們完整地理解除編程語言以外的全部內(nèi)容。
配置本軟件模型,在其最上層把解決一個具體控制問題的完整的軟件概括為一個“配置”。它專指一個特定類型的控制系統(tǒng),包括硬件裝置、處理資源、I/O通道的存貯地址和系統(tǒng)能力,等同于一個PLC的應(yīng)用程序。在一個由多臺PLC構(gòu)成的控制系統(tǒng)中,每一臺PLC的應(yīng)用程序就是一個獨立的“配置”。
資源在一個“配置”中可以定義一個或多個“資源”。可把“資源”看作能執(zhí)行IEC程序的處理手段,它反映PLC的物理結(jié)構(gòu),在程序和PLC的物理I/O通道之間提供了一個接口。只有在裝入“資源”后才能執(zhí)行IEC程序。一般而言,通常資源放在PLC內(nèi),當(dāng)然它也可以放在其它支持IEC程序執(zhí)行的系統(tǒng)內(nèi)。
任務(wù)在一個資源內(nèi)可以定義一個或多個任務(wù)。任務(wù)被配置后可以控制一組程序或功能塊。這些程序和功能塊可以是周期地執(zhí)行,也可以由一個事件驅(qū)動予以執(zhí)行。
程序一個IEC程序可以用符合IEC 61131-3規(guī)定的編程語言來編寫。典型的IEC程序由許多互連的功能塊和/或函數(shù)組成,每個功能塊之間可相互交換數(shù)據(jù)。函數(shù)與功能塊是基本的組成單元,其內(nèi)包括一個數(shù)據(jù)結(jié)構(gòu)和一種算法。
下面我們將IEC 61131-3軟件模型與傳統(tǒng)的PLC模型(包括一個資源,運行一個任務(wù),控制一個程序,且運行于一個封閉系統(tǒng)中)進行比較(圖2)。


按此在新窗口瀏覽圖片

可以看出,IEC軟件模型在傳統(tǒng)PLC的軟件模型的基礎(chǔ)上增加了許多內(nèi)容:
★IEC 61131-3的軟件模型是一種分層結(jié)構(gòu),每一層均隱含其下層的許多特征。
★它奠定了將一個復(fù)雜的程序分解為若干個可以進行管理和控制的小單元,而這些被分解的小單元之間存在著清晰而規(guī)范的界面。
★可滿足由多個處理器構(gòu)成的PLC系統(tǒng)的軟件設(shè)計。
★可方便地處理事件驅(qū)動的程序執(zhí)行(傳統(tǒng)的PLC的軟件模型僅為按時間周期執(zhí)行的程序結(jié)構(gòu))
★對以工業(yè)通信網(wǎng)絡(luò)為基礎(chǔ)的分散控制系統(tǒng)(例如由現(xiàn)場總線將分布于不同硬件內(nèi)的功能塊構(gòu)成一個具體的控制任務(wù))尤其是軟邏輯/PC控制這些正在發(fā)展中的新興控制技術(shù),該軟件模型均可覆蓋和適用。由此可見,該軟件模型足以映像各類實際系統(tǒng):
對于只有一個處理器的小型系統(tǒng),其模型只有一個配置、一個資源和一個程序,與現(xiàn)在大多數(shù)PLC的情況完全相符。對于有多個處理器的中、大型系統(tǒng),整個PLC被視作一個配置,每個處理器都用一個資源來描述,而一個資源則包括一個或多個程序。對于分散型系統(tǒng),將包含多個配置,而一個配置又包含多個處理器,每個處理器用一個資源描述,每個資源則包括一個或多個程序。
IEC 61131-3的優(yōu)勢與缺陷[4][7]
IEC 61131-3的優(yōu)勢在于它成功地將現(xiàn)代軟件的概念和現(xiàn)代軟件工程的機制用于PLC傳統(tǒng)的編程語言。而它的不足卻是因為它在體系結(jié)構(gòu)上和硬件上依賴于傳統(tǒng)的PLC的體系結(jié)構(gòu)所形成的“先天不足”。
下面先討論IEC 61131-3的優(yōu)勢
1.采用現(xiàn)代軟件模塊化原則。
★編程語言支持模塊化,將常用的程序功能劃分為若干單元,并加以封裝,構(gòu)成編程的基礎(chǔ)。
★模塊化時只設(shè)置必要的、盡可能少的輸入和輸出參數(shù),盡量減少交互作用,盡量減少內(nèi)部數(shù)據(jù)交換。
★模塊化接口之間的交互作用,均采用顯性定義。
★將信息隱藏于模塊內(nèi),對使用者來講只需了解該模塊的外部特性(即功能,輸入輸出參數(shù)),而無需了解模塊內(nèi)算法的具體實現(xiàn)方法。


按此在新窗口瀏覽圖片

2.IEC 61131-3支持自頂而下(top-down)和自底而上(bottom-up)程序開發(fā)方法。用戶可先進行總體設(shè)計,將控制應(yīng)用劃分若干個部分,定義應(yīng)用變量,然后編各個部分的程序: 這就是自頂而下。用戶也可以先從底部開始編程,例如先導(dǎo)出函數(shù)和功能塊,再進行按照控制要求編制程序: 這是自底而上。無論選擇何種開發(fā)方法,IEC 61131-3所創(chuàng)建的開發(fā)環(huán)境均會在整個編程過程中給予強有力的支持。
3.IEC 61131-3所規(guī)范的編程系統(tǒng)獨立于任一個具體的目標(biāo)系統(tǒng),它可以******限度地在不同的PLC目標(biāo)系統(tǒng)中運行。這樣就創(chuàng)造了一種具有良好開放性的氛圍,奠定了PLC編程開放性的基礎(chǔ)。
4.將現(xiàn)代軟件概念濃縮,并加以運用,例如:
★數(shù)據(jù)使用DATA_TYPE說明機制
★函數(shù)使用FUNTION說明機制
★數(shù)據(jù)和函數(shù)的組合使用FUNTION_BLOCK說明機制。
在IEC 61131-3中,功能塊并不只是FBD語言的編程機制,它還是面向?qū)ο蠼M件的結(jié)構(gòu)基礎(chǔ)。一旦完成了某個功能塊的編程,并通過調(diào)試和試用證明了它確能正確執(zhí)行所規(guī)定的功能,那么就不允許用戶再將它打開,改變其算法。即使是一個

COPYRIGHT(C) 2011 廈門永宏亞得機電科技有限公司版權(quán)所有(閩ICP備05025945號) ALL RIGHTS RESERVED?

電話: 0592-5190891 傳真: 0592-5190720 E-Mail: E-mail:yade8895@163.com
地址: 廈門市海滄區(qū)興港六里17號2607室 郵編:361009 聯(lián)系人:翟先生