新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基金會現(xiàn)場總線系統(tǒng)中功能塊的調(diào)度與通信

基金會現(xiàn)場總線系統(tǒng)中功能塊的調(diào)度與通信

作者: 時間:2016-12-13 來源:網(wǎng)絡(luò) 收藏
  1 引言

  現(xiàn)場總線(Fieldbus)是20世紀末期出現(xiàn)并發(fā)展起來的,用于過程自動化、制造自動化、樓宇自動化等領(lǐng)域的現(xiàn)場智能設(shè)備互連通訊網(wǎng)絡(luò)。它作為工廠數(shù)字通信網(wǎng)絡(luò)的基礎(chǔ),溝通了生產(chǎn)過程現(xiàn)場及控制設(shè)備之間及其與更高控制管理層次之間的聯(lián)系?,F(xiàn)場總線控制系統(tǒng)是一種開放式的、安全性好、成本低、新型的全分布控制系統(tǒng),是以控制、計算機、數(shù)字通訊等技術(shù)為主要內(nèi)容的綜合技術(shù),成為自動化技術(shù)發(fā)展的熱點,并將導致自動化系統(tǒng)結(jié)構(gòu)與設(shè)備的深刻變革。

本文引用地址:http://butianyuan.cn/article/201612/329435.htm

  現(xiàn)場總線技術(shù)的標準化起步較晚,是以目前呈現(xiàn)多種現(xiàn)場總線技術(shù)并存的局面,其中有較強實力和影響的有:FoundtionFieldbus(FF),Lonworks,Profibus,HART,CAN等。它們具有各自的特色,在不同應(yīng)用領(lǐng)域形成了自己的優(yōu)勢。其中,基金會現(xiàn)場總線以其技術(shù)先進、屬下會員實力強大成為非常有競爭力的一種總線技術(shù)。

  基金會現(xiàn)場總線系統(tǒng)是由數(shù)字智能化現(xiàn)場設(shè)備和控制、監(jiān)控設(shè)備互聯(lián)而組成的。他們在一起提供I/O和控制、自動處理等操作。每個現(xiàn)場設(shè)備執(zhí)行整個系統(tǒng)中一部分功能,包括實現(xiàn)一個或多個時間關(guān)鍵的應(yīng)用,例如傳感器數(shù)據(jù)的獲得和控制算法的執(zhí)行。每一個現(xiàn)場應(yīng)用都是由一組設(shè)備功能來實現(xiàn)的,稱作功能塊(FB)。這些應(yīng)用就稱作功能塊應(yīng)用進程(FBAP)。

  2 功能塊的定義和結(jié)構(gòu)特點

  功能塊表示了基本的自動化功能。每個功能塊處理輸入?yún)?shù),并根據(jù)內(nèi)部的內(nèi)含參數(shù),執(zhí)行特定的算法,產(chǎn)生可用的輸出參數(shù)。因此功能塊由輸入,輸出和內(nèi)含參數(shù),和應(yīng)用這些參數(shù)的算法組成。功能塊用一個位號(FBTag)和對象字典(OD)的索引來標識。功能塊位號提供了一個功能塊的符號引用,在一個系統(tǒng)中應(yīng)該是唯一的。對象字典索引是為了快速訪問功能塊而用的。對象字典的索引只是在包含這個功能塊的資源中才有用。功能塊參數(shù)定義了用于功能塊操作的輸入,輸出和內(nèi)含參數(shù)。這些參數(shù)可以通過網(wǎng)絡(luò)訪問,輸入和輸出參數(shù)通過功能塊之間的連接來交換數(shù)據(jù)。內(nèi)含參數(shù)用來定義功能塊的私有參數(shù),盡管他們是網(wǎng)絡(luò)可見的,但是他們不參與功能塊連接。功能塊的參數(shù)用設(shè)備描述(DD)的MemberId和對象字典索引來標識。DDMemberId和一個Tag相對應(yīng),這個Tag在整個系統(tǒng)內(nèi)必須是唯一的;對象索引用來通過FMS服務(wù)來訪問一個功能塊參數(shù)。參數(shù)的描述可以通過DD來擴展。功能塊定義和相關(guān)的DD描述被組成一個一般依賴于應(yīng)用領(lǐng)域、設(shè)備功能和廠商定義的參數(shù)的集合。

  不同類型的設(shè)備根據(jù)實現(xiàn)功能的不同可以有不同的功能塊,典型的功能塊包括模擬輸入(AI),模擬輸出(AO)和PID控制功能塊。每一個功能塊都有一些特定的參數(shù)和算法以實現(xiàn)特定的功能。

  功能塊應(yīng)用結(jié)構(gòu)定義了一個功能塊應(yīng)用的內(nèi)部組件,并規(guī)定了在一個應(yīng)用內(nèi)或多個應(yīng)用之間這些組件的接口,這個結(jié)構(gòu)可設(shè)計如下:

  ·設(shè)計和執(zhí)行功能塊應(yīng)用

  ·配置和集成功能塊應(yīng)用到現(xiàn)場設(shè)備中

  ·系統(tǒng)運行時功能塊之間的互操作。

  一個設(shè)備中的部分或所有組件可以由生產(chǎn)廠商預(yù)先定義。組件的參數(shù)可以通過設(shè)備組態(tài)來修改。另外,設(shè)備還要支持標準的功能塊服務(wù)(包括對功能塊參數(shù)的讀寫服務(wù))。通過這些服務(wù),功能塊和變換塊等組件可以被訪問或修改。

  3 功能塊的執(zhí)行和調(diào)度

  功能塊的執(zhí)行是由一個事件輸入激活的。這個事件可能是:

  ·調(diào)度:調(diào)度定義了功能塊開始被觸發(fā)執(zhí)行的時間。

  ·功能塊執(zhí)行的結(jié)束:同一個設(shè)備內(nèi)的功能塊執(zhí)行完成后有可能觸發(fā)其他功能塊的執(zhí)行。

  ·廠商定義:功能塊的執(zhí)行可由生產(chǎn)廠商自己定義。

  在基金會現(xiàn)場總線中,最常見的是調(diào)度執(zhí)行的功能塊。要想保證功能塊的調(diào)度執(zhí)行正確性和實時性,就必須符合以下特性:

  ·系統(tǒng)中的每個功能塊應(yīng)用有一個相同的時間即系統(tǒng)時間。時間標準的統(tǒng)一才能夠保證每個功能塊執(zhí)行時間的準確性。

  ·測量設(shè)備定期采樣以保證連續(xù)控制的輸入?yún)?shù)的正確性。

  ·在功能塊執(zhí)行時輸入和控制參數(shù)應(yīng)該保持一致。

  ·輸出參數(shù)的產(chǎn)生和應(yīng)用之間的時間間隔必須小于控制回路的執(zhí)行時間。這個時間間隔包括功能塊之間傳輸數(shù)據(jù)所用的時間和數(shù)據(jù)傳輸完成后等待功能塊開始執(zhí)行的時間。

  上述這些特性要求功能塊的執(zhí)行在以下三個方面的調(diào)整:

  首先,要保證整個系統(tǒng)內(nèi)的時間同步,以保證功能塊執(zhí)行的同步。

  第二,要保證輸出參數(shù)的產(chǎn)生在其他功能塊需要這個參數(shù)之前。

  第三,要保證功能塊的調(diào)度與總線上數(shù)據(jù)傳輸?shù)耐?,以確保輸出參數(shù)在合適的時間進行傳輸。

  這三個方面分別是由時鐘同步,功能塊調(diào)度和網(wǎng)絡(luò)傳輸調(diào)度來實現(xiàn)的。

  在FF系統(tǒng)中,應(yīng)用時鐘的同步是通過系統(tǒng)管理的時鐘發(fā)布來實現(xiàn)的。系統(tǒng)管理中的時間發(fā)布者周期性的向現(xiàn)場設(shè)備發(fā)布應(yīng)用時鐘同步消息,應(yīng)用時鐘消息包括應(yīng)用時鐘時間(APtime)和鏈路時間(LStime)。系統(tǒng)管理內(nèi)核(SMK)采樣鏈路時間和應(yīng)用時鐘時間組成應(yīng)用時鐘消息一起發(fā)送,接收設(shè)備利用接收到的應(yīng)用時鐘消息調(diào)整其本地應(yīng)用時間,以達到應(yīng)用時鐘同步的目的。

  對功能塊的執(zhí)行的調(diào)度也是由系統(tǒng)管理內(nèi)核來管理的,通過對系統(tǒng)管理信息庫中的FBStart參數(shù)進行組態(tài)來實現(xiàn)對功能塊運行的調(diào)度。

  FBStart的定義如下所示:

  struct

  {

  unsignedlongstart_time_oFFset;

  unsignedshortfb_object_index;

  unsignedlongvfd_ref;

 ?。鼺B_START_ENTRY;

  其中,start_time_oFFset表示功能塊開始執(zhí)行的時間,這個參數(shù)是一個相對與宏周期的時間偏差。它的單位是1/32毫秒。宏周期是指整個網(wǎng)絡(luò)上功能塊應(yīng)用的執(zhí)行時間,功能塊的調(diào)度和數(shù)據(jù)傳輸?shù)恼{(diào)度都是以宏周期為時間基準來進行周期性調(diào)度的。它的單位也是1/32毫秒。

  fb_object_index表示與這個FBStart項相關(guān)聯(lián)的功能塊的數(shù)據(jù)字典索引,即要執(zhí)行的功能塊的起始索引。這個參數(shù)用于標識要執(zhí)行的功能塊。

  vfd_ref表示這個FBStart相關(guān)的VFD號,即要執(zhí)行的功能塊在哪個VFD里。

  而數(shù)據(jù)傳輸?shù)恼{(diào)度是由鏈路活動調(diào)度器(LAS)來實現(xiàn)的。組態(tài)完成以后,在鏈路活動調(diào)度器(LAS)設(shè)備中就生成了一個調(diào)度表,這個調(diào)度表有一定的格式,LAS通過對這個調(diào)度表的讀取來進行數(shù)據(jù)傳輸?shù)恼{(diào)度,即在特定的時間給特定的設(shè)備發(fā)送強制令牌(CD)報文來強制現(xiàn)場設(shè)備把要發(fā)送的實時數(shù)據(jù)發(fā)送出去。這個時間是嚴格準確的,能夠確保正確的數(shù)據(jù)在需要的時間傳輸。現(xiàn)場設(shè)備在收到CD后立刻將緩沖區(qū)內(nèi)的數(shù)據(jù)發(fā)布到總線上,緩沖區(qū)內(nèi)的數(shù)據(jù)是由功能塊執(zhí)行以后寫入的。

  下面一個以典型的PID控制回路為例來說明FF系統(tǒng)中功能塊的調(diào)度?! ?/p>

  圖1一個典型的PID控制回路

  如圖1所示為一個典型的PID控制回路,圖中AI功能塊和PID功能塊在一個設(shè)備中,AO功能塊在另一個設(shè)備中??刂七^程如下:AI功能塊的輸出(OUT)參數(shù)送到PID的輸入(IN)參數(shù),PID的輸出(OUT)參數(shù)送到AO的級聯(lián)輸入(CAS_IN)參數(shù),而AO的回算輸出(BKCAL_OUT)參數(shù)送到PID的回算輸入(BKCAL_IN)參數(shù)。從而完成一個PID閉環(huán)控制。

  由此形成的調(diào)度如下圖所示:  

  圖2 PID控制回路的調(diào)度

  圖2中,LoopTime(即宏周期)是1秒,藍顏色的框是功能塊的執(zhí)行時間,紅顏色的框是功能塊執(zhí)行后在總線上發(fā)布數(shù)據(jù)的時間。由于AI功能塊和PID功能塊在一個設(shè)備中,這部分的參數(shù)傳遞是通過本地接口實現(xiàn)的,在總線上是不可見的,故在圖中沒有這部分數(shù)據(jù)傳輸?shù)娘@示。

  組態(tài)完成后,在包含有AI功能塊和PID功能塊的設(shè)備(設(shè)備A)中應(yīng)該有兩個FBStart項,一個對應(yīng)AI功能塊的執(zhí)行,start_time_oFFset應(yīng)該是0,fb_object_index是AI功能塊的起始索引;另一個對應(yīng)PID功能塊的執(zhí)行,start_time_oFFset應(yīng)該是640(20ms)。即在一個宏周期的起始處(偏移量為零),設(shè)備A的SMK調(diào)度AI功能塊開始執(zhí)行,得出輸出值并送到本地的PID功能塊。而在宏周期開始后的20毫秒處,設(shè)備A的SMK調(diào)度PID功能塊開始執(zhí)行,應(yīng)用AI給的輸入值,算出輸出值,并放入緩沖區(qū)中,等待數(shù)據(jù)傳輸?shù)恼{(diào)度令牌(CD)。而LAS根據(jù)調(diào)度表在宏周期開始后的40毫秒處,發(fā)出一個強制發(fā)送數(shù)據(jù)的令牌(CD)來把設(shè)備A緩沖區(qū)中的數(shù)據(jù)發(fā)布到網(wǎng)絡(luò)上。設(shè)備B中只有一個AO功能塊要執(zhí)行,所以組態(tài)時只產(chǎn)生一個FBStart項用來對應(yīng)AO功能塊的執(zhí)行,它的start_time_oFFset應(yīng)該是1280(120毫秒)。設(shè)備B的AO功能塊接收到從設(shè)備A的PID功能塊發(fā)布的數(shù)據(jù)后,在宏周期開始后的120毫秒處,由設(shè)備B的SMK調(diào)度開始執(zhí)行,并產(chǎn)生輸出數(shù)據(jù)對執(zhí)行器進行操作,同時產(chǎn)生一個回算輸出(BKCAL_OUT)值放到本地的緩沖區(qū)內(nèi),等待數(shù)據(jù)傳輸?shù)恼{(diào)度令牌(CD)。而LAS根據(jù)調(diào)度表在宏周期開始后的140毫秒處,發(fā)出一個強制發(fā)送數(shù)據(jù)的令牌(CD)來把設(shè)備B緩沖區(qū)中的數(shù)據(jù)發(fā)布到網(wǎng)絡(luò)上。設(shè)備A中的PID功能塊應(yīng)用這個回算值和AI的輸出值,調(diào)整執(zhí)行后的輸出值。從而完成一個PID的閉環(huán)控制。

  4 結(jié)束語

  基金會現(xiàn)場總線的功能塊和功能塊的調(diào)度是基金會現(xiàn)場總線應(yīng)用的基礎(chǔ),也是基金會現(xiàn)場總線系統(tǒng)的特點和創(chuàng)新之一。通過對功能塊調(diào)度的了解,可以深入的理解基金會現(xiàn)場總線的開放性和互操作性的概念。



評論


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

關(guān)閉