從自動化集成體系結(jié)構(gòu)的視角看PLC系統(tǒng)軟件的長足進(jìn)展(下)
4.4 PLC性能的基準(zhǔn)測試
為了讓使用者對所用PLC在其具體應(yīng)用中的性能做出評估,還為了比較不同PLC的性能,并發(fā)現(xiàn)在其具體應(yīng)用中所表現(xiàn)出來的優(yōu)點(diǎn)和缺點(diǎn),PLCopen在2006年6月底以技術(shù)文件的形式公布了《PLC性能的基準(zhǔn)測試方法》。該文件通過所定義的測試概要,以一種客觀的方式,為尋求不同PLC平臺真實(shí)性能提供了標(biāo)準(zhǔn)化的方法。為更貼近實(shí)際應(yīng)用,將基準(zhǔn)測試方法劃分為五種類別,它們分別是:數(shù)字式I/O處理(典型應(yīng)用是無伺服驅(qū)動的小型機(jī)械);使用SFC/狀態(tài)機(jī)、并在每個步序有數(shù)字式I/O的處理(典型應(yīng)用是裝配自動化);運(yùn)動控制應(yīng)用程序(典型應(yīng)用是包裝、印刷);數(shù)據(jù)處理應(yīng)用程序(典型應(yīng)用:測量記錄和處理、協(xié)議);閉環(huán)控制應(yīng)用程序(典型應(yīng)用:過程控制)。
4.5 IEC61131-3與XML
考慮到編程僅僅是控制軟件完整應(yīng)用開發(fā)套件的一個組成部分,雖然XML并不是IEC 61131-3標(biāo)準(zhǔn)的內(nèi)容,但為規(guī)范它與其它組成部分間的數(shù)據(jù)交換接口,PLCopen還是強(qiáng)調(diào)通過為IEC61131-3規(guī)定一種XML(Extensible Markup Language——可擴(kuò)展標(biāo)記語言:一種用來創(chuàng)建自己的標(biāo)記的標(biāo)記語言)的格式倡導(dǎo)一種開發(fā)環(huán)境,使得各種不同目的的開發(fā)軟件工具能克服交換數(shù)據(jù)的瓶頸,在此基礎(chǔ)上構(gòu)成統(tǒng)一平臺(見圖3)。2005年4月正式發(fā)布的關(guān)于XML的文本包括技術(shù)文件、XML模式(scheme)和說明文件。
圖3 PLCopen規(guī)范了編程工具與其它軟件工具間數(shù)據(jù)交換的XML格式
利用PLCopen規(guī)范的XML格式,實(shí)現(xiàn)不同軟件工具的數(shù)據(jù)交換,可以為統(tǒng)一的工程平臺實(shí)現(xiàn)不同控制功能的編程、組態(tài)提供基礎(chǔ);為統(tǒng)一的工程平臺實(shí)現(xiàn)設(shè)計(jì)、調(diào)試、運(yùn)行操作、維護(hù)各階段功能的前后銜接提供基礎(chǔ),而進(jìn)行不同硬件平臺定義的I/O變量和內(nèi)部變量之間的變換,為控制程序無障礙移植創(chuàng)造前提條件。
(1)建立統(tǒng)一工程平臺的必要性人們過去開發(fā)了許多為PLC控制系統(tǒng)工程設(shè)計(jì)、編程和運(yùn)行,以至于管理的工具性軟件。其中包括控制電路設(shè)計(jì)軟件包、接線設(shè)計(jì)軟件、PLC編程軟件包、人機(jī)界面和SCADA軟件包、程序調(diào)試仿真軟件,以及自動化維護(hù)軟件等等。盡管這些軟件都是為具體的工程服務(wù)的,但是,即使在對同一對象進(jìn)行控制和監(jiān)控,它們卻是互不關(guān)聯(lián)。不同的控制需求(如邏輯和順序控制、運(yùn)動控制、過程控制等)要用不同的開發(fā)軟件;在不同的工作階段(如編程組態(tài)、仿真調(diào)試、維護(hù)管理等)又要用不同的軟件。而且往往在使用不同的軟件時(shí)必需自行定義標(biāo)簽變量(tags),而定義變量的規(guī)則又往往各取其便,導(dǎo)致對同一物理對象的相同控制變量其命名完全不一致。缺乏公用的數(shù)據(jù)庫和統(tǒng)一的變量命名規(guī)則,造成在使用不同軟件時(shí)不得不進(jìn)行繁瑣的變量轉(zhuǎn)換,重復(fù)勞動導(dǎo)致人力資源成本高、效率低下。現(xiàn)代軟件技術(shù)的發(fā)展為不同用途的軟件集成創(chuàng)造了前提條件。前面講到的XML就是很好的將不同軟件集成起來構(gòu)成統(tǒng)一工程平臺的工具,而采用基于變量的尋址方式(tags-based addressing),使我們可以直接運(yùn)用實(shí)名變量,不必使用交叉參考列表來完成變量名與物理地址的轉(zhuǎn)換。在使用多種軟件工具時(shí),統(tǒng)一的變量名對應(yīng)惟一的物理地址,例如圖4 所示。這種超越傳統(tǒng)的解決方式帶來許多優(yōu)點(diǎn):大量減少工程設(shè)計(jì)、調(diào)試、投運(yùn)的時(shí)間和費(fèi)用;減少編程和調(diào)試運(yùn)行中的錯誤;技術(shù)文檔便于閱讀和理解;方便維護(hù);在與其它控制器通信進(jìn)行數(shù)據(jù)交換時(shí),在程序中可直接采用參與通信的控制器數(shù)據(jù)的實(shí)名制變量名,而不必采用物理地址,大為方便理解。
圖4 實(shí)名制變量名對應(yīng)惟一的物理地址
(2)PLCopen規(guī)范的XML格式:構(gòu)筑各種軟件開發(fā)工具統(tǒng)一平臺的基礎(chǔ)。編程僅僅是控制軟件完整應(yīng)用開發(fā)套件的一個環(huán)節(jié),為規(guī)范它與其它軟件環(huán)節(jié)間在應(yīng)用水平上的數(shù)據(jù)交換接口,克服各種軟件工具交換數(shù)據(jù)的瓶頸,PLCopen于2005年4月正式發(fā)布為實(shí)現(xiàn)IEC 61131-3編程的數(shù)據(jù)交換規(guī)范XML文本,包括技術(shù)文件、XML模式(scheme)和說明文件。該規(guī)范規(guī)定了IEC61131-3全部五種編程語言的交換格式;類似于建模工具那樣,規(guī)定與圖形和邏輯信息的生成程序的接口;類似于文件生成程序和管理程序以及版本管理那樣,規(guī)定與圖形和邏輯信息的使用程序的接口;還規(guī)定了功能塊庫的分配格式(distribution format)。圖5以直觀的方式來表達(dá)如何實(shí)現(xiàn)不同開發(fā)工具之間的數(shù)據(jù)交換。
圖5 運(yùn)用XML處理不同軟件的數(shù)據(jù)交換
我們知道,XML的特性是其結(jié)構(gòu)和內(nèi)容可以與它們的表達(dá)方式分隔開來,這樣同一個XML源文件可被再寫一次,用多種形式(如顯示在一個計(jì)算機(jī)顯示器上,顯示在手機(jī)的顯示屏內(nèi),在一個設(shè)備上轉(zhuǎn)換為聲音以方便盲人,等等)來表達(dá)。XML的優(yōu)點(diǎn)在于:它的可擴(kuò)展性,可以通過它提供的scheme來檢查所包含數(shù)據(jù)的一致性,以及不同的scheme都能提供一種檢查它們之間的不兼容性。
在涉及整個項(xiàng)目的范圍內(nèi),有許多信息需要以XML的格式存貯。由于并不知道接下去會有哪些軟件工具用到這些信息,所以必須輸出隨后可能會用到的相關(guān)信息,包括文本化編程語言IL和ST,圖形化編程語言LD和FBD,結(jié)構(gòu)性語言SFC,圖形信息(如形狀、位置和連接路徑等),注釋,程序組織單元和函數(shù)、功能塊、程序,數(shù)據(jù)類型、有關(guān)項(xiàng)目的信息(分層結(jié)構(gòu)),變換信息,以及信息提供方的特定信息等。這就是說,輸出文件以XML的格式包羅了各種各樣的信息。而在這些信息的使用方這一側(cè),必須在信息輸入時(shí)用語法分析功能來選擇所要信息,并檢查這些數(shù)據(jù)的一致性。不同的軟件工具可能采用不同的模式,但將該模式與XML模式組合起來,便可提供檢查不兼容的可能性,而且更容易取得相關(guān)的信息。這明顯反映了XML模式的好處。
利用XML可在軟件集成方面做很多事情。這里列舉兩個實(shí)例。第一個實(shí)例是在通用建模語言UML和IEC61131-3編程語言之間交換數(shù)據(jù)(見圖6),這是德國Kassel大學(xué)的研究工作,有興趣的讀者可進(jìn)一步訪問www.es.eecs.uni-kassel.de網(wǎng)站。另一個實(shí)例是由歐洲University of the Basque Courtry 的FLEXICON項(xiàng)目(IST-2001-37269)IPMCS項(xiàng)目。為了在工業(yè)過程測量和控制系統(tǒng)設(shè)計(jì)時(shí)強(qiáng)調(diào)不同軟件工具的集成,設(shè)計(jì)成果的復(fù)用、提高靈活性和實(shí)現(xiàn)設(shè)計(jì)優(yōu)化,通過XML將相關(guān)的軟件工具予以集成(圖7),以支持在設(shè)計(jì)、組態(tài)和管理等不同階段的開發(fā)過程。
圖6 利用XML完成UML和IEC61131-3編程語言之間交換數(shù)據(jù)
圖7 在設(shè)計(jì)、組態(tài)和管理三個階段的工作通過XML進(jìn)行完整耦合
4.6 實(shí)現(xiàn)PLC軟件功能安全的基礎(chǔ)工作
工業(yè)控制行業(yè)中,近年來功能安全倍受關(guān)注和重視。特別是涉及安全的控制裝置已由硬接線發(fā)展為可編程,再進(jìn)一步發(fā)展到應(yīng)用安全型現(xiàn)場總線,因而涉及安全的環(huán)節(jié)包括:硬件、通信、基礎(chǔ)軟件(嵌入式操作系統(tǒng)、固件等)和應(yīng)用軟件。在安全方面,PLCopen涉及的工作界定為PLC編程語言的功能安全(參見圖8)。PLCopen的成員與專業(yè)從事安全的機(jī)構(gòu)TüV一起定義了在IEC 61131-3的開發(fā)環(huán)境下涉及安全的規(guī)范。這必須由集成在IEC 61131-3的軟件開發(fā)平臺上的安全專用軟件工具支持。
圖8 PLCopen定義的IEC 61131-3的編程系統(tǒng)的功能安全
對軟件安全應(yīng)用的基本要求是:區(qū)別安全與非安全的功能性;采用可以應(yīng)用的編程語言和語言子集;采用經(jīng)過驗(yàn)證的軟件模塊;采用可資應(yīng)用的編程導(dǎo)則;為保證與安全相關(guān)軟件的生命周期,采用公認(rèn)的可排減出錯的措施。具體地說,安全功能性實(shí)現(xiàn)的標(biāo)準(zhǔn)化包括:定義與安全相關(guān)的函數(shù)集和功能塊集;在編程環(huán)境中的支持,包括編程語言(LD、FBD)和功能性(安全數(shù)據(jù)類型和說明等);出錯處理和診斷等。
為了適應(yīng)功能安全對軟件的要求,必須先從軟件的開發(fā)環(huán)境的精簡,即從精簡數(shù)據(jù)類型、精簡其功能性和精簡編程語言這三個方面著手,而從編程導(dǎo)則上考慮分為用戶級和專家級。所謂基本級就是指使用規(guī)定功能塊的安全應(yīng)用的程序員;而專家級則指具有對規(guī)定功能塊進(jìn)行擴(kuò)展能力,并被授權(quán)作功能性擴(kuò)展的專家。在數(shù)據(jù)類型方面,用戶級和專家級的數(shù)據(jù)類型有:SAFEBOOL(安全布爾量)、BOOL(布爾量)、INT(整型數(shù))、DINT(雙精度整型數(shù))、REAL(實(shí)型數(shù))、WORD(字)、TIME(時(shí)間);用戶級和專家級的數(shù)據(jù)聲明有VAR、VAR_INPUT、VAR_OUTPUT、CONSTANT。在標(biāo)準(zhǔn)函數(shù)方面,用戶級有AND、OR,專家級有AND、OR、XOR、NOT、ADD、MUL、SUB、DIV、GT、GE、EQ、LE、LT、NE、選擇函數(shù)、類型轉(zhuǎn)換函數(shù)和時(shí)間函數(shù);在標(biāo)準(zhǔn)功能塊方面,用戶級有TON、TOF、TP、CTU、CTD、CTUD,專家級除上述用戶級的功能塊外,還有雙穩(wěn)態(tài)FB(SR、RS)、脈沖沿檢測。另外,還規(guī)定為了達(dá)到模塊化的目的而定義用戶功能塊時(shí),只能使用用戶級的子集。至于編程語言的精簡與IEC61508和IEC 61511一致,推薦的語言是圖形化語言:功能塊圖語言FBD和梯形圖語言LD。
為保證安全應(yīng)用所定義的安全功能塊是:模式選擇,緊停,1類安全停和2類安全停,安全限速,安全保護(hù)監(jiān)控,有鎖定的安全保護(hù)聯(lián)鎖,電子敏感保護(hù)設(shè)備,II型和III型雙手控制,可測試的安全傳感器,順序抑制、并行抑制和帶雙傳感器的并行抑制,外器件監(jiān)控,有效開關(guān),安全請求,輸出控制,等效和反效(antivalent)。
5 全集成架構(gòu)
5.1 建立統(tǒng)一的工程平臺,改善PLC的控制系統(tǒng)工程應(yīng)用軟環(huán)境
當(dāng)今的自動化技術(shù)的發(fā)展,要求一攬子解決自動化控制和生產(chǎn)管理、執(zhí)行等信息系統(tǒng)的全集成解決方案,甚至包括從設(shè)計(jì)階段開始所涉及到的各種工程問題,如總體規(guī)劃、詳細(xì)設(shè)計(jì)、系統(tǒng)仿真、調(diào)試投運(yùn)、運(yùn)行維護(hù)等各個方面。在這種趨勢下,世界級的控制系統(tǒng)供應(yīng)商紛紛推出的全集成架構(gòu),如Schneider的Transparent Ready,Siemens的Total Integrated Automation(TIA),Rockwell Automation的Intergrated Architeture,Mitsubishi的e-Factory,ABB的Industrial IT。這些自動化公司所推出的全集成自動化架構(gòu)雖然各有不同,但在以下各方面還是一致的,即:強(qiáng)調(diào)企業(yè)信息和控制系統(tǒng)的集成,即自動化控制系統(tǒng)—制造(或生產(chǎn))執(zhí)行系統(tǒng)—業(yè)務(wù)管理系統(tǒng)(企業(yè)資源規(guī)劃)的集成;強(qiáng)調(diào)為工程設(shè)計(jì)(工藝設(shè)計(jì)、設(shè)備設(shè)計(jì)、自動化設(shè)計(jì))、調(diào)試投運(yùn)、運(yùn)行操作、資產(chǎn)管理和優(yōu)化、維護(hù)等各環(huán)節(jié)提供統(tǒng)一平臺;強(qiáng)調(diào)控制層、執(zhí)行層和管理層不同網(wǎng)絡(luò)的無縫連接和提供信息數(shù)據(jù)的高效交換。我們這里只探討建立統(tǒng)一的工程平臺,改善PLC的控制系統(tǒng)工程應(yīng)用軟環(huán)境的問題。
5.2 案例—羅克韋爾集成架構(gòu)
以羅克韋爾集成架構(gòu)提供的公用的控制環(huán)境和工程支持環(huán)境為例(見圖9)。
圖9 羅克韋爾集成架構(gòu)提供的公用的控制環(huán)境和工程支持環(huán)境
針對過去存在的體系架構(gòu)集成的缺陷,2004年羅克韋爾在整合了已建立的Logix 控制平臺和FactoryTalk生產(chǎn)軟件的基礎(chǔ)上,構(gòu)建了其集成架構(gòu)。它有以下特點(diǎn):
(1)從全局的觀念對整個工廠流程所牽涉的各個環(huán)節(jié),通過單一而又統(tǒng)一的平臺來進(jìn)行工程設(shè)計(jì)和組態(tài)、可視化、控制、生產(chǎn)管理和調(diào)度、資產(chǎn)設(shè)備管理。具有良好的可擴(kuò)展能力,可滿足小規(guī)模的單元控制、中規(guī)模的區(qū)域控制和大規(guī)模的全廠控制的各種要求。它在公共的工程環(huán)境、統(tǒng)一的通信框架、建立在工業(yè)標(biāo)準(zhǔn)的基礎(chǔ)之上等幾個關(guān)鍵的特征方面達(dá)到了ARC所倡導(dǎo)的CPAS模型的要求。
(2)羅克韋爾的全廠信息軟件和MES系統(tǒng)按照面向服務(wù)的架構(gòu),把其所有的軟件產(chǎn)品納入單一的集成套件—FactoryTalk集成生產(chǎn)和績效套件。 FactoryTalk的策略是通過提供全廠的信息套件來擴(kuò)展和提升集成架構(gòu),并通過使用基于標(biāo)準(zhǔn)的數(shù)據(jù)模型達(dá)到不同層次軟件間的互操作性和開放的互連性。FactoryTalk集成生產(chǎn)和績效套件由6個基本功能軟件組成:設(shè)計(jì)和組態(tài),生產(chǎn)管理,數(shù)據(jù)管理,績效和可視化,質(zhì)量和法規(guī)符合,資產(chǎn)設(shè)備管理。羅克韋爾的集成架構(gòu)通過將FactoryTalk生產(chǎn)平臺和Logix多專業(yè)控制平臺的無縫連接,保證實(shí)現(xiàn)端對端生產(chǎn)控制和信息的使用。
(3)集成架構(gòu)的設(shè)計(jì)和組態(tài)就是在一個集成的環(huán)境中創(chuàng)建工程項(xiàng)目、建模和編程。這里,編程的廣義理解應(yīng)包括允許用戶開發(fā)設(shè)備的控制程序模塊和選用已有的具有可重復(fù)使用的程序模塊,確定選用產(chǎn)品并生成訂貨單,控制流程開發(fā)、仿真和投運(yùn)。集成架構(gòu)的組態(tài)環(huán)境包括過程控制、運(yùn)動控制、離散控制和傳動應(yīng)用。它支持IEC61131-3編程語言,其功能塊可調(diào)用梯形圖、SFC、結(jié)構(gòu)化文本等編寫的程序;在編程時(shí)能直接運(yùn)用實(shí)名標(biāo)記,無須通過交叉參考列表進(jìn)行標(biāo)記名與物理地址的轉(zhuǎn)換。用戶在工程組態(tài)時(shí)只要定義一次,以后在通信組態(tài)、HMI組態(tài),以至于建立維護(hù)、資產(chǎn)設(shè)備管理等應(yīng)用組態(tài)時(shí)都使用統(tǒng)一的實(shí)名標(biāo)記。
(4)采用支持IEC61131-3編程語言的編程系統(tǒng),解決連續(xù)過程控制、離散事件和狀態(tài)控制的編程。
現(xiàn)今許多基于IEC61131-3的編程系統(tǒng)可以把邏輯和順序控制、運(yùn)動控制、過程控制和傳動控制等的編程納入一個體系中,同時(shí)還將SCADA和人機(jī)界面軟件的設(shè)計(jì)功能、程序的調(diào)試和仿真功能也包容進(jìn)來。基于IEC61131-3的編程系統(tǒng),如IsaGraf、MULTIPROG、openPCS和CoDeSys等的新版本都可以提供上述的多種功能。另外,施耐德電氣推出的新一代自動化平臺Unity可以方便地集成所有的Modicon系列PLC自動化產(chǎn)品,以及變頻器、人機(jī)界面、上位軟件、分布式I/O、運(yùn)動控制和安全控制等產(chǎn)品,并且通過協(xié)同自動化合作伙伴計(jì)劃(Collaborative Automation Partner Program,CAPP)把第三方廠商的軟件和硬件無縫的集成到Unity中,給用戶提供最優(yōu)化的解決方案。
圖10 基于IEC 61131-3國際標(biāo)準(zhǔn)的編程系統(tǒng)支持各類控制的編程
6 結(jié)束語
總的說來,PLC軟件的發(fā)展必定延續(xù)已經(jīng)確定的方向發(fā)展,即圍繞自動化集成體系架構(gòu)的要求發(fā)展,為完善和提高統(tǒng)一的工程設(shè)計(jì)組態(tài)平臺做好廣泛的基礎(chǔ)性工作。例如PLCopen已經(jīng)開發(fā)了機(jī)械功能安全的編程語言規(guī)范,有必要繼續(xù)開發(fā)為過程功能安全服務(wù)的編程語言規(guī)范,并爭取成為IEC的國際標(biāo)準(zhǔn)。鑒于自動化集成體系架構(gòu)強(qiáng)調(diào)與第三方的硬件和軟件的無縫連接,開發(fā)為工控程序在不同硬件平臺間的移植的環(huán)境和方法,并迅速使其實(shí)用化,也提到了工作日程。今后要設(shè)法把目前在成本上只適合中大型工程運(yùn)用的統(tǒng)一工程設(shè)計(jì)組態(tài)平臺適當(dāng)簡化,讓PLC在軟件方面的進(jìn)步普惠到小型PLC系統(tǒng)的開發(fā)。
文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。