ItpWriteZeroShiftEx
The function block ItpWriteZeroShiftEx writes the shift components X, Y and Z for the specified zero offset shift.
Inputs
VAR_INPUT
bExecute : BOOL;
nZsNo : UDINT;
tTimeOut : TIME;
END_VAR
Name | Type | Description |
---|---|---|
bExecute | BOOL | The command is triggered by a rising edge at this input. |
nZsNo | UDINT | Number of the zero offset shift G54 to G59 are zero offset shifts at the NC. G58 and G59 can only be edited from the NC program. The valid range of values for 'nZsNo' is therefore from 54 to 57. |
tTimeOut | TIME | ADS Timeout-Delay |
/ Inputs/Outputs
VAR_IN_OUT
sNciToPlc AT%I*: NCTOPLC_NCICHANNEL_REF;
sZeroShiftDesc : ZeroShiftDesc;
END_VAR
Name | Type | Description |
---|---|---|
sNciToPlc | NCTOPLC_NCICHANNEL_REF | The structure of the cyclic channel interface from the NCI to the PLC. This structure is read-only (type: NCTOPLC_NCICHANNEL_REF). |
sToolDesc | ToolDesc | The structure containing the components of the zero offset shift. This structure is only accessed for reading. |
Outputs
VAR_OUTPUT
bBusy : BOOL;
bErr : BOOL;
nErrId : UDINT;
END_VAR
Name | Type | Description |
---|---|---|
bBusy | BOOL | This output remains TRUE until the function block has executed a command, but at the longest for the duration supplied to the 'Timeout' input. While Busy = TRUE, no new command will be accepted at the inputs. Please note that it is not the execution of the service but its acceptance whose time is monitored. |
bErr | BOOL | This output is switched to TRUE as soon as an error occurs during the execution of a command. The command-specific error code is contained in 'nErrId'. Is reset to FALSE by the execution of a command at the inputs. |
nErrId | UDINT | Contains the command-specific error code of the most recently executed command. Is reset to 0 by the execution of a command at the inputs. The error numbers in ErrId can be looked up in the ADS error documentation or in the NC error documentation (error codes above 0x4000). |
TYPE ZeroShiftDesc:
STRUCT
fShiftX : LREAL;
fShiftY : LREAL;
fShiftZ : LREAL;
END_STRUCT
END_TYPE
For reasons of compatibility every zero offset shift that can be set has two parameters (coarse and fine) for each axis. When using this function block to write a new zero offset shift, the new value is written into the 'fine parameter'. A value of 0.0 is entered into the 'coarse parameter'. |
This makes it possible to use a function block such as ItpReadZeroShiftEx to read and modify a zero offset shift and to send it back to the NC.
See also:
Requirements
Development environment |
Target platform |
PLC libraries to be linked |
---|---|---|
TwinCAT v3.1.0 |
PC or CX (x86 or x64) |
Tc2_NCI |