Technical information

Tasks
EIO0000000638 04/2012 41
Freewheeling Task
A Freewheeling task does not have a fixed duration. Each Freewheeling task type
executes as follows:
1. Read Inputs: The input states are written to the %I input memory variable and
other system operations are executed.
2. Task Processing: The user code (POU, etc.) defined in the task is processed.
The %Q output memory variable is updated according to your application
program instructions but not written to the physical outputs during this operation.
3. Write Outputs: The %Q output memory variable is modified with any output
forcing that has been defined, however, the writing of the physical outputs
depends upon the type of output and instructions used. For more information on
defining the Bus cycle task refer to CoDeSys online help. For more information
on I/O behavior, refer to Controller States Detailed Description (see page 53).
4. System Processing: The controller OS carries out system processing and any
other lower priority tasks. The length of the system processing period is set to
30 % of the total duration of the 3 previous operations ( 4 = 30 % x (1 + 2 + 3)).
In any case, the system processing period won’t be lower than 3 ms.
Event Task
This type of task is event-driven and is initiated by a program variable. It starts at the
rising edge of the boolean variable associated to the trigger event unless preempted
by a higher priority task. In that case, the Event task will start as dictated by the task
priority assignments.
For example, if you have defined a variable called my_Var and would like to assign
it to an Event, select the Event type on the Configuration sub-tab and click on the
Input Assistant button to the right of the Event name field. This will cause the
Input Assistant dialog box to appear. In the Input Assistant dialog box, you
navigate the tree to find and assign the my_Var variable.