FB_CMA_Downsampling

Downsampling von Signaldaten durch Kopieren der Signaldaten von einem SPS Puffers zu einem anderen SPS Puffer (Array).

Ein Signal, als Puffer vorliegend (z.B. Oversampling Array), kann um einen individuellen Teiler verlangsamt abgetastet werden. Downsampling ist eine Möglichkeit niedrigere Frequenzen zu analysieren ohne die FFT Länge vergrößern zu müssen, um eine hohe Auflösung beizubehalten.

Üblicherweise wird ein Downsampling Block in der Condition Monitoring Analysekette vor einem FB_CMA_Source angefügt.

Ein- und Ausgänge

Eingangsparameter

VAR_INPUT
    nDivider   : UDINT := 1;    // given input signal is sampled down by the specified divider. (1 = no downsampling)
    nChannels  : UDINT;         // number of channels in data buffer (=1:onedimensional dataset, >1:twodimensional dataset)
END_VAR

Ausgangsparameter

VAR_OUTPUT
    bError         : BOOL;                           // TRUE if an error occurs. Reset by next method call.
    hrErrorCode    : HRESULT;                        // '< 0' = error; '> 0' = info; '0' = no error/info
    ipErrorMessage : I_TcMessage := fbErrorMessage;  // Shows detailed information about occurred errors, warnings and more.
    nCntResults    : ULINT;                          // Counts outgoing results (MultiArrays were calculated and sent to transfer tray).
END_VAR
  • bError: Der Ausgang ist TRUE, falls ein Fehler auftritt.
  • hrErrorCode: Falls ein Fehler auftritt, wird ein entsprechender Fehlercode vom Typ HRESULT ausgegeben. Mögliche Werte sind in der Liste der Fehlercodes erläutert.
  • ipErrorMessage: Beinhaltet nähere Informationen zum aktuellen Rückgabewert. Siehe hierzu den Abschnitt Fehlerbeschreibung und Information. Für diesen speziellen Schnittstellenzeiger ist intern sichergestellt, dass er immer gültig/zugewiesen ist.

Methoden

Call():

SchreibtDaten des Eingangsdatenpuffers in den Ausgangsdatenpuffer. Der Ausgangsdatenpuffer ist vollständig gefüllt sobald bNewResult gesetzt ist.

METHOD Call : HRESULT
VAR_INPUT
    pDataIn       : POINTER TO BYTE;  // address of data buffer (e.g. oversampling data)
    nDataInSize   : UDINT;            // size of data buffer in bytes
    pDataOut      : POINTER TO BYTE;  // address of result buffer
    nDataOutSize  : UDINT;            // size of data buffer in bytes
    nElementSize  : UDINT;            // Size of element type in bytes
END_VAR
VAR_OUTPUT
    bNewResult    : BOOL;             // TRUE every time when outgoing data buffer was calculated.
    bError        : BOOL;             // TRUE if an error occurs.
    hrErrorCode   : HRESULT;          // '< 0' = error; '> 0' = info; '0' = no error/info
END_VAR
FB_CMA_Downsampling 1:

Falls ein Timeout eintritt oder kein MultiArray Puffer für das Ergebnis verfügbar ist, so gehen weder die Eingangsdaten noch die Ergebnisdaten verloren. Sie werden beim nächsten Aufruf weitergeleitet.

FB_CMA_Downsampling 2:

Falls ein Fehler auftritt, wird keine Kopieraktion ausgeführt.

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken

TwinCAT v3.1.4022.25

PC or CX (x86, x64)

Tc3_CM, Tc3_CM_Base

FB_CMA_Downsampling 3:

Eingeschränkter Funktionsumfang bereits mit CM 3.1 verfügbar. Siehe Abschnitt Kompatibilität.