This example shall implement the functionality of a lock object. This means that the value of an input data point shall only be forwarded to an output data point if the value of another input item (called lock object) is not set to a configured Boolean value. This functionality is shown in the following truth table (suppose the configured value for the lock object is ``true''):
\begin{tabular}
{ l | l || l }
\hline
...
Input data point |
---|
...
\hline
\hline
a & false & a \\
\hline
b & false & b \\
\hline
... & false & ... \\
\hline
a & true & x \\
\hline
b & true & x \\
\hline
... & true & ... \\
\hline
\end{tabular}
\subsection{\nxatext{Creating the command}{Erstellen des neuen Kommandos}}
\nxatext
{
Lock object | Output data point | |
---|---|---|
a | false | a |
b | false | b |
... | false | ... |
a | true | x |
b | true | x |
... | true | x |
Creating the command
Within the \productbmsstudio, start the \productname\ using the corresponding icon in the toolbar. Then select the entry ``New Command ...'' from the menu ``File''. A new dialog opens that is used to define the name of the command as well as its inputs, outputs, and parameters.
}
{
Der \productname\ kann über das entsprechende Icon in der Toolbar des \productbmsstudio s gestartet werden. Anschließend ist der Eintrag ``New Command ...'' im Menü ``File'' auszuwählen. Ein Dialog öffnet sich, indem der Name des Kommandos und die Inputs, Outputs und Parameter definiert werden können.
}
\nxatext
{
Within this dialog, set the name to ``Lock'' and define the following inputs:
}
{
Innerhalb dieses Dialogs ist der Name auf ``Lock'' zu setzen und die folgenden Inputs sollen definiert werden:
}
\begin{compactitem}
\item \nxatext{Input data point: this is the item ID that specifies the input that shall be monitored.}{Input data point: dies ist die Item ID, welche den zu überwachenden Input Datenpunkt spezifiziert.}
...