CPP API
Init
Function: Initialize the FSA object
Parameters:
ip: Target actuator IPnet_recv_mode: Network receive mode, optional YIELD_WAIT (blocking wait) or SPIN_WAIT (spin wait), default is blocking waitrtcko_path: Default is an empty string, recommended to ignore
Return: Returns detailed execution status ret_e(int)
Power
OpenRelay
Function: Turn on the robot power board relay
Parameters:
timeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
Note: Controls the robot's power management board; the actuator itself does not have this function
CloseRelay
Function: Turn off the robot power board relay
Parameters:
timeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
Note: Controls the robot's power management board; the actuator itself does not have this function
Reboot
Function: Reboot the actuator
Parameters:
timeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
Control
EnableControl
Function: Enable actuator control in position/velocity/torque/PD mode
Parameters:
ctrl_mode: Control mode enum (Position/Velocity/Torque/PD)timeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
Note: Internally executes the following steps; any failure will return a status code:
-
Get current position, velocity, current, torque feedback
-
Set target commands:
- Position = current, feedforward velocity = 0, feedforward current = 0 (for position or PD mode)
- Velocity = 0, feedforward current = 0 (for velocity mode)
- Current = 0 (for torque mode)
-
Enable actuator
DisableControl
Function: Disable actuator control
Parameters:
timeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
SetPositionNoAck
Function: Send position target command, velocity feedforward, torque feedforward; actuator does not reply
Parameters:
p_rad: Target positionv_ff_radps: Velocity feedforwardt_ff_Nm: Torque feedforward
Return: Returns detailed execution status ret_e(int)
SetPosition
Function: Send position target command, velocity feedforward, torque feedforward; actuator replies
Parameters:
p_rad: Target positionv_ff_radps: Velocity feedforwardt_ff_Nm: Torque feedforwardtimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
SetVelocityNoAck
Function: Send velocity target command, torque feedforward; actuator does not reply
Parameters:
v_radps: Target velocityt_ff_Nm: Torque feedforward
Return: Returns detailed execution status ret_e(int)
SetVelocity
Function: Send velocity target command, torque feedforward; actuator replies
Parameters:
v_radps: Target velocityt_ff_Nm: Torque feedforwardtimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
SetTorqueNoAck
Function: Send torque target command; actuator does not reply
Parameters:
t_Nm: Target torque
Return: Returns detailed execution status ret_e(int)
SetTorque
Function: Send torque target command; actuator replies
Parameters:
t_Nm: Target torquetimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
SetPDPositionVelocityNoAck
Function: Send position target, velocity target, torque feedforward; actuator does not reply
Parameters:
p_rad: Target positionv_radps: Target velocityt_ff_Nm: Torque feedforward
Return: Returns detailed execution status ret_e(int)
SetPDPositionVelocity
Function: Send position target, velocity target, torque feedforward; actuator replies
Parameters:
p_rad: Target positionv_radps: Target velocityt_ff_Nm: Torque feedforwardtimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
State
GetPVCTTe
Function: Get actuator feedback: position, velocity, current, load torque, and electromagnetic torque
Parameters:
rx_PVCTTe: Store position, velocity, current, load torque, electromagnetic torquetimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
EnableSubscribe
Function: Configure subscription mode
Parameters:
subs_config: Subscription configurationtimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
GetSubsData
Function: Get the latest subscription data
Parameters:
subs_data: Store subscription data
Return: Status code
Note: Returns the latest frame every call, discards any cached frames in the socket buffer
GetTempVbus
Function: Get MOS temperature, winding temperature, voltage
Parameters:
rx_temp_vbus: Store MOS temp, winding temp, voltagetimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
GetErrCode
Function: Get current actuator error code
Parameters:
rx_errcode: Store error codetimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
ParseErrCode
Function: Parse actuator error code
Parameters:
err_code: 8 uint32_t error codes obtainedparsed_err_code: Parsed error code
Return: Returns detailed execution status ret_e(int)
GetTypeSubversion
Function: Get actuator model and subversion
Parameters:
type_subversion: Store model and subversiontimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
Config
SetPIDParams
Function: Set position/velocity PID parameters in real time
Parameters:
p_kp: Position loop proportional gainv_kp: Velocity loop proportional gainv_ki: Velocity loop integral gaintimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
GetPIDParams
Function: Get position/velocity PID parameters in real time
Parameters:
rx_pid_param: Store PID parameterstimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
SetPDParams
Function: Set PD parameters in real time
Parameters:
pd_kp: PD proportional gainpd_kd: PD derivative gaintimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
GetPDParams
Function: Get immediate PD parameters
Parameters:
rx_pd_param: Store PD parameterstimeout_ms: Timeout (ms), default 5msmax_retry: Maximum retry times, default 1
Return: Returns detailed execution status ret_e(int)
Advanced
To be implemented
Status Codes
| Code | SUCCESS | SDK_VER_NOT_MATCH | CTRL_PARAM_ERR | INTERFACE_HANDLE_ERR | ARG_ERR | NET_ERR | TIMEOUT | NET_RXBUF_DATA_ERR |
|---|---|---|---|---|---|---|---|---|
| Value | 0 | -101 | -102 | -201 | -202 | -301 | -302 | -303 |
| Meaning | Operation successful | SDK version mismatch | Failed to get actuator config | Actuator object not initialized | Invalid interface parameter | Network error | Network receive timeout | Received socket buffer data does not match command |
| Possible Cause | / | Actuator firmware too low or SDK library/header mismatch | Model/subversion not obtained | init not executed | Parameter invalid | FSA network disconnected | Actuator response exceeded timeout | Socket buffer contains old frames causing mismatch |