/* ************************************************************** */ /* * CM6K.H * * Zachary Wolf * 4/4/06 */ #ifndef __CM6K_HEADER #define __CM6K_HEADER #if defined(__cplusplus) || defined(__cplusplus__) extern "C" { #endif /* ************************************************************** */ /* PUBLIC FUNCTION DECLARATIONS */ void cm6k_init(int rs232_com_port, int rs232_dev_addr, int* ID); void cm6k_rel_move(int dev_ID, int axis, double acc, double vel, double dis); void cm6k_start_rel_move(int dev_ID, int axis, double acc, double vel, double dis); void cm6k_end_rel_move(int dev_ID, int axis, double dis); void cm6k_abs_move(int dev_ID, int axis, double acc, double vel, double pos); void cm6k_go_home(int dev_ID, int axis, double acc, double vel); void cm6k_get_mot_position(int dev_ID, int axis, double* pos); void cm6k_get_enc_position(int dev_ID, int axis, double* pos); void cm6k_zero(int dev_ID, int axis); void cm6k_exit(int dev_ID); /* ************************************************************** */ /* SEMI-PERMANENT PARAMETERS */ #define CM6K_MAX_NUM_DEV 10 #define CM6K_MAX_CMD 80 #define CM6K_NUM_AXES 2 /* Unused axes are ignored */ #define CM6K_NUM_MOT_STEPS_PER_REV_AXIS1 25000 #define CM6K_NUM_MOT_STEPS_PER_REV_AXIS2 25000 #define CM6K_NUM_MOT_STEPS_PER_REV_AXIS3 25000 #define CM6K_NUM_MOT_STEPS_PER_REV_AXIS4 25000 #define CM6K_NUM_MOT_STEPS_PER_REV_AXIS5 25000 #define CM6K_NUM_MOT_STEPS_PER_REV_AXIS6 25000 #define CM6K_NUM_MOT_STEPS_PER_REV_AXIS7 25000 #define CM6K_NUM_MOT_STEPS_PER_REV_AXIS8 25000 #define CM6K_NUM_ENC_STEPS_PER_REV_AXIS1 1024 #define CM6K_NUM_ENC_STEPS_PER_REV_AXIS2 1024 #define CM6K_NUM_ENC_STEPS_PER_REV_AXIS3 1024 #define CM6K_NUM_ENC_STEPS_PER_REV_AXIS4 1024 #define CM6K_NUM_ENC_STEPS_PER_REV_AXIS5 1024 #define CM6K_NUM_ENC_STEPS_PER_REV_AXIS6 1024 #define CM6K_NUM_ENC_STEPS_PER_REV_AXIS7 1024 #define CM6K_NUM_ENC_STEPS_PER_REV_AXIS8 1024 /* ************************************************************** */ /* DONE */ #if defined(__cplusplus) || defined(__cplusplus__) } #endif #endif