FB_BA_PWM

FB_BA_PWM 1:

Der Funktionsbaustein FB_BA_PWM errechnet aus einem analogen Eingangssignal rIn (0…100 %, intern fest begrenzt) und dem der Periodendauer nPrd [s] eine Ein- und eine Ausschaltzeit fActTiOn und fActTiOff [s].

Dabei entspricht:

Darüber hinaus gibt es die Möglichkeit über nMinSwiTi [s] die Schaltdauer nach unten hin zu begrenzen, um Schäden an Antrieben durch zu kurze Stellimpulse zu vermeiden. Dieses Verhalten gilt jedoch nur für 0> fIn >100!

Bei fIn = 0 bzw. 100 bleibt der Ausgang bQ jedoch gelöscht, bzw. gesetzt, Nach Ablauf der Periodenzeit wird erneut das aktuelle Eingangssignal bewertet. Steht es immer noch auf 0 bzw. 100 erfolgt kein Zustandswechsel von bQ.

Schaltverhalten

  1. Ein FALSE-Signal am Eingang bEn setzt den Baustein außer Funktion und bQ auf FALSE. Es werden lediglich die Ein-und Ausschaltzeiten kontinuierlich berechnet und an den Ausgängen fActTiOn /fActTiOff [s] angezeigt.
  2. Eine steigende Flanke am Eingang bEn aktiviert den Baustein: Er springt zunächst in einen Entscheidungs-Schritt. Je nach vorherigem Zustand vom Schaltausgang bQ wird nun in den umschaltenden Schritt gesprungen. Steht der Eingang fIn jedoch auf 0, so erfolgt ein unmittelbarer Sprung in den Aus-Schritt (bQ=FALSE) bzw. bei fIn=100 in den EIN-Schritt (bQ=TRUE), ohne auf den vorherigen Zustand von bQ zu achten. Die Mindest-Schaltzeit ist für diese beiden Fälle deaktiviert.
  3. In dem jeweils aktiven Schritt (EIN oder AUS) läuft nun ein Countdown-Timer mit dem aktuell errechneten Startwert ab, der sich aus dem Puls-Pause-Verhältnis ergibt. Der Ein- bzw. Aus-Schritt wird mit der errechneten Zeit durchlaufen, egal, ob sich währenddessen das Puls-Pause-Verhältnis ändert. Der jeweilige Countdown wird an den Ausgängen nRemTiOn / nRemTiOff in vollen Sekunden angezeigt.
  4. Nach Ablauf des Ein- bzw. des Aus-Schrittes erfolgt ein Rücksprung in den Entscheidungsschritt (Punkt 2).

FB_BA_PWM 2: Eingänge

VAR_INPUT
  bEn             : BOOL;
  fIn             : REAL;
  nPrd            : UDINT;
  nMinSwiTi       : UDINT;
END_VAR

Name

Typ

Beschreibung

bEn

BOOL

Aktivierung der Puls-Weiten-Modulation.

fIn

REAL

Eingangssignal, intern auf 0…100 % fest begrenzt.

nPrd

UDINT

Periodenzeit [s]. Intern begrenzt auf einen Minimalwert von 0.

nMinSwiTi

UDINT

Minimale Einschaltzeit [s], zur Vermeidung zu kurzer Pulse. Intern begrenzt auf Werte von 0 bis nPrd.

FB_BA_PWM 3: Ausgänge

VAR_OUTPUT
  bQ              : BOOL;
  bLmtSwiTi       : BOOL;
  fActTiOn        : REAL;
  fActTiOff       : REAL;
  nRemTiOn        : UDINT;
  nRemTiOff       : UDINT;
END_VAR

Name

Typ

Beschreibung

bQ

BOOL

PWM-Ausgang.

bLmtSwiTi

BOOL

Informationsausgang, dass das Eingangssignal so niedrig ist, dass mit der minimalen Einschaltzeit begrenzt wird.

fActTiOn

REAL

Informationsausgang: errechnete Einschaltzeit [s].

fActTiOff

REAL

Informationsausgang: errechnete Ausschaltzeit [s].

nRemTiOn

UDINT

Countdown Einschalt-Timer [s].

nRemTiOff

UDINT

Countdown Ausschalt-Timer [s].

Voraussetzungen

Entwicklungsumgebung

Erforderliche SPS-Bibliothek

TwinCAT ab v3.1.4024.22

Tc3_BA2 ab v5.2.5.0