技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 應(yīng)用方案 > 關(guān)于基于SII接口的EtherCAT網(wǎng)絡(luò)配置方案的設(shè)計

關(guān)于基于SII接口的EtherCAT網(wǎng)絡(luò)配置方案的設(shè)計

時間:2018-09-14 15:02:36來源:網(wǎng)絡(luò)

導(dǎo)語:?EtherCAT是由BECKHOFF公司提出的一種高性能工業(yè)以太網(wǎng)技術(shù)[1],它采用標(biāo)準(zhǔn)以太網(wǎng)數(shù)據(jù)幀和符合以太網(wǎng)標(biāo)準(zhǔn)IEEE802.3的物理層,具有數(shù)據(jù)傳輸速度高、實時性好、拓?fù)潇`活和實施費(fèi)用低的優(yōu)點(diǎn),逐步成為工業(yè)以太網(wǎng)技術(shù)研究的熱點(diǎn)。

EtherCAT是由BECKHOFF公司提出的一種高性能工業(yè)以太網(wǎng)技術(shù)[1],它采用標(biāo)準(zhǔn)以太網(wǎng)數(shù)據(jù)幀和符合以太網(wǎng)標(biāo)準(zhǔn)IEEE802.3的物理層,具有數(shù)據(jù)傳輸速度高、實時性好、拓?fù)潇`活和實施費(fèi)用低的優(yōu)點(diǎn),逐步成為工業(yè)以太網(wǎng)技術(shù)研究的熱點(diǎn)。

EtherCAT技術(shù)已成為國際標(biāo)準(zhǔn)IEC61158的一部分,被廣泛的應(yīng)用于同步控制、運(yùn)動控制和材料加工控制等行業(yè)[3,4]。本文研究了常用的EtherCAT網(wǎng)絡(luò)配置方案,分析了其不足,提出了一種基于從站信息接口(SlaveInformationInterface,SII)的EtherCAT網(wǎng)絡(luò)配置方案,并對方案進(jìn)行實現(xiàn),最后通過實驗驗證了其可行性。

目前常用的EtherCAT網(wǎng)絡(luò)配置方案大多基于可擴(kuò)展標(biāo)記語言(eXtensibleMarkupLanguage,XML)在這種方案中EtherCAT配置工具根據(jù)從站提供的EtherCAT從站信息(EtherCATSlaveInformation,ESI)文件和網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),生成一個XML格式的EtherCAT網(wǎng)絡(luò)信息(EtherCATNetworkInformation,ENI)文件。ENI文件描述了網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)以及從站設(shè)備的初始化命令和配置命令。主站獲取ENI文件,并根據(jù)其網(wǎng)絡(luò)配置信息進(jìn)行EtherCAT網(wǎng)絡(luò)配置。

這種方案具有良好的通用性和擴(kuò)展性,但也有著諸多不足。一方面,該配置方案需要額外的配置軟件進(jìn)行協(xié)助,增加了研發(fā)的工作量。同時,ENI文件依據(jù)ESI文件生成,所以一個新的模塊出現(xiàn)就要向EtherCAT配置軟件的庫文件中添加一個新的ESI文件,使得整個配置操作較為復(fù)雜。文獻(xiàn)[5]中設(shè)計了一種簡單EtherCAT主站,可以簡化配置過程,但是仍然需要上位機(jī)進(jìn)行協(xié)助。

另一方面,XML格式的文件解析比較復(fù)雜。XML格式文本是W3C組織為Web數(shù)據(jù)儲存和交換制定的一種文本格式,其解析復(fù)雜度較高,尤其是在系統(tǒng)資源并不豐富的嵌入式主站系統(tǒng)中,XML的解析壓力將面臨更為嚴(yán)峻的挑戰(zhàn)。文獻(xiàn)[6]提出了一種快速XML解析方案,但是其對內(nèi)存要求較大,并不能完全解決上述問題。

1、基于SII的配置方案

為了解決傳統(tǒng)方案中存在的問題,本文提出并設(shè)計了一種基于SII的EtherCAT配置方案。SII是從站信息接口,它規(guī)定了從站信息在EEPROM中的存儲格式,主站可以根據(jù)SII中的信息完成對從站的配置。該配置方案如圖1所示,在配置開始時,主站掃描從站,獲取從站的拓?fù)?,并順序讀取所有從站的設(shè)備信息,然后生成配置命令,從而完成對EtherCAT網(wǎng)絡(luò)及所有從站的配置操作。與傳統(tǒng)方案相比,本方案中由主站獲取從站的拓?fù)浣Y(jié)構(gòu)并生成配置信息,全程無需專門的配置工具軟件參與,降低了配置方案的開發(fā)成本;主站直接從SII中獲取從站的信息,不需要XML參與配置,省卻了解析XML的時間,極大地提高了配置效率。

該配置方案包括3個操作步驟:(1)掃描從站,根據(jù)獲取的響應(yīng)信息計算從站連接的拓?fù)浣Y(jié)構(gòu);(2)根據(jù)從站的拓?fù)浣Y(jié)構(gòu),依次讀取從站信息;(3)生成配置信息,并對從站進(jìn)行配置。

1.1計算從站拓?fù)浣Y(jié)構(gòu)

在目前常用的EtherCAT網(wǎng)絡(luò)配置方案中,從站的拓?fù)浣Y(jié)構(gòu)是由配置工具軟件生成并下發(fā)到從站。而在基于SII的配置方案中,由于沒有配置工具軟件的參與,主站采用一種遞歸的算法計算從站的拓?fù)浣Y(jié)構(gòu)。

為了讀者更好地理解從站拓?fù)浣Y(jié)構(gòu)的計算方法,先簡單介紹EtherCAT數(shù)據(jù)幀如何在從站中傳輸。EtherCAT從站結(jié)構(gòu)如圖2所示,從站最多支持4個端口,從站會根據(jù)端口是否存在連接自動打開或關(guān)閉端口。若連接存在,則打開端口,否則關(guān)閉端口。若端口打開,流入該端口的數(shù)據(jù)幀被發(fā)送給其他從站,在其他從站處理完成后返回該端口;若端口閉合,數(shù)據(jù)幀會直接流向從站的下一個端口。0端口是從站數(shù)據(jù)的輸入端口,從站一旦接入網(wǎng)絡(luò),端口0一定處于打開的狀態(tài),其他3個端口都有可能關(guān)閉。因此數(shù)據(jù)幀在從站中傳輸順序是0端口、數(shù)據(jù)幀處理單元、3端口、1端口、2端口、0端口,最后由0端口離開從站。圖3介紹了數(shù)據(jù)幀在網(wǎng)絡(luò)中的傳輸過程。

根據(jù)上面的描述,可以將EtherCAT從站抽象成三叉樹上的一個結(jié)點(diǎn)。如圖4(a)所示,Port0作為從站結(jié)點(diǎn)的輸入端口,而Port3、Port1和Port2作為輸出端口,且樹遍歷順序是Port3、Port1和Port2。圖3中的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)可抽象圖4(b)所示的三叉樹。因此,計算EtherCAT網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)可以抽象成對三叉樹的深度優(yōu)先遍歷[7]。因為工控網(wǎng)絡(luò)中節(jié)點(diǎn)數(shù)量較少,可以采用遞歸算法實現(xiàn),因此本文采用遞歸算法實現(xiàn)EtherCAT網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的計算[8]。

在使用遞歸算法計算從站拓?fù)浣Y(jié)構(gòu)前,仍需要進(jìn)行3個步驟獲取必要條件:

(1)獲取網(wǎng)絡(luò)中從站的個數(shù)

從站的數(shù)據(jù)幀處理單元在成功處理完數(shù)據(jù)幀之后,會把數(shù)據(jù)幀計數(shù)位的值加1,表示處理成功。利用此特性,主站發(fā)送廣播數(shù)據(jù)幀,所有從站都會把數(shù)據(jù)幀的計數(shù)位的值加1,因此數(shù)據(jù)幀計數(shù)位的值就代表了從站個數(shù),主站讀取返回數(shù)據(jù)幀的計數(shù)位就可以獲取從站的個數(shù)。

(2)獲取從站各個端口連接狀態(tài)

從站使用專用的寄存器記錄從站端口的連接狀態(tài),主站使用順序讀取命令,讀取各個從站記錄端口連接狀態(tài)的寄存器,獲取從站端口的連接狀態(tài)。

(3)排列從站順序

按照從站的順序?qū)ぶ芳磾?shù)據(jù)幀在從站的處理順序給從站進(jìn)行排序。圖3中的從站按照此方法排列后的順序是A、B、C、D。

圖5所示為數(shù)據(jù)結(jié)構(gòu)存儲從站信息,name表示從站的名字,port0、port1、port2和port3采用相同的結(jié)構(gòu)表示從站端口的情況,linkstatus表示端口是否存在連接,之后的name代表與該端口連接的從站的名字。port0比較特殊,因為其作為從站輸入端口,即連接樹的父結(jié)點(diǎn),所以一直處于連接狀態(tài)。

在計算從站拓?fù)浣Y(jié)構(gòu)時,按照順序?qū)⒏鱾€從站的連接信息存在結(jié)構(gòu)體數(shù)組中,然后從數(shù)組中第一個從站開始進(jìn)行計算。對每一個從站首先在port0中記錄其上層從站的名字,然后按照port3、port1和port2的順序掃描從站的各個端口的連接情況,若某端口處于連接狀態(tài),且未記錄其子結(jié)點(diǎn),則數(shù)組中其后port0為空的從站是其子結(jié)點(diǎn),此時進(jìn)入下一層,遞歸計算子結(jié)點(diǎn)的連接情況。當(dāng)計算完成時,所有從站的連接情況都已經(jīng)明確,也就完成了從站拓?fù)浣Y(jié)構(gòu)的計算。

1.2讀取從站信息

要完成EtherCAT網(wǎng)絡(luò)的配置,除了需要獲取從站的拓?fù)浣Y(jié)構(gòu)外,還需要各個從站的設(shè)備信息。在傳統(tǒng)方案中,從站信息是由ESI文件提供的,而在本方案中主站通過訪問從站的EEPROM獲取配置信息。本節(jié)將介紹基于SII的配置方案主站如何讀取從站的設(shè)備信息。

EEPROM中的信息結(jié)構(gòu)如圖6所示,0~64地址存儲的是從站結(jié)構(gòu)信息,從地址64處開始存儲的是分類信息[9]。所有分類信息使用相同的數(shù)據(jù)結(jié)構(gòu),但長度不定。分類信息的數(shù)據(jù)結(jié)構(gòu)如圖7所示,包括2個字節(jié)的信息類型、2個字節(jié)的數(shù)據(jù)長度和指定長度的數(shù)據(jù)內(nèi)容。

在基于SII的配置方案中,主站按照圖8中所示的流程讀取從站信息。主站讀取從站分類信息時,從第一條分類信息開始,根據(jù)類型名查找要讀的信息,直到找到要讀取的信息,并將信息存儲到對應(yīng)結(jié)構(gòu)體。

1.3生成網(wǎng)絡(luò)信息

EtherCAT直接使用標(biāo)準(zhǔn)以太網(wǎng)數(shù)據(jù)幀,以太網(wǎng)幀的數(shù)據(jù)區(qū)由一個或多個EtherCAT子報文組成,每個子報文中包含從站的地址和數(shù)據(jù)。EtherCAT網(wǎng)絡(luò)中主站與從站通過數(shù)據(jù)幀進(jìn)行數(shù)據(jù)交互,EtherCAT數(shù)據(jù)幀采取串行轉(zhuǎn)發(fā)方式,每個EtherCAT數(shù)據(jù)幀經(jīng)過所有的從站。數(shù)據(jù)幀到達(dá)某個從站時,從站根據(jù)EtherCAT數(shù)據(jù)幀中的地址和命令,將數(shù)據(jù)從EtherCAT數(shù)據(jù)幀中取出或?qū)?shù)據(jù)寫入EtherCAT數(shù)據(jù)幀中。由上文可知,EtherCAT網(wǎng)絡(luò)中主站訪問從站就必須知道從站的地址,主站與從站進(jìn)行數(shù)據(jù)交互就要設(shè)置從站的數(shù)據(jù)區(qū)映射。

EtherCAT從站地址的分配主要是配置設(shè)備地址和邏輯地址。設(shè)備地址是一個兩字節(jié)的地址,主站用它來識別各個從站。在本方案中設(shè)備地址是從0X1000開始,按照連接順序依次遞增進(jìn)行,給每個從站分配設(shè)備地址。邏輯地址并不是單獨(dú)定義的,而是使用從站數(shù)據(jù)在主站數(shù)據(jù)區(qū)中的地址。使用邏輯地址時,從站中現(xiàn)場總線內(nèi)存管理單元(FieldbusMemoryManagementUnit,F(xiàn)MMU)將從站本地物理存儲映射到主站的邏輯地址。在本方案配置過程中,主站根據(jù)從站EEPROM中過程數(shù)據(jù)對象(ProcessDataObject,PDO)分類信息計算出從站的數(shù)據(jù)長度和從站物理地址,然后按照順序在數(shù)據(jù)區(qū)中為每個從站分配對應(yīng)的長度的存儲區(qū),最后根據(jù)計算結(jié)果配置FMMU寄存器。

EtherCAT從站數(shù)據(jù)區(qū)的配置內(nèi)容主要為配置存儲同步管理器(SyncManager,SM)。SM通過硬件對數(shù)據(jù)區(qū)的所有訪問進(jìn)行控制,使得數(shù)據(jù)區(qū)不會被雙方同時訪問,保證了主站與從站應(yīng)用數(shù)據(jù)交換的一致性和安全性。在本方案配置過程中,主站讀取從站EEPROM中的SM類型信息,計算出SM控制數(shù)據(jù)區(qū)的地址、大小和控制模式,并配置相應(yīng)寄存器。

2、方案測試

為驗證方案的可行性,在Ubuntu平臺上實現(xiàn)了一個采用SII配置方案的精簡EtherCAT主站。該精簡EtherCAT主站能夠完成從站配置,以及主從站之間的數(shù)據(jù)交換。測試系統(tǒng)結(jié)構(gòu)如圖9所示。

在測試系統(tǒng)中包含有6個BECKHOOF公司生產(chǎn)的EtherCAT從站,分別是EK1100、EL1008、EL2008、EL3054、EL4024和EK1110。其中EL1008和EL3054分別是數(shù)字輸入和模擬輸入,EL2008和EL4024分別是數(shù)字輸出和模擬輸出。

在測試中,通過檢查所有從站的狀態(tài)和周期數(shù)據(jù)交換功能來判斷EtherCAT網(wǎng)絡(luò)配置是否成功。為了方便分析從站狀態(tài),使用Wireshark抓取EtherCAT數(shù)據(jù)幀分析從站狀態(tài),抓取到數(shù)據(jù)幀如圖10所示。圖10框中的數(shù)據(jù)是獲取到從站的狀態(tài),它顯示所有從站都處于OP狀態(tài),說明從站狀態(tài)轉(zhuǎn)換成功,本方案成功配置了EtherCAT網(wǎng)絡(luò)。

3、結(jié)論

目前常見的EtherCAT網(wǎng)絡(luò)配置方案使用XML文件作為配置信息,存在研發(fā)復(fù)雜和效率較低的問題。為了解決上述不足,本文研究了EtherCAT網(wǎng)絡(luò)的配置過程,提出了一種基于SII接口的EtherCAT網(wǎng)絡(luò)配置方案。該方案使用從站SII接口中提供的信息,計算生成EtherCAT網(wǎng)絡(luò)配置方案。通過與其他常見方案的比較發(fā)現(xiàn),基于SII接口的EtherCAT網(wǎng)絡(luò)配置方案實現(xiàn)簡便,能夠提高配置效率且實現(xiàn)較容易,因此具有較高的應(yīng)用價值。

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:新能源汽車電控系統(tǒng)核心部件I...

下一篇:關(guān)于電機(jī)信號異常檢測我們該...

中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

相關(guān)資訊

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

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

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

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號