FB_DALIV2GetSettingsSingleDevice

FB_DALIV2GetSettingsSingleDevice 1:

Im Gegensatz zum Baustein FB_DALIV2GetSettings() liest dieser Baustein die Variablen (MIN LEVEL, MAX LEVEL, FADE TIME, ...) von nur einem bestimmten Gerät aus und speichert diese in einer Struktur vom Typ ST_DALIV2DeviceSettings.

Durch eine positive Flanke an dem Eingang bStart wird der Baustein gestartet und der Ausgang bBusy geht auf TRUE. Anschließend werden nacheinander die Einstellungen des Vorschaltgerätes ausgelesen und in die betreffenden Variablen der Struktur geschrieben. Tritt während des Auslesevorganges ein Lesefehler bei einem Gerät auf, so wird das Element nErrors der jeweiligen Struktur gesetzt, ohne dass jedoch der Funktionsbaustein an sich in Störung geht. In der folgenden Tabelle wird aufgelistet, welches Bit in der Variablen nErrors gesetzt wird, wenn beim Auslesen einer Variablen aus einem Vorschaltgerät ein Fehler aufgetreten ist:

Bit

Fehler

0

Bei dem Versuch das Vorschaltgerät zu suchen, ist ein Fehler aufgetreten.

1

Fehler beim Auslesen der Variable ACTUAL DIM LEVEL.

2

Fehler beim Auslesen der Variable POWER ON LEVEL.

3

Fehler beim Auslesen der Variable SYSTEM FAILURE LEVEL.

4

Fehler beim Auslesen der Variable MIN LEVEL.

5

Fehler beim Auslesen der Variable MAX LEVEL.

6

Fehler beim Auslesen der Variable FADE RATE.

7

Fehler beim Auslesen der Variable FADE TIME.

8

Fehler beim Auslesen der Variable RANDOM ADDRESS.

9

Fehler beim Auslesen der Variablen GROUP 0-7 und GROUP 8-15.

10

Fehler beim Auslesen der Variablen SCENE 0 bis SCENE 15.

11

Fehler beim Auslesen der Variable STATUS INFORMATION.

12

Fehler beim Auslesen der Variable VERSION NUMBER.

13

Fehler beim Auslesen der Variable DEVICE TYPE.

14

Fehler beim Auslesen der Variable PHYSICAL MIN LEVEL.

Nach Abarbeitung des Bausteines wechselt der Ausgang bBusy von TRUE nach FALSE.

VAR_INPUT

bStart           : BOOL;
bCancel          : BOOL;
nAddr            : BYTE;
eCommandPriority : E_DALIV2CommandPriority := eDALIV2CommandPriorityMiddle;
nOptions         : DWORD;

bStart: Über eine positive Flanke an diesem Eingang wird der Baustein aktiviert.

bCancel: Über eine positive Flanke an diesem Eingang wird der Baustein deaktiviert und somit das Auslesen der Variablen abgebrochen.

nAddr: Die Adresse des Gerätes, dessen Werte gelesen werden sollen.

eCommandPriority: Priorität (hoch, mittel oder niedrig), mit der der Befehl von der Library abgearbeitet wird (siehe E_DALIV2CommandPriority).

nOptions: Optionen für das Auslesen der Variablen (siehe Tabelle). Die einzelnen Konstanten müssen miteinander ODER-verknüpft werden.

Konstante

Beschreibung

DALIV2_OPTION_ACTUAL_DIM_LEVEL

Die Variable ACTUAL DIM LEVEL wird ausgelesen.

DALIV2_OPTION_POWER_ON_LEVEL

Die Variable POWER ON LEVEL wird ausgelesen.

DALIV2_OPTION_SYSTEM_FAILURE_LEVEL

Die Variable SYSTEM FAILURE LEVEL wird ausgelesen.

DALIV2_OPTION_MIN_LEVEL

Die Variable MIN LEVEL wird ausgelesen.

DALIV2_OPTION_MAX_LEVEL

Die Variable MAX LEVEL wird ausgelesen.

DALIV2_OPTION_FADE_RATE_FADE_TIME

Die Variablen FADE RATE und FADE TIME werden ausgelesen.

DALIV2_OPTION_RANDOM_ADDRESS

Die Variable RANDOM ADDRESS wird ausgelesen.

DALIV2_OPTION_GROUPS

Die Variablen GROUP 0-7 und GROUP 8-15 werden ausgelesen.

DALIV2_OPTION_SCENE_LEVELS

Die Variablen SCENE 0 bis SCENE 15 werden ausgelesen.

DALIV2_OPTION_STATUS_INFORMATION

Die Variable STATUS INFORMATION wird ausgelesen.

DALIV2_OPTION_VERSION_NUMBER

Die Variable VERSION NUMBER wird ausgelesen.

DALIV2_OPTION_DEVICE_TYPE

Die Variable DEVICE TYPE wird ausgelesen.

DALIV2_OPTION_PHYSICAL_MIN_LEVEL

Die Variable PHYSICAL MIN LEVEL wird ausgelesen.

DALIV2_OPTION_DONT_CLEAR_DEVICE_SETTINGS

Vor dem Lesen wird die Variable stDALIDeviceSettings nicht gelöscht.

DALIV2_OPTION_ALL

Alle Variablen werden ausgelesen.

VAR_OUTPUT

bBusy    : BOOL;
bError   : BOOL;
nErrorId : UDINT;

bBusy: Bei der Aktivierung des Bausteins wird der Ausgang gesetzt und bleibt so lange aktiv, bis der Befehl abgearbeitet wurde.

bError: Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in nErrorId enthalten. Wird durch das Ausführen eines Befehls an den Eingängen auf FALSE zurückgesetzt.

nErrorId: Enthält den befehlsspezifischen Fehlercode des zuletzt ausgeführten Befehls. Wird durch das Ausführen eines Befehls an den Eingängen auf 0 zurückgesetzt. (Siehe Fehlercodes)

VAR_IN_OUT

stCommandBuffer      : ST_DALIV2CommandBuffer;
stDALIDeviceSettings : ST_DALIV2DeviceSettings;

stCommandBuffer: Verweis auf die interne Struktur zur Kommunikation mit den Bausteinen FB_KL6811Communication() (KL6811) oder FB_KL6821Communication() (KL6821).

stDALIDeviceSettings: Verweis auf eine Struktur (siehe ST_DALIV2DeviceSettings). In dieser Variablen werden die Einstellungen vom DALI-Vorschaltgerät abgelegt.

Voraussetzungen

Entwicklungsumgebung

erforderliche SPS-Bibliothek

TwinCAT ab v3.1.4020.14

Tc2_DALI ab v3.4.3.0