新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 現(xiàn)場總線控制系統(tǒng)功能塊實(shí)例化

現(xiàn)場總線控制系統(tǒng)功能塊實(shí)例化

作者: 時間:2012-08-10 來源:網(wǎng)絡(luò) 收藏
引言

是“安裝在生產(chǎn)過程區(qū)域的現(xiàn)場設(shè)備/儀表與控制室內(nèi)的自動控制裝置/系統(tǒng)之間的一種串行、數(shù)字化、多點(diǎn)通信的數(shù)據(jù)總線”。是一種新型的自動化控制系統(tǒng),是當(dāng)今自動控制技術(shù)的發(fā)展方向。技術(shù)可被廣泛應(yīng)用于制造業(yè)、流程工業(yè)、樓宇、交通等自動化控制系統(tǒng)中。

在眾多的現(xiàn)場總線技術(shù)當(dāng)中,由現(xiàn)場總線基金會組織(FieldbusFoundation,F(xiàn)F)開發(fā)的基金會現(xiàn)場總線在工程自動化領(lǐng)域得到了廣泛的支持?;饡F(xiàn)場總線是一種是全分布式的自動化系統(tǒng),主要功能是對工業(yè)生產(chǎn)過程進(jìn)行測量、信號變送、控制等。FF于1996年頒布了低速總線H1標(biāo)準(zhǔn)。隨著以太網(wǎng)技術(shù)的成熟,F(xiàn)F制定了FFHSE(HighSpeedEthernet)規(guī)范,該規(guī)范定義了一種基于高速以太網(wǎng)的現(xiàn)場總線技術(shù)。為實(shí)現(xiàn)自動控制系統(tǒng)的控制功能,在H1和HSE應(yīng)用層之上增加了用戶層。用戶層包括了FF所定義的標(biāo)準(zhǔn)化的功能塊和功能塊應(yīng)用進(jìn)程,構(gòu)成了自動化控制系統(tǒng)中實(shí)現(xiàn)控制功能的主要部分。

功能塊模型

在FF現(xiàn)場總線系統(tǒng)中,工業(yè)控制系統(tǒng)的功能塊應(yīng)用進(jìn)程(FunctionBlockApplicationProcess,F(xiàn)BAP)定義在用戶層,包括資源塊(ResouceBlock)、功能塊(FunctionBlock,F(xiàn)B)和變換塊(TransducerBlock),以及為滿足控制系統(tǒng)需要而增加的各種對象,如鏈接對象(LinkObject)、趨勢對象(TrendObject)等.

在現(xiàn)場設(shè)備應(yīng)用進(jìn)程的體系結(jié)構(gòu)中,資源塊表示網(wǎng)絡(luò)硬件和軟件對象,包含現(xiàn)場設(shè)備的一些硬件和物理特性。資源塊定義了相應(yīng)的參數(shù)來描述所用資源的狀態(tài),并通過執(zhí)行特定的算法來控制對設(shè)備資源的操作。在用戶層應(yīng)用中,功能塊FB代表了應(yīng)用所執(zhí)行的基本的自動控制功能,是定義工業(yè)控制系統(tǒng)的監(jiān)控和控制功能的主要手段。通過定義功能塊,使工業(yè)控制系統(tǒng)的自動控制功能盡可能獨(dú)立于輸入輸出(InputOutput,IO)設(shè)備。功能塊根據(jù)指定的算法并結(jié)合其內(nèi)含的參數(shù)來處理輸入?yún)?shù),得到的輸出提供給其它的功能塊或者變換塊執(zhí)行控制功能。

定義變換塊的目的是使功能塊和IO設(shè)備隔離開來,這些IO設(shè)備包括傳感器、執(zhí)行器和轉(zhuǎn)換開關(guān)。變換塊通過由功能塊使用的獨(dú)立接口控制對IO設(shè)備的訪問,同時,變換塊還執(zhí)行校準(zhǔn)和線性化的功能。鏈接對象提供了功能塊輸入輸出間的對應(yīng)關(guān)系,作為在控制系統(tǒng)中交換信息的映射。在FF現(xiàn)場總線控制系統(tǒng)中,現(xiàn)場設(shè)備間或設(shè)備內(nèi)部進(jìn)行交換的過程數(shù)據(jù)和事件都是通過連接對象來定義的。

功能塊實(shí)例化

在建立控制系統(tǒng)的過程中,控制應(yīng)用所需要的現(xiàn)場設(shè)備是不確定的。即便是一個構(gòu)建好的控制系統(tǒng),也可能會因?yàn)楣δ芑蛘呤切阅苌系男枰砑有碌脑O(shè)備,這就需要現(xiàn)場設(shè)備比如IO設(shè)備等能夠提供完善的功能。但現(xiàn)場設(shè)備通常都是嵌入式設(shè)備,其操作系統(tǒng)采用嵌入式操作系統(tǒng)。因此現(xiàn)場設(shè)備的可用資源有限,同時實(shí)現(xiàn)所有功能對現(xiàn)場設(shè)備來要求太高。對于IO設(shè)備,多路模擬輸入(MultipleAnalogInput,MAI)功能塊負(fù)責(zé)模擬數(shù)據(jù)采集,多路離散輸入(MultipleDiscreteInput,MDI)功能塊負(fù)責(zé)數(shù)字?jǐn)?shù)據(jù)的采集,每個MAI或者M(jìn)DI功能塊所能采集的數(shù)據(jù)節(jié)點(diǎn)是一定的。一般情況下,每個現(xiàn)場設(shè)備中的功能塊類型和數(shù)目在出廠之前就已經(jīng)定制好了。如果控制系統(tǒng)的規(guī)模發(fā)生了變化,那么原先安裝的現(xiàn)場設(shè)備就可能滿足不了控制系統(tǒng)的需要。而如果允許控制工程師能夠根據(jù)實(shí)際的需要增加現(xiàn)場設(shè)備中功能塊的類型和數(shù)目,則能夠大大地降低控制系統(tǒng)的復(fù)雜性,節(jié)省控制系統(tǒng)升級所需要的時間和成本,從而提高生產(chǎn)效率和效益。

功能塊實(shí)例化機(jī)制

為實(shí)現(xiàn)功能塊和其它對象的實(shí)例化,在基金會現(xiàn)場總線用戶層規(guī)范中定義了Action對象。通過對Action對象進(jìn)行操作,可以在控制系統(tǒng)需要某個對象或者功能塊時,在現(xiàn)場設(shè)備中創(chuàng)建所需要的對象或者功能塊。也可以通過Action對象刪除現(xiàn)場設(shè)備中存在的對象或功能塊。Action對象包含3個參數(shù),以結(jié)構(gòu)的形式定義為:

typedefstruct{
unsignedcharucAction;
unsignedlongulFunction;
unsignedshortuOccurrence;
}FF_Action;

其中,第一個參數(shù)ucAction用來表示所采取的操作,取值為0、1或者2,0表示沒有任何操作,1表示實(shí)例化由參數(shù)ulFunction指定的功能塊或者是對象,2表示請求刪除由參數(shù)ulFunction指定的功能塊或者對象。第二個參數(shù)ulFunction表示實(shí)例化操作或者刪除操作時所操作的對象,該參數(shù)的取值是設(shè)備描述文件(DeviceDescription,DD)中針對具體的功能塊或者對象所定義的值。第3個參數(shù)uOccurrence在ucAction等于0或1時,其取值必須為0,在執(zhí)行刪除操作即ucAction等于2時,參數(shù)uOccurrence的值是要刪除的功能塊或?qū)ο蟮男蛱?,即表示要刪除第幾個由ulFunction指定的功能塊或?qū)ο?。?shí)例化的操作通過組態(tài)軟件執(zhí)行,用戶選擇了要實(shí)例化的功能塊后,組態(tài)軟件向指定的現(xiàn)場設(shè)備發(fā)出FMS(FieldbusMessageSpecification)寫請求?,F(xiàn)場設(shè)備接收到FMS寫請求后,首先判斷本設(shè)備中是否已經(jīng)定義了實(shí)例化請求操作中指定類型的功能塊。如果本設(shè)備中定義了該類型的功能塊,則執(zhí)行實(shí)例化操作,動態(tài)申請一塊內(nèi)存,內(nèi)存的大小即實(shí)例化請求操作中指定類型功能塊的大小。然后將該類型功能塊的模板拷貝到新申請的內(nèi)存中。

功能塊和恢復(fù)

在現(xiàn)場總線控制系統(tǒng)中,由于種種原因,很可能會發(fā)生設(shè)備掉電的情況。由于組態(tài)的過程比較復(fù)雜,所以對于整個控制系統(tǒng)來說,實(shí)現(xiàn)現(xiàn)場設(shè)備的功能是非常必要的。特別是對于存在實(shí)例化的功能塊的現(xiàn)場設(shè)備,在設(shè)備重新上電后能夠恢復(fù)實(shí)例化的功能塊和顯得更為重要。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉