Fehlercodes Übersicht
Fehler Codes werden vom Typ HRESULT zurückgegeben. Ein Test auf Nonzero Values ist bei Werten vom Typ HRESULT nicht ausreichend.
declaration | error | ok | ok but with info | check functions |
---|---|---|---|---|
hrErrorCode :HRESULT; | < 0 | >= 0 | > 0 | SUCCEEDED(), FAILED() |
Die folgenden Fehlercodes können auftreten.
16#9811_0000 - 16#9811_FFFF | gelistet in TwinCAT (ADS) Error Codes (dort ohne höherwertiges WORD). Weitere Hinweise unten auf der Seite. |
16#9851_0000 - 16#9851_FFFF | Condition Monitoring Error Codes sind aufgeführt unter E_CM_ErrorCode |
16#9852_0000 - 16#9852_0FFF | Condition Monitoring Analysis Error Codes stehen in E_CMA_ErrorCodes |
16#9871_0000 - 16#9871_FFFF | MultiArray Error Codes findet man in E_MA_ErrorCode |
Wenn ein Fehler während der Initialisierung auftritt, kann der Funktionsbaustein nicht genutzt werden. |
Weitere Hinweise für Standard TwinCAT Error Codes:
error value | symbol | Fehlerbeschreibung | Behebungsmöglichkeit |
---|---|---|---|
16#9811_070A | NOMEMORY | Keinen Speicher | Falsche Speicher-Einstellungen |
16#9811_0719 | TIMEOUT | Gerät hat einen Timeout | Ein Timeout kann während des Transfers von Pufferspeichern auftreten. Für die CM Analysekette ist dies meistens nicht kritisch. Es kommt auf die Art des Algorithmus an und auf den Ort, wo genau der Fehler aufgetreten ist, wie auf den Fehler reagiert werden muss. Der Eingang Timeout sollte nur dann angehoben werden, wenn dies zur Zykluszeit der Task passt. |
In manchen Fällen ist das Error Handling mit Error Codes nicht die beste Wahl, insbesondere dann wenn die Aktionen einen undefinierten Wert ausgeben, in Bezug auf unübliche, aber mögliche Eingangsdaten. Oder wenn Werte aus dem Prozess ausgeschlossen wurden. In diesem Fall können fehlende Werte und teilweise undefinierte Ergebnisse durch die spezielle Konstante NaN beschrieben werden (siehe dazu: Kapitel NaN values). Dies wird im Falle von Fehlern genutzt dessen Erscheinung nicht von der Programmlogik abhängig ist, aber von bestimmten Input Daten.