MC_Home

MC_Home 1:

Mit dem Funktionsbaustein MC_Home wird eine Referenzierfahrt der Achse durchgeführt.

Der Referenziermodus wird im TwinCAT SystemManager mit dem Encoderparameter Reference Mode eingestellt. Abhängig vom angeschlossenen Encoder-System sind verschiedene Abläufe möglich (siehe auch Referenziermodus für Inkrementalencoder)

Eingänge


VAR_INPUT
Execute : BOOL;
Position : LREAL := DEFAULT_HOME_POSITION;
HomingMode : MC_HomingMode;
BufferMode : MC_BufferMode;
Options : ST_HomingOptions;
bCalibrationCam : BOOL;
END_VAR

MC_BufferMode MC_HomingMode

Execute

Mit einer steigenden Flanke am Eingang Execute wird das Kommando ausgeführt.

Position

Absolute Referenzposition auf die die Achse nach der Referenzfahrt gesetzt wird.
Alternativ kann hier die Konstante DEFAULT_HOME_POSITION verwendet werden. Dadurch wird die im TwinCAT System Manager festgelegte Referenzposition für Referenzierfahrt verwendet.
Hinweis Da die Referenzposition üblicherweise noch während der Fahrt gesetzt wird, bleibt die Achse nicht exakt an dieser Position stehen. Die Stillstandsposition weicht um den Bremsweg der Achse ab, dennoch ist die Kalibrierung exakt.

HomingMode

HomingMode bestimmt, auf welche Weise die Kalibrierung durchgeführt wird.

  • MC_DefaultHoming
    Führt die Standard-Referenzfahrt aus.
  • MC_Direct
    Setzt die Position der Achse direkt auf Position ohne eine Bewegung auszuführen.
  • MC_ForceCalibration
    Erzwingt den Zustand "Achse ist kalibriert". Es wird keine Bewegung ausgeführt und die Position bleibt unverändert.
  • MC_ResetCalibration
    Setzt den Kalibrierungszustand der Achse zurück. Es wird keine Bewegung ausgeführt und die Position bleibt unverändert.

BufferMode

Zur Zeit nicht implementiert - Der BufferMode wird ausgewertet, wenn die Achse bereits ein anderes Kommando ausführt. Das laufende Kommando kann abgebrochen werden oder dieses Kommando wird erst nach dem laufenden Kommando aktiv. Die Übergangsbedingung vom laufenden zum nächsten Kommando wird ebenfalls durch den BufferMode festgelegt.

Options

Die Datenstruktur Options enthält zusätzliche, selten benötigte Parameter. Im Normalfall kann der Eingang offen bleiben.

Options.

ClearPositionLag

ClearPositionLag wirkt nur im Mode MC_Direct. ClearPositionLag kann optional gesetzt werden, falls Soll- und Istposition auf den gleichen Wert gesetzt werden sollen. Damit wird der Schleppfehler gelöscht.

bCalibrationCam

bCalibrationCam spielgelt das Signal einer Referenznocke wieder, das über einen digitalen Eingang in die Steuerung kommen kann.

Allgemeine Regeln für MC-Funktionsbausteine

Ausgänge


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

Done

Der Ausgang Done wird TRUE, wenn die Achse kalibriert wurde und die Bewegung beendet ist.

Busy

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

Active

Zur Zeit nicht implementiert - Active zeigt an, dass das Kommando ausgeführt wird. Wenn das Kommando gepuffert wurde, wird es evtl. erst aktiv, nachdem ein laufendes Kommando beendet ist.

CommandAborted

Wird TRUE, wenn das Kommando nicht vollständig ausgeführt werden konnte.

Error

Wird im Fehlerfall TRUE.

ErrorID

Liefert bei einem gesetzten Error-Ausgang die Fehlernummer.

Allgemeine Regeln für MC-Funktionsbausteine

Ein/Ausgänge


VAR_IN_OUT
Axis : AXIS_REF;
END_VAR

AXIS_REF

Axis

Achsdatenstruktur

Die Achsdatenstruktur vom Typ AXIS_REF adressiert eine Achse eindeutig im System. Sie enthält unter anderem den aktuellen Status der Achse, wie Position, Geschwindigkeit oder Fehlerzustand.

Anmerkung

Der Referenziervorgang läuft in mehreren Phasen ab. Der Referenzierstatus (Calibration State) wird im zyklischen Interface der Achse signalisiert (Axis.NcToPlc.HomingState). Im nachfolgenden Bild ist der Ablauf nach dem Start des MC_Home Bausteins mit den einzelnen Phasen schematisch dargestellt.

Soll eine Achse ohne Referenznocke, also nur auf den Sync-Impuls des Gebers, referenziert werden, so kann die Referenznocke durch das SPS-Programm simuliert werden. Das Signal bCalibrationCam wird zunächst aktiviert und dann zurückgenommen, wenn Axis.NcToPlc.HomingState größer oder gleich 4 ist.

MC_Home 2: