EtherCAT是一個(gè)高實(shí)時(shí)性,高速和高效率的工業(yè)以太網(wǎng)技術(shù),數(shù)據(jù)根據(jù)自身獨(dú)有的數(shù)據(jù)幀格式進(jìn)行可靠傳輸,本文主要針對(duì)EtherCAT的數(shù)據(jù)幀格式和尋址方式進(jìn)行簡(jiǎn)單描述。
? EtherCAT?的數(shù)據(jù)幀格式
EtherCAT (Ethernet Control Automation Technology)?是由德國(guó)倍福公司在2003年提出的工業(yè)以太網(wǎng)技術(shù),具有很高的實(shí)時(shí)性。傳統(tǒng)的以太網(wǎng)通信中每一個(gè)節(jié)點(diǎn)都是按照接收,處理和轉(zhuǎn)發(fā)這個(gè)三個(gè)流程進(jìn)行,而EtherCAT則是同時(shí)傳輸和處理EtherCAT數(shù)據(jù)。
由于EtherCAT始終依托以太網(wǎng)進(jìn)行數(shù)據(jù)的傳輸,因此和傳統(tǒng)的以太網(wǎng)數(shù)據(jù)幀格式大致相同。EtherCAT在傳統(tǒng)以太網(wǎng)數(shù)據(jù)幀格式作出了一些修改,譬如在EtherCAT中,EtherType(幀類型)為0x88A4,EtherType是用于指明應(yīng)用于幀數(shù)據(jù)字段的協(xié)議,如0x0806為地址解析協(xié)議ARP。
傳統(tǒng)的以太網(wǎng)幀格式包含了以太網(wǎng)幀頭,以太網(wǎng)數(shù)據(jù)和FCS幀校驗(yàn),而EtherCAT的數(shù)據(jù)幀格式跟傳統(tǒng)以太網(wǎng)幀格式一樣,只是對(duì)幀數(shù)據(jù)段進(jìn)行了細(xì)化,將數(shù)據(jù)字段分為幀頭和EtherCAT數(shù)據(jù),其中EtherCAT幀頭包含了數(shù)據(jù)幀長(zhǎng)度,保留字。將EtherCAT數(shù)據(jù)認(rèn)為若干個(gè)子報(bào)文,每一個(gè)子報(bào)文又包含了子報(bào)文頭,子報(bào)文的數(shù)據(jù),WKC(工作計(jì)數(shù)器),具體以下圖所示。
圖1 EtherCAT數(shù)據(jù)幀格式
表1?EtherCAT數(shù)據(jù)幀格式說(shuō)明
目的地址 | 接收方的MAC地址 |
源地址 | 發(fā)送方的MAC地址 |
幀類型 | 0x88A4 |
FCS | 幀校驗(yàn)序列 |
EtherCAT頭
(數(shù)據(jù)長(zhǎng)度) |
EtherCAT數(shù)據(jù)區(qū)長(zhǎng)度 |
EtherCAT頭
(類型) |
1表示從站通信,其余保留 |
EtherCAT子報(bào)文結(jié)構(gòu)定義:
表2 EtherCAT子報(bào)文定義
命令 | 尋址方式 |
索引 | 幀編碼 |
地址 | 從站地址 |
長(zhǎng)度 | 報(bào)文數(shù)據(jù)區(qū)長(zhǎng)度 |
R | 保留位 |
M | 后續(xù)報(bào)文標(biāo)志 |
狀態(tài)位 | 中斷到來(lái)的標(biāo)志 |
數(shù)據(jù)位 | 子報(bào)文數(shù)據(jù)結(jié)構(gòu),用戶定義 |
WKC | 工作計(jì)數(shù)器 |
其中子報(bào)文頭的作用是確定此子報(bào)文由哪一個(gè)從站使用,什么操作命令,處理多長(zhǎng)的數(shù)據(jù)等,而工作計(jì)數(shù)器主要記錄了報(bào)文被對(duì)應(yīng)的從站操作的類型以及次數(shù),一般而言,主站在每次發(fā)送EtherCAT報(bào)文前都要預(yù)設(shè)一個(gè)WKC值,將數(shù)據(jù)幀發(fā)送給從站。
? EtherCAT的尋址方式
1. 網(wǎng)段尋址
- 直連模式:主站設(shè)備通過(guò)于EtherCAT網(wǎng)段直接端口連接來(lái)對(duì)MAC地址進(jìn)行廣播;開(kāi)放模式:主站設(shè)備通過(guò)交換機(jī)與EtherCAT網(wǎng)段進(jìn)行連接,網(wǎng)段可以使用EtherCAT數(shù)據(jù)幀中的目的地址來(lái)做MAC地址。
2. 設(shè)備尋址
EtherCAT數(shù)據(jù)幀中子報(bào)文頭有32位地址,其中高16位是從站的設(shè)備地址,低16位是設(shè)備內(nèi)部物理存儲(chǔ)的地址,16位從站設(shè)備地址可以尋65535個(gè)從站設(shè)備,而每一個(gè)設(shè)備地址最多可以有64KB的本地存儲(chǔ)空間。2.1 順序?qū)ぶ?/p>
從站的地址由物理連接的順序決定,從站地址自動(dòng)加1,一般在主站啟動(dòng)階段使用,主站為從站分配地址,無(wú)需從站設(shè)置。
圖2?順序?qū)ぶ肥疽鈭D
2.2 配置尋址
該地址與從站物理連接順序無(wú)關(guān),通常有兩種配置方式:
數(shù)據(jù)鏈路層啟動(dòng)階段由主站配置給從站;
在上電初始化的時(shí)候,從站從自身的EEPROM的配置文件中讀取出來(lái)。主站利用順序?qū)ぶ返姆绞絹?lái)讀取從站設(shè)置的地址,掉電之后會(huì)丟失固定的地址。
圖3?配置尋址示意圖
2.3 邏輯尋址
在邏輯尋址模式下,報(bào)文內(nèi)的32位地址空間用來(lái)尋址,整個(gè)網(wǎng)段有4GB地址空間可以被尋址。邏輯尋址方式由FMMU來(lái)實(shí)現(xiàn),ESC芯片中的FMMU單元將從站本地的物理地址映射到網(wǎng)段內(nèi)的邏輯地址。當(dāng)從站收到主站的報(bào)文時(shí),會(huì)檢查報(bào)文中的地址是否和FMMU中的地址是否相符,如果相符,就會(huì)根據(jù)類型進(jìn)行讀寫(xiě)操作。
圖4?邏輯尋址示意圖
廣州致遠(yuǎn)電子以EtherCAT工業(yè)以太網(wǎng)協(xié)議為向?qū)?,開(kāi)發(fā)了一系列EtherCAT主站控制器和通訊卡,其中包括EtherCAT FOE(File Over EtherCAT)功能。這些EtherCAT主站控制器和PCIe EtherCAT通訊卡可以快速、有效、便捷地構(gòu)建數(shù)控智能化設(shè)備。通過(guò)支持固件更新、配置文件下載、數(shù)據(jù)記錄與監(jiān)控、遠(yuǎn)程控制與診斷、分布式文件系統(tǒng)等功能,更能夠適應(yīng)工廠智能化、信息化產(chǎn)業(yè)的需求。
表3?EtherCAT主站控制器
圖5?EtherCAT主站控制器系統(tǒng)框圖
表4?PCIe?EtherCAT主站通訊卡
圖6?PCIe?EtherCAT通訊卡