Skip to main content
Version: V2.0.4.x

8.13 Battery Status and Power Acquisition

1. Battery Status

  • Description: Get battery status information. The reporting frequency is 1Hz, applicable to all Tienkung Walker series.
  • Charging Status: master_battery_current field, negative value indicates discharging, positive value indicates charging.
  • Control Method: topic
  • Topic Name: /power/battery/status
  • Type: bodyctrl_msgs::msg::PowerBatteryStatus.msg
  • Data Format:
    # @brief Power board voltage, current, power, temperature and other information

    std_msgs/Header header

    # battery status information
    int32 battery_installed # 0x00 none, 0x01 small battery exists, 0x02 large battery exists, 0x03 both batteries exist
    int32 battery_working # 0x01 large battery, 0x10 small battery

    float32 master_battery_voltage # battery voltage information
    float32 master_battery_current # battery current information
    float32 master_battery_power # battery power

    float32 little_battery_voltage # small battery voltage information
    float32 little_battery_current # small battery current information
    float32 little_battery_power # small battery power

    int8 pg12a # 00 low, 01 high
    int8 pg12b # 00 low, 01 high
    int8 pg12c # 00 low, 01 high
    int8 pg12d # 00 low, 01 high
    int8 pg5cd # 00 low, 01 high
    int8 pg5ab # 00 low, 01 high

    int8 pgrdc2 # 00 low, 01 high
    int8 pgrdc1 # 00 low, 01 high
    int8 pgheader # 00 low, 01 high
    int8 pgbutton2 # 00 low, 01 high

2. Power Board Status

  • Description: Get power board status information. The reporting frequency is 1Hz, applicable to all Tienkung Walker series.
  • Control Method: topic
  • Topic Name: /power/board/status
  • Type: bodyctrl_msgs::msg::PowerStatus.msg
  • Data Format:
    # @brief Power board voltage, current, power, temperature and other information

    std_msgs/Header header

    # temperature information
    float32 waist_temp # waist MOS temperature
    float32 arm_a_temp # arm A MOS temperature
    float32 arm_b_temp # arm B MOS temperature
    float32 leg_a_temp # leg A MOS temperature
    float32 leg_b_temp # leg B MOS temperature

    float32 waist_temp_max # maximum waist MOS temperature
    float32 arm_a_temp_max # maximum arm A MOS temperature
    float32 arm_b_temp_max # maximum arm B MOS temperature
    float32 leg_a_temp_max # maximum leg A MOS temperature
    float32 leg_b_temp_max # maximum leg B MOS temperature

    float32 waist_temp_min # minimum waist MOS temperature
    float32 arm_a_temp_min # minimum arm A MOS temperature
    float32 arm_b_temp_min # minimum arm B MOS temperature
    float32 leg_a_temp_min # minimum leg A MOS temperature
    float32 leg_b_temp_min # minimum leg B MOS temperature

    # current information
    float32 arm_a_curr # arm A current
    float32 arm_b_curr # arm B current
    float32 leg_a_curr # leg A current
    float32 leg_b_curr # leg B current
    float32 waist_curr # waist current
    float32 head_curr # head current

    float32 arm_a_curr_max # maximum arm A current
    float32 arm_b_curr_max # maximum arm B current
    float32 leg_a_curr_max # maximum leg A current
    float32 leg_b_curr_max # maximum leg B current
    float32 waist_curr_max # maximum waist current
    float32 head_curr_max # maximum head current

    float32 arm_a_curr_min # minimum arm A current
    float32 arm_b_curr_min # minimum arm B current
    float32 leg_a_curr_min # minimum leg A current
    float32 leg_b_curr_min # minimum leg B current
    float32 waist_curr_min # minimum waist current
    float32 head_curr_min # minimum head current

    float32 arm_a_volt # arm A voltage
    float32 arm_b_volt # arm B voltage
    float32 leg_a_volt # leg A voltage
    float32 leg_b_volt # leg B voltage
    float32 waist_volt # waist voltage
    float32 bus_volt # bus voltage

    float32 arm_a_volt_max # maximum arm A voltage
    float32 arm_b_volt_max # maximum arm B voltage
    float32 leg_a_volt_max # maximum leg A voltage
    float32 leg_b_volt_max # maximum leg B voltage
    float32 waist_volt_max # maximum waist voltage
    float32 bus_volt_max # maximum bus voltage

    float32 arm_a_volt_min # minimum arm A voltage
    float32 arm_b_volt_min # minimum arm B voltage
    float32 leg_a_volt_min # minimum leg A voltage
    float32 leg_b_volt_min # minimum leg B voltage
    float32 waist_volt_min # minimum waist voltage
    float32 bus_volt_min # minimum bus voltage

    # version information
    string software_version # software version
    string hardware_version # hardware version

    # battery status information
    float32 battery_voltage # battery voltage information
    float32 battery_current # battery current information
    float32 battery_power # battery power

3. Emergency Stop Button Status

  • Description: Get emergency stop button status information. The reporting frequency is 1Hz, applicable to all Tienkung Walker series.

  • Control Method: topic

  • Topic Name: /power/board/key_status

  • Type: bodyctrl_msgs::msg::PowerBoardKeyStatus.msg

  • Data Format:

    # @brief Power board key status

    std_msgs/Header header

    # power board status
    uint32 work_time # working time
    std_msgs/Bool is_estop # whether emergency stop is pressed
    std_msgs/Bool is_remote_estop # whether remote emergency stop is pressed
    std_msgs/Bool is_power_on # whether power is normally supplied