|
@ -12,32 +12,6 @@ class I_MiniServoModule { |
|
|
public: |
|
|
public: |
|
|
typedef enum { kNormalStop, kBreakStop } StopType_t; |
|
|
typedef enum { kNormalStop, kBreakStop } StopType_t; |
|
|
#pragma pack(1)
|
|
|
#pragma pack(1)
|
|
|
#if 0
|
|
|
|
|
|
typedef struct { |
|
|
|
|
|
s32 exec_status; |
|
|
|
|
|
s32 has_run_time; |
|
|
|
|
|
} rotate_cb_status_t; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
|
|
s32 exec_status; |
|
|
|
|
|
s32 pos; |
|
|
|
|
|
} move_to_cb_status_t; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
|
|
s32 exec_status; |
|
|
|
|
|
s32 dpos; |
|
|
|
|
|
} move_by_cb_status_t; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
|
|
s32 exec_status; |
|
|
|
|
|
s32 has_run_time; |
|
|
|
|
|
} run_with_torque_cb_status_t; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
|
|
s32 exec_status; |
|
|
|
|
|
s32 pos; |
|
|
|
|
|
} move_by_nolimit_cb_status_t; |
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
/*******************************************************************************
|
|
|
* READ * |
|
|
* READ * |
|
@ -47,16 +21,16 @@ class I_MiniServoModule { |
|
|
} version_t; |
|
|
} version_t; |
|
|
|
|
|
|
|
|
typedef struct { |
|
|
typedef struct { |
|
|
uint8_t status; // 0:normal 1:ÔËÐÐÖÐ 2:offline 3:¹ÊÕÏ
|
|
|
|
|
|
uint8_t io_state; //
|
|
|
|
|
|
int16_t torque; //
|
|
|
|
|
|
int16_t speed; //
|
|
|
|
|
|
int16_t pos; //
|
|
|
|
|
|
|
|
|
uint8_t status; // 0:normal 1:ÔËÐÐÖÐ 2:offline 3:¹ÊÕÏ
|
|
|
|
|
|
uint8_t ioState; //
|
|
|
|
|
|
int16_t torque; //
|
|
|
|
|
|
int16_t speed; //
|
|
|
|
|
|
int16_t pos; //
|
|
|
} status_t; |
|
|
} status_t; |
|
|
|
|
|
|
|
|
typedef struct { |
|
|
typedef struct { |
|
|
uint8_t status; |
|
|
uint8_t status; |
|
|
uint8_t io_state; |
|
|
|
|
|
|
|
|
uint8_t ioState; |
|
|
int16_t torque; |
|
|
int16_t torque; |
|
|
int16_t speed; |
|
|
int16_t speed; |
|
|
int16_t pos; |
|
|
int16_t pos; |
|
@ -64,7 +38,6 @@ class I_MiniServoModule { |
|
|
int16_t current; |
|
|
int16_t current; |
|
|
int16_t temperature; |
|
|
int16_t temperature; |
|
|
int16_t error_flag; |
|
|
int16_t error_flag; |
|
|
|
|
|
|
|
|
} detailed_status_t; |
|
|
} detailed_status_t; |
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
/*******************************************************************************
|
|
@ -72,23 +45,16 @@ class I_MiniServoModule { |
|
|
*******************************************************************************/ |
|
|
*******************************************************************************/ |
|
|
|
|
|
|
|
|
typedef struct { |
|
|
typedef struct { |
|
|
s16 pos_calibrate; |
|
|
|
|
|
|
|
|
u16 posCalibrate; |
|
|
|
|
|
u16 minlimit; |
|
|
|
|
|
u16 maxlimit; |
|
|
|
|
|
u16 maxtemp; |
|
|
|
|
|
u16 minvoltage; |
|
|
|
|
|
u16 maxvoltage; |
|
|
|
|
|
u16 protectCurrent; |
|
|
|
|
|
u16 protectTorque; |
|
|
} basic_param_t; |
|
|
} basic_param_t; |
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
|
|
s16 minlimit; |
|
|
|
|
|
s16 maxlimit; |
|
|
|
|
|
} run_param_t; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
|
|
s16 mintemp; |
|
|
|
|
|
s16 maxtemp; |
|
|
|
|
|
s16 minvoltage; |
|
|
|
|
|
s16 maxvoltage; |
|
|
|
|
|
s16 mincurrent; |
|
|
|
|
|
s16 maxcurrent; |
|
|
|
|
|
} warning_limit_param_t; |
|
|
|
|
|
|
|
|
|
|
|
#pragma pack()
|
|
|
#pragma pack()
|
|
|
|
|
|
|
|
|
public: |
|
|
public: |
|
@ -102,17 +68,16 @@ class I_MiniServoModule { |
|
|
virtual int32_t run_with_torque(s32 torque, s32 run_time, action_cb_status_t status_cb) = 0; |
|
|
virtual int32_t run_with_torque(s32 torque, s32 run_time, action_cb_status_t status_cb) = 0; |
|
|
virtual int32_t move_by_nolimit(s32 pos, s32 speed, s32 torque, action_cb_status_t status_cb) = 0; |
|
|
virtual int32_t move_by_nolimit(s32 pos, s32 speed, s32 torque, action_cb_status_t status_cb) = 0; |
|
|
|
|
|
|
|
|
|
|
|
virtual int32_t move_forward(s32 torque) = 0; |
|
|
|
|
|
virtual int32_t move_backward(s32 torque) = 0; |
|
|
|
|
|
|
|
|
virtual int32_t read_version(version_t& version) = 0; |
|
|
virtual int32_t read_version(version_t& version) = 0; |
|
|
virtual int32_t read_status(status_t& status) = 0; |
|
|
virtual int32_t read_status(status_t& status) = 0; |
|
|
virtual int32_t read_detailed_status(detailed_status_t& debug_info) = 0; |
|
|
virtual int32_t read_detailed_status(detailed_status_t& debug_info) = 0; |
|
|
|
|
|
|
|
|
virtual int32_t set_run_param(run_param_t& param) = 0; |
|
|
|
|
|
virtual int32_t set_basic_param(basic_param_t& param) = 0; |
|
|
|
|
|
virtual int32_t set_warning_limit_param(warning_limit_param_t& param) = 0; |
|
|
|
|
|
|
|
|
virtual int32_t set_basic_param(basic_param_t& param) = 0; |
|
|
|
|
|
|
|
|
virtual int32_t get_run_param(run_param_t& param) = 0; |
|
|
|
|
|
virtual int32_t get_basic_param(basic_param_t& param) = 0; |
|
|
|
|
|
virtual int32_t get_warning_limit_param(warning_limit_param_t& param) = 0; |
|
|
|
|
|
|
|
|
virtual int32_t get_basic_param(basic_param_t& param) = 0; |
|
|
|
|
|
|
|
|
virtual ~I_MiniServoModule() {} |
|
|
virtual ~I_MiniServoModule() {} |
|
|
}; |
|
|
}; |