簡介
EtherCAT(以太網(wǎng)控制自動化技術)是一種用于確定性以太網(wǎng)的高性能工業(yè)通信協(xié)議,它擴展了IEEE 802.3以太網(wǎng)標準,使得數(shù)據(jù)傳輸中具有可預測性定時及高精度同步等特點。這個開放性標準作為IEC 61158的組成部分,常用于機械設計及運動控制等應用中。
EtherCAT在標準的以太網(wǎng)電纜上應用主/從式的構架。美國國家儀器公司的EtherCAT主設備由帶有兩個以太網(wǎng)端口的實時控制器構成,如NI CompactRIO及PXI。每個NI從設備同樣包含兩個端口,允許以菊花鏈模式與主控制器連接。
圖1. 采用NI硬件的EtherCAT主/從構架
EtherCAT協(xié)議基礎
EtherCAT協(xié)議直接以標準以太網(wǎng)的幀格式傳輸數(shù)據(jù),并不修改其基本結構。當主控制器和從設備處于同一子網(wǎng)時,EtherCAT協(xié)議僅替換以太網(wǎng)幀中的Internet 協(xié)議(IP)。
圖2. EtherCAT中的以太網(wǎng)幀結構
數(shù)據(jù)以過程數(shù)據(jù)對象(PDOs)形式在主從設備之間傳輸。每個PDO都包含單個或多個從設備的地址,這種數(shù)據(jù)加地址的結構(附帶用于校驗的傳輸計數(shù)位)組成了EtherCAT的報文。每個Ethernet幀可能包含數(shù)個報文,而一個控制周期中可能需要多幀來傳送所需的所有報文。
數(shù)據(jù)傳輸
對于某些實時協(xié)議,主控制器發(fā)送數(shù)據(jù)包后必須等待每個從節(jié)點完成對數(shù)據(jù)的解析和復制。然而這種確定性方法很難維持,因為主控制器必須添加并管理一定量的處理時間及每個從設備的抖動。
EtherCAT技術能夠在工作中處理每個以太網(wǎng)幀,從而克服了上述系統(tǒng)限制。舉例來說,設想以太網(wǎng)的幀就像行駛中的火車,EtherCAT報文是每節(jié)火車車廂,PDO數(shù)據(jù)的比特就是車廂內的乘客,這些數(shù)據(jù)可以被提取并插入到合適的從設備中。整輛火車不停止地穿越所有從設備,在末端從設備處又掉頭,重新反向穿越所有從設備。
圖3. EtherCAT數(shù)據(jù)傳輸
同樣道理,當設備1收到主設備發(fā)出的以太網(wǎng)數(shù)據(jù)包后,將自動開始將數(shù)據(jù)包發(fā)送到設備2,其間對數(shù)據(jù)包的讀寫延遲僅為數(shù)納秒。由于數(shù)據(jù)包不斷地在從設備之間傳遞,數(shù)據(jù)就能同時存在于數(shù)個設備上。
上述方法有什么實際意義呢?我們假設有50臺從設備,需要向每個從設備發(fā)送不同數(shù)據(jù)。對于非EtherCAT的網(wǎng)絡,需要發(fā)送50個不同的數(shù)據(jù)包;而對于EtherCAT,只需發(fā)送一個包含所有從設備數(shù)據(jù)的長數(shù)據(jù)包就行了,該數(shù)據(jù)包將遍歷所有從設備。如果所有從設備需要接受相同的數(shù)據(jù),那么只需要發(fā)送一個短數(shù)據(jù)包,所有從設備接收數(shù)據(jù)包的同一部分便可獲得該數(shù)據(jù),從而優(yōu)化了數(shù)據(jù)傳輸速度及帶寬。
高速性能
EtherCAT專為例如控制之類的單點應用()實現(xiàn)高性能、高通道數(shù)而設計。由于使從設備的讀寫可在同一幀中完成,因此EtherCAT報文結構針對于分散的I/O是一種優(yōu)化結構。此外,由于整個協(xié)議處理由硬件完成,從而獨立于協(xié)議棧運行時間、CPU性能或軟件執(zhí)行。例如,通過直接存儲器存取(DMA),數(shù)據(jù)在網(wǎng)卡與主處理器或從設備I/O間傳輸時,能夠實現(xiàn)最低的CPU使用率。同時,每個NI從設備均使用若干專用于PDO傳輸及地址解析的現(xiàn)場總線存儲管理單元(FMMUs)。從設備(而非主設備)獨立進行相應報文的映射,從而降低了主設備的復雜性,釋放更多資源。
定時及同步
實現(xiàn)確定性網(wǎng)絡的另一個因素是主控制器通過分布式時鐘同步從設備的能力。從設備中必須有一臺輸出主時鐘用于與其它從設備時鐘進行同步。在NI的設計實現(xiàn)中,第一臺從設備包含了主時鐘,主控制器發(fā)送的特殊同步報文在每個掃描周期中讀取主時鐘。該報文更新并調整所有其它從設備時鐘,以消除時鐘偏移。
精確同步非常重要,尤其是在大范圍分布式處理應用中要求同步執(zhí)行時,如運動軸間的協(xié)調運動。NI采用時間戳來衡量發(fā)送與返回幀之間的時差。利用這種方式,可以計算節(jié)點間的傳輸延時,通過準確調節(jié)分布式時鐘便可實現(xiàn)精確同步(小于1 µs)。
使用NI的EtherCAT硬件
美國國家儀器公司提供多種在EtherCAT上兼容確定性分布式I/O的平臺。對于主控制器,用戶可選用帶兩端口的CompactRIO控制器或插有NI PXI-8231/8232以太網(wǎng)接口卡的PXI系統(tǒng),配合適用NI-Industrial Communications for EtherCAT軟件驅動。用戶可通過菊花鏈方式在控制器上連接多臺NI 9144從設備機箱完成時間確定性應用,以最小的處理器資源,維持硬件的高確定性。
NI 9144是堅固的8槽機箱,可支持30多種模擬、數(shù)字C系列模塊。這些I/O模塊能提供直接連接各類傳感器性,并能重用于其它NI硬件平臺。最重要的是,創(chuàng)新性的技術使得NI9144的配置過程最簡化,在LabVIEW 8.6 Real-Time軟件中能夠自動識別所有連接的從設備及其模塊。使用LabVIEW,您可以通過 I/O 變量拖曳、實時測試面板、I/O 強制等功能輕松實現(xiàn)與物理通道連接,實現(xiàn)調試功能。