SlaveDiagnostics

顯示 EtherCAT 從站狀態的診斷資訊。更多資訊請見 KINGSTAR 記錄檢視 > 診斷工具

注意:以下 API 僅在特定狀態可得,請見其可得狀態欄位。

名稱 類型 定義

可得狀態

FixedAddress USHORT 從站的固定位址,在開機時由主站設定,值從 1001 開始並遵照連接順序。

>= Init

Type[64] char 從站的裝置種類。

>= Init

Name[64] char 從站名稱。

>= Init

DeviceType UINT 從站的裝置種類。

>= Init

VendorId UINT 從站之供應商 ID。

>= Init

ProductCode UINT 從站之產品碼。

>= Init

RevisionNo UINT 從站之修訂號碼。

>= Init

SerialNo UINT 從站之序列號。

>= Init

MailboxIn USHORT 從站輸入郵箱緩衝區之大小,適中大小為 128 - 512 位元組,小於 32 位元組即為小。

>= Init

MailboxOut USHORT 從站輸出郵箱緩衝區之大小,適中大小為 128 - 512 位元組,小於 32 位元組即為小。

>= Init

LinkStatus BYTE

從站之 EtherCAT 連結。

連結狀態位元定義:

位元 名稱 說明
0 NoLink 從站無連結。
1 LinkNoComm 從站回報有一實體連結無一個或多個連接埠通訊。
2 LinkMiss 從站回報在預期有連結下,有一遺失的連結在一或多個連接埠。
3 LinkAdd 從站回報在無預期有連結下,有一連結在一或多個連接埠。
4 Port0 Port 0 有先前其中之一的位元。
5 Port1 Port 1 有先前其中之一的位元。
6 Port2 Port 2 有先前其中之一的位元。
7 Port3 Port 3 有先前其中之一的位元。

>= Init

LinkPreset BYTE

回報從站埠 1、埠 2 與埠 3 的預期實體連結,執行順序為埠 0→3→1→2。

位元 說明
0 連接埠 1 預期與 EtherCAT 從站建立連結(若 = 0 且 bit.4 = 1,連接埠 1 將連接到第二主站配接器以達成冗餘)。
1

連接埠 2 預期與 EtherCAT 從站建立連結(若 = 0 且 bit.5 = 1,連接埠 2 將連接到第二主站配接器以達成冗餘)。

2 連接埠 3 預期與 EtherCAT 從站建立連結(若 = 0 且 bit.6 =1,連接埠 3 將連接到第二主站配接器以達成冗餘)。
3 保留。
4 連接埠 1 預期實體連結。
5 連接埠 2 預期實體連結。
6 連接埠 3 預期實體連結。
7 保留。

>= Init

Flags BYTE

提供關於從站的額外拓撲學資訊。

位元 說明
0

從站基於冗餘目的連接到次要主站配接器。

0 = 無冗餘配接器連接至從站。

1 = 冗餘配接器連接到埠 1。

2 = 冗餘配接器連接到埠 2。

3 = 冗餘配接器連接到埠 3。

1
2 熱插拔組的第一個從站,用於辨識身分(位元 3 也應設定)。
3 從站屬於熱插拔組的一員。
4 已保留。
5 已保留。
6 已保留。
7 已保留。

>= Init

StationAddress USHORT 普遍呼叫的別名位址,可由主站寫入,並儲存再從站 EEPROM。在電源關閉時此值仍保留,可用來區分同樣的從站。

>= Init

DlStatus USHORT 各連接埠的 EtherCAT 迴路狀態。

OP

AlStatus USHORT

EtherCAT 狀態與警報位元。

位元 0-3:EtherCAT 狀態。

Bit 4:警報。

>= Init

AlControl USHORT 控制 EtherCAT 狀態機器。主站透過寫入 AL 控制暫存器請求狀態更改,接著從站在 AL 狀態暫存器中指示其狀態,可由 AL 控制看到從站的 EtherCAT 狀態。例如,8 表示主站請求運作模式 (Op),從站即反映其狀態為 Op。

>= Init

AlStatusCode USHORT AL 狀態碼,顯示上一次從站發生問題的錯誤碼,錯誤碼清單可於 EtherCAT AL 狀態碼 頁面查詢。

>= Init

LinkConnStatus BYTE

回報從站在各連接埠的實際連結狀態。

位元 說明
0 埠 0 為開啟狀態且連接至 EtherCAT 從站(若 = 0,表示埠 0 因冗餘環中斷或連接到主要主站配接器而關閉)。
1

埠 1 為開啟狀態且連接至 EtherCAT 從站(若 = 0,表示埠 1 因冗餘用途而關閉或連接到次要主站配接器)。

2 埠 2 為開啟狀態且連接至 EtherCAT 從站(若 = 0,表示埠 2 因冗餘用途而關閉或連接到次要主站配接器)。
3 埠 3 為開啟狀態且連接至 EtherCAT 從站(若 = 0,表示埠 3 因冗餘用途而關閉或連接到次要主站配接器)。
4 埠 0 偵測到實體連結。
5 埠 1 偵測到實體連結。
6 埠 2 偵測到實體連結。

7

埠 3 偵測到實體連結。

註:執行順序為埠 0→3→1→2。

>= Init

LinkConnControl BYTE

從站暫存器值為 0x0101。

位元 0 與 1:迴路控制連接埠 0。

位元 2 與 3:迴路控制連接埠 1。

位元 4 與 5:迴路控制連接埠 2。

位元 6 與 7:迴路控制連接埠 3。

 

連接埠的迴路控制值:

00:自動:連接埠狀態由連結狀態決定,當有連結時連接埠開啟;無連結時關閉。

01:自動關閉:連接埠狀態由連結狀態決定,若無連結,則連接埠關閉;若有連結,除非主站發出外顯請求,否則連接埠不會自動開啟。

10:開啟:連接埠永遠為開啟狀態,若無連結,發出的 EtherCAT 訊框即遺失。

11:關閉:連接埠永遠為關閉狀態,若有連結,傳入的 EtherCAT 訊框不會被接收。

OP

PortAddress[4] USHORT 連接到此連接埠的裝置之固定位址。

>= Init

FrameCrc[4] BYTE

從站連接埠計算的週期冗餘檢查 (CRC) 數量。

Error:纜線上的干擾會破壞訊框的位元。

OP

PhyCrc[4] BYTE

從站連接埠計算的週期冗餘檢查 (CRC) 數量。

Erro:纜線未插上。

OP

LostLink[4] BYTE

從站連接埠計算的週期冗餘檢查 (CRC) 數量。

Error:纜線故障。

OP

CyclicWc UINT 負責處理從站數據交換的資料包被接收到無效工作計數器的周期數。

OP

NotPresent UINT

主站與從站斷開實際連結的次數。

>= Offline

AbnormalState UINT 從站警報觸發的次數。

>= Offline

註:所有 EtherCAT 狀態及其運作順序列於以下:

  1. Offline → Init → Pre-Operational (PreOP) → Safe-Operational(SafeOP) → Operational (OP)

  2. Offline → Init → Boot

更多關於所有狀態的資訊請見 EthercatState