FB_CTRL_NOTCH_FILTER

FB_CTRL_NOTCH_FILTER 1:

Der Funktionsbaustein stellt ein digitales Notch-Filter dar.

Übertragungsfunktion:

FB_CTRL_NOTCH_FILTER 2:

Bodediagramm:

FB_CTRL_NOTCH_FILTER 3:

mit:

FB_CTRL_NOTCH_FILTER 4:

VAR_INPUT

VAR_INPUT
    fIn         : FLOAT;
    fManValue   : FLOAT;
    eMode       : E_CTRL_MODE;
END_VAR

fIn : Eingangsgröße des Notch-Filters.

fManValue : Eingangsgröße die im Manual-Mode am Ausgang ausgegeben wird.

eMode : Eingang, der die Betriebsart des Bausteins festlegt.

VAR_OUTPUT

VAR_OUTPUT
    fOut         : FLOAT;
    eState       : E_CTRL_STATE;
    eErrorId         : E_CTRL_ERRORCODES;
    bError       : BOOL;
END_VAR

fOut : Ausgang des Notch-Filters.

eState : State des Funktionsbausteins.

eErrorId : Liefert bei einem gesetzten bError-Ausgang die Fehlernummer.

bError : Wird TRUE, sobald ein Fehler eintritt.

VAR_IN_OUT

VAR_IN_OUT
    stParams        : ST_CTRL_NOTCH_FILTER_PARAMS;
END_VAR

stParams : Parameterstruktur des Notch-Filters. Diese besteht aus den folgenden Elementen:

TYPE
ST_CTRL_NOTCH_FILTER_PARAMS:STRUCT    tCtrlCycleTime : TIME :=
T#0ms; (* controller cycle time [TIME] *)    tTaskCycleTime : TIME :=
T#0ms; (* task cycle time [TIME] *)    fNotchFreq : FLOAT := 0;
(* [Hz] *)    fBandwidth : FLOAT := 0;
(* Bandwidth in Hz = fBandwidth*fNotchFreq *)END_STRUCTEND_TYPE

tCtrlCycleTime : Zykluszeit, mit der der Regelkreis bearbeitet wird. Diese muss größer oder gleich der TaskCycleTime sein. Der Funktionsbaustein berechnet mit dieser Eingangsgröße intern, ob die Zustands- und Ausgangsgrößen im aktuellen Zyklus aktualisiert werden müssen.

tTaskCycleTime : Zykluszeit, mit der der Funktionsbaustein aufgerufen wird. Diese entspricht der Task-Zykluszeit der aufrufenden Task, wenn der Baustein in jedem Zyklus aufgerufen wird.

fNotchFreq : Notch-Frequenz in Hz

fBandwidth : Bandbreite bezogen auf die Notchfrequenz: Bandbreite in Hz = fNotchFreq * fBandwidth

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS Bibliotheken

TwinCAT v2.8

PC (i386)

TcControllerToolbox.lib

TwinCAT v2.9 ab Build 947

BC

TcControllerToolbox.lb6

TwinCAT v2.9 ab Build 956

BX

TcControllerToolbox.lbx