Mit diesem Baustein können Abstände und/oder Längen vermessen werden. Dazu wird eine Messtaster-Funktion im verwendeten Regler vorausgesetzt. Die Messtaster-Funktion (Touch probe) speichert mit einem digitalen Signal die aktuelle Geber-Position. Das Speichern kann bei der positiven und/oder negativen Flanke des Signals erfolgen.
Der Baustein berechnet aus den gemessenen Positionen Abstand und Länge. Um Störkanten auszublenden können Fenster vorgegeben werden, in denen eine gültige Messung erwartet wird.
Hinweis:Bevor der Baustein ausgeführt werden kann, müssen alle relevanten Parameter mit dem Baustein TB_TPmeasure_Init initialisiert werden. Verwendet werden dürfen nur Antriebe der Baureihe bmaXX4400 oder 5000.
Empfohlene Task: | Event |
Verwendete Bibliotheken: | ARITHMETIC_xxbd00 oder höher TECH_TYPES_xxbd05 oder höher |
Bezeichnung: | Datentyp: | Beschreibung: |
---|---|---|
_PMdata | PM_Type | Daten aus dem Initialisierungsbaustein TB_TPmeasure_Init. |
Bezeichnung: | Datentyp: | Beschreibung: |
---|---|---|
x_Enable | BOOL | Mit dem Eingang x_Enable=TRUE wird der Baustein initialisiert. War die Initialisierung erfolgreich, ist der Baustein frei gegeben. Dies wird mit dem Ausgang x_Active=TRUE angezeigt. Nach der Freigabe wird die erste Kante/Marke gesucht. Mit x_Enable=FALSE wird x_1stEdge und auch x_Active zurückgesetzt. |
x_Ack | BOOL | Übernahmequittierung der gemessenen Daten. Mit x_Ack=TRUE wird x_Valid=FALSE, und der gemessene Abstand (und Länge) auf -1 gesetzt. |
x_CounterClockwise | BOOL | Vor der Freigabe mit x_Enable muss mit diesem Eingang vorgewählt werden, in welche Richtung die Druckmarkenlänge vermessen wird. Mit Richtung ist gemeint, ob der an EncPos angeschlossene Geber, im Uhrzeigersinn (clockwise) positiv zählt, oder gegen den Uhrzeigersinn (counterclockwise) also in die negative Richtung zählt. Dabei gilt: TRUE: Counterclockwise FALSE: Clockwise Bei Änderung der Variable während dem Betrieb, muss der Baustein mit einer LH Flanke an x_Enable neu initialisiert werden. |
di_DefDist | DINT | Vorgabewert des erwarteten Kanten-Abstands der LH-Flanken (oder der HL_Flanken) in Anwendereinheiten (z.B. Druckmarkenabstand). |
di_DefSize | DINT | Vorgabewert der erwarteten Kanten-Länge der LH- zur HL-Flanke (oder HL- zur LH-Flanke) in Anwendereinheiten (z.B. Druckmarkenlänge). |
di_WinDist | DINT | Zulässige Abweichung (Fensterbreite) des Kanten-Abstands der LH-Flanken (oder der HL_Flanken) in Anwendereinheiten. Es werden Abstände mit di_DefDist ± di_WinDist akzeptiert. Wird nichts angeschlossen, ist die Störmarkenerkennung deaktiviert und es werden alle gefundenen Flanken erfasst. |
di_WinSize | DINT | Zulässige Abweichung (Fensterbreite) des Kanten-Abstands der LH- zur HL-Flanke bzw. HL- zur LH-Flanke in Anwendereinheiten. Es werden Breiten mit di_DefSize ± di_WinSize akzeptiert. Wird nichts angeschlossen, ist die Störmarkenerkennung deaktiviert und es werden alle gefundenen Flanken erfasst. |
ud_Units | UDINT | Anzahl der Anwendereinheiten für die entsprechenden Geberumdrehungen (u_Revolution). |
u_Revolution | UINT | Anzahl der Geberumdrehungen für die entsprechenden Anwendereinheiten (ud_Units). |
d_EncPos | DWORD | Geber-Istwert des Messtaster-Gebers. Format 32-Bit Winkel. |
d_TP_PosLH | DWORD | Gemessene Position der LH-Flanke. Format: 16-Bit Umdrehung 16-Bit Winkel |
d_TP_PosHL | DWORD | Gemessene Position der HL-Flanke. Format: 16-Bit Umdrehung 16-Bit Winkel |
Bezeichnung: | Datentyp: | Beschreibung: |
---|---|---|
x_Active | BOOL | TRUE: Baustein ist aktiv, die Initialisierung war fehlerfrei. |
x_1stEdge | BOOL | Erste gültige Kante erkannt. x_1stEdge bleibt solange TRUE, bis x_Enable=FALSE wird. |
x_Valid | BOOL | TRUE: Gültige Werte an di_ActDist (und di_ActSize). Wird mit x_Ack=TRUE zurückgesetzt. |
di_ActDist | DINT | Je nach Mode und Messung: Gemessener ODER letzter gültiger ODER maximaler Abstand der LH-Flanken bzw. HL-Flanken in Anwendereinheiten. |
di_ActSize | DINT | Je nach Mode und Messung: Gemessene ODER letzte gültige ODER minimale Länge der LH- zur HL-Flanke (oder der HL- zur LH-Flanke) in Anwendereinheiten. |
x_TP_Err | BOOL | TRUE: Fehlerhafte Messung, d.h. keine Flanke innerhalb Fenster gefunden. Bleibt solange TRUE, bis gültige Messung erfolgte oder x_Enable=FALSE. |
u_TP_ErrCnt | UINT | Anzahl aufeinander folgender fehlerhafter Messungen. Wird bei der erster gültigen Messung zurückgesetzt. |
x_Error | BOOL | TRUE: Fehler erkannt. Siehe Fehlertabelle. |
i_Error | INT | Fehlernummer. Siehe Fehlertabelle. |
s_ErrTxt | STRING | Fehlertext |
i_Error | Description: |
---|---|
0 | Kein Fehler aktiv. |
-10 | Reserviert. |
-20 | Kein Sensorsignal erkannt. Fehler wird gesetzt, wenn bereits 2 Defaultabstände (di_DefDist) gefahren wurden, aber noch keine Marke erkannt wurde. |
-999 | Keine Technologie-Lizenz. PLC mit Technologie-Lizenz verwenden. |
x_1stEdge | x_Valid | x_TP_Err | Bemerkung |
---|---|---|---|
FALSE | FALSE | FALSE | Nach Enable (x_Enable = TRUE). |
TRUE | FALSE | FALSE | Erste Marke/Länge erkannt. |
TRUE | TRUE | FALSE | Gültige Messung |
TRUE | TRUE-> FALSE | FALSE | Quittierung (x_Ack=TRUE) |
TRUE | TRUE | TRUE | Fehlerhafte Messung -> Letzter Messwert bzw. Defaultwert |
TRUE | TRUE-> FALSE | TRUE | Quittierung (x_Ack=TRUE) |
TRUE | FALSE | TRUE | Falscher LH-HL-Abstand (Länge) im Fenster. Ausgabe minimale Länge. |
TRUE | FALSE | TRUE-> FALSE | Quittierung (x_Ack=TRUE) |
TRUE-> FALSE | FALSE | FALSE | Reset (x_Enable = FALSE). |