《使用IEC61499为控制系统建模》-第一章 概述
譯者的話
也許和IEC61499 標準還不夠普及有關(guān),關(guān)于IEC61499 標準的書籍并不多,Alois Zoitl & Robert Lewis 二位合著的這本書是網(wǎng)絡(luò)上論文中被引用最多的一本書。
?這本書全面解釋了IEC61499 標準中的概念,術(shù)語和模型。其中最重要的內(nèi)容包括數(shù)據(jù)類型,功能塊類型和網(wǎng)絡(luò),分布式系統(tǒng)模型,設(shè)備和資源模型。本書是一本比較完整地介紹IEC61499 標準的書籍。對全面了解IEC61499 標準有所幫助。本人還是決定將它的主要內(nèi)容全文翻譯出來。
大多數(shù)的技術(shù)標準都描述的非常嚴謹,抽象和形式化。本書雖然并不是標準的文本,但是其內(nèi)容許多是對IEC61499標準中概念,術(shù)語的進一步解釋。閱讀起來不那么容易,有一些概念在中文的語境里如果直譯,顯然有點生硬。比如在IEC61499 中,使用功能塊構(gòu)建的應(yīng)用“程序” 直接稱為“Application”,中則為“應(yīng)用”。在中文中“應(yīng)用”大多數(shù)場合是一個動詞。除非是加定語的名詞,比如“使用功能塊構(gòu)建的應(yīng)用”。再比如,在IEC61499 中將應(yīng)用稱為是功能塊網(wǎng)絡(luò)。這又與通信網(wǎng)絡(luò)會混淆。
總之,在翻譯這本書時,有許多難以琢磨的地方。為了尊重作者的原汁原味,我基本·上直譯。讀起來可能有點拗口。
另一方面,本人對IEC61499 標準中的許多概念理解不深,翻譯過程中難免存在許多的誤解。如果讀者能及時向我提出來,將不勝感謝。
? 我并沒有出版中譯本的計劃,這些內(nèi)容只是用于內(nèi)部培訓(xùn)和與網(wǎng)絡(luò)讀者分享,不用于商業(yè)目的。
?
第一章 引言
?在引言這一章,我們綜述IEC61499 發(fā)展的背景和原因。我們將描述下面這些內(nèi)容:
?
制造業(yè)為了在不確定和迅速變化的全球市場中具有競爭能力而奮斗。他們急切地需要提升制造系統(tǒng)的敏捷性。為了生產(chǎn)具有競爭能力和創(chuàng)新的產(chǎn)品,公司需要能快速建立先進的生產(chǎn)線。如此高度的自動化需求涉及建立包括工業(yè)制造,制造系統(tǒng),商業(yè)物流的大型系統(tǒng)。這些新系統(tǒng)的一個關(guān)鍵特征就是由敏捷制造系統(tǒng)帶來的迅速地處理變化的能力。一個制造工廠需要能夠迅速切換產(chǎn)品類型和導(dǎo)入新工藝。以保持商業(yè)業(yè)務(wù)運行。
對建立下一代分布式工業(yè)控制的架構(gòu)和新技術(shù)的興趣不斷增長。這些系統(tǒng)的軟件有一組相互協(xié)作的組件構(gòu)成。而不是一個大型定制的集成軟件。
目前為止,工業(yè)控制系統(tǒng)分成了兩大陣營。一類是基于傳統(tǒng)的分布式控制系統(tǒng)(DCS),另一類是基于可編程邏輯控制器(PLC)。現(xiàn)行的DCS?主要應(yīng)用于化工廠和煉油廠。它們是由少量的大型中央處理器構(gòu)成,提供監(jiān)控和數(shù)據(jù)采集。通過本地網(wǎng)絡(luò)和部署在工廠中的眾多控制器,儀表,傳感器和執(zhí)行部件相聯(lián)。(圖 1.1)。系統(tǒng)可以具有分立的儀表和超級工作站。超級工作站由本地控制器和一串儀表構(gòu)成。在一個DCS?中,許多的監(jiān)控來自于一個或者多個中心處理器。工廠中的儀表提供本地的閉環(huán)控制,例如PID 控制。
?
相比之下,在許多機器控制和生產(chǎn)過程控制中(特別是自動化生產(chǎn)線中),控制系統(tǒng)是使用PLC來設(shè)計的(圖1.2)。在這些系統(tǒng)中,人機接口(HMI)一般由不同類型的面板,燈光和開關(guān)實現(xiàn)。先進的HMI 也能使用彩色顯示屏,專用鍵盤,或者觸控屏來操作。尤其是借助于導(dǎo)入手機,平板電腦,這個領(lǐng)域的變化非常迅速。
大型PLC 系統(tǒng)通常由多個PLC ,它們通過一個或者多個特定的高速網(wǎng)絡(luò)相互通信。PLC 一般連接大量的輸入輸出(I/O) 信號,由它們處理傳感器和執(zhí)行部件。在這種場合,分立儀表,比如溫度,壓力傳感器也連接到PLC 上。
使用這兩種設(shè)計方法,系統(tǒng)都傾向編寫一個大型單一的軟件包。這種軟件通常很難在新的應(yīng)用中重復(fù)使用,相互之間集成也非常困難。一個應(yīng)用程序的功能和數(shù)據(jù)不適用于其它軟件。哪怕是同一種程序設(shè)計語言編寫的軟件,并且運行在同一個機器上,也是如此。大量的系統(tǒng)研發(fā)時間放在映射設(shè)備之間的信號,以及為了使不同類型的儀表和控制器能夠通信而添加的驅(qū)動。
?
DCS和PLC 兩種系統(tǒng)難以修改和擴展,不能提供高度的靈活性。而這一點卻是先進,靈活的控制系統(tǒng)所期望的。
工業(yè)通信標準的出現(xiàn),比如現(xiàn)場總線Fieldbus。允許不同類型的儀表和控制設(shè)備能夠相互操作。DCS系統(tǒng)和PLC為主系統(tǒng)之間的區(qū)別開始消失。 DCS的儀表和PLC 開始提供同樣的功能。工業(yè)應(yīng)用在一些概念之下同樣可以在PLC 硬件上實現(xiàn)。比如SoftPLC ,也就是在通用PC機上實現(xiàn)PLC的功能。隨著工業(yè)加固型PC(IPC)提供了更高的可靠性,它們的使用越來越普及。我們看到使用更多PC為基礎(chǔ)的控制器的趨勢。到目前為主,傳統(tǒng)PLC只能使用由PLC 廠商提供的特定語言來編程。用戶需要對軟件具有更開放的方法,導(dǎo)致出現(xiàn)了新的軟件控制器,它們可以使用多種不同的程序語言。這種新型的軟件控制器經(jīng)常被稱為可編程自動化控制器(Programmable Automation Controller PAC)。
我們能夠預(yù)料,控制工業(yè),制造和商業(yè)的系統(tǒng)將開始融合。例如,能夠?qū)⒁粋€運行在總部的商業(yè)系統(tǒng)無縫連接在世界上任何地方的工廠中運行的制造過程系統(tǒng),工業(yè)控制系統(tǒng),甚至是控制器。
圖1.3 描述了一個先進分布式功能系統(tǒng)的組成部分。在這樣的系統(tǒng)中,每個設(shè)備都連接到工業(yè)網(wǎng)絡(luò),并能夠提供一部分控制功能。智能設(shè)備,比如泵,閥門或者傳感器將具有內(nèi)置的控制功能,通過軟件和更智能的設(shè)備連接它們,比如HMI 面板。MHI 面板上的一個滑桿能夠以軟件化的方式直接和PID 控制器的設(shè)置點連接起來。控制泵的速度。
為了取得這樣高水平的集成,仍需要建立靈活的系統(tǒng)。當工業(yè)和商業(yè)需要改變的時候,它們能夠再工程化(re-engineered)。這需要一種全新的軟件設(shè)計方法-基于分布式對象交互(interaction? of distributed objects)的新技術(shù).有一些先進的軟件技術(shù)已經(jīng)影響到這個領(lǐng)域。首先就是中間件技術(shù),比如來自于對象管理群(OMG)的CORBA,或者DDS。進一步的解耦是通過導(dǎo)入面向服務(wù)架構(gòu)(SOA) 取得的。在SOA 架構(gòu)中,組件提供了服務(wù)。這些服務(wù)能夠靈活地相互組合。在這些系統(tǒng)的頂層,出現(xiàn)了若干協(xié)同技術(shù),比如 復(fù)雜事件系統(tǒng),或者企業(yè)服務(wù)總線的概念。
?
在工業(yè)過程測量和控制系統(tǒng)的領(lǐng)域,來自于OPC 基金會的技術(shù)允許遠程工業(yè)控制器,或者制造經(jīng)理的PC 上能夠不管數(shù)據(jù)在什么地方。可以無縫訪問它們。可以考慮使用使用以太網(wǎng),同層通信和SOA 的互聯(lián)網(wǎng)技術(shù)可以用于制造系統(tǒng)。而使用了新的OPC? UA 中的建議,這種無縫互操作性也能進入小型工業(yè)設(shè)備(比如傳感器,或者執(zhí)行部件)
工業(yè)社團歷來重視軟件組件的互聯(lián)。比如以功能塊的形式對最終用戶而言具有主要的優(yōu)點。這些優(yōu)點包括通過重復(fù)使用標準解決方案,改善軟件生產(chǎn)力。來自不同廠商的軟件和設(shè)備實現(xiàn)即插即用,改善設(shè)計的靈活性。到目前為止,新標準都能夠?qū)崿F(xiàn)分布式組件的“技術(shù)集成(technical integration)”,不過,下一個主要的跨越將是“語義集成(semantic integration)”(也就是定義數(shù)據(jù)后面的含義)。我們能夠?qū)崿F(xiàn)遠程工業(yè)控制器的軟件與運行算法的PC之間交換數(shù)據(jù),不過這種連接是有意義的么?
1.1 IEC61499功能塊標準
國際電工委員會已經(jīng)開發(fā)了一個專門的標準IEC61499 ,它定義了如何將功能塊(function block)用于分布式工業(yè)過程,測量和控制系統(tǒng)。這項工作有助于解決語義集成的問題。
在工業(yè)系統(tǒng)中,功能塊建立了定義魯棒性,可重用軟件組件的概念。一個功能塊能夠提供解決小問題的軟件解決方法,比如控制閥門。也可以解決一個工廠的主要部件,例如完整的生產(chǎn)線。功能塊允許工業(yè)算法封裝在一種可理解的形式中,使非軟件專家的人士可以使用。每個功能塊都有數(shù)據(jù)輸入,供算法執(zhí)行時讀取。算法的結(jié)果寫入功能塊的輸出。完整的應(yīng)用由功能塊輸入輸出互聯(lián)的功能塊網(wǎng)絡(luò)組成。
IEC61499 標準是建立在PLC 語言標準IEC61131-3 的功能塊概念之上的。IEC61131-3 是與現(xiàn)場總線(Fieldbus )標準化工作一起發(fā)展起來的。現(xiàn)場總線(Fieldbus )通信協(xié)議棧的應(yīng)用層提供了軟件接口,允許遠程功能塊在在現(xiàn)場總線上協(xié)同操作。然而,IEC61499 開發(fā)了一個通用的標準,適用于工業(yè)的許多需要軟件組件的場合。例如建筑管理系統(tǒng)。這些軟件組件具有功能塊類似的行為方式。
?? IEC 61499 以一種獨立于實現(xiàn)的形式定義了描述功能塊的模型和方法。系統(tǒng)集成者能使用這種方法構(gòu)建分布式控制系統(tǒng)。它允許一個系統(tǒng)定義成為邏輯連接的功能塊網(wǎng)絡(luò)。這些功能塊運行在不同的處理資源上。
? ?圖1.4 描述了IEC61499 用于系統(tǒng)設(shè)計生命周期的方法。控制系統(tǒng)的設(shè)計通常從分析物理工廠圖和控制系統(tǒng)需求文檔開始,然后定義功能區(qū)域和它們與工廠的交互。最后階段將功能映射到物理資源,例如PLC ,儀表和控制器。
演示IEC61499 使用的最好方式是考慮在設(shè)計分布式控制中的下列階段:
-功能設(shè)計階段 。在這個階段,過程工程師分析物理工廠設(shè)計,例如使用管路和儀表圖(Piping and Instrumentation Diagrams P&ID ),建立頂層的功能需求。這可以表示成一系列塊。這些塊勾勒出主要的軟件組件以及它們的主要相互連接。在這個階段,軟件模塊的物理分布并不考慮。在許多場合下,這些圖顯示工廠或者機械的物理設(shè)計。同時也顯示活動設(shè)備的位置。比如閥門,泵,儀表點,壓力,溫度傳感器位置
-功能分布階段 。在分布式系統(tǒng)中,進一步的設(shè)計階段需要定義控制功能分布到過程資源。
IEC61499 標準提供了定義分布式功能到相互連接功能塊的相關(guān)模型和概念。系統(tǒng)工程師完成將軟件需求映射到功能塊的細節(jié)設(shè)計。這些功能塊分布在各種過程資源上。許多場合下,設(shè)備的功能塊是預(yù)先開發(fā)好的。例如,像智能閥門這樣的智能設(shè)備以功能塊的形式提供軟件包。
每個功能塊有自己特定的軟件設(shè)計生命周期。有時候需要為一個應(yīng)用特別地設(shè)計功能塊。在另一些場合,可以使用儀表中已有的功能塊。
我們在后面將會看到,使用IEC61499 定義的功能塊只是一個分布式系統(tǒng)圖中的子集。需要其它的設(shè)計圖給出所有的系統(tǒng)設(shè)計。IEC61499 是開發(fā)建模一個分布式控制系統(tǒng)的第一步。
隨著使用組件為基礎(chǔ)的軟件趨勢的進一步發(fā)展,工業(yè)控制器和儀表將提供功能塊作為設(shè)備固件的一部分。開發(fā)者也提供功能塊庫,系統(tǒng)工程師可以選擇使用其中的功能塊。系統(tǒng)設(shè)計變成了軟件組件選擇,配置的過程。這就好像許多的硬件設(shè)計現(xiàn)在主要是選擇集成電路和互聯(lián)的過程。
?IEC 61499 以標準的形式定義封裝了軟件功能和算法的功能塊。這允許工具軟件和其它標準使用同樣的概念和方法學(xué)來處理功能塊 .IEC61499 同樣定義了一組通信功能塊。比如Client/Server 功能塊。用來標準化不同物理處理資源上的功能塊相互交換數(shù)據(jù)。而服務(wù)功能塊提供與處理資源架構(gòu)的接口。
圖1.5 顯示了三個相互連接的功能塊。分別表示了壓力變送器,PID控制功能塊和泵。它們之間使用了IE61499 概念互聯(lián)。注意,在功能塊之間有數(shù)據(jù)和事件流。我們在后面將會看到,IEC61499 方法論允許數(shù)據(jù)和相關(guān)的事件緊密地耦合在一起。也就是說,所有的事件和數(shù)據(jù)按規(guī)則地處理,或者異步地處理。
?
?
圖1-6 展示了在過去的50年間工業(yè)控制技術(shù)的發(fā)展趨勢。自從1950年以來,得益于硬件和軟件的穩(wěn)步成長,控制系統(tǒng)的功能也越來越強大。控制系統(tǒng)使用微處理器數(shù)字化后,增加了對標準化的需求,減少不必要的軟件多樣性和集成的問題。
IEC61131-3 針對了于PLC語言標準化。PLC 是單一處理器和少數(shù)緊耦合的多處理器結(jié)構(gòu)的設(shè)備,它們的配置比較小,當轉(zhuǎn)向大型分布式功能時,需要像IEC61499這樣標準進一步地定義和分布式部署功能的方法。同時也需要系統(tǒng)構(gòu)建和集成工具。
例如,在用于運行設(shè)計,配置和管理分布式系統(tǒng)的工具軟件集成套件中。定義系統(tǒng)的設(shè)計工具和程序設(shè)計工具集成在了一起,同時配置設(shè)備,定義HMI 屏幕,配置工業(yè)網(wǎng)絡(luò)的工具也集成在一起。在這樣的集成套件中,IEC61499 將定義系統(tǒng)模型,它不僅有助于分布式系統(tǒng)的功能設(shè)計,而且有助于集成進行數(shù)據(jù)和信息模型定義的系統(tǒng)工具。
1.2開發(fā)超越IEC61131-3 概念的功能塊
為什么不能將IEC61131-3 的功能塊概念用于分布式系統(tǒng)?這是由于IEC61131-3 PLC 語言標準引入的概念有許多限制。使用IEC61131-3 功能塊圖(FBD)圖形語言,通過功能塊之間的輸入輸出變量連接,形成數(shù)據(jù)塊簡單的數(shù)據(jù)流鏈接。在圖1.7a 中,每個功能塊提供單獨的一個內(nèi)部算法。當該功能塊調(diào)用時它被執(zhí)行。功能塊的執(zhí)行順序是依賴于其它的功能塊,通常是從左到右地運行,因為功能塊右邊的輸入依賴于左邊功能塊的輸出。
然而,如同圖1.7b中引入了反饋的路徑,執(zhí)行的順序就不能從圖上確定。因為兩個功能塊的執(zhí)行都依賴其它功能塊的輸出值。在復(fù)雜的網(wǎng)絡(luò)中,程序系統(tǒng)很難確定正確的執(zhí)行循序。為了克服這個問題,許多IEC61131-3程序設(shè)計系統(tǒng)提供了額外的機制來定義功能塊執(zhí)行的順序。例如,用戶可以看一個功能塊列表,手動地賦予執(zhí)行順序。不幸的是這種機制超出了IEC6113-3標準的范圍。從而導(dǎo)致了功能塊執(zhí)行順序的方法不清晰,和難以在不同系統(tǒng)中移植。
在IEC3113-3 中有一個特性能夠粗略地提供一個通過功能塊鏈傳遞執(zhí)行流的方法,這就是使用EN輸入和ENO 輸出信號(圖1.8)
?
?
EN和ENO 在梯形圖中用來為功能塊傳遞“電源流”(Power Flow),然而,我們現(xiàn)在認識到 EN和ENO不能提供在復(fù)制的功能塊網(wǎng)絡(luò)中靈活性。有效的EN和ENO 信號能當作功能塊之間傳遞事件的手段。有了EN 信號,表示輸入數(shù)據(jù)就緒,功能塊可以執(zhí)行。而ENO 信號表示功能塊已經(jīng)執(zhí)行了,輸出數(shù)據(jù)為下一個功能塊準備。我們將會看到,事件傳遞的想法在IEC61499 中得到了擴展。
IEC6113-3 的焦點是定義一個或幾個緊耦合的處理資源上運行的軟件模型和PLC 語言。所以,從圖1.9 看出,IEC6113-3 軟件模型也的確考慮了多資源的配置,這個標準提供了兩種機制來傳遞資源之間的數(shù)據(jù)和控制信號。這就是全局變量和通信功能塊。
?
1.2.1 全局變量
在配置層面使用全局變量,能夠在不同資源上的程序和功能塊之間傳遞數(shù)據(jù)和控制信號。然而,已經(jīng)明顯地了解,使用全局變量是相當差的,在不同處理器上運行的資源之間傳遞數(shù)據(jù)是不安全的機制。不能夠清晰地標識哪里全局變量被更新,哪里被使用。在IEC61131-3 的圖形中沒有定義全局變量和程序和功能塊內(nèi)部引用它們的變量之間的鏈接。另外,傳遞全局變量還有一些危險的問題存在。由全局變量傳遞的信號的時鐘和同步很難加以定義。 在IEC61131-3 中,也沒有定義如何處理共享全局變量初始化和更新的機制。
1.2.2 通信功能塊
PLC標準的第五部分,IEC61131-5 是關(guān)于如何使用IEC61131-3 軟件模型為PLC 程序設(shè)計提供的通信服務(wù)。IEC61131-5 定義了一系列用于PLC之間交換數(shù)據(jù)的功能塊。它們包括將PLC 作為”服務(wù)器”的功能塊,也就是說,PLC 支持響應(yīng)外部的服務(wù)請求。也包括支持客戶端:Client “行為的功能塊。支持PLC 請求作為服務(wù)器的其它PLC 和系統(tǒng)
IEC 61131-3 允許在配置中有一個外部可以訪問變量子集。外部PLC或者其它非PLC 設(shè)備可以使用通信功能塊通過外部通信接口訪問這些稱為ACCESS的變量。。
我們已經(jīng)看到,IEC61131-3和制造消息標準IEC61131-5 中提供了一系列軟件機制來實現(xiàn)PLC 之間的通信。 對于少量PLC 的系統(tǒng)而言,這些通信機制是比較合適的。 IEC發(fā)展功能塊的工作組非常清楚,IEC61131的通信模型具有一系列的限制。比如全局變量和通信功能塊的概念。也沒有確切的方法來定義分布式功能塊的連接。
需要一個清晰的通信模型,它們不僅用于PLC和PLC 之間的通信,而且用于分布在工業(yè)網(wǎng)絡(luò)中的大小分布式設(shè)備之間的通信。新的功能塊模型應(yīng)該是可擴展的,也就是說它能夠適合控制器,PLC和控制器,也適合小型現(xiàn)場總線設(shè)備,比如智能閥門和傳感器。事實上,可以想象一個功能塊模型涵蓋所有類型的設(shè)備和控制器。
小結(jié)一下,IEC61131-3 模型對于多資源分布系統(tǒng)而言,具有下列不足之處:
IEC61499 的發(fā)展
當國際電工委員會在1990年第一次表示需要為分布式工業(yè)過程,測量和控制系統(tǒng)提供一個新的功能塊標準。它就認識到這些功能塊因該是一個通用的概念,適合廣泛的標準。例如,功能塊的概念能夠用于PLC ,智能設(shè)備,智能建筑管理和現(xiàn)場總線協(xié)議Fieldbus 協(xié)議中。那時候已經(jīng)有一個標準使用功能塊的概念。而且正在開發(fā)之中,它就是IEC6113-3 。IEC6113-3主要關(guān)注PLC 的編程語言。為了發(fā)揮已有know-how的作用,IEC 技術(shù)委員會TC65 將IEC61499 標準工作賦予同一個工作組(WG6)。IEC61499 工作組的成員來自于美國,日本,英國和許多歐洲國家。它們代表了工業(yè)控制的供應(yīng)商和用戶。
IEC61499 是一個多部分(multi-part)的標準。IEC 標注啊過程管理分成四個主要階段(i) 標準開發(fā)階段。(ii)公開可用規(guī)范(Publicly Available Specification PAS)階段 (iii)最后審查和發(fā)布階段(iv) 維護和再發(fā)布階段。最后階段每五年進行一次。PAS 是IEC 早期發(fā)布標準的推薦概念。PAS 能夠在還沒有完成所有國際標準驗證過程之前發(fā)布。PAS 可用看作是一個試行標準,供早期產(chǎn)品和服務(wù)開發(fā)。
?? 對于IEC61499 第一部分,PAS 部分開始于2000年,最后發(fā)布所有部分,形成國際標準是在2005年。在PAS階段,公開采集反饋意見,做了若干修改和改善。形成了早期的IEC61499.在2010年,第一次完成第一次維護。若干歧義的地方做了修改。結(jié)果產(chǎn)生了IEC61499 第二版在2012年發(fā)表。第二版是本書的基礎(chǔ)。由三個部分1 ,2和4 組成。(第三部分在2008年去除了)
第一部分(part1 ) 縱觀了面向功能塊的分布式系統(tǒng)的設(shè)計和建模,主要包括下面幾個主題
1 一般需求,包括引言,范圍和主要引用(也就是其它標準),定義和參考模型
2 說明功能塊類型的規(guī)則和功能塊類型實例的行為規(guī)則。
?
3 在配置分布式工業(yè)過程測量和控制系統(tǒng)(IPMCS)中使用功能塊的規(guī)則
4 為滿足IPMCS 通信需求中使用功能塊的規(guī)則
5 在管理IPMCS中應(yīng)用,資源,和設(shè)備中使用功能塊的規(guī)則
本書主要關(guān)注IEC61499 Part1 涉及架構(gòu)和模型的部分。
第二部分part 2
?IEC61499 Part2 主要涉及規(guī)范化信息模型的定義,賦能CASE 工具,基于功能塊管理和交換系統(tǒng)設(shè)計的實用工具。Part 2 的主要關(guān)注點是“工程任務(wù)支持”,它涉及在Part1 的架構(gòu)和概念構(gòu)建的IPMCS系統(tǒng)的設(shè)計,實現(xiàn),運行和維護的工程任務(wù)指南。
一開始打算使用生產(chǎn)數(shù)據(jù)交換標準STEP(ISO10303),作為不同的設(shè)計工作站之間功能塊設(shè)計的保存和交換的手段。STEP 是CAD 工作站用于存儲和交換電子電路設(shè)計的標準。很明顯,電子電路原理圖和基于功能塊設(shè)計的控制系統(tǒng)非常相似。
然而在IEC61499 Part 2中,最后采用了XML語言來提供保存和交換功能塊定義的方法。者提供了能夠在互聯(lián)網(wǎng)上傳輸,使用瀏覽器閱讀的可能性。使用XML 能使用各種屬性的方式來保存設(shè)計,包括版本信息和圖形層的細節(jié)-這些將在2.6節(jié)進一步地討論。
第四部分(Part4) 主要涉及定義如何兼容IEC61499 的重要主題,以及廠商如何具體規(guī)范說明它們。在非常早期的發(fā)展階段,標準就意識到兼容性是非常重要的,特別是一個分布式系統(tǒng)中,設(shè)備來自于不同的廠商。在另一方面,IEC61499 是一個通用的標準,不涉及分布式IPMCS 實現(xiàn)的細節(jié)。為了遵循這一點,IEC61499 的Part4 定義了構(gòu)建和開發(fā)兼容性文件的規(guī)則。一個遵循Part4 定義額兼容文件需要規(guī)定IEC61499 Part1和Part2 特性的特殊實現(xiàn),考慮分布式IPMCS 的重要屬性。
互操作性(Interoperability)運行來自不同廠商的設(shè)備能夠通過通信系統(tǒng)交互
可移植性(Portability)定義IEC61499 項(也就是功能塊,應(yīng)用,系統(tǒng)配置)的交換格式
可配置性(Configurability)允許來自不同廠商的軟件工具相互配置設(shè)備
?
IEC 的初衷是新的功能塊標準將成為一個通用的標準,它能夠用來作為整個工業(yè)過程測量和控制領(lǐng)域中各種標準的基礎(chǔ)。為了這個原因,出于它通用的特性,IEC61499 是一個相當學(xué)術(shù)性的標準。也被定義為” 應(yīng)用領(lǐng)域中性“,也就是說,它不包含任何一個特定領(lǐng)域的特殊特性。其它標準可以使用IEC61499 的概念來建立,并且添加它們自身領(lǐng)域的特殊擴展。
一個好例子是,由過程控制功能塊工作組在IEC61499 功能塊模型上建立的一個新標準。這個小組的主要目標是定義在過程工業(yè)中使用的功能塊。不過,它們采取可來自IEC 61499 中通用功能塊的概念作為它們工作的基礎(chǔ)。通過將通用模型應(yīng)用到實際工業(yè)過程控制應(yīng)用中,過程控制小組向IEC61499 工作小組提供了有用的反饋。在許多場合,他們在功能塊模型中有的缺陷幫助IEC61499 作改善。
更進一步地,在標準的評估階段,IEC61499 定義的功能塊模型具有很大潛力來改善系統(tǒng)設(shè)計。在過去的幾年中,實現(xiàn)IEC61499 的若干平臺可供使用了。這些平臺允許使用IEC61499 模型直接開發(fā)和操作分布式IPMCS。
1.4為什么使用功能塊
對于許多軟件工程師而言,功能塊的想法看起來有些別扭-將軟件當作了硬件塊。
在面向?qū)ο蟪绦蛟O(shè)計中的對象在某種程度上類似于功能塊。對象的概念之所以成功,是因為它們能夠為在真實世界的概念和項目建立行為建模。使用對象的優(yōu)點總結(jié)如下:
對象反映了真實世界
當設(shè)計一個應(yīng)用程序的時候,用一個應(yīng)用程序的對象來表現(xiàn)真實世界的項目更加自然和直觀,比如文檔,雇員和產(chǎn)品。
對象是穩(wěn)定的
通常來講,對象是經(jīng)過證實的軟件單元,它們不會大幅度改變。在許多場合,開發(fā)者在廣泛的應(yīng)用中使用相同的對象類。例如,當一個建立一個諸如“供應(yīng)商”對象,它表現(xiàn)了一個項目的所有行為和特性。它可以廣泛應(yīng)用到不同的商業(yè)應(yīng)用程序中處理供應(yīng)商。供應(yīng)商對象通常具有名稱,地址,產(chǎn)品范圍,貿(mào)易條款等等。并且具有獲取和更新這些信息的方法。
對象降低了復(fù)雜性
開發(fā)者可以在不了解對象內(nèi)部工作的情況下使用一個對象。能夠通過建立和連接對象開發(fā)一個應(yīng)用程序-通常不需要了解對象的內(nèi)部。
對象能夠重復(fù)使用
???? 一旦一個對象研發(fā)和測試完成,它將稱為開發(fā)者清單中的一部分。對象可以在一個庫中發(fā)布,本地或者全球的開發(fā)者都能夠使用它們。
盡管OO 軟件開發(fā)大大地改變了軟件開發(fā)的世界,不過它不能保證軟件的提供可重復(fù)軟件。對象往往是為它們的特定使用場合過度定制化設(shè)計的,限制了它們的可應(yīng)用性。
為了改善這種情形,Szyperski引入了軟件組件的陌生概念。他定義軟件組件類似于對象:“軟件組件是一個完全指定的接口和上下文獨立的組合(uint of composition 單元,軟件組件獨立地部署,應(yīng)滿足被第三方組合使用的條件。軟件組件具有下列特性:
獨立部署的單元
這個特性需要組件自包含,并能從環(huán)境和其它組件之間清晰地分離出來。一個組件永遠不能部分地部署。
第三方復(fù)合的單元
第三方在沒有組件內(nèi)部結(jié)構(gòu)信息的情況下,能夠和其它組件組合在一起使用它們.
通過清晰接口交互的單元
為了實現(xiàn)前兩個特性,需要通過清晰定義的接口與組件交互。純靜態(tài)接口定義是不夠的。為了正確地使用它們,需要動態(tài)的接口定義。更進一步,必須沒有隱藏的接口(例如,全局變量)。
作為面向組件的軟件設(shè)計,在功能塊的世界,系統(tǒng)設(shè)計者主要集中于選擇標準,證明的包覆功能。并以盡可能最快,和確定的方式將它們鏈接在一起。使用功能塊非常接近系統(tǒng)設(shè)計師的思維模式。他們熟悉以不同的方式連接物理設(shè)備,提供特定的系統(tǒng)解決方案。功能塊也分享軟件組件的特性。為系統(tǒng)開發(fā)者和最終用戶帶來了明顯的優(yōu)勢
軟件開發(fā)的當前發(fā)展趨勢是在更高的層面使用抽象形式化模型來描述軟件。使用域定義規(guī)范模型方法,某些軟件系統(tǒng)能夠通過域?qū)<腋哔|(zhì)量地輕松開發(fā)出來。在下面的章節(jié)可以看到,IEC61499 提供了軟件建模有效工具,也提供了復(fù)雜的建模語言來定義分布式控制系統(tǒng)。特別是IPMCS 領(lǐng)域。
1.5 系統(tǒng)設(shè)計視圖
為任何一個大型項目開發(fā)軟件都是非常復(fù)雜的。特別是在分布式控制的許多場合中,軟件在不同的資源上運行。設(shè)計問題是蠻嚇人的。很明顯,需要一些圖形化的設(shè)計視圖來表達和分析設(shè)計的各個層面。有些視圖表示設(shè)計的層次,有個表示系統(tǒng),或者軟件的物理結(jié)構(gòu)。
不管人們?nèi)绾蔚厝L試,,幾乎沒法使用一種設(shè)計方法學(xué)來涵蓋系統(tǒng)設(shè)計的所有方面。 許多設(shè)計內(nèi)容不能用一種圖形化表達方式來表達,比如
什么是頂層軟件結(jié)構(gòu)
系統(tǒng)為最終用戶提供什么功能
如何在系統(tǒng)中分布功能
系統(tǒng)部件如何連接
如何管理軟件庫和標準組件
系統(tǒng)如何響應(yīng)某些敏感事件
? 許多系統(tǒng)設(shè)計問題的都是采用過少的設(shè)計方法來表達系統(tǒng)設(shè)計的所有方面而導(dǎo)致的。一種特別的設(shè)計視圖能展示系統(tǒng)中的軟件的邏輯連接,但是他無法展示響應(yīng)系統(tǒng)事件的系統(tǒng)的行為。
事實上,大多數(shù)軟件設(shè)計需要至少四種設(shè)計視圖和一組場景(scenarios)。這構(gòu)成了所謂4+1 視圖模型。這是由Kruchten 提出的。
?
1.5.1 邏輯視圖
這個設(shè)計視圖用來描述系統(tǒng)的功能需求。它表達系統(tǒng)用戶需要的軟件功能。在一個分布式系統(tǒng)設(shè)計中。他會表示主要的軟件功能塊和他們之間的主要接口。系統(tǒng)功能的分布和執(zhí)行都沒有涉及。
?? IEC61499 應(yīng)用的方法學(xué)和功能模塊自身能夠用來定義某些邏輯設(shè)計視圖。
1.5.2 過程視圖
過程設(shè)計視圖涉及許多系統(tǒng)的非功能性需求。這些包括性能,系統(tǒng)分布以及并發(fā)性。Kruchten 定義過程視圖是描述“通信程序的邏輯網(wǎng)絡(luò),他們分布在一組物理資源中。
這幾乎完全相當于IEC61499 的功能塊標準。它提供了一種架構(gòu),將分布式系統(tǒng)實現(xiàn)描述成為互聯(lián)的功能塊網(wǎng)絡(luò)
1.5.3 開發(fā)視圖
開發(fā)視圖描述如何來組織構(gòu)建大型系統(tǒng)的軟件。構(gòu)建一個大型的分布式控制系統(tǒng)涉及各種各樣的軟件庫和軟件模塊。開發(fā)視圖顯示軟件組件(比如功能塊)之間的關(guān)系。包括 重使用(reuse)的便捷性,組件的大小,版本的兼容性等內(nèi)容。作為例子,考慮將一個功能塊用于傳送帶系統(tǒng),我們將表明支持它的設(shè)備類型,
?? 當前,沒有IEC 標準方法學(xué)來處理分布控制系統(tǒng)。借助IEC61499 中適配模型提供的接口的概念,只是有限的提供需要的交互點的定義。
1.5.4 物理視圖
在一個分布式控制系統(tǒng)中,物理視圖是好理解的,它描繪了系統(tǒng)中的物理設(shè)備和控制器。連接他們的各種通信鏈路,物理視圖通常考慮系統(tǒng)的物理配置。顯示設(shè)備的定位和總線和通信鏈路的細節(jié)
這部分對應(yīng)于IEC61499 的系統(tǒng)模型,它提供了為可用的設(shè)備,通信鏈路和設(shè)備互聯(lián)建模。沒有考慮在工廠的物理放置和于過程的接口
1.5.5? 場景(Scenarios)
完成系統(tǒng)設(shè)計的最后一個,也是重要的設(shè)計模型Kruchten 稱為”場景“ 。場景描述了軟件單元之間的相互交互。,提供了一個系統(tǒng)最重要的,關(guān)鍵的功能。
1.6 IEC61499 未來的超越
人們評價IEC61499 提出的功能塊模型沒有采納IEC61131-3最新版本中已經(jīng)采納的OO軟件技術(shù)的概念。然而,除了OO 軟件技術(shù)以外,然而,除了OO軟件技術(shù)以外,一些基本的高層概念也是需要的。比如在大型和擴展的軟件模型概念下的程序設(shè)計。該標準從對已有的工業(yè)功能塊開始概念開始,并且朝著這些概念擴展是短期內(nèi)需要考慮的。
一個關(guān)于通信和軟件組件的新工業(yè)標準,需要在物理設(shè)備和軟件之間互聯(lián)來帶清晰的益處。然而,在我們能夠取得在實現(xiàn)大型系統(tǒng)的真正可互操作軟件組件之前,我們需要認同描述需求的通用方法,比如信息模型和數(shù)據(jù)傳輸。這是IEC61499 在工業(yè)控制領(lǐng)域需要專心致志解決的問題,
在下面的章節(jié),我們將描述IEC61499 中的概念。并且來看這個標準如何來為分布式控制系統(tǒng)建模。
?
?
總結(jié)
以上是生活随笔為你收集整理的《使用IEC61499为控制系统建模》-第一章 概述的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win7 台式电脑怎么调节屏幕亮度
- 下一篇: log4j自定义新的级别