FB_SegmentedCam - Prepare (Methode)
Typ |
Methode |
Verfügbar ab |
V1.0.0.0 |
Erzeugung einer segmentierten Kurve
Die Methode erzeugt anhand des Array i_astCamSegments eine segmentierte Kurve mit i_diNumberOfSegments-Segmenten. Stellen Sie sicher, dass die Werte ST_Cam.lrXEnd und ST_Cam.lrYEnd eines Segments mit den Werten ST_Cam.lrXStart und ST_Cam.lrYStart des folgenden Segments übereinstimmen.
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_diNumberOfSegments |
DINT |
Anzahl der Segmente |
i_astCamSegment |
ARRAY[1..Gc_diMaxNumberOfCamSegments] OF |
Struktur zur Parametrisierung der Einzelsegmente |
Ausgang |
Datentyp |
Beschreibung |
---|---|---|
q_etDiag |
Allgemeine bibliotheksunabhängige Aussage zur Diagnose. Alle Werte außer GD.ET_Diag.Ok entsprechen einer Diagnosemeldung. |
|
q_etDiagExt |
POU-abhängiger Ausgang des Diagnosegeräts. q_etDiag = GD.ET_Diag.Ok -> Statusmeldung q_etDiag <> GD.ET_Diag.Ok -> Diagnosemeldung |
|
q_sMsg |
STRING[80] |
Ereignisabhängige Meldung, die detaillierte Informationen zum Diagnosezustand liefert. |
q_etDiag |
q_etDiagExt |
Aufzählungswert |
Beschreibung |
---|---|---|---|
OK |
0 |
Ok |
|
InputParameterInvalid |
67 |
JobType ist nicht bestimmbar. |
|
InputParameterInvalid |
66 |
NumberOfSegments ist außerhalb des gültigen Bereichs. |
|
InputParameterInvalid |
68 |
Xend und Xstart müssen gleich sein. |
|
InputParameterInvalid |
65 |
XStart ist größer als XEnd. |
|
InputParameterInvalid |
69 |
Yend und Ystart müssen gleich sein. |
Aufzählungsname: |
JobTypeUnknown |
Aufzählungswert: |
67 |
Beschreibung: |
JobType ist nicht bestimmbar. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Ein Segment der segmentierten Kurve beinhaltet keinen gültigen Kurvenauftrag. |
Entnehmen Sie dem Ausgang q_sMsg, welche Kurve fehlerhaft ist. |
Aufzählungsname: |
NumberOfSegmentsRange |
Aufzählungswert: |
66 |
Beschreibung: |
NumberOfSegments ist außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Die Anzahl der Segmente der segmentierten Kurve ist ungültig. |
Die Anzahl der Segmente muss <= Gc_diMaxNumberOfCamSegments sein. |
Aufzählungsname: |
Ok |
Aufzählungswert: |
0 |
Beschreibung: |
Ok |
Die segmentierte Kurve wurde erfolgreich erzeugt.
Aufzählungsname: |
XendMustBeEqualXstart |
Aufzählungswert: |
68 |
Beschreibung: |
Xend und Xstart müssen gleich sein. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Bei zwei unmittelbar aufeinanderfolgenden Segmenten einer segmentierten Kurve ist lrXend <> lrXStart. |
Setzen Sie lrXend des vorherigen Segments gleich lrXStart des nachfolgenden Segments. Entnehmen Sie dem Ausgang q_sMsg, welche Segmente fehlerhaft sind. |
Aufzählungsname: |
XstartGreaterXend |
Aufzählungswert: |
65 |
Beschreibung: |
XStart ist größer als XEnd. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Der zugewiesene Wert der Variablen lrXStart eines Segments ist zu groß. |
Der Wert der Variablen lrXStart muss kleiner als der Wert der Variablen lrXEnd eines Segments sein. |
Aufzählungsname: |
YendMustBeEqualYstart |
Aufzählungswert: |
69 |
Beschreibung: |
Yend und Ystart müssen gleich sein. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Bei zwei unmittelbar aufeinanderfolgenden Segmenten einer segmentierten Kurve ist lrYend <> lrYStart. |
Setzen Sie lrYend des vorherigen Segments gleich lrYStart des nachfolgenden Segments. Entnehmen Sie dem Ausgang q_sMsg, welche Segmente fehlerhaft sind. |