Skip to main content
Version: ROS 2 Humble

Warthog Maintenance


Battery and Charging

Overview

Warthog contains a 48 V lead-acid battery pack, consisting of four 12 V lead-acid batteries, or a LiFEPO4 battery pack, consisting of four 118 Ah 12.8 V batteries connected in a 4S1P configuration with a single Battery Management System (BMS) control unit. Battery configuration may vary with each unit. In order to maximize performance, it's important to ensure that the battery level across each set of lead-acid or LiFEPO4 batteries is within 0.1-0.2 V. If the batteries exceed this tolerance, it's advised to charge them to within tolerance before wiring these packs in parallel. The overall battery life will vary depending upon the usage of the unit. The typical lifetime of a lead-acid battery pack is approximately 250-300 charge/discharge cycles, depending on the depth of discharge.

Battery Management System

note

If your Warthog is equipped with a lead-acid battery pack, you can ignore this section on the Battery Management System.

note

Your charger must be disconnected completely from the Warthog when not charging the unit. Leaving the cable plugged into the Warthog enables the BMS system to be powered on fully even when the robot is off, which will cause the batteries to be drained to an over-discharged state.

If your Warthog is equipped with a LiFEPO4 battery pack, it is also equipped with a single Battery Management System (BMS) control unit. The main function of the BMS is to:

  • Protect the individual modules from being overcharged or excessively discharged.
  • Protect the modules from operating outside of their acceptable temperature range.
  • Provide status information to higher level systems via a CAN interface.
  • Provide independent system management without a higher level control system.
  • Provide status, warning and error messages from each of the modules connected to the battery power system.
  • Control the charging operation.
  • Perform module to module balancing of the system, the battery module will control cell balancing within itself.

There is a main power contactor which is controlled by the BMS unit and is placed in such a way that it controls all power to the system. Upon turning on the main disconnect switch:

The BMS powers up first and begins communicating with all of the battery modules in the system.

  1. If they are all present and have no errors the BMS will close the main contactor and allow the Warthog to power up as normal, this process can take a few seconds before the main contactor closes.
    • If all the modules are not present, the system State of Charge (SOC) is too low, or there are errors being reported by any of the modules in the system, the contactor will not close, and the system will not power up.
  2. Similarly, if a user is in discharge mode (the Warthog is in use) and any errors are detected, or if the SOC falls to a cut off point, the contactor will open and remove power from the system to protect the modules.
    • It is not good practice to run the state-of-charge (SOC) to 0%. This will decrease the life of the battery module. In general, keeping the SOC to a minimum of 30-50% can increase the lifetime of the batteries.
    • As a note, the system SOC is identical to the module with the lowest SOC in the system, so if three modules are at 45% SOC, and one module is at 25%, then the SOC of the system is 25%, and the BMS will act accordingly cutting off power to protect the module with the lowest SOC. Cell balancing and proper charging techniques are important to maintaining good battery health.
  3. The Warthog can be charged when the unit is powered and running, and can also be charged when the unit is not powered (main disconnect switch is open).
    • The charger has been configured and wired in a way that the BMS is actually controlling the charger and can turn it off, and on, depending on the status of the charging cycle.
    • Even though the unit can be charged while running, this process does not allow for proper cell balancing to occur. It will allow for bulk charge to occur to regain most of the charge in the system, however, repeatedly charging in this manner will allow each module to become out of balance with the other modules. If this process if followed long enough the SOC values for each module can vary by a substantial amount. The larger the variation, the longer it will take to fully balance the system. Therefore it is recommended (depending on use) that at least once every two to three weeks that the system be completely charged while the main disconnect switch is in the off position. Doing so will allow the BMS to go through an equalization phase where the charger is being turned on and off by the BMS to balance the voltages across each cell layer, in each module across the system. This is a very important step in maintain battery health, and getting the maximum lifetime out of the battery system.
    • Refer to BMS ROS Topics to view the necessary topics through the ROS API.
  4. To allow for this level of control there are three contactors in the system:
    • The main contactor for discharge of the system.
    • The charge contactor to connect to the output of the charger.
    • The charge control relay to turn the charger outputs on and off and control the cell balancing or equalization phase of the charge cycle.

BMS ROS Topics

note

If your Warthog is equipped with a lead-acid battery pack, you can ignore this section on the BMS ROS Topics.

The table below shows topics that will be very useful in monitoring battery health, as outlined in the section above.

TopicPurpose
/bms/system_statusPrimarily to view state_of_charge (%)
/bms/system_measurementsPrimarily to view battery_system_current (A)

Note that the battery_system_current topic will be positive when the batteries are charging, indicating that current is flowing into the batteries. The lights on the charger unit itself will also indicate when the device is charging.

To Connect the Charger

  1. Plug in the charger DC output cable (heavier gauge cable).
  2. Plug in the charger auxiliary control cable. (Note: Only relevant to Warthogs with LiFEPO4 batteries.)
  3. Plug the charger into AC power (directly to the wall outlet, no extension cords).
  4. This can be done with or without power on Warthog being on (however the note above applies: at least once every 2-3 weeks, the charge process needs to be allowed to fully balance the system).

To Disconnect the Charger

  1. Unplug the charger from AC power.
  2. Unplug the charger auxiliary cable.
  3. Unplug the charger DC output cable (heavier gauge cable).

Battery Pack Specifications

Key battery system specifications are listed in the table below.

SpecificationMeasurement
System Voltage ( nominal )51.2V ( up to 59 V while charging )
System Capcity118 Ah
System Energy6.041 kWh
Continuous Discharge Current150 A
Peak Discharge Current ( 30 sec )300 A
Discharge Temperature Range-10 °C to 50 °C
Charge Temperature Range0 °C to 45 °C

General Battery Safety and Maintenance

Always exercise caution and observe the following safety practices when connecting, disconnecting or handling batteries:

  • Batteries are high voltage, high current.
  • Batteries must be properly fastened down to ensure they do not move when the Warthog is in operation.
  • Ensure that the batteries are evenly distributed throughout the Warthog to maximize stability.
  • Battery levels on the unit should be checked on a regular basis. It's important to maintain the battery voltage at a suitable level for proper operation.

Long-term Storage

When storing Warthog for long periods of time, it's important to properly maintain the batteries to fully maximize their life. Consider the following procedure when placing Warthog in long-term storage:

  • Fully charge Warthog, turn it off and put it into storage. Once a week, connect power to the charger and allow the charger to top up the battery for an hour or so.

Please contact Clearpath Robotics for additional information about Warthog's batteries.


Tracks Upgrade

If your unit came equipped with the tracks upgrade, please keep the following considerations in mind:

  • The tracks drive units pull considerably more current to operate. It is advised to operate a Warthog with tracks at reduced speeds, either through ROS commands or by reducing the speed scale when operating with the Futaba controller.
  • Due to the increased drive current, expect lower battery life than a wheeled Warthog. It is recommend to drive at reduced speeds to increase battery life.
  • It is possible to trigger an over current error in the motor controller by increasing speed drastically shortly after resetting a stop condition. The system's body lights will seem as if the unit is ready to drive, however it will not respond to drive commands. To clear this state, simply cycle another stop condition, and ramp up speeds slower.

Software Maintenance

Getting New Packages

note

If you are upgrading your robot from an older version of ROS, please refer to our upgrade instructions for upgrading to Melodic, Noetic and ROS 2 Humble.

Clearpath Robotics robots are always being improved, both its own software and the many community ROS packages upon which it depends! You can use the apt package management system to receive new versions all software running on the platform.

Each robot leaves the factory already configured to pull packages from http://packages.ros.org as well as http://packages.clearpathrobotics.com. To update your package and download new package versions, simply run:

sudo apt-get update
sudo apt-get dist-upgrade

MCU Firmware Update

caution

Accessing Warthog's MCU requires access to several hard-to-get-to parts of the robot. Unless absolutely necessary, we do not recommend re-flashing the robot's MCU firmware.

You need to use an external computer to update Warthog's MCU firmware. You cannot use Warthog's Onboard Computer, as installing the firmware requires power-cycling the MCU. Warthog's MCU controls the power supply to the Onboard Computer. These instructions assume the external computer is running some flavour of Linux with access to Clearpath's ROS packages.

caution

Before flashing firmware, place your robot up on blocks or disengage the drivetrain. Firmware loading does not usually result in unintended motion, but it is safest when off the ground.

1. Download the Clearpath Firmware package from the Clearpath package server

On an external computer, run the following commands:

sudo apt-get update
sudo apt-get install ros-humble-clearpath-firmware

2. Prepare the Robot

note

Platforms with an Ethernet connection to the MCU have the option of flashing over USB or Ethernet. If you are updating to ROS 2 Humble for the first time, you must use USB. If you are updating ROS 2 Humble firmware to a newer version, using Ethernet is recommended. Skip this step if flashing over Ethernet.

The W200 MCU is located on the underside of the metal frame over the top of the computer.

W200 MCU
W200 MCU labels
  • The RST button, used to reset the MCU.
  • The BT0 button, used to enter the USB bootloader mode.

Place the W200 MCU into bootloader mode

While pressing BT0 on the MCU, connect the external computer to Warthog's MCU using a USB cable.

3. Flash the firmware

Run the Clearpath firmware flash tool:

source /opt/ros/humble/setup.bash
ros2 run clearpath_firmware flash

Select your platform, then select which method of flashing you would like to use.

caution

Do not turn the robot off or unplug the cable while flashing firmware. If an error occurs while flashing, you can attempt to flash again over USB.

4. Place the robot back into normal operating mode

note

If you flashed over Ethernet, skip this step.

Press the RST button. The MCU should enter regular operation.


Support

Clearpath is committed to your success. Please get in touch with us and we will do our best to get you rolling again quickly: support@clearpathrobotics.com.

To get in touch with a salesperson regarding Clearpath Robotics products, please email research-sales@clearpathrobotics.com.

If you have an issue that is specifically about ROS and is something which may be of interest to the broader community, consider asking it on https://robotics.stackexchange.com. If you do not get a satisfactory response, please ping us and include a link to your question as posted there. If appropriate, we will answer in the ROS Answers context for the benefit of the community.