MC_AxRtEncoder_BkPlcMc (from V3.0)
This function block determines the actual position of the axis from the input information of a hardware module. To this end a function block is called depending on the value set as nEnc_Type in Axis.ST_TcHydAxParam, which takes into account the special features of the hardware module.
MC_AxRtHybridAxisActuals_BkPlcMc is an adapted function block for determining the essential actual values of a servo-electric/hydraulic hybrid axis.
Inputs/outputs
VAR_INOUT
Axis: Axis_Ref_BkPlcMc;
END_VAR
Name | Type | Description |
---|---|---|
Axis | Axis_Ref_BkPlcMc | Here, the address of a variable of type Axis_Ref_BkPlcMc should be transferred.
|
Outputs
VAR_OUTPUT
Error: BOOL;
ErrorID: UDINT;
AboveLimit: BOOL;
BelowLimit: BOOL;
END_VAR
Name | Type | Description |
---|---|---|
Error | BOOL | The occurrence of an error is indicated here. |
ErrorID | UDINT | An encoded indication of the cause of the error is provided here. |
AboveLimit | BOOL | Exceeding of the upper software limit switch is indicated by the actual position. |
BelowLimit | BOOL | If the value falls below the lower software limit switch, this is indicated by the actual position. |
Behavior of the function block
The function block investigates the axis interface that has been passed to it every time it is called. A number of problems can be detected and reported during this process:
- If nEnc_Type in pStAxParams is set to an unacceptable value, the function block responds with Error and ErrorID:=dwTcHydErrCdEncType. The axis is set to an error state.
- If one of the specific sub-function-blocks detects a problem, it will (if possible) place the axis into a fault state. This error is then echoed at the outputs of the MC_AxRtEncoder_BkPlcMc.
If it is possible to carry out these checks without encountering any problems, the actual value of the axis is determined by calling a type-specific function block corresponding to the nEnc_Type in Axis.ST_TcHydAxParam.
Information about the necessary linking of I/O components with the input and output structures of the axis may be found in the Knowledge Base under FAQ #4.
If only the usual blocks (encoder, generator, finish, drive) for the axis are to be called, a block of type MC_AxStandardBody_BkPlcMc should be used for simplicity.
The function blocks MC_AxUtiReadRegEncTerm_BkPlcMc and MC_AxUtiWriteRegEncTerm_BkPlcMc are available for asynchronous data exchange with I/O devices of the KL series.
iTcMc_EncoderAx2000_B110A
The function block handles the evaluation of the actual values of an AX2000 servo actuator at the EtherCAT fieldbus. This assumes that the connected motor is equipped with an absolute encoder. If a motor is operated with a resolver, iTcMc_EncoderAx2000_B110R should be set.
During manual insertion or automatic detection of a drive actuator the TwinCAT System Manager will suggest to insert an NC axis in the project and connect it with this actuator. If this actuator is to be controlled with the hydraulic system library, it is essential to decline this proposition. |
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions overlap with those of the drive function block. See also iTcMc_DriveAX2000_B110R.
I/O variable | Interface.Variable | Use |
---|---|---|
Position actual value | ST_TcPlcDeviceInput.ActualPos[0..1] | Determines the actual position. |
Status word | ST_TcPlcDeviceInput.uiStatus | Device status, encoder emulation. |
Control word | ST_TcPlcDeviceOutput.uiDriveCtrl | Device control. |
Velocity demand value | ST_TcPlcDeviceOutput.NominalVelo | Output of the velocity control value. |
WcState (see note) | ST_TcPlcDeviceInput.wEncWcState | Connection monitoring for actual value acquisition. |
WcState | ST_TcPlcDeviceInput.wDriveWcState | Connection monitoring for the drive. |
InfoData.State | ST_TcPlcDeviceInput.uiDriveBoxState | Monitoring of online status |
InfoData.AdsAddr (see note) | ST_TcPlcDeviceInput.sEncAdsAddr | Parameter communication. |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sDrvAdsAddr | Control of real-time status, parameter communication. |
Chn0 (see note) | ST_TcPlcDeviceInput.nEncAdsChannel | Parameter communication. |
Chn0 | ST_TcPlcDeviceInput.nDrvAdsChannel | Control of real-time status, parameter communication. |
Output (on a DO terminal) | ST_TcPlcDeviceOutput.PowerOn | Optional control of the mains contactor. A digital output terminal is required for this purpose. |
Input (on a DI terminal) | ST_TcPlcDeviceInput.PowerOk | Optional evaluation of the mains contactor. A digital input terminal is required for this purpose. |
In order to simplify the establishment of the I/O link, the linking of ST_TcPlcDeviceInput.sEncAdsAddr, ST_TcPlcDeviceInput.nEncAdsChannel and ST_TcPlcDeviceInput.wEncWcState can be avoided, if the actual value acquisition takes place via the same device, as usual. In this case, the function blocks for parameter communication and encoder evaluation use the corresponding variables of the drive link. |
iTcMc_EncoderAx2000_B110R
The function block handles the evaluation of the actual values of an AX2000 servo actuator at the EtherCAT fieldbus. This assumes that the connected motor is equipped with a resolver. If a motor is operated with an absolute encoder, iTcMc_EncoderAx2000_B110A must be set.
During manual insertion or automatic detection of a drive actuator the TwinCAT System Manager will suggest to insert an NC axis in the project and connect it with this actuator. If this actuator is to be controlled with the hydraulic system library, it is essential to decline this proposition. |
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions overlap with those of the drive function block. See also iTcMc_DriveAX2000_B110R.
I/O variable | Interface.Variable | Use |
---|---|---|
Position actual value | ST_TcPlcDeviceInput.ActualPos[0..1] | Determines the actual position. |
Status word | ST_TcPlcDeviceInput.uiStatus | Device status, encoder emulation. |
Control word | ST_TcPlcDeviceOutput.uiDriveCtrl | Device control. |
Velocity demand value | ST_TcPlcDeviceOutput.NominalVelo | Output of the velocity control value. |
WcState (see note) | ST_TcPlcDeviceInput.wEncWcState | Connection monitoring for actual value acquisition. |
WcState | ST_TcPlcDeviceInput.wDriveWcState | Connection monitoring for the drive. |
uiDriveBoxState | ST_TcPlcDeviceInput.InfoData.State | Monitoring of online status |
InfoData.AdsAddr (see note) | ST_TcPlcDeviceInput.sEncAdsAddr | Parameter communication. |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sDrvAdsAddr | Parameter communication. |
Chn0 (see note) | ST_TcPlcDeviceInput.nEncAdsChannel | Parameter communication. |
Chn0 | ST_TcPlcDeviceInput.nDrvAdsChannel | Parameter communication. |
Output (on a DO terminal) | ST_TcPlcDeviceOutput.PowerOn | Optional control of the mains contactor. A digital output terminal is required for this purpose. |
Input (on a DI terminal) | ST_TcPlcDeviceInput.PowerOk | Optional evaluation of the mains contactor. A digital input terminal is required for this purpose. |
In order to simplify the establishment of the I/O link, the linking of ST_TcPlcDeviceInput.sEncAdsAddr, ST_TcPlcDeviceInput.nEncAdsChannel and ST_TcPlcDeviceInput.wEncWcState can be avoided, if the actual value acquisition takes place via the same device, as usual. In this case, the function blocks for parameter communication and encoder evaluation use the corresponding variables of the drive link. |
iTcMc_EncoderAx2000_B200R, iTcMc_EncoderAx2000_B900R
The function block deals with evaluation of the actual values of an AX2000 servo actuator with Lightbus (B200) or RealtimeEthernet (B900).
During manual insertion or automatic detection of a drive actuator the TwinCAT System Manager will suggest to insert an NC axis in the project and connect it with this actuator. If this actuator is to be controlled with the hydraulic system library, it is essential to decline this proposition. |
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions overlap with those of the drive function block. See also iTcMc_DriveAX2000_B200R.
I/O variable | Interface.Variable | Use |
---|---|---|
ActualPos[0..1] | ST_TcPlcDeviceInput.ActualPos[0..1] | Determines the actual position. |
DriveError | ST_TcPlcDeviceInput.DriveError | Device status. |
DriveState[0..3] | ST_TcPlcDeviceInput.DriveState[0..3] | Device status. |
BoxState | ST_TcPlcDeviceInput.uiDriveBoxState | Connection monitoring. |
DriveCtrl0 | ST_TcPlcDeviceOutput.DriveCtrl[0] | Device control. |
DriveCtrl1 | ST_TcPlcDeviceOutput.DriveCtrl[1] | Device control. |
DriveCtrl2 | ST_TcPlcDeviceOutput.DriveCtrl[2] | Device control. |
DriveCtrl3 | ST_TcPlcDeviceOutput.DriveCtrl[3] | Device control. |
NominalVelo | ST_TcPlcDeviceOutput.NominalVelo | Output of the velocity control value. |
Output (on a DO terminal) | ST_TcPlcDeviceOutput.PowerOn | Optional control of the mains contactor. A digital output terminal is required for this purpose. |
Input (on a DI terminal) | ST_TcPlcDeviceInput.PowerOk | Optional evaluation of the mains contactor. A digital input terminal is required for this purpose. |
iTcMc_EncoderAx2000_B750A
The function block handles (from V3.0.26) the evaluation of the actual values of an AX2000 servo drive at the Sercos fieldbus. This assumes that the connected motor is equipped with an absolute encoder.
During manual insertion or automatic detection of a drive actuator the TwinCAT System Manager will suggest to insert an NC axis in the project and connect it with this actuator. If this actuator is to be controlled with the hydraulics library, it is essential to decline this proposition. |
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions overlap with those of the drive function block. See also iTcMc_DriveAX2000_B750A.
I/O variable | Interface.Variable | Use |
---|---|---|
Drive status word | ST_TcPlcDeviceInput.uiStatus | Device status. |
Actual position value encoder 1 | ST_TcPlcDeviceInput.udiCount | Determines the actual position. |
Master control word | ST_TcPlcDeviceOutput.uiDriveCtrl | Device control. |
Velocity command value | ST_TcPlcDeviceOutput.NominalVelo | Output of the velocity control value. |
SystemStatus (from Sercos master) | ST_TcPlcDeviceInput.uiDriveBoxState | Monitoring of the Sercos phase. |
Output (on a DO terminal) | ST_TcPlcDeviceOutput.PowerOn | Optional control of the mains contactor. A digital output terminal is required for this purpose. |
Input (on a DI terminal) | ST_TcPlcDeviceInput.PowerOk | Optional evaluation of the mains contactor. A digital input terminal is required for this purpose. |
Note a number of special characteristics. Further information can be found in the Knowledge Base.
iTcMc_EncoderAx5000_B110A, iTcMc_EncoderAx5000_B110SR
The function block handles the evaluation of the actual values of an AX5000 servo actuator at the EtherCAT fieldbus. This assumes that the connected motor is equipped with an absolute encoder. If a motor is operated with a resolver, iTcMc_EncoderAx5000_B110SR should be set.
During manual insertion or automatic detection of a drive actuator the TwinCAT System Manager will suggest to insert an NC axis in the project and connect it with this actuator. If this actuator is to be controlled with the hydraulic system library, it is essential to decline this proposition. |
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions overlap with those of the drive function block. See also iTcMc_DriveAX5000_B110A.
I/O variable | Interface.Variable | Use |
---|---|---|
Position feedback 1 value | ST_TcPlcDeviceInput.udiCount | Determines the actual position. |
Drive status word | ST_TcPlcDeviceInput.uiStatus | Device status. |
Master control word | ST_TcPlcDeviceOutput.uiDriveCtrl | Device control. |
Velocity command value | ST_TcPlcDeviceOutput.NominalVelo | Output of the velocity control value. |
WcState | ST_TcPlcDeviceInput.wDriveWcState | Connection monitoring for the drive. |
WcState (see note) | ST_TcPlcDeviceInput.wEncWcState | Connection monitoring for actual value acquisition. |
InfoData.State | ST_TcPlcDeviceInput. uiDriveBoxState | Monitoring of online status |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sDrvAdsAddr | Control of real-time status, parameter communication. |
InfoData.AdsAddr (see note) | ST_TcPlcDeviceInput.sEncAdsAddr | Parameter communication. |
Chn0 (see note 2) | ST_TcPlcDeviceInput.nDrvAdsChannel | For single devices or the first drive of a dual device: Control of real-time status, parameter communication. |
Chn0 (see notes 1,2) | ST_TcPlcDeviceInput.nEncAdsChannel | For single devices or the first drive of a dual device: Parameter communication. |
Chn1 (see note 2) | ST_TcPlcDeviceInput.nDrvAdsChannel | Only for the second drive of a dual device: Control of real-time status, parameter communication. |
Chn1 (see notes 1,2) | ST_TcPlcDeviceInput.nEncAdsChannel | Only for the second drive of a dual device: Parameter communication. |
Output (on a DO terminal) | ST_TcPlcDeviceOutput.PowerOn | Optional control of the mains contactor. A digital output terminal is required for this purpose. |
Input (on a DI terminal) | ST_TcPlcDeviceInput.PowerOk | Optional evaluation of the mains contactor. A digital input terminal is required for this purpose. |
The following list of compatible devices is naturally incomplete. It is not a recommendation but is merely intended for information. Beckhoff cannot guarantee trouble-free operation of the listed devices. If a manufacturer or one of their devices is not listed, trouble-free operation may well be possible, but is not guaranteed.
Manufacturer | Type | Description |
---|---|---|
Baumüller | b-maxx | Servo controller with single-turn absolute encoder |
|
|
|
In order to simplify the establishment of the I/O link, the linking of ST_TcPlcDeviceInput.sEncAdsAddr, ST_TcPlcDeviceInput.nEncAdsChannel and ST_TcPlcDeviceInput.wEncWcState can be avoided, if the actual value acquisition takes place via the same device, as usual. In this case, the function blocks for parameter communication and encoder evaluation use the corresponding variables of the drive link. |
The variables Chn0 and Chn2 are used for distinguishing the channels of a dual unit. Connect Chn0 for the first drive of the device and Chn1 for the second. For single devices proceed as for the first channel of a dual device. |
Note a number of special characteristics. Further information can be found in the Knowledge Base.
iTcMc_EncoderCoE_DS402A
The function block handles the evaluation of the actual values of a servo actuator with CoE DS402 profile at the EtherCAT fieldbus. This assumes that the connected motor is equipped with a multi-turn absolute encoder. AX8000 devices with absolute encoder support this profile.
During manual insertion or automatic detection of a drive actuator the TwinCAT System Manager will suggest to insert an NC axis in the project and connect it with this actuator. If this actuator is to be controlled with the hydraulics library, it is essential to decline this proposition. |
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions overlap with those of the drive function block. See also iTcMc_DriveCoE_DS402.
I/O variable | Interface.Variable | Use |
---|---|---|
see notice | ST_TcPlcDeviceInput.udiCount | Determines the actual position. |
| ST_TcPlcDeviceInput.uiStatus |
|
| ST_TcPlcDeviceOutput.uiDriveCtrl |
|
| ST_TcPlcDeviceOutput.NominalVelo |
|
WcState | ST_TcPlcDeviceInput.wDriveWcState | Connection monitoring. |
InfoData.State | ST_TcPlcDeviceInput.uiDriveBoxState | Monitoring of online status |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sEncAdsAddr | Automatic identification. |
The names of the process data exchanged with the device are specified via the XML file of the manufacturer. |
A list with compatible devices can be found below.
Mapping Note AX8000:
I/O variable | Interface.Variable | Use |
---|---|---|
Position actual value | ST_TcPlcDeviceInput.udiCount | Determines the actual position. |
Statusword | ST_TcPlcDeviceInput.uiStatus |
|
Controlword | ST_TcPlcDeviceOutput.uiDriveCtrl |
|
Target velocity | ST_TcPlcDeviceOutput.NominalVelo | Set velocity |
WcState | ST_TcPlcDeviceInput.wDriveWcState | Connection monitoring. |
InfoData.State | ST_TcPlcDeviceInput.uiDriveBoxState | Monitoring of online status |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sEncAdsAddr | Automatic identification. |
iTcMc_EncoderCoE_DS402SR
The function block handles the evaluation of the actual values of a servo actuator with CoE DS402 profile at the EtherCAT fieldbus. This assumes that the connected motor is equipped with a resolver or a single-turn absolute encoder.
During manual insertion or automatic detection of a drive actuator the TwinCAT System Manager will suggest to insert an NC axis in the project and connect it with this actuator. If this actuator is to be controlled with the hydraulic system library, it is essential to decline this proposition. |
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions overlap with those of the drive function block. See also iTcMc_DriveCoE_DS402.
I/O variable | Interface.Variable | Use |
---|---|---|
see note | ST_TcPlcDeviceInput.udiCount | Determines the actual position. |
| ST_TcPlcDeviceInput.uiStatus |
|
| ST_TcPlcDeviceOutput.uiDriveCtrl |
|
| ST_TcPlcDeviceOutput.NominalVelo |
|
WcState | ST_TcPlcDeviceInput.wDriveWcState | Connection monitoring. |
InfoData.State | ST_TcPlcDeviceInput.uiDriveBoxState | Monitoring of online status |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sEncAdsAddr | Automatic identification. |
The names of the process data exchanged with the device are specified via the XML file of the manufacturer. |
The encoder must support the following Index.SubIndex combinations.
Index | Subindex | Meaning |
---|---|---|
1000 | 0 | Identification |
1008 | 0 | Device name (optional) |
1018 | 1 | Manufacturer ID |
1018 | 2 | Device type |
6080 | 0 | Maximum speed in RPM (optional; if this object is not supported, the reference speed must be entered manually). |
608F | 1 | Number of encoder increments per motor revolution. |
6090 | 1 | Number of increments per motor revolution used for control value output. |
The following list of compatible devices is naturally incomplete. It is not a recommendation but is merely intended for information. Beckhoff cannot guarantee trouble-free operation of the listed devices. If a manufacturer or one of their devices is not listed, trouble-free operation may well be possible, but is not guaranteed.
Manufacturer | Type | Description |
---|---|---|
LTi DRiVES GmbH |
| Servo controller with single-turn absolute encoder |
|
|
|
iTcMc_EncoderCoE_DS406
The function block handles the evaluation of encoders with direct EtherCAT connection. The encoder must support the CiA DS406 profile.
I/O variable | Interface.Variable | Use |
---|---|---|
see note | ST_TcPlcDeviceInput.udiCount | Determines the actual position. |
see notes | ST_TcPlcDeviceInput.wEncDevState | Monitoring the device status. |
WcState | ST_TcPlcDeviceInput.wEncWcState | Connection monitoring. |
InfoData.State | ST_TcPlcDeviceInput.uiEncBoxState | Monitoring of online status. |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sEncAdsAddr | Automatic identification. |
The names of the process data exchanged with the device are specified via the XML file of the manufacturer. |
Monitoring of the device status is not guaranteed for all devices from all manufacturers. For some devices an 8-bit status is provided. This kind of information should be mapped on the lower 8 bits of the wEncDevState element. |
The encoder must support the following Index.SubIndex combinations.
Index | Subindex | Meaning |
---|---|---|
1000 | 0 | Identification |
1008 | 0 | Device name (optional) |
1018 | 1 | Manufacturer ID |
1018 | 2 | Device type |
6001 | 0 | Rotational encoders: increments per revolution (obligatory) |
6002 | 0 | Rotational encoders: Total counting range (option A, alternatively: index 6502) Linear encoders: Total counting range (obligatory) |
6005 | 1 | Linear encoders: Resolution (option A, alternatively: index 6501) |
6501 | 0 | Linear encoders: Resolution (option B, alternatively: index 6005) |
6502 | 0 | Rotational encoders: Number of counted revolutions (option B, alternatively: index 6002) |
650A | 2 | Linear encoders: lower limit of the intended working area (option) |
650B | 3 | Linear encoders: upper limit of the intended working area (option) |
The following list of compatible devices is naturally incomplete. It is not a recommendation but is merely intended for information. Beckhoff cannot guarantee trouble-free operation of the listed devices. If a manufacturer or one of their devices is not listed, trouble-free operation may well be possible, but is not guaranteed.
Certain parameters can be determined automatically, depending on the support of the listed objects. This applies to the counting range, the overflow detection and (for linear encoders) the resolution. If the respective objects are not provided or not in a supported combination, this is not possible. In such a case, operation may be possible. However, the parameters must then be set manually during commissioning.
Manufacturer | Type | Description |
---|---|---|
Fritz Kübler GmbH | 58x8 | Multi-turn absolute encoder. |
IVO GmbH & Co. KG | GXMMW_H | Multi-turn absolute encoder. |
MTS | Temposonics R | Linear absolute encoder. |
TR Electronic GmbH: | LMP | Linear absolute encoder. |
TWK-Electronic GmbH | CRKxx12R12C1xx | Multi-turn absolute encoder. |
iTcMc_EncoderDigCam
The function block handles the evaluation of four digital inputs as position cams.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Input |
ST_TcPlcDeviceInput.bDigCamPP |
Determines the actual position: Positive target cam. |
Input |
ST_TcPlcDeviceInput.bDigCamP |
Determines the actual position: Positive brake cam. |
Input |
ST_TcPlcDeviceInput.bDigCamM |
Determines the actual position: Negative brake cam. |
Input |
ST_TcPlcDeviceInput.bDigCamMM |
Determines the actual position: Negative target cam. |
iTcMc_EncoderDigIncrement
The function block handles the evaluation of two digital inputs for the emulation of an incremental encoder evaluation.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Input |
ST_TcPlcDeviceInput.bDigInA |
Determines the actual position. |
Input |
ST_TcPlcDeviceInput.bDigInB |
Determines the actual position. |
iTcMc_EncoderEL3102
The function block handles the evaluation of data from an EL3102 analog input terminal.
I/O variable | Interface.Variable | Use |
---|---|---|
Value | ST_TcPlcDeviceInput.uiCount | Read the actual position. |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sEncAdsAddr | Optional: Address information for parameter communication via CoE. |
InfoData.State | ST_TcPlcDeviceInput.uiEncBoxState | Connection monitoring, condition monitoring. |
WcState | ST_TcPlcDeviceInput.wEncWcState | Connection monitoring. |
iTcMc_EncoderEL3142
The function block handles the evaluation of data from an EL3142 analog input terminal. The mapping is similar to the interface-compatible EL3102.
iTcMc_EncoderEL3162
The function block handles the evaluation of data from an EL3162 analog input terminal. The mapping is similar to the interface-compatible EL3102.
iTcMc_EncoderEL3255
The function block handles the evaluation of data from an EL3255 analog input terminal.
I/O variable | Interface.Variable | Use |
---|---|---|
AI Standard Channel x.Value | ST_TcPlcDeviceInput.uiCount | Read the actual position. |
AI Standard Channel x.Status | ST_TcPlcDeviceInput.wEncDevState | Evaluation of the fault signal of the encoder. |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sEncAdsAddr | Address information for parameter communication via CoE. |
InfoData.State | ST_TcPlcDeviceInput.uiEncBoxState | Connection monitoring, condition monitoring. |
WcState | ST_TcPlcDeviceInput.wEncWcState | Connection monitoring. |
The terminal supports up to five encoders. The variables InfoData.AdsAddr, InfoData.State and WcState should be distributed to all axes involved through multiple mapping. |
iTcMc_EncoderEL5001
The function block handles the evaluation of data from an EL5001 SSI encoder terminal.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Value |
ST_TcPlcDeviceInput.udiCount |
Read the actual position. |
Status |
ST_TcPlcDeviceOutput.usiRegStatus |
Evaluation of the fault signal of the encoder. |
InfoData.AdsAddr |
ST_TcPlcDeviceInput.sEncAdsAddr |
Address information for parameter communication via CoE. |
InfoData.State |
ST_TcPlcDeviceInput.uiEncBoxState |
Connection monitoring, condition monitoring. |
WcState |
ST_TcPlcDeviceInput.wEncWcState |
Connection monitoring. |
iTcMc_EncoderEL5021
The function block handles the evaluation of data from an EL5021 sin/cos encoder terminal.
I/O variable | Interface.Variable | Use |
---|---|---|
ENC Status.Counter value | ST_TcPlcDeviceInput.udiCount | Read the actual position. |
ENC Status.Status | ST_TcPlcDeviceInput.usiRegStatus | Evaluation of the fault signal of the encoder. |
ENC Status.Latch value | ST_TcPlcDeviceInput.udiLatch | For homing using the synchronous pulse of the encoder. |
ENC Control.Control | ST_TcPlcDeviceOutput.usiCtrl | Control of the latch function. |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sEncAdsAddr | Address information for parameter communication via CoE. |
InfoData.State | ST_TcPlcDeviceInput.uiEncBoxState | Connection monitoring, condition monitoring. |
WcState | ST_TcPlcDeviceInput.wEncWcState | Connection monitoring. |
iTcMc_EncoderEL5032 (ab V3.0.40)
The function block handles the evaluation of data from an EL5032 ENDAT encoder terminal.
The EL5032 terminal provides a 32-bit or 64-bit counter, depending on its setting. This means that the highest value that can be displayed is either 232 – 1 or 264 – 1. Multiplied with the encoder resolution, this results in the evaluable path. At 10 nm resolution results in a value of 42949 mm. This is sufficient for most applications, which is why it is usually OK to use the terminal in 32-bit mode. To do this, only the mapping to udiCount is required. Otherwise, the 64-bit mode of the terminal must be activated and the complete mapping to udiCount and S_DiReserve[1] must be configured.
Notice | |
Note the supply voltage To prevent damage to the connected device, check the supply voltage set in the EL5032 before connecting the device |
When a fieldbus is started and an axis error is reset, certain parameters of the connected device are read. The device type is included in the logging. Only absolute linear scales and absolute multi-turn encoders are accepted. With linear scales, the resolution is automatically updated in the encoder weighting and interpolation.
I/O variable | Interface.Variable | Use |
---|---|---|
Position (DWORD or lower part of ULINT) | ST_TcPlcDeviceInput.udiCount | Read the actual position. |
Position (upper part of ULINT) | ST_TcPlcDeviceInput.S_DiReserve[1] | Optional: Reading of the actual position under TC2. |
Position (upper part of ULINT) | ST_TcPlcDeviceInput.udiLatch | Optional: Reading of the actual position under TC3. |
Status | ST_TcPlcDeviceInput.uiEncDevState | Evaluation of the fault signal of the encoder. |
InfoData.AdsAddr | ST_TcPlcDeviceInput.sEncAdsAddr | Address information for parameter communication via CoE. |
InfoData.State | ST_TcPlcDeviceInput.uiEncBoxState | Connection monitoring, condition monitoring. |
WcState | ST_TcPlcDeviceInput.wEncWcState | Connection monitoring. |
iTcMc_EncoderEL5101
The function block handles the evaluation of data from an EL5101 incremental encoder terminal.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Value |
ST_TcPlcDeviceInput.uiCount |
Operation: Read the actual position. |
Latch |
ST_TcPlcDeviceInput.uiLatch |
For homing using the synchronous pulse of the encoder. |
Ctrl |
ST_TcPlcDeviceOutput.usiCtrl |
Control of the latch function etc. |
Status |
ST_TcPlcDeviceInput.usiStatus |
Status of the encoder, of the latch function. |
InfoData.AdsAddr |
ST_TcPlcDeviceInput.sEncAdsAddr |
Address information for parameter communication via CoE. |
InfoData.State |
ST_TcPlcDeviceInput.uiEncBoxState |
Connection monitoring, condition monitoring. |
WcState |
ST_TcPlcDeviceInput.wEncWcState |
Connection monitoring. |
iTcMc_EncoderEL5111
The function block handles the evaluation of data from an EL5111 incremental encoder terminal.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Value |
ST_TcPlcDeviceInput.uiCount |
Operation: Read the actual position. |
Latch |
ST_TcPlcDeviceInput.uiLatch |
For homing using the synchronous pulse of the encoder. |
Ctrl |
ST_TcPlcDeviceOutput.usiCtrl |
Control of the latch function etc. |
Status |
ST_TcPlcDeviceInput.usiStatus |
Status of the encoder, of the latch function. |
InfoData.AdsAddr |
ST_TcPlcDeviceInput.sEncAdsAddr |
Address information for parameter communication via CoE. |
InfoData.State |
ST_TcPlcDeviceInput.uiEncBoxState |
Connection monitoring, condition monitoring. |
WcState |
ST_TcPlcDeviceInput.wEncWcState |
Connection monitoring. |
iTcMc_EncoderEL7041
The function block handles the evaluation of data from an EL7041 stepper motor output terminal.
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions, particularly for parameter communication, overlap with those of the drive function block. See also iTcMc_DriveEL7041.
iTcMc_EncoderEL7201
The function block handles the evaluation of data from an EL7201 servo output terminal.
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions, particularly for parameter communication, overlap with those of the drive function block. See also iTcMc_DriveEL7201.
iTcMc_EncoderIx5009
The function block handles the evaluation of data from an IP5009 SSI encoder box.
I/O variable |
Interface.Variable |
Use |
---|---|---|
PZDL_RegDaten |
ST_TcPlcDeviceInput.uiPZDL_RegDaten |
Operation: Read the actual position. For register communication: Interface for read data. |
PZDH |
ST_TcPlcDeviceInput.uiPZDH |
Read the actual position. |
RegStatus |
ST_TcPlcDeviceInput.usiRegStatus |
Miscellaneous status information. |
iTcMc_EncoderKL2521
The function block handles the evaluation of data from a KL2521 pulse output terminal. The output pulses are counted and used for an encoder emulation.
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions, particularly for parameter communication, overlap with those of the drive function block. See also iTcMc_DriveKL2521.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Data in |
ST_TcPlcDeviceInput.uiTerminalData |
Operation: Read the actual position. For register communication: Interface for read data. |
Control |
ST_TcPlcDeviceOutput.bTerminalCtrl |
Register communication |
Status |
ST_TcPlcDeviceInput.bTerminalState |
Register communication |
Data out |
ST_TcPlcDeviceOutput.nDacOut |
Operation: Output of the velocity signal. Register communication: Interface for written data. |
iTcMc_EncoderKL2531
The function block handles the evaluation of data from a KL2531 pulse output terminal. The output pulses are counted and used for an encoder emulation.
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions, particularly for parameter communication, overlap with those of the drive function block. See also iTcMc_DriveKL2531.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Velocity |
ST_TcPlcDeviceOutput.nDacOut |
Operation: Output of the velocity signal. For register communication: Interface for written data. |
Position |
ST_TcPlcDeviceInput.uiTerminalData |
Operation: Read the actual position. For register communication: Interface for read data. |
Ctrl |
ST_TcPlcDeviceOutput.bTerminalCtrl |
Control the output stage, register communication. |
Status |
ST_TcPlcDeviceInput.bTerminalState |
Status of the output stage, register communication. |
ExtStatus |
ST_TcPlcDeviceInput.uiTerminalState2 |
Diagnosis of output stage and motor |
iTcMc_EncoderKL2541
The function block handles the evaluation of data from a KL2541 pulse output terminal. The output pulses are counted and used for an encoder emulation.
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions, particularly for parameter communication, overlap with those of the drive function block. See also iTcMc_DriveKL2541.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Velocity |
ST_TcPlcDeviceOutput.nDacOut |
Operation: Output of the velocity signal. For register communication: Interface for written data. |
Position |
ST_TcPlcDeviceInput.uiTerminalData |
Operation: Read the actual position. For register communication: Interface for read data. |
Ctrl |
ST_TcPlcDeviceOutput.bTerminalCtrl |
Control the output stage, register communication. |
Status |
ST_TcPlcDeviceInput.bTerminalState |
Status of the output stage, register communication. |
ExtCtrl |
ST_TcPlcDeviceOutput.uiTerminalCtrl2 |
Latch control during homing with the synchronous pulse of the encoder |
ExtStatus |
ST_TcPlcDeviceInput.uiTerminalState2 |
Diagnosis of output stage and motor, latch status during homing with the synchronous pulse of the encoder |
iTcMc_EncoderKL2542
The function block handles the evaluation of data from a KL2542 motor output stage terminal.
This I/O device belongs to a group of devices, which are used for the control value output as well as actual value determination. The required mapping definitions, particularly for parameter communication, overlap with those of the drive function block. See also iTcMc_DriveKL2542.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Data out |
ST_TcPlcDeviceOutput.nDacOut |
Operation: Output of the velocity signal. For register communication: Interface for written data. |
Data in |
ST_TcPlcDeviceInput.uiTerminalData |
Operation: Read the actual position. For register communication: Interface for read data. |
Control |
ST_TcPlcDeviceOutput.bTerminalCtrl |
Control the output stage, register communication. |
Status |
ST_TcPlcDeviceInput.bTerminalState |
Status of the output stage, register communication. |
iTcMc_EncoderKL3002
The function block handles the evaluation of data from a KL3002 analog input terminal.
I/O variable | Interface.Variable | Use |
---|---|---|
Data in | ST_TcPlcDeviceInput.uiCount | Read the actual position. |
Ctrl | ST_TcPlcDeviceOutput.usiCtrl | |
Status | ST_TcPlcDeviceInput.usiStatus | Register communication. |
iTcMc_EncoderKL3042
The function block handles the evaluation of data from a KL3042 analog input terminal.
I/O variable | Interface.Variable | Use |
---|---|---|
Data in | ST_TcPlcDeviceInput.uiCount | Read the actual position. |
Ctrl | ST_TcPlcDeviceOutput.usiCtrl | |
Status | ST_TcPlcDeviceInput.usiStatus | Register communication. |
iTcMc_EncoderKL3062
The function block handles the evaluation of data from a KL3062 analog input terminal.
I/O variable | Interface.Variable | Use |
---|---|---|
Data in | ST_TcPlcDeviceInput.uiCount | Read the actual position. |
Ctrl | ST_TcPlcDeviceOutput.usiCtrl | |
Status | ST_TcPlcDeviceInput.usiStatus | Register communication. |
iTcMc_EncoderKL3162
The function block handles the evaluation of data from a KL3162 analog input terminal.
I/O variable | Interface.Variable | Use |
---|---|---|
Data in | ST_TcPlcDeviceInput.uiCount | Read the actual position. |
Ctrl | ST_TcPlcDeviceOutput.usiCtrl | |
Status | ST_TcPlcDeviceInput.usiStatus | Register communication. |
iTcMc_EncoderKL5001
The function block handles the evaluation of data from a KL5001 SSI encoder terminal.
I/O variable |
Interface.Variable |
Use |
---|---|---|
PZDL_RegDaten |
ST_TcPlcDeviceInput.uiPZDL_RegDaten |
Operation: Read the actual position. For register communication: Interface for read data. |
PZDH |
ST_TcPlcDeviceInput.uiPZDH |
Read the actual position. |
RegStatus |
ST_TcPlcDeviceInput.usiRegStatus |
Miscellaneous status information. |
RegDaten |
ST_TcPlcDeviceOutput.bTerminalData |
Register communication. |
iTcMc_EncoderKL5101
The function block handles the evaluation of data from a KL5101 incremental encoder terminal.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Counter |
ST_TcPlcDeviceInput.uiCount |
Operation: Read the actual position. For register communication: Interface for read data. |
Latch |
ST_TcPlcDeviceInput.uiLatch |
For homing using the synchronous pulse of the encoder. |
Ctrl |
ST_TcPlcDeviceOutput.usiCtrl |
Control of the latch function etc., register communication |
Status |
ST_TcPlcDeviceInput.usiStatus |
Miscellaneous status information. |
RegDaten |
ST_TcPlcDeviceOutput.bTerminalData |
Register communication. |
iTcMc_EncoderKL5111
The function block handles the evaluation of data from a KL5111 incremental encoder terminal.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Counter |
ST_TcPlcDeviceInput.uiCount |
Operation: Read the actual position. For register communication: Interface for read data. |
Latch |
ST_TcPlcDeviceInput.uiLatch |
For homing using the synchronous pulse of the encoder. |
Ctrl |
ST_TcPlcDeviceOutput.usiCtrl |
Control of the latch function etc., register communication |
Status |
ST_TcPlcDeviceInput.usiStatus |
Miscellaneous status information. |
RegDaten |
ST_TcPlcDeviceOutput.bTerminalData |
Register communication. |
iTcMc_EncoderLowCostStepper
If the value iTcMc_DriveLowCostStepper is entered as nDrive_Type, the half steps that are output are counted in ST_TcPlcDeviceOutput.uiCount. The result is used to calculate the actual position. Mapping is not required for the encoder.
This encoder type can only be used in combination with an iTcMc_DriveLowCostStepperdrive. |
iTcMc_EncoderM2510
The function block handles the evaluation of data from an M2510 analog input box.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Data in |
ST_TcPlcDeviceInput.uiCount |
Read the actual position. |
iTcMc_EncoderM3120
The function block handles the evaluation of data from an M3120 incremental encoder box.
I/O variable |
Interface.Variable |
Use |
---|---|---|
Value_N |
ST_TcPlcDeviceInput.uiCount |
Read the actual position. |
State_N |
ST_TcPlcDeviceInput.usiStatus |
Miscellaneous status information. |
Ctrl_N |
ST_TcPlcDeviceOutput.usiCtrl |
Control of the latch function etc. |
iTcMc_EncoderSim
A simulation encoder calculates the actual position through integration of the set velocity. No mapping is required.