技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 工業(yè)以太網(wǎng)確定性調(diào)度的設計與實現(xiàn)

工業(yè)以太網(wǎng)確定性調(diào)度的設計與實現(xiàn)

時間:2008-07-23 14:27:00來源:ronggang

導語:?工業(yè)控制網(wǎng)絡對網(wǎng)絡的實時性要求很高,不僅要求傳輸速度快,數(shù)據(jù)傳輸還要具有確定性。以太網(wǎng)的通信存在不確定性,不能滿足實時性要求,成為以太網(wǎng)應用于工業(yè)控制領域的主要障礙

摘 要:工業(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所示:

實時以太網(wǎng)通信模型

圖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:

以太網(wǎng)確定性調(diào)度設計圖

圖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ā)送。

基本周期內(nèi)數(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

標簽:

點贊

分享到:

上一篇:基于VB的計算機與三菱變頻器...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網(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)法律責任。

網(wǎng)站簡介|會員服務|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務平臺

網(wǎng)站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號