Programmierung des Standard Encoder

Überblick

Ein Standard Encoder wird stets über den Funktionsbaustein Encoder_LMC058 verwaltet.

Hinzufügen eines Standard Encoder-Funktionsbausteins

Schritt

Aktion

1

Wählen Sie die Registerkarte Bibliotheken im Software-Katalog und klicken Sie auf Bibliotheken.

Wählen Sie Steuerung > LMC058 > LMC058 Expert IO > ENCODER > ENCODER_LMC058 in der Liste, ziehen Sie das Element auf das POU-Fenster und legen Sie es dort ab.

2

Geben Sie den Instanznamen von Encoder_LMC058 ein oder wählen Sie die Funktionsbausteininstanz mit einem Klick auf:

G-SE-0005277.1.gif-high.gif

 

 

Mit der Eingabehilfe kann die Encoder_LMC058-Instanz in folgendem Pfad ausgewählt werden: Globale Variablen > SPS-Logik > IoConfig_Globals.

G-SE-0006157.1.gif-high.gif

 

 

Verwendung der E/A-Variablen

In der folgenden Tabelle werden die Eingangsvariablen beschrieben:

Eingänge

Typ

Kommentar

EN_Enable

BOOL

Wenn der Eingang EN konfiguriert ist, wird die Encoder-Freigabe über diesen Eingang autorisiert.

EN_Preset

BOOL

Wenn der Eingang Z oder REF konfiguriert ist, wird die Zählervoreinstellung über diese Eingänge autorisiert.

EN_Cap

BOOL

Wenn mindestens ein Eingang CAP konfiguriert ist, wird die Erfassungsfunktion über diese Eingänge autorisiert.

EN_Compare

BOOL

TRUE = Aktiviert die Vergleichsoperation unter Verwendung der Schwellenwerte 0, 1, 2, 3:

oBasisvergeich (Ausgangsbits TH0, TH1, TH2, TH3)

oReflex (Ausgangsbits Reflex0, Reflex1)

oEreignisse (zur Auslösung externer Tasks bei Schwellenwertüberschreitung)

EN_Out0

BOOL

TRUE = Autorisiert die Rückmeldung des Reflex0-Werts über den physikalischen Ausgang 0.

EN_Out1

BOOL

TRUE = Autorisiert die Rückmeldung des Reflex1-Werts über den physikalischen Ausgang 1.

F_Enable

BOOL

Forciert die Enable-Bedingung.

F_Preset

BOOL

Forciert die Preset-Bedingung.

F_Out0

BOOL

TRUE = Forciert den physikalischen Ausgang 0 auf 1 (sofern Reflex0 konfiguriert ist).

F_Out1

BOOL

TRUE = Forciert den physikalischen Ausgang 1 auf 1 (sofern Reflex1 konfiguriert ist).

ACK_Overflow

BOOL

Setzt Overflow_Flag an der steigenden Flanke zurück

ACK_Preset

BOOL

Setzt Preset_Flag an der steigenden Flanke zurück.

ACK_Cap0

BOOL

Setzt Cap0_Flag an der steigenden Flanke zurück.

ACK_Cap1

BOOL

Setzt Cap1_Flag an der steigenden Flanke zurück.

SuspendCompare

BOOL

TRUE = Die Ergebnisse der Vergleichsoperation werden eingefroren:

oTH0, TH1, TH2, TH3, Reflex0 und Reflex1 des Bausteins behalten ihren letzen Wert.

oDie physikalischen Ausgänge 0 und 1 behalten ihren letzten Wert bei.

oEreignisse werden maskiert.

EN_Compare, EN_Reflex0, EN_Reflex1, F_Out0 und F_Out1 bleiben während des Setzens von SupendCompare aktiv.

In der folgenden Tabelle werden die Ausgangsvariablen beschrieben:

Ausgänge

Typ

Kommentar

ENC_REF

EXPERT_REF

Referenz des Standard Encoder.

Ist mit dem Eingang EXPERT_REF_IN des Funktionsbausteins Administrative zu verwenden.

Encoder_Err

BOOL

TRUE = Gibt an, dass ein Fehler erkannt wurde.

Über den Funktionsbaustein EXPERTGetDiag erhalten Sie weitere Informationen zum erkannten Fehler.

Validity

BOOL

TRUE = Gibt an, dass die Ausgangswerte am Funktionsbaustein gültig sind.

TRUE nach der ersten Voreinstellung (Preset)

TH0

BOOL

Wird auf 1 gesetzt, wenn CurrentValue (aktueller Wert) > Schwellenwert 0 (falls konfiguriert).

TH1

BOOL

Wird auf 1 gesetzt, wenn CurrentValue (aktueller Wert) > Schwellenwert 1 (falls konfiguriert).

TH2

BOOL

Wird auf 1 gesetzt, wenn CurrentValue (aktueller Wert) > Schwellenwert 2 (falls konfiguriert).

TH3

BOOL

Wird auf 1 gesetzt, wenn CurrentValue (aktueller Wert) > Schwellenwert 3 (falls konfiguriert).

Overflow_Flag

BOOL

Wird auf 1 gesetzt, wenn der Encoder seine Grenzwerte überschreitet.

Preset_Flag

BOOL

Wird nach dem Encoder-Preset auf 1 gesetzt.

Cap0_Flag

BOOL

Wird auf 1 gesetzt, wenn im Erfassungsregister ein neu erfasster Wert gespeichert wird.

Dieses Flag muss zurückgesetzt werden, damit erneut Werte erfasst werden können.

Cap1_Flag

BOOL

Wird auf 1 gesetzt, wenn im Erfassungsregister ein neu erfasster Wert gespeichert wird.

Dieses Flag muss zurückgesetzt werden, damit erneut Werte erfasst werden können.

Reflex0

BOOL

Status von Reflex0.

Reflex1

BOOL

Status von Reflex1.

Out0

BOOL

Status von Output0.

Out1

BOOL

Status von Output1.

Low_Limit

BOOL

Wird auf 1 gesetzt, wenn der Encoder den Wert - 2.147.483.648 überschreitet.

Wird beim Encoder-Preset auf 0 zurückgesetzt.

High_Limit

BOOL

Wird auf 1 gesetzt, wenn der Encoder den Wert - +2.147.483.647 überschreitet.

Wird beim Encoder-Preset auf 0 zurückgesetzt.

EncoderValue

DINT

Aktueller Wert des Encoders.