FB_ALY_Energy
Das Energy-Modul eignet sich für die Energiebetrachtung verschiedener elektrischer Komponenten. Die Eingangsdaten von Strom und Spannung werden über ein konfigurierbares Intervall gemittelt und anschließend verrechnet.
Syntax
Definition:
FUNCTION_BLOCK FB_ALY_Energy
VAR_INPUT
bPersistent: BOOL;
END_VAR
VAR_OUTPUT
ipResultMessage: Tc3_EventLogger.I_TcMessage;
bError: BOOL;
bNewResult: BOOL;
bConfigured: BOOL;
fElectricalPower: LREAL;
fElectricalEnergy: LREAL;
END_VAR
Eingänge
Name | Typ | Beschreibung |
---|---|---|
bPersistent | BOOL | Ist der Wert |
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 |
fElectricalPower | LREAL | Elektrische Leistung in Watt. |
fElectricalEnergy | LREAL | Elektrische Energie in Wattstunden. |
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
fbEnergy : FB_ALY_Energy;
fbSystemTime : FB_ALY_GetSystemTime;
fSampleRate : LREAL := 1000.0;
tInterval : LTIME := LTIME#1S;
fVoltageScaleFactor : LREAL := 10.0;
fCurrentScaleFactor : LREAL := 10.0;
bConfigure : BOOL := TRUE;
fInVoltage : LREAL;
fInCurrent : LREAL;
END_VAR
// Get current system time
fbSystemTime.Call();
// Configure algorithm
IF bConfigure THEN
bConfigure := FALSE;
fbEnergy.Configure(fSampleRate, tInterval, fVoltageScaleFactor, fCurrentScaleFactor);
END_IF
// Call algorithm
fbEnergy.SetChannelValue(1, fInVoltage);
fbEnergy.SetChannelValue(2, fInCurrent);
fbEnergy.Call(fbSystemTime.tSystemTime);
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS-Bibliotheken |
---|---|---|
TwinCAT v3.1.4024.0 | PC oder CX (x64, x86) | Tc3_Analytics |