FB_BA_FIFO08

FB_BA_FIFO08 1:

Der Funktionsbaustein FB_BA_FIFO08 ermöglicht eine Folgesteuerung von bis zu acht Aggregaten mit automatischem Wechsel der Einschaltreihenfolge nach Betriebsstunden.
Der Funktionsbaustein steht in zwei Ausführungen zur Verfügung: für eine Sequenz von vier und von acht Aggregaten.

In der Abfolge haben die Aggregate mit den wenigen Betriebsstunden Vorrang vor den mit vielen Betriebsstunden.

Eine steigende Flanke an bChg erzwingt einen Folgewechsel. Die Aggregate mit den geringsten Betriebsstunden werden in der FIFO nach vorne gesetzt und somit vorrangig eingeschaltet.
In der Folge werden nur Aggregate eingetragen, welche an den Eingängen bEn01…bEn08 frei gegeben sind. nNum gibt die Anzahl der angeforderten Aggregate an.
An den Eingängen nActvTi01 bis nActvTi08 werden die Betriebsstunden der Aggregate eingetragen. Werden diese Eingänge alle konstant auf Null gesetzt, erfolgt der Folgewechsel nur in Abhängigkeit von bChg zyklisch gesteuert.
Dabei fällt immer das erste Aggregat aus dem FIFO heraus, die anderen werden aufgeschoben, und das erste Aggregat hinten in dem FIFO wieder angehängt. Somit rotieren die Aggregate in ihrer Folge.

FB_BA_FIFO08 2: Eingänge

VAR_INPUT
  bEn           : BOOL;
  nNum          : UDINT;
  bChg          : BOOL;
  bEn01         : BOOL;
  bEn02         : BOOL;
  bEn03         : BOOL;
  bEn04         : BOOL;
  bEn05         : BOOL;
  bEn06         : BOOL;
  bEn07         : BOOL;
  bEn08         : BOOL;
  nActvTi01     : UDINT;
  nActvTi02     : UDINT;
  nActvTi03     : UDINT;
  nActvTi04     : UDINT;
  nActvTi05     : UDINT;
  nActvTi06     : UDINT;
  nActvTi07     : UDINT;
  nActvTi08     : UDINT;
EN_VAR

Name

Typ

Beschreibung

bEn

BOOL

Bausteinfreigabe

nNum

UDINT

Anzahl der Aggregate

bChg

BOOL

Folgewechsel erzwingen

bEn01...bEn08

BOOL

Freigabe Aggregat 1...Freigabe Aggregat 8.

nActvTi01...nActvTi08

UDINT

Betriebsstunden Aggregat 1...Betriebsstunden Aggregat 8.

FB_BA_FIFO08 3: Ausgänge

VAR_OUTPUT
  bQ01        : BOOL;
  bQ02        : BOOL;
  bQ03        : BOOL;
  bQ04        : BOOL;
  bQ05        : BOOL;
  bQ06        : BOOL;
  bQ07        : BOOL;
  bQ08        : BOOL;
  nNextOn     : UDINT;
  nNextOff    : UDINT;
  aFIFO       : ARRAY [1..8] OF UDINT;
  nNumOfEn    : UDINT;
END_VAR

Name

Typ

Beschreibung

bQ01...bQ08

BOOL

Schaltet Aggregat 1…8.

nNextOn

UDINT

Nummer des Aggregates, welches als nächstes eingeschaltet wird.

nNextOff

UDINT

Nummer des Aggregates, welches als nächstes ausgeschaltet wird.

aFIFO

ARRAY OF UDINT

FIFO-Speicher als Feld.

nNumOfEn

UDINT

Anzahl Teilnehmer in Abhängigkeit der einzelnen Freigaben.

Voraussetzungen

Entwicklungsumgebung

Erforderliche SPS-Bibliothek

TwinCAT ab v3.1.4024.22

Tc3_BA2 ab v5.2.5.0