MC_CamTableSelect

MC_CamTableSelect 1:

This function block selects the cam table. Internally the function block calls CamObject.Connect() if the cam object is linked to an existing cam table object, otherwise CamObject.Create(), and CamObject.Construct() are called based on CamRef data.

Syntax

Definition:

FUNCTION_BLOCK MC_CamTableSelect
VAR_IN_OUT
    CamObject             : Reference To MC_CamObject;
END_VAR
VAR_INPUT
    CamRef                : MC_CAM_REF;
    Execute               : BOOL;
    Periodic              : BOOL;
    ContinuityRequirement : EContinuity;
    Name                  : STRING(80);
END_VAR
VAR_OUTPUT
    Done                  : BOOL;
    Busy                  : BOOL;
    Error                 : BOOL;
    ErrorId               : UDINT;
END_VAR

MC_CamTableSelect 2: Inputs

Name

Type

Default

Description

CamRef

MC_CAM_REF

 

Data point information.

Execute

BOOL

 

Start cam select at rising edge.

Periodic

BOOL

 

Set to TRUE for a periodic cam table.

ContinuityRequirement

EContinuity

 

Minimum continuity requirement. The higher the requirement, the stricter the point validation.

Name

STRING(80)

""

Only applicable if the cam object is not linked and creation of a new cam table object is required.

MC_CamTableSelect 3: In/Outputs

Name

Type

Description

CamObject

Reference To MC_CamObject

Reference to the cam object

MC_CamTableSelect 4: Outputs

Name

Type

Description

Done

BOOL

Selection succeeded

Busy

BOOL

Function block is not finished and new output values are to be expected.

Error

BOOL

Error occurred within function block.

ErrorId

UDINT

Error identifier

Mögliche Fehlercodes

Für diesen Funktionsbaustein sind unter anderem die folgenden Werte für den Ausgang ErrorId möglich:

Fehler(Hex)

Fehler(Dez)

Fehlertyp

Beschreibung

0x8145

33093

Funktionsbaustein

Die Verknüpfung des zyklischen Interfaces zwischen NC und SPS fehlt (z.B. AXIS_REF, AXES_GROUP_REF, ...). Eine vom Funktionsbaustein verwendete Referenz (z.B. auf eine Achse, Gruppe, einen Mover oder ein anderes Motion-Objekt) ist nicht mit dem zugehörigen NC-Objekt verknüpft oder die zyklische Verknüpfung ist unvollständig.

0x8169

33129

Funktionsbaustein

Masterachse existiert nicht oder kann nicht verwendet werden. Die als Master übergebene Achse ist nicht vorhanden oder hat keine zyklische Verknüpfung und kann daher nicht als Master (z.B. für Camming oder Gearing) verwendet werden.

0x81af

33199

Funktionsbaustein

Ungültiges Objekt oder ungültige Objekt-Referenz an Funktionsbaustein übergeben. Dem Funktionsbaustein wurde eine ungültige oder fehlende Objekt-Referenz übergeben (z.B. fehlende CamObject-Referenz an MC_CamIn, MC_CamTableSelect oder MC_CamScaling).

0x81b0

33200

Funktionsbaustein

Objekt nicht erlaubt (z.B. Objekt wird bereits verwendet). Das übergebene Objekt ist im aktuellen Kontext nicht erlaubt (z.B. Quell- und Ziel-Objekt sind bei CopyFrom() identisch, Objekt wird bereits an einer anderen Achse verwendet).

0x81b1

33201

Funktionsbaustein

Ungültige Größe an Funktionsbaustein übergeben (z.B. ungültige Array-Größe oder ungültige Anzahl Elemente). An den Funktionsbaustein wurde eine ungültige Größe übergeben (z.B. CamRef.NumberOfPoints kleiner als zwei bei MC_CamTableSelect).

0x81b2

33202

Funktionsbaustein

Die gegebenen Cam-Aktivierungs-Einstellungen sind ungültig. Die Aktivierungs-Einstellungen der Cam-Tabelle (z.B. ActivationMode und ActivationPosition) sind ungültig oder inkonsistent.

0x81b3

33203

Funktionsbaustein

Die gegebene Cam-Skalierung ist ungültig. Die übergebenen Skalierungs-Parameter der Cam-Tabelle sind ungültig (z.B. Skalen-Faktor Null oder Master-Offset-Modus 'Auto', der in der ausgeführten Operation nicht unterstützt wird).

0x81b4

33204

Funktionsbaustein

Der gegebene Cam-Datenpunkt ist ungültig. Mindestens ein Datenpunkt der Cam-Tabelle ist ungültig (z.B. wird versucht, den ersten oder letzten Punkt zu ignorieren).

0x81c2

33218

Zustand

Ein eingereihtes Cam-Kommando konnte nicht vom eingereihten in den aktiven Zustand überführt werden. Beim Übergang eines eingereihten Cam-Kommandos (z.B. MC_CamIn, MC_CamAdd, MC_CamExchange, MC_CamScaling oder MC_CamRemove) in den aktiven Zustand ist ein Fehler aufgetreten. Dies tritt typischerweise auf, wenn sich der Camming-Zustand zwischen dem Einreihen und der Aktivierung geändert hat, z.B. weil die referenzierte Cam-Tabelle bereits gekoppelt oder nicht mehr gekoppelt ist, oder weil der Sollwert bzw. der Aktivierungszeitpunkt nicht berechnet werden konnte.

Eine Übersicht aller NC-Fehlercodes finden Sie hier:

Versionsinformation

  • TwinCAT Standard >= v3.1.4026.23.1
  • TF5550 MC3 Camming >= v4.0.6 (inkludiert TF5500 MC3 Base >= v4.0.6)

Required License

TC3 MC3 Camming