Instanzdaten der Kompensation
Arbeitsdaten der Kompensation
Die Implementierung der Kompensation kann beliebige Parameter als Arbeitsdaten bereitstellen. Die Kompensation wird immer zyklisch im Lageregler aufgerufen, solange wie sie aktiviert ist.
Die von der CNC bereitgestellten Daten im zyklischen Betrieb sind die Achspositionen sowie die Softwareendschalter der Achsen.
TcMcComBase – Struktur zur Übergabe von Fehlerinformationen
Im Fehlerfall kann diese Struktur ausgefüllt werden um die Fehlerinformationen der Kompensation über die CNC auszugeben.
Sie Bildet die Basis für die Strukturen
TcMcComExtCompParameter
und
TcMcComCmdParameter:
Die von der CNC bereitgestellten Daten im zyklischen Betrieb sind die Achspositionen sowie die Softwareendschalter der Achsen.
struct TcMcComBase
{
double ret_value1; // out: additional error value
double ret_value2; // out: additional error value
char ret_text[24]; // out: additional error text, max. 24 byte
};
TcMcComExtCompParameter – Struktur für den zyklischen Austausch
Achspositionen werden in dem Array cyclic_i der Länge dim_cyclic_i in der Einheit 10^-8 mm bzw. ° zur Verfügung gestellt. Im Array cyclic_o in der gleichen Einheit wird der berechnete Offset erwartet.
Der Array Parameter enthält die Softwareendschalter aller Achsen. Die Reihenfolge ist dabei [A1 swe pos, A1 swe neg, A2 swe pos, …].
struct TcMcComExtCompParameter : public TcMcComBase
{
eMcComExtCompParameter type;
signed __int64* cyclic_i;
long dim_cyclic_i;
signed __int64* cyclic_o;
long dim_cyclic_o;
signed __int64* parameters;
long dim_parameters;
};
TcMcComCmdParameter – Struktur zur Übergabe von NC-Nachrichten
Mit dem NC-Befehl #EXTCOMP ON/OFF [ID<0> STRING=<string> VALUE= <value>] kann ein String bestehend aus 24 Zeichen und ein double Wert an die Kompensation geschickt werden.
struct TcMcComCmdParameter : public TcMcComBase
{
char para_string[24];
double para_value;
};