MC_CAM_REF

TYPE MC_CAM_REF :
STRUCT
   pArray      : UDINT;
   ArraySize   : UDINT;
   TableType   : MC_TableType;
   NoOfRows    : UDINT;
   NoOfColumns : UDINT;
END_STRUCT
END_TYPE

Die Datenstruktur MC_CAM_REF beschreibt den Datenspeicher einer Kurvenscheibe in einer weiteren SPS-Variablen (ARRAY).

Der erste Parameter pArray ist ein Pointer auf eine Datenstruktur, die die Kurvenscheibendaten hält. Diese Datenstruktur kann abhängig vom Tabellentyp nTableType unterschiedlich aufgebaut sein. In der Komponenten nNoOfRows wird die Anzahl der Zeilen eingetragen, in nNoOfCols die Anzahl der Spalten (normalerweise 1 oder 2).

Beispiel 1: Strukturbeschreibung einer Positionstabelle

Name

Typ

Beschreibung

pArray

UDINT

Adresse eines zweidimensionalen Arrays. Die erste Spalte enthält eine aufsteigende Liste von Master-Positionen. Die zweite Spalte enthält die dazugehörigen Slave-Positionen. Die Adresse kann mit der ADR Funktion zugewiesen werden.

Beispiel:

Table1 : ARRAY[0..360, 0..1] OF LREAL;

pArray := ADR( Table1 );

ArraySize

UDINT

Speichergröße des zweidimensionalen Arrays, die mit der SIZEOF Funktion ermittelt werden kann.

Beispiel:

ArraySize := SIZEOF( Table1 );

TableType

MC_TableType

Der Typ der Tabelle ist MC_TABLETYPE_EQUIDISTANT, wenn die Master-Positionen einen gleichen Abstand haben

Oder

MC_TABLETYPE_NONEQUIDISTANT bei wechselndem Abstand.

NoOfRows

UDINT

Die Zeilenanzahl entspricht der Anzahl der Tabellenpunkte.

NoOfColumns

UDINT

Die Spaltenanzahl ist 2.

Beispiel 2: Strukturbeschreibung einer Motion Function

Name

Typ

Beschreibung

pArray

UDINT

Adresse eines eindimensionalen Arrays vom Typ MC_MotionFunctionPoint. Jedes Array-Element enthält eine Beschreibung einer Stützstelle der Kurvenscheibe.

Beispiel:

MotionFunction : ARRAY[1..10] OF MC_MotionFunctionPoint;

pArray := ADR( MotionFunction );

ArraySize

UDINT

Speichergröße des eindimensionalen Arrays, die mit der SIZEOF Funktion ermittelt werden kann.

Beispiel:

ArraySize := SIZEOF( MotionFunction );

TableType

MC_TableType

Der Typ der Tabelle ist MC_TABLETYPE_MOTIONFUNCTION.

NoOfRows

UDINT

Die Zeilenanzahl entspricht der Anzahl der Tabellenpunkte.

NoOfColumns

UDINT

Die Spaltenanzahl ist 1.