High Altitude Balloon Termination

Let us take a minute to explore some of the different reasons and triggers available with the HAB Bounder for high altitude balloon termination. Over the years we have heard a wide variety of reasons from customers why they want to separate their payload from the weather balloon. Some of the reasons surprised us.

I need my payload to land in a certain area

HAB Bounder Flight.kml showing configured geofences in Google Earth Pro desktop with FAA Sectional overlay

This is the most common request we receive and why most people buy a HAB Bounder. Reasons for it include ensuring that the payload is easily recoverable, avoid crossing international borders, and to not land in the ocean. The best solution for this type of requirement is to use the HAB Bounder’s geofence capability.

For most of these cases, simply set a geofence that your flight needs to stay within. The HAB Bounder will only activate its burn-wires if it strays outside of the geofence’s polygon1. An example trigger:

GeoFence:
{
   Remain: inside
   Altitude: -500, 50000
   Waypoint: -121.9215,47.1260
   Waypoint: -121.1568,46.8981
   Waypoint: -118.8595,46.8677
   Waypoint: -118.8301,48.5649
   Waypoint: -120.9871,48.8260
   Waypoint: -121.4517,48.7179
}

I need my payload to not land in a certain area

Another common reason people fly the HAB Bounder it to ensure that a balloon flight doesn’t land in a restricted area. These include places like cities, major airports, and military bases. These are especially important with longer duration flights when the balloon spends lots of time at float.

A common solution for this requirement is to set an exclusion geofence. The HAB Bounder will only activate its burn-wires if it strays inside of this geofence’s polygon. Typically these have a lower max altitude, so the balloon can transit across the top of the region if it is already at a safe altitude. An example trigger might look like the following to avoid flying over the Wenatchee airport at a low altitude:

GeoFence:
{
   Remain: outside
   Altitude: -500, 15000
   Waypoint: -120.5889,47.2148
   Waypoint: -120.0118,47.1967
   Waypoint: -119.9900,47.5559
   Waypoint: -120.5841,47.5647
}

Note: the HAB Bounder supports both multiple termination commands and the ability to logically compare multiple conditions in each command. So it is possible to set multiple geofences of different types to achieve reliable high altitude balloon termination. For example, the two geofences above can be combined into a single command.

I do not want the HAB Bounder to activate if the balloon bursts

This requirement stems from a customer’s desire to hold onto the balloon inflation nozzle (ex. Woffin) in the event of a premature burst. This helps reduce launch costs and unrecoverable flight waste.

A ‘Disarm’ condition is added to the terminate Command to satisfy this post-burst event requirement. The variable, Position.VerticalSpeed2, is the HAB Bounder’s ascent rate from the GPS sensor. Once your payload starts free-falling faster than -30 m/s then the associated terminate command is disabled. Example code:

High Altitude Balloon Termination Data Plot of Ascent Rate in m/s
Disarm:
{
   Compare: Position.VerticalSpeed  < -30
}

I want the HAB Bounder to activate if the balloon bursts

Some people would like to make sure any burst balloon remnants are cut-away from the payload upon descent. This is done to ensure that the balloon remnants don’t interfere with a camera view or science experiment, or to ensure the parachute doesn’t get tangled by them

Using similar logic to the previous requirement, this one is solved by setting a condition using the vertical speed (GPS sensor) or rate of pressure change (pressure sensor). In this case we use it to trigger a command instead of disarming it. Example code:

Trigger:
{
   Compare: Position.VerticalSpeed < -30
#   Compare: Ambient.PressureRate > 20
}

I do not want the HAB Bounder to activate if it is on the ground

This requirement stems from a desire to avoid activating burn-wires on the ground. While it is unlikely that the burn-wires would start a fire while the HAB Bounder is safely contained within its foam enclosure, some users would like to be extra cautious.

There are a couple of different ways to achieve this depending on what your flight profile will be and what other triggers are used. One way is to arm the command above a certain altitude and disarm it below that same altitude. But we should first discuss how the arm condition works. The arm condition causes the command to be re-arm as long as the arming condition is met. In other words, the command’s actions can be repeatedly executed, such as the burn-wires repeatedly activating. Re-arming is frequently a useful feature.

Another way to achieve this requirement would be to make a complex disarm condition. In this case you could have the command disarm once the HAB Bounder is below a certain altitude, after a set amount of time. The logic being that the set time delay would provide ample time for the flight to ascend beyond the threshold altitude before the command could be disarmed. But this assumes nothing goes wrong during inflation and ascent.

An improved solution for the complex disarm condition would be to use vertical speed instead of the set time condition. In this case you set the command to disarm once the HAB Bounder is below a certain altitude, but only if it is moving downward. This ensures it isn’t disarmed before launch or during ascent. But care needs to be exercised with this solution when excessive turbulence is expected at low altitude as it could prematurely disable this command. Example code:

Disarm:
{
   AndCollection:
   {
      Compare: Position.Altitude < 5000
      Compare: Position.VerticalSpeed < -5
   }
}

Other High Altitude Balloon Termination Requirements

We can not provide examples to cover all possible termination requirements for the HAB Bounder. But please feel free to ask if you have questions on how to configure your HAB Bounder!

  1. Each geofence can have up to 128 waypoints so complex polygons are possible ↩︎
  2. On HAB Bounder firmware before Sept 2023 this variable was Position.AscentRate1 ↩︎

Leave a Comment

Your email address will not be published. Required fields are marked *