Question:
Function block L_PHINT or LPHINTK can be used to determine setpoint and actual positions to integrate phase difference signals under IEC 61131. For example, system variable DFIN_nln_v is used to determine a setpoint position from hardware signals and system variable MCTRL_nNAct_v to create actual positions. How is the position determined if this function block is used in different, time-controlled tasks?
Answer:
When using the above mentioned function block link, an individual process mapping of the system variable DFIN_nln_v and MCTRL_nACt_v is created in every time-controlled task. The process mapping of these two phase difference signals is always created correctly (increments), even for task cycles longer than 1 ms. The position integrators L_PHINT and L_PHINTK multiply these signals with the task cycle time and add them. This means that the resolution of the signal outputs of the position integrators L_PHINT and L_PHINTK become fuzzy with longer cycles because of this multiplication.
Example: In a 1 ms task the position value of L_PHINT (dnOut_p) is displayed with great accuracy (resolution to 1 increment). In a 2ms task the resolution of the signal output L_PHINT.dnOut_p would only have a 2-increment accuracy. In 10 ms task the signal output L_PHINT.dnOut_p would be resolved to 10 increments. This means that the resolution of L_PHINT integrators becomes increasingly worse with longer cycle times.
In the PLC_PRG a process mapping of MCTRL_nNAct_v and DFIN_nIn_v is also created. Because of the variable cycle time, an undefined scattering of the added phase signal over L_PHINT results. rstellt. Therefore, the use in the PLC_PRG as well as in interrupt-controlled tasks is not useful.