Typen und Enums
E_NciEntryType
TYPE E_NciEntryType :
(
E_NciEntryTypeNone := 0,
E_NciEntryTypeGeoStart := 1,
E_NciEntryTypeGeoLine := 2,
E_NciEntryTypeGeoCirclePlane := 3,
E_NciEntryTypeGeoCircleCIP := 4,
E_NciEntryTypeGeoBezier3 := 10,
E_NciEntryTypeGeoBezier5 := 11,
E_NciEntryTypeMFuncHsk := 20,
E_NciEntryTypeMFuncFast := 21,
E_NciEntryTypeMFuncResetAllFast := 23,
E_NciEntryTypeHParam := 24,
E_NciEntryTypeSParam := 25,
E_NciEntryTypeTParam := 26,
E_NciEntryTypeDynOvr := 50,
E_NciEntryTypeVertexSmoothing := 51,
E_NciEntryTypeBaseFrame := 52,
E_NciEntryTypePathDynamics := 53,
E_NciEntryTypeAxisDynamics := 55,
E_NciEntryTypeDwellTime := 56,
E_NciEntryTypeTfDesc := 100,
E_NciEntryTypeEndOfTables := 1000
);
END_TYPE
Strukturen |
Enum |
Beschreibung |
---|---|---|
Organisation | ||
|
E_NciEntryTypeNone |
Keine Funktion |
E_NciEntryTypeGeoStart |
Stellt die Startposition des ersten Geometrieeintrags ein | |
E_NciEntryTypeEndOfTables |
Signalisiert das Ende der Geometrietabelle | |
Fahrbefehle | ||
E_NciEntryTypeGeoLine |
Beschreibt eine Gerade | |
E_NciEntryTypeGeoCirclePlane |
Beschreibt einen Kreis in der Hauptebene (Mittelpunktprogrammierung) | |
E_NciEntryTypeGeoCircleCIP |
Beschreibt einen frei im Raum liegenden Kreis | |
E_NciEntryTypeGeoBezier3 |
Beschreibt einen Bezier 3. Ordnung mit Kontrollpunkten | |
E_NciEntryTypeGeoBezier5 |
Beschreibt einen Bezier 5. Ordnung mit Kontrollpunkten | |
E_NciEntryTypeDwellTime |
Beschreibt eine Verweilzeit | |
Bahnparameter | ||
E_NciEntryTypeBaseFrame |
Beschreibt eine Nullpunktverschiebung und Rotation | |
E_NciEntryTypeVertexSmoothing |
Aktiviert eine Verschleifung an Segmentübergängen | |
E_NciEntryTypeTfDesc |
Aktiviert die tangentiale Nachführung des Werkzeugs | |
Dynamik | ||
E_NciEntryTypeDynOvr |
Verändert den dynamischen Override | |
E_NciEntryTypeAxisDynamics |
Limitiert die Dynamik der Achsen | |
E_NciEntryTypePathDynamics |
Limitiert die Bahndynamik | |
Parameterbefehle | ||
E_NciEntryTypeHParam |
Setzt einen H-Parameter (DINT) | |
E_NciEntryTypeSParam |
Setzt einen S-Parameter (WORD) | |
E_NciEntryTypeTParam |
Setzt einen T-Parameter (WORD) | |
E_NciEntryTypeMFuncFast |
Parametriert eine schnelle M-Funktion (kein Handshake) | |
E_NciEntryTypeMFuncHsk |
Parametriert eine M-Funktion mit Handshake | |
E_NciEntryTypeResetAllFast |
Setzt alle schnellen M-Funktionen zurück |
ST_NciGeoStart
TYPE ST_NciGeoStart :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeGeoStart; (*do not override this parameter *)
fPosX: LREAL;
fPosY: LREAL;
fPosZ: LREAL;
fPosQ1: LREAL;
fPosQ2: LREAL;
fPosQ3: LREAL;
fPosQ4: LREAL;
fPosQ5: LREAL;
END_STRUCT
END_TYPE
Stellt die Startposition des ersten Geometrie-Eintrags ein. Dies ist erforderlich, wenn der erste Geometrie-Eintrag ein Kreis ist oder die tangentiale Nachführung im ersten Segment ON ist. Diese Struktur kann optional bei jedem Start der ersten Tabelle geschrieben werden.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
fPosX | LREAL | Startposition X |
fPosY | LREAL | Startposition Y |
fPosZ | LREAL | Startposition Z |
fPosQ1 | LREAL | Startposition Q1 |
fPosQ2 | LREAL | Startposition Q2 |
fPosQ3 | LREAL | Startposition Q3 |
fPosQ4 | LREAL | Startposition Q4 |
fPosQ5 | LREAL | Startposition Q5 |
ST_NciGeoLine
TYPE ST_NciGeoLine :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeGeoLine; (*do not override this parameter *)
nDisplayIndex: UDINT;
fEndPosX: LREAL;
fEndPosY: LREAL;
fEndPosZ: LREAL;
fEndPosQ1: LREAL;
fEndPosQ2: LREAL;
fEndPosQ3: LREAL;
fEndPosQ4: LREAL;
fEndPosQ5: LREAL;
fVelo: LREAL;
bRapidTraverse: BOOL;
bAccurateStop: BOOL; (* VeloEnd := 0 *)
END_STRUCT
END_TYPE
Beschreibt eine Gerade mit spezifizierter Geschwindigkeit.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
fEndPosX | LREAL | Zielposition X |
fEndPosY | LREAL | Zielposition Y |
fEndPosZ | LREAL | Zielposition Z |
fEndPosQ1 | LREAL | Zielposition Q1 |
fEndPosQ2 | LREAL | Zielposition Q2 |
fEndPosQ3 | LREAL | Zielposition Q3 |
fEndPosQ4 | LREAL | Zielposition Q4 |
fEndPosQ5 | LREAL | Zielposition Q5 |
fVelo | LREAL | Zielbahngeschwindigkeit, wie F in G-Code, allerdings in Basiseinheiten pro Sekunde (z.B. mm/s) |
bRapidTraverse | BOOL | TRUE hat dieselbe Wirkung wie G0 |
bAccurateStop | BOOL | Genauhalt (TRUE hat dieselbe Wirkung wie G09) |
ST_NciGeoCirclePlane
TYPE ST_NciGeoCirclePlane :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeGeoCirclePlane; (*do not override this parameter *)
nDisplayIndex: UDINT;
fEndPosX: LREAL;
fEndPosY: LREAL;
fEndPosZ: LREAL;
fCenterX: LREAL;
fCenterY: LREAL;
fCenterZ: LREAL;
fEndPosQ1: LREAL;
fEndPosQ2: LREAL;
fEndPosQ3: LREAL;
fEndPosQ4: LREAL;
fEndPosQ5: LREAL;
fVelo: LREAL;
bClockwise: BOOL;
bAccurateStop: BOOL; (* VeloEnd := 0 *)
nPlane: E_NciGeoPlane := E_NciGeoPlaneXY;
END_STRUCT
END_TYPE
Beschreibt einen Kreis in der Hauptebene. Der Mittelpunkt ist in absoluten Koordinaten angegeben.
Ab TC2.11 R3 B2243 (TcPlcInterpolation.lib V1.1.39) Die orthogonale Komponente beim Mittelpunkt wird intern zugewiesen. Wenn z.B. ein Kreis in der XY-Ebene programmiert wird, so wird ‚fCenterZ‘ intern zugewiesen. Falls der Anwender den Wert explizit zugewiesen hat, wird der Wert dennoch vom FB überschrieben. Mit der Programmierung der Höhe, lässt sich auch eine Helix beschreiben. Wird z.B. eine Helix in der XY-Ebene programmiert, wird die Hubhöhe der Helix mit ‚fEndPosZ‘ absolut vorgegeben. |
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
fEndPosX | LREAL | Zielposition X |
fEndPosY | LREAL | Zielposition Y |
fEndPosZ | LREAL | Zielposition Z |
fCenterX | LREAL | Mittelposition X in absoluten Koordinaten |
fCenterY | LREAL | Mittelposition Y in absoluten Koordinaten |
fCenterZ | LREAL | Mittelposition Z in absoluten Koordinaten |
fEndPosQ1 | LREAL | Zielposition Q1 |
fEndPosQ2 | LREAL | Zielposition Q2 |
fEndPosQ3 | LREAL | Zielposition Q3 |
fEndPosQ4 | LREAL | Zielposition Q4 |
fEndPosQ5 | LREAL | Zielposition Q5 |
fVelo | LREAL | Zielbahngeschwindigkeit in Basiseinheiten pro Sekunde (z.B. mm/s), wie F in G-Code |
bClockwise | BOOL | Wenn TRUE, wird der Kreis im Uhrzeigersinn gezogen, ansonsten gegen den Uhrzeigersinn (ähnlich wie G02, G03) |
bAccurateStop | BOOL | Genauhalt (TRUE hat dieselbe Wirkung wie G09) |
nPlane | Spezifiziert die Ebene: XY, YZ, oder ZX (ähnlich wie G17..G19) |
Kreissegment als Startsegment Ist das erste Geometrie-Segment ein Kreis, ist es erforderlich, die Startposition mit ST_NciGeoStart zu setzen. |
E_NciGeoPlane
TYPE E_NciGeoPlane :
(
E_NciGeoPlaneXY := 17,
E_NciGeoPlaneZX := 18,
E_NciGeoPlaneYZ := 19
);
END_TYPE
ST_NciGeoCircleCIP
ab Library Version 1.1.34
TYPE ST_NciGeoCircleCIP :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeGeoCircleCIP; (* do not overwrite this parameter *)
nDisplayIndex: UDINT;
fEndPosX: LREAL;
fEndPosY: LREAL;
fEndPosZ: LREAL;
fCIPPosX: LREAL;
fCIPPosY: LREAL;
fCIPPosZ: LREAL;
fEndPosQ1: LREAL;
fEndPosQ2: LREAL;
fEndPosQ3: LREAL;
fEndPosQ4: LREAL;
fEndPosQ5: LREAL;
fVelo: LREAL;
bAccurateStop: BOOL; (* VeloEnd := 0 *)
END_STRUCT
END_TYPE
Mit dem CIP-Kreis ist es möglich einen Kreis frei im Raum zu beschreiben. Er muss sich nicht in der Hauptebene befinden. Damit der Kreis eindeutig beschrieben werden kann, dürfen alle 3 Punkte (Anfangspunkt ist implizit vorgegeben) nicht auf einer Geraden liegen. Es lässt sich also auf diese Weise kein Vollkreis programmieren.
Eingang |
Datentyp |
Beschreibung |
---|---|---|
nEntryType |
Diesen Parameter nicht überschreiben | |
nDisplayIndex |
UDINT |
Zu Anzeigezwecken, wie Satznummer im G-Code |
fCIPPosX |
LREAL |
X-Position in absoluten Koordinaten (Punkt auf Kreisbahn) |
fCIPPosY |
LREAL |
Y-Position in absoluten Koordinaten (Punkt auf Kreisbahn) |
fCIPPosZ |
LREAL |
Z-Position in absoluten Koordinaten (Punkt auf Kreisbahn) |
fEndPosX |
LREAL |
Zielposition X |
fEndPosY |
LREAL |
Zielposition Y |
fEndPosZ |
LREAL |
Zielposition Z |
fEndPosQ1 |
LREAL |
Zielposition Q1 |
fEndPosQ2 |
LREAL |
Zielposition Q2 |
fEndPosQ3 |
LREAL |
Zielposition Q3 |
fEndPosQ4 |
LREAL |
Zielposition Q4 |
fEndPosQ5 |
LREAL |
Zielposition Q5 |
fVelo |
LREAL |
Zielbahngeschwindigkeit in Basiseinheiten pro Sekunde (z.B. mm/s), wie F in G-Code |
bAccurateStop |
BOOL |
Genauhalt (TRUE hat dieselbe Wirkung wie G09) |
Kreissegment als Startsegment Ist das erste Geometrie-Segment ein Kreis, ist es erforderlich, die Startposition mit ST_NciGeoStart zu setzen. |
ST_NciGeoBezier3
TYPE ST_NciGeoBezier3:
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeGeoBezier3; (*do not override this parameter *)
nDisplayIndex: UDINT;
fControlPoint1X: LREAL;
fControlPoint1Y: LREAL;
fControlPoint1Z: LREAL;
fControlPoint2X: LREAL;
fControlPoint2Y: LREAL;
fControlPoint2Z: LREAL;
fEndPosX: LREAL;
fEndPosY: LREAL;
fEndPosZ: LREAL;
fEndPosQ1: LREAL;
fEndPosQ2: LREAL;
fEndPosQ3: LREAL;
fEndPosQ4: LREAL;
fEndPosQ5: LREAL;
fVelo: LREAL;
bAccurateStop: BOOL; (* VeloEnd := 0 *)
END_STRUCT
END_TYPE
Beschreibt einen Bezier dritter Ordnung mit Hilfe von Kontrollpunkten. Die Startposition ergibt sich aus dem vorherigen Segment. Der dritte Kontrollpunkt wird durch die Zielposition vorgegeben.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
fControlPoint1X | LREAL | X Komponente Kontrollpunkt 1 |
fControlPoint1Y | LREAL | Y Komponente Kontrollpunkt 1 |
... |
|
|
fControlPoint2Z | LREAL | Z Komponente Kontrollpunkt 2 |
fEndPosX | LREAL | Zielposition X |
fEndPosY | LREAL | Zielposition Y |
fEndPosZ | LREAL | Zielposition Z |
fEndPosQ1 | LREAL | Zielposition Q1 |
fEndPosQ2 | LREAL | Zielposition Q2 |
fEndPosQ3 | LREAL | Zielposition Q3 |
fEndPosQ4 | LREAL | Zielposition Q4 |
fEndPosQ5 | LREAL | Zielposition Q5 |
fVelo | LREAL | Zielbahngeschwindigkeit in Basiseinheiten pro Sekunde (z.B. mm/s), wie F in G-Code |
bAccurateStop | BOOL | Genauhalt (TRUE hat dieselbe Wirkung wie G09) |
ST_NciGeoBezier5
ab Library Version 1.1.31
TYPE ST_NciGeoBezier5:
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeGeoBezier5; (*do not override this parameter *)
nDisplayIndex: UDINT;
fControlPoint1X: LREAL;
fControlPoint1Y: LREAL;
fControlPoint1Z: LREAL;
fControlPoint2X: LREAL;
fControlPoint2Y: LREAL;
fControlPoint2Z: LREAL;
fControlPoint3X: LREAL;
fControlPoint3Y: LREAL;
fControlPoint3Z: LREAL;
fControlPoint4X: LREAL;
fControlPoint4Y: LREAL;
fControlPoint4Z: LREAL;
fEndPosX: LREAL;
fEndPosY: LREAL;
fEndPosZ: LREAL;
fEndPosQ1: LREAL;
fEndPosQ2: LREAL;
fEndPosQ3: LREAL;
fEndPosQ4: LREAL;
fEndPosQ5: LREAL;
fVelo: LREAL;
bAccurateStop: BOOL; (* VeloEnd := 0 *)
END_STRUCT
END_TYPE
Beschreibt einen Bezier 5ter Ordnung mit Hilfe von Kontrollpunkten. Die Startposition ergibt sich aus dem vorherigen Segment. Der fünfte Kontrollpunkt wird durch die Zielposition vorgegeben.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
fControlPoint1X | LREAL | X Komponente Kontrollpunkt 1 |
fControlPoint1Y | LREAL | Y Komponente Kontrollpunkt 1 |
... |
|
|
fControlPoint4Z | LREAL | Z Komponente Kontrollpunkt 4 |
fEndPosX | LREAL | Zielposition X |
fEndPosY | LREAL | Zielposition Y |
fEndPosZ | LREAL | Zielposition Z |
fEndPosQ1 | LREAL | Zielposition Q1 |
fEndPosQ2 | LREAL | Zielposition Q2 |
fEndPosQ3 | LREAL | Zielposition Q3 |
fEndPosQ4 | LREAL | Zielposition Q4 |
fEndPosQ5 | LREAL | Zielposition Q5 |
fVelo | LREAL | Zielbahngeschwindigkeit in Basiseinheiten pro Sekunde (z.B. mm/s), wie F in G-Code |
bAccurateStop | BOOL | Genauhalt (TRUE hat dieselbe Wirkung wie G09) |
ST_NciMFuncHsk
TYPE ST_NciMFuncHsk :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeMFuncHsk; (*do not override this parameter *)
nDisplayIndex: UDINT;
nMFunc: INT;
END_STRUCT
END_TYPE
Beschreibt eine M-Funktion des Typs Handshake. Die M-Funktionsnummer liegt zwischen 0 und 159
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
nMFunc | INT | M-Funktionsnummer (0..159) |
M-Funktionen in der PlcInterpolation-Bibliothek Werden in der PlcInterpolation-Bibliothek M-Funktionen verwendet, müssen diese nicht im User Interface des Systemmanagers eingetragen werden. Eine M-Funktion wirkt immer an der programmierten Stelle. |
ST_NciMFuncFast
TYPE ST_NciMFuncFast :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeMFuncFast; (*do not override this parameter *)
nDisplayIndex: UDINT;
nMFuncIn0: INT;
nMFuncIn1: INT;
nMFuncIn2: INT;
nMFuncIn3: INT;
nMFuncIn4: INT;
nMFuncIn5: INT;
nMFuncIn6: INT;
nMFuncIn7: INT;
END_STRUCT
END_TYPE
Parametriert bis zu 8 schnelle M-Funktionen. Die erste M-Funktion muss nMFuncIn0 zugewiesen werden, die zweite nMFuncIn1 usw. -1 gibt das Ende der Zuweisungen an.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
nMFuncIn0 | INT | schnelle M-Funktionsnummer (0..159) |
nMFuncIn1 | INT | schnelle M-Funktionsnummer (0..159) |
nMFuncIn2 | INT | schnelle M-Funktionsnummer (0..159) |
nMFuncIn3 | INT | schnelle M-Funktionsnummer (0..159) |
nMFuncIn4 | INT | schnelle M-Funktionsnummer (0..159) |
nMFuncIn5 | INT | schnelle M-Funktionsnummer (0..159) |
nMFuncIn6 | INT | schnelle M-Funktionsnummer (0..159) |
nMFuncIn7 | INT | schnelle M-Funktionsnummer (0..159) |
M-Funktionen in der PlcInterpolation-Bibliothek Werden in der PlcInterpolation-Bibliothek M-Funktionen verwendet, müssen diese nicht im User Interface des Systemmanagers eingetragen werden. Eine M-Funktion wirkt immer an der programmierten Stelle. |
ST_NciMFuncResetAllFast
TYPE ST_NciMFuncResetAllFast :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeMFuncResetAllFast; (*do not override this parameter *)
nDisplayIndex: UDINT;
END_STRUCT
END_TYPE
Setzt alle schnellen M-Funktionen zurück.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
ST_NciHParam
TYPE ST_NciHParam :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeHParam; (*do not override this parameter *)
nDisplayIndex: UDINT;
nHParam: UDINT;
END_STRUCT
END_TYPE
Setzt einen H-Parameter im zyklischen Kanalinterface.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
nHParam | UDINT | H-Parameter von der NC zur SPS |
ST_NciSParam
TYPE ST_NciSParam :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeSParam; (*do not override this parameter *)
nDisplayIndex: UDINT;
nSParam: UINT;
END_STRUCT
END_TYPE
Setzt einen S-Parameter im zyklischen Kanalinterface.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
nSParam | UINT | S-Parameter von der NC zur SPS |
ST_NciTParam
TYPE ST_NciTParam :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeTParam; (*do not override this parameter *)
nDisplayIndex: UDINT;
nTParam: UINT;
END_STRUCT
END_TYPE
Setzt einen T-Parameter im zyklischen Kanalinterface.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
nTParam | UINT | T-Parameter von der NC zur SPS |
ST_NciDynOvr
TYPE ST_NciDynOvr :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeDynOvr; (*do not override this parameter*)
nDisplayIndex: UDINT;
fDynOvr: LREAL;
END_STRUCT
END_TYPE
Modalfunktion zur Änderung der Bahndynamik.
Vergleiche DynOvr in Interpreter-Dokumentation.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
fDynOvr | LREAL | Wert für dynamischen Override ( 0.01 < fDynOvr <= 1) |
ST_NciVertexSmoothing
seit Library Build 11
TYPE ST_NciVertexSmoothing :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeVertexSmoothing; (*do not override this parameter *)
nDisplayIndex: UDINT;
nType: UDINT; (*type of smoothing, e.g. parabola, bi-quad *)
nSubtype: UDINT; (*e.g. adaptive, constant radius *)
fRadius: LREAL; (*max. radius for tolerance ball *)
END_STRUCT
END_TYPE
Modalfunktion zur Aktivierung der Verschleifung am Segmentübergang. Die Verschleifung wirkt, bis sie durch Setzen des Radius auf 0 wieder aufgehoben wird.
Es befindet sich eine detaillierte Beschreibung des Parameters in der Interpreter-Dokumentation (paramVertexSmoothing).
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
nType | UDINT | Verschleifungsart: |
nSubtype | UDINT | 1: konstanter Toleranzradius |
fRadius | LREAL | Radius der Verschleifungskugel in Basiseinheiten (z.B. mm) |
ST_NciBaseFrame
seit Library Build 21
TYPE ST_NciBaseFrame:
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeBaseFrame; (*Do not override this parameter *)
nDisplayIndex: UDINT;
fShfitX: LREAL;
fShiftY: LREAL;
fShiftZ: LREAL;
fRotX: LREAL;
fRotY: LREAL;
fRotZ: LREAL;
fShiftQ1: LREAL;
fShiftQ2: LREAL;
fShiftQ3: LREAL;
fShiftQ4: LREAL;
fShiftQ5: LREAL;
END_STRUCT
END_TYPE
Die Struktur ST_NciBaseFrame beschreibt eine modale Nullpunktverschiebung und Rotation. Dabei ist die Wirkungsweise die gleiche wie die Nullpunktverschiebung und Rotation im Interpreter. D.h. der Punkt um den rotiert wird, ist der aktuelle Nullpunkt (vergl. Rotation in der Interpreterdokumentation)
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
fShiftX | LREAL | Nullpunktverschiebung in X-Richtung |
fShiftY | LREAL | Nullpunktverschiebung in Y-Richtung |
fShiftZ | LREAL | Nullpunktverschiebung in Z-Richtung |
fRotX | LREAL | Rotation der X-Achse |
fRotY | LREAL | Rotation der Y-Achse |
fRotZ | LREAL | Rotation der Z-Achse |
fShiftQ1 | LREAL | Offset der Q1-Achse |
fShfitQ2 | LREAL | Offset der Q2-Achse |
fShiftQ3 | LREAL | Offset der Q3-Achse |
fShiftQ4 | LREAL | Offset der Q4-Achse |
fShiftQ5 | LREAL | Offset der Q5-Achse |
ST_NciPathDynamics
Seit Library Build 22
TYPE ST_NciPathDynamics:
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypePathDynamics; (*do not override this parameter *)
nDisplayIndex: UDINT;
fAcc: LREAL;
fDec: LREAL;
fJerk: LREAL;
END_STRUCT
END_TYPE
Die Struktur ST_NciPathDynamics setzt die Dynamik (Beschleunigung, Verzögerung, Ruck) auf der Bahn. Dabei ist die Wirkungsweise die gleiche wie paramPathDynamics im Interpreter (vergl. paramPathDynamics in der Interpreterdokumentation)
Eingang | Datentype | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
fAcc | LREAL | Maximal erlaubte Bahnbeschleunigung |
fDec | LREAL | Maximal erlaubte Bahnverzögerung |
fJerk | LREAL | Maximal erlaubter Bahnruck |
ST_NciAxisDynamics
Seit library Build 30
TYPE ST_NciAxisDynamics:
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeAxisDynamics; (*Do not override this parameter*)
nDisplayIndex: UDINT;
nAxis: UDINT;
fAcc: LREAL;
fDec: LREAL;
fJerk: LREAL;
END_STRUCT
END_TYPE
Die Struktur ST_NciAxisDynamics setzt die Dynamik (Beschleunigung, Verzögerung, Ruck) auf der Bahnachsen. Dabei ist die Wirkungsweise die gleiche wie paramAxisDynamics im Interpreter (vergl. paramAxisDynamics in der Interpreterdokumentation)
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | >diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
nAxis | UDINT | Achse in der Interpolationsgruppe X:0 Y:1 Z:2 Q1:3 ... Q5:7 |
fAcc | LREAL | Maximal erlaubte Achsbeschleunigung |
fDec | LREAL | Maximal erlaubte Achsverzögerung |
fJerk | LREAL | Maximal erlaubter Achsruck |
ST_NciDwellTime
Seit library build 30
TYPE ST_NciDwellTime:
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeDwellTime; (*Do not override this parameter *)
nDisplayIndex: UDINT;
fDwellTime: LREAL;
END_STRUCT
END_TYPE
Mit der Struktur ST_NciDwellTime wird eine Verweilzeit in Sekunden eingeschaltet (vergl. Verweilzeit in der Interpreterdokumentation)
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | diesen Parameter nicht überschreiben | |
nDisplayIndex | UDINT | Zu Anzeigezwecken, wie Satznummer im G-Code |
fDwellTime | LREAL | Verweilzeit in Sekunden |
ST_NciTangentialFollowingDesc
TYPE ST_NciTangentialFollowingDesc :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeTfDesc; (*do not override this parameter *)
bTangOn: BOOL;
nTangAxis: E_NciAxesInGroup; (*axis used for tangential following *)
nPathAxis1: E_NciAxesInGroup; (*describing the plane e.g. x*)
nPathAxis2: E_NciAxesInGroup; (*e.g. y ==> g17, xy plane*)
fOffset: LREAL; (*geo tangent is 0 degree, counting is mathmatical positive *)
fCriticalAngle1: LREAL;
nTfBehavior: E_TangentialFollowingBehavior; (*what to do if angle becomes bigger than critical angle 1 *)
END_STRUCT
END_TYPE
Dies ist ein Modalbefehl zur Ein-/Ausschaltung der tangentialen Nachführung.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben | |
bTangOn | BOOL | Wenn TRUE, wird die tangentiale Nachführung eingeschaltet |
nTangAxis | Achse (Q1..Q5), die als Tangentialachse verwendet wird | |
nPathAxis1 | E_NciAxesInGroup | Erste Bahnachse, die die Ebene und Ausrichtung zur Berechnung der Tangente beschreibt |
nPathAxis2 | E_NciAxesInGroup | Zweite Bahnachse, die die Ebene und Ausrichtung zur Berechnung der Tangente beschreibt |
fOffset | LREAL | Offset der Tangentialachse |
fCritialAngle1 | LREAL | Kritischer Winkel 1. Die Reaktion, wenn der Winkel zwischen zwei Segmenten größer ist als fCriticalAngle1, wird mit nTfBehavior spezifiziert |
nTfBehavior | siehe fCriticalAngle1 |
E_NciAxesInGroup
TYPE E_NciAxesInGroup :
(
NoneAxis := 0,
XAxis,
YAxis,
ZAxis,
Q1Axis,
Q2Axis,
Q3Axis,
Q4Axis,
Q5Axis
);
END_TYPE
E_TangentialFollowingBehavior
TYPE E_TangentialFollowingBehavior :
(
E_TfIngoreAll, (*ignore critical angle *)
E_TfErrorOnCritical1 (*if angle becomes bigger than critical angle 1 ==> error *)
);
END_TYPE
ST_NciEndOfTables
TYPE ST_NciEndOfTables :
STRUCT
nEntryType: E_NciEntryType := E_NciEntryTypeEndOfTables; (*do not override this parameter *)
END_STRUCT
END_TYPE
Gibt den letzten Eintrag der letzten Tabelle an. Wird verwendet zur Signalisierung der bChannelDone-Flag in FB_NciFeedTable.
Eingang | Datentyp | Beschreibung |
---|---|---|
nEntryType | Diesen Parameter nicht überschreiben |