The Distributed Alarm System Unit (DASU).
The DASU, once notified of new inputs received from the BSDB (or other sources), forwards the IASIOs to the ASCEs to produce the output. If no new inputs arrived the DASU generates the output anyhow to notify that the DASU is alive. At a first glance it seems enough to check the validity of the last set of inputs to assign the validity of the output.
The DASU is initialized in the constructor: to let it start processing events, the start() method must be called.
The DASU must update the output even if it does not receive any input to refresh the output and send it to the BSDB. The automatic refresh of the output when no new inputs arrive is not active by default but need to be activated by calling enableAutoRefreshOfOutput(true).
Newly received inputs are immediately processed unless they arrive so often to need the CPU running at 100%. In this case the DASU delayed the evaluation of the output collecting the inputs until the throttling time interval elapses.
Value parameters
- autoSendTimeInterval
-
the refresh rate (seconds) to automatically re-send the last calculated output even if it did not change
- dasuIdentifier
-
the identifier of the DASU
- validityThreshold
-
the max delay (secs) before declaring an input unreliable
Attributes
- Constructor
-
create a DASU with the given identifier
- Companion
- object
- Graph
-
- Supertypes
- Known subtypes