前面的文章介紹了 i.MX RT1180 EtherCAT 數位 I/O Demo 的搭建流程,本篇文章將在此基礎上介紹 EtherCAT 的冗餘功能。
1. EtherCAT 冗餘功能簡介
當 EtherCAT 從站連接的網線有問題或者從站的其中一個網口出現問題導致通信中斷時,其他從站將無法工作。為了避免此問題,EtherCAT 協議定義了可選的冗餘功能,詳細介紹可參考 EtherCAT 協議資料。常見的 EtherCAT 拓撲結構如下:每個從站有兩個網口 PORT1 和 PORT2,假設中間的網線斷了,則無法控制後面的從站。
EtherCAT 定義使用最後一個從站的 PORT2 連接回主站,即使中間斷了,主站還能透過另外一個 PORT 傳輸,主站會透過兩邊接收到的資訊進行整合控制。
這就要求主機端至少需要支援兩個網路埠功能,接下來演示 EtherCAT 的冗餘功能。
2. 硬體配置
需要準備的硬體如下:
MIMXRT1180-EVK RevB *2
RJ45 網路線 *3
Mini/micro USB 連接線*2
DC-5V 變壓器
USB 網路埠
兩塊板子供電如下,建議與 Slave1 使用 DC-5V 轉接器供電,Slave2 可使用 USB OTG 接口供電。
網路線連接如下
3. 從機軟體配置
從機軟體與《EtherCAT digital io Demo 搭建》文章相同,不需要更改。
TwinCAT 工程也是相同的,可以參考相關步驟運行。如果電腦只有一個乙太網接口,則需要準備一個 USB 網卡接到電腦上,接上之後啟用冗餘功能,然後打開配置。
選擇第二個網路埠,點擊確定後退出即可。
進入 PLC 線上運行程式碼後,兩塊 EVK LED 閃爍之後,可以選擇通過斷開其中一個網口,如果 LED 繼續正常閃爍,則表示冗餘功能正常。
4. 冗餘功能測試
這裡斷開兩個從機之間的網口連接,可以看到 TwinCAT 裡面兩個從機的狀態變化是對應的。
PLC 程式碼仍在正常運行
將網路線重新接上,從機狀態顯示正常
總結:TwinCAT 冗餘功能並不僅限於文章中提到的一種,各個主機廠商都可以實現不同的方式,文章介紹的只是其中一種。該功能僅適用於拓撲結構中出現單一異常的情況,若同時斷開兩處,程序將無法繼續正常運行。此功能的目的是在出現單一異常時維持正常運行,主機會提示需要進行修復,適用於 EtherCAT 這種高速且即時的應用場景。
評論