MCV_CamSwitch

Der FB MCV_CamSwitch realisiert den Ausgang eines nockengesteuerten Schalters, der einer Achse zugeordnet ist. Dabei ist der Bereich des Nockens frei parametrierbar.

Den FB-internen Berechnungen liegt ein Modulo-Koordinatensystem mit dem Wertebereich [0, 3600000] 0,1 µm bzw. 10-4 ° zugrunde.

Zusätzlich muss die Voraussetzung erfüllt sein, dass von der Achse je SPS-Zyklus nicht mehr als der halbe Modulowertebereich zurückgelegt wird.

Blockdiagramm

Parameter des FB

VAR_IN_OUT

Variablenname

Datentyp

Beschreibung

Axis

AXIS_REF

Achsreferenz

VAR_INPUT

Variablenname

Datentyp

Beschreibung

Enable

BOOL

Aktiviert den nockengesteuerten Schalter.

FirstOnPosition

LREAL

Position der Achse, bei der der Ausgang des nockengesteuerten Schalters von FALSE auf TRUE wechselt, wenn sich die Achse in positive Richtung bewegt.

Standard-Einheit [0,1µm bzw. 10-4 °]

LastOnPosition

LREAL

Position der Achse, bei der der Ausgang des nockengesteuerten Schalters von TRUE auf FALSE wechselt, wenn sich die Achse in positiver Richtung bewegt.

Standard-Einheit [0,1µm bzw. 10-4 °]

CompTime

LREAL

Kompensationszeit, um welche die Einschaltphase des Schalters vorgezogen oder verzögert wird.

Standard-Einheit [1ms]

PosType

INT

Auswahl ob Soll- oder Istposition der Achse zum Vergleich mit den Eingangsgrößen und zur Berechnung der durch die Kompensationszeit veränderten Einschalt-/Ausschaltposition herangezogen werden soll.

0: Sollposition der Achse (ACTIVE_POS)

1: Istposition der Achse (CURRENT_POS)

VAR_OUTPUT

Variablenname

Datentyp

Beschreibung

Active

BOOL

Zeigt an, dass das der nockengesteuerte Schalter aktiv ist.

State

BOOL

Ausgang des nockengesteuerten Schalters.

Der Ausgang ist TRUE, wenn

  1. der Wert der Achsposition zwischen „FirstOnPosition“ und „LastOnPosition“ liegt
  2. die Achsposition zum Zeitpunkt t0 vor und dem darauffolgenden t1 hinter dem durch „FirstOnPosition“ und „LastOnPosition“ aufgespannten Bereich liegt. Das Signal liegt dann mindestens 1 SPS-Zyklus lang auf TRUE.

Error

BOOL

Ist TRUE, wenn ein Fehler im FB auftritt

ErrorID

WORD

Fehlerkennung

Pulsed

BOOL

Dient zu Visualisierungszwecken. Wird der Ausgang „State“ TRUE, zeigt der Ausgang „Pulsed“ für 1s ebenfalls TRUE.

Verhalten des FB:

Auswirkung der Kompensationszeit auf Schaltzeitpunkte
Abb.: Auswirkung der Kompensationszeit auf Schaltzeitpunkte

Fall 1: „FirstOnPosition“ < „LastOnPosition“

Verhalten von Ausgang „State“, wenn „FirstOnPosition“ < „LastOnPosition“
Abb.: Verhalten von Ausgang „State“, wenn „FirstOnPosition“ < „LastOnPosition“

Fall 2: „FirstOnPosition“ > „LastOnPosition“

Verhalten von Ausgang „State“, wenn „FirstOnPosition“ > „LastOnPosition“
Abb.: Verhalten von Ausgang „State“, wenn „FirstOnPosition“ > „LastOnPosition“