7 #ifndef __NEXMOTION_DEF_H 8 #define __NEXMOTION_DEF_H 16 #define NMC_DEVICE_TYPE_SIMULATOR (0) 17 #define NMC_DEVICE_TYPE_ETHERCAT (1) 22 #define NMC_WAIT_TIME_INFINITE (0xFFFFFFFF) 29 #define NMC_DEVICE_STATE_INIT (1) 30 #define NMC_DEVICE_STATE_READY (2) 31 #define NMC_DEVICE_STATE_ERROR (3) 32 #define NMC_DEVICE_STATE_OPERATION (4) 42 #define NMC_SAFETY_STATE_DISABLE (0) 43 #define NMC_SAFETY_STATE_READY (1) 44 #define NMC_SAFETY_STATE_ERROR (2) 54 #define NMC_SAFETY_MODE_OP_T1 (0) 55 #define NMC_SAFETY_MODE_OP_T2 (1) 56 #define NMC_SAFETY_MODE_OP_AUT (2) 66 #define NMC_SAFETY_WDT_TIMEOUT_STOP0 (0) 67 #define NMC_SAFETY_WDT_TIMEOUT_STOP1 (1) 76 #define NMC_COORD_MCS (0) 77 #define NMC_COORD_PCS (1) 78 #define NMC_COORD_ACS (2) 89 #define NMC_AXIS_STATE_DISABLE (0) 90 #define NMC_AXIS_STATE_STAND_STILL (1) 91 #define NMC_AXIS_STATE_HOMING (2) 92 #define NMC_AXIS_STATE_DISCRETE_MOTION (3) 93 #define NMC_AXIS_STATE_CONTINUOUS_MOTION (4) 94 #define NMC_AXIS_STATE_STOPPING (5) 95 #define NMC_AXIS_STATE_STOPPED (6) 96 #define NMC_AXIS_STATE_WAIT_SYNC (7) 97 #define NMC_AXIS_STATE_GROUP_MOTION (8) 98 #define NMC_AXIS_STATE_ERROR (10) 112 #define NMC_AXIS_STATUS_EMG (0) 113 #define NMC_AXIS_STATUS_ALM (1) 114 #define NMC_AXIS_STATUS_PEL (2) 115 #define NMC_AXIS_STATUS_NEL (3) 116 #define NMC_AXIS_STATUS_PSEL (4) 117 #define NMC_AXIS_STATUS_NSEL (5) 118 #define NMC_AXIS_STATUS_ENA (6) 119 #define NMC_AXIS_STATUS_ERR (7) 120 #define NMC_AXIS_STATUS_TAR (8) 121 #define NMC_AXIS_STATUS_CSTP (9) 122 #define NMC_AXIS_STATUS_ACC (10) 123 #define NMC_AXIS_STATUS_DEC (11) 124 #define NMC_AXIS_STATUS_MV (12) 125 #define NMC_AXIS_STATUS_OP (13) 126 #define NMC_AXIS_STATUS_STOP (14) 127 #define NMC_AXIS_STATUS_RPEL (16) 128 #define NMC_AXIS_STATUS_RNEL (17) 129 #define NMC_AXIS_STATUS_RHOM (18) 145 #define NMC_AXIS_STATUS_MASK_EMG (0x00000001) 146 #define NMC_AXIS_STATUS_MASK_ALM (0x00000002) 147 #define NMC_AXIS_STATUS_MASK_PEL (0x00000004) 148 #define NMC_AXIS_STATUS_MASK_NEL (0x00000008) 149 #define NMC_AXIS_STATUS_MASK_PSEL (0x00000010) 150 #define NMC_AXIS_STATUS_MASK_NSEL (0x00000020) 151 #define NMC_AXIS_STATUS_MASK_ENA (0x00000040) 152 #define NMC_AXIS_STATUS_MASK_ERR (0x00000080) 153 #define NMC_AXIS_STATUS_MASK_TAR (0x00000100) 154 #define NMC_AXIS_STATUS_MASK_CSTP (0x00000200) 155 #define NMC_AXIS_STATUS_MASK_ACC (0x00000400) 156 #define NMC_AXIS_STATUS_MASK_DEC (0x00000800) 157 #define NMC_AXIS_STATUS_MASK_MV (0x00001000) 158 #define NMC_AXIS_STATUS_MASK_OP (0x00002000) 159 #define NMC_AXIS_STATUS_MASK_STOP (0x00004000) 160 #define NMC_AXIS_STATUS_MASK_RPEL (0x00010000) 161 #define NMC_AXIS_STATUS_MASK_RNEL (0x00020000) 162 #define NMC_AXIS_STATUS_MASK_RHOM (0x00040000) 174 #define NMC_GROUP_STATE_DISABLE (0) 175 #define NMC_GROUP_STATE_STAND_STILL (1) 176 #define NMC_GROUP_STATE_STOPPED (2) 177 #define NMC_GROUP_STATE_STOPPING (3) 178 #define NMC_GROUP_STATE_MOVING (4) 179 #define NMC_GROUP_STATE_HOMING (5) 180 #define NMC_GROUP_STATE_ERROR (6) 195 #define NMC_GROUP_STATUS_EMG (0) 196 #define NMC_GROUP_STATUS_ALM (1) 197 #define NMC_GROUP_STATUS_PEL (2) 198 #define NMC_GROUP_STATUS_NEL (3) 199 #define NMC_GROUP_STATUS_PSEL (4) 200 #define NMC_GROUP_STATUS_NSEL (5) 201 #define NMC_GROUP_STATUS_ENA (6) 202 #define NMC_GROUP_STATUS_ERR (7) 203 #define NMC_GROUP_STATUS_CSTP (9) 204 #define NMC_GROUP_STATUS_ACC (10) 205 #define NMC_GROUP_STATUS_DEC (11) 206 #define NMC_GROUP_STATUS_MV (12) 207 #define NMC_GROUP_STATUS_OP (13) 208 #define NMC_GROUP_STATUS_STOP (14) 218 #define NMC_GROUP_STATUS_MASK_EMG (0x00000001) 219 #define NMC_GROUP_STATUS_MASK_ALM (0x00000002) 220 #define NMC_GROUP_STATUS_MASK_PEL (0x00000004) 221 #define NMC_GROUP_STATUS_MASK_NEL (0x00000008) 222 #define NMC_GROUP_STATUS_MASK_PSEL (0x00000010) 223 #define NMC_GROUP_STATUS_MASK_NSEL (0x00000020) 224 #define NMC_GROUP_STATUS_MASK_ENA (0x00000040) 225 #define NMC_GROUP_STATUS_MASK_ERR (0x00000080) 226 #define NMC_GROUP_STATUS_MASK_CSTP (0x00000200) 227 #define NMC_GROUP_STATUS_MASK_ACC (0x00000400) 228 #define NMC_GROUP_STATUS_MASK_DEC (0x00000800) 229 #define NMC_GROUP_STATUS_MASK_MV (0x00001000) 230 #define NMC_GROUP_STATUS_MASK_OP (0x00002000) 231 #define NMC_GROUP_STATUS_MASK_STOP (0x00004000) 236 #define NMC_MAX_AXES_IN_GROUP (8) 240 #define NMC_MAX_POS_SIZE (8) 243 #define NMC_MAX_XYZ_SIZE (3) 246 #define NMC_MAX_AXIS_POS_SIZE (NMC_MAX_AXES_IN_GROUP) 249 #define NMC_MAX_CARTESIAN_POS_SIZE (6) 255 #define NMC_GROUP_AXIS_X (0) 256 #define NMC_GROUP_AXIS_Y (1) 257 #define NMC_GROUP_AXIS_Z (2) 258 #define NMC_GROUP_AXIS_A (3) 259 #define NMC_GROUP_AXIS_B (4) 260 #define NMC_GROUP_AXIS_C (5) 261 #define NMC_GROUP_AXIS_U (6) 262 #define NMC_GROUP_AXIS_V (7) 271 #define NMC_GROUP_AXIS_MASK_X (0x00000001) 272 #define NMC_GROUP_AXIS_MASK_Y (0x00000002) 273 #define NMC_GROUP_AXIS_MASK_Z (0x00000004) 274 #define NMC_GROUP_AXIS_MASK_A (0x00000008) 275 #define NMC_GROUP_AXIS_MASK_B (0x00000010) 276 #define NMC_GROUP_AXIS_MASK_C (0x00000020) 277 #define NMC_GROUP_AXIS_MASK_U (0x00000040) 278 #define NMC_GROUP_AXIS_MASK_V (0x00000080) 279 #define NMC_GROUP_AXIS_MASK_ALL (0x000000FF) 288 #define NMC_TRACE_MODE_DISABLE (0) 289 #define NMC_TRACE_MODE_ERROR (1) 290 #define NMC_TRACE_MODE_ALL (2) 300 #define NMC_MAX_MSG_SOURCE_SIZE (128) 301 #define NMC_MAX_MSG_TEXT_SIZE (1024) 302 #define NMC_MSG_TYPE_NORMAL (0) 303 #define NMC_MSG_TYPE_WARNING (1) 304 #define NMC_MSG_TYPE_ERROR (2) 305 #define NMC_MSG_TYPE_DEBUGING (3) 315 #define NMC_MEM_ENTRY_NAME_SIZE (128) 316 #define NMC_MEM_ENTRY_CLASS_DIO (0) 317 #define NMC_MEM_ENTRY_CLASS_DATA (1) 322 #define NMC_MAX_POSE_DATA_SIZE (6) 330 #define NMC_TOOL_NONE (-1) 331 #define NMC_BASE_NONE (-1) 349 #define RCFG_OPTION 10 351 #define RCFG_UNUSE 30 467 typedef void(*
PF_NmcHookAPI)(
const void *FPFuncAddress ,
const char *PFuncName,
RTN_ERR ReturnCode,
void *PUserData );
469 #pragma pack(push, 1) 496 char source[NMC_MAX_MSG_SOURCE_SIZE];
499 char text[NMC_MAX_MSG_TEXT_SIZE];
510 U32_T bitStartOffset;
514 char name[NMC_MEM_ENTRY_NAME_SIZE];
524 #define MAX_POS_SIZE (NMC_MAX_POS_SIZE) 526 #define MAX_XYZ_SIZE (NMC_MAX_XYZ_SIZE) 529 #define GROUP_AXIS_X (0) 530 #define GROUP_AXIS_Y (1) 531 #define GROUP_AXIS_Z (2) 532 #define GROUP_AXIS_A (3) 533 #define GROUP_AXIS_B (4) 534 #define GROUP_AXIS_C (5) 535 #define GROUP_AXIS_U (6) 536 #define GROUP_AXIS_V (7) 539 #define GROUP_AXIS_MASK_X (0x00000001) 540 #define GROUP_AXIS_MASK_Y (0x00000002) 541 #define GROUP_AXIS_MASK_Z (0x00000004) 542 #define GROUP_AXIS_MASK_A (0x00000008) 543 #define GROUP_AXIS_MASK_B (0x00000010) 544 #define GROUP_AXIS_MASK_C (0x00000020) 545 #define GROUP_AXIS_MASK_U (0x00000040) 546 #define GROUP_AXIS_MASK_V (0x00000080) A data structure is used to describe the system message.
Definition: NexMotionDef.h:490
#define NMC_MAX_POSE_DATA_SIZE
Definition: NexMotionDef.h:323
U32_T index
The index of message.
Definition: NexMotionDef.h:494
U32_T minute
0 through 59.
Definition: NexMotionDef.h:480
Definition: NexMotionDef.h:423
A head file define variable types for NexMotion Library.
The data types related to pose in Cartesian space, which is defined in NexMotionDef.h.
Definition: NexMotionDef.h:412
The data types related to motion in Axis system, which is defined in NexMotionDef.h.
Definition: NexMotionDef.h:399
NmcTime_T localTime
The system time recorded when the message is generated.
Definition: NexMotionDef.h:493
I32_T code
The code of message.
Definition: NexMotionDef.h:498
U32_T year
1601 through 30827
Definition: NexMotionDef.h:476
U32_T hour
0 through 23.
Definition: NexMotionDef.h:479
A data structure is used to describe the system time.
Definition: NexMotionDef.h:474
The data structure to descibe the transformmed reslationship between two coordinate system...
Definition: NexMotionDef.h:448
int I32_T
-2147483648 ~ 2147483647
Definition: nex_type.h:29
A data structure is used to describe the information of memory entry.
Definition: NexMotionDef.h:508
The data types related to motion in Cartesian system, which is defined in NexMotionDef.h.
Definition: NexMotionDef.h:383
U32_T second
0 through 59
Definition: NexMotionDef.h:481
I32_T id
The identification of message (reserved).
Definition: NexMotionDef.h:497
U32_T month
1 through 12.
Definition: NexMotionDef.h:477
Definition: NexMotionDef.h:436
I32_T RTN_ERR
Return code.
Definition: nex_type.h:39
#define NMC_MAX_CARTESIAN_POS_SIZE
CPos_T array size definition.
Definition: NexMotionDef.h:249
#define NMC_MAX_XYZ_SIZE
Xyz_T array size definition.
Definition: NexMotionDef.h:243
#define NMC_MAX_AXIS_POS_SIZE
APos_T array size definition.
Definition: NexMotionDef.h:246
I32_T type
The type of message.
Definition: NexMotionDef.h:495
U32_T day
1 through 31.
Definition: NexMotionDef.h:478
#define NMC_MAX_POS_SIZE
Pos_T array size definition.
Definition: NexMotionDef.h:240
U32_T milliseconds
0 through 999
Definition: NexMotionDef.h:482
unsigned int U32_T
0 ~ 4294967295
Definition: nex_type.h:20
The general data types related to motion, which is defined in NexMotionDef.h.
Definition: NexMotionDef.h:363
U32_T sizeOfStruct
The size of NmcMsg_T, and equivalent to the sizeof(NmcMsg_T).
Definition: NexMotionDef.h:492
void(* PF_NmcHookAPI)(const void *FPFuncAddress, const char *PFuncName, RTN_ERR ReturnCode, void *PUserData)
Hook function type definition.
Definition: NexMotionDef.h:467
double F64_T
Double precision floating point.
Definition: nex_type.h:37