Introduction
IEC 62386-304 describes DALI control devices that are defined as brightness sensors.
DALI control devices according to IEC 62386-304 correspond to instance type 4. The type of an instance can be queried with the function block FB_DALI103QueryInstanceType.
Input value
The current state (inputValue) of the light sensor can be queried via the function block FB_DALI103QueryInputValue.
Timer
IEC 62386-304 defines various timers for triggering device-specific events.
The event for the instance type 4 in conjunction with the associated timers is explained below.
The respective time is calculated from
Time | Multiplier | Preset value of the multiplier | Tincr Incremental value | Tdefault Default value | Tmin lowest possible set value | Tmax highest possible set value |
---|---|---|---|---|---|---|
Tdeadtime | tDeadtime | 30 | 50 ms | 1.5 s | 0 s | 12.75 s |
Treport | tReport | 30 | 1 s | 30 s | 1 s | 4 min 15 s |
Set the times so that as few events as possible are sent. If too many events are sent, this can have a negative effect on the behavior of the application. |
Event filter
DALI control devices are capable of sending different events. The event filter consists of an 8-bit value, where each individual bit defines whether an event is blocked or released. The event is released if the corresponding bit is set, otherwise it is blocked.
The function block FB_DALI103QueryEventFilter can be used to read the value of the event filter; the function block FB_DALI103SetEventFilter can be used to write to it.
The event filter (see eventFilter) must be configured accordingly in order to trigger time-controlled events.
Bit | Event | Description |
---|---|---|
0 | Illuminance level report | Illuminance event |
1 | - | reserved |
2 | - | reserved |
3 | - | reserved |
4 | - | reserved |
5 | - | reserved |
6 | - | reserved |
7 | - | reserved |
Input Notification event
With instance type 4 there is the possibility to release the event with the help of the event filter. The event is sent from the DALI control device by a Input Notification and can be received with FB_DALIGetInputNotification.
The following table lists the event.
Event Name | Event Information | Description |
---|---|---|
Illuminance Level Event | position | If the resolution is less than or equal to 10, this event contains the current input value (10 bits). If the resolution is greater than 10, only a change of the input value is communicated with this event. This can then be read with FB_DALI103QueryInputValue. |
Hysteresis
To avoid too frequent, disruptive changes of the illuminance, it is possible with DALI devices with the instance type 4 to define a hysteresis.
A percentage value can be specified via the hysteresis variable for the calculation of a hysteresis band.
The value can be queried with the function block FB_DALI304QueryHysteresis and specified with FB_DALI304SetHysteresis.
Since the percentage hysteresis can also lead to wide fluctuations at low illuminance, a minimum hysteresis can be specified via the variable hysteresisMin. The minimum hysteresis is an absolute value with a range from 0 to 255.
The reset value depends on the resolution of the input values specified by the vendor.
resolution | Vendor-dependent reset value |
---|---|
1…6 | 0 |
7 | 1 |
8 | 2 |
9 | 5 |
10 | 10 |
11 | 20 |
12 | 40 |
13 | 81 |
14 | 163 |
> 15 | 255 |
The value can be queried with the function block FB_DALI304QueryHysteresisMin and specified manually with FB_DALI304SetHysteresisMin.
Event Illuminance Level Report
The illuminance event is triggered each time an inputValue lies outside of the hysteresis band.
As described above, the hysteresis band is calculated from the percentage hysteresis of the input value and the value of the minimum hysteresis. The upper and lower points of the hysteresis band are called hysteresisBandHigh and hysteresisBandLow respectively.
The illuminance event is generated when the inputValue is greater than the calculated value hysteresisBandHigh or smaller than hysteresisBandLow.
It is also generated when the time Treport has expired, irrespective of the current input value.
The example shows the change in the input value with the resulting hysteresis band and the report timer Treport. The value for hysteresis is 10% and the value for hysteresisMin is 50.
The Illuminance Level Report event is generated at the measuring points 1, 2, 4, 5, 6, 8 and 10 through the change in the input value beyond the limits of the defined hysteresis band. No illuminance event is generated at the measuring points 3, 7 and 9 because the measured illuminance is within the hysteresis band and the timer Treport (see tReport) has not yet expired. On expiry of the timer Treport the event is generated at a later time (between the measuring points 3 and 4, 7 and 8, 9 and 10).
Deadtime timer
Several events may not be sent from an instance at the same time. To avoid this a dead time (Tdeadtime) can be activated (see tDeadtime).
If the Deadtime Timer is active, an instance should not send any further events until the timer Tdeadtime has expired. The timer is restarted after the sending of an event.
If a new event occurs before the current event is sent, then the new event replaces the existing one. This can happen if the bus is not available or if the timer TDeadtime is in use.
If Treport < Tdeadtime, then Treport should be equal to Tdeadtime regardless of the value that Treport previously had.