FB_ALY_IntervalPieceCounter_1Ch

Der Interval Piece Counter 1Ch zählt die Anzahl der ausgelösten Ereignisse innerhalb eines konfigurierten Intervalls, das beginnt, wenn der Wert des Flags Start Intervall TRUE ist. Ein Ereignis wird ausgelöst, wenn das Signal des Eingangskanals die konfigurierte Flanke bei einer bestimmten Schwelle passiert. Die Berechnung wird neu gestartet, wenn die Zeit des Intervalls abgelaufen ist und der Wert des Flags Start Intervall wieder True ist.

Syntax

Definition:

FUNCTION_BLOCK FB_ALY_IntervalPieceCounter_1Ch
VAR_INPUT
    bPersistent: BOOL;
END_VAR
VAR_OUTPUT
    ipResultMessage: Tc3_EventLogger.I_TcMessage;
    bError: BOOL;
    bNewResult: BOOL;
    bConfigured: BOOL;
    bExecutingInterval: BOOL;
    nNumIntervals: ULINT;
    nCountLastInterval: ULINT;
    nCountCurrentInterval: ULINT;
    nCountMin: ULINT;
    nCountMax: ULINT;
    fbTimeCountMin: FB_ALY_DateTime;
    fbTimeCountMax: FB_ALY_DateTime;
    fbTimeCurrentInterval: FB_ALY_Timespan;
END_VAR

FB_ALY_IntervalPieceCounter_1Ch 1: Eingänge

Name

Typ

Beschreibung

bPersistent

BOOL

Ist der Wert TRUE, werden die internen Daten persistent gespeichert.

FB_ALY_IntervalPieceCounter_1Ch 2: Ausgänge

Name

Typ

Beschreibung

ipResultMessage

I_TcMessage

Beinhaltet nähere Informationen zum aktuellen Rückgabewert. Für diesen speziellen Schnittstellenzeiger ist intern sichergestellt, dass er immer gültig/zugewiesen ist.

bError

BOOL

Der Ausgang ist TRUE, wenn ein Fehler auftritt.

bNewResult

BOOL

Wenn ein neues Ergebnis berechnet wurde, ist der Ausgang TRUE.

bConfigured

BOOL

Zeigt TRUE an, wenn der Baustein erfolgreich konfiguriert ist.

bExecutingInterval

BOOL

TRUE, wenn das Intervall ausgeführt wird.

nNumIntervals

ULINT

Anzahl der verstrichenen Intervalle.

nCountLastInterval

ULINT

Anzahl der Ereignisse im letzten Intervall.

nCountCurrentInterval

ULINT

Anzahl der Ereignisse im aktuellen Intervall.

nCountMin

ULINT

Minimale Anzahl von Ereignissen im aktuellen Intervall.

nCountMax

ULINT

Maximale Anzahl von Ereignissen im aktuellen Intervall.

fbTimeCountMin

FB_ALY_DateTime

Zeitstempel von nCountMin.

fbTimeCountMax

FB_ALY_DateTime

Zeitstempel von nCountMax.

fbTimeCurrentInterval

FB_ALY_Timespan

Verstrichene Zeit im aktuellen Intervall.

FB_ALY_IntervalPieceCounter_1Ch 3: Eigenschaften

Name

Typ

Zugriff

Definitionsort

Initialwert

Beschreibung

fTolerance

LREAL

Get, Set

Lokal

0.0

Toleranzwert für die Vergleiche Equal / NotEqual

FB_ALY_IntervalPieceCounter_1Ch 4: Methoden

Name

Definitionsort

Beschreibung

Call()

Local

Methode zur Berechnung der Ausgänge für eine bestimmte Konfiguration.

Configure()

Local

Allgemeine Konfiguration des Algorithmus mit seinen parametrisierten Bedingungen.

ConfigureChannel()

Local

Kanalspezifische Konfiguration für den jeweiligen Algorithmus.

Reset()

Local

Setzt alle internen Zustände oder die bisher durchgeführten Berechnungen zurück.

SetChannelValue()

Local

Methode zur Übergabe von Werten an den Algorithmus.

Pause()

Local

Methode zum Pausieren der Ausführung inklusive der internen Zeitintervalle.

Beispiel

VAR
    fbIntervalPieceCounter : FB_ALY_IntervalPieceCounter_1Ch;
    fbSystemTime : FB_ALY_GetSystemTime;
    stThresholdEdge : ST_ALY_Threshold;
    bResetOnMultipleStart : BOOL := FALSE;
    tInterval : LTIME := LTIME#5M;
    bConfigure : BOOL := TRUE;
    bStartInterval : BOOL := FALSE;
    nInput : INT;
END_VAR
// Configure algorithm
IF bConfigure THEN
    bConfigure := FALSE;
    
    stThresholdEdge.eComparisonOperator := E_ALY_ComparisonOperator.Equals; 
    stThresholdEdge.fThreshold := 1;
    
    fbIntervalPieceCounter.ConfigureChannel(stThresholdEdge);
    fbIntervalPieceCounter.Configure(bResetOnMultipleStart, tInterval);
END_IF

// Get current system time
fbSystemTime.Call();

// Call algorithm
fbIntervalPieceCounter.SetChannelValue(nInput);
fbIntervalPieceCounter.Call(fbSystemTime.tSystemTime, bStartInterval)

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken

TwinCAT v3.1.4024.0

PC oder CX (x64, x86)

Tc3_Analytics