Zyklisches Kanal-Interface
Das Kanal-Interface ist für den zyklischen Datenaustausch zwischen der PLC und der NCI zuständig.
Von der NCI zur SPS (160 Bytes)
TYPE NCTOPLC_NCICHANNEL_REF :
STRUCT
BlockNo : UDINT;
FastMFuncMask : ARRAY [1..5] OF DWORD;
HskMFuncNo : UINT;
HskMFuncReq : WORD;
HFuncValue : UDINT;
SpindleRpm : UINT;
Tool : UINT;
ChnState : NCTOPLC_NCICHANNEL_REF_CHN_STATE;
IntParams : ARRAY [0..3] OF UDINT;
DoubleParams : ARRAY [0..3] OF LREAL;
PathVelo : LREAL;
LoadedProg : UDINT;
ItpMode : WORD;
ItpState : UINT;
ErrorCode : UDINT;
ChnId : UINT;
GrpId : UINT;
ItfVersion : UINT;
_reserved1 : UINT;
ChnOperationState : UDINT;
McsAxisIDs : ARRAY [0..7] OF USINT;
AcsAxisIDs : ARRAY [0..7] OF USINT;
_reserved2 : ARRAY [1..24] OF USINT;
END_STRUCT
END_TYPE
Variablenname | Datentyp | Beschreibung |
---|---|---|
BlockNo | UDINT | Blocknummer |
FastMFuncMask | ARRAY OF DWORD | Bitmaske zur Auswertung der schnellen M-Funktionen |
HskMFuncNo | UINT | Nummer der anliegenden synchronen M-Funktion (M-Funktion mit Handshake) |
HskMFuncReq | WORD | Flag, mit dem angezeigt wird, dass eine synchrone M-Funktion anliegt |
HFuncValue | DINT | Wert der Hilfsfunktion |
SpindleRpm | WORD | Spindeldrehzahl |
Tool | WORD | Werkzeugnummer |
ChnState | NCTOPLC_NCICHANNEL_REF_CHN_STATE | DWORD mit Zustandsinformationen des Kanals (siehe Zustandsinformationen des Kanals (ChnState) |
IntParams | ARRAY [0..3] OF UDINT | Daten des frei konfigurierbaren Kanalinterfaces (s. ItpSetCyclicUDintOffsets) |
DoubleParams | ARRAY [0..3] OF LREAL | Daten des frei konfigurierbaren Kanalinterfaces (s. ItpSetCyclicLrealOffsets) |
PathVelo | LREAL | Aktuelle Bahnsollgeschwindigkeit |
LoadedProg | UDINT | Name des zurzeit abgearbeiteten NC-Programms. Falls der Name kein UDINT ist, so ist dieser Wert 0. |
ItpMode | WORD | Bitmaske, die den Interpreter-Bearbeitungsmodus anzeigt. |
ItpState | UINT | Status des Interpreters |
ErrorCode | UDINT | Error Code des Interpreterkanals |
ChnId | UINT | Kanal-ID |
GrpId | UINT | Gruppen-ID |
ItfVersion | UINT | Version dieses zyklischen Kanal Interfaces |
ChnOperationState | UDINT | Kanalzustand für einen Kanal der Kinematischen Transformation, hat keine Bedeutung für einen Interpolationskanal. |
McsAxisIDs | ARRAY [0..7] OF USINT | Für einen Kanal der Kinematischen Transformation, IDs der MCS-Achsen, hat keine Bedeutung für einen Interpolationskanal. |
AcsAxisIDs | ARRAY [0..7] OF USINT | Für einen Kanal der Kinematischen Transformation, IDs der ACS-Achsen, hat keine Bedeutung für einen Interpolationskanal. |
Zustandsinformationen des Kanals (ChnState)
Die Zustandsinformationen des Kanals sind nur im XAE mit Klarnamen lesbar und aus der SPS nur über die Bitnummer auslesbar.
Name | Bitnummer (zero based) | Beschreibung |
---|---|---|
bIsInterpolationChannel | 0 | Zeigt an, dass der verknüpfte Kanal ein Interpolationskanal ist. |
bIsKinematicChannel | 1 | Zeigt an, dass die Struktur mit einem Kanal für die Kinematische Transformation verknüpft ist. |
bIsEStopRequested | 8 | Zeigt an, dass ein ItpEStop aufgerufen wurde - ohne eine Prüfung, ob sich die Achsen bereits im Stillstand befinden. |
bIsFeedFromBackupList | 10 | Im Falle des Rückwärtsfahrens werden die aktuellen Einträge aus der Interpreter Backup Liste versendet. |
bIsMovingBackward | 11 | Gibt an, dass die derzeitige Bewegung eine Rückwärtsbewegung ist. |
bRetraceStartPosReached | 12 | Gibt an, dass beim Rückwärtsfahren der Programmanfang erreicht wurde. |
Von der SPS zur NCI (128 Bytes)
TYPE PLCTONC_NCICHANNEL_REF :
STRUCT
SkipLine : WORD; (* Mask to skip lines *)
ItpMode : WORD;
MFuncGranted : WORD; (* granted signal of the M-function *)
_reserved1 : UINT;
ChnAxesOvr : UDINT; (* Channel override in percent * 100 *)
ChnSpindleOvr : UDINT;
_reserved2 : ARRAY [1..112] OF USINT;
END_STRUCT
END_TYPE
Variablenname | Datentyp | Beschreibung |
---|---|---|
SkipLine | WORD | Bitmaske mit der aus der PLC die Satzunterdrückung der NCI parametriert wird. |
ItpMode | WORD | Bitmaske mit der der Interpreter-Bearbeitungsmodus geändert werden kann. Dies wird z.B. dann benötigt, wenn der Interpreter im Einzelsatz arbeiten soll. |
MFuncGranted | WORD | Flag, mit dem eine M-Funktion vom Typ 'Handshake' bestätigt wird. |
ChnAxesOvr | UDINT | Kanal-Override für die Achsen von 0...1000000 (entspricht 0 - 100%). |
ChnSpindleOvr | UDINT | Kanal-Override für die Spindel von 0...1000000 (entspricht 0 - 100%), aktuell nicht unterstützt. |