Difference between revisions of "MC-Basic:IdentificationStart"
m (draft) |
|||
(26 intermediate revisions by 4 users not shown) | |||
Line 2: | Line 2: | ||
|SHORT FORM= | |SHORT FORM= | ||
|SYNTAX= | |SYNTAX= | ||
− | IdentificationStart '' | + | IdentificationStart <''axis''><nowiki>|</nowiki>''<robot>'' |
− | { | + | {IdentDynamicModel = <''value''>} |
− | { | + | {IdentPayload = ''ON<nowiki>|</nowiki>OFF''} |
− | { | + | {IdentFilterFreq = <''value''>} |
− | { | + | {IdentFileName = <''value''>} |
− | { | + | {IdentRelTeMax = <''value''>} |
− | { | + | {IdentRecTimeMax = <''value''>} |
+ | {IdentDebug = ''ON<nowiki>|</nowiki>OFF''} | ||
+ | {IdentSampleGap = <''value''>} | ||
|AVAILABILITY= | |AVAILABILITY= | ||
− | + | Since Version 4.9.7 | |
|DESCRIPTION= | |DESCRIPTION= | ||
Starts dynamic parameters identification for an axis or a robot. | Starts dynamic parameters identification for an axis or a robot. | ||
− | ; | + | The typical identification procedure basically contains following steps: |
+ | # With ''IdentificationStart'' the identification is configured and the internal recording of the feedback signals is started. | ||
+ | # A kinematics-specific excitation motion is issued by the user (typically [[MC-Basic:SineWave|SineWave]] is used). | ||
+ | # With ''[[MC-Basic:IdentificationFinish|IdentificationFinish]]'' the parameters are computed and written to the result file ''IdentFileName''.prg. | ||
+ | |||
+ | === Parameters === | ||
+ | ;IdentDynamicModel | ||
: The dynamic model of which the parameters are identified. | : The dynamic model of which the parameters are identified. | ||
: If not given, the current dynamic model of the motion element is used. | : If not given, the current dynamic model of the motion element is used. | ||
Line 22: | Line 30: | ||
: If Payload is ON, DynamicModel value is ignored. | : If Payload is ON, DynamicModel value is ignored. | ||
− | ; | + | ;IdentPayload |
: If ON, the payload (payloadmass, payloadinertia) is identified instead of the model parameters. | : If ON, the payload (payloadmass, payloadinertia) is identified instead of the model parameters. | ||
− | ; | + | ;IdentFilterFreq |
: Cutoff frequency of the raw signal filter. | : Cutoff frequency of the raw signal filter. | ||
: 0 = the frequency is automatically detected | : 0 = the frequency is automatically detected | ||
: -1 = no filter is used at all | : -1 = no filter is used at all | ||
− | ; | + | ;IdentFileName |
: File name without extension of the output files (.PRG, .REC) | : File name without extension of the output files (.PRG, .REC) | ||
: If not given, files are called "IDNT<ElementId>" | : If not given, files are called "IDNT<ElementId>" | ||
− | ; | + | ;IdentRelTeMax |
: Percentage of the maximal torque error compared to the maximal torque feedback of an axis. If the maximal TE is higher, the identification is considered to be failed. | : Percentage of the maximal torque error compared to the maximal torque feedback of an axis. If the maximal TE is higher, the identification is considered to be failed. | ||
− | ; | + | ;IdentRecTimeMax |
− | : | + | : Maximal recording time after the start of identification. |
+ | |||
+ | ;IdentDebug | ||
+ | : If enabled, a record file is produced on the softMC containing the signals used for identification: | ||
+ | :* Raw torque and position feedbacks (TbfRaw and PfbRaw) | ||
+ | :* Filtered and derived (velocity, acceleration) feedbacks (Tfb, Pfb, Vfb, Afb) | ||
+ | :* Torque command, which is computed using the identified parameters (Tcmd) | ||
+ | |||
+ | ;IdentSampleGap | ||
+ | : The recording gap between data points in cycle time units. | ||
|TYPE= | |TYPE= | ||
− | * '' | + | * ''IdentDynamicModel'' : Long |
− | * '' | + | * ''IdentFilterFreq'' : Double |
− | * '' | + | * ''IdentFileName'' : String |
− | * '' | + | * ''IdentRelTeMax'' : Double |
+ | * ''IdentRecTimeMax '' : Double | ||
+ | * ''IdentSampleGap'' : Long | ||
+ | |||
|RANGE= | |RANGE= | ||
− | * '' | + | * ''IdentDynamicModel'' : 1, 2, 3, .. (only positive numbers, see [[Dynamic Models|available models]]) |
|UNITS= | |UNITS= | ||
− | * '' | + | * ''IdentFilterFreq'' : Herz [Hz] |
− | * '' | + | * ''IdentRelTeMax'' : Percent [%] |
+ | * ''IdentRecTimeMax'' : Seconds [s] | ||
+ | * ''IdentSampleGap'' : Cycle Time | ||
|DEFAULT= | |DEFAULT= | ||
− | * '' | + | * ''IdentDynamicModel'' : element.DynamicModel |
− | * '' | + | * ''IdentPayload'' : OFF |
− | * '' | + | * ''IdentFilterFreq'' : 0 (auto-detect) |
− | * '' | + | * ''IdentFileName'' : "" (auto-assign) |
− | * '' | + | * ''IdentRelTeMax'' : 50% |
− | * '' | + | * ''IdentRecTimeMax'' : 30s |
+ | * ''IdentDebug'' : ON | ||
+ | * ''IdentSampleGap'' : 1 | ||
|SCOPE= | |SCOPE= | ||
Line 66: | Line 90: | ||
|LIMITATIONS= | |LIMITATIONS= | ||
* Only one motion element can be identified at the same time. | * Only one motion element can be identified at the same time. | ||
− | |||
|EXAMPLE= | |EXAMPLE= | ||
Line 85: | Line 108: | ||
|SEE ALSO= | |SEE ALSO= | ||
− | * [[ | + | * [[Motion Dynamics]] |
− | * [[ | + | * [[MC-Basic:IdentificationFinish|IdentificationFinish]] |
− | * [[ | + | * [[MC-Basic:IdentificationStatus|IdentificationStatus]] |
− | * [[ | + | * [[MC-Basic:IdentificationCancel|IdentificationCancel]] |
− | + | * [[MC-Basic:SineWave|SineWave]] | |
+ | * [[Dynamic Models|Dynamic Models]] | ||
}} | }} | ||
− | [[Category | + | [[Category:Motion Dynamics]] |
Latest revision as of 11:48, 16 October 2018
Starts dynamic parameters identification for an axis or a robot.
The typical identification procedure basically contains following steps:
- With IdentificationStart the identification is configured and the internal recording of the feedback signals is started.
- A kinematics-specific excitation motion is issued by the user (typically SineWave is used).
- With IdentificationFinish the parameters are computed and written to the result file IdentFileName.prg.
Parameters
- IdentDynamicModel
- The dynamic model of which the parameters are identified.
- If not given, the current dynamic model of the motion element is used.
- The values 0 or -1 not allowed:
- If Payload is ON, DynamicModel value is ignored.
- IdentPayload
- If ON, the payload (payloadmass, payloadinertia) is identified instead of the model parameters.
- IdentFilterFreq
- Cutoff frequency of the raw signal filter.
- 0 = the frequency is automatically detected
- -1 = no filter is used at all
- IdentFileName
- File name without extension of the output files (.PRG, .REC)
- If not given, files are called "IDNT<ElementId>"
- IdentRelTeMax
- Percentage of the maximal torque error compared to the maximal torque feedback of an axis. If the maximal TE is higher, the identification is considered to be failed.
- IdentRecTimeMax
- Maximal recording time after the start of identification.
- IdentDebug
- If enabled, a record file is produced on the softMC containing the signals used for identification:
- Raw torque and position feedbacks (TbfRaw and PfbRaw)
- Filtered and derived (velocity, acceleration) feedbacks (Tfb, Pfb, Vfb, Afb)
- Torque command, which is computed using the identified parameters (Tcmd)
- IdentSampleGap
- The recording gap between data points in cycle time units.
Syntax
IdentificationStart <axis>|<robot> {IdentDynamicModel = <value>} {IdentPayload = ON|OFF} {IdentFilterFreq = <value>} {IdentFileName = <value>} {IdentRelTeMax = <value>} {IdentRecTimeMax = <value>} {IdentDebug = ON|OFF} {IdentSampleGap = <value>}
Availability
Since Version 4.9.7
Type
- IdentDynamicModel : Long
- IdentFilterFreq : Double
- IdentFileName : String
- IdentRelTeMax : Double
- IdentRecTimeMax : Double
- IdentSampleGap : Long
Range
- IdentDynamicModel : 1, 2, 3, .. (only positive numbers, see available models)
Units
- IdentFilterFreq : Herz [Hz]
- IdentRelTeMax : Percent [%]
- IdentRecTimeMax : Seconds [s]
- IdentSampleGap : Cycle Time
Default
- IdentDynamicModel : element.DynamicModel
- IdentPayload : OFF
- IdentFilterFreq : 0 (auto-detect)
- IdentFileName : "" (auto-assign)
- IdentRelTeMax : 50%
- IdentRecTimeMax : 30s
- IdentDebug : ON
- IdentSampleGap : 1
Scope
Task or Terminal
Limitations
- Only one motion element can be identified at the same time.
Examples
Move axis axis.Pmax SineWave axis axis.Pmin IdentificationStart axis Sleep 10000 IdentificationFinish Print IdentificationStatus Stop axis