...
{delayed_off_set_counter}
{200pt}
{0.5pt}
\subsubsection{
"Is output false?
...
"
After having reset the counter, the output shall be set to true if it is not already true. To achieve this, the output has to verified. Figure \ref{fig:delayed_off_is_output_false} shows the implementation of the required condition.
...
{delayed_off_is_output_false}
{200pt}
{0.5pt}
\subsubsection{
"Write true to output
...
"
The following figure shows how the output is set to true. Note that a "WRITE OUTPUT ITEM" block also forwards the value to the bus if a physical data point is behind the server item.
...
{delayed_off_write_true_to_output}
{150pt}
{0.5pt}
\subsection{
"Process output"
...
\nxatext
{
After having finished the "Process input" block, the "Process output" block has to be implemented. By doing a double click on the corresponding block, the work sheet of the "CMD BLOCK" opens. Within this work sheet, define the command flow that is shown in the following figure \ref{fig:.
\nxagraphic
{examples/fig/delayed_off_process_output}.
}
{
Im nächsten Schritt muss der "Process output" Block implementiert werden. Mit einem Doppelklick auf den entsprechenden Block wird der Arbeitsbereich des "CMD BLOCK"s geöffnet. Innerhalb des Arbeitsbereich muss der Kommandoablauf, wie in Abbildung \ref{fig:delayed_off_process_output} ersichtlich, definiert werden.
}
\nxagraphic
{examples/fig/delayed_off_process_output.png}
{examples/fig/delayed_off_process_output.png}
...
{delayed_off_process_output}
{350pt}
{0.5pt}
\nxatext
{
The command flow of the "Process output" block consists of the following blocks:
}
{
Der Kommandoablauf des "Process output" Blocks enthält folgende Blöcke:
}
\begin{compactitem}
...
- "Is counter 0?":
...
- this condition verifies whether the current counter
...
- value is zero.
- "Is output true?":
...
- if the counter is zero, the output shall be reset to false again. However, this shall only
...
- be done if the output is currently set to true. The required test is done within this block.
- "Write false to output":
...
- Within this "CMD" block, the output is set to false
...
- .
...
...
- "Decrement counter":
...
- if the counter is not yet zero, it is decremented by one within this block
...
- .
...
\end{compactitem}
\nxatext
{
In the following, the above mentioned blocks are explained in more detail.
}
{
Als nächstes werden die oben erwähnten Blöcke detailliert erklärt.
}
\subsubsection{"Is counter 0?'}
...
{delayed_off_decrement_counter}
{250pt}
{0.5pt}
Saving the command and using the command within the NETx BMS Server
To provide the command to the NETx BMS Server, it has to be compiled. This can be done by clicking the "Save" icon within the toolbar which saves and compiles the current command. In addition, it is possible to change several options of a command. To open the "Options" dialog, the entry "Options ..." within the menu "File" has to be selected (cf. figure \ref{fig:delayed_off_compile}). Within this dialog, basic information about the command can be specified. The flag "Add to Catalog" defines whether the command shall be visible within the catalog of the XLogic Editor. If activated, the command can be reused in other commands. If the option "Auto-Compile" is set, the command is automatically compiled whenever the project is saved.
...