FB_ALY_StepResponse_1Ch
Step Response 1Ch identifiziert Parameter der Sprungantwort einer PT2-Strecke. Dazu zählen die Verzugszeit Te, die Ausgleichszeit Tb, die Ausregelzeit Tcs sowie der Zeitpunkt des Maximums tm.

Um zu erkennen, ob die Strecke eingeschwungen ist, wird nach einem lokalen Minimum oder Maximum gesucht. Ist dieses innerhalb des Toleranzbandes (grau eingezeichnet), wird angenommen, dass die Strecke eingeschwungen ist. Erst dann wird die Ausregelzeit gesetzt.
Der Algorithmus startet, wenn ein neuer Sollwert außerhalb des zuvor gespeicherten Toleranzbandes liegt.
Syntax
Definition:
FUNCTION_BLOCK FB_ALY_StepResponse_1Ch
VAR_OUTPUT
ipResultMessage: Tc3_EventLogger.I_TcMessage;
bError: BOOL;
bNewResult: BOOL;
bConfigured: BOOL;
bExecuting: BOOL;
fbEquivalentDeadTime: FB_ALY_Timespan;
fbEquivalentTimeConstant: FB_ALY_Timespan;
fbSettlingTime: FB_ALY_Timespan;
fbTimeMax: FB_ALY_DateTime;
fError: LREAL;
END_VAR
Ausgänge
Name | Typ | Beschreibung |
---|---|---|
ipResultMessage | 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 |
bNewResult | BOOL | Wenn ein neues Ergebnis berechnet wurde, ist der Ausgang |
bConfigured | BOOL | Zeigt |
bExecuting | BOOL |
|
fbEquivalentDeadTime | FB_ALY_Timespan | Verzugszeit der Strecke. Zeitspanne zwischen dem Start der Sprungantwort und dem Schnittpunt der Wendetangenten mit dem Startwert. |
fbEquivalentTimeConstant | FB_ALY_Timespan | Ausgleichszeit der Strecke. Zeitspanne zwischen dem Schnittpunt der Wendetangenten mit dem Startwert und dem Schnittpunt der Wendetangenten mit dem Sollwert. |
fbSettlingTime | FB_ALY_Timespan | Ausregelzeit der Strecke. |
fbTimeMax | FB_ALY_DateTime | Zeitpunkt des maximalen Überschwingers. |
fError | LREAL | Differenz zwischen Eingangswert und Sollwert. |
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. |
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. |
Beispiel
VAR
fbStepResponse : FB_ALY_StepResponse_1Ch;
fbSystemTime : FB_ALY_GetSystemTime;
fThresholdReversal : LREAL;
bUseRelativeTolerance : BOOL;
fErrorTolerance : LREAL;
bConfigure : BOOL := TRUE;
fInput : LREAL;
fSetpoint : LREAL;
END_VAR
// Get current system time
fbSystemTime.Call();
// Configure algorithm
IF bConfigure THEN
bConfigure := FALSE;
fbStepResponse.Configure(fThresholdReversal, bUseRelativeTolerance, fErrorTolerance);
END_IF
// Call algorithm
fbStepResponse.SetChannelValue(1, fInput);
fbStepResponse.SetChannelValue(2, fSetpoint);
fbStepResponse.Call(fbSystemTime.tSystemTime)
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS-Bibliotheken |
---|---|---|
TwinCAT v3.1.4024.0 | PC oder CX (x64, x86) | Tc3_Analytics |