時間:2008-07-23 14:27:00來源:ronggang
摘 要:工業(yè)控制網(wǎng)絡對網(wǎng)絡的實時性要求很高,不僅要求傳輸速度快,數(shù)據(jù)傳輸還要具有確定性。以太網(wǎng)的通信存在不確定性,不能滿足實時性要求,成為以太網(wǎng)應用于工業(yè)控制領域的主要障礙。本設計實現(xiàn)的實時以太網(wǎng)[2]就是網(wǎng)絡中每個節(jié)點的通信被嚴格地限定在規(guī)定時間內(nèi),確保在同一網(wǎng)段內(nèi)同時只有一臺在發(fā)送數(shù)據(jù)。
關鍵詞:工業(yè)以太網(wǎng);確定性;調(diào)度;實時
1. 前言
工業(yè)控制網(wǎng)絡是一種特定應用的網(wǎng)絡,和商業(yè)信息網(wǎng)絡相比,它具有自身的要求和特點,其中非常重要的一點就是實時性要求高,不僅要求傳輸速度快,還要求響應快,并且數(shù)據(jù)傳輸要具有確定性。以太網(wǎng)的通信調(diào)度方式——帶有沖突檢測的載波偵聽多路訪問機制(CSMA/CD),是一種非確定性的通信調(diào)度方式。網(wǎng)絡每個節(jié)點要通過競爭來取得信息的發(fā)送權(quán):節(jié)點監(jiān)聽信道,只有發(fā)現(xiàn)信道空閑時才能發(fā)送信息。信息開始發(fā)送后,還需要檢查是否發(fā)生碰撞,如發(fā)生碰撞,則需等待,等待的時間取決于“二進制指數(shù)退避算法”得出的隨機延遲[1][4],這種隨機延遲為工業(yè)通信的數(shù)據(jù)傳輸增加了難以避免的不確定性。
2. 系統(tǒng)模型
本設計通過在以太網(wǎng)MAC層之上增加確定性調(diào)度層,上層采用了EPA[3](Ethernet of Plant Automation)協(xié)議的數(shù)據(jù)封裝格式,因此使數(shù)據(jù)包的類型判斷和調(diào)度發(fā)送時間的獲取成為可能。EPA 是一種基于工業(yè)以太網(wǎng)的現(xiàn)場總線標準,是在控制系統(tǒng)與現(xiàn)場測量、控制裝置之間,以及現(xiàn)場測量、執(zhí)行機構(gòu)之間進行通信的分布式數(shù)字控制系統(tǒng)。這樣對所有的上層數(shù)據(jù)包在整個實時網(wǎng)段范圍內(nèi)進行數(shù)據(jù)包統(tǒng)一調(diào)度發(fā)送,從而避免碰撞現(xiàn)象的發(fā)生并確保數(shù)據(jù)傳輸?shù)拇_定性要求。通信模型如圖 1所示:
圖1 實時以太網(wǎng)通信模型
3. 系統(tǒng)設計
本設計是在嵌入式平臺下實現(xiàn)的,利用ARM7處理器和Cs8900網(wǎng)絡接口芯片搭建的硬件平臺進行開發(fā),在同一網(wǎng)段中,每一個運行的設備等同于一個網(wǎng)絡節(jié)點。
上層采用EPA協(xié)議封裝,分實時數(shù)據(jù)和非實時數(shù)據(jù)進行發(fā)送和接收。實時數(shù)據(jù)到達后,通過實時通信服務接口向下遞交,對數(shù)據(jù)進行緩存處理,等待調(diào)度發(fā)送。下一個發(fā)送周期到來后,將用新的實時數(shù)據(jù)更新相應緩沖區(qū);非實時通信服務通過OS中提供的BSD接口來提供,但是為了實現(xiàn)確定性的調(diào)度,非實時數(shù)據(jù)包穿越TCP/IP協(xié)議棧到達數(shù)據(jù)鏈路層時,不允許直接調(diào)用硬件驅(qū)動接口進行數(shù)據(jù)包收發(fā)操作,而是通過一個虛擬的驅(qū)動接口將數(shù)據(jù)包放入相應的發(fā)送和接收隊列。修改原E-NIC的驅(qū)動接口,使其成為虛擬驅(qū)動接口,無法直接將數(shù)據(jù)遞交給硬件驅(qū)動,而是入非周期隊列。對硬件網(wǎng)卡的收發(fā)操作在硬件驅(qū)動接口中實現(xiàn)。設計圖如圖2:
圖2 以太網(wǎng)確定性調(diào)度設計圖
確定性調(diào)度層負責何時調(diào)用硬件驅(qū)動接口收發(fā)數(shù)據(jù)幀。當確定性調(diào)度層收到數(shù)據(jù)幀時,根據(jù)以太網(wǎng)幀首部的type字段來區(qū)分實時數(shù)據(jù)幀和非實時數(shù)據(jù)幀。若是實時數(shù)據(jù)幀,將用收到的實時數(shù)據(jù)更新相應緩沖區(qū);若是非實時數(shù)據(jù),則將其放入相應的接收隊列并通過任務通信機制通知上層協(xié)議棧數(shù)據(jù)幀到達事件。確定性調(diào)度層的調(diào)度表由調(diào)度算法生成。
4. 主要模塊描述
實時通信服務接口、虛擬驅(qū)動接口、時鐘同步服務和實時調(diào)度算法為本設計的四個主要模塊。
4.1 實時通信服務接口
實時通信服務接口負責為上層應用(協(xié)議)提供周期性實時消息的實時通信服務。
周期性實時消息的發(fā)送和接收采用緩沖機制,即為本節(jié)點在運行過程中要發(fā)送的每個周期性實時消息在內(nèi)存中定義相應的緩沖區(qū),每當上層應用通過實時通信服務接口發(fā)送新的消息時,即用該新消息值更新其對應緩沖區(qū)中的舊消息值;為本節(jié)點在運行過程中要接收的每個周期性實時消息在內(nèi)存中定義相應的緩沖,每當上層應用通過實時通信服務接口接收新的消息時,則將對應緩沖區(qū)中的消息值返回。節(jié)點在運行過程中將要發(fā)送的每個周期性實時消息必須要有與其對應的已知的目標地址(包括目標MAC地址-用于識別節(jié)點,端口號-用于識別實時消息所對應的緩沖區(qū)元素)。
實時通信服務接口要提供以下接口函數(shù):
(1)RtAppInterface()創(chuàng)建實時接口函數(shù),用于實時周期性消息的發(fā)送和接收。
(2)RtMapping()將由RtAppInterface()函數(shù)創(chuàng)建的接口進程映射到特定的地址(MAC,端口號(即緩沖元素的索引))。
(3)RtSend()使用已創(chuàng)建和映射完畢的實時接口進程進行實時消息的發(fā)送。
(4)RtRecv() 使用已創(chuàng)建和綁定完畢的實時接口進程進行實時消息的接收。
4.2 虛擬驅(qū)動接口
虛擬驅(qū)動接口負責為上層TCP/UDP/IP協(xié)議棧提供一套虛擬的驅(qū)動程序接口,該接口必須與上層協(xié)議棧所使用的原硬件驅(qū)動接口一致,但需改變該接口中的具體函數(shù)實現(xiàn),使得虛擬驅(qū)動接口所對應的具體函數(shù)無法直接實現(xiàn)對硬件的控制(如打開,關閉設備,收發(fā)數(shù)據(jù)包等)。必須確保用虛擬驅(qū)動接口替換原硬件驅(qū)動接口后,從TCP/IP協(xié)議棧使用驅(qū)動接口的角度來看,和使用原硬件接口一樣,即用虛擬驅(qū)動接口替換原硬件驅(qū)動接口的改動對于上層協(xié)議棧的使用而言必須是透明的。對上層協(xié)議棧發(fā)下來的數(shù)據(jù)包以FIFO的順序緩存到消息隊列,何時調(diào)用硬件驅(qū)動接口發(fā)送這些數(shù)據(jù)包由確定性調(diào)度層決定。
虛擬驅(qū)動接口提供的主要函數(shù):
(1)RtVirtualIn( )接收IP層的發(fā)送數(shù)據(jù)包,根據(jù)數(shù)據(jù)包類型確定轉(zhuǎn)存入隊列還是向下遞交。
(2)RtVirtualOut( ) 調(diào)用驅(qū)動層的發(fā)送函數(shù)發(fā)送數(shù)據(jù),接收發(fā)送返回信息。
(3)RtVirtualPacketType()取對應字段,判斷到來包類型(EPA類型字段 以太網(wǎng)類型字段)。
4.3 時鐘同步
在實時網(wǎng)段內(nèi),時鐘同步是非常關鍵的,因為實時網(wǎng)段內(nèi)各節(jié)點上的任務運行和消息發(fā)送都是基于時間基準的,特別是總線上的消息調(diào)度,為了避免碰撞,消息間必須留出足夠的間隙來容納節(jié)點間的同步誤差。為了提高時鐘同步精度,應把時鐘同步功能放在協(xié)議棧中盡可能靠近硬件的位置。本系統(tǒng)中時鐘同步功能由確定性調(diào)度層來提供。時鐘同步協(xié)議采用IEEE 1588協(xié)議[6]。
在實時網(wǎng)段內(nèi)選定一節(jié)點作為主時鐘,主時鐘定期發(fā)布時鐘同步消息,時鐘同步消息作為主時鐘節(jié)點上的周期性消息。由于時鐘同步消息在調(diào)度好的同步窗口中發(fā)送,可以保證時鐘消息的發(fā)送獨立于當前網(wǎng)絡負載而無碰撞的發(fā)送,因而時鐘消息從發(fā)布節(jié)點到各個接收節(jié)點的延遲對各個接收節(jié)點而言為一常量。
4.4實時調(diào)度算法
本設計采用的算法根據(jù)RM和EDF算法改進而成的[7],每個基本周期開始時動態(tài)生成此基本調(diào)度單位(ESU)的調(diào)度時間表。整個鏈路時間由連續(xù)等長的基本調(diào)度單位(ESU)組成,通常ESU為實時網(wǎng)段內(nèi)所有周期性實時消息的周期的最大公約數(shù)HCF。每個ESU被分成周期性實時消息窗口(PW)和非周期性消息窗口(AW),如圖3所示。PW中的調(diào)度根據(jù)事先由周期性實時消息調(diào)度算法生成的調(diào)度表來進行,調(diào)度表的長度為所有周期性實時消息的周期的最小公倍數(shù)LCM,調(diào)度表中與各個節(jié)點相關的部分被存放在各個節(jié)點中,各節(jié)點根據(jù)調(diào)度表中規(guī)定的時刻,以宏周期為循環(huán)單位周而復始的執(zhí)行周期性實時消息的發(fā)送動作。在AW中,數(shù)據(jù)采用優(yōu)先級隊列節(jié)點輪詢的方式發(fā)送。按照非周期數(shù)據(jù)實時要求將非周期數(shù)據(jù)劃分為i個優(yōu)先級,每個優(yōu)先級在節(jié)點中維護一個非周期優(yōu)先級隊列,因此每個節(jié)點中的非實時優(yōu)先級隊列為i個。發(fā)送時采用節(jié)點輪詢的方式按優(yōu)先級從高到低的順序進行發(fā)送,每次被輪詢節(jié)點將指定優(yōu)先級隊列中的數(shù)據(jù)全部發(fā)送。
圖3 基本周期內(nèi)數(shù)據(jù)發(fā)送窗口
5.結(jié)論
本系統(tǒng)所實現(xiàn)的實時以太網(wǎng)可以完成網(wǎng)段內(nèi)數(shù)據(jù)的調(diào)度發(fā)送,基于本設計的實時以太網(wǎng)完全可以應用于一般的過程控制工業(yè)領域。通過改進原型系統(tǒng)的時鐘同步機制等來可以進一步提高系統(tǒng)的實時性以及時鐘精度,基于本設計的實時以太網(wǎng)改進的目標是把時鐘精度提高到微秒級,進而應用于時間精度要求較高的工業(yè)領域,如運動控制等。
參考文獻
[1] 徐皚冬,王宏,楊志家.基于以太網(wǎng)的工業(yè)控制網(wǎng)絡.《信息與控制》,2000,29(2)
[2] 徐皚冬,王宏,邢志浩,工業(yè)以太網(wǎng)實時通信技術(shù).《信息與控制》,2005,34(1)
[3] 馮冬芹,金建祥,王為民,褚 健.基于EPA 的分布式網(wǎng)絡控制系統(tǒng)結(jié)構(gòu).自動化儀表, 2003,24(9)
[4] IEEE Std 802.3, 2000 Edition, Part 3: Carrier Sense Multiple Access with Collision Detection [CSMA/CD] Access Method and Physical Layer Specifications, ISO/EEC 8802-3:2000 (E),2000
[5] Y.Rajendra,P.Prashant,F.Raphael. A reservation-based CSMA Protocol for integrated manufacturing networks. IEEE Trans. on System, Man and Cybernetics, Vol 24 no 8, Aug 1994, pp1247-1258
[6] IEEE Standard 1588-2002, Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems, November 2002, New York, USA.
[7] E.Tover, F.Vasques, A.Burns. Communication response time in P-Net Network: worst-case analysis considering the actual token utilization. JSA Report YCS 312 University of York, 1999
標簽:
中國傳動網(wǎng)版權(quán)與免責聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(www.wangxinlc.cn)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負版權(quán)法律責任。
產(chǎn)品新聞
更多>2025-04-30
性能躍升20%!維宏NK300CX Plus數(shù)控系統(tǒng)...
2025-04-11
rpi-image-gen:樹莓派軟件鏡像構(gòu)建的終...
2025-04-08
【產(chǎn)品解讀】全面提升精密制造檢測節(jié)拍...
2025-03-31
應用案例 | 使用宏集TELE監(jiān)控繼電器監(jiān)控...
2025-03-26
2025-03-20