Diag Messages

Mit DiagMessages wird ein System der Nachrichtenübermittlung vom EtherCAT Slave an den EtherCAT Master/TwinCAT bezeichnet. Die Nachrichten werden vom Gerät im eigenen CoE unter 0x10F3 abgelegt und können von der Applikation oder dem System Manager ausgelesen werden. Für jedes im Gerät hinterlegtes Ereignis (Warnung, Fehler, Statusänderung) wird eine über einen Code referenzierte Fehlermeldung ausgegeben.

Definition

Das System DiagMessages ist in der ETG (EtherCAT Technology Group) in der Richtlinie ETG.1020, Kap. 13 "Diagnosis Handling" definiert. Es wird benutzt, damit vordefinierte oder flexible Diagnosemitteilungen vom EtherCAT-Slave an den Master übermittelt werden können. Das Verfahren kann also nach ETG herstellerübergreifend implementiert werden. Die Unterstützung ist optional. Die Firmware kann bis zu 250 DiagMessages im eigenen CoE ablegen.

Jede DiagMessage besteht aus

In der zum EtherCAT-Gerät gehörigen ESI/XML-Datei werden die DiagMessages in Textform erklärt: Anhand der in der DiagMessage enthaltenen Text-ID kann die entsprechende Klartextmeldung in den Sprachen gefunden werden, die in der ESI/XML enthalten sind. Üblicherweise sind dies bei Beckhoff-Produkten deutsch und englisch.

Der Anwender erhält durch den Eintrag NewMessagesAvailable Information, dass neue Meldungen vorliegen.

DiagMessages können im Gerät bestätigt werden: die letzte/neueste unbestätigte Meldung kann vom Anwender bestätigt werden.

Im CoE finden sich sowohl die Steuereinträge wie die History selbst im CoE-Objekt 0x10F3:

Diag Messages 1:
DiagMessages im CoE

Unter 0x10F3:02 ist der Subindex der neuesten DiagMessage auslesbar.

Diag Messages 2:

Unterstützung zur Inbetriebnahme

Das System der DiagMesssages ist vor allem während der Anlageninbetriebnahme einzusetzen. Zur Online-Diagnose während des späteren Dauerbetriebs sind die Diagnosewerte z. B. im StatusWord des Gerätes (wenn verfügbar) hilfreich.

Implementierung TwinCAT System Manager

Ab TwinCAT 2.11 werden DiagMessages, wenn vorhanden, beim Gerät in einer eigenen Oberfläche angezeigt. Auch die Bedienung (Abholung, Bestätigung) erfolgt darüber.

Diag Messages 3:
Implementierung DiagMessage-System im TwinCAT System Manager

Im Reiter Diag History (A) sind die Betätigungsfelder (B) wie auch die ausgelesene History (C) zu sehen. Die Bestandteile der Message:

Die Bedeutung der Buttons ist selbsterklärend.

DiagMessages im ADS Logger/Eventlogger

Ab TwinCAT 3.1 build 4022 werden von einer Klemme abgesetzte DiagMessages auch im TwinCAT ADS Logger gezeigt. Da nun IO-übergreifend DiagMessages an einem Ort dargestellt werden, vereinfacht dies die Inbetriebnahme. Außerdem kann die Logger-Ausgabe in eine Datei gespeichert werden – somit stehen die DiagMessages auch langfristig für Analysen zur Verfügung.

DiagMessages liegen eigentlich nur lokal im CoE 0x10F3 in der Klemme vor und können bei Bedarf manuell z. B. über die oben genannte DiagHistory ausgelesen werden.
Bei Neuentwicklungen sind die EtherCAT-Klemmen standardmäßig so eingestellt, dass sie das Vorliegen einer DiagMessage über EtherCAT als Emergency melden; der Eventlogger kann die DiagMessage dann abholen. Die Funktion wird in der Klemme über 0x10F3:05 aktiviert, deshalb haben solche Klemmen folgenden Eintrag standardmäßig in der StartUp-Liste:

Diag Messages 4:
StartUp-Liste

Soll die Funktion ab Gerätestart deaktiviert werden weil z. B. viele Meldungen kommen oder der EventLogger nicht genutzt wird, kann der StartUp-Eintrag gelöscht oder auf 0 gesetzt werden. Der Wert kann dann bei Bedarf später aus der PLC per CoE-Zugriff wieder auf 1 gesetzt werden.

Nachrichten in die PLC einlesen

- In Vorbereitung -

Interpretation

Zeitstempel

Der Zeitstempel wird aus der lokalen Uhr der Klemme zum Zeitpunkt des Ereignisses gewonnen. Die Zeit ist üblicherweise die Distributed-Clocks-Zeit (DC) aus Register x910.

Bitte beachten: die DC-Zeit wird in der Referenzuhr gleich der lokalen IPC/TwinCAT-Zeit gesetzt, wenn EtherCAT gestartet wird. Ab diesem Moment kann die DC-Zeit gegenüber der IPC-Zeit divergieren, da die IPC-Zeit nicht nachgeregelt wird. Es können sich so nach mehreren Wochen Betrieb ohne EtherCAT Neustart größere Zeitdifferenzen entwickeln. Als Abhilfe kann die sog. Externe Synchronisierung der DC-Zeit genutzt werden, oder es wird fallweise eine manuelle Korrekturrechnung vorgenommen: die aktuelle DC-Zeit kann über den EtherCAT Master oder durch Einsicht in das Register x901 eines DC-Slaves ermittelt werden.

Aufbau der Text-ID

Der Aufbau der MessageID unterliegt keiner Standardisierung und kann herstellerspezifisch definiert werden. Bei Beckhoff EtherCAT-Geräten (EL, EP) lautet er nach xyzz üblichwerweise:

x

y

zz

0: Systeminfo
1: Info
2: reserved
4: Warning
8: Error

0: System
1: General
2: Communication
3: Encoder
4: Drive
5: Inputs
6: I/O allgemein
7: reserved

Fehlernummer

Beispiel: Meldung 0x4413 --> Drive Warning Nummer 0x13

Text-IDs der ELM72xx

Text-ID

Typ

Ort

Text Message

Kommentar

0x1201

Information

Kommunikation

Communication re-established

Verbindung aufgebaut

0x4101

Warnung

Allgemein

Terminal-Overtemperature

Übertemperatur. Die Innentemperatur der Klemme überschreitet die parametrierte Warnschwelle.

0x4102

Warnung

Allgemein

PDO-configuration is incompatible to the selected mode of operation

Die ausgewählten PDOs passen nicht zur eingestellten Betriebsart.

Beispiel: Antrieb arbeitet im Velocity-Mode. Das Velocity-PDO ist jedoch nicht in die PDOs gemapped.

0x4107

Warnung

Allgemein

Undervoltage Up

 

0x4109

Warnung

Allgemein

Overvoltage Up

 

0x410A

Warnung

Allgemein

Fan

 

0x410B

Warnung

Allgemein

Error detected, but disabled by suppression mask

 

0x4201

Warnung

Kommunikation

No communication to field-side (Auxiliary voltage missing)

 

0x4301

Warnung

Encoder

Feedback-Warning

Allgemeiner Encoderfehler

0x4411

Warnung

Drive

DC-Link undervoltage

Die Zwischenkreisspannung der Klemme unterschreitet die parametrierte Mindestspannung. Das Aktivieren der Endstufe wird unterbunden.

0x4412

Warnung

Drive

DC-Link overvoltage

Die Zwischenkreisspannung der Klemme überschreitet die parametrierte Maximalspannung. Das Aktivieren der Endstufe wird unterbunden.

0x4413

Warnung

Drive

I2T Amplifier overload

  • Der Verstärker wir außerhalb der Spezifikation betrieben
  • Das I2T-Modell des Verstärkers ist falsch parametriert

0x4414

Warnung

Drive

I2T Motor overload

  • Der Motor wird außerhalb der parametrierten Nennwerte betrieben.
  • Das I2T-Modell des Motors ist falsch parametriert.

0x4415

Warnung

Drive

Speed limitation active

Die maximale Drehzahl wird durch die parametrierten Objekte (z. B. velocity limitation, motor speed limitation) begrenzt. Die Warnung wird ausgegeben, wenn die Sollgeschwindigkeit größer ist, als eines der parametrierten Begrenzungen.

0x4417

Warnung

Drive

Motor-Overtemperature

Die Innentemperatur des Motors übersteigt die parametrierte Warnschwelle.

0x4418

Warnung

Drive

Limit: Current

Limit: Strom wird limitiert

0x4419

Warnung

Drive

Limit: Amplifier I2T-model exceeds 100%%

Die Schwellwerte für den maximalen Strom wurden überschritten.

0x441A

Warnung

Drive

Limit: Motor I2T-model exceeds 100%%

Limit: Motor I2T-Modell übersteigt 100%

0x441B

Warnung

Drive

Limit: Velocity limitation

Die Schwellwerte für die maximale Drehzahl wurden überschritten.

0x441C

Warnung

Drive

Axis disabled via STO

Es wurde versucht die Achse zu aktivieren, obwohl die Spannung am STO-Eingang nicht anliegt.

0x4420

Warnung

Drive

Cogging compensation not supported (%u)

 

0x4421

Warnung

Drive

I2T-Model Brake chopper overload

 

0x4422

Warnung

Drive

Limit: Brake chopper I2T-model exceeds 100%%

 

0x4423

Warnung

Drive

Brake resistor not connected

 

0x4424

Warnung

Drive

Modes of operation invalid

 

0x8104

Fehler

Allgemein

Terminal-Overtemperature

Die Innentemperatur der Klemme überschreitet die parametrierte Fehlerschwelle. Das Aktivieren der Klemme wird unterbunden.

Text-ID

Typ

Ort

Text Message

Kommentar

0x8105

Fehler

Allgemein

PD-Watchdog

Die Kommunikation zwischen Feldbus und Endstufe wird durch einen Watchdog abgesichert. Sollte die Feldbuskommunikation abbrechen, wird die Achse automatisch gestoppt.

  • Die EtherCAT-Verbindung wurde im Betrieb unterbrochen
  • Der Master wurde im Betrieb in den Config-Mode geschaltet

0x810A

Fehler

Allgemein

Fan

 

0x810B

Fehler

Allgemein

Undervoltage Up

 

0x810C

Fehler

Allgemein

Overvoltage Up

 

0x8135

Fehler

Allgemein

Cycletime has to be a multiple of 125 µs

Die IO- oder NC-Zykluszeit ist nicht ganzzahlig durch 125µs teilbar.

0x8137

Fehler

Allgemein

Electronic name plate: CRC error

Inhalt des Speicher des externen Typenschildes nicht gültig.

0x8144

Fehler

Allgemein

Hardware fault (%d)

 

0x817F

Fehler

Allgemein

Error: 0x%X, 0x%X, 0x%X

 

0x81B0

Fehler

Allgemein

Content of PDO 0x%X is invalid: Item 0x%X:%X cannot be mapped

 

0x81B1

Fehler

Allgemein

Content of PDO 0x%X is invalid: Item 0x%X:%X has an unsupported length (%d bit)

 

0x8201

Fehler

Kommunikation

No communication to field-side (Auxiliary voltage missing)

  • Es ist keine Spannung an den Powerkontakten angelegt
  • Ein Firmware Update ist fehlgeschlagen

0x8302

Fehler

Encoder

Feedback-Error

Die Amplitude des Resolvers ist zu klein.

0x8304

Fehler

Encoder

OCT communication error

Encoder Kommunikationsfehler

0x831A

Fehler

Encoder

Number of encoder-increments per revolution is not a power of two

 

0x8403

Fehler

Drive

ADC Error

Fehler bei Strommessung im ADC

0x8404

Fehler

Drive

Overcurrent

Überstrom Phase U, V, oder W

0x8405

Fehler

Drive

Modulo position invalid (feedback position has changed too much while drive was turned off)

Modulo-Position ungültig

0x8406

Fehler

Drive

Undervoltage DC-Link

Die Zwischenkreisspannung der Klemme unterschreitet die parametrierte Mindestspannung. Das Aktivieren der Endstufe wird unterbunden.

0x8407

Fehler

Drive

Overvoltage DC-Link

Die Zwischenkreisspannung der Klemme überschreitet die parametrierte Maximalspannung. Das Aktivieren der Endstufe wird unterbunden.

0x8408

Fehler

Drive

I2T-Model Amplifier overload

  • Der Verstärker wir außerhalb der Spezifikation betrieben
  • Das I2T-Modell des Verstärkers ist falsch parametriert

0x8409

Fehler

Drive

I2T-Model motor overload

  • Der Motor wird außerhalb der parametrierten Nennwerte betrieben.
  • Das I2T-Modell des Motors ist falsch parametriert.

0x840B

Fehler

Drive

Commutation error

 

0x840C

Fehler

Drive

Motor not connected

 

0x8415

Fehler

Drive

Invalid modulo range

Modulo-Faktor ungültig

0x8416

Fehler

Drive

Motor-Overtemperature

Die Innentemperatur des Motors übersteigt die parametrierte Fehlerschwelle. Der Motor bleibt sofort stehen. Das Aktivieren der Endstufe wird unterbunden.

0x8417

Fehler

Drive

Maximum rotating field velocity exceeded

Drehfeldgeschwindigkeit übersteigt den von Dual Use (EU 1382/2014) vorgeschriebenen Wert.

0x841C

Fehler

Drive

STO while the axis was enabled

Es wurde versucht die Achse zu aktivieren, obwohl die Spannung am STO-Eingang nicht anliegt.

0x8420

Fehler

Drive

Teach-In Process (%d) failed

 

0x8421

Fehler

Drive

Teach-In Process Timeout (STO, DC-Link, ...)

 

0x8422

Fehler

Drive

Drive configuration missing

 

0x8423

Fehler

Drive

Invalid process data format (number of singleturn bits+multiturn bits != 32)

 

0x8441

Fehler

Drive

Maximum following error distance exceeded

 

0x8443

Fehler

Drive

Invalid value for Mode of Operation

 

0x8445

Fehler

Drive

I2T-Model Brake chopper overload

 

0x8446

Fehler

Drive

Brake chopper overcurrent

 

0x8448

Fehler

Drive

Drive / axis is not referenced

 

0x8449

Fehler

Drive

Target position not in modulo range

 

0x844A

Fehler

Drive

Modulo position: Checksum error

 

0x844B

Fehler

Drive

Modulo position: Storage not supported for singleturn encoder

 

0x844C

Fehler

Drive

Position offset cannot be used in the selected configuration

 

0x8450

Fehler

Drive

Invalid start type 0x%x

 

0x8451

Fehler

Drive

Invalid limit switch level

 

0x8452

Fehler

Drive

Drive error during positioning

 

0x8453

Fehler

Drive

Latch unit will be used by multiple modules

 

0x8454

Fehler

Drive

Drive not in control

 

0x8455

Fehler

Drive

Invalid value for "Target acceleration"

 

0x8456

Fehler

Drive

Invalid value for "Target deceleration"

 

0x8457

Fehler

Drive

Invalid value for "Target velocity"

 

0x8458

Fehler

Drive

Invalid value for "Target position"

 

0x8459

Fehler

Drive

Emergency stop active

 

0x845A

Fehler

Drive

Target position exceeds Modulofactor

 

0x845B

Fehler

Drive

Drive must be disabled

 

0x845C

Fehler

Drive

No Feedback found

 

0x845D

Fehler

Drive

Modulo factor invalid

 

0x845E

Fehler

Drive

Invalid target position window