Tasks of the mapping functions
Automatic code generation places the mapping between the axis object and the HMI object and interface object interfaces in the free-wheeling task because, in most use cases, the user program is also processed within the free-wheeling task (e.g. in the Main action in the User_PRG program). Keep in mind that, for cyclical tasks (e.g. in profile generation), all information written from the free-wheeling task to the interfaces (e.g. Interface_Axis1) is processed asynchronously and, as a result, in a potentially inconsistent manner.
In certain cases, however, it might be important to control the system synchronously to the cyclical task from the user program (e.g. during an on-the-fly changeover). In such cases, the respective control actions of the user program then have to be processed in the cyclical task (e.g. in the HighPrio action in the User_PRG program). Furthermore, the mapping functions of the status signals or control signals processed within the cyclical task must also be called from within the cyclical task. This means the corresponding calls must be shifted from the Main action in the SEW_PRG program to the HighPrio action in the SEW_PRG program.
The following diagram shows an overview of the mapping functions and their tasks that can be used to decide which calls might have to be modified.
INFORMATION
It is the responsibility of the user to ensure consistency by taking the appropriate measures if necessary.
- Interface_Axis1.MapOUT_UI() copies the status information from "Axis1" to "Interface_Axis1"
- Interface_Axis1.ProfileGeneration.MapOUT_UI() copies the status information of profile generation from "Axis1" to "Interface_Axis1"
- Interface_Axis1.MapIN_UI() copies the control information from "Interface_Axis1" to "Axis1"
- Interface_Axis1.ProfileGeneration.MapIN_UI() copies the control information of profile generation from "Interface_Axis1" to "Axis1"
- HMI_Axis1.MapOUT_UI() copies the status information from "Axis1" to "HMI_Axis1"
- HMI_Axis1.ProfileGeneration.MapOUT_UI() copies the status information of profile generation from "Axis1" to "HMI_Axis1"
- HMI_Axis1.MapIN_UI() copies the control information from "HMI _Axis1" to "Axis1"
- HMI_Axis1.ProfileGeneration.MapIN_UI() copies the control information of profile generation from "HMI _Axis1" to "Axis1"