Datentyp 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

pArray

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

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

Beispiel:

ArraySize := SIZEOF( Table1 );

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

Die Zeilenanzahl entspricht der Anzahl der Tabellenpunkte.

NoOfColumns

Die Spaltenanzahl ist 2.

Beispiel 2: Strukturbeschreibung einer Motion Function

pArray

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

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

Beispiel:

ArraySize := SIZEOF( MotionFunction );

TableType

Der Typ der Tabelle ist MC_TABLETYPE_MOTIONFUNCTION.

NoOfRows

Die Zeilenanzahl entspricht der Anzahl der Tabellenpunkte.

NoOfColumns

Die Spaltenanzahl ist 1.