TG Motion
version 421 - 4033/904 cnc 121
Real-time system for controlling servo drives and I/O modules
|
Describes one servo input/output module. More...
#include <TGM.h>
Public Attributes | |
int32_t | Number |
number of the mapped I/O unit, interface logical number (unit 0 – Number = 0, unit 1 – Number = 1, etc.) | |
int32_t | Node |
address of the physical I/O unit, which is set on the unit directly | |
int32_t | Type |
volatile int32_t | Control |
bit 0 = fault reset, bit 2 = EtherCAT communication reset | |
volatile int32_t | Status |
int32_t | Error |
int32_t | NumberIn |
the number of bytes used for digital inputs (1 byte = 8 digital inputs) | |
int32_t | In0 |
digital input octet (logical input slot 0) | |
int32_t | In1 |
digital input octet (logical input slot 1) | |
int32_t | In2 |
digital input octet (logical input slot 2) | |
int32_t | In3 |
digital input octet (logical input slot 3) | |
int32_t | In4 |
digital input octet (logical input slot 4) | |
int32_t | In5 |
digital input octet (logical input slot 5) | |
int32_t | In6 |
digital input octet (logical input slot 6) | |
int32_t | In7 |
digital input octet (logical input slot 7) | |
int32_t | Ext_In0 |
digital input octet (logical input slot 8) | |
int32_t | Ext_In1 |
digital input octet (logical input slot 9) | |
int32_t | Ext_In2 |
digital input octet (logical input slot 10) | |
int32_t | Ext_In3 |
digital input octet (logical input slot 11) | |
int32_t | Ext_In4 |
digital input octet (logical input slot 12) | |
int32_t | Ext_In5 |
digital input octet (logical input slot 13) | |
int32_t | Ext_In6 |
digital input octet (logical input slot 14) | |
int32_t | Ext_In7 |
digital input octet (logical input slot 15) | |
int32_t | NumberOut |
the number of bytes used for digital outputs (1 byte = 8 digital outputs) | |
int32_t | Out0 |
digital output octet (logical output slot 0) | |
int32_t | Out1 |
digital output octet (logical output slot 1) | |
int32_t | Out2 |
digital output octet (logical output slot 2) | |
int32_t | Out3 |
digital output octet (logical output slot 3) | |
int32_t | Out4 |
digital output octet (logical output slot 4) | |
int32_t | Out5 |
digital output octet (logical output slot 5) | |
int32_t | Out6 |
digital output octet (logical output slot 6) | |
int32_t | Out7 |
digital output octet (logical output slot 7) | |
int32_t | Ext_Out0 |
digital output octet (logical output slot 8) | |
int32_t | Ext_Out1 |
digital output octet (logical output slot 9) | |
int32_t | Ext_Out2 |
digital output octet (logical output slot 10) | |
int32_t | Ext_Out3 |
digital output octet (logical output slot 11) | |
int32_t | Ext_Out4 |
digital output octet (logical output slot 12) | |
int32_t | Ext_Out5 |
digital output octet (logical output slot 13) | |
int32_t | Ext_Out6 |
digital output octet (logical output slot 14) | |
int32_t | Ext_Out7 |
digital output octet (logical output slot 15) | |
int32_t | NumberAI |
number of connected analog inputs | |
int32_t | AI0 |
analog input 0 | |
int32_t | AI1 |
analog input 1 | |
int32_t | AI2 |
analog input 2 | |
int32_t | AI3 |
analog input 3 | |
int32_t | Ext_AI0 |
analog input 4 | |
int32_t | Ext_AI1 |
analog input 5 | |
int32_t | Ext_AI2 |
analog input 6 | |
int32_t | Ext_AI3 |
analog input 7 | |
int32_t | NumberAO |
number of connected analog outputs | |
int32_t | AO0 |
analog output 0 | |
int32_t | AO1 |
analog output 1 | |
int32_t | AO2 |
analog output 2 | |
int32_t | AO3 |
analog output 3 | |
int32_t | Ext_AO0 |
analog output 4 | |
int32_t | Ext_AO1 |
analog output 5 | |
int32_t | Ext_AO2 |
analog output 6 | |
int32_t | Ext_AO3 |
analog output 7 | |
int32_t | Number_MeasureAmpl |
number of connected strain gauges | |
int32_t | Ext_MeasureAmpl0 |
output voltage of strain gauge 0 | |
int32_t | Ext_MeasureAmpl1 |
output voltage of strain gauge 1 | |
int32_t | Ext_MeasureAmpl2 |
output voltage of strain gauge 2 | |
int32_t | Ext_MeasureAmpl3 |
output voltage of strain gauge 3 | |
int32_t | Ext_MeasureAmpl4 |
output voltage of strain gauge 4 | |
int32_t | Ext_MeasureAmpl5 |
output voltage of strain gauge 5 | |
int32_t | Ext_MeasureAmpl6 |
output voltage of strain gauge 6 | |
int32_t | Ext_MeasureAmpl7 |
output voltage of strain gauge 7 | |
int32_t | EtherCATState |
struct SDO | Sdo |
SDO communicating channel. | |
int32_t | sdoResponseTries |
unsuccessful SDO request counter from PLC | |
uint8_t | RxBuffer [MAX_TX_RX_BUFFER_SIZE] |
auxiliary buffer for RX messages (either KL3403 or KL6041 terminals) | |
uint8_t | TxBuffer [MAX_TX_RX_BUFFER_SIZE] |
auxiliary buffer for TX messages (either KL3403 or KL6041 terminals) | |
int32_t | TS_Data [8] |
Type specific data. | |
uint32_t | SysTimeDifference |
last known difference between local time and reference time in ns | |
struct ECAT_REGISTER | ecatRegister |
ECAT register communication channel. | |
uint32_t | ECATBusPosition |
actual physical position on the ECAT bus | |
volatile uint32_t | RxPointerWrite |
volatile uint32_t | RxPointerRead |
volatile uint32_t | TxPointerWrite |
volatile uint32_t | TxPointerRead |
int32_t | IReserve1 [403] |
reserved | |
Describes one servo input/output module.
Structure size is 2048 bytes
int32_t DIO::Type |
I/O unit type – is not indicated in TGMotion4xx.ini, TG Motion finds out automatically the connected I/O units and updates the Dio.Type register:
Value | Module type |
---|---|
0x0014 | DIO module TG 48/40/4/4 |
0x00F4 | DIO module TG 40/24/0/0 |
0x0008 | DIO strain gauge old design |
0x0808 | DIO strain gauge new design |
0x0400 | FESTO FB38 |
0x0200 | B&R |
0x0100 | BECKHOFF BK1120 |
0x0101 | BECKHOFF EK1100 |
0x7B90 | DFC IO module (16inputs, 16outputs) |
volatile int32_t DIO::Status |
int32_t DIO::Error |
int32_t DIO::EtherCATState |
volatile uint32_t DIO::RxPointerWrite |
Write index to DIO::RxBuffer. TGM writes incomming data (up to MAX_TX_RX_BUFFER_SIZE-1 bytes) from RxPointerWrite to RxPointerRead-1 and increments RxPointerWrite accordingly. Value is always modulo MAX_TX_RX_BUFFER_SIZE, i.e. from 0 to MAX_TX_RX_BUFFER_SIZE-1. Written by TGM, read by PLC.
volatile uint32_t DIO::RxPointerRead |
Read index to DIO::RxBuffer. PLC reads data from RxPointerRead to DIO::RxPointerWrite, copies them to internal stream, and sets RxPointerRead to be equal to RxPointerWrite. Value must be modulo MAX_TX_RX_BUFFER_SIZE. Written by PLC, read by TGM.
volatile uint32_t DIO::TxPointerWrite |
Write index to DIO::TxBuffer. PLC writes up to MAX_TX_RX_BUFFER_SIZE-1 bytes from TxPointerWrite to TxPointerRead-1 and increments TxPointerWrite accordingly. Value must be modulo MAX_TX_RX_BUFFER_SIZE. Written by PLC, read by TGM.
volatile uint32_t DIO::TxPointerRead |
Read index to DIO::TxBuffer. TGM reads data from TxPointerRead to DIO::TxPointerWrite, copies them to EtherCAT, and increments TxPointerRead up to allowable data transmit size (22 bytes for KL6041). Value is always modulo MAX_TX_RX_BUFFER_SIZE. Written by TGM, read by PLC.