High Altitude Balloon - Pigeon Alpha 2

2018-07-28 — Viraj Shah


Table of Contents


Introduction and Purpose

Top

Pigeon Alpha 2 was a high-altitude balloon project in which the primary goal was to get video footage of Earth at a high altitude. Additional goals were to use this as a learning experience to design and layout a custom printed circuit board (PCB) and to gather temperature and pressure data in the upper atmosphere. I did not optimize for other variables like altitude, camera stability, or mass.

All files and resources are linked throughout and at the end of this article.

I welcome any feedback, suggestions, ideas or questions. You can contact me via the comment section below or at my email. [this website’s name (no spaces)] at [google’s mail service] .com


Flight Data and Results

Top

The flight was a success. I obtained footage, temperature, pressure, and altitude (via the pressure) data. Here is a video of different parts of the launch:

Click here to see a short time-lapse video of the setup.

Here are some stills:

Flight Still #1
Flight Still #2

Flight Still #3
Flight Still #4

The following is the data gathered by the flight computer:

Flight Temperatures

The temperature got all the way down to -40degC and when sitting in the sun got to north of +40degC. The two thermistors on the inside are always lagging the external one. It is interesting to note that the thermistor on the battery pack reads warmer than the board temperature on the pressure and altitude board.

The external thermistor is much noisier because it is in contact with turbulent air, even though I did tape it down to the enclosure. The lowest temperature doesn’t correspond to the peak altitude. It looks like the second local minimum is a result of the descent back down to the altitude where it is the coldest (~14 km). You can see evidence of the increasing noisiness with increasing altitude (and turbulence) and the coldest temperature occurring around ~14km in the graph below.

Flight Temperatures vs Altitude

Flight Pressure

Flight Altitude

The pressure data is pretty clean but it is surprising to see the calculated altitude barely passes 17km when the predicted peak was ~24km. All flight data would suggest that the predicted values were correct (i.e. time of flight, location of landing, etc. were all pretty spot on). I’d like to dig deeper into how the calculation is done to map pressure to altitude on the MPL3115A2 chip. It seems like there is a piecewise function of some sort as indicated by the four jagged steps (each pair occurring at a specific altitude).

Flight Battery Voltage

This is the loaded battery voltage as read from a 1:1 voltage divider. I did not charge the battery to full capacity (~2*4.2V= 8.4V). The massive dip down to ~7.7V was when I plugged in the serial connection from my laptop to monitor the data logging. The voltage steps roughly correspond to 10mV which is the resolution (10 bit ADC means 5V/1024 = ~5mV resolution, but with a 1:1 voltage divider, it is 2x this value). The oscillations between each step are due to the least significant bit flipping before settling to the lower value. Finally, the loaded voltage drops between 80 and 100 minutes likely due to decreasing cell temperature and increasing internal resistance.

This link contains the predicted flight path with estimated inputs on ascent rate (~4.28 m/s), descent rate (~5.45 m/s), and maximum altitude (~24 km). These are based on the balloon (350g), payload + parachute mass (855g), and positive lift of 500g using this calculator.


Pigeon Alpha 1 — Lessons

Top

The 2 in the name suggests that it was preceded by 1. Pigeon Alpha 1 was the first attempt. While the launch and recovery of this payload was successful, I did not obtain footage or flight data.

Issue #1 – The button on the top of the camera was inadvertently pressed when I was loading the insulation and closing up the payload. The camera got about 8 seconds of footage and stopped recording before it even got off the ground. I didn’t encounter this issue during my freezer tests at home because I didn’t place insulation into the enclosure in those tests.

Issue #2 – The flight computer was hacked together on a perf board using breakout boards from various suppliers. The microSD card was not properly seated into the socket.

The following lessons learned and improvements were incorporated into Alpha 2.

PA1 Flight Computer
PA1 Flight Debug

These are the after pictures of Alpha 1 during the debugging process but they still exemplify the chaos in that design.


Payload — Enclosure and Inner Chassis

Top

I wanted the design to be manufacturable, reproducible, and cheap in the event that I had to do this again. I used Autodesk Fusion 360 to create the design and my Lulzbot Mini 3D printer to print the design.

To create the lightest payload possible, I picked the thinnest wall thickness I thought possible that wouldn’t be too flimsy or hard to print. This ended up being 2.75mm at 20% infill.

Payload CAD
Payload Slide
Inner Chassis with Labels

The main design is an external enclosure with an internal “chassis” that slides in and out via keyed features like a hot swappable server rack. I wanted to be able to power on, attend to and set all the devices during pre-flight checks while outside the enclosure for ease of access. Then without having to touch anything else, except for the camera, I could be sure that all devices were as I had set them (e.g. no accidently knocking the SD card out of the socket or ripping out a connector as I placed it into the enclosure).

The battery + flight computer unit was bolted onto the bottom level. The camera, LiPo and Yepzon GPS were on the top, held together via spots of hot glue and Velcro tape. The only difficulty was that I did not account for harness routing (for the thermistors and altitude/pressure breakout board) or strain relief. That proved to be a pain but easily solvable with a little heat shrink and hot glue.

Payload Insulation
Payload SPOT GPS

(Left) In Alpha 1, I shoved in bubble wrap insulation wherever it would fit. For Alpha 2, I had precut insulation above and below the internal chassis. (Right) The SPOT GPS was bolted on the outside of the lid for maximum reception. The key rings are there for rigging lines to the parachute. I used plastic #4-40 bolts to bolt down the lid. I manually tapped the holes.


Payload — Camera, GPS, and Battery

Top

Camera — I used a sport camera, the EKEN H9 camera, that I found online. I connected the camera to a cheap 5V USB Buck converter for charging via an off-the-shelf 2S LiPo battery. This ensured that the camera would stay powered during the entire flight.

Payload-Inner-Chassis-1
Payload-Inner-Chassis-2

Second image from top left to top right: Camera, 5V USB Buck converter, 2S LiPo battery (below), Yepzon GPS (Above)

GPS — SPOT and Yepzon (as a backup). Both ended up working.

Battery — I created a custom 18650 lithium ion battery pack with 2 cells in series. They were connected via tabs that I soldered onto the cell. I don’t recommend this method at all if you can avoid it. Spot or laser welding is the way to go if you have access to such equipment. The top of battery pack had standoffs that aligned with the flight computer holes so that these could be assembled and tested as one unit. I had to manually tap the standoffs. In Alpha 1, most of the wire to wire connections were soldered and heat shrunk. In Alpha 2 I used connectors for everything and it made a huge difference in the ease and flexibility of connecting different components. Charging the pack while it was bolted onto the inner chassis became much easier.

Battery CAD
Battery and Flight Comp CAD
Battery-with-Flight-Computer

I used what I thought was a little bit of Gorilla Glue to assembly everything together. The glue expanded quite a bit. For safety, I recommend leaving room above the 18650 top cap for venting.


Payload — Flight Computer

Top

The flight computer’s main goal was to serve as a data logger for temperature, pressure/altitude, and battery voltage data. I wanted to keep the board simple so that I could complete the design and testing as fast as possible. The board was designed using Autodesk Eagle PCB and manufactured using PCBWay. I was able to reflow components onto the board by using a converted toaster oven. The remaining components (e.g. header pins) were manually soldered.

The following itemizes some design decisions that went into making the board.

Flight-Computer-Front
Flight-Computer-Back
Flight-Computer-Test

(Left) If you look closely, you’ll notice some areas of poor reflow and skewed components but these were eventually fixed not just for aesthetics but for reliability. See the schematic and board layout, linked below, for more detailed information. (Right) The board with thermistors and the altitude/pressure breakout board connected. The board is being powered by the serial connection in this case and not a battery as it would be in flight.

Microcontroller — Atmega328P. The standard microcontroller used on almost every Arduino board.

ICSP — In Circuit Serial Programmer for flashing a bootloader onto the Atmega328P using a Pocket AVR Programmer.

FTDI — a USB to serial IC converter to flash the flight program onto the Atmega328P. The “AUTO-RST” jumper, when shorted, allowed nominal operation of the flashing process. When the connection was open, the FTDI allowed me to monitor the data logging once the board was powered up without the microcontroller resetting. This was useful for pre-flight checks.

Power — a simple 5V linear regulator. A switching regulator would have been better for efficiency but this was a simpler (and thus faster) design. Based on the low power usage of the board and the size of my battery, I did not mind a slightly inefficient power conversion. That additional waste heat could prove useful in the cold upper atmosphere. The unregulated battery power came in via a connector.

Fuse — I added a replaceable 1.5A fuse to protect the battery and board from short circuits on the PCB.

Thermistors — There were two thermistors. One to measure the internal cabin temperature and the other to measure the external temperature.

Pressure (and Altitude) — I used a breakout board from Adafruit that communicates via I2C. I connected it to the flight computer via a 4-pin connector (PWR, GND, SDA, SCL).

MicroSD Card — This part of the circuit was mostly copied from Sparkfun’s breakout board. This circuit contains a 3.3V regulator (to step down from 5V), a level shifter, and a microSD card socket. The card communicates via SPI.

Battery Voltage Sense — There are better ways to do this via dedicated ICs but I used a simple 1:1 voltage divider consisting of two precise 100kOhm resistors to monitor the loaded battery voltage. The battery had a maximum voltage of 8.4V. The voltage divider helped ensure the maximum voltage present at the microcontroller was below 5V.

Heater — The original intent was to have a power resistor controlled by a MOSFET (controlled via a 5V digital output) on board to generate waste heat to keep the cabin temperature up. I left this out as the freezer tests, although not as cold, showed nominal operation. The safe operation in a low convection environment would have taken awhile to validate.

Overall there were minimal issues. The two major issues I encountered were, 1) accidently de-soldering plated through holes, and 2) identifying poor solder connections on the microSD card socket due to bent pins. These were easily solvable but a pain to identify.


Balloon, Parachute, and Flight Rigging

Top

I got my balloon, parachute and flight line from High Altitude Science. I used a 350g latex balloon which seemed like the most manageable size (with 2-3 people on launch day) and a 1m parachute. The flight line was connected to the four corners of the enclosure via key rings. The other four ends were connected to a ball bearing swivel via another key ring. The other end of the swivel connected to the parachute risers. The loop on top of the parachute was connected to the balloon. The length of the flight line in each segment was about one arm’s length to be handleable but also long enough to hopefully decrease the frequency of any induced oscillations. I followed High Altitude Science’s tutorials on filling and tying the balloon.

Payload > Flight Line > Ball Bearing Swivel > Parachute > Flight Line > Balloon

Payload Line Rigging


Pre-Launch Freezer Tests

Top

Learning from Alpha 1, I intended to conduct the freezer test as close to flight representative as possible. The only missing piece was the flight line and parachute. I included insulation, bolted everything down, threw in the GPS units, etc. I also had a pre-flight checklist that I followed to the T as I would and did during launch day. I had to conduct two tests since the first one had one major error.

The camera has two buttons. In Alpha 1, the top button was inadvertently pressed which stopped the recording. In the first freezer test, the power button on the front face of the camera was actually pressed as I butted it up against the enclosure and turned the camera off. I 3D printed a guard for that button.

Camera-Guard-1
Camera-Guard-2


Improvements

Top

Flight Computer — Future designs might include better voltage isolation for the many different voltages present (battery voltage, 5V logic, and 3.3V logic), a switching regulator, and conformal coating (for condensation protection). The flight computer should also perform many of the self-checks that I manually did, like ensuring that the battery voltage and temperature readings are within the predefined, acceptable ranges for flight.

Enclosure — I definitely need to consider integrations for harness routing and strain relief. I’d also like to reconsider joining mechanisms for faster attachment and removal (e.g. using snap tabs instead of nuts and bolts).

Battery — The battery should be more of an independent unit with its own battery management system (BMS), fusing at the battery, and heater for maintaining an operational battery cell temperature.


Potential Future Ideas

Top

Final Thoughts

Top

This isn’t new, groundbreaking, or even technically challenging but it was great fun and a great learning experience. I highly recommend trying it out for yourself.


Acknowledgements

Top

Project Files

Top

Comments

Top