Check timeout on a SFC step

The system can check timeout on any SFC step activity duration. For that you need to enter the following instruction in the main "Action" list of the step:

__StepTimeout ( timeOut , errString );

Where:

timeout is a time constant or a time variable specifying the timeout duration
errString is a string constant or a string variable specifying the error message to be output

At runtime, each time the activation time of the step becomes greater than the specified timeout, the error string is sent to the Workbench and displayed in the Log window.

Warning: sending log message strings to the log window requires the runtime to be connected through ETHERNET, and that your T5 runtime system supports plain text trace messages.

Notes:

You can also put this statement within a "#ifdef __DEBUG" test so that timeout checking is enabled only in debug mode.

Alternatively, if you need to make more specific handling of timeouts, you can enter the following ST program in the "N" action block of the step:

if GSn.T > timeout then /* 'n' is the number of the step */
   ...statements...
end_if;