FB_CollisionEntityUpdate - (Methode)

Überblick

Typ:

Methode

Verfügbamr ab:

V1.0.0.0

Dieses Kapitel enthält Informationen zu folgenden Aspekten:

Aufgabe

Führt eine Aktualisierung der Kollisionseinheit durch.

Beschreibung

Diese Methode ermöglicht die Aktualisierung der internen Darstellung der Kollisionseinheit.

Bei einem Aufruf dieser Methode sind zwei Verhaltensweisen möglich, je nach dem Wert des Eingangs i_xUpdateGroups.

  • Wenn bei einem Aufruf der Methode Update: i_xUpdateGroups = FALSE, dann müssen alle der Einheit hinzugefügten Gruppen bereits erfolgreich aktualisiert sein (xUpdated = TRUE für jede Gruppe).

  • Wenn bei einem Aufruf der Methode Update: i_xUpdateGroups = TRUE, dann wird die Methode Update für jede der Einheit hinzugefügten Gruppe aufgerufen und muss erfolgreich sein. Andernfalls erzeugt der Aktualisierungsaufruf einen Fehler.

Schnittstelle

Der Funktionsbaustein implementiert die Schnittstelle IF_CollisionEntity.

Zugriff: PUBLIC

Eingang

Datentyp

Beschreibung

i_xUpdateGroups

BOOL

Wenn bei einem Aufruf dieser Methode Update auf TRUE gesetzt wird, dann wird ebenfalls die Methode für jede gespeicherte Gruppe aufgerufen.

Ausgang

Datentyp

Beschreibung

q_xError

BOOL

Der Ausgang wird auf TRUE gesetzt, wenn bei der Ausführung ein Fehler erkannt wurde.

q_etResult

ET_Result

POU-spezifischer Ausgang der Diagnose. q_xError = FALSE -> Statusmeldung. q_xError = TRUE -> Diagnosemeldung.

q_sResultMsg

STRING(80)

Ereignisabhängige Meldung, die zusätzliche Informationen über den Diagnosezustand gibt.

Diagnosemeldungen

q_xError

q_etResult

Enumerationswert

Beschreibung

FALSE

Ok

0

Erfolg

TRUE

CollisionEntityEmpty

35

Die Kollisionseinheit ist leer.

TRUE

CollisionGroupUpdateNotPossible

37

Eine Kollisionsgruppe kann nicht aktualisiert werden.

TRUE

CollisionGroupNotUpdated

21

Eine Kollisionsgruppe wurde nicht aktualisiert.

TRUE

CollisionEntityUpdateNotPossible

51

Die bereitgestellte Schnittstelle für Kollisionsabfragen bezieht sich auf einen ungültigen Typ.

OK

Enumerationsname:

Ok

Enumerationswert:

0

Beschreibung:

Erfolg

CollisionEntityEmpty

Enumerationsname:

CollisionEntityEmpty

Enumerationswert:

35

Beschreibung:

Die Kollisionseinheit ist leer.

Problem

Ursache

Lösung

Es konnte keine Aktualisierung durchgeführt werden.

In der Einheit sind keine Kollisionsobjekte vorhanden, d. h. udiNumberOfCollisionGroups = 0.

Fügen Sie mindestens eine Kollisionsgruppe zur Einheit hinzu, bevor Sie die Methode Update aufrufen.

CollisionGroupUpdateNotPossible

Enumerationsname:

CollisionGroupUpdateNotPossible

Enumerationswert:

37

Beschreibung:

Eine Kollisionsgruppe kann nicht aktualisiert werden.

Problem

Ursache

Lösung

Es konnte keine Aktualisierung durchgeführt werden.

Der Eingang i_xUpdateGroups wurde auf TRUE gesetzt, es kann jedoch keine erfolgreiche Aktualisierung für mindestens eine der Gruppen durchgeführt werden.

Stellen Sie sicher, dass xConfigured = TRUE ist für alle Kollisionsobjekte in allen gespeicherten Gruppen, bevor Sie die Methode Update mit i_xUpdateGroups = TRUE aufrufen.

CollisionGroupNotUpdated

Enumerationsname:

CollisionGroupNotUpdated

Enumerationswert:

21

Beschreibung:

Eine Kollisionsgruppe wurde nicht aktualisiert.

Problem

Ursache

Lösung

Es konnte keine Aktualisierung durchgeführt werden.

Der Eingang i_xUpdateGroups wird auf FALSE gesetzt, aber für nicht alle gespeicherten Gruppe ist xUpdated = TRUE.

Stellen Sie sicher, dass xUpdated = TRUE ist für alle gespeicherten Gruppen, bevor Sie die Methode Update mit i_xUpdateGroups = FALSE aufrufen.

CollisionEntityUpdateNotPossible

Enumerationsname:

CollisionEntityUpdateNotPossible

Enumerationswert:

52

Beschreibung:

Die bereitgestellte Schnittstelle für Kollisionsabfragen bezieht sich auf einen ungültigen Typ.

Problem

Ursache

Lösung

Es konnte keine Aktualisierung durchgeführt werden.

Mindestens eine der konfigurierten Schnittstellen in der Eigenschaft raifCollisionGroups wurde auf null gesetzt.

Um diesen Fehler zu beheben, führen Sie einen erfolgreichen Aufruf der Methode Reset durch und fügen Sie dann die erforderlichen Gruppen über einen Aufruf von AddCollisionGroup erneut hinzu.