/* * @Date: 2025-06-26 09:17:59 * @Author: mypx * @LastEditors: mypx mypx_coder@163.com * @LastEditTime: 2025-07-22 15:08:28 * @FilePath: h00_motor_args.h * @Description: * Copyright (c) 2025 by mypx, All Rights Reserved. */ #ifndef __H00_MOTOR_ARGS_H__ #define __H00_MOTOR_ARGS_H__ #include "sv_common.h" /*====================================================================== * H00 group Servo Motor Parameters Macro Definitions (0x2000-0x202Ch) *====================================================================*/ /* H00.00 Motor ID */ #define REG_H00_00_MOTOR_ID (0x0000) #define REG_H00_00_MOTOR_ID_MIN (0) #define REG_H00_00_MOR_ID_MAX (65535) #define REG_H00_00_MOTOR_ID_DEFAULT (14101) #define REG_H00_00_MOTOR_ID_TYPE UINT16 #define REG_H00_00_MOTOR_ID_DESC "Inovance 18-bit absolute encoder motor ID (default: 14101)" /* H00.02 Non-standard Label */ #define REG_H00_02_NON_LABEL (0x0002) #define REG_H00_02_NON_LABEL_MIN (0.00f) #define REG_H00_02_NON_LABEL_MAX (42949672.95f) #define REG_H00_02_NON_LABEL_DEFAULT (0.00f) #define REG_H00_02_NON_LABEL_TYPE UINT32 #define REG_H00_02_NON_LABEL_DESC "MCU non-standard software version identifier (standard machine is 0.00)" /* H00.04 Encoder Version */ #define REG_H00_04_ENC_VERSION (0x0004) #define REG_H00_04_ENC_VERSION_MIN (0.0f) #define REG_H00_04_ENC_VERSION_MAX (6553.5f) #define REG_H00_04_ENC_VERSION_DEFAULT (0.0f) #define REG_H00_04_ENC_VERSION_TYPE UINT16 #define REG_H00_04_ENC_VERSION_DESC "Encoder software version number (stored in the encoder)" /* H00.05 Bus Motor ID */ #define REG_H00_05_BUS_MOTOR_ID (0x0005) #define REG_H00_05_BUS_MOTOR_ID_MIN (0) #define REG_H00_05_BUS_MOTOR_ID_MAX (65535) #define REG_H00_05_BUS_MOTOR_ID_DEFAULT (0) #define REG_H00_05_BUS_MOTOR_ID_TYPE UINT16 #define REG_H00_05_BUS_MOTOR_ID_DESC "Bus-type motor model ID (determined by motor model)" /* H00.06 FPGA Non-standard Label */ #define REG_H00_06_FPGA_NON_LABEL (0x0006) #define REG_H00_06_FPGA_NON_LABEL_MIN (0.00f) #define REG_H00_06_FPGA_NON_LABEL_MAX (10485.75f) #define REG_H00_06_FPGA_NON_LABEL_DEFAULT (0.00f) #define REG_H00_06_FPGA_NON_LABEL_TYPE UINT32 #define REG_H00_06_FPGA_NON_LABEL_DESC "FPGA non-standard software version identifier (standard machine is 0.00)" /* H00.08 Bus Encoder Type */ #define REG_H00_08_BUS_ENC_TYPE (0x0008) #define REG_H00_08_BUS_ENC_TYPE_MIN (0) #define REG_H00_08_BUS_ENC_TYPE_MAX (65535) #define REG_H00_08_BUS_ENC_TYPE_DEFAULT (0) #define REG_H00_08_BUS_ENC_TYPE_TYPE UINT16 #define REG_H00_08_BUS_ENC_TYPE_DESC "14100 = Multi-turn absolute encoder, others = Single-turn absolute encoder" /* H00.09 Rated Voltage */ #define REG_H00_09_RATED_VOLTAGE (0x0009) #define REG_H00_09_RATED_VOLTAGE_MIN (0) #define REG_H00_09_RATED_VOLTAGE_MAX (1) #define REG_H00_09_RATED_VOLTAGE_DEFAULT (0) // 0=220V, 1=380V #define REG_H00_09_RATED_VOLTAGE_TYPE UINT16 #define REG_H00_09_RATED_VOLTAGE_DESC "0: 220V, 1: 380V (voltage level setting)" /* H00.10 Rated Power */ #define REG_H00_10_RATED_POWER (0x0010) #define REG_H00_10_RATED_POWER_MIN (0.01f) #define REG_H00_10_RATED_POWER_MAX (655.35f) #define REG_H00_10_RATED_POWER_DEFAULT (0.01f) #define REG_H00_10_RATED_POWER_TYPE UINT16 #define REG_H00_10_RATED_POWER_DESC "Motor rated power (unit: kW)" /* H00.11 Rated Current */ #define REG_H00_11_RATED_CURRENT (0x0011) #define REG_H00_11_RATED_CURRENT_MIN (0.01f) #define REG_H00_11_RATED_CURRENT_MAX (655.35f) #define REG_H00_11_RATED_CURRENT_DEFAULT (0.01f) #define REG_H00_11_RATED_CURRENT_TYPE UINT16 #define REG_H00_11_RATED_CURRENT_DESC "Motor rated current (unit: A)" /* H00.12 Rated Torque */ #define REG_H00_12_RATED_TORQUE (0x0012) #define REG_H00_12_RATED_TORQUE_MIN (0.10f) #define REG_H00_12_RATED_TORQUE_MAX (655.35f) #define REG_H00_12_RATED_TORQUE_DEFAULT (0.10f) #define REG_H00_12_RATED_TORQUE_TYPE UINT16 #define REG_H00_12_RATED_TORQUE_DESC "Motor rated torque (unit: N·m)" /* H00.13 Maximum Torque */ #define REG_H00_13_MAX_TORQUE (0x0013) #define REG_H00_13_MAX_TORQUE_MIN (0.10f) #define REG_H00_13_MAX_TORQUE_MAX (655.35f) #define REG_H00_13_MAX_TORQUE_DEFAULT (0.10f) #define REG_H00_13_MAX_TORQUE_TYPE UINT16 #define REG_H00_13_MAX_TORQUE_DESC "Maximum allowable torque of the motor (unit: N·m)" /* H00.14 Rated Speed */ #define REG_H00_14_RATED_SPEED (0x0014) #define REG_H00_14_RATED_SPEED_MIN (100) #define REG_H00_14_RATED_SPEED_MAX (9000) #define REG_H00_14_RATED_SPEED_DEFAULT (100) #define REG_H00_14_RATED_SPEED_TYPE UINT16 #define REG_H00_14_RATED_SPEED_DESC "Motor rated speed (unit: rpm)" /* H00.15 Maximum Speed */ #define REG_H00_15_MAX_SPEED (0x0015) #define REG_H00_15_MAX_SPEED_MIN (100) #define REG_H00_15_MAX_SPEED_MAX (9000) #define REG_H00_15_MAX_SPEED_DEFAULT (100) #define REG_H00_15_MAX_SPEED_TYPE UINT16 #define REG_H00_15_MAX_SPEED_DESC "Maximum allowable speed of the motor (unit: rpm)" /* H00.16 Moment of Inertia Jm */ #define REG_H00_16_MOMENT_OF_INERTIA (0x0016) #define REG_H00_16_MOMENT_OF_INERTIA_MIN (0.01f) #define REG_H00_16_MOMENT_OF_INERTIA_MAX (655.35f) #define REG_H00_16_MOMENT_OF_INERTIA_DEFAULT (0.01f) #define REG_H00_16_MOMENT_OF_INERTIA_TYPE UINT16 #define REG_H00_16_MOMENT_OF_INERTIA_DESC "Moment of inertia of the motor (unit: kg·cm²)" /* H00.17 Number of Pole Pairs of Permanent Magnet Synchronous Motor */ #define REG_H00_17_POLE_PAIRS (0x0017) #define REG_H00_17_POLE_PAIRS_MIN (2) #define REG_H00_17_POLE_PAIRS_MAX (360) #define REG_H00_17_POLE_PAIRS_DEFAULT (2) #define REG_H00_17_POLE_PAIRS_TYPE UINT16 #define REG_H00_17_POLE_PAIRS_DESC "Number of pole pairs of permanent magnet synchronous motor" /* H00.18 Stator Resistance */ #define REG_H00_18_STATOR_RESISTANCE (0x0018) #define REG_H00_18_STATOR_RESISTANCE_MIN (0.001f) #define REG_H00_18_STATOR_RESISTANCE_MAX (65.535f) #define REG_H00_18_STATOR_RESISTANCE_DEFAULT (0.001f) #define REG_H00_18_STATOR_RESISTANCE_TYPE UINT16 #define REG_H00_18_STATOR_RESISTANCE_DESC "Stator resistance (unit: Ω)" /* H00.19 Stator Inductance Lq */ #define REG_H00_19_STATOR_INDUCTANCE_LQ (0x0019) #define REG_H00_19_STATOR_INDUCTANCE_LQ_MIN (0.01f) #define REG_H00_19_STATOR_INDUCTANCE_LQ_MAX (655.35f) #define REG_H00_19_STATOR_INDUCTANCE_LQ_DEFAULT (0.01f) #define REG_H00_19_STATOR_INDUCTANCE_LQ_TYPE UINT16 #define REG_H00_19_STATOR_INDUCTANCE_LQ_DESC "Stator quadrature axis inductance (unit: mH)" /* H00.20 Stator Inductance Ld */ #define REG_H00_20_STATOR_INDUCTANCE_LD (0x0020) #define REG_H00_20_STATOR_INDUCTANCE_LD_MIN (0.01f) #define REG_H00_20_STATOR_INDUCTANCE_LD_MAX (655.35f) #define REG_H00_20_STATOR_INDUCTANCE_LD_DEFAULT (0.01f) #define REG_H00_20_STATOR_INDUCTANCE_LD_TYPE UINT16 #define REG_H00_20_STATOR_INDUCTANCE_LD_DESC "Stator direct axis inductance (unit: mH)" /* H00.21 Line Back EMF Coefficient */ #define REG_H00_21_BACK_EMF_COEFF (0x0021) #define REG_H00_21_BACK_EMF_COEFF_MIN (0.01f) #define REG_H00_21_BACK_EMF_COEFF_MAX (655.35f) #define REG_H00_21_BACK_EMF_COEFF_DEFAULT (0.01f) #define REG_H00_21_BACK_EMF_COEFF_TYPE UINT16 #define REG_H00_21_BACK_EMF_COEFF_DESC "Line back EMF coefficient (unit: mV/rpm)" /* H00.22 Torque Coefficient Kt */ #define REG_H00_22_TORQUE_COEFF_KT (0x0022) #define REG_H00_22_TORQUE_COEFF_KT_MIN (0.01f) #define REG_H00_22_TORQUE_COEFF_KT_MAX (655.35f) #define REG_H00_22_TORQUE_COEFF_KT_DEFAULT (0.01f) #define REG_H00_22_TORQUE_COEFF_KT_TYPE UINT16 #define REG_H00_22_TORQUE_COEFF_KT_DESC "Torque coefficient (unit: N·m/Arms)" /* H00.23 Electrical Time Constant Te */ #define REG_H00_23_ELECTRICAL_TIME_CONST (0x0023) #define REG_H00_23_ELECTRICAL_TIME_CONST_MIN (0.01f) #define REG_H00_23_ELECTRICAL_TIME_CONST_MAX (655.35f) #define REG_H00_23_ELECTRICAL_TIME_CONST_DEFAULT (0.01f) #define REG_H00_23_ELECTRICAL_TIME_CONST_TYPE UINT16 #define REG_H00_23_ELECTRICAL_TIME_CONST_DESC "Electrical time constant (unit: ms)" /* H00.24 Mechanical Time Constant Tm */ #define REG_H00_24_MECHANICAL_TIME_CONST (0x0024) #define REG_H00_24_MECHANICAL_TIME_CONST_MIN (0.01f) #define REG_H00_24_MECHANICAL_TIME_CONST_MAX (655.35f) #define REG_H00_24_MECHANICAL_TIME_CONST_DEFAULT (0.01f) #define REG_H00_24_MECHANICAL_TIME_CONST_TYPE UINT16 #define REG_H00_24_MECHANICAL_TIME_CONST_DESC "Mechanical time constant (unit: ms)" /* H00.27 Number of Sine/Cosine Signals of Bus Motor */ #define REG_H00_27_BUS_SINCOS_COUNT (0x0027) #define REG_H00_27_BUS_SINCOS_COUNT_MIN (0) #define REG_H00_27_BUS_SINCOS_COUNT_MAX (65535) #define REG_H00_27_BUS_SINCOS_COUNT_DEFAULT (1) #define REG_H00_27_BUS_SINCOS_COUNT_TYPE UINT16 #define REG_H00_27_BUS_SINCOS_COUNT_DESC "Number of sine/cosine signals of bus motor" /* H00.28 Absolute Encoder Position Offset */ #define REG_H00_28_ABS_POS_OFFSET (0x0028) #define REG_H00_28_ABS_POS_OFFSET_MIN (0) #define REG_H00_28_ABS_POS_OFFSET_MAX (1073741824) #define REG_H00_28_ABS_POS_OFFSET_DEFAULT (0) #define REG_H00_28_ABS_POS_OFFSET_TYPE UINT32 #define REG_H00_28_ABS_POS_OFFSET_DESC "Absolute encoder position offset (unit: P/Rev)" /* H00.30 Encoder Selection */ #define REG_H00_30_ENCODER_SELECT (0x0030) #define REG_H00_30_ENCODER_SELECT_MIN (0) #define REG_H00_30_ENCODER_SELECT_MAX (65535) #define REG_H00_30_ENCODER_SELECT_DEFAULT (19) // 19 = Inovance Encoder #define REG_H00_30_ENCODER_SELECT_TYPE UINT16 #define REG_H00_30_ENCODER_SELECT_DESC "Encoder type selection (19 = Inovance Encoder)" /* H00.31 Encoder Lines */ #define REG_H00_31_ENCODER_LINES (0x0031) #define REG_H00_31_ENCODER_LINES_MIN (1) #define REG_H00_31_ENCODER_LINES_MAX (1073741824) #define REG_H00_31_ENCODER_LINES_DEFAULT (8388608) #define REG_H00_31_ENCODER_LINES_TYPE UINT32 #define REG_H00_31_ENCODER_LINES_DESC "Encoder lines (pulses per revolution)" /* H00.35 Bus Encoder Stored Motor ID */ #define REG_H00_35_BUS_ENC_MOTOR_ID (0x0035) #define REG_H00_35_BUS_ENC_MOTOR_ID_MIN (0) #define REG_H00_35_BUS_ENC_MOTOR_ID_MAX (65535) #define REG_H00_35_BUS_ENC_MOTOR_ID_DEFAULT (0) #define REG_H00_35_BUS_ENC_MOTOR_ID_TYPE UINT16 #define REG_H00_35_BUS_ENC_MOTOR_ID_DESC "Bus encoder stored motor ID" /* H00.37 Encoder Function Flags */ #define REG_H00_37_ENCODER_FUNC_FLAGS (0x0037) #define REG_H00_37_ENCODER_FUNC_FLAGS_MIN (0) #define REG_H00_37_ENCODER_FUNC_FLAGS_MAX (255) #define REG_H00_37_ENCODER_FUNC_FLAGS_DEFAULT (0) #define REG_H00_37_ENCODER_FUNC_FLAGS_TYPE UINT16 #define REG_H00_37_ENCODER_FUNC_FLAGS_DESC "Encoder function setting flags" /* H00.43 Maximum Current */ #define REG_H00_43_MAX_CURRENT (0x0043) #define REG_H00_43_MAX_CURRENT_MIN (0.00f) #define REG_H00_43_MAX_CURRENT_MAX (655.35f) #define REG_H00_43_MAX_CURRENT_DEFAULT (0.00f) #define REG_H00_43_MAX_CURRENT_TYPE UINT16 #define REG_H00_43_MAX_CURRENT_DESC "Maximum allowed current of the driver (unit: A)" /** * @brief H00.00 Read motor ID * @param dev Pointer to servo handle * @param value Pointer to store the motor ID * @return int */ int sv630p_read_h00_00_motor_id(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.00 Write motor ID * @param dev Pointer to servo handle * @param value Motor ID to write * @return int */ int sv630p_write_h00_00_motor_id(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.02 Read Non-standard Number (32-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_02_non_label(sv630p_handle_t *dev, uint32_t *value); /** * @brief H00.04 Read Encoder Version (16-bit) * @param value Pointer to store the value * @return nmbs_error */ int sv630p_read_h00_04_enc_version(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.05 Read Bus Motor ID (16-bit) * @param value Pointer to store the value * @return nmbs_error */ int sv630p_read_h00_05_bus_motor_id(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.06 Read FPGA Non-standard Number (32-bit) * @param value Pointer to store the value * @return nmbs_error */ int sv630p_read_h00_06_fpga_non_label(sv630p_handle_t *dev, uint32_t *value); /** * @brief H00.08 Read Bus Encoder Type (16-bit) * @param value Pointer to store the value * @return nmbs_error */ int sv630p_read_h00_08_bus_enc_type(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.08 Write Bus Encoder Type (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_08_bus_enc_type(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.09 Read Rated Voltage (16-bit) * @param value Pointer to store the value * @return nmbs_error */ int sv630p_read_h00_09_rated_voltage(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.09 Write Rated Voltage (16-bit) * @param value Value to write * @return nmbs_error */ int sv630p_write_h00_09_rated_voltage(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.10 Read Rated Power (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_10_rated_power(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.10 Write Rated Power (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_10_rated_power(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.11 Read Rated Current (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_11_rated_current(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.11 Write Rated Current (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_11_rated_current(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.12 Read Rated Torque (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_12_rated_torque(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.12 Write Rated Torque (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_12_rated_torque(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.13 Read Maximum Torque (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_13_max_torque(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.13 Write Maximum Torque (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_13_max_torque(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.14 Read Rated Speed (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_14_rated_speed(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.14 Write Rated Speed (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_14_rated_speed(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.15 Read Maximum Speed (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_15_max_speed(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.15 Write Maximum Speed (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_15_max_speed(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.16 Read Moment of Inertia Jm (16-bit, unit: 0.01kg·cm²) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_16_moment_of_inertia(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.16 Write Moment of Inertia Jm (16-bit, unit: 0.01kg·cm²) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_16_moment_of_inertia(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.17 Read Number of Pole Pairs (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_17_pole_pairs(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.17 Write Number of Pole Pairs (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_17_pole_pairs(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.18 Read Stator Resistance (16-bit, unit: 0.001Ω) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_18_stator_resistance(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.18 Write Stator Resistance (16-bit, unit: 0.001Ω) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_18_stator_resistance(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.19 Read Stator Inductance Lq (16-bit, unit: 0.01mH) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_19_stator_inductance_lq(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.19 Write Stator Inductance Lq (16-bit, unit: 0.01mH) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_19_stator_inductance_lq(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.20 Read Stator Inductance Ld (16-bit, unit: 0.01mH) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_20_stator_inductance_ld(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.20 Write Stator Inductance Ld (16-bit, unit: 0.01mH) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_20_stator_inductance_ld(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.21 Read Back EMF Coefficient (16-bit, unit: 0.01mV/rpm) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_21_back_emf_coeff(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.21 Write Back EMF Coefficient (16-bit, unit: 0.01mV/rpm) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_21_back_emf_coeff(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.22 Read Torque Coefficient Kt (16-bit, unit: 0.01N·m/Arms) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_22_torque_coeff_kt(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.22 Write Torque Coefficient Kt (16-bit, unit: 0.01N·m/Arms) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_22_torque_coeff_kt(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.23 Read Electrical Time Constant Te (16-bit, unit: 0.01ms) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_h00_23_read_electrical_constant(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.23 Write Electrical Time Constant Te (16-bit, unit: 0.01ms) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_h00_23_write_electrical_constant(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.24 Read Mechanical Time Constant Tm (16-bit, unit: 0.01ms) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_h00_24_read_mechanical_constant(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.24 Write Mechanical Time Constant Tm (16-bit, unit: 0.01ms) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_24_mechanical_constant(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.27 Read Bus Sine/Cosine Count (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_h00_27_read_bus_sincos_count(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.27 Write Bus Sine/Cosine Count (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_h00_27_write_bus_sincos_count(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.28 Read Absolute Encoder Position Offset (32-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_h00_28_read_abs_pos_offset(sv630p_handle_t *dev, uint32_t *value); /** * @brief H00.28 Write Absolute Encoder Position Offset (32-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_h00_28_write_abs_pos_offset(sv630p_handle_t *dev, uint32_t value); /** * @brief H00.30 Read Encoder Select (HEX) (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_h00_30_read_encoder_select(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.30 Write Encoder Select (HEX) (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_h00_30_write_encoder_select(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.31 Read Encoder Lines (32-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_h00_31_read_encoder_lines(sv630p_handle_t *dev, uint32_t *value); /** * @brief H00.31 Write Encoder Lines (32-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_h00_31_write_encoder_lines(sv630p_handle_t *dev, uint32_t value); /** * @brief H00.35 Read Bus Encoder Stored Motor ID (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_h00_35_read_bus_enc_motor_id(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.35 Write Bus Encoder Stored Motor ID (16-bit) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_h00_35_write_bus_enc_motor_id(sv630p_handle_t *dev, uint16_t value); /** * @brief H00.37 Read Encoder Function Flags (16-bit) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_h00_37_read_encoder_func_bits(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.43 Read Maximum Current (16-bit, unit: 0.01A) * @param dev Pointer to servo handle * @param value Pointer to store the value * @return int */ int sv630p_read_h00_43_max_current(sv630p_handle_t *dev, uint16_t *value); /** * @brief H00.43 Write Maximum Current (16-bit, unit: 0.01A) * @param dev Pointer to servo handle * @param value Value to write * @return int */ int sv630p_write_h00_43_max_current(sv630p_handle_t *dev, uint16_t value); #endif