孟祥印 肖世德
(西南交通大學智能機電技術研究所,四川 成都 610031)
以太網要應用于現場設備層測控,需要解決通信的實時性、可靠性、安全性、可互操作性和總線供電等關鍵技術問題[1-2]。中國自主知識產權的工業以太網現場總線標準EPA,利用交換式以太網等技術實現了系統通信的確定性,利用微網段、報文優先級、UDP傳輸和應用層實時通信協議等方式改善了網絡的實時性,從而實現了性能良好的應用于工業現場測控的以太網絡。
EPA以太網的實時通信模型為令牌/生產者/消費者模型[3]。對突發性非周期性信息,如報警信息,采用令牌通信方式,在周期變量通信間隙進行處理;對于周期性變量,采用生產者/消費者實時通信模型,按照調度表周期循環處理。通過對EPA的實時通信模型的分析發現,EPA通信調度忽略了周期性變量和報警信息之間的相互影響,參量訪問的優先級分配也不夠周全和靈活。
本文利用人工神經網絡,計算出要調度和訪問的參量的優先順序,從而動態、合理地調度訪問EPA系統中的參量。
EPA協議為所有的報文分配了優先級,并采用基于時間片和基于優先級相結合的方法進行通信調度[4]。周期報文較非周期報文的發送優先級高,非周期報文穿插在周期性報文之間發送。不同周期報文的發送順序是按其優先級高低、IP地址大小和時間有效方式進行排列的[5-6]。
假設EPA的某個網段上除了調度者之外還有A、B、C三個設備,它們的生產和消費關系按照以下方式進行組態。
① 設備A是變量A'的生產者、變量B'的消費者;
② 設備B是變量B'的生產者、變量A'的消費者;
③設備C是變量A'和變量B'的消費者,不產生任何變量。
設備A、設備B和設備C都有可能產生報警等非周期性信息,這里均用報警信息來代替所有的非周期性信息,符號分別為#A、#B、#C。根據組態,周期性變量和非周期性信息的優先級如下:

根據EPA的令牌/生產者/消費者實時通信模型,EPA通信調度原理如圖1所示。

圖1 EPA通信調度原理圖Fig.1 Principle of EPA communication dispatching
圖1中:TreqA和TreqB分別為調度者請求產生周期變量A'和變量B'的請求時間;TpubA和TpubB分別為設備A和設備B發布變量A'和變量B'的時間;TrecA和TrecB分別為總線上的消費者接收并消費周期變量A'和變量B'的時間,TintA和TintB分別為變量 A'和變量B'的通信間隙時間;TdelA和TdelB分別為總線上變量傳播的延時時間,一般很小。
基于優先級的訪問調度時延圖如圖2所示。其中圖2(a)為享有最高優先權的報警信息#A的通信時延圖,圖2(b)為享有最低優先權的#C的通信時延情況,并且假設直到整個Tint時間內,設備A和設備B都沒有產生報警信息。

圖2 基于優先級的訪問調度時延圖Fig.2 Time-delay schematic of priority-based access dispatching
由圖2可知,報警信息訪問調度的時延發生在周期性通信間隙Tint時間內。
由圖2(b)可以看出,因為#C的優先級一直是非周期性信息中最低的,所以要進行兩次和令牌(token)優先級的比較,直到第三次比較才得以允許向網段發布;且由于其優先級被固定,當系統參量發生改變,報警信息#C這個參量越來越重要時,卻不能被及時觀察和訪問。
根據通信調度時延情況的分析可知,EPA實時通信模型存在優先級分配動態性和靈活性不足的現象。在實際的生產過程中,周期變量并不總是比非周期變量優先訪問,而是應該靈活地安排通信間隙Tint的插入位置和插入頻度。同時,報警信息之間的優先級和周期變量之間的優先級也應該根據實際的測控數據而在線動態變化。
人工神經網絡具有分布式的信息存儲和大規模的非線性并行處理能力,良好的自適性和自組織性,較強的學習、聯想能力和容錯能力以及強大的運算能力和較快的運算收斂速度。多年前就有人提出應用于現場總線的多傳感器融合和系統安全性評價[7-9],也曾有學者提出神經網絡與模糊PID控制相結合來改善CSMA/CD介質訪問方式下的Ethernet時延不確定性引起的振蕩和不穩定問題,或者利用神經網絡建立基于優先權的仿真模型[10]。所以我們可以采用人工神經網絡來表達以太網實時通信數據之間的關系,構成一個智能化、動態化優先級分配與任務調度模型?;谌斯ど窠浘W絡的實時通信模型稱之為生產者/智能調度者/消費者模型。
生產者/智能調度者/消費者模型采用的神經網絡模型如圖3所示。

圖3 計算優先級用神經網絡模型Fig.3 Neural network model for calculating dispatching priority
神經網絡的輸入層X,表示對非周期性信息和周期變量(統稱通信數據)的優先級和任務調度順序有影響的因素,包括通信數據是否被訪問、通信數據的重要性、通信數據產生設備的可靠性程度、周期變量的采樣周期長短和報警信息的產生等。X0表示在網絡通信數據交互周期內(非周期性信息和周期變量的通信通盤考慮,以等價的身份同屬于一個完整的通信數據交互周期之中),某通信數據的請求(周期變量產生)或查詢(非周期性突發信息)是否已經執行這一因素。這樣就考慮了某個通信數據的執行與否對任務調度順序的重要影響。
輸入層中的因素包括了報警信息的產生,它將對輸出層的周期性變量的優先級施加影響,同樣地,它也將作用于另外的報警信息的優先級輸出。由此,非周期性信息之間和非周期信息對周期性變量的相互影響就通過上面的神經網絡體現了出來。
輸入因素的激勵函數值稱為“輸入因子”,第i個輸入因素 Xi的輸入因子用 xi表示,即激勵函數f(Xi)=xi(i=0,1,2,3)。同理,通過 ωij的在線動態變化,周期性變量之間和周期性變量對報警信息等非周期性數據的優先級的影響也可以通過上面的神經網絡來表達。
神經網絡的輸出層用Y表達,Yj表示在諸多因素影響下某個通信數據的優先級數值。輸出層神經元的輸出為Yj=f(∑ωij- θj),Yj越大,說明優先級越高。其中,閾值 θj=0,激勵函數 f(X)=X ,即 Yj=∑Xiωij;ωij為輸入(對調度優先級有影響的因素)對優先級輸出的影響因子,ωij越大,說明該因素對優先級的輸出的影響力越強。
在數據通信過程中,智能調度者通過比較,找出輸出Y中優先級數值最大的Yk,則第k個數據就是立即要訪問的通信數據。由此可見,智能型實時通信模型可以不改變原來EPA的結構,而是在原來充任仲裁者的設備中植入人工神經網絡思想,易于實現。
假設在一個小型的過程控制系統中,總線要訪問三個周期變量和兩個報警信息,它們分別為壓力P、溫度T、切斷閥狀態SV、壓力報警信息#P和溫度報警信息#T。
需要仿真的系統工作過程為:由溫度的升高引起壓力的升高,繼發生溫度報警之后,又發生壓力報警這樣一個過程。該過程可以分為七個階段:初始狀態、周期變量訪問、將發生溫度報警、發生了溫度報警、將發生壓力報警、發生了壓力報警和回歸初始狀態。智能計算該系統數據訪問調度優先級的神經網絡模型如圖4所示。

圖4 仿真用優先級計算模型Fig.4 Simulation model for calculating priority
初始狀態下,神經網絡輸入層的四個輸入因素的輸入因子xi(i=1,2,3,4)和輸入因素對五個通信數據的優先級輸出 Yj(j=0,1,…,4)的影響因子 ωij,如表1所示。

表1 初始狀態下的X和ω的值Tab.1 Initial value of X and ω
表1中有九個數據是可以在數據訪問過程中動態改變的,它們分別為 x2、x3、ω00、ω01、ω02、ω03、ω04和 ω13、ω14,即兩個輸入(因素值)、五個通信數據是否被執行因子和兩個報警信息發生概率的影響因子。X和ω在仿真時在線動態改變遵循的規則如下。
①若通信數據沒有被訪問,則因素“已訪問否”對應影響因子ω為0,每被訪問1次,影響因子自減1;如果某通信數據的“已訪問否”影響因子ω為n,則表示該通信數據已經被訪問了n次。
②若某報警信息將要發生,則“重要性”這個輸入因素對該報警信息的影響權重ω1j(j=3或4)將增加0.7;如果該報警信息已出現,則置ω1j(j=3或4)為1,且對應的“報警出現”這個輸入因素的輸入因子也置為1。在沒有發生任何報警的情況下,如果出現所有通信數據的優先級數值Y都為負,則第一個輸入因素“已訪問否”對輸出的所有影響權重都回歸為初始值,即全部復位為0,可看作全部通信數據都沒有被執行過,重新進入下一個訪問周期。
③如果發生了報警,對應報警信息的訪問次數等于5時,就認為用戶已經對所有報警進行了確認和處理,所有狀態(X、ω和Y)都回歸到初始狀態。
④如果多個變量或報警信息輸出的優先級數值相等,則將要訪問的對象為訪問次數較少的對象。
根據表1中表達的初始狀態和規則,仿真統計出的各個通信數據的訪問次數如表2所示。由表2可以看出,在周期性訪問階段,訪問的次序就是我們設定的通信數據的重要性和發生概率的順序。在將發生報警和發生了報警階段,對應的報警信息將首先被訪問,如從第5步到第6步,溫度報警信號#T將出現時,#T將立即在第6步被訪問;在第11步到第12步溫度報警信號#T剛已出現的時候,#T也立即在第12步被訪問。同樣,在第16步到第17步,壓力報警信號#P將要出現,和第20步到第21步壓力報警信號剛已出現的時候,變量#P就立即被訪問。在將發生報警和發生了報警階段,由其末位置處的訪問次數統計可以看出,凡和該報警信息有正相關的通信數據,其訪問次數也較多。

表2 各變量訪問次數統計Tab.2 Visits statistics of each variable
新型的通信模型考慮了更多影響數據訪問調度的因素,并利用神經網絡建立了這些因素與各個通信數據訪問優先級之間的聯系,使其訪問調度的機制更加完善。仿真表明,在新型通信模型下,數據的訪問調度具有更好的靈活性和合理性,更能與實際工藝過程相吻合。
本文利用神經網絡構建了一個新型智能實時通信模型,即生產者/智能調度者/消費者模型。該模型可以在不改變原來以太網結構的前提下,用軟件的方法植入到原實時通信模型的調度實體中,實現優先級智能計算和通信任務的智能調度。模型對非周期信息和周期變量進行了全盤統一考慮,并引入通信數據之間相互影響這一事實因素,使得通信數據優先級的輸出和任務調度能在線合理地動態變化,從而改善了系統優先級和任務調度性能,提高了以太網應用于工業現場控制的實時性。如果再適當結合模糊控制策略和專家規則,則該模型就更加完善和智能化,甚至可以實現通信過程的智能故障診斷、定位和修復。
[1]馮冬芹,金建祥,褚健.工業以太網關鍵技術初探[J].信息與控制,2003,32(3):219 -224.
[2]李鳳保,楊黎明.網絡化測控系統技術[M].成都:四川大學出版社,2004:116-117.
[3]馮冬芹,廖智軍,金建祥,等.基于以太網的工業控制網絡實時通信模型研究[J].儀器儀表學報,2005,26(9):891 -894.
[4]China State Bureau of Quality and Technical Supervision.GB/T 20171-2006 EPA system architecture and communication specification for use in industrial control and measurement systems[S].2006.
[5]陳良華,黃源.EPA協議確定性調度測試系統的研究與實現[J].自動化與儀表,2008,23(4):47 -50.
[6]王平,黃源,謝昊飛.EPA應用層證實服務響應時延測試的研究與實現[J].廣東通信技術,2009,29(2):54 -57.
[7]周尚明,劉定生.模糊控制和神經網絡在現場總線控制系統中的應用[J].中國科學院研究生院學報,2000,17(2):81 -88.
[8]余勇.基于神經網絡理論的現場總線系統安全性評價的研究[J].自動化與儀器儀表,2004(5):8-10.
[9]Lina C L,Chen C H,Huang H C.Stabilizing control of networks with uncertain time varying communication delays[J].Control Engineering Practice,2008,16(1):56 -66.
[10]Shoukat M M,Dagli C.A priority-based simulation model of an Ethernet using an artificial neural network[J].Doctoral Thesis:University of Missouri-Rolla,1992.