FB_BA_BrightnessPresenceDALI

FB_BA_BrightnessPresenceDALI 1:

Dieses Template dient zum Auslesen eines kombinierten DALI-Helligkeits- und Präsenzmelders.

Datenaustausch HMI

Der Datenaustausch mit der HMI wird in der Basisklasse FB_BA_BaseBrightnessPresence (interner Baustein) realisiert. In diesem Template sichtbar ist die Verwendung folgender Variable:

Funktion

Das Gerät selbst wird spezifiziert durch die Instanznummer der Präsenz, nInstancePresence, und der Instanznummer der Helligkeit, nInstanceBrightness. Hinzu kommt die gerätespezifische Auflösung, nResBrtns. Diese drei Kenngrössen sind von Hersteller zu Hersteller verschieden.

Im internen Baustein BrightnessPresenceSns wird die Helligkeit zyklisch (Intervall nPrdQueryBrtns [s]) abgefragt. Bei der Präsenz hingegen wird das geräteinterne Ereignissystem (notifications) verwendet, welches selbsttätig ein Telegramm losschickt, sobald Präsenz bzw. Abwesenheit erkannt wird.

Die DALI-spezifischen Parameter dieses Bausteines (nInstPrc, nInstBrtns und nResBrtns) werden durch Ein TRUE-Signal an bInitialize oder über die HMI durch bInitialize_In an das betreffende Gerät übertragen. Die Adressierung des Gerätes erfolgt über die Benennung der Adresse (nAdr) und der Verknüpfung des Kommunikationsbausteines der entsprechenden DALI-Linie über ipDALICommunication.

Der Baustein PresenceDelay stellt ein abfallverzögertes Signal bPresence zur Verfügung. Nach Ablauf der Verzögerungszeit wird zusätzlich eine positive Flanke an bRstSwi ausgebeben, mit der die Merkerschaltungen von Licht und Jalousie abgelöscht werden können.

Präsenz und Helligkeitswert werden an die Objekte Presence und Brightness verknüpft und stehen so im BACnet zur Verfügung.

Eine eventuelle Skalierung der Helligkeit kann durch entsprechende Parametrierung von Brightness im FB_Init durch die Parameter fResolution und fScaleOffset erfolgen.

FB_BA_BrightnessPresenceDALI 2:

Die Initialisierung des Templates erfolgt innerhalb der Methode FB_Init.

Blockschaltbild

FB_BA_BrightnessPresenceDALI 3:

Syntax

FUNCTION_BLOCK FB_BA_BrightnessPresenceDALI EXTENDS FB_BA_Ext_BrightnessPresence_Base
VAR_INPUT
  bEn                      : BOOL;
  bInitialize              : BOOL;
  bResetPresence           : BOOL;
  nPrdQueryBrtns           : UDINT  := 1;
END_VAR
VAR_OUTPUT
  bPresence                : BOOL;
  bPresenceDelayActive     : BOOL;
  bRstSwi                  : BOOL;
  fBrightness              : REAL;
  bInitializing            : BOOL;
  bErr                     : BOOL;
END_VAR
VAR_INPUT CONSTANT PERSISTENT
  nAdr                     : BYTE;
  nInstancePresence        : BYTE;
  nInstanceBrightness      : BYTE;
  nResBrtns                : BYTE;
  ipDALICommunication      : Tc3_DALI.I_DALICommunication;
END_VAR
VAR_INPUT CONSTANT
  BrightnessPresenceSns    : FB_BA_BrtnsPrcDALI;
  PresenceDelay            : FB_BA_PresenceMonitoring;
  Brightness               : FB_BA_AI_RAW;
  Presence                 : FB_BA_BI_RAW;
END_VAR

FB_BA_BrightnessPresenceDALI 4: VAR_INPUT

Name

Typ

Beschreibung

bEn

BOOL

Freigabe des Bausteines: ein TRUE-Signal an diesem Eingang aktiviert die Funktion.

bInitialize

BOOL

Eine positive Flanke an diesem Eingang startet die DALI-Initialisierungsroutine, welche die eingestellten Parameter in das DALI-Gerät überträgt, siehe FB_BA_Swi4DALI.

bResetPresence

BOOL

Setzt die interne Abfallverzögerung der Präsenz zurück und triggert dadurch einmal den Ausgang bRstSwi.

nPrdQueryBrtns

UDINT

Abfrageintervall der Helligkeit in Sekunden. Die Deklaration dieser Variable als Eingang soll eine variable Abfragegeschwindigkeit ermöglichen. So genügt bei einer Konstantlichtregelung beispielsweise zunächst ein langsames Abfrageintervall bis eine größere auszugleichende Abweichung erkannt wird, die dann mit einem kürzeren Abfrageintervall ausgeregelt wird.

FB_BA_BrightnessPresenceDALI 5: VAR_OUTPUT

Name

Typ

Beschreibung

bPresence

BOOL

Präsenzmelde-Ausgang.

bPresenceDelayActive

BOOL

Dieser Ausgang steht dann auf TRUE, wenn keine Präsenz mehr erkannt wird und der Präsenzmelde-Ausgang bPresence nur noch durch die interne Abfallverzögerung gesetzt ist.

bRstSwi

BOOL

Rücksetzausgang für Handübersteuerungen.

Wird für einen SPS-Zyklus nach Ablauf der der internen Präsenzverzögerung (siehe PresenceDelay) oder bei einem TRUE-Signal am Eingang bResetPresence gesetzt,

fBrightness

REAL

Gemessene Helligkeit. Die Einheit ist herstellerspezifisch. Eine Umrechnung in Lux muss, falls gewünscht, beim Hersteller erfragt werden.

bInitializing

BOOL

Der Sensor befindet sich in der DALI-Initialisierungsphase, d.h. die eingetragenen Parameter werden in das DALI-Gerät übertragen.

bErr

BOOL

Fehlerausgang. Ein Klartext wird in TwinCAT im Ausgabefenster in der Fehlerliste (Error List) ausgegeben.

FB_BA_BrightnessPresenceDALI 6: VAR_INPUT CONSTANT PERSISTENT

Name

Typ

Beschreibung

nAdr

BYTE

DALI-Einzeladresse des Sensors.

nInstancePresence

BYTE

Nummer der abzufragenden Präsenz-Instanz.

nInstanceBrightness

BYTE

Nummer der abzufragenden Helligkeits-Instanz.

nResBrtns

BYTE

Herstellerspezifische Helligkeits-Auflösung.

ipDALICommunication

Tc3_DALI.I_DALICommunication

Interface-Pointer auf den DALI-Kommunikationsbaustein.

FB_BA_BrightnessPresenceDALI 7: VAR_INPUT CONSTANT

Name

Typ

Beschreibung

BrightnessPresenceSns

FB_BA_BrtnsPrcDALI

Baustein zum Auslesen des DALI-Helligkeits- und Präsenzsensors.

PresenceDelay

FB_BA_PresenceMonitoring

Universelles Präsenzmeldetemplate mit Rücksetzeingängen für Verzögerungstimer und Handfunktion.

Brightness

FB_BA_AI_RAW

Dieser Baustein dient zum einen der Umrechnung des herstellerspezifischen Rohwertes der Helligkeit auf eine gewünschte Einheit, beispielsweise Lux und zum anderen zur Darstellung des Wertes im BACnet.

Presence

FB_BA_BI_RAW

Baustein zur Darstellung des Präsenzzustandes im BACnet.

Voraussetzungen

Entwicklungsumgebung

Erforderliche Function

TwinCAT ab v3.1.4024.35

TF8040 | TwinCAT Building Automation ab V5.0.0.0