L_MC4P_DynamicParIdent
FB L_MC4P_ DynamicParIdent can be used to determine the dynamic parameters of an axes group that are required for a torque feedforward control ( L_MC4P_GroupTorquePreControl ). This involves assigning an internally calculated identification trajectory (path curve) to the axes group and identifying the parameters during this motion.
The function block currently supports the following axes groups:
- Delta3_3dof
- Delta3_4dof
For basics and further information, see:
Torque feedforward control for reducing following errors
Parameter identification with FB L_MC4P_DynamicParIdent
|
Note!
The quality of the identified parameters must be ensured after every identification run by using block
L_MC4P_GroupTorquePreControl
with the setting lrTorqueOverride = 0 to compare
alrSetTorque-Out
and
alrActTorque
!
|
|
|
|
|
L_MC4P_DynamicParIdent |
|
|
|
|
|---|---|---|---|---|---|---|---|
|
AXES_GROUP_KIN |
- |
|
AxesGroup |
xDone |
|
- |
BOOL |
|
BOOL |
- |
|
xExecute |
xBusy |
|
- |
BOOL |
|
L_MC4P_DynamicPar |
- |
|
itfDynamicParMin |
xActive |
|
- |
BOOL |
|
L_MC4P_DynamicPar |
- |
|
itfDynamicParMax |
xError |
|
- |
BOOL |
|
BOOL |
- |
|
xUseAxesLimits |
eErrorID |
|
- |
L_IE1P_Error |
|
ARRAY[1..6] OF LREAL |
- |
|
alrMinPos |
xCommandAborted |
|
- |
BOOL |
|
ARRAY[1..6] OF LREAL |
- |
|
alrMaxPos |
lrConvergence |
|
- |
LREAL |
|
ARRAY[1..6] OF LREAL |
- |
|
alrMaxVel |
|
|
|
|
|
ARRAY[1..6] OF LREAL |
- |
|
alrMaxAcc |
|
|
|
|
|
|
|
|
|
|
|
|
|
Inputs
|
Name Data type |
Information/possible settings |
|
|---|---|---|
|
AxesGroup AXES_GROUP_KIN |
axes group reference |
|
|
xExecute BOOL |
FALSE ä TRUE |
Start identification. |
|
TRUE ä FALSE |
Reset FB. The identified values can no longer be read out from a PreControl FB via the iftDynamicPar interface. |
|
|
itfDynamicParMin L_MC4P_DynamicPar |
Optional lower limits for the parameters to be identified. UseCase 1: If different parameter settings are made for alrGraviationVector in itfDynamicParMin and itfDynamicParMax , an error results. UseCase 2: No parameterisation of alrGraviationVector in itfDynamicParMin and itfDynamicParMax , since no interface FBs are connected. The Gravitation y and Gravitation z parameters are read out from the axes group instead. |
|
|
itfDynamicParMax L_MC4P_DynamicPar |
The optional upper limits for the parameters to be identified. Note: If the parameter limits in itfDynamicParMin and itfDynamicParMax are set the same for individual parameters, these are not varied during identification. This option can be used if certain variables are already known with sufficient accuracy from other measurements. |
|
|
xUseAxesLimits BOOL |
TRUE |
Axes parameters ( Standard values of the axes and Software limit positions ) are used as limit values for the identification trajectory. If these parameters are not set in the axes, an error is output. |
|
FALSE |
Inputs alrMinPos , alrMaxPos , alrMaxVel , alrMaxAcc , alrMaxJerk are used as limit values for the identification trajectory. |
|
|
alrMinPos ARRAY [1..6] OF LREAL |
Minimal position of the Cartesian axes (workspace limitation). |
|
|
alrMaxPos ARRAY [1..6] OF LREAL |
Maximum position of the Cartesian axes (workspace limitation). |
|
|
alrMaxVel ARRAY [1..6] OF LREAL |
Maximum velocity of the Cartesian axes. |
|
|
alrMaxAcc ARRAY [1..6] OF LREAL |
Maximum acceleration of the Cartesian axes. |
|
Outputs
|
Name Data type |
Value/meaning |
|
|---|---|---|
|
xDone BOOL |
TRUE |
The identification process has been successfully completed. Internal plausibility tests on the identified parameters were also successful. |
|
xBusy BOOL |
TRUE |
Processing is running. |
|
xActive BOOL |
TRUE |
The FB assigns the identification trajectory to the axes group. |
|
xError BOOL |
TRUE |
An error has occurred. For details see eErrorID . |
|
eErrorID |
If xError = TRUE: Error number for the error that has occurred.
|
|
|
xCommandAborted BOOL
|
TRUE |
Identification cancelled |
|
lrConvergence LREAL |
Quality criterion for the convergence of the identified parameters. The output assumes values between 0 ... 1. This corresponds to a quality of 0...100%. Good identification should have values > 75%. |
|
Interconnection example