...
This condition verifies whether an edge has been detected in the previous "CMD BLOCK". Using an "EQUAL" block, the current value of the variable "edge" (retrieved by the "VARIABLE VALUE" block in combination with a "VARIABLE NAME" block) is compared to the constant "TRUE" (provided by a "BOOL" block). The implementation of the "Is edge detected" condition is shown in the following figure.
\nxagraphic
{examples/fig/delayed_off_is_edge_detected.png}
{examples/fig/delayed_off_is_edge_detected.png}
{"Is edge detected?" condition}
{"Is edge detected?" Bedingung}
{delayed_off_is_edge_detected}
{300pt}
{0.5pt}
"Set counter"
This block resets the counter to the value that is specified by the "Delay" parameter. The implementation of the "Set counter" block is shown in the following figure.
\nxagraphic
{examples/fig/delayed_off_set_counter.png}
{examples/fig/delayed_off_set_counter.png}
{"Set counter" block}
{"Set counter" Block}
{delayed_off_set_counter}
{200pt}
{0.5pt}
"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.
\nxagraphic
{examples/fig/delayed_off_is_output_false.png}
{examples/fig/delayed_off_is_output_false.png}
{"Is output false?" condition}
{"Is output false" Bedingung}
{
"Set counter"
This block resets the counter to the value that is specified by the "Delay" parameter. The implementation of the "Set counter" block is shown in the following figure.
"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}
{200pt}
{0.5pt}
shows the implementation of the required condition.
"Write true to output"
...