MC_AxRtGenerator_BkPlcMc
Der Funktionsbaustein übernimmt die Aufgabe des Stellwertgenerators. Dazu wird in Abhängigkeit des in Axis.ST_TcHydAxParam als nProfileType eingestellten Wertes ein profilspezifischer Baustein aufgerufen.
Ein-/Ausgänge
VAR_INOUT
Axis: Axis_Ref_BkPlcMc;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
Axis | Axis_Ref_BkPlcMc | Hier ist die Adresse einer Variablen vom Typ Axis_Ref_BkPlcMc zu übergeben. |
Ausgänge
VAR_OUTPUT
Error: BOOL;
ErrorID: UDINT;
LagError: BOOL;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
Error | BOOL | Hier wird das Auftreten eines Fehlers signalisiert. |
ErrorID | UDINT | Hier wird eine codierte Fehlerursache bereitgestellt. |
LagError | BOOL | Wenn der Schleppabstand die eingestellten Grenzen verletzt, wird dies hier signalisiert. Dieses Signal steht auch bei nicht aktivierter Schleppabstandsüberwachung zur Verfügung. |
Verhalten des Bausteins
Bei jedem Aufruf untersucht der Baustein das übergebene Achsinterface. Dabei können eine Reihe von Problemen erkannt und gemeldet werden:
- Wenn einer der Pointer nicht initialisiert ist wird mit Error und ErrorID:=dwTcHydErrCdPtrPlcMc oder dwTcHydErrCdPtrMcPlc reagiert.
Wenn diese Überprüfungen ohne Problem durchgeführt werden konnten wird die Stellwertgenerierung der Achse entsprechend nProfileType in Axis.ST_TcHydAxParam durch Aufruf eines entsprechenden Bausteins durchgeführt.
Der Ausgang LagError signalisiert, ob der aktuelle Schleppabstand der Achse die eingestellten Grenzen überschreitet. Nur wenn bMaxLagEna in Axis.ST_TcHydAxParam gesetzt ist wird dann die Achse in einen Fehlerzustand versetzt.
Derzeit stehen die folgenden Generatoren zur Verfügung:
nProfileType | Beschreibung |
---|---|
Standardprofil: Einstufige zeitgesteuerte Beschleunigung, weggesteuerte (Wurzelbildner) Bremsrampe, Zielanfahrt mit Schleichgeschwindigkeit, wählbares Verhalten im Ruhezustand. Das Starten einer fahrenden Achse (neues Ziel, neue Geschwindigkeit usw.) ist außer im Störzustand oder einem Zustand mit abhängiger Stellwertgenerierung immer möglich. Info: Es kann zu einem Überfahren des neuen Ziels auch dann kommen, wenn sich die Achse zum Zeitpunkt des Startens noch vor der Zielposition befindet. Info: Der Baustein kann so parametriert werden, dass er unter bestimmten durch seine Parameter definierten Bedingungen automatisch starten und in einen aktiven Fahrzustand übergehen wird. Info: Dieser Generatortyp kann optional auch rein zeitgesteuert mit ständig geschlossenem Lageregler arbeiten. | |
iTcMc_ProfileJerkBased | Standardprofil: Ein- oder zweistufige zeitgesteuerte Beschleunigung durch optionale Ruckbegrenzung, weggesteuerte (Wurzelbildner) Bremsrampe, Zielanfahrt mit Ruckbegrenzung, wählbares Verhalten im Ruhezustand. Das Starten einer fahrenden Achse (neues Ziel, neue Geschwindigkeit usw.) ist außer im Störzustand oder einem Zustand mit abhängiger Stellwertgenerierung immer möglich. Info: Es kann zu einem Überfahren des neuen Ziels auch dann kommen, wenn sich die Achse zum Zeitpunkt des Startens noch vor der Zielposition befindet. Info: Der Baustein kann so parametriert werden, dass er unter bestimmten durch seine Parameter definierten Bedingungen automatisch starten und in einen aktiven Fahrzustand übergehen wird. Info: Dieser Generatortyp kann optional auch rein zeitgesteuert mit ständig geschlossenem Lageregler arbeiten. Info: Einige Funktionen werden von diesem Generatortyp nicht oder unvollständig unterstützt. |
iTcMc_ProfileTimePosCtrl | Info: Nur aus Kompatibilitätsgründen vorhanden, wird in Kürze nicht mehr unterstützt werden. Sonderprofil: Zweistufige (zunächst zeitgesteuert, dann weggesteuert mit Wurzelbildner) Beschleunigung, weggesteuerte (Wurzelbildner) Bremsrampe, Zielanfahrt mit Schleichgeschwindigkeit, wählbares Verhalten im Ruhezustand. Das Starten einer fahrenden Achse (neues Ziel, neue Geschwindigkeit usw.) ist nicht möglich. |
iTcMc_ProfileCosine | Info: Nur aus Kompatibilitätsgründen vorhanden, wird in Kürze nicht mehr unterstützt werden. Sonderprofil: Zweistufige (zunächst zeitgesteuert, dann weggesteuert mit Cosinusbildner) Beschleunigung, weggesteuerte (Cosinusbildner) Bremsrampe, Zielanfahrt mit Schleichgeschwindigkeit, wählbares Verhalten im Ruhezustand. Das Starten einer fahrenden Achse (neues Ziel, neue Geschwindigkeit usw.) ist nicht möglich. |
Sonderprofil: Einstufige zeitgesteuerte Beschleunigung, zeitgesteuerte Bremsrampe, Zielanfahrt mit Schleichgeschwindigkeit, eingeschränkt wählbares Verhalten im Ruhezustand. Der Generator arbeitet mit Positionsnocken anstelle eines Encoders. Das Starten einer fahrenden Achse (neues Ziel, neue Geschwindigkeit usw.) ist außer im Störzustand möglich. Info: Dieser Generatortyp ist für Achsen vorgesehen, die an Stelle eines Encoders lediglich über digitale Nocken verfügen. |
Wenn nur die üblichen Bausteine (Encoder, Generator, Finish, Drive) für die Achse aufgerufen werden sollte zur Vereinfachung ein Baustein des Typs MC_AxStandardBody_BkPlcMc verwendet werden.
iTcMc_ProfileCtrlBased
Es wird ein Profil mit einer zeitgesteuerten Beschleunigungsphase, einer weggesteuerten Bremsphase nach dem Prinzip des Wurzelbildners und eine Zielannäherung mit Schleichgeschwindigkeit erzeugt.
Die Pfeile am Stellwertprofil deuten die Gestaltungsmöglichkeiten durch Parameter des Bewegungsauftrags bzw. der Achse an. Zunächst wird mit einer zeitgesteuerten Rampenfunktionen "1" auf die geforderten Fahrgeschwindigkeit "2" beschleunigt. Dieser Stellwert wird aufrechterhalten, bis ein beim Start vorberechneter Wegpunkt erreicht wird. Ab hier wird mit einer weggesteuerten Rampe "3" so vom Fahrstellwert auf den Schleichstellwert "5" heruntergebremst, dass dieser Stellwert in einer festgelegten Entfernung "4" zum Ziel erreicht wird. Dieser Stellwert wird aufrechterhalten, bis die Entfernung sich dem Ziel bis auf eine Reststrecke "6" genähert hat. Jetzt wird in das Ruheverhalten umgeschaltet.
Aktive Parameter im Fahrprofil
Startrampe "1": Wirksam wird der kleinste von folgenden Werten: fMaxAcc und fAcc in Axis.ST_TcHydAxParam, Acceleration des zum Achsstart verwendeten Bausteins (Beispiel: MC_MoveAbsolute_BkPlcMc).
Fahrphase "2": Wirksam wird der kleinste von folgenden Werten: fRefVelo und fMaxVelo in Axis.ST_TcHydAxParam, Velocity des zum Achsstart verwendeten Bausteins (Beispiel: MC_MoveAbsolute_BkPlcMc).
Bremsrampe "3": Wirksam wird der kleinste von folgenden Werten: fMaxDec und fDec in Axis.ST_TcHydAxParam, Deceleration des zum Achsstart verwendeten Bausteins (Beispiel: MC_MoveAbsolute_BkPlcMc).
Schleichphase "4", "5": Wirksam werden die Werte fCreepSpeed und fCreepDistance in Axis.ST_TcHydAxParam.
Übergang im Ziel "6": Wirksam wird fBrakeDistance und/oder fBrakeDeadTime in Axis.ST_TcHydAxParam.
Automatisches Starten der Achse
Wenn die Abweichung zwischen der Istposition und der aktuell geltenden Zielposition den Wert in Axis.ST_TcHydAxParam.fReposDistance überschreitet wird ein automatischer Start ausgelöst.
iTcMc_ProfileJerkBased
Es wird ein Profil mit einer zeitgesteuerten Beschleunigungsphase (mit optionaler Ruckbegrenzung), einer weggesteuerten Bremsrampe nach dem Prinzip des Wurzelbildners und einer Zielanfahrt mit Ruckbegrenzung erzeugt.
Die Pfeile am Stellwertprofil deuten die Gestaltungsmöglichkeiten durch Parameter des Bewegungsauftrags bzw. der Achse an. Zunächst wird mit einer zeitgesteuerten Rampenfunktionen "1" auf die geforderten Fahrgeschwindigkeit "2" beschleunigt. Dabei kann die optionale Ruckbegrenzung "6" wirksam werden. Die Fahrgeschwindigkeit wird aufrechterhalten, bis ein beim Start vorberechneter Wegpunkt erreicht wird. Ab hier wird mit einer weggesteuerten Rampe "3" heruntergebremst bis die Entfernung sich dem Ziel bis auf die Reststrecke genähert hat. Dabei wird die Verzögerung "4" mit einem Begrenzten Ruck "5" zum Ziel hin abgebaut. Jetzt wird in das Ruheverhalten umgeschaltet.
Aktive Parameter im Fahrprofil
Startrampe "1": Wirksam wird der kleinste von folgenden Werten: fMaxAcc und fAcc in Axis.ST_TcHydAxParam, Acceleration des zum Achsstart verwendeten Bausteins (Beispiel: MC_MoveAbsolute_BkPlcMc).
Fahrphase "2": Wirksam wird der kleinste von folgenden Werten: fRefVelo und fMaxVelo in Axis.ST_TcHydAxParam, Velocity des zum Achsstart verwendeten Bausteins (Beispiel: MC_MoveAbsolute_BkPlcMc).
Bremsrampe "3", "4": Wirksam wird der kleinste von folgenden Werten: fMaxDec und fDec in Axis.ST_TcHydAxParam, Deceleration des zum Achsstart verwendeten Bausteins (Beispiel: MC_MoveAbsolute_BkPlcMc).
Übergang im Ziel "5": Wirksam werden fMaxJerk in Axis.ST_TcHydAxParam und fJerk des zum Achsstart verwendeten Bausteins (Beispiel: MC_MoveAbsolute_BkPlcMc) sowie fBrakeDistance und/oder fBrakeDeadTime in Axis.ST_TcHydAxParam.
iTcMc_ProfileTimePosCtrl
Nur aus Kompatibilitätsgründen vorhanden, wird in Kürze nicht mehr unterstützt werden. Er sollte bei neuen Projekten nicht eingesetzt und bei der Überarbeitung von bestehenden Projekten möglichst ersetzt werden. |
iTcMc_ProfileCosine
Nur aus Kompatibilitätsgründen vorhanden, wird in Kürze nicht mehr unterstützt werden. Er sollte bei neuen Projekten nicht eingesetzt und bei der Überarbeitung von bestehenden Projekten möglichst ersetzt werden. |
iTcMc_ProfileTimeRamp
Es wird ein Profil mit einer zeitgesteuerten Beschleunigungsphase, einer zeitgesteuerten Bremsphase und eine Zielannäherung mit Schleichgeschwindigkeit erzeugt.
Die Pfeile am Stellwertprofil deuten die Gestaltungsmöglichkeiten durch Parameter des Bewegungsauftrags bzw. der Achse an. Zunächst wird mit einer zeitgesteuerten Rampenfunktionen "1" auf die geforderten Fahrgeschwindigkeit "2" beschleunigt. Dieser Stellwert wird aufrechterhalten, bis der richtungsspezifische Zielfensternocken erkannt wird. Ab hier wird mit einer zeitgesteuerten Rampe "3" vom Fahrstellwert auf den Schleichstellwert "5" heruntergebremst. Dieser Stellwert wird aufrechterhalten, bis der richtungsspezifische Zielnocken erkannt wird. Jetzt wird in das Ruheverhalten umgeschaltet.
Aktive Parameter im Fahrprofil
Startrampe "1": Wirksam wird fStartRamp in Axis.ST_TcHydAxParam.
Fahrphase "2": Wirksam wird der kleinste von folgenden Werten: fRefVelo und fMaxVelo in Axis.ST_TcHydAxParam, Velocity des zum Achsstart verwendeten Bausteins (Beispiel: MC_MoveAbsolute_BkPlcMc).
Bremsrampe "3": Wirksam wird fStopRamp in Axis.ST_TcHydAxParam.
Schleichphase "4": Wirksam wird fCreepSpeed in Axis.ST_TcHydAxParam.
Verhalten des Bausteins beim Durchstarten während einer Bewegung
Wird während einer aktiven Bewegung ein weiterer Startbefehl gegeben ist sind zwei Fälle zu unterscheiden.
Dieses Profil entsteht beim Nachstarten in gleicher Richtung mit anderer (hier mit höherer) Geschwindigkeit.
Dieses Profil entsteht beim Nachstarten in entgegengesetzter Richtung, hier mit gleicher Geschwindigkeit.
Dieser Profiltyp kann sinnvoll nur in Kombination mit dem Encodertyp iTcMc_EncoderDigCam verwendet werden. Siehe auch Sonderfall digitale Positionsnocken.