FC_CalcStoppingDistance - Allgemeine Informationen
|
Typ |
Funktion |
|
Verfügbar ab: |
V1.5.3.0 |
Berechnung der Strecke und Zeit für den Stopp (vollständiges Abbremsen) der aktuellen Bewegung ausgehend von der Istgeschwindigkeit, der Istbeschleunigung und den Randbedingungen (maximale Beschleunigung, Verzögerung und Ruckwert).
Die Funktion FC_CalcStoppingDistance berechnet den Bremsweg.
Zur Berücksichtigung von Systemverzögerungen verwendet diese Methode nicht die angegebene Geschwindigkeit für den Start des Bremsvorgangs, sondern die Geschwindigkeit einen halben Sercos-Zyklus später, wobei von einer konstanten Beschleunigung (angegeben als Eingang) ausgegangen wird.
|
Eingang |
Datentyp |
Beschreibung |
Bereich |
Standardwert |
|---|---|---|---|---|
|
i_lrV0 |
LREAL |
Anfangsgeschwindigkeit in Einheiten/s |
-1,8x10308...1,8x10308 |
- |
|
i_lrA0 |
LREAL |
Anfangsbeschleunigung in Einheiten/s2 |
-1,8x10308...1,8x10308 |
- |
|
i_lrAcc |
LREAL |
Maximaler absoluter Beschleunigungswert in Einheiten/s2, wenn die Bewegungsänderung mit positiver Beschleunigung zu erfolgen hat. |
+1x10-12...1,8x10308 |
- |
|
i_lrDec |
LREAL |
Maximaler absoluter Beschleunigungswert in Einheiten/s2, wenn die Bewegungsänderung mit negativer Beschleunigung zu erfolgen hat. |
+1x10-12...1,8x10308 |
- |
|
i_lrJerk |
LREAL |
Absolutwert des Rucks in Einheiten/s3 |
+1x10-12...1,8x10308 |
- |
|
Ausgang |
Datentyp |
Beschreibung |
Bereich |
Standardwert |
|---|---|---|---|---|
|
q_lrStoppingTime |
LREAL |
Für den Stopp benötigte Zeit |
0...1.8x10308 |
- |
|
q_etDiag |
Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose. Alle Werte außer ET_Diag.Ok entsprechen einer Diagnosemeldung. |
- |
- |
|
|
q_etDiagExt |
POU-spezifischer, diagnosebezogener Ausgang. q_etDiag = ET_Diag.Ok -> Statusmeldung q_etDiag <> ET_Diag.Ok -> Diagnosemeldung |
- |
- |
|
|
q_etAccChar |
Eigenschaft der Beschleunigungsphasen |
- |
- |
|
Datentyp |
Beschreibung |
|---|---|
|
LREAL |
Berechneter Bremsweg |
|
q_etDiag |
q_etDiagExt |
Enumerationswert |
Beschreibung |
|---|---|---|---|
|
Ok |
0 |
OK |
|
|
InputParameterInvalid |
12 |
Acc ist außerhalb des gültigen Bereichs. |
|
|
InputParameterInvalid |
13 |
Dec ist außerhalb des gültigen Bereichs. |
|
|
InputParameterInvalid |
14 |
Jerk ist außerhalb des gültigen Bereichs. |
|
Enumerationsname: |
AccRange |
|
Enumerationswert: |
12 |
|
Beschreibung: |
Acc ist außerhalb des gültigen Bereichs. |
|
Problem |
Ursache |
Lösung |
|---|---|---|
|
- |
Der Eingang für die Beschleunigungsschwelle ist nicht positiv. |
Wenden Sie einen positiven Wert auf den Eingang i_lrAcc an. |
|
Enumerationsname: |
DecRange |
|
Enumerationswert: |
13 |
|
Beschreibung: |
Dec ist außerhalb des gültigen Bereichs. |
|
Problem |
Ursache |
Lösung |
|---|---|---|
|
- |
Der Eingang für die Verzögerungsschwelle ist nicht positiv. |
Wenden Sie einen positiven Wert auf den Eingang i_lrDec an. |
|
Enumerationsname: |
JerkRange |
|
Enumerationswert: |
14 |
|
Beschreibung: |
Jerk ist außerhalb des gültigen Bereichs. |
|
Problem |
Ursache |
Lösung |
|---|---|---|
|
- |
Der Eingang für die Ruckschwelle ist nicht positiv. |
Wenden Sie einen positiven Wert auf den Eingang i_lrJerk an. |
|
Enumerationsname: |
Ok |
|
Enumerationswert: |
0 |
|
Beschreibung: |
OK |
Die Berechnung wurde erfolgreich abgeschlossen.