
#define EXE_SUCCESS                       (0x0000)        // 指令成功
                                          
#define ERR_TRANSMIT                      (0x0001)        // 指令传输错误
#define ERR_UNKNOWN                       (0x0002)        // 不支持的指令
#define ERR_PARSE                         (0x0003)        // 指令解析错误
                                          
#define ERR_BGVEL_OUTRANG                 (0x0010)        // 起始速度设置超出范围
#define ERR_MAXVEL_OUTRANG                (0x0011)        // 最大速度设置超出范围
#define ERR_MAXACC_OUTRANG                (0x0012)        // 最大加速度设置超出范围
#define ERR_MAXDEC_OUTRANG                (0x0013)        // 最大减速度设置超出范围
#define ERR_MAXJERK_OUTRANG               (0x0014)        // 最大加加速度设置超出范围
#define ERR_STOPDEC_OUTRANG               (0x0015)        // 平滑停止速度设置超出范围
#define ERR_ESTOPDEC_OUTRANG              (0x0016)        // 急停速度设置超出范围
#define ERR_VEL_OUTRANG                   (0x0017)        // 运行速度设置超出范围
#define ERR_ACC_OUTRANG                   (0x0018)        // 运行加速度设置超出范围
#define ERR_DEC_OUTRANG                   (0x0019)        // 运行减速度设置超出范围
#define ERR_RATIO_OUTRANG                 (0x001a)        // 倍率设置超出范围
#define ERR_TGTPOS_OUTRANG                (0x001b)        // 目标位置设置超出范围
                                          
#define ERR_INDEX_OUTRANG                 (0x001c)        // 索引号设置超出范围
#define ERR_DIMDL_NUM_OUTRANG             (0x001d)        // 设置ECAT的DI超出DI模块数量范围
#define ERR_DOMDL_NUM_OUTRANG             (0x001e)        // 设置ECAT的DO超出DO模块数量范围
#define ERR_AIMDL_NUM_OUTRANG             (0x001f)        // 设置ECAT的AI超出AI模块数量范围
#define ERR_AOMDL_NUM_OUTRANG             (0x0020)        // 设置ECAT的AO超出AO模块数量范围
#define ERR_NO_ECAT_DO                    (0x0021)        // ECAT未配置DO模块
#define ERR_NO_ECAT_DI                    (0x0022)        // ECAT未配置DI模块
#define ERR_NO_ECAT_AO                    (0x0023)        // ECAT未配置AO模块
#define ERR_NO_ECAT_AI                    (0x0024)        // ECAT未配置AI模块
#define ERR_NO_ECAT_ENC                   (0x0025)        // ECAT未配置ENC模块
                                          
#define ERR_TYPE_PARA                     (0x0026)        // 指令中类型参数错误
#define ERR_OUTCHN_PARA                   (0x0027)        // 输出通道参数错误
#define ERR_ALRM_ENABLE                   (0x0028)        // 报警使能参数非0或1
#define ERR_SOFTLMT_ENABLE                (0x0029)        // 软限位使能参数非0或1
#define ERR_HWLMT_ENABLE                  (0x002a)        // 硬限位使能参数非0或1
#define ERR_ERRLMT_ENABLE                 (0x002b)        // 跟随误差报警使能参数非0或1
#define ERR_COUNT_OUTRANG                 (0x002c)        // 数量的参数超出规定范围
#define ERR_HOME_FLTTIME                  (0x002e)        // HOME滤波参数错误
#define ERR_LIMIT_FLTTIME                 (0x002f)        // LIMIT滤波参数错误
#define ERR_PROBE_FLTTIME                 (0x0030)        // PROBE滤波参数错误
#define ERR_INVERSE_PARA                  (0x0031)        // 取反参数非0或1
#define ERR_MODE_PARA                     (0x0032)        // 指令中模式参数错误
#define ERR_LEVEL_PARA                    (0x0033)        // 指令电平参数非0或1
#define ERR_SRC_PARA                      (0x0034)        // 指令源参数错误，不在规定范围
#define ERR_TRIG_SNS                      (0x0035)        // 触发电平参数非0或1
#define ERR_CYCTIME                       (0x0036)        // 设置规划周期参数不在规定范围
#define ERR_FLAG_PARA                     (0x0037)        // 标志参数设置非0或1
#define ERR_ONOFF_PARA                    (0x0038)        // 开关参数设置非0或1
                                          
#define ERR_SV_ALARM                      (0x0039)        // 伺服报警
#define ERR_SV_OFF                        (0x003a)        // 掉使能报警
#define ERR_TERMINAL_NOLINK               (0x003b)        // 端子板通讯失败
                                          
#define ERR_AX_BUSY                       (0x003c)        // 轴正处于规划中
#define ERR_ST_HOMING                     (0x003d)        // 启动回零错误，该轴配置成了虚轴
                                          
#define ERR_SAMPLE_COUNT                  (0x003e)        // 采样数据的个数不对
#define ERR_SAMPLE_BUSY                   (0x003f)        // 采样正忙，不能配置参数
#define ERR_SAMPLE_DATATYPE               (0x0040)        // 采样数据的类型不存在
#define ERR_SAMPLE_INDEX                  (0x0041)        // 采样数据的下标越界
#define ERR_SAMPLE_DRAW_DATA              (0x0042)        // 读取采样数据失败
                                                          
#define ERR_HOMING_AX_TYPE                (0x0043)        // 回零的轴类型不对，非端子板轴
#define ERR_HOMING_MODE                   (0x0044)        // 回零的模式不对，不在回零范围内
#define ERR_HOMING_POS_SRC                (0x0045)        // 端子板轴回零的位置来源参数设置不在范围内
#define ERR_HOMING_MAXTIME                (0x0046)        // 判断回零等待超时最短时间不能小于1s
#define ERR_HOMING_NO_READY               (0x0047)        // 回零参数未设置好错误
                                                          
#define ERR_HANDWHEEL_BUSY                (0x0048)        // 手轮处于忙状态
#define ERR_HANDWHEEL_M_INDEX             (0x0049)        // 手轮主跟随编码器的序号不在范围内
#define ERR_NO_HANDWHEEL_MODE             (0x004a)        // 非手轮模式
#define ERR_HANDWHEEL_M_MOVE              (0x004b)        // 手轮主跟随编码器的在进入手轮前就在运动
                                                          
#define ERR_COMP_DIMENS                   (0x004c)        // 位置比较的维数错误
#define ERR_COMP_SRC_NO                   (0x004d)        // 位置比较的位置源端口号超出范围
#define ERR_COMP_SRC_TYPE                 (0x004e)        // 位置比较的源类型错误
#define ERR_COMP_PULSE_WIDTH              (0x004f)        // 位置比较的脉冲输出宽度
#define ERR_COMP_OUTVAL                   (0x0050)        // 位置比较的立即输出值不在范围内
#define ERR_COMP_CTRLMODE                 (0x0051)        // 位置比较输出的控制模式参数设置错误
#define ERR_COMP_INTERVAL                 (0x0052)        // 位置等距比较输出的间距值小于1个pulse
#define ERR_COMP_REPEATTIME               (0x0053)        // 位置等距比较输出的次数小于1次
#define ERR_COMP_BUSY                     (0x0054)        // 位置比较输出忙
                                                          
#define ERR_ECAT_CAPT_DISEN               (0x0055)        // ECAT捕获未使能
#define ERR_PARA_LESS_ZERO                (0x0056)        // 参数设置小于0
#define ERR_PWM_DUTY_OUTRANG              (0x0057)        // PWM设置的占空比超限
#define ERR_PWM_FRQ_LESS_ZERO             (0x0058)        // PWM设置的频率小于0
#define ERR_PWM_NO_RIGHT_MODE             (0x0059)        // PWM模式错误
                                                          
#define ERR_BACKLASH_CMPVAL               (0x005a)        // 反向间隙总补偿量设置小于0
#define ERR_BACKLASH_CMPVEL               (0x005b)        // 反向间隙补偿量速度小于0
#define ERR_BACKLASH_CMPDIR               (0x005c)        // 反向间隙补偿方向错误
                                                          
#define ERR_AX_NO_BOND                    (0x005d)        // 轴未绑定物理输出端
#define ERR_AX_BOND_SAME_CHN              (0x005e)        // 轴绑定了相同的一个物理轴
                                                          
#define ERR_LOCAL_DI_FLTTIME              (0x005f)        // DI滤波参数错误
#define ERR_COUNT_IS_BONDED               (0x0060)        // 清除的内部计数通道被绑定轴上了
#define ERR_ENC_IS_BONDED                 (0x0061)        // 清除的编码器计数通道被绑定轴上了
#define ERR_AX_IS_MASKED_TO_CRD			  (0x0062)		  // 轴已映射至插补坐标系
#define ERR_PRF_IN_WRONG_MODE             (0x0063)        // 在错误模式下执行
                                                          
#define ERR_CRD_NOT_EXIST                 (0x0064)        // 坐标系不存在
#define ERR_TOL_OUTRANG                   (0x0065)        // 坐标系精度参数设置错误
#define ERR_CRD_COPLAN_PARA               (0x0066)        // 坐标系异面过渡参数设置错误
#define ERR_CRD_TURN_PARA                 (0x0067)        // 坐标系拐弯系数设置错误
#define ERR_CRD_TRANSMODE_PARA            (0x0068)        // 坐标系过渡模式设置错误
#define ERR_CRD_NODATA_PROTECT_PARA       (0x0069)        // 坐标系数据断流保护参数错误
#define ERR_CRD_ARC_ACC_PARA              (0x006a)        // 坐标系圆弧变加速参数设置错误
#define ERR_CRD_TRAJ_TYPE_PARA            (0x006b)        // 坐标系速度规划类型参数设置错误
#define ERR_CRD_FATAL_DATA_ERR            (0x006c)        // 坐标系压入数据致命错误
#define ERR_CRD_DO_TYPE                   (0x006d)        // 坐标系压入的DO类型错误
#define ERR_CRD_LOOKAHEAD_LEN             (0x006f)        // 坐标系前瞻长度设置错误
#define ERR_CRD_SGL_FLT_DEPTH             (0x0070)        // 坐标系单轴滤波参数错误
#define ERR_CRD_SGL_CTRL_TOL              (0x0071)        // 坐标系单轴控制精度参数错误
#define ERR_CRD_MASK_SAME_AXNO            (0x0073)        // 坐标系输出轴映射到相同端口错误
#define ERR_CRD_MASK_AXNO_OUTRANG         (0x0074)        // 坐标系输出轴映射号超出范围
#define ERR_CRD_REPEATED_CREATED          (0x0075)        // 坐标系重复创建
#define ERR_CRD_CREATE_FAILED             (0x0076)        // 坐标系创建失败
#define ERR_CRD_BUSY                      (0x0077)        // 坐标系正处于规划中
#define ERR_CRD_SMOOTH_COEF               (0x0078)        // 坐标系平滑系数设置错误
#define ERR_CRD_BUF_FULL                  (0x0079)        // 坐标系数据缓冲区满
#define ERR_CRD_BUF_DATA_PARA             (0x007a)        // 坐标系缓冲区指令参数错误
#define ERR_CRD_BUF_DATA_GEOM             (0x007b)        // 坐标系缓冲区指令几何构造错误
#define ERR_CRD_DOWNLOAD_DATA             (0x007c)        // 坐标系缓冲区指令下发底层失败
#define ERR_CRD_PAUSE_POS_CHANGE          (0x007d)        // 坐标系暂停后，位置被改变
#define ERR_FORBID_SVON                   (0x007e)        // 禁止使能报警
#define ERR_AX_CRD_CONFLICT               (0x007f)        // 单轴和插补运动冲突报警
#define ERR_DIS_ERR                       (0x0080)        // 坐标系输入线段弧长过短
#define ERR_CRD_EXT_AX_CONFLICT           (0x0081)        // 缓存同步事件设置轴号运动冲突
#define ERR_CRD_RUN_ERR					  (0x0082)		  // 坐标系运行报警错误，需要清除才能再次启动或者压入数据
#define ERR_CRD_ARC_DIR_PARA			  (0x0083)		  // 坐标系中圆弧运动的方向参数错误
#define ERR_CRD_SYNC_ERROR                (0x0084)        // 坐标系中同步运动无法完成
#define ERR_CRD_BUF_NOT_EPMTY			  (0x0085)		  // 坐标系参数设置未满足缓冲区数据为空要求
#define ERR_CRD_MODE_UNMACHED			  (0x0086)		  // 坐标系不匹配的插补模式，如：非用户规划模式
#define ERR_CRD_ALL_BUSY		     	  (0x0087)		  // 坐标系所有均繁忙
#define ERR_AX_NOT_EXIST		     	  (0x0088)		  // 单轴未参与任何一个插补坐标系
#define ERR_CRDIN_GEOM_ERR		     	  (0x0089)		  // 立即插补几何错误
#define ERR_CRD_INLINE                    (0x008a)        // 圆弧三点共线
#define ERR_CRD_NORMAL_TOO_SHORT          (0x008b)        // 圆弧输入的法向量太短
#define ERR_CRD_RADIUS_TOO_SHORT          (0x008c)        // 圆弧输入的半径太短
#define ERR_CRD_NORMAL_ANGLE              (0x008d)        // 圆弧输入的法向量角度错误
#define ERR_CRD_RADIUS_ERR                (0x008e)        // 特指圆弧半径输入模式下，半径小于首点到末点长度的一半
                                                          
#define ERR_LENGTH_OUTRANG                (0x0090)        // 设置的长度单位不在范围
#define ERR_SOFTLMT_POS_LESS_NEG          (0x0091)        // 软正限位设置比软负限位小错误
                                          
#define ERR_SAMPLE_INTERVAL               (0x0092)        // 数据采样配置间隔参数错误
#define ERR_SAMPLE_TRIG_TYPE              (0x0093)        // 数据采样配置触发采样类型参数错误
#define ERR_SAMPLE_DELAY_PARA             (0x0094)        // 数据采样配置启动延时参数错误
#define ERR_SAMPLE_DI_NO                  (0x0095)        // 数据采样配置DI触发端口错误
#define ERR_SAMPLE_DI_LEVEL               (0x0096)        // 数据采样配置DI触发电平错误

#define ERR_RESET_IS_PERMIT				  (0x0097)		  // 系统复位条件不足，检查是否还在使能

#define ERR_GANTRY_IS_USING				  (0x0098)		  // 龙门正在使用中
#define ERR_GANTRY_AXNO_CONFLICT          (0x009f)        // 配置龙门的轴号各组有冲突
#define ERR_GANTRY_ERRORLMT_LESS_ZERO	  (0x0099)        // 龙门主从轴误差极限值小于0
#define ERR_GANTRY_ERROR_OUT_LIMIT        (0x009a)        // 龙门主从轴误差大于设定极限
#define ERR_GANTRY_SLAVE_FORBID_PRF       (0x009b)        // 龙门从轴禁止规划
#define ERR_GANTRY_AX_EQU_DIFF			  (0x009c)		  // 龙门主从轴的当量不一致
#define ERR_GANTRY_AX_SV_STS_DIFF		  (0x009d)		  // 龙门主从轴的伺服状态不一致

#define ERR_ECAT_DA_VAL					  (0x009e)		  // ECAT总线的DA值设置范围超限

#define ERR_SYNCMOVE_NOT_EXIST            (0x00a0)        // 多轴系统未建立
#define ERR_SYNCMOVE_HAVE_EXISTED         (0x00a1)        // 多轴系统重复创建
#define ERR_SYNCMOVE_COUNT                (0x00a2)        // 多轴系统轴映射总数量不在范围内
#define ERR_SYNCMOVE_MAP                  (0x00a3)        // 多轴系统轴映射错误
#define ERR_SYNCMOVE_RATIO                (0x00a4)        // 多轴系统比率设定范围错误

#define ERR_SYNCMOVE_AXNO_REPEATED		  (0x00a5)		  // 多轴系统的映射轴有重复
#define ERR_SYNCMOVE_AXNO_OUTRANG		  (0x00a6)		  // 多轴系统的映射轴不在系统范围
#define ERR_AX_MULTI_SYNC_CONFLICT		  (0x00a7)		  // 多轴系统中的轴与单轴运动冲突
#define ERR_AX_IS_SET_MULTI_PRF			  (0x00a8)		  // 当前轴已设置为多轴或插补规划模式，不能再次设置
#define ERR_SYNCMOVE_PAUSE_POS_CHANGE	  (0x00a9)		  // 多轴系统暂停后，位置被改变
#define ERR_SYNCMOVE_ALARM				  (0x00aa)		  // 多轴系统有报警，不允许启动

#define ERR_HOMING_METHOD				  (0x00b0)		  // 回零方式错误
#define ERR_NO_ECAT_SV					  (0x00b1)		  // 非ECAT伺服轴
#define ERR_CST_GANTRY_FORBID			  (0x00b2)		  // 龙门控制，不允许伺服为转矩模式
#define ERR_CTRL_MODE				  	  (0x00b3)		  // 错误控制模式
#define ERR_TGTTRQ_OUTRANG                (0x00b4)        // 目标转矩设置超出范围
#define ERR_TRQ_CHANGE_TIME_LESS_ZERO	  (0x00b5)		  // 目标转矩的改变时间参数小于0
#define ERR_FORBID_POS_PRF_IN_CST		  (0x00b6)		  // 禁止在CST模式下进行位置规划
#define ERR_SV_MODE_PDO_NO_CFG			  (0x00b7)		  // ECAT伺服的模式PDO对象未配置
#define ERR_AX_IS_IN_HOMING				  (0x00b8)		  // 轴正处于回零状态
#define ERR_HW_ESTP_IS_TRIG				  (0x00b9)		  // 硬件急停信号触发
#define ERR_ACT_TORQ_PDO_NO_CFG			  (0x00ba)		  // ECAT伺服的实际转矩PDO对象未配置
#define ERR_TOUCH_PROBE_PDO_NO_CFG		  (0x00bb)		  // ECAT伺服的探针捕获相关PDO对象未配置
#define ERR_AX_MV_DIR_LIMT_TRIG			  (0x00bc)		  // 轴运动方向的限位触发
#define ERR_AX_FOLLOW_ERROR				  (0x00bd)		  // 轴跟随误差报警
#define ERR_AX_STATUS_ERROR				  (0x00be)		  // 轴状态错误，调用查询轴状态指令获取具体信息

#define ERR_SET_TIME			          (0x00c0)		  // 时间类参数设置错误
#define ERR_PVT_LIST			          (0x00c1)		  // PVT表参数设置错误
#define ERR_PVT_LOOP			          (0x00c2)		  // PVT循环次数参数设置错误
#define ERR_PVT_PARAM			          (0x00c3)		  // PVT数据参数输入错误
#define ERR_PVT_TABLE_BUSY			      (0x00c4)		  // PVT当前表被占用
#define ERR_PVT_TABLE_INVALID			  (0x00c5)		  // PVT当前表类型不匹配
#define ERR_PVT_TABLE_FULL		     	  (0x00c6)		  // PVT表FIFO数据满
#define ERR_PVT_TABLE_NULL		     	  (0x00c7)		  // PVT表数据为NULL
#define ERR_NOT_PVT_MODE				  (0x00c8)		  // 非PVT模式下，不能访问

#define ERR_FOL_SCALE		     	      (0x00d1)		  // FOL齿数输入有误
#define ERR_FOL_MASTER_NO		     	  (0x00d2)		  // FOL主轴轴号输入有误
#define ERR_FOL_LMT_POS                   (0x00d3)        // FOL从轴跟随位置有误
#define ERR_PTPC_MOVE_PARAM               (0x00d4)        // PTP缓存模式运动参数有误

#define ERR_EDVEL_OUTRANG                 (0x00d5)        // 结束速度有问题
#define ERR_FIFO_FULL                     (0x00d6)        // 队列数据满
#define ERR_FIFO_EMPTY					  (0x00d7)		  // 队列数据空
#define ERR_FIFO_STPOS_DIFF_CURPOS		  (0x00d8)		  // 队列起始位置与当前位置不一致
#define ERR_NOT_HOMING_MODE				  (0x00d9)		  // 非回零规划模式
#define ERR_GEAR_UPDATE_SCALE             (0x00da)        // 电子齿轮更新比例失败
#define ERR_FOL_SLOPE_LEES_ZERO			  (0x00db)		  // FOL的主轴离合区值小于0
#define ERR_PROBE_BIT_OUTRANGE            (0x00dc)        // 设置轴ECAT探针对应bit不在0~31中

#define ERR_ENC_FILTER_DEPTH			  (0x00e0)		  // 编码器滤波深度参数错误
#define ERR_ENC_FILTER_COEF				  (0x00e1)     	  // 编码器滤波系数参数错误
#define ERR_COMPARE_BUF_EMPTY			  (0x00e2)		  // 位置比较缓冲区数据为空
#define ERR_COMPARE_DATA_INVERSE		  (0x00e3)		  // 位置比较设置的比较数据出现反向
#define ERR_COMPARE_POS_TYPE			  (0x00e4)		  // 等距比较数据不允许在绝对位置比较类型下压入
#define ERR_COMPARE_DATA_TYPE			  (0x00e5)		  // 等距比较数据不允许在动态数据类型下压入
#define ERR_AX_HW_NOT_EXIST				  (0x00e6)		  // 设置的物理轴不存在
#define ERR_TGTPOS_OVER_SOFTLMT			  (0x00e7)		  // 目标位置超出了软限位范围
#define ERR_BACKLASH_VAL_NOT_ZERO         (0x00e8)        // 当前反向间隙补偿的值不为0，不能再次修改设置反向间隙值
#define ERR_WRONG_HOMING_MODE             (0x00e9)        // 调用错误回零完成指令
#define ERR_AX_COMPEN_BUSY                (0x00ea)        // 轴补偿进行中
#define ERR_MULTI_COMPARE_UNSUPPORTED     (0x00eb)        // 多维位置比较不支持错误

#define ERR_WAIT_TIME_PARA                (0x00f2)        // 等待事件类型参数错误
#define ERR_CYCMV_PARA_NOT_SET            (0x00f3)        // 周期运动的参数未设置，不能启动
#define ERR_NOT_CYCMV_MODE                (0x00f4)        // 非周期模式下操作
#define ERR_HOMING_DIR_PARA               (0x00f5)        // 回零方向参数错误
#define ERR_HOMING_LEVEL_PARA             (0x00f6)        // 回零触发沿参数错误
#define ERR_CSV_PRF_NOT_START             (0x00f7)        // CSV规划没有启动
#define ERR_CSV_IN_PRFING                 (0x00f8)        // CSV在规划中，不允许切换到CSP下
#define ERR_NO_TERMINAL_CFG               (0x00f9)        // 端子板没有配置，不允许访问
#define ERR_OFFSET_PARA                   (0x00fa)        // 偏置参数不在范围
#define ERR_PTP_NOT_PAUSE                 (0x00fb)        // PTP无暂停动作
#define ERR_PTP_STOPPED                   (0x00fc)        // PTP运动已停止，不能调用Pause指令

#define ERR_VERSION_TOO_LOW				  (0x0100)		  // dll库版本比控制器版本低
#define ERR_CST_HANDWHEEL_FORBID		  (0x0101)		  // 手轮控制，不允许伺服为转矩模式
#define ERR_GANTRY_NOT_SETUP			  (0x0102)		  // 龙门关系尚未建立
#define ERR_WATCHDOG_TIME_LESS_ZERO		  (0x0103)		  // 看门狗设置时间小于0
#define ERR_MULTI_PTP_AXNUM				  (0x0104)		  // 多轴同时启动PTP的个数小于1
#define ERR_MULTI_JOG_AXNUM				  (0x0105)		  // 多轴同时启动JOG的个数小于1
#define ERR_WATCHDOG_NOT_OPENED           (0x0106)        // 看门狗未开启
#define ERR_WRONG_MODE_OPERATIONG         (0x0107)        // 错误模式下操作
#define ERR_NO_SYS_INT_SIGNAL             (0x0108)        // 系统中断没有起来，请检查总线是否处于OP状态
#define ERR_GET_SYS_HW_RES                (0x0109)        // 获取系统硬件资源失败：如端子板资源或ECAT资源

#define ERR_TORQ_SLP_PDO_NO_CFG		  	  (0x0110)		  // ECAT伺服的转矩斜坡PDO对象未配置
#define ERR_TGT_TORQ_PDO_NO_CFG		  	  (0x0111)		  // ECAT伺服的目标转矩PDO对象未配置
#define ERR_PRESS_CTRL_PDO_NO_CFG		  (0x0112)		  // ECAT伺服中的压合控制对象未配置（SV510）
#define ERR_PRESS_STS_PDO_NO_CFG		  (0x0113)		  // ECAT伺服中的压合状态对象未配置（SV510）
#define ERR_PRESS_VAL_PDO_NO_CFG		  (0x0114)		  // ECAT伺服中的压力反馈对象未配置（SV510）
#define ERR_AI1_VOLT_PDO_NO_CFG		  	  (0x0115)		  // ECAT伺服中的电压1输入对象未配置（SV510）
#define ERR_AI2_VOLT_PDO_NO_CFG		  	  (0x0116)		  // ECAT伺服中的电压2输入对象未配置（SV510）
#define ERR_NO_ECAT_PT                    (0x0117)        // ECAT未配置PT模块
#define ERR_PRESS_SETVAL_PDO_NO_CFG		  (0x0118)		  // ECAT伺服中的目标压合力设置对象未配置（SV510）
#define ERR_MAXVEL_PDO_NO_CFG             (0x0119)        // ECAT伺服中的最大速度限制设置对象未配置
#define ERR_POS_TORQ_LMT_PDO_NO_CFG       (0x011a)        // ECAT伺服中的正向转矩限制设置对象未配置
#define ERR_NEG_TORQ_LMT_PDO_NO_CFG       (0x011b)        // ECAT伺服中的负向转矩限制设置对象未配置
#define ERR_MAX_TORQ_LMT_PDO_NO_CFG       (0x011c)        // ECAT伺服中的最大转矩限制设置对象未配置
#define ERR_MPG_NOT_CFG                   (0x011d)        // ECAT的手轮模块没有配置对象
#define ERR_MPG_NOT_ENABLE                (0x011e)        // ECAT的手轮模块没有使能

#define ERR_EVENT_IO_INTYPE				  (0x0120)		  // IO事件的输入类型错误
#define ERR_EVENT_IO_INPORT				  (0x0121)		  // IO事件的输入端口错误
#define ERR_EVENT_IO_IN_INVERT			  (0x0122)		  // IO事件的输入取反值错误
#define ERR_EVENT_IO_OPERTOR			  (0x0123)		  // IO事件的输入操作符错误
#define ERR_EVENT_IO_OUTTYPE			  (0x0124)		  // IO事件的输出类型错误
#define ERR_EVENT_IO_OUT_INVERT			  (0x0125)		  // IO事件的输出取反值错误
#define ERR_EVENT_IO_OUTPORT			  (0x0126)		  // IO事件的输出端口号错误
#define ERR_EVENT_IO_TRIG_TYPE			  (0x0127)		  // IO事件的触发类型错误
#define ERR_EVENT_IO_DELAY				  (0x0128)		  // IO事件的延时值小于0
#define ERR_EVENT_IO_ACTIVE_TYPE		  (0x0129)		  // IO事件的激活类型错误
#define ERR_EVENT_IO_PARA_NO_SET          (0x012a)        // IO事件的参数没有设置，不能使能

#define ERR_EVENT_DIMT_INTYPE			  (0x0130)		  // DI触发运动事件的输入类型错误
#define ERR_EVENT_DIMT_INPORT			  (0x0131)		  // DI触发运动事件的输入端口错误
#define ERR_EVENT_DIMT_AXNO				  (0x0132)		  // DI触发运动事件的触发轴号超出范围
#define ERR_EVENT_DIMT_DELAY			  (0x0133)		  // DI触发运动事件的延时值小于0
#define ERR_EVENT_DIMT_TGTVEL			  (0x0134)		  // DI触发运动事件设置的目标速度小于0
#define ERR_EVENT_DIMT_ACC				  (0x0135)		  // DI触发运动事件设置的加速度小于0
#define ERR_EVENT_DIMT_DEC				  (0x0136)		  // DI触发运动事件设置的减速度小于0
#define ERR_EVENT_DIMT_TGTPOS			  (0x0137)		  // DI触发运动事件设置的目标位置超限
#define ERR_EVENT_DIMT_INVERTBIT		  (0x0138)		  // DI触发运动事件设置的取反标志非0和1
#define ERR_EVENT_DIMT_MOTION_TYPE		  (0x0139)		  // DI触发运动事件设置的运动类型错误
#define ERR_EVENT_DIMT_TRIGGER_TYPE		  (0x013a)		  // DI触发运动事件设置的触发类型错误
#define ERR_EVENT_DIMT_PARA_NO_SET        (0x013b)        // DI触发运动事件的参数没有设置，不能使能

#define ERR_EVENT_CMPOUT_INTYPE			  (0x0140)		  // 比较位置输出事件的输入类型错误
#define ERR_EVENT_CMPOUT_PORT			  (0x0141)		  // 比较位置输出事件的输出源端口号超出范围
#define ERR_EVENT_CMPOUT_OUTPORT		  (0x0142)		  // 比较位置输出事件的输出DO端口超出范围
#define ERR_EVENT_CMPOUT_OUTTYPE		  (0x0143)		  // 比较位置输出事件的输出类型错误
#define ERR_EVENT_CMPOUT_OUTVAL			  (0x0144)		  // 比较位置输出事件的输出值错误
#define ERR_EVENT_CMPOUT_CMPTYPE		  (0x0145)		  // 比较位置输出事件的比较类型参数错误
#define ERR_EVENT_CMPOUT_PLSWIDTH		  (0x0146)		  // 比较位置输出事件的脉冲输出脉宽小于0
#define ERR_EVENT_CMPOUT_CMPPOS			  (0x0147)		  // 比较位置输出事件的比较位置超出范围
#define ERR_EVENT_VIRTUAL_IO_VAL		  (0x0148)		  // 事件虚拟IO的值设置错误
#define ERR_EVENT_VIRTUAL_IO_DISABLE	  (0x0149)		  // 事件虚拟被禁用，不能作为输出使用
#define ERR_EVENT_CMPOUT_PARA_NO_SET      (0x014a)        // 比较位置输出事件的参数没有设置，不能使能

#define ERR_PSO_DIMENS                    (0x0150)        // PSO的维数参数错误
#define ERR_PSO_PULSE_WIDTH               (0x0151)        // PSO的脉冲输出宽度错误
#define ERR_PSO_SRC_NO                    (0x0152)        // PSO的位置源序号错误
#define ERR_PSO_SRC_TYPE                  (0x0153)        // PSO的位置源类型错误
#define ERR_PSO_SYN_POS                   (0x0154)        // PSO的同步比较输出间距错误

#define ERR_SCREWCMP_DIR                  (0x0200)        // 螺距补偿方向设置错误
#define ERR_SCREWCMP_INTERVAL             (0x0201)        // 螺距补偿间隔为负
#define ERR_SCREWCMP_TABLE_NUM            (0x0202)        // 螺距补偿的数据表数量超限
#define ERR_SCREWCMP_ST_BIGGER_END	      (0x0203)		  // 螺距补偿的正向补偿起始位置大于终止位置
#define ERR_SCREWCMP_CALC_INTERVAL	      (0x0204)		  // 螺距补偿设置的起始和终止位置以及点数计算的间隔距离非整数

#define ERR_BANDPT_COUNT                  (0x0210)        // 绑定PT轴映射总数量不在范围内
#define ERR_BANDPT_AXNO_OUTRANG           (0x0211)        // 绑定PT轴超过范围
#define ERR_BANDPT_AXNO_REPEATED          (0x0212)        // 绑定PT轴重复
#define ERR_AX_IS_SET_BANDPT_PRF          (0x0213)        // 轴已经设成绑定PT模式
#define ERR_BANDPT_NOT_EXIST              (0x0214)        // 绑定PT系统轴没有建立
#define ERR_BANDPT_BEYOND_MAXCNT          (0x0215)        // 绑定PT输入数据量超过最大限制
#define ERR_BANDPT_ERR                    (0x0216)        // 绑定PT处于错误状态

//电子凸轮错误
#define ERR_ECAM_TABLE_FULL               (0x0250)        // 电子凸轮数据表满
#define ERR_ECAM_POS                      (0x0251)        // 凸轮位置错误
#define ERR_ECAM_TABLE_BUSY               (0x0252)        // 凸轮表被占用
#define ERR_ECAM_TABLE_NULL               (0x0253)        // 凸轮表无数据
#define ERR_ECAM_EVENT_MASTER_POS         (0x0254)        // 凸轮表事件输入主轴位置错误
#define ERR_ECAM_LIST_TABLE               (0x0255)        // 凸轮表list中的表号有误
#define ERR_ECAM_LIST_FULL                (0x0256)        // 凸轮表list表号已放满
#define ERR_ECAM_MASTER_SLAVE_PARAM       (0x0257)        // 凸轮表设置参数主从属性参数设置错误
#define ERR_ECAM_TABLE_PARAM              (0x0258)        // 凸轮表设置参数错误
#define ERR_ECAM_START_CONDITION          (0x0259)        // 凸轮启动条件参数设置错误
#define ERR_ECAM_NOT_START                (0x025a)        // 凸轮还未启动
#define ERR_ECAM_ALARM                    (0x025b)        // 凸轮报警
#define ERR_ECAM_LIST_TABLE_NULL          (0x025c)        // 凸轮list无表
#define ERR_ECAM_LIST_BUSY                (0x025d)        // 凸轮list被占用
#define ERR_ECAM_LIST_TABLE_DATA_FORMAT   (0x025e)        // 凸轮list模式中表格式错误


//非标错误
#define ERR_READGCODE_DU                  (0x7000)        // 重复检测
#define ERR_READGCODE_REACH_MAXLINE       (0x7001)        // 文件行数过多
#define ERR_READGCODE_NO_FILE             (0x7002)        // 文件不存在
#define ERR_ESTIMATE_INACTIVE             (0x7003)        // 时间估算未激活

#define ERR_DEVICE                        (0x8000)        // 错误参数输入
#define ERR_INPUT                         (0x8001)        // 错误指针参数输入
#define ERR_CARDNO                        (0x8002)        // 错误卡号
#define ERR_MEM1ALLOC                     (0x8003)        // 分配全局内存1错误
#define ERR_MEM2ALLOC                     (0x8004)        // 分配全局内存2错误
#define ERR_MEM3ALLOC                     (0x8005)        // 分配全局内存3错误
#define ERR_OPENDEV                       (0x8006)        // 打开PCI设备错误
#define ERR_GETDEVATTR                    (0x8007)        // 获取PCI设备属性错误
#define ERR_READ_LEN                      (0x8008)        // 读取数据长度错误
#define ERR_READ_CHECKSUM                 (0x8009)        // 读取校验和错误 
#define ERR_WRITE_BLOCK                   (0x800A)        // 写块数据失败 
#define ERR_READ_BLOCK                    (0x800B)        // 读块数据失败 
#define ERR_BLOCK_FIFO_FULL               (0x800C)        // 块数据FIFO已经满
#define ERR_OPEN_CHANNEL                  (0x800D)        // 打开数据通道失败
#define ERR_CLOSE_CHANNEL                 (0x800E)        // 关闭数据通道错误
#define ERR_DSP_BUSY                      (0x800F)        // DSP一直处于忙状态 
#define ERR_LOCK_ERROR                    (0x8010)        // 获取锁资源失败
#define ERR_WAIT_TIMEOUT                  (0x8011)        // 等待数据超时
#define ERR_EXECUTE                       (0x8012)        // 执行命令错误
#define ERR_PARAMETER                     (0x8013)        // 传入参数错误
#define ERR_OPEN_XML                      (0x8014)        // 打开XML文件失败
#define ERR_CREATE_XML                    (0x8015)        // 创建XML文件失败
#define ERR_MALLOC_MEM                    (0x8016)        // 分配文件内存失败
#define ERR_UNKOWN_AXTYPE                 (0x8017)        // 不能识别的轴类型
#define ERR_CARD_HANDLE                   (0x8018)        // card handle 错误
#define ERR_PARSER_XML                    (0x8019)        // 解析系统参数配置错误
#define ERR_CHECK_USER_CODE               (0x801A)        // 用户密码校验错误
#define ERR_NOT_ECAT_AX                   (0x801B)        // 非ECAT轴
#define ERR_CARD_NUM_OUTRANG              (0x801C)        // 扫描板卡数量超限 
#define ERR_PCI2ARMWRDATA				  (0x801D)        // PCI向ARM侧写数据异常
#define ERR_PCI2ARMRDDATA				  (0x801E)        // PCI向ARM侧读数据异常
#define ERR_CARD_BUSY					  (0x801F)        // 板卡正上次初始化尚未结束，请稍等 
#define ERR_OPEN_CARD_ERR				  (0x8020)		  // 开卡创建线程错误
                                                          
#define ERR_ARM_ECAT_SHM                  (0x9000)        // 共享内存错误
#define ERR_ARM_ECAT_LINK                 (0x9001)        // EtherCat连接错误
#define ERR_ARM_ECAT_INIT_STEP0           (0x9002)        // EtherCat初始化阶段STEP0错误
#define ERR_ARM_SCAN_MODULE               (0x9003)        // EtherCat初始化阶段扫描MODULE错误
#define ERR_ARM_ECAT_INIT_STEP2           (0x9004)        // EtherCat初始化阶段STEP2错误
#define ERR_ARM_ECAT_INIT_STEP3           (0x9005)        // EtherCat初始化阶段STEP3错误
#define ERR_ARM_INIT_SYNC_DSP             (0x9006)        // EtherCat配置信息同步到DSP错误
#define ERR_ARM_DEL_MASTER                (0x9007)        // 删除EtherCat主站状态机错误
#define ERR_ARM_SCAN_SLAVES               (0x9008)        // 扫描从站设备状态发生错误
#define ERR_ARM_ECAT_SHM_ADDR             (0x9009)        // 共享内存地址非法
#define ERR_ARM_INUPUT_PARA               (0x900A)        // 输入参数错误
#define ERR_ARM_ECAT_ENTER_HOME_MODE      (0x900B)        // EtherCat轴进入回零模式错误
#define ERR_ARM_ECAT_SET_HOME_PAR         (0x900C)        // 设置EtherCat轴回零参数错误
#define ERR_ARM_ECAT_START_HOME           (0x900D)        // 设置EtherCat轴开始回零错误
#define ERR_ARM_ECAT_STOP_HOME            (0x900E)        // 停止EtherCat轴回零错误 
#define ERR_ARM_ECAT_GET_HOME_STATUS      (0x900F)        // 获取EtherCat轴回零状态错误 
#define ERR_ARM_ECAT_SET_HOME_FINISH      (0x9010)        // 设置完成EtherCat轴回零错误 
#define ERR_ARM_ECAT_EXIT_HOME_MODE       (0x9011)        // 退出EtherCat轴回零模式错误 
#define ERR_ARM_FILE_BEYOND_MAX           (0x9012)        // 文件太大，超出buffer长度 
#define ERR_ARM_FILE_OPEN                 (0x9013)        // 打开文件失败 
#define ERR_ARM_FILE_MMAP                 (0x9014)        // 文件映射失败 
#define ERR_ARM_FILE_MUNMMAP              (0x9015)        // 文件反映射失败 
#define ERR_ARM_GET_ECAT_RESOUCE          (0x9016)        // 获取EtherCat资源失败 
#define ERR_ARM_SDO_UPLOAD                (0x9017)        // 上传EtherCat SDO失败  
#define ERR_ARM_SDO_DOWNLOAD              (0x9018)        // 下载EtherCat SDO失败 
#define ERR_ARM_SEND_MSG                  (0x9019)        // 发送消息失败 
#define ERR_ARM_EXE_FUN                   (0x901a)      	// 执行调用函数异常
#define ERR_ARM_CK_DEV_XML                (0x901b)      	//校验设备配置XML异常
#define ERR_ARM_NOT_EXIST_STATION		  (0x901c)        // 不存在该站点
#define ERR_ARM_SUBBOARD_LINK       	  (0x901d)        // 端子板连接错误
#define ERR_ARM_CMP_ENCRY_CHIP			  (0x901e)		  // 板卡权限验证不通过
#define NO_ENCRY_CHIP					  (0x901f)		  // 板卡没有加密芯片
#define ERR_EEPROM_INFO					  (0x9020)		  // 板卡上板载信息有误

