TG Motion  version 421 - 4033/904 cnc 121
Real-time system for controlling servo drives and I/O modules
TGM.h File Reference

Main include file for TG Motion. Can be used as the only include for virtual PLC projects. More...

#include <stdint.h>

Go to the source code of this file.

Classes

struct  HEADER
 The HEADER struct - fixed size 128 bytes. More...
 
struct  MAIN
 The MAIN struct - fixed size of 4096 bytes. More...
 
struct  TIMERS
 Timers with fixed 1ms period. More...
 
struct  CHANNEL
 One oscilloscope channel definition. More...
 
struct  OSC
 Oscilloscope control. More...
 
struct  ECAT_DRIVER
 Describes which PCI device is ised as a EtherCAT device. More...
 
struct  EEPROM
 EEPROM simulation. More...
 
struct  SYSTEM
 Shared memory named "TGM_System". More...
 
struct  PG
 Profile generator. More...
 
struct  GEAR
 Gear generator. More...
 
struct  CAPTURE
 Capture position from servo. More...
 
struct  MAP_CNC
 Maps interpolator axe to servo drive. More...
 
struct  SDO
 SDO object communication. More...
 
struct  EXT_SDO
 Exteded SDO object communication (GENERAL_DEVICES only) More...
 
struct  ECAT_REGISTER
 EtherCAT registers communication. More...
 
struct  COMMAND
 Servo command. More...
 
struct  SERVO
 Describes one servo drive (or axis) More...
 
struct  DIO
 Describes one servo input/output module. More...
 
struct  UNIVERSAL_DEVICE
 Describes one general module. More...
 
struct  GENERAL_DEVICE
 Describes one general module. More...
 
struct  UNIVERSAL_MEMORY
 Universal memory contains several general structures. More...
 
struct  INTERPOLATOR_LOOK_AHEAD_ENTRY
 Stores informations about CNC code parts ahead of the actual one. More...
 
struct  INTERPOLATOR_LOOK_AHEAD_BUFFER
 Lookahead informations about the G-code. More...
 
struct  CONT_MFUNC_HISTORY
 History of continuous M functions. More...
 
struct  INTERPOLATOR
 Interface to interpolator. More...
 
struct  _PLC_IMPORT_FUNCTIONS
 Pointers to auxiliary functions usable in Virtual PLC. More...
 
struct  RECEIVE_DATA_CAN
 One entry of incoming CAN data. More...
 
struct  _PLC_DATA
 main structure for communication between TGMotion and Virtual PLC More...
 

Macros

#define TGM_VERSION   421
 Main TG Motion version.
 
#define ID_COMPATIBILITY   4033
 Compability number.
 
#define ID_MEMORY_COMPATIBILITY   904
 Memory Compatibility number.
 
#define ID_CNC_COMPATIBILITY   121
 CNC Compatibility ID.
 
#define MAX_SERVO   256
 
#define MAX_DIO   256
 
#define MAX_INTERPOLATOR   3
 
#define MAX_CORES   3
 
#define MAX_INTERPOLATOR_BUFFER_SIZE   50000
 
#define MIN_INTERPOLATOR_BUFFER_SIZE   500
 
#define MAX_INTERPOLATOR_AXES   10
 Maximum interpolated axes.
 
#define MAX_TIMER_UP   64
 Max number timers up.
 
#define MAX_TIMER_DOWN   64
 Max number timers down.
 
#define TG_IO_TYPE_BASIC   0x0000
 EtherCAT DIO types. Found automatically and set to DIO::Type variable. More...
 
#define TG_IO_TENZOMETER   0x0008
 digital: 8out, 8in, tenzometer: 4
 
#define TG_IO_TYPE_NEW   0x0014
 digital: 40out, 48in, analog: 4out, 4in
 
#define TG_IO_TYPE_BASIC_LITE   0x00E0
 digital: 24out, 40in
 
#define TG_IO_TYPE_NEW_LITE   0x00F4
 digital: 16out, 32in, analog: 4out, 4in
 
#define FESTO_IO_TYPE   0x0400
 digital: up to 128out, up to 128in
 
#define TGM_MINI_DIO_TYPE   0x1000
 digital: 8out, 8in
 
#define DFC_IO_TYPE   0x7B90
 digital: 16out, 16in
 
#define MFUNC_NUMBER_PAR   26
 Number of M functions parameters (all the letters of English alphabet)
 
#define N_OSC_CHANNELS   32
 Max number of oscilloscope numbers.
 
#define SIZE_EEPROM_MEMORY   (8192 - sizeof(TIMERS) - sizeof(OSC) - 2 * sizeof(ECAT_DRIVER) - 2* sizeof(int32_t) - sizeof(RESERVE_MAIN) - sizeof(MAIN) - sizeof(HEADER))
 Size eeprom memory [ bytes ].
 
#define SDO_CONTROL_FINISHED   0
 SDO channel is ready for a next command.
 
#define SDO_CONTROL_WRITE   1
 Write SDO command for SDO::Control value.
 
#define SDO_CONTROL_READ   2
 Read SDO command for SDO::Control value.
 
#define SDO_STATUS_OK   0
 SDO completed OK.
 
#define SDO_STATUS_BUSY   1
 SDO is in progress.
 
#define SDO_STATUS_ERR   -1
 SDO finished with error, the error code is in the SDO::Data.
 
#define MAX_TX_RX_BUFFER_SIZE   32
 size of TX and RX buffers for ECAT to serial converters (currently BK1120+EL6041 only)
 
#define CONT_MFUNC_HISTORY_SIZE   8
 holds history of continuous M functions
 

Typedefs

typedef int32_t PLC_FUNC_CDECL RTWPRINTF_STRING(PLC_CONST_STRING strText)
 Output string to console. More...
 
typedef int32_t PLC_FUNC_CDECL RTWPRINTF_LONG(PLC_CONST_STRING strFormat, int32_t lVal)
 Output long value (32bit signed integer) to console. More...
 
typedef int32_t PLC_FUNC_CDECL SWPRINTF(PLC_STRING buffer, size_t sizeOfBuffer, PLC_CONST_STRING strFormat,...)
 Formatted sprintf-like output to buffer. More...
 
typedef void PLC_FUNC_CDECL SLEEPFT(PLC_PLARGE_INTEGER Pause)
 Wait for specified time. Do not use in Program_04() ! More...
 
typedef int32_t PLC_FUNC_CDECL CAN_TRANSMIT(uint32_t Number, uint32_t Id, uint32_t Dlc, unsigned char *Tx_Data)
 Send CAN message. More...
 
typedef int32_t PLC_FUNC_CDECL CAN_TRANSMITREMOTE(uint32_t Number, uint32_t Id, uint32_t Dlc, unsigned char *Tx_Data)
 Send CAN remote message. More...
 
typedef int32_t PLC_FUNC_CDECL RTWPRINTF_EX(int32_t severity, PLC_CONST_STRING strFormat,...)
 Formatted printf-like output to console. More...
 
typedef HPE_MODULE PLC_FUNC_CDECL LOADPEIMAGE(PLC_CONST_STRING fileNameWithFullPath)
 Load sub-DLL inside PLC. More...
 
typedef void *PLC_FUNC_CDECL GETPEADDRESS(HPE_MODULE hModule, const char *funcName)
 Get function addres from module loaded by LOADPEIMAGE() More...
 
typedef struct _PLC_IMPORT_FUNCTIONS PLC_IMPORT_FUNCTIONS
 Pointers to auxiliary functions usable in Virtual PLC.
 
typedef struct _PLC_DATA PLC_DATA
 main structure for communication between TGMotion and Virtual PLC
 

Enumerations

enum  TGM_LOG_XXX : uint32_t {
  TGM_LOG_MAIN = 0x0001, TGM_LOG_INTEPOLATOR = 0x0002, TGM_LOG_CAN = 0x0004, TGM_LOG_CAN1_SDO = 0x0008,
  TGM_LOG_CAN2_SDO = 0x0010, TGM_LOG_PG = 0x0020, TGM_LOG_GEAR = 0x0040, TGM_LOG_ETHERNET = 0x0080,
  TGM_LOG_ETHERCAT = 0x0100, TGM_LOG_ETHERCAT_SDO = 0x0200, TGM_LOG_ETHERCAT_STATUS = 0x0400, TGM_LOG_ETHERCAT_DC = 0x0800,
  TGM_LOG_ETHERCAT_FSM_STATE = 0x1000, TGM_LOG_VERBOSE_PE = 0x2000, TGM_LOG_VERBOSE_RELOC = 0x4000, TGM_LOG_VERBOSE_EXPORTS = 0x8000
}
 Bitmasks for debug log output. More...
 
enum  SERVO_TYPES_XXX : int32_t {
  SERVOSTAR_400_600 = 1, TGA = 2, TGA_21 = 21, SERVOSTAR_300_700 = 3,
  POWER_STAGE_CW32 = 4, POWER_STAGE_CW32_EXTPOS = 41, POWER_STAGE_CW16 = 42, POWER_STAGE_CW16_EXTPOS = 43,
  AKD = 5, TGA220 = 6, SERVO_PIERCE = 7, SERVO_DCM = 8,
  SERVO_TGZ = 9
}
 Servo types. More...
 
enum  OSC_MEMORY_TYPES : uint32_t {
  OSC_SYSTEM_MEMORY = 0, OSC_DATA_MEMORY = 1, OSC_CAM_PROFILE_MEMORY = 2, OSC_OSCILLOSCOPE_MEMORY = 3,
  OSC_SERVO_MEMORY = 4, OSC_DIO_MEMORY = 5, OSC_INTEROPLATOR_MEMORY = 6, OSC_INTERPOLATOR_WRITE_MEMORY = 7,
  OSC_INTERPOLATOR_READ_MEMORY = 8, OSC_ODS_MEMORY = 9, OSC_CNCEX_MEMORY = 10, OSC_GCODE_MEMORY = 11,
  OSC_CNCEX_LOCAL_MEMORY = 12, OSC_CNCINI_MEMORY = 13, OSC_UNIVERSAL_MEMORY = 14, OSC_LAST_MEMORY_IDX = 15
}
 Oscilloscope memory numbers. More...
 
enum  OSC_DATA_TYPES : uint32_t {
  OSC_DATA_TYPE_I32_DEC = 0, OSC_DATA_TYPE_I32_HEX = 1, OSC_DATA_TYPE_I32_BIN = 2, OSC_DATA_TYPE_UI32_DEC = 3,
  OSC_DATA_TYPE_I64_DEC = 4, OSC_DATA_TYPE_I64_HEX = 5, OSC_DATA_TYPE_I64_BIN = 6, OSC_DATA_TYPE_UI64_DEC = 7,
  OSC_DATA_TYPE_DOUBLE = 8, OSC_DATA_TYPE_FLOAT = 9, OSC_DATA_TYPE_ASTRING = 10, OSC_DATA_TYPE_WSTRING = 11,
  OSC_DATA_TYPE_I32_BIN_EX = 12, OSC_DATA_TYPE_I64_BIN_EX = 13
}
 Oscilloscope data types. More...
 
enum  INTERPOLATOR_COMMANDS : int32_t {
  INTERPOLATOR_CMD_NONE = 0, INTERPOLATOR_CMD_SET_AXIS_RATIO = 1024, INTERPOLATOR_CMD_SET_COORDS_ON_TRAJ = 2048, INTERPOLATOR_CMD_SET_COORDS_OUT_TRAJ = 2049,
  INTERPOLATOR_CMD_EMERGENCY_STOP = 4, INTERPOLATOR_CMD_EMERGENCY_STOP_OUT_TRAJ = 5, INTERPOLATOR_CMD_NORMAL_STOP = 8, INTERPOLATOR_CMD_NORMAL_STOP_OUT_TRAJ = 9,
  INTERPOLATOR_CMD_SET_FILTER_PARAMETERS = -1, INTERPOLATOR_CMD_SET_SPLINE_PARAMETERS = -2
}
 Interpolator commands (INTERPOLATOR::Command) More...
 
enum  EXT_SDO_CONTROL : int32_t { EXT_SDO_CONTROL_FINISHED = SDO_CONTROL_FINISHED, EXT_SDO_CONTROL_WRITE = SDO_CONTROL_WRITE, EXT_SDO_CONTROL_READ = SDO_CONTROL_READ }
 extended SDO commands (more than 4 bytes of data available) More...
 
enum  EXT_SDO_STATUS : int32_t { EXT_SDO_STATUS_OK = SDO_STATUS_OK, EXT_SDO_STATUS_BUSY = SDO_STATUS_BUSY, EXT_SDO_STATUS_ERR = SDO_STATUS_ERR }
 extended SDO communication status (the smae as for legacy SDO) More...
 

Detailed Description

Main include file for TG Motion. Can be used as the only include for virtual PLC projects.


Author
Antonin SAUER
Date
Jul, 20 th, 2011

Release notes

  • 26.09.2014 update ID numbers
    • ID_COMPATIBILITY 4028 to 4029
    • ID_MEMORY_COMPATIBILITY 900 to 901
    • memory CAM_PROFILE_MEMORY increased from 131072 bytes to 1048576 bytes
    • memory OSCILLOSCOPE_MEMORY increased from 131072 bytes to 1048576 bytes
  • 02.03.2016 update ID numbers
    • ID_COMPATIBILITY to 4030
    • ID_MEMORY_COMPATIBILITY 901
    • added shared memory TGM_ODS (1048576 bytes)
  • 21.06.2016 update ID numbers
    • ID_COMPATIBILITY 4031
    • ID_MEMORY_COMPATIBILITY 903
    • MAX_INTERPOLATOR 3
  • 15.08.2017 changed memory data type declarations from long int to int32_t (using <stdint.h>)
    • DIO.Stav renamed to DIO.Status
    • SERVO.Axe renamed to SERVO.Axis
    • added structures needed fro PLC creation, so only this file is necessary for the PLC programmer
  • 10.05.2018
    • ID_COMPATIBILITY 4033
    • ID_MEMORY_COMPATIBILITY 904
    • CNC compatibility 119
    • new shared UNIVERSAL_MEMORY for various EtherCAT devices
  • 27.08.2018

Definition in file TGM.h.

Macro Definition Documentation

◆ MAX_SERVO

#define MAX_SERVO   256

Max number of servos - can be overriden for different TG Motion types (PC, TGMmini)

Definition at line 100 of file TGM.h.

◆ MAX_DIO

#define MAX_DIO   256

Max number of DIO modules - can be overriden for different TG Motion types (PC, TGMmini)

Definition at line 106 of file TGM.h.

◆ MAX_INTERPOLATOR

#define MAX_INTERPOLATOR   3

Maximum number of interpolators - can be overriden for different TG Motion types (PC, TGMmini)

Definition at line 112 of file TGM.h.

◆ MAX_CORES

#define MAX_CORES   3

maximum number of CNC cores inside TGM (fixed to 3 for PC, 1 for TGMmini)

Definition at line 121 of file TGM.h.

◆ MAX_INTERPOLATOR_BUFFER_SIZE

#define MAX_INTERPOLATOR_BUFFER_SIZE   50000

Maximum number of entries in interpolator buffer (for each interpolator (PC only))

Definition at line 133 of file TGM.h.

◆ MIN_INTERPOLATOR_BUFFER_SIZE

#define MIN_INTERPOLATOR_BUFFER_SIZE   500

Minimal number of entries in interpolator buffer (for each interpolator)

Definition at line 137 of file TGM.h.

◆ TG_IO_TYPE_BASIC

#define TG_IO_TYPE_BASIC   0x0000

EtherCAT DIO types. Found automatically and set to DIO::Type variable.

digital: 32out, 48in, analog: 4out, 4in

Definition at line 236 of file TGM.h.

Typedef Documentation

◆ RTWPRINTF_STRING

typedef int32_t PLC_FUNC_CDECL RTWPRINTF_STRING(PLC_CONST_STRING strText)

Output string to console.

Parameters
strTextUNICODE (Windows) or ANSI (Linux) string to be displayed in TG Motion debug console. Use _T() macro for UNICODE/ANSI text independence.
Returns
Number of characters displayed

Definition at line 1371 of file TGM.h.

◆ RTWPRINTF_LONG

typedef int32_t PLC_FUNC_CDECL RTWPRINTF_LONG(PLC_CONST_STRING strFormat, int32_t lVal)

Output long value (32bit signed integer) to console.

Parameters
strFormat
lVal
Returns

Definition at line 1378 of file TGM.h.

◆ SWPRINTF

typedef int32_t PLC_FUNC_CDECL SWPRINTF(PLC_STRING buffer, size_t sizeOfBuffer, PLC_CONST_STRING strFormat,...)

Formatted sprintf-like output to buffer.

Parameters
buffer
sizeOfBuffer
strFormat
Returns

Definition at line 1386 of file TGM.h.

◆ SLEEPFT

typedef void PLC_FUNC_CDECL SLEEPFT(PLC_PLARGE_INTEGER Pause)

Wait for specified time. Do not use in Program_04() !

Parameters
Pause

Definition at line 1391 of file TGM.h.

◆ CAN_TRANSMIT

typedef int32_t PLC_FUNC_CDECL CAN_TRANSMIT(uint32_t Number, uint32_t Id, uint32_t Dlc, unsigned char *Tx_Data)

Send CAN message.

Parameters
Number
Id
Dlc
Tx_Data
Returns

Definition at line 1400 of file TGM.h.

◆ CAN_TRANSMITREMOTE

typedef int32_t PLC_FUNC_CDECL CAN_TRANSMITREMOTE(uint32_t Number, uint32_t Id, uint32_t Dlc, unsigned char *Tx_Data)

Send CAN remote message.

Parameters
Number
Id
Dlc
Tx_Data
Returns

Definition at line 1409 of file TGM.h.

◆ RTWPRINTF_EX

typedef int32_t PLC_FUNC_CDECL RTWPRINTF_EX(int32_t severity, PLC_CONST_STRING strFormat,...)

Formatted printf-like output to console.

Parameters
severity
strFormat
Returns

Definition at line 1416 of file TGM.h.

◆ LOADPEIMAGE

typedef HPE_MODULE PLC_FUNC_CDECL LOADPEIMAGE(PLC_CONST_STRING fileNameWithFullPath)

Load sub-DLL inside PLC.

Parameters
fileNameWithFullPath
Returns
Handle to module or NULL in error

Definition at line 1422 of file TGM.h.

◆ GETPEADDRESS

typedef void* PLC_FUNC_CDECL GETPEADDRESS(HPE_MODULE hModule, const char *funcName)

Get function addres from module loaded by LOADPEIMAGE()

Parameters
hModuleHandle to module (got by LOADPEMODULE() funcion)
funcNameName of the function
Returns
Address to function or NULL in error

Definition at line 1429 of file TGM.h.

Enumeration Type Documentation

◆ TGM_LOG_XXX

enum TGM_LOG_XXX : uint32_t

Bitmasks for debug log output.

Values are set in the TgMotion4xx.ini file, entry Log=....

Enumerator
TGM_LOG_MAIN 

Log main TGM.

TGM_LOG_INTEPOLATOR 

Log TGM interpolator.

TGM_LOG_CAN 

Log TGM CAN.

TGM_LOG_CAN1_SDO 

Log TGM CAN SDO handling CAN1.

TGM_LOG_CAN2_SDO 

Log TGM CAN SDO handling CAN2.

TGM_LOG_PG 

Log PG profile generator.

TGM_LOG_GEAR 

Log GEAR generator.

TGM_LOG_ETHERNET 

TGMmini only: Log ethernet communication.

TGM_LOG_ETHERCAT 

Log basic Ethercat traffix.

TGM_LOG_ETHERCAT_SDO 

Log SDO traffix.

TGM_LOG_ETHERCAT_STATUS 

Log unexpected status change, display PDO structure for universal devices.

TGM_LOG_ETHERCAT_DC 

Log distributed clock capability & topology.

TGM_LOG_ETHERCAT_FSM_STATE 

Log detailed Ethercat master FSM states.

TGM_LOG_VERBOSE_PE 

Log PLC loading - PE image analysis.

TGM_LOG_VERBOSE_RELOC 

Log PLC loading - PE image relocation.

TGM_LOG_VERBOSE_EXPORTS 

Log PLC loading - list of exported functions.

Definition at line 155 of file TGM.h.

◆ SERVO_TYPES_XXX

enum SERVO_TYPES_XXX : int32_t

Servo types.

Enumerator
SERVOSTAR_400_600 

Servo drive Servostar 400 or Servostar 600 ( not supported on the ETHERCAT )

TGA 

Servo drive TGA24 ( not supported on the ETHERCAT )

TGA_21 

Servo drive TGA24 ( not supported on the ETHERCAT )

SERVOSTAR_300_700 

Servo drive Servostar 300 or Servostar 700.

POWER_STAGE_CW32 

Servo drive TGP with 32bit control word.

POWER_STAGE_CW32_EXTPOS 

Servo drive TGP with 32bit control word and external position from sin/cos encoder.

POWER_STAGE_CW16 

Servo drive TGP with 16bit control word ( not supported on the ETHERCAT )

POWER_STAGE_CW16_EXTPOS 

Servo drive TGP with 16bit control word and external position from sin/cos encoder ( not supported on the ETHERCAT )

AKD 

Servo drive AKD.

TGA220 

Servo drive TGA220 ( not supported on the CAN )

SERVO_PIERCE 

Servo drive RETROFIT for Pierce controls ( not supported on the CAN )

SERVO_DCM 

Servo drive DMC ( not supported on the CAN )

SERVO_TGZ 

Servo drive TGZ ( not supported on the CAN )

Definition at line 212 of file TGM.h.

◆ OSC_MEMORY_TYPES

enum OSC_MEMORY_TYPES : uint32_t

Oscilloscope memory numbers.

The same numbers are used as memory types in TGM_Comm_Int_2.dll.

Enumerator
OSC_SYSTEM_MEMORY 

SYSTEM memory.

OSC_DATA_MEMORY 

Virtual PLC private memory. TG Motion never writes to this memory.

OSC_CAM_PROFILE_MEMORY 

CAM memory.

OSC_OSCILLOSCOPE_MEMORY 

Oscilloscope memory. Stores oscilloscope values. Read-only.

OSC_SERVO_MEMORY 

All servos.

OSC_DIO_MEMORY 

All I/O modules.

OSC_INTEROPLATOR_MEMORY 

Interface to all interpolators.

OSC_INTERPOLATOR_WRITE_MEMORY 

Internal memory for CNC modules.

OSC_INTERPOLATOR_READ_MEMORY 

Internal memory for CNC modules.

OSC_ODS_MEMORY 

Stores debug, warning and error messages in a circular buffer.

OSC_CNCEX_MEMORY 

Interface to CNC modules.

OSC_GCODE_MEMORY 

Stores compiled G-code.

OSC_CNCEX_LOCAL_MEMORY 

local DLL memory, ignored by TGMotion oscilloscope

OSC_CNCINI_MEMORY 

INI file, ignored by TGMotion oscilloscope.

OSC_UNIVERSAL_MEMORY 

Universal memory for general devices, etc.

OSC_LAST_MEMORY_IDX 

total number of shared memories

Definition at line 259 of file TGM.h.

◆ OSC_DATA_TYPES

enum OSC_DATA_TYPES : uint32_t

Oscilloscope data types.

Enumerator
OSC_DATA_TYPE_I32_DEC 

int32_t in decimal representation

OSC_DATA_TYPE_I32_HEX 

int32_t in hexadecimal representation

OSC_DATA_TYPE_I32_BIN 

int32_t in binary representation

OSC_DATA_TYPE_UI32_DEC 

uint32_t in decimal representation

OSC_DATA_TYPE_I64_DEC 

int64_t in decimal representation

OSC_DATA_TYPE_I64_HEX 

int64_t in hexadecimal representation

OSC_DATA_TYPE_I64_BIN 

int64_t in binary representation

OSC_DATA_TYPE_UI64_DEC 

uint64_t in decimal representation

OSC_DATA_TYPE_DOUBLE 

64 bits real data type

OSC_DATA_TYPE_FLOAT 

32 bits real data type (single data type Pascal)

OSC_DATA_TYPE_ASTRING 

ANSI (int8_t) string.

OSC_DATA_TYPE_WSTRING 

UNICODE (UTF-16) string.

OSC_DATA_TYPE_I32_BIN_EX 

int32_t in binary representation, displayed bit by bit

OSC_DATA_TYPE_I64_BIN_EX 

int64_t in binary representation, displayed bit by bit

Definition at line 281 of file TGM.h.

◆ INTERPOLATOR_COMMANDS

enum INTERPOLATOR_COMMANDS : int32_t

Interpolator commands (INTERPOLATOR::Command)

Enumerator
INTERPOLATOR_CMD_NONE 

No command or previous command finished.

INTERPOLATOR_CMD_SET_AXIS_RATIO 

Sets the INTERPOLATOR::Ratio as a fraction

Command_Parametr Description
0 axis index
1 numerator
2 denominator
INTERPOLATOR_CMD_SET_COORDS_ON_TRAJ 

Sets the actual position, keep the on_trajectory status. All the positions are in Command_Parametr array.

INTERPOLATOR_CMD_SET_COORDS_OUT_TRAJ 

Sets the actual position, set the off_trajectory status. All the positions are in Command_Parametr array.

INTERPOLATOR_CMD_EMERGENCY_STOP 

Stop the interpolator and keep it on actual status. Uses emergency stop deceleration

INTERPOLATOR_CMD_EMERGENCY_STOP_OUT_TRAJ 

Stop the interpolator and set off trajectory status Uses emergency stop deceleration

INTERPOLATOR_CMD_NORMAL_STOP 

Stop the interpolator and keep it on actual status. Uses normal stop deceleration

INTERPOLATOR_CMD_NORMAL_STOP_OUT_TRAJ 

Stop the interpolator and set off trajectory status Uses normal stop deceleration

INTERPOLATOR_CMD_SET_FILTER_PARAMETERS 

Sets the IIR filter parameters

Command_Parametr Description
0 p parameter
1 q parameter
2 f parameter
3 axis bit mask
INTERPOLATOR_CMD_SET_SPLINE_PARAMETERS 

Sets the spline parameters

Command_Parametr Description
0 number of points (50-500)
1 jerk value

Definition at line 305 of file TGM.h.

◆ EXT_SDO_CONTROL

enum EXT_SDO_CONTROL : int32_t

extended SDO commands (more than 4 bytes of data available)

Uses the same values as for normal (legacy) SDO

Enumerator
EXT_SDO_CONTROL_FINISHED 

0 - SDO is ready for a next command

EXT_SDO_CONTROL_WRITE 

1 - Write SDO

EXT_SDO_CONTROL_READ 

2 - Read SDO

Definition at line 716 of file TGM.h.

◆ EXT_SDO_STATUS

enum EXT_SDO_STATUS : int32_t

extended SDO communication status (the smae as for legacy SDO)

Enumerator
EXT_SDO_STATUS_OK 

command completed OK

EXT_SDO_STATUS_BUSY 

command is in process

EXT_SDO_STATUS_ERR 

command ended with error, the error code is in EXT_SDO::Data[0]

Definition at line 723 of file TGM.h.