5.2 Properties and functions of PROFINET IO with SIMOTION
5.2.3 Task system and time response
5.2.3.1 Overview of SIMOTION task system and system cycle clocks
Overview
If IRT data is transmitted via the bus using PROFINET IO, the cycle clock execution times fall between reading and writing the data (e.g. axis data), depending on which task in the execution system the application is executed in. You can find examples of applications in different tasks (execution levels) in the chapters that follow.
5.2.3.2 BackgroundTask, MotionTask, and IPOSynchronousTask
MotionTask/BackgroundTask
The data is transmitted via the bus using PROFINET IO with IRT High Performance, and accepted by the communication interface at the start of the position control cycle clock. The logic signals are generally evaluated in a MotionTask or BackgroundTask. Here, a distinction is made as to which machine function is activated; for example, "position-controlled traversing of axis". The traversing profile required is counted in the next IPO cycle clock. Based on the position setpoints determined here, the speed setpoints for controlling the axis are calculated in the next position control cycle clock. These are transmitted to the drive in the next cycle, via PROFINET IO with IRT High Performance.
Data transmitted in IRT time slot Position control
for axis
IRT data transmitted to communication interface at end of position control cycle clock
Traversing profile is interpolated
IRT data read in at start of position control cycle clock
BackgroundTask or MotionTask
Evaluation of input
=> Start axis
Write
A
B D F
E C
IPO
Servo Servo IPO Servo IPO
Write
Read Read
M/B Task
Write Read
M/B Task
M/B Task M/B
Task
M/B Task
M/B Task M/B Task:
Motion/Background Task
Figure 5-11 Logic evaluation for an axis in the BackgroundTask or MotionTask Constraints
The option of a second servo clock is not activated, i.e. no Servo_fast and IPO_fast. The bus cycle clock, servo clock and IPO cycle clock are set to a 1:1:1 ratio. Other ratios may result in longer response times. With a 1:1:2 ratio, the IPO execution may be extended to two position control cycle clocks, which can lead to the response time increasing by one position control cycle clock.
Additionally, the BackgroundTask may be processed over several position control cycle clocks, meaning that the system is unable to make sure the data is evaluated in the first position control cycle clock. This may also lead to an increased response time.
Assigning the variables to a process image has an impact on the response time as well. The process images are made available to other tasks or to the communication interface at the end of the respective task, rather than after the variables are updated.
IPOSynchronousTask
In order to optimize the time response and enable synchronous triggering of actions (e.g.
starting axes simultaneously), in the IPOSynchronousTask it is possible to process the part of the application that triggers axis commands. If this option is used, it is counted before the IPO.
In this way, the axis command can be issued before the IPO is executed, and the resulting position setpoint then calculated in the IPO. Based on this, the speed setpoint for the drive is calculated in the next position control cycle clock. Once the position control cycle clock has finished, the data is passed on to the communication interface and transmitted in the next PROFINET IRT send clock. Unlike processing in a MotionTask/BackgroundTask, where the response time equals the maximum BackgroundTask runtime + one IPO cycle clock + one position control cycle clock, in this case you can be assured that the response time will be one IPO cycle clock + one position control cycle clock until new data is output.
B D F
A
E C
Position control for axis Traversing profile
is interpolated
IRT data read in at start of position control cycle clock
IPO-synchronous evaluation of input
=> Axis command
Data transmitted in IRT time slot IRT data transmitted to
communication interface at end of position control cycle clock
M/B Task:
Motion/Background Task
M/B Task
Write
IPO Servo IPO
Servo
Write
Read Read
M/B Task M/B
Task M/B
Task M/B
Task
Figure 5-12 Logic evaluation for an axis in the IPOSynchronousTask
5.2.3.3 ServoSynchronousTask
ServoSynchronousTask
It is possible to optimize the time response even further and reduce the response time to one servo cycle clock. This option can be used for high-speed actual-value synchronous
operations, e.g. flying knife/shear. Within this context, the part of the application that triggers axis commands for selected axes is processed in the ServoSynchronousTask. Additionally, the IPO part of the system for the axes involved is counted before the position controller in the servo task. In this way, the speed setpoints may be transmitted as soon as the next IRT time slot.
B
F D
A C E G
Traversing profile for
"fast" axes is interpolated Servo-synchronous
evaluation of input
=> Axis command
Position control for axes
Data transmitted in IRT time slot IRT data transmitted to communication interface at end of position control cycle clock
M/B Task
M/B Task
M/B Task:
Motion/Background Task
IPO Servo IPO
Write
Read
Figure 5-13 Logic evaluation for an axis in the ServoSynchronousTask Boundary conditions
Using this function increases the CPU load and, therefore, the position control cycle clock; for this reason it should only be used when necessary.
Activating
This feature must be activated explicitly for the axes in SIMOTION SCOUT as part of axis configuration.
Figure 5-14 Determining the processing cycle clock for the axis
If the option of a second servo cycle clock is configured, then the axis can also be assigned to the Servo_fast processing cycle clock if this is linked to the faster bus.
Position control
The position controller responds within one position control cycle clock. The data is read out from the communication interface at the start of the position control cycle clock. The position controller is counted in the position control cycle clock. The new speed setpoints are copied to the communication interface at the end of the position control cycle clock and, therefore, transmitted in the next IRT time slot.
Data transmitted in IRT time slot IRT data transmitted to communication interface at end of position control cycle clock
IRT data read in at start of position control cycle clock
Position control
=> Generation of new speed setpoint
A B
IPO Servo
Write
Read
M/B Task M/B
Task
M/B Task:
Motion/Background Task
Figure 5-15 Position control time response with ServoSynchronousTask
5.2.3.4 Fast I/O processing in the ServoSynchronousTask
Fast I/O processing in the ServoSynchronousTask
The evaluation of quick I/Os – e.g. ET200S High Speed – is performed in the
ServoSynchronousTask. resulting in a system response time of one cycle. Due to the terminal- terminal response, there is a delay of Ti + servo cycle clock + To.
B
A
C Servo-synchronous evaluation of input
=> Set output
Data transmitted in IRT time slot IRT data transmitted to communication interface at end of position control cycle clock
M/B Task
M/B Task M/B Task:
Motion/Background Task
IPO Servo IPO
Write
Read
IRT data transmitted at start of position control cycle clock
Figure 5-16 Fast IOs in the ServoSynchronousTask
If the second servo clock is configured, the fast I/O processing can also be performed in the Servo_fast clock (i.e. in the ServoFastSynchronousTask). This requires the I/O peripherals to be configured on the faster bus.