/* ************************************************************** */ /* * CM6K6.H * * Zachary Wolf * 7/27/98 */ #ifndef __CM6K6_HEADER #define __CM6K6_HEADER #if defined(__cplusplus) || defined(__cplusplus__) extern "C" { #endif /* ************************************************************** */ /* PUBLIC FUNCTION DECLARATIONS */ void cm6k6_init(int rs232_com_port, int rs232_dev_addr, int *dev_ID); int cm6k6_rel_move(int dev_ID, int axis, double acc, double vel, double dis); void cm6k6_abs_move(int dev_ID, int axis, double acc, double vel, double pos); void cm6k6_go_home(int dev_ID, int axis, double acc, double vel); void cm6k6_get_mot_position(int dev_ID, int axis, double* pos); void cm6k6_get_enc_position(int dev_ID, int axis, double* pos); void cm6k6_follow_move(int dev_ID, int master, int follow, double acc, double vel, double dis); void cm6k6_zero(int dev_ID, int axis); void cm6k6_exit(int dev_ID); int cm6k6_open_dev(int rs232_dev_addr); void cm6k6_close_dev(int dev_ID); int cm6k6_check_port(int rs232_com_port); int cm6k6_out(int dev_ID, char *buf); int cm6k6_in(int dev_ID, char* buf); int cm6k6_check_dev_open(int dev_ID); int cm6k6_read_error_status(int dev_ID); int cm6k6_danger_operation_message(char* message); void cm6k6_get_num_mot_steps_per_rev(int axis, long int* num_steps_per_rev); void cm6k6_get_num_enc_cts_per_rev(int axis, long int* num_cts_per_rev); void cm6k6_message(char* msg); void cm6k6_error(char* msg); void cm6k6_axis_wait(int dev_ID); int cm6k6_ifmove_delay (int dev_ID, int axis); void cm6k6ui_init(void); int cm6k6_error_handling(int err, char descr[]); void cm6k6_stop_motor(int dev_ID, int axis); void cm6k6_axis(int axis, char list[]); int cm6k6_cam_move(int panel, int control, int dev_ID, int axis, double step_size, int led_flag); //int cm6k6_cam_move(int dev_ID, struct move_param param); void cm6k6_cam_init(int rs232_com_port, int rs232_dev_addr, int* ID, struct move_param param); int cm6k6_cam_move_5(int panel, int control[], int dev_ID, double distance[], int led_flag); /* ************************************************************** */ /* SEMI-PERMANENT PARAMETERS */ #define CM6K6_MAX_NUM_DEV 10 #define CM6K6_MAX_CMD 120 #define CM6K6_NUM_AXIS 6 #define CM6K6_NUM_MOT_STEPS_PER_REV_AXIS1 25000 #define CM6K6_NUM_MOT_STEPS_PER_REV_AXIS2 25000 #define CM6K6_NUM_MOT_STEPS_PER_REV_AXIS3 25000 #define CM6K6_NUM_MOT_STEPS_PER_REV_AXIS4 25000 #define CM6K6_NUM_MOT_STEPS_PER_REV_AXIS5 25000 #define CM6K6_NUM_MOT_STEPS_PER_REV_AXIS6 25000 #define CM6K6_NUM_ENC_STEPS_PER_REV_AXIS1 4096 #define CM6K6_NUM_ENC_STEPS_PER_REV_AXIS2 4096 #define CM6K6_NUM_ENC_STEPS_PER_REV_AXIS3 4096 #define CM6K6_NUM_ENC_STEPS_PER_REV_AXIS4 4096 #define CM6K6_NUM_ENC_STEPS_PER_REV_AXIS5 4096 #define CM6K6_NUM_ENC_STEPS_PER_REV_AXIS6 4096 #define CM6K6_COM_PORT 4 //8 // 11//3 #define CM6K6_DEV_ADDR 1 #define ACC 1. // motor acceleration #define VEL 0.5 // motor velocity #define AXIS 1 // first axis //#define CHAN_NUM 1 // number of Pot's /* ************************************************************** */ /* DONE */ #if defined(__cplusplus) || defined(__cplusplus__) } #endif #endif