2012年8月20日 星期一

EtherCAT 協定基本概念

EtherCAT 協定不需更改其基本架構,即可透過標準的乙太網路結構直接傳送資料。當主機控制器與附屬裝置均位於相同的子網 (Subnet) 上時,EtherCAT 協定將可取代乙太網路架構中的 Internet Protocol (IP)。
包含 EtherCAT 的乙太網路架構。


而資料則以「Process data object (PDO)」的形式,於主機與附屬裝置之間流動。對單一特定或多重附屬裝置來說,每組 PDO 均具有其位址,而此種「資料與位址」的整合並加上用於檢驗的作業計數器 (Working counter),則構成了 EtherCAT 電報形式。單一乙太網路架構可包含多組電報 (Telegram) 形式,而針對 1 個控制週期,則需要多組架構維持所有電報。

資料轉換
透過某些即時協定,主機控制器將傳送資料封包,接著必須等待各個附屬節點編譯並複製處理資料。然而,由於主機控制器必須針對每組附屬節點,增加並管理特定的處理時間與抖動 (Jitter) 情形,因此極難以維持這種精確方式。
EtherCAT 技術則可快速處理每個乙太網路架構,進以克服這些系統限制。舉例來說,假設乙太網路架構為移動中的火車,則 EtherCAT 電報則為火車車廂。PDO 資料的位元數即為車廂中的乘客,可由合適的附屬裝置抽取或插入資料。整列「火車」將毫不停留的穿過所有附屬裝置,而末端附屬裝置將回轉此列火車,使其再次穿過所有的附屬裝置。

EtherCAT 的資料傳輸。
依此方式,當裝置 1 接收由主機所傳送的乙太網路封包時,將自動串流封包到裝置 2,其中封包讀取作業將僅發生數個毫微秒 (Nanosecond) 的延遲情形。由於封包持續於附屬裝置之間穿梭,因此可同時存在於多組裝置中。

這到底有何特別意義?我們以 50 組附屬裝置為例,並以不同資料傳送至各組附屬裝置。對非 EtherCAT 的建構來說,以上條件則必須傳送 50 個不同的封包。但是對 EtherCAT 架構來說,則僅是對所有附屬裝置傳送 1 個長形封包,而該封包即內含 50 組裝置的資料。然而,若所有附屬裝置均必須接收相同資料,則將僅傳送 1 個短封包。附屬裝置將於封包串流時讀取其相同部分,藉以最佳化資料的傳輸速度與頻寬。



高速效能

EtherCAT 是針對如控制的單點應用所設計,可達到高效能與高通道數的要求。由於附屬裝置可於相同架構中進行讀取作業,因此 EtherCAT 電報結構將針對分散式的 I/O 進行最佳化。

此外,系統將於硬體中進行完整的協定處理作業,因此將與協定堆疊 (Protocol Stack) 的執行時間、CPU 效能,或軟體建置作業毫不相關。以直接記憶體存取作業 (DMA) 為例,僅需佔用最小 CPU 資源,即可於網路介面卡與主機處理器/附屬 I/O 之間傳輸資料。同樣的,每個 NI 附屬裝置均將根據 PDO 傳輸與位址檢驗,使用其專屬的多種 Fieldbus Memory Management Unit (FMMU)。事實上,是由附屬裝置決定本身所適用的電報,而非主機代勞;因此可降低主機作業的複雜性,並釋出更多系統資源。

沒有留言:

張貼留言