Power Management

Our satellite runs on the Gomspace NanoPower P31U battery + management unit. It’s an space-rated system built for CubeSats and has an I2C interface that provides nearly complete control over all aspects of the Gomspace’s function. We employ two primary functions: checking the state-of-charge of our batteries and solar power systems, and power-cycling the Gomspace’s programmable outputs when desired.

Configuring Battery Settings

The Gomspace allows us to configure settings of the battery by sending a config packet. The config packet can hold settings for the following:

  • The power point tracking mode

  • Mode for battheater (0 = Manual, 1 = Auto)

  • Battery heater low threshold. The battery will turn the heater on if the temperature goes below this value.

  • Battery heater high threshold. The battery will turn the heater off if the temperature goes above this value.

  • Nominal mode output value

  • Safe mode output value

  • Power point tracking mode for the boost converters

Reading State

The Gomspace provides a housekeeping packet of data that is requested by the satellite on every control cycle. This housekeeping packet contains the following important elements:

  • The battery voltage

  • The total system current output

  • The total current into the system via the solar panels

  • The boost converter voltages. These are the voltages set across the solar panels by the MPPT (maximum power point tracking) system, which adjusts the voltages such that the total power generated by the solar panels (which is voltage x current) is maximized.

  • Output values (on or off), one for each of the six programmable outputs on the Gomspace.

  • Time until power on/off

  • Time remaining on the I2C, GND, and CSP watchdog timers. If this time gets close to zero, the Gomspace automatically resets power on the entire spacecraft in order to try to re-establish Flight Software and Gomspace communication. The intent of this feature is to shake flight software out of any infinite loops or fault conditions that might be causing it to stall.

  • Number of I2C, GND, and CSP reboots

  • Number of reboots of the Gomspace system (and by extension, the entire satellite)

  • Cause of the last EPS reset

  • Mode of the battery (0 = initial, 1 = undervoltage, 2 = safemode, 3= nominal, 4=full)

  • The power-point tracking (PPT) mode (1=maximum power point tracking, 2=fixed). During flight, the PPT mode should be set to 1. While charging the battery, the mode should be set to 2.

  • Temperature of boost converters and onboard battery

  • The status of the battery heater (on or off)

Commanding

The gomspace controller allows us to set the photovoltaic (PV) input voltages, the outputs, the heater, and the power point mode from the ground. We can also reboot the satellite and reset the WDT counters from the ground using statefield commands. The gomspace will only set PV voltages when the Power Point Tracking mode is in Fixed.

Power Cycling

We can power cycle (i.e turn off and then on again) each of the six output channels of the Gomspace battery from the ground by setting statefield commands (e.g gomspace.power_cycle_output1_cmd) to true. Power cycling takes approximately 30 seconds to complete. It can be useful as a fault response. For example, the Quake Fault Handler powercycles the output channel connected to the radio up to three times during communication blackout periods.

DC-DC Converter

A 7-24V DC-DC converter is connected to the Gompace battery and powers the ADCS system, the propulsion system, and the docking system. The ADCS system is connected to the ADCSMotorDCDC_EN pin. The propulsion and docking systems are connected to the SpikeDockDCDC_EN pin. These pins can be enabled, disabled, and reset from the ground using statefield commands. The DC-DC pins should not be disabled except in exceptional circumstances, such a failure in I2C communication.