L_MC4P_DynamicParIdent

Mit dem FB L_MC4P_ DynamicParIdent können die für eine Drehmomentvorsteuerung ( L_MC4P_GroupTorquePreControl ) benötigten Dynamikparameter einer Achsgruppe ermittelt werden. Hierfür wird die Achsgruppe mit einer intern berechneten Identifikationstrajektorie (Bahnkurve) beauftragt und die Parameter während dieser Bewegung identifiziert.

Der Funktionsbaustein unterstützt aktuell die folgenden Achsgruppen:

  • Delta3_3dof
  • Delta3_4dof

Grundlagen und weitere Informationen siehe:

Drehmomentvorsteuerung zur Reduktion von Schleppfehlern

Parameteridentifikation mit dem FB L_MC4P_DynamicParIdent

Hinweis!

Die Qualität der identifizierten Parameter ist nach jedem Identifikationslauf mit dem Baustein L_MC4P_GroupTorquePreControl bei lrTorqueOverride = 0 über den Vergleich von alrSetTorque-Out und alrActTorque sicherzustellen! Ergebnisse durch Drehmomentvergleich kontrollieren

 

 

 

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

 

 

 

 

 

 

 

 

Eingänge

Name

Datentyp

Info/Einstellmöglichkeiten

AxesGroup

AXES_GROUP_KIN

Achsgruppenreferenz

xExecute

BOOL

FALSE ä TRUE

Identifikation starten.

TRUE ä FALSE

FB zurücksetzen.

Die identifizierten Werte können nicht mehr von einem PreControl-FB über das Interface iftDynamicPar ausgelesen werden.

itfDynamicParMin

L_MC4P_DynamicPar

Optionale Untergrenzen für die zu identifizierenden Parameter.

L_MK4P_DynamicParDelta3_3dof

L_MK4P_DynamicParDelta3_4dof

L_MK4P_DynamicParScara_3dof

L_MK4P_DynamicParScara_4dof

UseCase 1: Unterschiedliche Parametrierungen von alrGraviationVector in itfDynamicParMin und itfDynamicParMax führen zu einem Fehler.

UseCase 2: Keine Parametrierungen von alrGraviationVector in itfDynamicParMin und itfDynamicParMax , da keine Interface-FBs angeschlossen sind. Stattdessen werden die Parameter Gravitation y und Gravitation z aus der Achsgruppe ausgelesen.

itfDynamicParMax

L_MC4P_DynamicPar

Optionale Obergrenzen für die zu identifizierenden Parameter.

L_MK4P_DynamicParDelta3_3dof

L_MK4P_DynamicParDelta3_4dof

Hinweis: Werden die Parametergrenzen in itfDynamicParMin und itfDynamicParMax für einzelne Parameter gleich gesetzt, werden diese während der Identifikation nicht variiert. Dies kann genutzt werden, wenn bestimmte Größen aus anderen Messungen bereits hinreichend genau bekannt sind.

xUseAxesLimits

BOOL

TRUE

Die Achsparameter ( Standardwerte der Achsen und Software-Endlagen ) werden als Grenzwerte für die Identifikationstrajektorie verwendet.

Sind diese Parameter in den Achsen nicht gesetzt, wird ein Fehler ausgegeben.

FALSE

Die Eingänge alrMinPos , alrMaxPos , alrMaxVel , alrMaxAcc , alrMaxJerk werden als Grenzwerte für die Identifikationstrajektorie verwendet.

alrMinPos

ARRAY[1..6] OF LREAL

Minimale Position der kartesischen Achsen (Arbeitsraumbegrenzung).

alrMaxPos

ARRAY[1..6] OF LREAL

Maximale Position der kartesischen Achsen (Arbeitsraumbegrenzung).

alrMaxVel

ARRAY[1..6] OF LREAL

Maximale Geschwindigkeit der kartesischen Achsen.

alrMaxAcc

ARRAY[1..6] OF LREAL

Maximale Beschleunigung der kartesischen Achsen.

Ausgänge

Name

Datentyp

Wert/Bedeutung

xDone

BOOL

TRUE

Die Identifikation ist erfolgreich abgeschlossen. Interne Plausibilitätstests der identifizierten Parameter waren ebenfalls erfolgreich.

xBusy

BOOL

TRUE

Abarbeitung läuft.

xActive

BOOL

TRUE

Der FB beauftragt die Achsgruppe mit der Identifikationstrajektorie.

xError

BOOL

TRUE

Ein Fehler ist aufgetreten. Details siehe eErrorID .

eErrorID

L_IE1P_Error

Wenn xError = TRUE: Fehlernummer zum aufgetretenen Fehler.

xCommandAborted

BOOL

TRUE

Identifikation abgebrochen

lrConvergence

LREAL

Gütekriterium für die Konvergenz der identifizierten Parameter. Der Ausgang nimmt Werte zwischen 0 ... 1 an. Dies entspricht einer Güte von 0...100 %

Eine gute Identifikation sollte Werte > 75 % liefern.

Verschaltungsbeispiel