MC_SetCamOnlineChangeMode

MC_SetCamOnlineChangeMode 1:

Der Funktionsbaustein MC_SetCamOnlineChangeMode legt den Modus für Schreibzugriffe auf Kurvenscheibendaten fest.

Kurvenscheiben können während der Laufzeit durch die SPS geändert werden (siehe MC_WriteMotionFunction, MC_WriteMotionFunctionPoint). Mit MC_SetCamOnlineChangeMode wird festgelegt, wann und wie diese Änderungen übernommen werden. Der eingestellte Modus wirkt auf alle nachfolgenden Schreibvorgänge. Es ist also nicht notwendig den Baustein vor jedem Schreibzugriff erneut aufzurufen.

Diese Funktion legt den Aktivierungsmodus für Änderungen fest, führt aber selbst keine Änderung oder Umschaltung von Kurvenscheiben aus.

Eingänge

VAR_INPUT
   Execute              : BOOL;
   ActivationMode       : MC_CamActivationMode;
   ActivationPosition   : LREAL;
   MasterScalingMode    : MC_CamScalingMode;
   SlaveScalingMode     : MC_CamScalingMode;
   CamTableID           : MC_CAM_ID;
END_VAR

Execute

Mit der steigenden Flanke wird das Kommando ausgeführt.

ActivationMode

Definiert, wann und wie die Skalierung durchgeführt wird. (MC_CamActivationMode)

ActivationPosition

Optionale Master-Position, an der die Skalierung durchgeführt wird (je nach ActivationMode).
Falls der ActivationMode MC_CAMACTIVATION_ATMASTERCAMPOS verwendet wird, bezieht sich die Position auf die unskalierte Kurvenscheibe. Wenn sich die Position in der Anwendung auf die skalierte Kurvenscheibe bezieht, so kann sie vor Aufruf des Funktionsbausteins durch die MasterSkalierung MasterScaling dividiert werden.

MasterScalingMode

Art der der Master-Skalierung. (MC_CamScalingMode)

SlaveScalingMode

Art der der Slave-Skalierung. (MC_CamScalingMode)

CamTableID

Tabellen ID.

Ausgänge

VAR_OUTPUT
   Done                 : BOOL;
   Busy                 : BOOL;
   Error                : BOOL;
   ErrorID              : UDINT;
END_VAR

Done

Wird TRUE, wenn die Funktion erfolgreich durchgeführt wurde.

Busy

Der Busy-Ausgang wird TRUE, sobald das Kommando mit Execute gestartet wird und bleibt TRUE, solange der Befehl abgearbeitet wird. Wenn Busy wieder FALSE wird, so ist der Funktionsbaustein bereit für einen neuen Auftrag. Gleichzeitig ist einer der Ausgänge Done oder Error gesetzt.

Error

Wird TRUE, sobald ein Fehler eintritt.

ErrorID

Liefert bei einem gesetzten Error-Ausgang die Fehlernummer.