EtherCAT - 以太網(wǎng)現(xiàn)場(chǎng)總線
2021-4-23新聞
1. 引言 2. EtherCAT 運(yùn)行原理3. EtherCAT 技術(shù)特征3.2 拓?fù)?/span> 3.3 分布時(shí)鐘 3.4 性能 3.5 診斷 3.6 高可靠性 3.7 安全性 3.8 EtherCAT 取代PCI 3.9 設(shè)備行規(guī) 3.9.1 EtherCAT實(shí)現(xiàn)CAN總線應(yīng)用層協(xié)議 (CoE) | 3.10 EtherCAT實(shí)現(xiàn)以太網(wǎng)(EoE) 3.12 ADS over EtherCAT (AoE) 4. 基礎(chǔ)設(shè)施成本5. EtherCAT 實(shí)施5.1.1 主站實(shí)施服務(wù) 5.1.2 主站樣本代碼 5.2 從站 5.2.1 EtherCAT Slave Controller 5.2.2 從站評(píng)估工具包 6. 小結(jié)7. 參考文獻(xiàn) |
1. 引言
現(xiàn)場(chǎng)總線已成為自動(dòng)化技術(shù)的集成組件,通過大量的實(shí)踐試驗(yàn)和測(cè)試,如今已獲得廣泛應(yīng)用。正是由于現(xiàn)場(chǎng)總線技術(shù)的普及,才使基于PC的控制系統(tǒng)得以廣泛應(yīng)用。然而,雖然控制器CPU的性能(尤其是IPC的性能)發(fā)展迅猛,但傳統(tǒng)的現(xiàn)場(chǎng)總線系統(tǒng)正日趨成為控制系統(tǒng)性能發(fā)展的“瓶頸”。急需技術(shù)革新的另一個(gè)因素則是由于傳統(tǒng)的解決方案并不十分理想。傳統(tǒng)的方案是,按層劃分的控制體系通常都由幾個(gè)輔助系統(tǒng)所組成(周期系統(tǒng)):即實(shí)際控制任務(wù)、現(xiàn)場(chǎng)總線系統(tǒng)、I/O系統(tǒng)中的本地?cái)U(kuò)展總線或外圍設(shè)備的簡(jiǎn)單本地固件周期。正常情況下,系統(tǒng)響應(yīng)時(shí)間是控制器周期時(shí)間的3-5倍。在現(xiàn)場(chǎng)總線系統(tǒng)之上的層面(即網(wǎng)絡(luò)控制器)中,以太網(wǎng)往往在某種程度上代表著技術(shù)發(fā)展的水平。該方面目前較新的技術(shù)是驅(qū)動(dòng)或I/O級(jí)的應(yīng)用,即過去普遍采用現(xiàn)場(chǎng)總線系統(tǒng)的這些領(lǐng)域。這些應(yīng)用類型要求系統(tǒng)具備良好的實(shí)時(shí)能力、適應(yīng)小數(shù)據(jù)量通訊,并且價(jià)格經(jīng)濟(jì)。EtherCAT可以滿足這些需求,并且還可以在I/O級(jí)實(shí)現(xiàn)因特網(wǎng)技術(shù) (參見圖1)。
圖1: 傳統(tǒng)現(xiàn)場(chǎng)總線系統(tǒng)響應(yīng)時(shí)間
在現(xiàn)場(chǎng)總線系統(tǒng) 之上的層面(即網(wǎng)絡(luò)控制器)中,以太網(wǎng)往往在某種程度上代表著技術(shù)發(fā)展的水平。該方面目前較新的技術(shù)是驅(qū)動(dòng)或I/O級(jí)的應(yīng)用,即過去普遍采用現(xiàn)場(chǎng)總線系統(tǒng)的這些領(lǐng)域。這些應(yīng)用類型要求系統(tǒng)具備良好的實(shí)時(shí)能力、適應(yīng)小數(shù)據(jù)量通訊,并且價(jià)格經(jīng)濟(jì)。EtherCAT可以滿足這些需求,并且還可以在I/O級(jí)實(shí)現(xiàn)因特網(wǎng)技術(shù)。
1.1 以太網(wǎng)和實(shí)時(shí)能力
目前,有許多方案力求實(shí)現(xiàn)以太網(wǎng)的實(shí)時(shí)能力。例如,CSMA/CD介質(zhì)存取過程方案,即禁止高層協(xié)議訪問過程,而由時(shí)間片或輪循方式所取代的一種解決方案;另一種解決方案則是通過專用交換機(jī)精確控制時(shí)間的方式來分配以太網(wǎng)包。這些方案雖然可以在某種程度上快速準(zhǔn)確地將數(shù)據(jù)包傳送給所連接的以太網(wǎng)節(jié)點(diǎn),但是,輸出或驅(qū)動(dòng)控制器重定向所需要的時(shí)間以及讀取輸入數(shù)據(jù)所需要的時(shí)間都要受制于具體的實(shí)現(xiàn)方式。
如果將單個(gè)以太網(wǎng) 幀用于每個(gè)設(shè)備,那么,理論上講,其可用數(shù)據(jù)率非常低。例如,最短的以太網(wǎng)幀為84字節(jié)(包括內(nèi)部的包間隔IPG)。如果一個(gè)驅(qū)動(dòng)器周期性地發(fā)送4字節(jié)的實(shí)際值和狀態(tài)信息,并相應(yīng)地同時(shí)接收4字節(jié)的命令值和控制字信息,那么,即便是總線負(fù)荷為100%(即:無限小的驅(qū)動(dòng)響應(yīng)時(shí)間)時(shí),其可用數(shù)據(jù)率也只能達(dá)到4/84= 4.8%。如果按照10 μs的平均響應(yīng)時(shí)間估計(jì),則速率將下降到1.9%。對(duì)所有發(fā)送以太網(wǎng) 幀到每個(gè)設(shè)備(或期望幀來自每個(gè)設(shè)備)的實(shí)時(shí)以太網(wǎng)方式而言,都存在這些限制,但以太網(wǎng)幀內(nèi)部所使用的協(xié)議則是例外。
2. EtherCAT 運(yùn)行原理
EtherCAT技術(shù)突破了其他以太網(wǎng)解決方案的系統(tǒng)限制:通過該項(xiàng)技術(shù),無需接收以太網(wǎng)數(shù)據(jù)包,將其解碼,之后再將過程數(shù)據(jù)復(fù)制到各個(gè)設(shè)備。EtherCAT從站設(shè)備在報(bào)文經(jīng)過其節(jié)點(diǎn)時(shí)讀取相應(yīng)的編址數(shù)據(jù),同樣,輸入數(shù)據(jù)也是在報(bào)文經(jīng)過時(shí)插入至報(bào)文中(參見圖2)。整個(gè)過程中,報(bào)文只有幾納秒的時(shí)間延遲。
圖 2: 過程數(shù)據(jù)插入至報(bào)文中
由于發(fā)送和接收的以太網(wǎng)幀壓縮了大量的設(shè)備數(shù)據(jù),所以有效數(shù)據(jù)率可達(dá)90%以上。100 Mb/s TX的全雙工特性完全得以利用,因此,有效數(shù)據(jù)率可 大于100 Mb/s(即大于2 x 100 Mb/s的90%)(參見圖3)。
圖 3: 帶寬利用率的比較
符合IEEE 802.3標(biāo)準(zhǔn)的以太網(wǎng)協(xié)議無需附加任何總線即可訪問各個(gè)設(shè)備。耦合設(shè)備中的物理層可以將雙絞線或光纖轉(zhuǎn)換為L(zhǎng)VDS(一種可供選擇的以太網(wǎng)物理層標(biāo)準(zhǔn)[4,5]),以滿足電子端子塊等模塊化設(shè)備的需求。這樣,就可以非常經(jīng)濟(jì)地對(duì)模塊化設(shè)備進(jìn)行擴(kuò)展了。之后,便可以如普通以太網(wǎng)一樣,隨時(shí)進(jìn)行從底板物理層LVDS到100 Mb/s TX物理層的轉(zhuǎn)換。
3. EtherCAT 技術(shù)特征
3.1 協(xié)議
EtherCAT是用于過程數(shù)據(jù)的優(yōu)化協(xié)議,憑借特殊的以太網(wǎng)類型,它可以在以太網(wǎng)幀內(nèi)直接傳送。EtherCAT幀可包括幾個(gè)EtherCAT報(bào)文,每個(gè)報(bào)文都服務(wù)于一塊邏輯過程映像區(qū)的特定內(nèi)存區(qū)域,該區(qū)域最大可達(dá)4GB字節(jié)。數(shù)據(jù)順序不依賴于網(wǎng)絡(luò)中以太網(wǎng)端子的物理順序,可任意編址。從站之間的廣播、多播和通訊均得以實(shí)現(xiàn)。當(dāng)需要實(shí)現(xiàn)最佳性能,且要求EtherCAT組件和控制器在同一子網(wǎng)操作時(shí),則直接以太網(wǎng)幀傳輸就將派上用場(chǎng)。
然而,EtherCAT不僅限于單個(gè)子網(wǎng)的應(yīng)用。EtherCAT UDP將EtherCAT協(xié)議封裝為UDP/IP數(shù)據(jù)報(bào)文(參見圖4),這就意味著,任何以太網(wǎng)協(xié)議堆棧的控制均可編址到EtherCAT系統(tǒng)之中,甚至通訊還可以通過路由器跨接到其它子網(wǎng)中。顯然,在這種變體結(jié)構(gòu)中,系統(tǒng)性能取決于控制的實(shí)時(shí)特性和以太網(wǎng)協(xié)議的實(shí)現(xiàn)方式。因?yàn)閁DP數(shù)據(jù)報(bào)文僅在第一個(gè)站才完成解包,所以EtherCAT網(wǎng)絡(luò)自身的響應(yīng)時(shí)間基本不受影響。
圖 4: EtherCAT:符合IEEE 802.3 [3]的標(biāo)準(zhǔn)幀
另外,根據(jù)主/從數(shù)據(jù)交換原理,EtherCAT也非常適合控制器之間(主/從)的通訊。自由編址的網(wǎng)絡(luò)變量可用于過程數(shù)據(jù)以及參數(shù)、診斷、編程和各種遠(yuǎn)程控制服務(wù),滿足廣泛的應(yīng)用需求。主站/從站與主站/主站之間的數(shù)據(jù)通訊接口也相同。
從站到從站的通訊則有兩種機(jī)制以供選擇。一種機(jī)制是,上游設(shè)備和下游設(shè)備可以在同一周期內(nèi)實(shí)現(xiàn)通訊,速度非???。由于這種方法與拓?fù)浣Y(jié)構(gòu)相關(guān),因此適用于由設(shè)備架構(gòu)設(shè)計(jì)所決定的從站到從站的通訊,如打印或包裝應(yīng)用等。而對(duì)于自由配置的從站到從站的通訊,則可以采用第二種機(jī)制—數(shù)據(jù)通過主站進(jìn)行中繼。這種機(jī)制需要兩個(gè)周期才能完成,但由于EtherCAT的性能非常卓越,因此該過程耗時(shí)仍然快于采用其他方法所耗費(fèi)的時(shí)間。
按照文獻(xiàn)[3]所述,EtherCAT僅使用標(biāo)準(zhǔn)的以太網(wǎng)幀,無任何壓縮。因此,EtherCAT 以太網(wǎng)幀可以通過任何以太網(wǎng)MAC發(fā)送,并可以使用標(biāo)準(zhǔn)工具(如:監(jiān)視器)。
3.2 拓?fù)?nbsp;
EtherCAT幾乎支持任何拓?fù)漕愋?,包括線型、樹型、星型等(參見圖5)。通過現(xiàn)場(chǎng)總線而得名的總線結(jié)構(gòu)或線型結(jié)構(gòu)也可用于以太網(wǎng),并且不受限于級(jí)聯(lián)交換機(jī)或集線器的數(shù)量。
圖 5: 靈活的拓?fù)浣Y(jié)構(gòu):線型、樹型或星型拓?fù)?/span>
最有效的系統(tǒng)連線方法是對(duì)線型、分支或樹叉結(jié)構(gòu)進(jìn)行拓?fù)浣M合。因?yàn)樗杞涌谠贗/O 模塊等很多設(shè)備中都已存在,所以無需附加交換機(jī)。當(dāng)然,仍然可以使用傳統(tǒng)的、基于以太網(wǎng)的星型拓?fù)浣Y(jié)構(gòu)。
還可以選擇不同的電纜以提升連線的靈活性:靈活、經(jīng)濟(jì)的標(biāo)準(zhǔn)超五類以太網(wǎng)電纜可采用100BASE-TX模式傳送信號(hào);塑封光纖(PFO)則可用于特殊應(yīng)用場(chǎng)合;還可通過交換機(jī)或介質(zhì)轉(zhuǎn)換器實(shí)現(xiàn)不同以太網(wǎng)連線(如:不同的光纖和銅電纜)的完整組合。
快速以太網(wǎng)的物理層(100BASE-TX )允許兩個(gè)設(shè)備之間的最大電纜長(zhǎng)度為100米。由于連接的設(shè)備數(shù)量可高達(dá)65535,因此,網(wǎng)絡(luò)的容量幾乎沒有限制。
3.3. 分布時(shí)鐘
精確同步對(duì)于同時(shí)動(dòng)作的分布式過程而言尤為重要。例如,幾個(gè)伺服軸同時(shí)執(zhí)行協(xié)調(diào)運(yùn)動(dòng)時(shí),便是如此。
最有效的同步方法是精確排列分布時(shí)鐘(請(qǐng)參閱IEEE 1588標(biāo)準(zhǔn)[6])。與完全同步通訊中通訊出現(xiàn)故障會(huì)立刻影響同步品質(zhì)的情況相比,分布排列的時(shí)鐘對(duì)于通訊系統(tǒng)中可能存在的相關(guān)故障延遲具有極好的容錯(cuò)性。
采用EtherCAT,數(shù)據(jù)交換就完全基于純硬件機(jī)制。由于通訊采用了邏輯環(huán)結(jié)構(gòu) (借助于全雙工快速以太網(wǎng)的物理層),主站時(shí)鐘可以簡(jiǎn)單、精確地確定各個(gè)從站時(shí)鐘傳播的延遲偏移,反之亦然。分布時(shí)鐘均基于該值進(jìn)行調(diào)整,這意味著可以在網(wǎng)絡(luò)范圍內(nèi)使用非常精確的、小于1 微秒的、確定性的同步誤差時(shí)間基(參見圖6)。而跨接工廠等外部同步則可以基于IEEE 1588 標(biāo)準(zhǔn)。
圖 6: 同步性與一致性:相距電纜長(zhǎng)度為有120米的兩個(gè)分布系統(tǒng),帶有300個(gè)節(jié)點(diǎn)的示波器比較
此外,高分辨率的分布時(shí)鐘不僅可以用于同步,還可以提供數(shù)據(jù)采集的本地時(shí)間精確信息。當(dāng)采樣時(shí)間非常短暫時(shí),即使是出現(xiàn)一個(gè)很小的位置測(cè)量瞬時(shí)同步偏差,也會(huì)導(dǎo)致速度計(jì)算出現(xiàn)較大的階躍變化,例如,運(yùn)動(dòng)控制器通過順序檢測(cè)的位置計(jì)算速度便是如此。而在EtherCAT中,引入時(shí)間戳數(shù)據(jù)類型作為一個(gè)邏輯擴(kuò)展,以太網(wǎng)所提供的巨大帶寬使得高分辨率的系統(tǒng)時(shí)間得以與測(cè)量值進(jìn)行鏈接。這樣,速度的精確計(jì)算就不再受到通訊系統(tǒng)的同步誤差值影響,其精度要高于基于自由同步誤差的通訊測(cè)量技術(shù)。
3.4 性能
EtherCAT使網(wǎng)絡(luò)性能達(dá)到了一個(gè)新境界。借助于從站硬件集成和網(wǎng)絡(luò)控制器主站的直接內(nèi)存存取,整個(gè)協(xié)議的處理過程都在硬件中得以實(shí)現(xiàn),因此,完全獨(dú)立于協(xié)議堆棧的實(shí)時(shí)運(yùn)行系統(tǒng)、CPU 性能或軟件實(shí)現(xiàn)方式。1000個(gè)I/O的更新時(shí)間只需30 μs,其中還包括I/O周期時(shí)間(參見表1)。單個(gè)以太網(wǎng)幀最多可進(jìn)行1486字節(jié)的過程數(shù)據(jù)交換,幾乎相當(dāng)于12000個(gè)數(shù)字輸入和輸出,而傳送這些數(shù)據(jù)耗時(shí)僅為300 μs。
表 1: EtherCAT性能概貌
100個(gè)伺服軸的通訊也非??焖伲嚎稍诿?00μs中更新帶有命令值和控制數(shù)據(jù)的所有軸的實(shí)際位置及狀態(tài),分布時(shí)鐘技術(shù)使軸的同步偏差小于1微秒。而即使是在保證這種性能的情況下,帶寬仍足以實(shí)現(xiàn)異步通訊,如TCP/IP、下載參數(shù)或上載診斷數(shù)據(jù)。
超高性能的EtherCAT技術(shù)可以實(shí)現(xiàn)傳統(tǒng)的現(xiàn)場(chǎng)總線系統(tǒng)無法迄及的控制理念。EtherCAT使通訊技術(shù)和現(xiàn)代工業(yè)PC所具有的超強(qiáng)計(jì)算能力相適應(yīng),總線系統(tǒng)不再是控制理念的瓶頸,分布式I/O可能比大多數(shù)本地I/O接口運(yùn)行速度更快。EtherCAT技術(shù)原理具有可塑性,并不束縛于100 M bps的通訊速率,甚至有可能擴(kuò)展為1000 M bps的以太網(wǎng)。
3.5 診斷
現(xiàn)場(chǎng)總線系統(tǒng)的實(shí)際應(yīng)用經(jīng)驗(yàn)表明,有效性和試運(yùn)行時(shí)間關(guān)鍵取決于診斷能力。只有快速而準(zhǔn)確地檢測(cè)出故障,并明確標(biāo)明其所在位置,才能快速排除故障。因此,在EtherCAT的研發(fā)過程中,特別注重強(qiáng)化診斷特征。
試運(yùn)行期間,驅(qū)動(dòng)或I/O 端子等節(jié)點(diǎn)的實(shí)際配置需要與指定的配置進(jìn)行匹配性檢查,拓?fù)浣Y(jié)構(gòu)也需要與配置相匹配。由于整合的拓?fù)渥R(shí)別過程已延伸至各個(gè)端子,因此,這種檢查不僅可以在系統(tǒng)啟動(dòng)期間進(jìn)行,也可以在網(wǎng)絡(luò)自動(dòng)讀取時(shí)進(jìn)行(配置上載)。
可以通過評(píng)估CRC校驗(yàn),有效檢測(cè)出數(shù)據(jù)傳送期間的位故障——32 位CRC多項(xiàng)式的最小漢明距為4。除斷線檢測(cè)和定位之外,EtherCAT系統(tǒng)的協(xié)議、物理層和拓?fù)浣Y(jié)構(gòu)還可以對(duì)各個(gè)傳輸段分別進(jìn)行品質(zhì)監(jiān)視,與錯(cuò)誤計(jì)數(shù)器關(guān)聯(lián)的自動(dòng)評(píng)估還可以對(duì)關(guān)鍵的網(wǎng)絡(luò)段進(jìn)行精確定位。此外,對(duì)于電磁干擾、連接器破損或電纜損壞等一些漸變或突變的錯(cuò)誤源而言,即便它們尚未過度應(yīng)變到網(wǎng)絡(luò)自恢復(fù)能力的范圍,也可對(duì)其進(jìn)行檢測(cè)與定位。
3.6 高可靠性
選擇冗余電纜可以滿足快速增長(zhǎng)的系統(tǒng)可靠性需求,以保證設(shè)備更換時(shí)不會(huì)導(dǎo)致網(wǎng)絡(luò)癱瘓。您可以很經(jīng)濟(jì)地增加冗余特性,僅需在主站設(shè)備端增加使用一個(gè)標(biāo)準(zhǔn)的以太網(wǎng)端口(無需專用網(wǎng)卡或接口),并將單一的電纜從總線型拓?fù)浣Y(jié)構(gòu)轉(zhuǎn)變?yōu)榄h(huán)型拓?fù)浣Y(jié)構(gòu)即可(見圖7)。當(dāng)設(shè)備或電纜發(fā)生故障時(shí),也僅需一個(gè)周期即可完成切換。因此,即使是針對(duì)運(yùn)動(dòng)控制要求的應(yīng)用,電纜出現(xiàn)故障時(shí)也不會(huì)有任何問題。EtherCAT也支持熱備份的主站冗余。由于在環(huán)路中斷時(shí)EtherCAT從站控制器芯片將立刻自動(dòng)返回?cái)?shù)據(jù)幀,一個(gè)設(shè)備的失敗不會(huì)導(dǎo)致整個(gè)網(wǎng)絡(luò)的癱瘓。例如,拖鏈設(shè)備可以配置為分支拓?fù)湟苑谰€纜斷開。
圖 7: 使用標(biāo)準(zhǔn)從站設(shè)備的低成本線纜冗余
3.7 安全性
為了實(shí)現(xiàn)EtherCAT安全數(shù)據(jù)通信,EtherCAT安全通信協(xié)議已經(jīng)在ETG組織內(nèi)部公開。EtherCAT被用作傳輸安全和非安全數(shù)據(jù)的單一通道。傳輸介質(zhì)被認(rèn)為是“黑色通道”而不被包括在安全協(xié)議中(見圖8)。EtherCAT過程數(shù)據(jù)中的安全數(shù)據(jù)報(bào)文包括安全過程數(shù)據(jù)和所要求的數(shù)據(jù)備份。這個(gè)“容器”在設(shè)備的應(yīng)用層被安全地解析。通信仍然是單一通道的。這符合IEC61784-3附件中的模型A。
圖 8: 使用黑色通道的EtherCAT安全通信軟件構(gòu)件
EtherCAT安全協(xié)議已經(jīng)由德國(guó)技術(shù)監(jiān)督局(TüV SüD Rail)評(píng)估為滿足IEC61508定義的SIL3等級(jí)的安全設(shè)備之間傳輸過程數(shù)據(jù)的通信協(xié)議。設(shè)備上實(shí)施EtherCAT安全協(xié)議必須滿足安全目標(biāo)的需求。相應(yīng)的產(chǎn)品相關(guān)要求也必須考慮進(jìn)來。
圖 9: EtherCAT安全系統(tǒng)
圖9中的應(yīng)用示例受益于這種技術(shù)。安全元件在自動(dòng)化系統(tǒng)中所需要的任意地方都可以使用。系統(tǒng)中可以使用不同規(guī)模的本地輸入和輸出元件??梢愿鶕?jù)需求使用安全或非安全總線端子擴(kuò)展額外的輸入和輸出。安全邏輯也嵌入到網(wǎng)絡(luò)當(dāng)中。這樣不用安全擴(kuò)展的標(biāo)準(zhǔn)PLC可以繼續(xù)處理控制任務(wù)。安全輸入和輸出功能需要的本地安全邏輯由智能化的安全總線端子實(shí)現(xiàn)。這節(jié)約了昂貴的安全PLC所帶來的成本,并可以根據(jù)當(dāng)前任務(wù)隨意裁剪邏輯功能。只有安全EtherCAT主站和所分配的安全從站通過非安全的標(biāo)準(zhǔn)PLC路由。
本協(xié)議在安全數(shù)據(jù)長(zhǎng)度,通信介質(zhì)或波特率方面么有限制。
EtherCAT被用作“黑色通道”,即,通信系統(tǒng)在安全處理中沒有任何作用。
協(xié)議被鑒定符合IEC61508定義的SIL3等級(jí)
提供EtherCAT安全功能的產(chǎn)品已經(jīng)于2005年就上市了。
3.8 EtherCAT 取代PCI
隨著PC組件急劇向小型化方向發(fā)展,工業(yè)PC的體積日趨取決于插槽的數(shù)目。而快速以太網(wǎng)的帶寬和EtherCAT通訊硬件的過程數(shù)據(jù)長(zhǎng)度則為該領(lǐng)域的發(fā)展提供了新的可能性——IPC 中的傳統(tǒng)接口現(xiàn)在可以轉(zhuǎn)變?yōu)榧傻腅therCAT接口端子(參見圖10)。除了可以對(duì)分布式I/O進(jìn)行編址,還可以對(duì)驅(qū)動(dòng)和控制單元以及現(xiàn)場(chǎng)總線主站、快速串行接口、網(wǎng)關(guān)和其它通訊接口等復(fù)合系統(tǒng)進(jìn)行編址。
圖 10: 分布式現(xiàn)場(chǎng)總線接口
即使是其他無協(xié)議限制的以太網(wǎng)設(shè)備變體,也可以通過分布式交換機(jī)端口設(shè)備進(jìn)行連接。由于一個(gè)以太網(wǎng)接口足以滿足整個(gè)外圍設(shè)備的通訊 (參見圖11),因此,這不僅極大地精簡(jiǎn)了IPC主機(jī)的體積和外觀,而且也降低了IPC主機(jī)的成本。
圖 11: EtherCAT使控制器的體積顯著減小
3.9 設(shè)備行規(guī)
設(shè)備行規(guī)描述了設(shè)備的應(yīng)用參數(shù)和功能特性,如設(shè)備類別相關(guān)的機(jī)器狀態(tài)等?,F(xiàn)場(chǎng)總線技術(shù)已經(jīng)為I/O設(shè)備、驅(qū)動(dòng)、閥等許多設(shè)備類別提供了可利用的設(shè)備行規(guī)。用戶非常熟悉這些行規(guī)以及相關(guān)的參數(shù)和工具,因此,EtherCAT無需為這些設(shè)備類別重新開發(fā)設(shè)備行規(guī),而是為現(xiàn)有的設(shè)備行規(guī)提供了簡(jiǎn)單的接口。該特性使得用戶和設(shè)備制造商可以輕松完成從現(xiàn)有的現(xiàn)場(chǎng)總線到EtherCAT技術(shù)的轉(zhuǎn)換過程。
3.9.1 EtherCAT實(shí)現(xiàn)CANopen (CoE)
CANopen?設(shè)備和應(yīng)用行規(guī)廣泛用于多種設(shè)備類別和應(yīng)用,如I/O組件、驅(qū)動(dòng)、編碼器、比例閥、液壓控制器,以及用于塑料或紡織行業(yè)的應(yīng)用行規(guī)等。EtherCAT可以提供與CANopen機(jī)制[7]相同的通訊機(jī)制,包括對(duì)象字典、PDO(過程數(shù)據(jù)對(duì)象)、SDO(服務(wù)數(shù)據(jù)對(duì)象),甚至于網(wǎng)絡(luò)管理。因此,在已經(jīng)安裝了CANopen的設(shè)備中,僅需稍加變動(dòng)即可輕松實(shí)現(xiàn)EtherCAT,絕大部分的CANopen?固件都得以重復(fù)利用。并且,可以選擇性地?cái)U(kuò)展對(duì)象,以便利用EtherCAT所提供的巨大帶寬。
3.9.2 EtherCAT實(shí)施伺服驅(qū)動(dòng) 設(shè)備行規(guī)IEC 61491 (SoE)
SERCOS interface? 是全球公認(rèn)的、用于高性能實(shí)時(shí)運(yùn)行系統(tǒng)的通訊接口,尤其適用于運(yùn)動(dòng)控制的應(yīng)用場(chǎng)合。用于伺服驅(qū)動(dòng)和通訊技術(shù)的SERCOS?框架屬于IEC 61491標(biāo)準(zhǔn)[8] 的范疇。該伺服驅(qū)動(dòng)框架可以輕松地映射到 EtherCAT中,嵌入于驅(qū)動(dòng)中的服務(wù)通道、全部參數(shù)存取以及功能都基于EtherCAT郵箱(參見圖12)。在此,關(guān)注焦點(diǎn)還是EtherCAT與現(xiàn)有協(xié)議的兼容性(IDN的存取值、屬性、名稱、單位等),以及與數(shù)據(jù)長(zhǎng)度限制相關(guān)的擴(kuò)展性。過程數(shù)據(jù),即形式為AT和MDT的SERCOS?數(shù)據(jù),都使用EtherCAT從站控制器機(jī)制進(jìn)行傳送,其映射與SERCOS映射相似。并且,EtherCAT從站的設(shè)備狀態(tài)也可以非常容易地映射為SERCOS?協(xié)議狀態(tài)。EtherCAT從站狀態(tài)機(jī)可以很容易地映射到SERCOS?協(xié)議的通信階段。EtherCAT為這種在CNC行業(yè)中廣泛使用的設(shè)備行規(guī)提供了先進(jìn)的實(shí)時(shí)以太網(wǎng)技術(shù)。這種設(shè)備行規(guī)的優(yōu)點(diǎn)與EtherCAT分布時(shí)鐘提供的優(yōu)點(diǎn)相結(jié)合,保證了網(wǎng)絡(luò)范圍內(nèi)精確時(shí)鐘同步??梢匀我鈧鬏斘恢妹?,速度命令或扭矩命令。取決于實(shí)現(xiàn)方式,甚至可能繼續(xù)使用相同的設(shè)備配置工具。
圖 12: 同時(shí)并存的多個(gè)設(shè)備行規(guī)和協(xié)議
3.10 EtherCAT實(shí)現(xiàn)以太網(wǎng)(EoE)
EtherCAT技術(shù)不僅完全兼容以太網(wǎng),而且在“設(shè)計(jì)”之初就具備良好的開放性特征——該協(xié)議可以在相同的物理層網(wǎng)絡(luò)中包容其它基于以太網(wǎng)的服務(wù)和協(xié)議,通常可將其性能損失降到最小。對(duì)以太網(wǎng)的設(shè)備類型沒有限制,設(shè)備可通過交換機(jī)端口在EtherCAT段內(nèi)進(jìn)行連接。以太網(wǎng)幀通過EtherCAT協(xié)議開通隧道,這也正是VPN、 PPPoE (DSL) 等因特網(wǎng)應(yīng)用所普遍采取的方法。EtherCAT網(wǎng)絡(luò)對(duì)以太網(wǎng)設(shè)備而言是完全透明的,其實(shí)時(shí)特性也不會(huì)發(fā)生畸變(參見圖13)。
圖 13: 對(duì)所有以太網(wǎng)協(xié)議完全透明
EtherCAT設(shè)備可以包容其它的以太網(wǎng)協(xié)議,因此具備標(biāo)準(zhǔn)以太網(wǎng)設(shè)備的一切特性。主站的作用與第2層交換機(jī)所起的作用一樣,可按照編址信息將以太網(wǎng)幀重新定向到相應(yīng)的設(shè)備。因此,集成萬維網(wǎng)服務(wù)器、電子郵件和FTP 傳送等所有的因特網(wǎng)技術(shù)都可以在EtherCAT的環(huán)境中得以應(yīng)用。
3.11 EtherCAT實(shí)現(xiàn)文件讀取(FoE)
這種簡(jiǎn)單的協(xié)議與TFTP類似,允許存取設(shè)備中的任何數(shù)據(jù)結(jié)構(gòu)。因此,無論設(shè)備是否支持TCP/IP,都有可能將標(biāo)準(zhǔn)化固件上載到設(shè)備上。
3.12 ADS over EtherCAT (AoE)
ADS over EtherCAT (AoE)是由EtherCAT規(guī)范定義的客戶端-服務(wù)器郵箱協(xié)議。盡管CoE協(xié)議提供了詳盡的描述,但AoE則更適合路由與并行服務(wù)的應(yīng)用:通過網(wǎng)關(guān)設(shè)備訪問子網(wǎng)絡(luò),如EtherCAT至CANopen? 或 EtherCAT至IO-Link? 網(wǎng)關(guān)設(shè)備。AoE使EtherCAT主站應(yīng)用(如PLC程序)可以訪問所屬CANopen? 或 IO-Link?從站的各個(gè)參數(shù)。AoE路由機(jī)制開銷遠(yuǎn)低于因特網(wǎng)協(xié)議(IP)所定義的開銷,并且發(fā)送方和接收方尋址參數(shù)始終包含在AoE報(bào)文中。因此,EtherCAT主站和從站端的實(shí)施更為精簡(jiǎn)。AoE也通過EtherCAT自動(dòng)化協(xié)議(EAP)進(jìn)行非周期通信的標(biāo)準(zhǔn)化,從而為上位機(jī)MES系統(tǒng)或主計(jì)算機(jī)、EtherCAT主站及其從屬的現(xiàn)有設(shè)備之間提供無縫通信。同時(shí),AoE也提供了從遠(yuǎn)程診斷工具獲取EtherCAT網(wǎng)絡(luò)診斷信息的標(biāo)準(zhǔn)化方法。
4. 基礎(chǔ)設(shè)施成本
由于EtherCAT無需集線器和交換機(jī),因此,在環(huán)境條件允許的情況下,可以節(jié)省電源、安裝費(fèi)用等設(shè)備方面的投資,只需使用標(biāo)準(zhǔn)的以太網(wǎng)電纜和價(jià)格低廉的標(biāo)準(zhǔn)連接器即可。如果環(huán)境條件有特殊要求,則可以依照IEC標(biāo)準(zhǔn),使用增強(qiáng)密封保護(hù)等級(jí)的連接器。
5. EtherCAT 實(shí)施
EtherCAT技術(shù)是面向經(jīng)濟(jì)的設(shè)備而開發(fā)的,如I/O 端子、傳感器和嵌入式控制器等。EtherCAT使用遵循IEEE802.3標(biāo)準(zhǔn)的以太網(wǎng)幀。這些幀由主站設(shè)備發(fā)送,從站設(shè)備只是在以太網(wǎng)幀經(jīng)過其所在位置時(shí)才提取和/或插入數(shù)據(jù)。因此,EtherCAT 使用標(biāo)準(zhǔn)的以太網(wǎng)MAC,這正是其在主站設(shè)備方面智能化的表現(xiàn)。同樣,EtherCAT在從站控制器中使用專用芯片,這也是其在從站設(shè)備方面智能化的表現(xiàn)——無論本地處理能力是否強(qiáng)大或軟件品質(zhì)好壞與否,專用芯片均可在硬件中處理過程數(shù)據(jù)協(xié)議,并提供最佳實(shí)時(shí)性能。
5.1 主站
EtherCAT可以在單個(gè)以太網(wǎng)幀中最多實(shí)現(xiàn)1486字節(jié)的分布式過程數(shù)據(jù)通訊。其它解決方案一般是,主站設(shè)備需要在每個(gè)網(wǎng)絡(luò)周期中為各個(gè)節(jié)點(diǎn)處理、發(fā)送和接收幀。而EtherCAT系統(tǒng)與此不同之處在于,在通常情況下,每周期僅需要一個(gè)或兩個(gè)幀即可完成所有節(jié)點(diǎn)的全部通訊,因此,EtherCAT主站不需要專用的通訊處理器。主站功能幾乎不會(huì)給主機(jī)CPU帶來任何負(fù)擔(dān),輕松處理這些任務(wù)的同時(shí),還可以處理應(yīng)用程序,因此EtherCAT 無需使用昂貴的專用有源插接卡,只需使用無源的NIC卡或主板集成的以太網(wǎng)MAC設(shè)備即可。EtherCAT主站很容易實(shí)現(xiàn),尤其適用于中小規(guī)模的控制系統(tǒng)和有明確規(guī)定的應(yīng)用場(chǎng)合。
例如,如果某個(gè)單個(gè)過程映像的PLC沒有超過1486 字節(jié),那么在其周期時(shí)間內(nèi)循環(huán)發(fā)送這個(gè)以太網(wǎng)幀就足夠了。因?yàn)閳?bào)文頭運(yùn)行時(shí)不會(huì)發(fā)生變化,所以只需將常數(shù)報(bào)文頭插入到過程映像中,并將結(jié)果傳送到以太網(wǎng)控制器即可。
EtherCAT映射不是在主站產(chǎn)生,而是在從站產(chǎn)生(外圍設(shè)備將數(shù)據(jù)插入所經(jīng)以太網(wǎng)幀的相應(yīng)位置),因此,此時(shí)過程映像已經(jīng)完成排序。該特性進(jìn)一步減輕了主機(jī)CPU的負(fù)擔(dān)??梢钥吹?,EtherCAT主站完全在主機(jī)CPU中采用軟件方式實(shí)現(xiàn),相比之下,傳統(tǒng)的慢速現(xiàn)場(chǎng)總線系統(tǒng)通過有源插接卡方可實(shí)現(xiàn)主站的方式則要占用更多的資源,甚至服務(wù)于DPRAM的有源卡本身也將占用可觀的主機(jī)資源。
系統(tǒng)配置工具(通過生產(chǎn)商獲?。┛商峁┌ㄏ鄳?yīng)的標(biāo)準(zhǔn) XML 格式啟動(dòng)順序在內(nèi)的網(wǎng)絡(luò)和設(shè)備參數(shù)。
圖 14: 主站實(shí)施的單個(gè)過程映像
5.1.1 主站實(shí)施服務(wù)
已經(jīng)在各種實(shí)時(shí)操作系統(tǒng)上實(shí)現(xiàn)了EtherCAT主站,包括但并不限于:eCos, INtime, MICROWARE OS-9, MQX, On Time RTOS-32, Proconos OS, Real-Time Java, RT Kernel, RT-Linux, RTX, RTXC, RTAI Linux, PikeOS, Linux with RT-Preempt, QNX, VxWin + CeWin, VxWorks, Windows CE, Windows XP/XPE with CoDeSys SP RTE, Windows NT/NTE/2000/XP/XPE/Vista with TwinCAT RTE, Windows 7 and XENOMAI Linux.
可以獲得開源主站協(xié)議棧,作為示例代碼或商業(yè)軟件。也有各種公司提供各種硬件平臺(tái)上的實(shí)施服務(wù)。可以在EtherCAT網(wǎng)站上的產(chǎn)品區(qū)找到快速增長(zhǎng)的供應(yīng)商信息[1]。
5.1.2 主站樣本代碼
另一種EtherCAT主站的實(shí)現(xiàn)方式是使用樣本代碼,花費(fèi)不高。軟件以源代碼形式提供,包括所有的EtherCAT主站功能,甚至還包括EoE(EtherCAT實(shí)現(xiàn)以太網(wǎng))功能(見圖15)。開發(fā)人員只要把這些應(yīng)用于Windows環(huán)境的代碼與目標(biāo)硬件及所使用的RTOS加以匹配就可以了。該軟件代碼已經(jīng)成功應(yīng)用于多個(gè)系統(tǒng)。
圖 15: 主站樣本代碼結(jié)構(gòu)
5.2 從站
EtherCAT從站設(shè)備使用一個(gè)價(jià)格低廉的從站控制器芯片ESC。從站不需要微處理器就可以實(shí)現(xiàn)EtherCAT通信??梢酝ㄟ^I/O接口實(shí)現(xiàn)的簡(jiǎn)單設(shè)備可以只由ESC和其下的PHY,變壓器和RJ45接頭。給從站的過程數(shù)據(jù)接口是32位的I/O接口。這種從站沒有可配置的參數(shù),所以不需要軟件或郵箱協(xié)議。EtherCAT狀態(tài)機(jī)由ESC處理。ESC的啟動(dòng)信息從EEPROM中讀取,它也支持從站的身份識(shí)別。更復(fù)雜的可配置從站有使用一個(gè)CPU。這個(gè)CPU和ESC之間使用8位或16位并行接口或串行SPI接口。要求的CPU性能取決于從站的應(yīng)用,EtherCAT協(xié)議軟件在其上運(yùn)行。EtherCAT協(xié)議棧管理EtherCAT狀態(tài)機(jī)和應(yīng)用層協(xié)議,可以實(shí)現(xiàn)CoE協(xié)議和支持固件下載的FoE協(xié)議。EoE協(xié)議也可以實(shí)施。
5.2.1 EtherCAT Slave Controller
目前,有多家制造商均提供EtherCAT從站控制器。通過價(jià)格低廉的FPGA,也可實(shí)現(xiàn)從站控制器的功能,可以購(gòu)買授權(quán)以獲取相應(yīng)的二進(jìn)制代碼。
從站控制器通常都有一個(gè)內(nèi)部的DPRAM,并提供存取這些應(yīng)用內(nèi)存的接口范圍:
串行SPI(串行外圍接口)主要用于數(shù)量較小的過程數(shù)據(jù)設(shè)備,如模擬量I/O模塊、傳感器、編碼器和簡(jiǎn)單驅(qū)動(dòng)等。該接口通常使用8位微控制器,如微型芯片PIC、DSP、Intel 80C51等(見圖16)。
8/16位微控制器并行接口與帶有DPRAM接口的傳統(tǒng)現(xiàn)場(chǎng)總線控制器接口相對(duì)應(yīng),尤其適用于數(shù)據(jù)量較大的復(fù)雜設(shè)備。通常情況下,微控制器使用的接口包括Infineon 80C16x、Intel 80x86、Hitachi SH1、ST10、ARM和TI TMS320等系列(見圖16)。
32位并行I/O接口不僅可以連接多達(dá)32位數(shù)字輸入/輸出,而且也適用于簡(jiǎn)單的傳感器或執(zhí)行器的32位數(shù)據(jù)操作。這類設(shè)備無需主機(jī)CPU(見圖17)。
圖 16: 從站硬件:帶主機(jī)CPU的FPGA
17: 從站硬件:帶直接I/O的FPGA
關(guān)于EtherCAT從站控制器的最新信息,請(qǐng)登錄EtherCAT網(wǎng)站[1]。
5.2.2 從站評(píng)估工具包
倍福公司提供的從站評(píng)估工具包使接口操作變得簡(jiǎn)便易行。由于采用了EtherCAT,無需功能強(qiáng)大的通訊處理器,因此,可將從站評(píng)估工具包中的8位微處理器作為主機(jī)CPU使用。該工具包還包括源代碼形式的從站主機(jī)軟件(相當(dāng)于協(xié)議堆棧)和參考主站軟件包(TwinCAT)。
6. 小結(jié)
EtherCAT 擁有杰出的通訊性能,接線非常簡(jiǎn)單,并對(duì)其它協(xié)議開放。傳統(tǒng)的現(xiàn)場(chǎng)總線系統(tǒng)已達(dá)到了極限,而EtherCAT則突破建立了新的技術(shù)標(biāo)準(zhǔn)——30 μs內(nèi)可以更新1000個(gè)I/O數(shù)據(jù),可選擇雙絞線或光纖,并利用以太網(wǎng)和因特網(wǎng)技術(shù)實(shí)現(xiàn)垂直優(yōu)化集成。使用 EtherCAT,可以用簡(jiǎn)單的線型拓?fù)浣Y(jié)構(gòu)替代昂貴的星型以太網(wǎng)拓?fù)浣Y(jié)構(gòu),無需昂貴的基礎(chǔ)組件。EtherCAT還可以使用傳統(tǒng)的交換機(jī)連接方式,以集成其它的以太網(wǎng)設(shè)備。其它的實(shí)時(shí)以太網(wǎng)方案需要與控制器進(jìn)行特殊連接,而EtherCAT只需要價(jià)格低廉的標(biāo)準(zhǔn)以太網(wǎng)卡(NIC) 便可實(shí)現(xiàn)。
EtherCAT擁有多種機(jī)制,支持主站到從站、從站到從站以及主站到主站之間的通訊(參見圖18)。它實(shí)現(xiàn)了安全功能,采用技術(shù)可行且經(jīng)濟(jì)實(shí)用的方法,使以太網(wǎng)技術(shù)可以向下延伸至I/O級(jí)。EtherCAT功能優(yōu)越,可以完全兼容以太網(wǎng),可將因特網(wǎng)技術(shù)嵌入到簡(jiǎn)單設(shè)備中,并最大化地利用了以太網(wǎng)所提供的巨大帶寬,是一種實(shí)時(shí)性能優(yōu)越且成本低廉的網(wǎng)絡(luò)技術(shù)。
圖 19: 網(wǎng)絡(luò)結(jié)構(gòu)形式多樣
7. 參考文獻(xiàn)
[1]EtherCAT Technology Group (ETG)
http://www.ethercat.org
[2] IEC 61158-3/4/5/6-12 (Ed.1.0), Industrial communication networks – Fieldbus specifications – Part 3-12: Data-link layer service definition – Part 4-12: Data-link layer protocol specification – Part 5-12: Application layer service definition – Part 6-12: Application layer protocol specification – Type 12 elements (EtherCAT)
[3] IEEE 802.3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications
[4] IEEE 802.3ae-2002: CSMA/CD Access Method and Physical Layer Specifications: Media Access Control (MAC) Parameters, Physical Layers, and Management Parameters for 10 Gb/s Operation
[5] ANSI/TIA/EIA-644-A, Electrical Characteristics of Low Voltage Differential Signaling (LVDS) Interface Circuits
[6] IEEE 1588-2002: IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems
[7] EN 50325-4: Industrial communications subsystem based on ISO 11898 (CAN) for controller-device interfaces. Part 4: CANopen
[8] IEC 61800-7-301/304 (Ed.1.0), Adjustable speed electrical power drive systems – Part 7-301: Generic interface and use of profiles for power drive systems – Mapping of profile type 1 to network technologies– Part 7-304: Generic interface and use of profiles for power drive systems – Mapping of profile type 4 to network technologies
[9]SEMI E54.20: Standard for Sensor/Actuator Network Communications for EtherCAT.