L_MC4P_GroupTorquePreControl
With this FB, a torque feedforward control can be configured for an axes group. If the parameter setting is precise enough, the controller is relieved and the following error of the axes group is reduced considerably.
Torque feedforward control for reducing following errors
There are three sources for determining the required parameters:
- Axes group parameters
- Data sheet values, measured values
- L_MK4P_DynamicParDelta3_3dof (Use in axes group Delta3_3dof)
- L_MK4P_DynamicParDelta3_4dof (Use in axes group Delta3_4dof)
- L_MK4P_DynamicParScara_3dof (Use in axes group Scara_3dof)
- L_MK4P_DynamicParScara_4dof (Use in axes group Scara_4dof)
- Identified values from the L_MC4P_DynamicParIdent application FB
|
Note!
|
|
Warning!
An incorrectly configured feedforward control can cause uncontrolled movements and machine damage. |
Three different limitations and scalings can be specified for the torque:
- Scaling factor for the calculated torque ( lrTorqueOverride ).
- Limitation factor of the feedforward control torques with reference to the rated torques of the axes ( lrTorqueLimitFactor ).
- Maximum change rate of the feedforward control torques in [Nm/s] with reference to the gearbox output ( alrTorqueRateLimit ).
The quality of the parameters selected for torque feedforward control is diagnosed during commissioning by comparing output signals alrActTorque (actual torque) and alrSetTorque-Out (calculated torque).
Checking results with a torque comparison
|
|
|
|
L_MC4P_GroupTorquePreControl |
|
|
|
|
|---|---|---|---|---|---|---|---|
|
AXES_GROUP_KIN |
- |
|
AxesGroup |
xValid |
|
- |
BOOL |
|
BOOL |
- |
|
xEnable |
xBusy |
|
- |
BOOL |
|
BOOL |
- |
|
xUseAxesGroupParam |
xError |
|
- |
BOOL |
|
BOOL |
- |
|
xWriteToParameter |
eErrorID |
|
- |
L_IE1P_Error |
|
LREAL |
- |
|
lrTorqueOverride |
|
|
|
|
|
LREAL |
- |
|
lrTorqueLimitFactor |
|
|
|
|
|
ARRAY[1..6] OF LREAL |
- |
|
alrTorqueRateLimit |
|
|
|
|
|
LREAL |
- |
|
lrLoadMass |
alrSetTorqueOut |
|
- |
ARRAY[1..6] OF LREAL |
|
L_MC4P_DynamicPar |
- |
|
itfDynamicPar |
alrActTorque |
|
- |
ARRAY[1..6] OF LREAL |
|
|
|
|
|
|
|
|
|
Inputs
|
Name Data type |
Information/possible settings |
|
|---|---|---|
|
AxesGroup AXES_GROUP_KIN |
axes group reference |
|
|
xEnable BOOL |
FALSE ä TRUE |
Activate torque feedforward control. If there is a positive edge at this input, the feedforward control parameters are read in as specified in " xUseAxesGroupParam" . |
|
xUseAxesGroupParam BOOL
|
TRUE |
If there is a positive edge at " xEnable": Read the parameters for torque feedforward control from the parameter set of the axes group. |
|
FALSE |
If there is a positive edge at " xEnable": Read the parameters for torque feedforward control from "itfDynamicPar". |
|
|
xWriteToParameter BOOL |
FALSE ä TRUE |
With a positive edge AND " xEnable" = TRUE: Copy values on the interface into the parameter set of the axes group. The "Save parameter set" device command must be executed for permanent saving of the parameters. |
|
lrTorqueOverride LREAL |
Scaling factor for the calculated torque. This input is evaluated cyclically. During commissioning, the torque feedforward control can be switched on step-by-step using this factor. We recommend setting the input to 0 first and, for typical axes group motions, comparing the calculated feedforward control torques ( alrSetTorqueOut ) with the actual axes torques ( alrActTorque ) using a trace. If the progressions are sufficiently similar, the feedforward control can be switched on step-by-step (e.g. in 10% steps) and the effectiveness can be checked using the following error. If the progressions are not similar or if they differ in terms of the value range, the system parameters applied to the FB must be checked. Here, special attention must be paid to ensuring that the units are correct and to the reference to the gearbox output. During operation, it is possible to adapt the calculated torques to the actual torques if the system parameters are not known with sufficient accuracy. Depending on the application case, it may be worth calculating the torques only partially with the feedforward control (e.g. 80%) to achieve a minimal following error. |
|
|
0.00 ... 2.00 |
Transfer 0 ... 200% of the calculated torques to the axes. |
|
|
lrTorqueLimitFactor LREAL |
Limitation factor of the feedforward control torques with reference to the rated torque of the axes. This input is evaluated cyclically. With this input, the calculated feedforward control torques are symmetrically limited to a percentage value of the rated torque of the axis. |
|
|
0.00 ... 5.00 |
0 ... 500% of the axis rated torques are pilot-controlled. |
|
|
alrTorqueRateLimit ARRAY [1..6] OF LREAL |
Maximum change rate of the feedforward control torques in [Nm/s] with reference to the gearbox output. This input is evaluated cyclically. This input limits the maximum change rate of the feedforward control torques so that no torque jumps are written to the drives of the axes group. Torque jumps in the calculated torque may occur, for example, in the event of erratic parameter changes at the block inputs during operation or if motions are executed without jerk limitation. It would probably make sense to have values somewhere in the magnitude of M Rated for each PLC cycle. |
|
|
0 |
Limitation is inactive |
|
|
lrLoadMass LREAL |
Mass of a load in [kg] optionally attached to the end effector. This input is evaluated cyclically. Caution: Erratic changes at this input typically cause erratic changes to the feedforward control torque as well. These changes can be limited via alrTorqueRateLimit . |
|
|
itfDynamicPar L_MC4P_DynamicPar |
Dynamic parameters of the axes group. This parameter interface provides axes group-specific parameters for calculating the torque feedforward control. The following FBs are currently supported: |
|
Outputs
|
Name Data type |
Value/meaning |
|
|---|---|---|
|
xValid BOOL |
TRUE |
Valid values are present at the outputs. |
|
xBusy BOOL |
TRUE |
Processing is running. |
|
xError BOOL |
TRUE |
An error has occurred. For details, see ErrorID . |
|
eErrorID |
If Error = TRUE: Error number for the error that has occurred.
|
|
|
alrSetTorqueOut ARRAY [1..6] OF LREAL |
Only for diagnostics purposes, e.g. during commissioning. Feedforward control torque calculated in the FB in [Nm] with reference to the gearbox output without considering inputs lrTorqueOverride , lrTorqueLimitFactor and lrTorqueRateLimit . |
|
|
alrActTorque ARRAY [1..6] OF LREAL
|
Only for diagnostics purposes, e.g. during commissioning. Current torque of the axis in [Nm] with reference to the gearbox output. |
|