IF_CamReferenceGenerator - Calculate (Methode)

Übersicht

Typ

Methode

Verfügbar ab

V1.0.0.0

Versionen:

Aktuelle Version

Aufgabe

Berechnung von Sollwerten extern definierter Kurvenaufträge

Beschreibung

Diese Methode wird im Echtzeitzyklus des SoMotionGenerator aufgerufen. Über den Eingang i_lrX wird der Methode die Position des Masterobjekts übergeben.

Der externe Kurvenbaustein muss von dieser Masterposition eine Slaveposition berechnen und diese am Ausgang q_lrY zur Verfügung stellen.

Optional kann an den Ausgängen q_lrM und q_lrK. die 1. und 2. Ableitung der externen Kurve ausgegeben werden. Diese ermöglichen es der Funktion FC_CamCompute(), vollständige Ergebnisse zu liefern.

Durch Setzen des Ausgangs q_xReady kann dem SoMotionGenerator mitgeteilt werden, dass der Kurvenauftrag beendet ist und der nächste Auftrag in der Warteschlange aktiviert werden kann. Dieses Abbruchkriterium wird mit dem über den Parameter ST_Cam.etMode. gewählten Abbruchkriterium ODER verknüpft. Dadurch stehen externen Kurven ebenso die Standardab­bruchkriterien zur Verfügung.

Über den Rückgabewert der Methode können dem SoMotionGenerator eventuell aufgetretene Fehler mitgeteilt werden. Diese werden dann über den Parameter etCurentJobResult der Struktur ST_RealtimeChannel zur Verfügung gestellt.

Schnittstelle

Eingang

Datentyp

Beschreibung

i_xFirstCall

BOOL

Bit, das beim 1. Aufruf des Kurvenauftrags = TRUE, bei allen weiteren = FALSE ist. Kann dazu verwendet werden, Vorberechnungen durchzuführen.

i_lrX

LREAL

Logische Masterposition. Wird vom SoMotionGenerator zur Verfügung gestellt.

Einheit: Längeneinheiten

Ausgang

Datentyp

Beschreibung

q_etDiag

GD.ET_Diag

Allgemeine bibliotheksunabhängige Aussage zur Diagnose.

Ein Wert ungleich GD.ET_Diag.Ok entspricht einer Fehlermeldung.

q_etDiagExt

ET_DiagExt

Bausteinspezifischer Ausgang des Diagnosegeräts.

q_etDiag = GD.ET_Diag.Ok -> Statusmeldung

q_etDiag <> GD.ET_Diag.Ok -> Fehlermeldung

q_lrY

LREAL

Berechnete Slaveposition.

Einheit: Längeneinheiten

q_lrM

LREAL

1. Ableitung der Slaveposition. Dieser Ausgang ist optional.

q_lrK

LREAL

2. Ableitung der Slaveposition. Dieser Ausgang ist optional.

q_xReady

BOOL

TRUE : = Die Auftragsbearbeitung ist beendet.

FALSE := Die Auftragsbearbeitung ist noch aktiv.