1、对串口获取返回值

2、新增获取批量点
3、新增测试用例
4、对对端设备进行调试
This commit is contained in:
zhengxuan.zhang
2022-11-25 17:53:16 +08:00
parent d73ac43da5
commit 4e11acde01
11 changed files with 816 additions and 486 deletions
+186 -102
View File
@@ -79,7 +79,8 @@ enum HSI_STATUS
HSI_STATUS_VP_TIMEOUT = 350,
HSI_STATUS_VP_IMAGEPROCESS_FAIL,
HSI_ACS_OK=400,// ACS命令成功
HSI_ACS_OK=400,
// ACS命令成功
HSI_ACS_ERROR
};
@@ -107,43 +108,74 @@ enum HSI_EVENT_FUNCTION_ID // EventData
{
// Send Receive
// V4.2 & V4.3 +
HSI_EVENT_DONE = 0,// N/A N/A
HSI_EVENT_TAKE_HIT = 1,// N/A N/A
HSI_EVENT_ERASE_HIT = 2,// N/A N/A
HSI_EVENT_TIME_CRITICAL = 3,// "ON", or "OFF" N/A
HSI_EVENT_ZOOM_IN = 4,// "MAX", "COARSE", or "FINE" N/A
HSI_EVENT_ZOOM_OUT = 5,// "MAX", "COARSE", or "FINE" N/A
HSI_EVENT_REFRESH_LIVE_VIEW = 6,// N/A N/A
HSI_EVENT_UPDATE_READOUTS = 7,// "AxisFlags,%lf{x},%lf{y},%lf{z},%lf{r}" N/A
HSI_EVENT_READ_MC_POSITION = 8,// "AxisFlags" "AxisFlags,%lf{x},%lf{y},%lf{z},%lf{r}"
HSI_EVENT_MOVE_MC_POSITION = 9,// "AxisFlags,%lf{x},%lf{y},%lf{z},%lf{r},%lf{speed},%1d{bWait}" N/A
HSI_EVENT_CONVERT_MC_TO_GLOBAL = 10,// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_UPDATE_STATUS_MESSAGE = 11,// N/A N/A
HSI_EVENT_OPENFILE_DLG = 12,// N/A "FileName"
HSI_EVENT_DISPLAY_YESNO_MESSAGE = 13,// N/A N/A
HSI_EVENT_DISPLAY_OKCANCEL_MESSAGE = 14,// N/A N/A
HSI_EVENT_DISPLAY_OK_MESSAGE = 15,// N/A N/A
HSI_EVENT_DONE = 0,
// N/A N/A
HSI_EVENT_TAKE_HIT = 1,
// N/A N/A
HSI_EVENT_ERASE_HIT = 2,
// N/A N/A
HSI_EVENT_TIME_CRITICAL = 3,
// "ON", or "OFF" N/A
HSI_EVENT_ZOOM_IN = 4,
// "MAX", "COARSE", or "FINE" N/A
HSI_EVENT_ZOOM_OUT = 5,
// "MAX", "COARSE", or "FINE" N/A
HSI_EVENT_REFRESH_LIVE_VIEW = 6,
// N/A N/A
HSI_EVENT_UPDATE_READOUTS = 7,
// "AxisFlags,%lf{x},%lf{y},%lf{z},%lf{r}" N/A
HSI_EVENT_READ_MC_POSITION = 8,
// "AxisFlags" "AxisFlags,%lf{x},%lf{y},%lf{z},%lf{r}"
HSI_EVENT_MOVE_MC_POSITION = 9,
// "AxisFlags,%lf{x},%lf{y},%lf{z},%lf{r},%lf{speed},%1d{bWait}" N/A
HSI_EVENT_CONVERT_MC_TO_GLOBAL = 10,
// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_UPDATE_STATUS_MESSAGE = 11,
// N/A N/A
HSI_EVENT_OPENFILE_DLG = 12,
// N/A "FileName"
HSI_EVENT_DISPLAY_YESNO_MESSAGE = 13,
// N/A N/A
HSI_EVENT_DISPLAY_OKCANCEL_MESSAGE = 14,
// N/A N/A
HSI_EVENT_DISPLAY_OK_MESSAGE = 15,
// N/A N/A
// V4.3 + Only
HSI_EVENT_DEBUG_LOG = 20,// "%s" N/A
HSI_EVENT_MOVE_MC_POSITION_AND_SETTLE = 21,// "AxisFlags,%lf{x},%lf{y},%lf{z},%lf{r},%lf{speed}" N/A
HSI_EVENT_CONVERT_GLOBAL_TO_MM = 22,// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_CONVERT_ROT_TO_TABLE_POINT = 23,// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_CONVERT_ROT_OUT_TABLE_POINT = 24,// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_CONVERT_ROT_TO_TABLE_VECTOR = 25,// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_CONVERT_ROT_OUT_TABLE_VECTOR = 26,// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_DEBUG_LOG = 20,
// "%s" N/A
HSI_EVENT_MOVE_MC_POSITION_AND_SETTLE = 21,
// "AxisFlags,%lf{x},%lf{y},%lf{z},%lf{r},%lf{speed}" N/A
HSI_EVENT_CONVERT_GLOBAL_TO_MM = 22,
// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_CONVERT_ROT_TO_TABLE_POINT = 23,
// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_CONVERT_ROT_OUT_TABLE_POINT = 24,
// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_CONVERT_ROT_TO_TABLE_VECTOR = 25,
// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_CONVERT_ROT_OUT_TABLE_VECTOR = 26,
// "%lf{x},%lf{y},%lf{z}" "%lf{x},%lf{y},%lf{z}"
HSI_EVENT_ILLUMINATION_REFRESH = 27,
HSI_EVENT_ILLUMINATION_LOCK = 28,
HSI_EVENT_ILLUMINATION_STORE_SET = 29,
HSI_EVENT_ILLUMINATION_RESTORE_SET = 30,
HSI_EVENT_ILLUMINATION_DECREASE_ACTIVE = 31,// "%d"
HSI_EVENT_ILLUMINATION_INCREASE_ACTIVE = 32,// "%d"
HSI_EVENT_ILLUMINATION_DECREASE_ALL = 33,// "%d"
HSI_EVENT_ILLUMINATION_INCREASE_ALL = 34,// "%d"
HSI_EVENT_ILLUMINATION_SELECT_LAMP = 35,// "%d"
HSI_EVENT_ILLUMINATION_SET_LAMP_INTENSITY = 36,// "%d"
HSI_EVENT_ILLUMINATION_GET_LAMP_INTENSITY = 37,// "%d"
HSI_EVENT_ILLUMINATION_SET_LAMP_CALIBRATION_OVERRIDE = 38,// "%d"
HSI_EVENT_ILLUMINATION_DECREASE_ACTIVE = 31,
// "%d"
HSI_EVENT_ILLUMINATION_INCREASE_ACTIVE = 32,
// "%d"
HSI_EVENT_ILLUMINATION_DECREASE_ALL = 33,
// "%d"
HSI_EVENT_ILLUMINATION_INCREASE_ALL = 34,
// "%d"
HSI_EVENT_ILLUMINATION_SELECT_LAMP = 35,
// "%d"
HSI_EVENT_ILLUMINATION_SET_LAMP_INTENSITY = 36,
// "%d"
HSI_EVENT_ILLUMINATION_GET_LAMP_INTENSITY = 37,
// "%d"
HSI_EVENT_ILLUMINATION_SET_LAMP_CALIBRATION_OVERRIDE = 38,
// "%d"
HSI_EVENT_ILLUMINATION_NEXT_RING = 39,
HSI_EVENT_ILLUMINATION_PREV_RING = 40,
HSI_EVENT_ILLUMINATION_NEXT_SECTOR = 41,
@@ -154,31 +186,49 @@ enum HSI_EVENT_FUNCTION_ID // EventData
HSI_EVENT_ILLUMINATION_ALLOFF = 46,
HSI_EVENT_ILLUMINATION_ALLON = 47,
HSI_EVENT_ILLUMINATION_UNLOCK = 48,
HSI_EVENT_IS_PROGRAMMING_MODE = 49,// 1/0
HSI_EVENT_IS_PORTLOCK_DCC = 50,// 1/0
HSI_EVENT_IS_ROTAB_ENABLED = 51,// 1/0
HSI_EVENT_IS_TIME_CRITICAL = 52, // 1/0
HSI_EVENT_IS_PROGRAMMING_MODE = 49,
// 1/0
HSI_EVENT_IS_PORTLOCK_DCC = 50,
// 1/0
HSI_EVENT_IS_ROTAB_ENABLED = 51,
// 1/0
HSI_EVENT_IS_TIME_CRITICAL = 52,
// 1/0
HSI_EVENT_CONVERT_MM_TO_GLOBAL = 53,
HSI_EVENT_CONVERT_GLOBAL_TO_MC = 54,
HSI_EVENT_LASER_FOCUS_ENABLE = 55,// "%d" 0 = not available, 1 = available
HSI_EVENT_MOVE_POINT = 56,// N/A N/A
HSI_EVENT_LASER_FOCUS_ENABLE = 55,
// "%d" 0 = not available, 1 = available
HSI_EVENT_MOVE_POINT = 56,
// N/A N/A
HSI_EVENT_MAG_CHANGED = 57,
HSI_EVENT_ILLUMINATION_SET_LAMP_INTENSITY_IN_MACHINE_LEVELx100 = 58,// "%d" //PR251359-- Instructed to "Please focus on slide" but it's rather unhelpfully turned the lights off for us.
HSI_EVENT_DCC_SCAN_POINTS_AVAILABLE = 59,// "%d" = more to come, 1 = last set N/A
HSI_EVENT_ILLUMINATION_IS_ALL_OFF = 60,// 1/0 //PR253777-- Sensilight does not work if the target has 'ALL OFF' for illum setting--4/16/2008
HSI_EVENT_ILLUMINATION_DECREASE_ALL_NONZERO = 61,// Sensilight command that wont change a lamp currently set to zero
HSI_EVENT_ILLUMINATION_INCREASE_ALL_NONZERO = 62,// Sensilight command that wont change a lamp currently set to zero22
HSI_EVENT_LP_QUALITY = 63,// "%d" 0-100%
HSI_EVENT_TP_QUALITY = 64,// "%d" 0-100%
HSI_EVENT_VP_QUALITY = 65,// "%d" 0-100%
HSI_EVENT_FLYMODE_MOVE_COMPLETE = 66,// A queued flymode move has completed
HSI_EVENT_PENDANT_SPEED_PERCENT = 67,// 108336 HMV : Add calls to HSI.H for Speed
HSI_EVENT_PENDANT_AXES_SELECTED = 68,// 108335 HMV : Need to add calls to the HSI.H for Stacked Rotary
HSI_EVENT_ILLUMINATION_SET_LAMP_INTENSITY_IN_MACHINE_LEVELx100 = 58,
// "%d" //PR251359-- Instructed to "Please focus on slide" but it's rather unhelpfully turned the lights off for us.
HSI_EVENT_DCC_SCAN_POINTS_AVAILABLE = 59,
// "%d" = more to come, 1 = last set N/A
HSI_EVENT_ILLUMINATION_IS_ALL_OFF = 60,
// 1/0 //PR253777-- Sensilight does not work if the target has 'ALL OFF' for illum setting--4/16/2008
HSI_EVENT_ILLUMINATION_DECREASE_ALL_NONZERO = 61,
// Sensilight command that wont change a lamp currently set to zero
HSI_EVENT_ILLUMINATION_INCREASE_ALL_NONZERO = 62,
// Sensilight command that wont change a lamp currently set to zero22
HSI_EVENT_LP_QUALITY = 63,
// "%d" 0-100%
HSI_EVENT_TP_QUALITY = 64,
// "%d" 0-100%
HSI_EVENT_VP_QUALITY = 65,
// "%d" 0-100%
HSI_EVENT_FLYMODE_MOVE_COMPLETE = 66,
// A queued flymode move has completed
HSI_EVENT_PENDANT_SPEED_PERCENT = 67,
// 108336 HMV : Add calls to HSI.H for Speed
HSI_EVENT_PENDANT_AXES_SELECTED = 68,
// 108335 HMV : Need to add calls to the HSI.H for Stacked Rotary
HSI_EVENT_MOTION = 500,
HSI_EVENT_MOTION_DCC_HOME = 501,
HSI_EVENT_MOTION_FOCUS_HOME = 502,
HSI_EVENT_MOTION_EMERGENT_STOP = 503,
HSI_EVENT_SHUTDOWN_ = 999,// N/A N/A
HSI_EVENT_SHUTDOWN_ = 999,
// N/A N/A
HSI_EVENT_MOTION_DRIVER_ALARM = 1000,
HSI_EVENT_MOTION_PROBE = 1001,
HSI_EVENT_MOTION_DISPENSER = 1002
@@ -269,21 +319,36 @@ enum HSI_MOTION_TYPE
enum HSI_MOTION_AXIS_TYPE
{
HSI_MOTION_AXIS_X = 0x0001,// This is the default "Sensor level" X Axis - use on single X axis machines
HSI_MOTION_AXIS_Y = 0x0002,// This is the default "Sensor level" Y Axis - use on single Y axis machines
HSI_MOTION_AXIS_Z = 0x0004,// This is the default "Sensor level" Z Axis - use on single Z axis machines
HSI_MOTION_AXIS_R = 0x0008,// This is the default "Sensor level" R Axis - use on single R axis machines
HSI_MOTION_AXIS_X1 = 0x0010,// This is the 1st X Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Y1 = 0x0020,// This is the 1st Y Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Z1 = 0x0040,// This is the 1st Z Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_R1 = 0x0080,// This is the 1st R Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_X2 = 0x0100,// This is the 2nd X Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Y2 = 0x0200,// This is the 2nd Y Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Z2 = 0x0400,// This is the 2nd Z Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_R2 = 0x0800,// This is the 2nd R Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_X3 = 0x1000,// This is the 3rd X Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Y3 = 0x2000,// This is the 3rd Y Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Z3 = 0x4000,// This is the 3rd Z Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_X = 0x0001,
// This is the default "Sensor level" X Axis - use on single X axis machines
HSI_MOTION_AXIS_Y = 0x0002,
// This is the default "Sensor level" Y Axis - use on single Y axis machines
HSI_MOTION_AXIS_Z = 0x0004,
// This is the default "Sensor level" Z Axis - use on single Z axis machines
HSI_MOTION_AXIS_R = 0x0008,
// This is the default "Sensor level" R Axis - use on single R axis machines
HSI_MOTION_AXIS_X1 = 0x0010,
// This is the 1st X Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Y1 = 0x0020,
// This is the 1st Y Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Z1 = 0x0040,
// This is the 1st Z Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_R1 = 0x0080,
// This is the 1st R Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_X2 = 0x0100,
// This is the 2nd X Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Y2 = 0x0200,
// This is the 2nd Y Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Z2 = 0x0400,
// This is the 2nd Z Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_R2 = 0x0800,
// This is the 2nd R Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_X3 = 0x1000,
// This is the 3rd X Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Y3 = 0x2000,
// This is the 3rd Y Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_Z3 = 0x4000,
// This is the 3rd Z Axis - use on multiple axis machines when specific axis needed
HSI_MOTION_AXIS_R3 = 0x8000 // This is the 3rd R Axis - use on multiple axis machines when specific axis needed
};
@@ -291,21 +356,28 @@ enum HSI_MOTION_IO_TYPE
{
HSI_MOTION_INPUT = 0x0001,
HSI_MOTION_INPUT_LIMIT_SWITCH,
HSI_MOTION_INPUT_CH1,//固高、众为兴、EF1输入
HSI_MOTION_INPUT_CH1,
//固高、众为兴、EF1输入
HSI_MOTION_INPUT_CH2,
HSI_MOTION_INPUT_CH3,//串口控制器输入
HSI_MOTION_INPUT_CH4,//众为兴运动控制卡测试输入
HSI_MOTION_INPUT_ALARM,//驱动报警
HSI_MOTION_INPUT_CH3,
//串口控制器输入
HSI_MOTION_INPUT_CH4,
//众为兴运动控制卡测试输入
HSI_MOTION_INPUT_ALARM,
//驱动报警
HSI_MOTION_OUTPUT = 0x0100,
HSI_MOTION_OUTPUT_LASER_PEN,
HSI_MOTION_OUTPUT_CH1,//固高、众为兴、EF1输出
HSI_MOTION_OUTPUT_CH1,
//固高、众为兴、EF1输出
HSI_MOTION_OUTPUT_CH2,
HSI_MOTION_OUTPUT_CH3,//串口控制器输出
HSI_MOTION_OUTPUT_CH3,
//串口控制器输出
HSI_MOTION_OUTPUT_CH4 //众为兴运动控制卡测试输出
};
//const UINT HSI_MOTION_AXIS_ALL = HSI_MOTION_AXIS_X | HSI_MOTION_AXIS_Y | HSI_MOTION_AXIS_Z;
const UINT HSI_MOTION_AXIS_ALL = ACSC_AXIS_0 | ACSC_AXIS_1 | ACSC_AXIS_4;
enum HSI_MOTION_MOVE_TYPE
{
HSI_MOTION_MOVE_WAIT = 1,
@@ -329,11 +401,14 @@ enum HSI_SCAN_MOTION_TYPE
{
HSI_SCAN_MOTION_LINEAR = 1,
HSI_SCAN_MOTION_CIRCULAR,
HSI_SCAN_MOTION_SPEC_LOCA = 100,//EF1
HSI_SCAN_MOTION_SPEC_LOCA = 100,
//EF1
HSI_SCAN_MOTION_EQ_DIS,
HSI_SCAN_MOTION_EQ_DIS_II,
HSI_SCAN_MOTION_LINEAR_TEST,//测试使用
HSI_SCAN_MOTION_EQ_TEST,//测试使用
HSI_SCAN_MOTION_LINEAR_TEST,
//测试使用
HSI_SCAN_MOTION_EQ_TEST,
//测试使用
HSI_SCAN_MOTION_MANUAL_TEST //测试使用
};
@@ -372,42 +447,51 @@ HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_DIO(UINT IOChannel, UINT& _Status);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_DIO(UINT IOChannel, UINT _Status);
//扫描相关函数
HSI_API HSI_STATUS WINAPI HSI_MOTION_DCC_SCAN_SET_DATA(UINT AxisTypes, HSI_SCAN_MOTION_TYPE eType, UINT lTrigNumber, double* dTrigDis);//扫描配置
HSI_API HSI_STATUS WINAPI HSI_MOTION_DCC_SCAN_START();//开始扫描
HSI_API HSI_STATUS WINAPI HSI_MOTION_DCC_SCAN_STOP();//停止扫描
HSI_API HSI_STATUS WINAPI HSI_MOTION_DCC_SCAN_SET_DATA(UINT AxisTypes, HSI_SCAN_MOTION_TYPE eType, UINT lTrigNumber,
double* dTrigDis); //扫描配置
HSI_API HSI_STATUS WINAPI HSI_MOTION_DCC_SCAN_START(); //开始扫描
HSI_API HSI_STATUS WINAPI HSI_MOTION_DCC_SCAN_STOP(); //停止扫描
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_POSITION_XYZ_CACHE(unsigned char* CacheData, int DataCount);
// 第一阶段结束
// 第二阶段需要重写的API 函数
HSI_API HSI_STATUS WINAPI HSI_MOTION_IS_SUPPORTED(UINT &Types);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_SPEED_XYZ(double &Speed);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_SPEED_XYZ(double Speed);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ACCELERATION_XYZ(double &AccelX, double &AccelY, double &AccelZ);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_ACCELERATION_XYZ(double AccelX, double AccelY, double AccelZ);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_SPEED_R(double &Speed);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_SPEED_R(double Speed);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ACCELERATION_R(double &AccelR);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_ACCELERATION_R(double AccelR);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_SCALE_RESOLUTION(double &ScaleX, double &ScaleY, double &ScaleZ);
HSI_API HSI_STATUS WINAPI HSI_MOTION_IS_SUPPORTED(UINT& Types);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_SPEED_XYZ(double& Speed);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_SPEED_XYZ(double Speed);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ACCELERATION_XYZ(double& AccelX, double& AccelY, double& AccelZ);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_ACCELERATION_XYZ(double AccelX, double AccelY, double AccelZ);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_SPEED_R(double& Speed);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_SPEED_R(double Speed);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ACCELERATION_R(double& AccelR);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_ACCELERATION_R(double AccelR);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_SCALE_RESOLUTION(double& ScaleX, double& ScaleY, double& ScaleZ);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_SCALE_RESOLUTION(double ScaleX, double ScaleY, double ScaleZ);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_DEADBAND(double &DeadbandX, double &DeadbandY, double &DeadbandZ, double &DeadbandR);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_REFRESH_DEADBAND(double &Deadband);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_POSITIONPROBE(UINT AxisTypes, double &PositionX, double &PositionY, double &PositionZ, double &PositionA);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ENCODER_XYZ(long *lEncVal);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_POSITION_XYZ_CACHE(UINT AxisTypes, HSI_MOTION_MOVE_TYPE eType, int DataCount, Point *CacheData);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_POSITION_R(UINT AxisTypes, double &PositionR, double &Time);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_POSITION_R(UINT AxisTypes, double PositionR, HSI_MOTION_AXIS_R_MOVE_TYPE DirectionType, bool bWait);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_PLAN_SCAN(double *pdStartPosX, double *pdStartPosY, double *pdStartPosZ, double *pdEndPosX, double *pdEndPosY, double *pdEndPosZ, double *pdStepDis, bool *pbTrig, int iCount);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_DEADBAND(double& DeadbandX, double& DeadbandY, double& DeadbandZ,
double& DeadbandR);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_REFRESH_DEADBAND(double& Deadband);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_POSITIONPROBE(UINT AxisTypes, double& PositionX, double& PositionY,
double& PositionZ, double& PositionA);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ENCODER_XYZ(long* lEncVal);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_POSITION_XYZ_CACHE(UINT AxisTypes, HSI_MOTION_MOVE_TYPE eType, int DataCount,
Point* CacheData);
HSI_API HSI_STATUS WINAPI HSI_MOTION_IS_SUPPORTED_EX(UINT AxisTypes, UINT &Types);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_POSITION_R(UINT AxisTypes, double& PositionR, double& Time);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_POSITION_R(UINT AxisTypes, double PositionR,
HSI_MOTION_AXIS_R_MOVE_TYPE DirectionType, bool bWait);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_PLAN_SCAN(double* pdStartPosX, double* pdStartPosY, double* pdStartPosZ,
double* pdEndPosX, double* pdEndPosY, double* pdEndPosZ,
double* pdStepDis, bool* pbTrig, int iCount);
HSI_API HSI_STATUS WINAPI HSI_MOTION_IS_SUPPORTED_EX(UINT AxisTypes, UINT& Types);
HSI_API HSI_STATUS WINAPI HSI_MOTION_STARTUP_EX(UINT AxisTypes, bool bHome);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_SCALE_RESOLUTION_EX(UINT AxisTypes, double &Scale);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_SCALE_RESOLUTION_EX(UINT AxisTypes, double& Scale);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_SCALE_RESOLUTION_EX(UINT AxisTypes, double Scale);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_POSITION_EX(UINT AxisTypes, double &Position, double &Time);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_POSITION_EX(UINT AxisTypes, double Position, HSI_MOTION_MOVE_TYPE eType, double dSpeedGear);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_SPEED_EX(UINT AxisTypes, double &Speed);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ACCELERATION_EX(UINT AxisTypes, double &Accel);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_POSITION_EX(UINT AxisTypes, double& Position, double& Time);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_POSITION_EX(UINT AxisTypes, double Position, HSI_MOTION_MOVE_TYPE eType,
double dSpeedGear);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_SPEED_EX(UINT AxisTypes, double& Speed);
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ACCELERATION_EX(UINT AxisTypes, double& Accel);
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_ACCELERATION_EX(UINT AxisTypes, double Accel);