FB_SoMotionGenerator - TakeJob (Methode)

Übersicht

Typ

Methode

Verfügbar ab

V1.0.0.0

Aufgabe

Absetzen von Fahraufträgen an den SMG

Beschreibung

Fahraufträge an den SMG werden über die Methode TakeJob abgesetzt. Diese hat als Eingangs­parameter den Kanal, an den der Fahrauftrag abgesetzt werden soll, sowie die Auftragsstruktur, die die Daten des Fahrauftrags enthält.

HINWEIS: Fehler in der Kurvendefinition können zu Sollwertsprüngen führen. Überprüfen Sie deshalb die Parametrisierung (z. B. Profiltyp, Skalierungsfaktor) während der Inbetriebnahme für alle Betriebsarten.

Caution_Color.gifVORSICHT

UNGÜLTIGE DATEN

Führen Sie keine Online-Änderung durch, während sich ein Auftrag des Typs ET_Motion­JobType.MultiCam in der Auftragspufferliste befindet oder im FB_SoMotionGenerator aktiv ist.

Die Nichtbeachtung dieser Anweisungen kann Verletzungen oder Sachschäden zur Folge haben.

Für Bewegungsaufträge des Typs ET_MotionJobType.MultiCam sind zusätzliche Daten aus einer PDL.ST_MultiCam-Struktur erforderlich. Aus diesem Grund verfügt ein Bewegungsauftrag über einen Verweis (Zeiger ) auf PDL.ST_Multicam in ST_MotionJob.ST_Cam.rstMultiCam. Wenn ein Auftrag über die TakeJob-Methode an den FB_SoMotionGenerator ausgegeben wird, werden die Auftragsparameter in den internen Auftragspuffer kopiert (mit dem Verweis auf ST_MultiCam). Der Verweis auf die ST_MultiCam-Daten wird während der Online-Änderung nicht aktualisiert.

Schnittstelle

Eingang

Datentyp

Beschreibung

i_etChannel

ET_Channel

Kanal, an den der Fahrauftrag abgesetzt werden soll.

Ausgang

Datentyp

Beschreibung

q_etDiag

GD.ET_Diag

Allgemeine bibliotheksunabhängige Aussage zur Diagnose.

Alle Werte außer GD.ET_Diag.Ok entsprechen einer Diagnosemeldung.

q_etDiagExt

ET_DiagExt

POU-abhängiger Ausgang des Diagnosegeräts.

q_etDiag = GD.ET_Diag.Ok -> Statusmeldung

q_etDiag <> GD.ET_Diag.Ok -> Diagnosemeldung

Ein-/Ausgang

Datentyp

Beschreibung

iq_stMotionJob

ST_MotionJob

Auftragsstruktur mit den Daten des Fahrauftrags.

Diagnosemeldungen

q_etDiag

q_etDiagExt

Aufzählungswert

Beschreibung

OK

Ok

0

Ok

ExecutionAborted

ExtRefGenInvalid

42

Die Instanz des externen Sollwertgeräts ist ungültig.

ExecutionAborted

JobBufferOverflow

34

Der Auftragspuffer ist voll. Es ist nicht möglich, weiter Aufträge abzusetzen.

ExecutionAborted

JobParamCamMode

31

Der Auftragsparameter stCam.etMode ist ungültig.

ExecutionAborted

JobParamCamXStartXEnd

26

Auftragsparameter stCam.lrXStart >= stCam.lrXEnd

ExecutionAborted

JobParamChannel

53

Der Auftragsparameter Channel ist ungültig.

ExecutionAborted

JobParamChannelBundling

29

Der Auftragsparameter xChannelBundling ist nur für Kanal A.

ExecutionAborted

JobParamJobType

14

Der Auftragsparameter etJobType ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamLambda

27

Der Auftragsparameter stCam.stDwell.lrLambda ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamMaster

32

Der Auftragsparameter stCam.ifMaster ist ungültig.

ExecutionAborted

JobParamMasterSetposMode

33

Der Auftragsparameter stCam.etMasterSetposMode ist ungültig.

ExecutionAborted

JobParamPosStartAbsJerk

20

Der Auftragsparameter stPosStart.lrAbsJerk ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamPosStartDelayType

22

Der Auftragsparameter stPosStart.etDelayType ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamPosStartMaxAcceleration

18

Der Auftragsparameter stPosStart.lrMaxAcceleration ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamPosStartMaxDeceleration

19

Der Auftragsparameter stPosStart.lrMaxDeceleration  ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamPosStartPosition

16

Der Auftragsparameter stPosStart.lrPosition ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamPosStartPosMode

21

Der Auftragsparameter stPosStart.etPosMode ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamPosStartVelocity

17

Der Auftragsparameter stPosStart.lrVelocity ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamPosStopAbsJerk

25

Der Auftragsparameter stPosStop.lrAbsJerk ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamPosStopMaxAcceleration

23

Der Auftragsparameter stPosStop.lrMaxAcceleration ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamPosStopMaxDeceleration

24

Der Auftragsparameter stPosStop.lrMaxDeceleration ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamSetposMode

15

Der Auftragsparameter etSetposMode ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamStraight

28

Der Auftragsparameter stCam.stDwell.lrStraight ist außerhalb des gültigen Bereichs.

ExecutionAborted

JobParamSystemCamProfileID

30

Der Auftragsparameter stSystemCam.diProfileID ist ungültig.

ExtRefGenInvalid

Aufzählungsname:

ExtRefGenInvalid

Aufzählungswert:

42

Beschreibung:

Die Instanz des externen Sollwertgeräts ist ungültig.

Problem

Ursache

Lösung

-

Der angeschlossene externe Positionsgenerator unterstützt nicht alle erforderlichen Funktionen.

Verwenden Sie einen Positionsgenerator, der alle erforderlichen Funktionen unterstützt.

Die an die Variable ST_MotionJob.stPositioning.stExternalPos.ifExternalPosGenerator oder ST_MotionJob.stCam.stExternalCam.ifExternalCamGenerator übergebene Schnittstelle ist ungültig.

JobBufferOverflow

Aufzählungsname:

JobBufferOverflow

Aufzählungswert:

34

Beschreibung:

Der Auftragspuffer ist voll. Es ist nicht möglich, weiter Aufträge abzusetzen.

Problem

Ursache

Lösung

-

Ein Kanal hat die maximale Anzahl speicherbarer Aufträge erreicht und konnte aus diesem Grund einen abgesetzten Auftrag nicht übernehmen. xReadyForNewJobInTake des Kanals ist FALSE.

Vor dem Absetzen eines Auftrags muss geprüft werden, ob xReadyForNewJobInTake des Kanals TRUE ist.

JobParamCamMode

Aufzählungsname:

JobParamCamMode

Aufzählungswert:

31

Beschreibung:

Der Auftragsparameter stCam.etMode ist ungültig.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stCam.etMode ist ungültig.

stCam.etMode muss mit einem Element von ET_CamMode zugewiesen werden.

JobParamCamXStartXEnd

Aufzählungsname:

JobParamCamXStartXEnd

Aufzählungswert:

26

Beschreibung:

Auftragsparameter stCam.lrXStart >= stCam.lrXEnd

Problem

Ursache

Lösung

-

Der zugewiesene Wert von stCam.lrXStart ist zu groß.

Der Wert der Variablen stCam.lrXStart muss kleiner als der Wert der Variablen stCam.lrXEnd sein.

JobParamChannel

Aufzählungsname:

JobParamChannel

Aufzählungswert:

53

Beschreibung:

Der Auftragsparameter Channel ist ungültig.

Problem

Ursache

Lösung

-

Am Eingang i_etChannel wurde ein ungültiger Kanal übergeben.

i_etChannel muss entweder ET_Channel.A, ET_Channel.B oder ET_Channel.C sein.

JobParamChannelBundling

Aufzählungsname:

JobParamChannelBundling

Aufzählungswert:

29

Beschreibung:

Der Auftragsparameter xChannelBundling ist nur für Kanal A.

Problem

Ursache

Lösung

-

Der Parameter stPosStart/stPosStop.xChannelBundling wurde für Kanal B oder Kanal C auf TRUE gesetzt.

Den Parameter stPosStart/stPosStop.xChannelBundling nur für Kanal A auf TRUE setzen.

JobParamJobType

Aufzählungsname:

JobParamJobType

Aufzählungswert:

14

Beschreibung:

Der Auftragsparameter etJobType ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen ST_MotionJob.etJobType ist ungültig.

ST_MotionJob.etJobType muss mit einem Element von ET_MotionJobType zugewiesen werden.

JobParamLambda

Aufzählungsname:

JobParamLambda

Aufzählungswert:

27

Beschreibung:

Der Auftragsparameter stCam.stDwell.lrLambda ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stCam.stDwellDwell.lrLambda ist ungültig.

lrLambda muss >= 0.0 und <= 1.0 sein.

JobParamMaster

Aufzählungsname:

JobParamMaster

Aufzählungswert:

32

Beschreibung:

Der Auftragsparameter stCam.ifMaster ist ungültig.

Problem

Ursache

Lösung

-

An die Variable stCam.ifMaster wurde kein gültiger Master übergeben.

Der Variablen stCam.ifMaster muss ein gültiger Master übergeben werden.

-

Der angeschlossene Master unterstützt nicht alle nötigen Funktionen.

Entnehmen Sie dem Ausgang q_sMsg, welche Funktionen der Master nicht unterstützt.

Verwenden Sie einen Master, der alle erforderlichen Funktionen unterstützt.

JobParamMasterSetposMode

Aufzählungsname:

JobParamMasterSetposMode

Aufzählungswert:

33

Beschreibung:

Der Auftragsparameter stCam.etMasterSetposMode ist ungültig.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stCam.etMasterSetposMode ist ungültig.

etMasterSetposMode muss vom Typ ET_SetposMode sein.

JobParamPosStartAbsJerk

Aufzählungsname:

JobParamPosStartAbsJerk

Aufzählungswert:

20

Beschreibung:

Der Auftragsparameter stPosStart.lrAbsJerk ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stPosStart.lrAbsJerk ist ungültig.

stPosStart.lrAbsJerk muss >= 0.001 sein.

JobParamPosStartDelayType

Aufzählungsname:

JobParamPosStartDelayType

Aufzählungswert:

22

Beschreibung:

Der Auftragsparameter stPosStart.etDelayType ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stPosStart.etDelayType ist ungültig.

stPosStart.etDelayType muss mit einem Element von ET_PosStartDelayType zugewiesen werden.

JobParamPosStartMaxAcceleration

Aufzählungsname:

JobParamPosStartMaxAcceleration

Aufzählungswert:

18

Beschreibung:

Der Auftragsparameter stPosStart.lrMaxAcceleration ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stPosStart.lrMaxAcceleration ist ungültig.

stPosStart.lrMaxAcceleration  muss >= 0.001 sein.

JobParamPosStartMaxDeceleration

Aufzählungsname:

JobParamPosStartMaxDeceleration

Aufzählungswert:

19

Beschreibung:

Der Auftragsparameter stPosStart.lrMaxDeceleration  ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stPosStart.lrMaxDeceleration ist ungültig.

stPosStart.lrMaxDeceleration muss >= 0.001 sein.

JobParamPosStartPosition

Aufzählungsname:

JobParamPosStartPosition

Aufzählungswert:

16

Beschreibung:

Der Auftragsparameter stPosStart.lrPosition ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stPosStart.lrPosition ist ungültig.

Bei einer relativen Positionierung (stPosStart.etPosMode = ET_PosMode.Relative) muss stPosStart.lrPosition >= 0.001 sein.

JobParamPosStartPosMode

Aufzählungsname:

JobParamPosStartPosMode

Aufzählungswert:

21

Beschreibung:

Der Auftragsparameter stPosStart.etPosMode ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stPosStart.etPosMode ist ungültig.

stPosStart.etPosMode muss den Wert ET_PosMode.Absolute bei einer absoluten Positionierung oder den Wert ET_PosMode.Relative bei einer relativen Positionierung besitzen.

JobParamPosStartVelocity

Aufzählungsname:

JobParamPosStartVelocity

Aufzählungswert:

17

Beschreibung:

Der Auftragsparameter stPosStart.lrVelocity ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stPosStart.lrVelocity ist ungültig.

stPosStart.lrVelocity muss >= 0.001 sein.

JobParamPosStopAbsJerk

Aufzählungsname:

JobParamPosStopAbsJerk

Aufzählungswert:

25

Beschreibung:

Der Auftragsparameter stPosStop.lrAbsJerk ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stPosStop.lrAbsJerk ist ungültig.

stPosStop.lrAbsJerk muss >= 0.001 sein.

JobParamPosStopMaxAcceleration

Aufzählungsname:

JobParamPosStopMaxAcceleration

Aufzählungswert:

23

Beschreibung:

Der Auftragsparameter stPosStop.lrMaxAcceleration ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stPosStop.lrMaxAcceleration ist ungültig.

stPosStop.lrMaxAcceleration muss >= 0.001 sein.

JobParamPosStopMaxDeceleration

Aufzählungsname:

JobParamPosStopMaxDeceleration

Aufzählungswert:

24

Beschreibung:

Der Auftragsparameter stPosStop.lrMaxDeceleration ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stPosStop.lrMaxDeceleration ist ungültig.

stPosStop.lrMaxDeceleration muss >= 0.001 sein.

JobParamSetposMode

Aufzählungsname:

JobParamSetposMode

Aufzählungswert:

15

Beschreibung:

Der Auftragsparameter etSetposMode ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen etSetposMode ist ungültig.

etSetposMode muss vom Typ ET_SetposMode sein.

JobParamStraight

Aufzählungsname:

JobParamStraight

Aufzählungswert:

28

Beschreibung:

Der Auftragsparameter stCam.stDwell.lrStraight ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stCam.stDwellDwell.lrStraight ist ungültig.

lrStraight muss >= 0.0 und <= 0.99 sein.

JobParamSystemCamProfileID

Aufzählungsname:

JobParamSystemCamProfileID

Aufzählungswert:

30

Beschreibung:

Der Auftragsparameter stSystemCam.diProfileID ist ungültig.

Problem

Ursache

Lösung

-

Der zugewiesene Wert der Variablen stCam.stSystemCam.diProfileID ist ungültig.

Überprüfen Sie diProfileID.

Ok

Aufzählungsname:

Ok

Aufzählungswert:

0

Beschreibung:

Ok

Das Absetzen eines Fahrauftrags für den SMG war erfolgreich.