Dieser Baustein stellt Diagnosemöglichkeiten eines EtherCAT-Bussystems für das PLC-Projekt zur Verfügung.
Es werden Informationen (aktueller Zustand, Fehlerinformationen) des EtherCAT-Masters, des verwendeten EtherCAT-Kernels und jedes EtherCAT-Slave zur Verfügung gestellt.
Die Zuordnung zu jedem Slave erfolgt anhand seiner Node-ID. Ebenfalls wird der Einfachheit halber ein Bit ausgegeben, welches einen funktionierenden Feldbus meldet.
Beim erstmaligen Aufstarten des FB wird immer überprüft, ob der Baustein für die verwendete EtherCAT-Master Firmware, bzw. den aktuell verwendeten EtherCAT-Master
Kernel geeignet ist. Optional kann zusätzlich die verwendete Datensatz-ID der aktiven EtherCAT-Konfiguration überprüft werden.
Die Klartext Fehlermeldungen sind aktuell ausschließlich auf Englisch hinterlegt.
Damit dem Baustein die korrekten Daten zur Verfügung stehen, müssen globale Variablen mit den unten genannten Hardware-Adressen angelegt werden. Diese müssen dem Baustein als Ein- und Ausgangsvariable übergegen werden. Als Datentyp der Variablen müssen Strukturen (siehe unten) im PLC-Projekt angelegt werden.
Der Baustein ist kompatiblel bis zur EtherCAT-Masterfirmware 1427.0127.
Einschränkungen:
- Die Möglichkeit der EtherCAT-Diagnose steht ab EtherCAT-Masterfirmware 1427.0114 und EtherCAT Kernel Version > 100 zur Verfügung
- Die aktuelle Anzahl der Slaves ist intern auf 256 begrenzt!
| Empfohlene Task: |
Cyclic/Default |
| Verwendete Bibliotheken: |
BM_TYPES_40bd04 oder höher
TECH_TYPES_40bd08 oder höher |
Ein-/Ausgänge
| Bezeichnung: |
Datentyp: |
Beschreibung: |
| _EctMasterKernel |
ECM_KERNEL_DIAGNOSTIC |
DP-RAM Strukturvariable EtherCAT-Kernel, Struktur Aufbau und Hardware-Adressierung siehe Detailbeschreibung der Eingänge |
| _EctMaster |
ECM_MASTER_STATUS |
DP-RAM Strukturvariable EtherCAT-Master, Struktur Aufbau und Hardware-Adressierung siehe Detailbeschreibung der Eingänge |
| _EctSlave |
ECM_SLAVE_STATES |
DP-RAM Strukturvariable EtherCAT-Slave, Struktur Aufbau und Hardware-Adressierung siehe Detailbeschreibung der Eingänge |
| _EctMasterActState |
ECT_DIAGNOSIS_ECM_STATE |
aktueller Zustand des EtherCAT-Masters |
| a_EctSlaveActState |
ARRAY_ECT_DIAGNOSIS_ECS_STATE |
aktueller Zustand jedes EtherCAT-Slave, Zuordnung erfolgt anhand der Node-ID |
Weitere Beschreibung der Ein-/Ausgänge
Eingänge
| Bezeichnung: |
Datentyp: |
Beschreibung: |
| x_Enable |
BOOL |
TRUE: Baustein freigeben |
| x_CheckDatasetId |
BOOL |
TRUE: Beim Start Datensatz ID der EtherCAT-Konfiguration überprüfen |
| t_ErrorInfoToggle |
TIME |
Zyklus der im Fehlerfall toggelnden Meldungen, Defaulteinstellung 1s, wenn Eingang = 0s, Maximal erlaubter Werte: 10s |
| a_DatasetId |
DWORD_4_BMARRAY |
Zu erwartete Datensatz-ID der EtherCAT-Konfiguration, die Datensatz-ID kann beim Parametrieren mit dem Engineering Framework ProMaster eingestellt werden |
Weitere Beschreibung der Eingänge
Ausgänge
| Bezeichnung: |
Datentyp: |
Beschreibung: |
| x_EctIsOK |
BOOL |
TRUE: zentrale Meldung EtherCAT ist ok |
| u_EctSlavesConfigured |
UINT |
Anzahl der in der EtherCAT-Konfiguration definierten EtherCAT-Slaves |
| u_EctSlavesFound |
UINT |
Anzahl der am Bus gefunden EtherCAT-Slaves |
| u_EctSlavesInOperational |
UINT |
Anzahl der sich aktuell im Zustand Operational befindlichen EtherCAT-Slaves |
| w_EctMasterKernelVersion |
WORD |
Version des aktuellen EtherCAT-Kernel |
| s_EctKernelErrorInfo |
STRING |
Klartetext Fehlemeldungen EtherCAT-Kernel |
| s_EctMasterErrorInfo |
STRING |
Klartetext Fehlemeldungen EtherCAT-Master |
| a_EctDatasetIdFound |
DWORD_4_BMARRAY |
eindeutige Kennung (Datensatz-ID) der aktuell verwendeten EtherCAT-Konfiguration des Masters, die Datensatz-ID kann beim Parametrieren mit dem Engineering Framework ProMaster eingestellt werden |
| x_Active |
BOOL |
TRUE: Diagnose EtherCAT ist aktiv |
| x_Error |
BOOL |
TRUE: Baustein hat einen Fehler |
| w_ErrorID |
WORD |
detaillierte Fehlerinformationen des Bausteins, die Fehlerbedeutung kann in der Detailbeschreibung nachgelesen werden |
Weitere Beschreibung der Ausgänge