EtherNet/IP工業(yè)以太網(wǎng)協(xié)議白皮書
時間:2006-06-13 15:06:00來源:ronggang
導語:?本文介紹它的技術原理和傳輸機制,如何在基于TCP/UDP/IP協(xié)議的以太網(wǎng)上實現(xiàn)網(wǎng)絡服務和數(shù)據(jù)對象的一致性
摘要:DeviceNet™設備網(wǎng)和ControlNet™控制網(wǎng)已經(jīng)是廣為人知的工業(yè)網(wǎng)絡,分別歸ODVA(開放DeviceNet供應商協(xié)會)和ControlNet International兩家國際性制造商組織所擁有,它們都在應用層采用了CIP協(xié)議( 通用工業(yè)協(xié)議)。 最近,ODVA和ControlNet International共同推出了EtherNet/IP(標準工業(yè)以太網(wǎng))。本文將介紹它的技術原理和傳輸機制,以及如何在基于TCP/UDP/IP協(xié)議的以太網(wǎng)®上實現(xiàn)網(wǎng)絡服務和數(shù)據(jù)對象的一致性。
I. 簡介
工業(yè)自動化系統(tǒng)的網(wǎng)絡必須為用戶提供三種主要的服務。首先是控制,這也是最為重要的功能。控制服務主要用于完成控制設備(例如PLC)與I/O設備(例如變頻器、傳感器以及其它執(zhí)行機構)之間的數(shù)據(jù)交換,并且有苛刻的實時性要求。因此,相應的傳輸網(wǎng)絡必須為這類數(shù)據(jù)的傳輸設定較高的優(yōu)先權或者中斷等級。其次,還要提供配置服務,方便用戶對自動化設備進行設置和維護。通常,用戶需要使用個人計算機(PC)或者類似設備對系統(tǒng)中不同的設備進行編程和配置。這項任務不僅需要單獨執(zhí)行,而且還要在控制系統(tǒng)運行的情況下,支持配置服務。比如,批量處理過程中的配方管理就需要這樣功能。最后,用戶需要采集自動化系統(tǒng)運行過程中的各種數(shù)據(jù),用于人機界面顯示、數(shù)據(jù)分析、趨勢圖繪制、故障處理和維護。可見,工業(yè)自動化系統(tǒng)的網(wǎng)絡必須提供:控制、配置和數(shù)據(jù)采集三種服務,這樣才能讓網(wǎng)絡更加高效、靈活,從而提高自動化系統(tǒng)的整體性能。
在網(wǎng)絡中,生產(chǎn)者/消費者通訊模式比源/目標通訊模式更容易支持控制、配置和數(shù)據(jù)采集服務。在網(wǎng)絡應用層協(xié)議中,利用分布式對象和生產(chǎn)者/消費者通訊模式,將會更好地滿足自動化系統(tǒng)的應用要求。
如圖1所示,一個典型的工業(yè)自動化系統(tǒng)網(wǎng)絡結構。由于每種網(wǎng)絡都有不同的物理層和數(shù)據(jù)鏈路層,其屬性和特點也各不相同。因此,在這樣的系統(tǒng)中,不要指望某種單一的網(wǎng)絡能夠滿足所有的應用要求,而是需要采用多層網(wǎng)絡架構,并且要求不同網(wǎng)絡之間的數(shù)據(jù)具有一致性,從而方便網(wǎng)絡間的數(shù)據(jù)交換與共享。
如果在以太網(wǎng)上實現(xiàn)控制、配置和數(shù)據(jù)采集服務,同樣不可避免其它網(wǎng)絡服務也要在網(wǎng)絡上運行。因此,生產(chǎn)者/消費者通訊模式必須做到在同一網(wǎng)段上完全能夠與其它服務共存(比如用于網(wǎng)頁瀏覽的HTTP服務)。
在圖1中可以看到,一個典型的工業(yè)自動化系統(tǒng)網(wǎng)絡包括:1、信息層網(wǎng)絡,通過以太網(wǎng)來實現(xiàn)。許多控制器廠商早就提供對以太網(wǎng)的支持;2、控制層網(wǎng)絡,通常利用網(wǎng)絡的確定性和介質(zhì)是否冗余等傳統(tǒng)標準來衡量某一網(wǎng)絡能否作為控制層網(wǎng)絡,ControlNet屬于這類網(wǎng)絡;3、設備層網(wǎng)絡,要求傳輸數(shù)據(jù)較少,能夠通過一根結實、耐用的電纜來完成數(shù)據(jù)傳輸和設備供電,DeviceNet屬于這類網(wǎng)絡。
ODVA(開放DeviceNet供應商協(xié)會)和ControlNet International兩家組織推出了新的CIP協(xié)議成員——EtherNet/IP,從而實現(xiàn)了通過以太網(wǎng)提供控制、配置和數(shù)據(jù)采集服務。因此,它能夠作為圖1中的信息層網(wǎng)絡和控制層網(wǎng)絡來使用。
II. CIP協(xié)議在以太網(wǎng)上的實現(xiàn)
EtherNet/IP協(xié)議規(guī)范被細分為多個章節(jié)和附錄,主要內(nèi)容如圖2所示。
從圖2可以看出,EtherNet/IP、DeviceNet和ControlNet三種網(wǎng)絡具有統(tǒng)一的應用層、應用對象庫和設備描述。也就是說,在七層OSI網(wǎng)絡參考模型中,這三種網(wǎng)絡只有最低的四層不同,如圖3所示。
圖2描述了EtherNet/IP的協(xié)議結構,通過使用這些不同層面的協(xié)議,實現(xiàn)了對控制、配置、數(shù)據(jù)采集服務的優(yōu)化,使得EtherNet/IP在控制領域的應用更加切實可行、更加安全可靠。
III. 與其它Internet協(xié)議共存
EtherNet/IP網(wǎng)絡的主要優(yōu)勢在于大多數(shù)用戶能夠通過利用現(xiàn)有的以太網(wǎng)技術知識和網(wǎng)絡設施,讓它們發(fā)揮最大的作用,獲得更多的投資回報。
目前,眾多廠商都能提供以太網(wǎng)設備,使得組建網(wǎng)絡的費用大大降低。因此,用戶更希望能夠利用目前市面上已有的網(wǎng)絡設備,從而控制系統(tǒng)成本。
如果EtherNet/IP網(wǎng)絡需要采用指定廠商的特殊物理介質(zhì)來構建,那么它的優(yōu)勢就不復存在。同樣道理,如果 EtherNet/IP網(wǎng)絡需要一個專門的網(wǎng)絡環(huán)境來運行,或者不能與現(xiàn)有的企業(yè)網(wǎng)絡相連接,那么它的優(yōu)勢也會黯然失色。因此,EtherNet/IP網(wǎng)絡必須能夠與現(xiàn)有的Internet和Intranet網(wǎng)絡協(xié)議共存。這就意味著,在任何地方都要使用TCP/IP協(xié)議。
A. 以太網(wǎng)通訊協(xié)議
以太網(wǎng)技術本身只定義了物理介質(zhì)和介質(zhì)的訪問方式(CSMA/CD),并采用簡單的數(shù)據(jù)幀格式和源/目標通訊模式來完成局域網(wǎng)設備之間的數(shù)據(jù)交換。就其本身而言,以太網(wǎng)缺少更為復雜的功能來實現(xiàn)局域網(wǎng)的全部應用要求。正因為如此,在實際使用過程中,還需要讓以太網(wǎng)支持一個或多個通訊協(xié)議,讓它們作為以太網(wǎng)的上層協(xié)議,負責數(shù)據(jù)傳輸,實現(xiàn)網(wǎng)絡管理等功能。因此,這種上層的通訊協(xié)議決定了網(wǎng)絡所支持的功能,以及什么樣的設備能夠連接網(wǎng)絡,怎樣實現(xiàn)網(wǎng)絡設備之間的互操作。
曾經(jīng)有許多協(xié)議在以太網(wǎng)上應用過,例如DECnet™、Novell IPX™、MAP™、TOP、OSI Stack、AppleTalk™以及TCP/IP。在這些協(xié)議中,TCP/IP協(xié)議最為引人矚目,因為為它不僅實現(xiàn)了全球Internet的互聯(lián),還能用于構建企業(yè)內(nèi)部的Intranet網(wǎng)絡,實現(xiàn)企業(yè)信息的共享和數(shù)據(jù)交換。TCP/IP作為Internet的協(xié)議,不僅可以運行在以太網(wǎng)上,還支持其它物理介質(zhì)。當然,以太網(wǎng)也支持其它協(xié)議。但是,由于TCP/IP協(xié)議與以太網(wǎng)的結合,實現(xiàn)了Intranet和Internet的無縫集成。所以,它們之間的關系也就越來越密切。在工業(yè)現(xiàn)場,無論是現(xiàn)在,還是在不遠的將來,TCP/IP協(xié)議遲早都會成為在以太網(wǎng)中占有統(tǒng)制地位的“中間層”協(xié)議,如圖3所示。
B. TCP/IP協(xié)議的起源與特點
多年來,世界上主流的計算機平臺都提供對TCP/IP協(xié)議的支持?,F(xiàn)在,它已經(jīng)內(nèi)置到Windows NT™、Windows 2000等操作系統(tǒng)中,成為用戶構建計算機網(wǎng)絡的首選協(xié)議。在許多公司,可能擁有數(shù)臺工作站、網(wǎng)絡打印機、服務器、中型甚至大型計算機,單單某一家廠商很難提供所有這些設備。因此,這些設備都采用了統(tǒng)一的TCP/IP協(xié)議,使得它們都能夠集成到局域網(wǎng)中。
TCP/IP協(xié)議也采用了分層結構,它與OSI七層網(wǎng)絡參考模型的對應關系如圖3所示。從圖3可以看出,以太網(wǎng)技術只定義了物理層和數(shù)據(jù)鏈路層。網(wǎng)際協(xié)議(IP)對應于第三層——網(wǎng)絡層,TCP傳輸控制協(xié)議和UDP用戶數(shù)據(jù)報協(xié)議對應于第四層——傳輸層。在基于TCP/IP協(xié)議的網(wǎng)絡中,用戶服務協(xié)議屬于第七層——應用層。TCP/IP協(xié)議組沒有OSI網(wǎng)絡參考模型的第五層和第六層。
OSI網(wǎng)絡參考模型中的每一層都需要使用其下一層協(xié)議所提供的服務。比如,一個TCP連接需要在以太網(wǎng)上向另外的設備發(fā)送一個數(shù)據(jù)包。首先,它需要將這個數(shù)據(jù)包交給IP協(xié)議進行處理,由IP協(xié)議將這個數(shù)據(jù)包發(fā)送給以太網(wǎng)接口,并確定這個數(shù)據(jù)包傳送到了目標設備。同時,作為接收方,IP協(xié)議要通過以太網(wǎng)接口接收數(shù)據(jù)包,然后將其交給TCP協(xié)議進行處理,建立通訊連接。
TCP/IP協(xié)議的最底層是網(wǎng)絡層,也是IP協(xié)議所在的層面。IP協(xié)議用于在兩個網(wǎng)絡設備之間,采用無連接和無確認應答的方式發(fā)送數(shù)據(jù)包。因此,IP協(xié)議并不能對數(shù)據(jù)的傳輸提供擔保,而需要由傳輸層協(xié)議或者應用層協(xié)議來完成這一任務。IP協(xié)議可以運行在以太網(wǎng)和多種其它局域網(wǎng)或廣域網(wǎng)中,這正是IP協(xié)議能夠?qū)崿F(xiàn)企業(yè)內(nèi)部Intranet網(wǎng)絡和Internet無縫連接的原因。
在網(wǎng)絡層中,還有地址分辨協(xié)議(ARP)。ARP協(xié)議用于實現(xiàn)IP地址到以太網(wǎng)地址的映射,以及維護網(wǎng)絡設備中的地址映射表。當某一設備要將一個IP數(shù)據(jù)包傳送給其它設備時,發(fā)送設備首先會嘗試使用本地廣播報文去詢問目標IP地址的設備,然后將其以太網(wǎng)地址返回給發(fā)送設備。這一應答結果將被存入發(fā)送設備內(nèi)部的地址映射表,方便以后使用。值得注意的是,以太網(wǎng)廣播報文只能在集線器、交換機和網(wǎng)橋之間傳輸,不能穿透路由器。因此,以太網(wǎng)廣播報文被限制在一個子網(wǎng)內(nèi),而不可能擴散到全球范圍的Internet網(wǎng)絡中。
IP地址是32位的二進制數(shù)字,由獨立的InterNIC網(wǎng)絡信息中心負責分配,在某一網(wǎng)絡中不能重復。任何企業(yè)網(wǎng)內(nèi)部的設備需要和外界通訊,都必須使用事先分配好的IP地址。這與以太網(wǎng)地址不同,以太網(wǎng)地址是由生產(chǎn)廠商固定在以太網(wǎng)硬件設備中的地址,不能進行更改。用戶可以根據(jù)自身企業(yè)信息系統(tǒng)的相關規(guī)定和要求,配置網(wǎng)絡設備的IP地址和子網(wǎng)。有時候可能需要改變網(wǎng)絡設備的IP地址,但是應該在此之前做好心細的規(guī)劃,防止網(wǎng)絡上某一設備已經(jīng)占用了特定的IP地址,從而造成IP地址沖突,使得已有的網(wǎng)絡不能正常工作。
如果一個內(nèi)部的局域網(wǎng)通過路由器與Internet相連接,那么這些設備的IP地址必須屬于已分配給它使用的IP地址段。如果內(nèi)部局域網(wǎng)不與Internet相連接,那么它的IP地址分配就可以按照自己的要求來進行。隨著Internet的普及和廣泛應用,可用的IP地址資源已經(jīng)瀕臨枯竭。目前,人們正在研究使用新的IP地址形式,也就是IPv6,它支持48位二進制的IP地址形式,這樣一來,就有充足的IP地址供人們使用。
與以太網(wǎng)地址類似的是,IP地址也分為非廣播(單目標)、多點傳送(目標組)和廣播(網(wǎng)絡上的每個設備都能接收)地址。因此,IP地址必須通過相應的IP軟件和以太網(wǎng)驅(qū)動程序?qū)⑵溆成涑蓪囊蕴W(wǎng)地址。
TCP/IP協(xié)議制定了TCP(傳輸控制協(xié)議)和UDP(用戶數(shù)據(jù)報協(xié)議)兩種協(xié)議用于數(shù)據(jù)傳輸。它們都屬于OSI七層網(wǎng)絡參考模型中的傳輸層。TCP協(xié)議是一種面向連接的協(xié)議,用于確保數(shù)據(jù)的可靠傳輸。一旦在兩個設備之間建立起TCP連接,TCP協(xié)議將用于拆分、組裝數(shù)據(jù)包,檢測錯誤、數(shù)據(jù)重新發(fā)送,通常用于在兩個網(wǎng)絡設備之間提供高質(zhì)量的數(shù)據(jù)傳輸。TCP協(xié)議能夠確保數(shù)據(jù)從一個網(wǎng)絡設備傳輸?shù)狡渌W(wǎng)絡設備。一旦由于某種原因造成傳輸失敗,TCP協(xié)議將確保TCP連接的收發(fā)雙方應用程序能夠得知這一故障。TCP協(xié)議將數(shù)據(jù)以字節(jié)流的形式提供給它上一層的應用層協(xié)議。同時,應用層還要對字節(jié)流數(shù)據(jù)進行識別和分割。
TCP協(xié)議只適合于非廣播(點對點)傳輸方式,通常在Telnet(終端仿真)、FTP(文件傳輸)以及HTTP(Web服務)等應用中采用。在工業(yè)自動化應用中,TCP協(xié)議通常用于計算機向PLC下載梯形圖程序,或者人機界面軟件對PLC數(shù)據(jù)進行讀寫,以及兩臺PLC之間的點對點信息交換。
UDP是一種非常簡單的傳輸協(xié)議,它采用無連接的通訊方式,用于在兩個網(wǎng)絡設備之間進行簡單的數(shù)據(jù)報文收發(fā)。它并不能保證數(shù)據(jù)能夠從一個網(wǎng)絡設備發(fā)送到另外一個,也沒有數(shù)據(jù)重發(fā)功能,甚至不知道目標設備是否已經(jīng)收到了數(shù)據(jù)。因此,需要應用層協(xié)議實現(xiàn)設備之間的握手信號或者連接管理,通常在較小流量要求的服務中才使用UDP協(xié)議,例如SNMP(簡單網(wǎng)絡管理協(xié)議)和NFS(網(wǎng)絡文件系統(tǒng))。UDP協(xié)議與TCP協(xié)議相比,傳輸能力和資源占用都比較低,因而能夠進行更小、更簡單、更快捷的數(shù)據(jù)傳輸。UDP協(xié)議支持非廣播、多點傳送和廣播三種不同的傳輸方式。在工業(yè)自動化應用中,UDP協(xié)議通常用于網(wǎng)絡管理、對可靠性要求不高的數(shù)據(jù)傳輸,或者由應用程序的其它功能實現(xiàn)自身的可靠性,比如在網(wǎng)絡設備中采用閃存芯片進行編程。
有關TCP/IP協(xié)議及其應用的技術資料已經(jīng)被歸檔,稱為請求評注(RFC),由Internet工程任務組(IETF)負責維護。IETF是一個獨立性的組織,用于制定Internet的各種標準協(xié)議。所有RFC資料都是公開的,用戶可以從IETF的網(wǎng)站免費下載。
C. 應用層協(xié)議及互操作性
TCP/IP協(xié)議提供一系列的服務,無論是在局域網(wǎng)中,還是在廣闊的Internet中,都可以保證兩個設備之間的相互通訊。但是,單獨采用TCP/IP協(xié)議并不能確保網(wǎng)絡設備的通訊效率,它只能保證應用層信息能夠成功地在兩個設備之間進行傳輸。
為了提高通訊效率,需要在相應的網(wǎng)絡設備上安裝兼容的應用軟件。應用軟件必須相互懂得對方所提供的服務,能夠在TCP/IP(UDP/IP)協(xié)議的基礎上,使用通用的報文格式進行通訊。RFC資料提供了Internet常用應用服務的文檔,例如FTP、HTTP、Telnet、SNMP、SMTP(E-mail)等,詳細定義了它們的工作機理。因此,任何廠商只要根據(jù)RFC資料的要求進行生產(chǎn)和程序開發(fā),就可以確保設備之間能夠相互通訊,甚至是不同廠商的設備。這種通過應用層協(xié)議實現(xiàn)不同廠商設備之間相同通訊的能力被稱為互操作性。
雖然文件傳輸(FTP)、終端仿真(Telnet)、電子郵件(SMTP)和其它通用的服務已經(jīng)在IETF的領導下確定下來。但是在工業(yè)自動化領域,情況卻不是這么簡單。雖然某些自動化廠商的設備能夠工作在以太網(wǎng)上,也采用了TCP/IP協(xié)議,但是它們卻有著不同的應用層協(xié)議。這樣一來,在車間現(xiàn)場中,不同自動化廠商的設備即便可以與局域網(wǎng)相連接,在物理上能夠?qū)崿F(xiàn)共存,卻不能進行設備之間的互操作。比如,A廠商的PLC不能通過TCP/IP連接,方便地共享B廠商PLC中的數(shù)據(jù);或者A廠商工作站內(nèi)的軟件不能對B廠商的設備編程或者配置??梢?,由于缺乏互操作性,即便在同一個項目,同一個以太網(wǎng)中,用戶也很難將不同廠商的以太網(wǎng)設備集成在一起,構成一個系統(tǒng)。
EtherNet/IP協(xié)議能夠與任何現(xiàn)有的協(xié)議共存,它們都可以運行在TCP/UDP傳輸層之上。
D. 目前以太網(wǎng)TCP/IP協(xié)議在工業(yè)自動化中的應用
目前,基于TCP/IP協(xié)議的以太網(wǎng)不僅僅局限于車間范圍內(nèi)的通訊,而且已經(jīng)能夠?qū)崿F(xiàn)與整個企業(yè)Intranet,甚至Internet的連接。在工廠中,以太網(wǎng)通常用于實現(xiàn)如下功能:設備程序維護、MIS或MES系統(tǒng)與現(xiàn)場設備交換數(shù)據(jù)、內(nèi)部網(wǎng)頁服務、控制設備監(jiān)管、操作員終端與現(xiàn)場設備通訊、事件記錄或報警等。這些功能都需要以太網(wǎng)提供較高的數(shù)據(jù)吞吐量和廣泛的設備連接能力,而響應時間則是第二位需要考慮的問題?,F(xiàn)在,雖然有些用戶已經(jīng)將以太網(wǎng)用于自動化控制系統(tǒng),但是其控制能力具有一定的局限性。比如,通過以太網(wǎng)共享處理器中的數(shù)據(jù),這樣的應用項目充分發(fā)揮了以太網(wǎng)具有較大數(shù)據(jù)吞吐量的優(yōu)勢,但是它的信息響應時間卻不具備較高的確定性和可重復性。
IV. 網(wǎng)絡內(nèi)及網(wǎng)絡間的數(shù)據(jù)交換
雖然EtherNet/IP網(wǎng)絡具備直接利用以太網(wǎng)進行設備數(shù)據(jù)采集和配置的功能,但也不要指望單一的網(wǎng)絡能夠滿足所有的需要。某些自動化設備廠商未必提供支持EtherNet/IP網(wǎng)絡的設備。另外,較短時期內(nèi),如果需要在光電傳感器、接近開關等簡單的設備中集成EtherNet/IP網(wǎng)絡連接功能,可能費用還比較高。
但是,這些困難并不意味著會阻礙用戶將EtherNet/IP網(wǎng)絡作為首選網(wǎng)絡來使用。相反,用戶可以充分利用EtherNet/IP的遠程聯(lián)網(wǎng)能力,像使用本地網(wǎng)絡一樣來操作遠程設備。更為關鍵的原因在于,網(wǎng)絡的應用不需要編制任何程序或者使用中間計算機設備。
為了實現(xiàn)上述目的,整個工業(yè)自動化系統(tǒng)的網(wǎng)絡(如圖1所示)必須使用一系列通用的服務,所有網(wǎng)路設備均采用通用的對象模型來組織數(shù)據(jù)。只有實現(xiàn)了數(shù)據(jù)的一致性,才能夠讓數(shù)據(jù)在不同的網(wǎng)絡之間進行路由。
A. 面向?qū)ο蟮臄?shù)據(jù)結構
未來的Internet將采用一種分布式的對象通訊模型,用于點對點的數(shù)據(jù)交換,實現(xiàn)企業(yè)內(nèi)部Intranet網(wǎng)絡與Internet的相互連接。與DCOM和CORBA等“中間件”標準相比較,雖然兩者的實現(xiàn)機理有所不同,但是它們關于分布式對象模型的互操作方法是一致的。分布式對象模型的結構具有顯著的優(yōu)勢,它為軟件開發(fā)者和最終用戶提供了方便的手段,無需考慮設備的具體物理位置,利用簡單、面向?qū)ο蠛途W(wǎng)絡化的方法就可以管理設備數(shù)據(jù)。用戶可以通過對象命名和尋址方法,對網(wǎng)絡設備地址及其內(nèi)部數(shù)據(jù)結構實現(xiàn)透明訪問,獲得詳細信息。
沿用至今的源/目標通訊模式可能不會在未來的Internet網(wǎng)絡環(huán)境中繼續(xù)流行。因為在車間現(xiàn)場的以太網(wǎng)設備需要具備互操作性,既要支持信息應用軟件,又要滿足實時控制要求,而且通常需要在同一網(wǎng)絡中實現(xiàn)。所以,用戶需要讓不同廠商的設備在同一網(wǎng)絡中實現(xiàn)互操作。為了達到這一目的,所使用的應用層協(xié)議必須滿足一系列的要求,從而在基于TCP/IP協(xié)議的以太網(wǎng)上實現(xiàn)設備之間的互操作。
運行于TCP/IP和UDP/IP協(xié)議之上
實現(xiàn)分布式對象模型
提供有效的傳輸模式用于實時I/O數(shù)據(jù)
允許控制數(shù)據(jù)和信息數(shù)據(jù)在同一個以太網(wǎng)中共存
滿足工業(yè)自動化系統(tǒng)的各項要求
能夠被廣大自動化設備廠商接受并實施
B. 通用對象庫
CIP協(xié)議家族定義了一系列對象(目前有46個對象)。只有少數(shù)對象是針對專門的數(shù)據(jù)鏈路層而制定的,其中DeviceNet有1個,ControlNet有3個,EtherNet/IP有1個。其余的對象都是通用的,能夠在上述三種網(wǎng)絡中使用。
根據(jù)某一類設備所需的功能,今后可以加入新的對象,這將有利于對設備功能的擴充。比如,一個工作在DeviceNet網(wǎng)絡上的接近傳感器并不支持其它的功能。然而,開發(fā)者在使用已定義的公共對象時,還可以在設備供應商自定義尋址范圍內(nèi)(類代碼100~199,8位對象類代碼空間)創(chuàng)建自己的對象。當然,強烈推薦開發(fā)者與ODVA和ControlNet International的特別興趣小組(SIG)合作,制定更多的通用對象,進一步取代自行開發(fā)的專用對象。
D. 電子數(shù)據(jù)表
如果沒有相應的機制去識別某一設備到底為外部應用程序提供了哪些對象,那么保持對象模型的一致性也就無從談起。因此,CIP協(xié)議提供了多種方案,用于配置設備:
打印出來的數(shù)據(jù)表
參數(shù)對象和參數(shù)對象存根
電子數(shù)據(jù)表(EDS)
電子數(shù)據(jù)表與參數(shù)對象存根相結合
設備配置信息集合與上述方法相結合
在使用打印出來的數(shù)據(jù)表進行設備配置時,配置軟件只能提示用戶該設備需要用到的服務、類的實例、屬性數(shù)據(jù)以及其它相關信息。雖然這樣也能夠完成配置工作,但是很不方便,因為這種方法不能判斷上下參數(shù)的關聯(lián),數(shù)據(jù)的格式以及內(nèi)容正確與否。
參數(shù)對象提供了另外一種方法,它將設備所有可以配置的數(shù)據(jù)進行了全面的描述。這樣一來,由于設備能夠提供所需的信息,使得配置軟件可以方便地訪問這些參數(shù),并且操作界面也十分友好。參數(shù)的屬性包括數(shù)據(jù)類型、工程單位、最小值、最大值、缺省值、比例系數(shù)等內(nèi)容,而且這些內(nèi)容都保存在設備的非易失性存儲芯片中,可以進行讀寫(或只讀)操作。
由于參數(shù)對象方法將所需的全部參數(shù)信息都保存在設備中,無疑增加了小型設備的負擔,尤其是DeviceNet從設備。因此,開發(fā)人員對參數(shù)對象方法進行了簡化,稱為參數(shù)對象存根。這種方法也支持對參數(shù)數(shù)據(jù)進行訪問,但是它并不描述這一數(shù)據(jù)的任何含義。這時,就需要使用EDS電子數(shù)據(jù)表。在電子數(shù)據(jù)表中保存有全部參數(shù)對象的信息以及與之相對應的存根。因此,電子數(shù)據(jù)表與參數(shù)對象存根的配合使用,既能夠方便地實現(xiàn)參數(shù)對象方法的全部功能,又避免給單個設備造成負擔。
另外,設備配置信息集合方法可以允許對大批量的參數(shù)數(shù)據(jù)進行上傳和下載。
E. 報文協(xié)議
通過網(wǎng)絡訪問任何設備的內(nèi)部對象都需要使用非連接通訊管理對象或連接通訊管理對象。
由于EtherNet/IP是基于連接的網(wǎng)絡。因此,一個CIP協(xié)議連接數(shù)據(jù)包會發(fā)送到網(wǎng)絡上。一旦連接建立成功,就會對該連接分配一個連接標識(CID)。如果這種連接是雙向的數(shù)據(jù)交換,就會給它分配兩個連接標識,如圖6所示。
既然大多數(shù)基于CIP協(xié)議的報文都采用連接方式進行通訊,就需要對兩個尚未連接的設備進行連接初試化的方法做出定義。這一工作是通過名為非連接通訊管理對象(UCMM)來實現(xiàn)的,它專門用于處理連接請求。一旦通訊連接建立成功,設備所需的全部通訊資源,包括中間CIP協(xié)議的橋接和路由,都將被保留。這樣一來,使得數(shù)據(jù)交換過程所需的網(wǎng)絡負載和帶寬占用降低到最小限度。
所有在CIP協(xié)議中的網(wǎng)絡連接分為兩大類:顯式報文連接和隱式(I/O數(shù)據(jù))報文連接。
顯式報文連接用于兩個設備之間的普通信息傳輸,可以使用多用途的通訊路徑。這類連接在網(wǎng)絡仲裁機制中被認為是消息連接。顯式報文使用典型的請求/應答網(wǎng)絡通訊模式,通常需要訪問報文路由對象。每一個請求報文包含有明確的顯式信息,例如接收方的網(wǎng)絡地址、需要執(zhí)行的動作以及產(chǎn)生適當?shù)捻憫葍?nèi)容。
隱式報文連接通過專用的特殊通訊路徑或端口,在生產(chǎn)者應用對象和多個消費者應用對象之間建立連接。這類報文專門用于傳輸I/O數(shù)據(jù),在網(wǎng)絡仲裁機制中被認為是I/O連接。在控制層網(wǎng)絡中,隱式報文有著大量的應用。隱式報文數(shù)據(jù)的含義已經(jīng)在通訊連接建立、分配連接標識的時候完成了定義。因此,隱式報文中只包含具體應用對象的數(shù)值。也就是說,通過連接標識“含蓄”地定義了報文數(shù)據(jù)的具體含義,因此稱為“隱式報文”。
這兩種報文連接方式都支持網(wǎng)絡間的橋接,詳細內(nèi)容將在后續(xù)章節(jié)中討論。
F. 隱式連接
如上所述,所有的隱式連接必須是兩個設備之間的直接連接。在每個連接方向上,需要源地址、目標地址和連接標識。隱式報文通過應用層CIP協(xié)議的外部事件進行觸發(fā)。
在實際使用中,DeviceNet和ControlNet的源地址、目標地址就是設備的節(jié)點地址。在EtherNet/IP網(wǎng)絡中,就是設備的IP地址。
然而,TCP數(shù)據(jù)包中的CIP幀含有關于目標地址的額外信息——通訊路徑,它表示數(shù)據(jù)幀在傳輸過程中的“跳躍”路徑。
如圖1所示,在一個典型工業(yè)自動化系統(tǒng)網(wǎng)絡中,編程軟件通過個人計算機連接到信息層網(wǎng)絡,由它發(fā)出一個報文,需要傳送給設備層的電機起動器。在這一過程中,數(shù)據(jù)幀首先進入信息層網(wǎng)絡,然后進入控制層網(wǎng)絡,最后進入設備層網(wǎng)絡,整個過程至少需要三次網(wǎng)絡“跳躍”。通過一系列的“跳躍”,CIP數(shù)據(jù)幀的內(nèi)容在整個旅途過程中都是完好無缺的,并且先后使用了TCP數(shù)據(jù)包、ControlNet數(shù)據(jù)包和CAN總線數(shù)據(jù)包。
只要CIP數(shù)據(jù)幀中的路徑完好無缺,電機起動器就可以通過CAN總線數(shù)據(jù)包將返回的報文按照原路徑回傳。無需考慮通訊的發(fā)起設備是否在同一物理網(wǎng)絡中,而是通過橋接,將數(shù)據(jù)傳送給本地的EtherNet/IP網(wǎng)絡設備,甚至可以通過Internet路由給遠程的網(wǎng)絡設備,實現(xiàn)數(shù)據(jù)的透明傳輸。
在這個示例中,電機起動器遵守DeviceNet規(guī)范,編程計算機遵守EtherNet/IP規(guī)范,這兩個設備能夠相互理解對方設備的數(shù)據(jù)組織形式。
前面已經(jīng)提到,每個設備都必須支持一系列的強制性對象,其中之一就有標識對象。標識對象的強制性屬性有供應商ID、設備類型、產(chǎn)品代碼和修訂版本等內(nèi)容。源設備在發(fā)出報文之前,可以從目標設備中獲得上述信息,而無需事先知道它到底是什么設備。通過這些數(shù)據(jù),就能找到與之唯一對應的EDS電子數(shù)據(jù)表文件,從而知道該設備能夠支持哪些公共對象,多數(shù)情況下,還能知道供應商定義的特殊對象。當然,由于某些設備已經(jīng)包含了全部的參數(shù)對象,無需EDS電子數(shù)據(jù)表文件就可以直接獲取設備的數(shù)據(jù)。這種機制不受目標設備網(wǎng)絡類型的約束,可以從圖2和圖5中得知,數(shù)據(jù)對象不依賴于網(wǎng)絡,也就是說,相同的報文可以發(fā)送給相同的數(shù)據(jù)對象,既不依賴于設備,也不依賴于網(wǎng)絡連接。
由于EtherNet/IP網(wǎng)絡仍然構建于TCP/IP協(xié)議之上,因此具備進一步的擴展?jié)摿?。例如,并不要求源設備必須位于信息層網(wǎng)絡中。位于控制層網(wǎng)絡的PLC可以通過一個連接信息層網(wǎng)絡的PLC或者網(wǎng)橋設備(無需關心控制層網(wǎng)絡到底是EtherNet/IP網(wǎng)絡還是ControlNet網(wǎng)絡),發(fā)起需要多次“跳躍”的報文,并可以將信息層網(wǎng)絡作為“跳躍”過程的一個中間環(huán)節(jié)。在這一功能的幫助下,兩個分別連入ControlNet網(wǎng)絡的PLC,即便是遠隔重洋,也可以通過Internet,使用顯式報文實現(xiàn)數(shù)據(jù)交換。
V. 基于EtherNet/IP網(wǎng)絡的I/O控制
A. 以太網(wǎng)能否作為控制網(wǎng)絡?
從傳統(tǒng)意義上來講,有人不贊成以太網(wǎng)用于控制目的,其原因在于以太網(wǎng)是非確定性的網(wǎng)絡。這一問題已經(jīng)成為業(yè)界爭論的焦點。確定性可以幫助用戶準確估計在最壞情況下,網(wǎng)絡數(shù)據(jù)的傳輸能力。同時,用戶對可靠性也提出了更高的要求,需要確保每次都能在相同的時間內(nèi)完成數(shù)據(jù)傳輸(或者盡快識別出數(shù)據(jù)不能到達的情況,以便采取相應措施)。隨著以太網(wǎng)技術的不斷發(fā)展,在網(wǎng)絡確定性、可重復性和數(shù)據(jù)吞吐量上,都有了很大的提高。例如,以太網(wǎng)交換技術將容易產(chǎn)生數(shù)據(jù)沖突的區(qū)域分割成單個設備區(qū)域或者一小組設備,使得數(shù)據(jù)沖突幾乎可以減少到零。CSMA/CD(帶沖突檢測的載波監(jiān)聽多路訪問)技術在網(wǎng)絡出現(xiàn)沖突時,不僅能夠及時發(fā)現(xiàn),而且還可以恢復網(wǎng)絡通訊。此外,通過在以太網(wǎng)(IEEE 802.1p)的適當位置引入報文優(yōu)先級別,可以使交換機和TCP/IP協(xié)議棧有能力區(qū)分控制/報警信息數(shù)據(jù)包和編程數(shù)據(jù)包,以及其它的網(wǎng)絡路由、診斷數(shù)據(jù)(SNMP)。
然而,這些技術還未在高速控制系統(tǒng)中進行嘗試。在某些對實時性有苛刻要求的應用項目中,只要比預定時間晚一點收到某個數(shù)據(jù),就可能造成生產(chǎn)線停機,影響產(chǎn)量,甚至是損壞產(chǎn)品或設備。在以太網(wǎng)交換機中,數(shù)據(jù)包延遲時間的變化甚至數(shù)據(jù)包丟失,都有可能造成嚴重的事故。在信息系統(tǒng)中,交換機、集線器的損壞最多會讓信息系統(tǒng)丟失部分生產(chǎn)數(shù)據(jù);但是在控制系統(tǒng)中,如果發(fā)生這樣問題,不僅會影響產(chǎn)量,還會損壞生產(chǎn)設備。因此,用戶在選擇網(wǎng)絡時,都要對具體的應用項目進行充分考慮,以便確定基于TCP/IP協(xié)議的以太網(wǎng)技術到底是最好的方案,還是可行的方案。
B. 以太網(wǎng)交換技術的發(fā)展
近年來,轉(zhuǎn)發(fā)式集線器技術和以太網(wǎng)網(wǎng)橋技術已經(jīng)被新的高速交換技術所取代,交換機任意兩個端口之間的數(shù)據(jù)交換延遲已經(jīng)降低到百萬分之幾秒。通過專用的硬件設備來實現(xiàn)高速交換,使得交換機具有非常高的背板通訊帶寬。通常情況下,交換機背板通訊速率大于該設備所有以太網(wǎng)端口通訊速率之和,因此能夠支持所有端口全速運行而不會發(fā)生沖突。此外,某些交換機還能夠?qū)?shù)據(jù)幀進行臨時緩沖,用來解決短時期內(nèi)對同一輸出端口的爭奪。
交換機被稱為交換式集線器,屬于第二層(數(shù)據(jù)鏈路層)的數(shù)據(jù)交換,也稱為簡單交換。實際上,交換機就是一臺多端口的網(wǎng)橋。交換機上的每個端口都有自己的沖突域,當設備通過交換機連接后,相互之間不會發(fā)生數(shù)據(jù)沖突。此外,交換機上的每個端口可以配置為半雙工模式(傳統(tǒng)以太網(wǎng)),或者全雙工模式。全雙工模式下,交換機與連接到某一端口的設備之間,能夠在每個數(shù)據(jù)傳輸方向上提供10Mbps的連接速率,總共為20Mbps。對于快速以太網(wǎng)來說,全雙工模式能夠為每個傳輸方向提供100Mbps的連接速率,總共為200Mbps。與傳統(tǒng)的網(wǎng)橋類似,交換機內(nèi)部要建立并維護一個以太網(wǎng)地址與端口的映射表。當交換機從某一端口接收到數(shù)據(jù)包之后,能夠立即將該數(shù)據(jù)包“交換”到相對應的輸出端口,而這一過程通常能夠在百萬分之幾秒內(nèi)完成。
更先進的交換機支持虛擬局域網(wǎng)功能(VLAN),用戶能夠?qū)粨Q機進行配置,將若干個端口劃分為一個組,從該組某一端口接收到的數(shù)據(jù)包只能發(fā)送給組內(nèi)的其它端口。另外,VLAN的劃分通??梢栽谝慌_交換機上實現(xiàn)交疊,某個端口可以隸屬于多個VLAN。這一功能為用戶提供了極大的靈活性,可以將交換機上相互分割的端口配置為多個相互交疊的沖突區(qū)域。
與轉(zhuǎn)發(fā)式集線器相比,交換機能夠支持更大的數(shù)據(jù)吞吐量,不會像轉(zhuǎn)發(fā)式集線器那樣,在網(wǎng)絡負荷增加時出現(xiàn)數(shù)據(jù)沖突,造成嚴重的傳輸延遲。因此,在那些負荷較重、傳輸延遲明顯的網(wǎng)絡中,最好使用交換機代替轉(zhuǎn)發(fā)式集線器。雖然交換機現(xiàn)在的價格比轉(zhuǎn)發(fā)式集線器貴,但是隨著技術的發(fā)展,它的價格會迅速下降。到時候,交換機將取代轉(zhuǎn)發(fā)式集線器,成為網(wǎng)絡連接的首選設備,而它的用途也不僅僅局限于控制領域。
當然,交換機某些性能上的限制可能會對一些特殊的應用項目造成影響,必須對這些問題加以足夠的重視。例如,來自多個端口的數(shù)據(jù)包需要發(fā)送到同一端口,在這種情況下,交換機內(nèi)部可能會出現(xiàn)數(shù)據(jù)擁塞。通常的處理辦法是簡單地丟棄某些數(shù)據(jù)包,或者告訴發(fā)送設備出現(xiàn)了沖突,待擁塞清除之后再發(fā)送數(shù)據(jù)。具體采用哪種方法處理數(shù)據(jù)擁塞,由交換機生產(chǎn)廠商做出選擇。另外一個問題在于,交換機可能會在數(shù)據(jù)流中插入時間不等的延遲,這對于普通的辦公應用來說沒有任何影響,但是對于某些工業(yè)自動化控制系統(tǒng),可能會造成嚴重的后果。
雖然交換機對每個端口的沖突區(qū)域進行了隔離,但是它并沒有對廣播區(qū)域進行隔離。當然,如果交換機支持虛擬局域網(wǎng)功能,也可以通過設置VLAN來隔離廣播區(qū)域。在以太網(wǎng)中,從任一端口接收到的廣播報文將被發(fā)送給所有端口上的設備。這就意味著存在一個問題,如果某個設備出現(xiàn)故障,或者沒有配置好,它可能會過多地向網(wǎng)絡發(fā)送廣播報文,從而導致整個以太網(wǎng)傳輸性能下降。有些交換機生產(chǎn)廠商采用了相應的方法,去抑止這種過多的廣播報文。由于以太網(wǎng)廣播報文也采用TCP/IP協(xié)議用于地址解析。因此,廣播報文在以太網(wǎng)上的處理方式與其它基于TCP/IP協(xié)議的報文是平等的。所以這些方法缺少通用性。盡管如此,只要網(wǎng)絡配置得當、操作正常,廣播報文只會占整個網(wǎng)絡數(shù)據(jù)量的很小比例。
另外,交換機和轉(zhuǎn)發(fā)式集線器都屬于有源設備,其內(nèi)部有著復雜的數(shù)字電路,需要外部供電(通常為交流電)才能工作。一旦交換機或者集線器出現(xiàn)故障,將導致所有與之相連接的設備,包括其它交換機或者集線器,都不能正常通訊。在修好或者替換交換機、集線器之前,與之相連接的設備不能與車間的其它網(wǎng)絡進行通訊。此外,大多數(shù)以太網(wǎng)介質(zhì)和配件都是針對辦公室或者輕工業(yè)的應用環(huán)境而設計的,并沒有按照惡劣工業(yè)環(huán)境下控制設備的標準進行設計和測試(包括允許的溫度范圍、工業(yè)級CE認證、抗沖擊和抗振動性能等)。對于以太網(wǎng)在新領域,尤其是工業(yè)現(xiàn)場的應用,這些問題都應該加以考慮。
C. 以太網(wǎng)性能的發(fā)展
近年來,隨著以太網(wǎng)技術的發(fā)展,先后出現(xiàn)了快速以太網(wǎng)和千兆以太網(wǎng)。IEEE 802.3u規(guī)范標準對快速以太網(wǎng)進行了定義??焖僖蕴W(wǎng)基本速率為100Mbps,它與10Mbps以太網(wǎng)采用相同的幀結構、尋址方式和CSMA/CD介質(zhì)訪問協(xié)議。然而,快速以太網(wǎng)中的所有網(wǎng)絡定時參數(shù)都需要除以10。因此,在某些配置情況下,與10Mbps以太網(wǎng)相比,快速以太網(wǎng)兩個節(jié)點之間的距離可能會短一些。
快速以太網(wǎng)具有傳統(tǒng)以太網(wǎng)10倍的線速度,能夠充分滿足高帶寬應用項目的要求,例如視頻、音頻傳輸,或者是網(wǎng)絡中大數(shù)據(jù)量的文件交換。盡管如此,某些應用項目并不滿足于單純網(wǎng)絡線速度的提高。特別是在車間現(xiàn)場,有許多基于微處理器的智能設備連接到以太網(wǎng)中,例如I/O模塊、傳感器、執(zhí)行機構、變頻器以及其它接口設備。這些設備發(fā)送和接收的數(shù)據(jù)都被封裝到64個字節(jié)長度的以太網(wǎng)幀內(nèi)(這是以太網(wǎng)支持的最小幀長度)。因此,影響這些設備性能的主要因素在于微處理器速度和嵌入的固件,而不是網(wǎng)絡的線速度。這些設備幾乎不可能完全利用10Mbps以太網(wǎng)的帶寬,除非是由于應用層協(xié)議的效率較低,造成設備重復進行點對點的數(shù)據(jù)輪詢。
另外一個顯著的優(yōu)勢在于,100Mbps以太網(wǎng)比10Mbps以太網(wǎng)有著更高的數(shù)據(jù)沖突恢復能力。正如前面所述,100Mbps以太網(wǎng)的數(shù)據(jù)沖突后退時間是10Mbps以太網(wǎng)的十分之一。由于網(wǎng)絡負荷較重,經(jīng)常出現(xiàn)數(shù)據(jù)沖突,100Mbps以太網(wǎng)的性能要明顯優(yōu)于10Mbps以太網(wǎng)。而在數(shù)據(jù)沖突不嚴重的時候,100Mbps以太網(wǎng)能夠提供更大的帶寬,支持更多的網(wǎng)絡負荷。如果某一應用項目需要使用多個交換機,100Mbps的網(wǎng)絡速率將有利于交換機之間的連接。當然,如果網(wǎng)絡負載和數(shù)據(jù)沖突在10Mbps以太網(wǎng)中表現(xiàn)不是很明顯,僅僅是簡單地升級到100Mbps以太網(wǎng),這樣的投資并不會有什么收效。
D. 隱式報文(I/O信息)在EtherNet/IP網(wǎng)絡中的傳輸
在4.5節(jié)中,已經(jīng)介紹了通訊路徑以及顯式報文和非連接報文在點對點數(shù)據(jù)交換中的應用。
第二類報文,也就是隱式報文。通過應用層協(xié)議的支持,實現(xiàn)了網(wǎng)絡節(jié)點之間的透明數(shù)據(jù)交換,無論是報文的“生產(chǎn)者”還是“消費者”,在報文傳輸之前,都知道這個報文格式。當隱式報文用于I/O信息傳輸時,它能夠充分利用生產(chǎn)者/消費者通訊模式的優(yōu)勢。另外,它還可以用于控制器之間預定信息的傳輸。
在CIP協(xié)議中,隱式報文有四種主要的應用方式:
輪詢
選通
狀態(tài)改變
周期循環(huán)
輪詢方式與傳統(tǒng)的I/O網(wǎng)絡通訊十分相似,掃描器(主站)不斷地向I/O適配器(從站)發(fā)出輸出信息并接收輸入信息。
選通方式是一種特殊的輪詢,掃描器只發(fā)出一個多點傳送的數(shù)據(jù)請求報文,從設備會陸續(xù)將它們的數(shù)據(jù)傳送回掃描器,而不再需要其它來自掃描器的信息。
周期循環(huán)方式將按照預定的時間周期傳送數(shù)據(jù),每個報文都有一個連接標識。任何其它設備,只要知道這個連接標識,就能接收網(wǎng)絡上符合這一連接標識的數(shù)據(jù)。
狀態(tài)改變方式與周期循環(huán)方式類似,不同之處在于,只有當數(shù)據(jù)變化時才會發(fā)出報文,而不是基于時間事件。同時,狀態(tài)改變方式還要發(fā)出一個周期性循環(huán)的“心跳”信號,以便讓數(shù)據(jù)的“消費者”知道這一設備還處于在線狀態(tài),而且工作正常。
上述四種方式中,周期循環(huán)是EtherNet/IP網(wǎng)絡中首選的隱式報文數(shù)據(jù)交換方式,它在數(shù)據(jù)完整性和網(wǎng)絡流量優(yōu)化方面有著較好的平衡。
為了讓CIP協(xié)議能夠在以太網(wǎng)中實現(xiàn),其關鍵問題在于隱式報文可能有多個數(shù)據(jù)“消費者”,它們要共享同一個數(shù)據(jù)包,然而TCP協(xié)議只能用于點對點的數(shù)據(jù)交換,所以它發(fā)送的廣播數(shù)據(jù)包會被IP層拒絕,而且還可能增加終端設備的負荷。
UDP/IP數(shù)據(jù)包具有多點傳送能力,而且所需的應用層協(xié)議也比較簡單。因此,能夠有效減少終端設備的處理時間。
在典型的控制系統(tǒng)中,預期的通訊連接通常需要以幾個毫秒為周期,頻繁進行數(shù)據(jù)交換。UDP數(shù)據(jù)包并不是直接傳送給具有“真實”IP地址的接收設備,而是通過一個IP多點傳送地址來發(fā)送數(shù)據(jù)。同基于CIP連接標識的點對點傳輸方式相比較,這種方法的數(shù)據(jù)包中沒有在應用層信息幀之前指定某個具體的接收節(jié)點。
在這種情況下,接收設備作為“消費者”,它必須事先知道這個IP多點傳送地址(事先已經(jīng)由“生產(chǎn)者”——發(fā)送設備進行了分配)
為了達到這一目的,必須采用非連接報文管理對象。
首先,通訊連接的發(fā)起設備(例如,配置為I/O模式的PLC;而另外的PLC或者其它設備作為連接的目標設備)發(fā)出點對點的TCP數(shù)據(jù)包,該數(shù)據(jù)包指明了連接發(fā)起設備需要接收的數(shù)據(jù)對象,以及按照什么樣的速率進行接收。
然后,目標設備的連接管理對象將對數(shù)據(jù)包的內(nèi)容進行審核,判斷其是否符合該數(shù)據(jù)對象的連接表和刷新周期。如果符合,這個數(shù)據(jù)對象將作為“生產(chǎn)者”發(fā)送數(shù)據(jù)(例如,采用多點傳送形式),它的連接標識和相關的多點傳送IP地址將一并回傳給對應的“消費者”設備,如圖7所示。如果不符合,UDP協(xié)議的相關IP地址和連接標識將被分配,并加載到連接管理對象中。數(shù)據(jù)不斷地通過“生產(chǎn)者”發(fā)送,所有知道這個多點傳送IP地址和連接標識的設備都可以作為“消費者”,接收并使用這些數(shù)據(jù)。
最后,當“消費者”設備沒有連接到網(wǎng)絡上時,必須有相應的機制去關閉這個連接。由于UDP/IP協(xié)議采用了無需應答的傳輸機制,所以“生產(chǎn)者”無法知道是否有“消費者”在線,并且還在接收它發(fā)出的數(shù)據(jù)。為此,每個“消費者”設備還需要向“生產(chǎn)者”發(fā)送一種特殊的周期循環(huán)報文。在這樣的連接過程中,并不傳輸實際的應用數(shù)據(jù),而是用于表明“消費者”設備仍然在線,因此稱為“心跳”連接。例如,“生產(chǎn)者”設備正在發(fā)送某個數(shù)據(jù)對象,一旦該數(shù)據(jù)對象的所有心跳連接超時,那么與之相關的連接都將被關閉。
首先通過TCP數(shù)據(jù)包建立設備之間的連接,然后利用UDP連接進行I/O數(shù)據(jù)對象報文交換,從而將網(wǎng)絡帶寬的占用減少到最低限度。
當然,隨著100Mbps以太網(wǎng)的應用,帶寬占用率已經(jīng)不是主要考慮的問題。這種數(shù)據(jù)通訊方式更為明顯的優(yōu)勢在于,它最大限度地減少了終端設備需要處理的數(shù)據(jù)包,從而提高了這些設備支持隱式報文連接的數(shù)目。
VI. EtherNet/IP網(wǎng)絡的優(yōu)勢
由于ControlNet、DeviceNet和EtherNet/IP都使用相同的應用層協(xié)議,所以它們之間能夠共享對象庫和設備描述信息。這些數(shù)據(jù)對象和描述信息可以讓不同廠商的復雜設備實現(xiàn)即插即用和互操作。數(shù)據(jù)對象的定義非常嚴格,在同一網(wǎng)絡中,可以完成實時I/O信息、配置信息以及診斷信息的傳送。這就意味著無需編制特殊的軟件,便可以將各種復雜的設備,例如變頻器、機器人控制器、條形碼掃描器、稱重儀等設備連接在一起。這樣一來,不僅能夠快速構建控制系統(tǒng),還方便了對設備的診斷和維護。
另外,EtherNet/IP網(wǎng)絡能夠同時為用戶提供顯式(信息)報文和隱式(控制)報文傳輸服務。這樣一來,EtherNet/IP網(wǎng)絡就能夠利用輪詢、周期循環(huán)、狀態(tài)改變等觸發(fā)機制,進行點對點和多點數(shù)據(jù)傳輸,從而滿足控制層、設備層網(wǎng)絡的各種要求。
除此之外,由于ControlNet和DeviceNet的應用已經(jīng)普及,全球范圍內(nèi)有四百多家廠商為這三種網(wǎng)絡提供多達五百余種的設備,而且這些設備之間還能實現(xiàn)互操作??梢?,支持EtherNet/IP網(wǎng)絡的設備覆蓋面相當廣泛,其數(shù)目和種類也在不斷增長。
VII. 結論
由于采用了三項先進的技術:100Mbps快速以太網(wǎng)、交換式以太網(wǎng)和終端設備全雙工通訊方式,不僅減少了以太網(wǎng)數(shù)據(jù)沖突的可能性,還使得基于以太網(wǎng)的I/O控制成為可能。
以太網(wǎng)和TCP/IP協(xié)議已經(jīng)十分普及,大多數(shù)用戶都以此為基礎,構建網(wǎng)絡,進行各種網(wǎng)絡應用。同時,以太網(wǎng)還支持廣泛的兼容設備,提供較高的數(shù)據(jù)吞吐量,而且相關配件的價格也在逐漸降低??梢灶A見,無論是分布式通訊,還是點對點的數(shù)據(jù)交換,從企業(yè)內(nèi)部的Intranet網(wǎng)絡到貫穿全球的Internet,都將是以太網(wǎng)的天下。在這種環(huán)境下,車間現(xiàn)場的以太網(wǎng)設備不僅要在同一個網(wǎng)絡中實現(xiàn)控制功能,還要與企業(yè)的信息系統(tǒng)進行互操作。用戶也需要將不同廠商的設備集成在一起。為了實現(xiàn)這一目標,設備所采用的應用層協(xié)議應該具備如下條件:
基于TCP/IP以及UDP/IP協(xié)議
使用分布式對象模型
允許控制報文和信息報文在同一以太網(wǎng)中共存
提供基于生產(chǎn)者/消費者通訊模式的網(wǎng)絡服務
滿足工業(yè)自動化系統(tǒng)的各項要求
能夠被廣大自動化設備廠商接受并實施
在工業(yè)自動化領域,實時控制能力和通用的操作性尤為重要。這些功能都可以通過TCP/UDP/IP協(xié)議在以太網(wǎng)上實現(xiàn)。