Microcontroller Driven Weather Balloon Payload Measuring Ozone Concentration In Lower Stratosphere
This is the .stl for the gimbal we made for the Spot Personal Tracker to keep it upright during the flight
The goal of this project is to launch a balloon containing a payload that uses various sensors powered by an Arduino Mega to record variables from the environment at 100,000 feet. The program writes the outputs of all of these sensors to an 8 GB SD Card on the Arduino Mega itself. The Arduino Mega uses a solar panel to recharge its battery.
See pictures and more on the GitHub pages website: http://sameetandpotatoes.github.io/ArduinoWeatherBalloon/
This project was added on this repository for a weather balloon that takes pictures every ten seconds.
This project is run annually by WPI students, each year's team making a payload to be flown attached to a helium balloon and base station to receive data from it during flight. The main purpose of this project is to monitor the presence of greenhouse gases, the ozone layer, and intensity of UV light, but also to safely retrieve the payload once the helium balloon pops mid-flight. My main task on the team was to develop the code for the payload, which consists of an Arduino, Raspberry Pi, and various sensors and modules.
Hey everyone!! You’re probably wondering, wait, you can send an Arduino to space? Almost. Using a weather balloon, you can send an Arduino, camera, garlic bread, or anything else you want to a third of a way to space! Even though it is a third of the way to space, almost 99% of the atmosphere isn’t present, so we call it “the edge of space.” This guide is super long, but unless you are just checking this project out, make sure to read everything until Path 1. Anyways, let’s get into how you can do this.
There are going to be three paths for you to follow based on what you want and your skill level. All three pathways will require some soldering skills due to the incredible winds up in the stratosphere. Each path isn’t better than the other in anyway, its just based on what you are interested in. Let’s quickly go over them.
Path 1: Creating a simple data logger using a proto board, various sensors, with little soldering skills.
Path 2: Using a predesigned PCB shield (printed circuit board) to have a clean awesome looking board, designed and tested by us.
Path 3: Make your own PCB in a program. This guide will not go deep into how to design and make your own PCB , but it will go over some guidelines for you to think about. I will make sure to link some awesome guide for you to learn from.”
Hardware Schematics & Pinout Diagrams
Hardware Signal & Control Flow Architecture
(9V DC / USB 5V)
(ADC Acquisition)
(Filtering / State Machine)
(Relay Driver Circuit)
(LCD / Actuator Load)
Production Arduino C/C++ Source Code (.ino)
[*] Initializing Hardware Core for Microcontroller Driven Weather Balloon Payload Measuring Ozone Concentration In Lower Stratosphere... [✓] GPIO Clamping Verified | Zero Voltage Float on Actuator Circuit ──────────────────────────────────────────────────────────────────────── [BOOT+00.02s] ADC_INIT Calibrated zero-offset = 12 mV (Clean noise floor) [RUN +01.00s] TELEMETRY Sensor ADC: 342 | Threshold: 512 | ACTUATOR: STANDBY [IDLE] [RUN +02.00s] TELEMETRY Sensor ADC: 388 | Threshold: 512 | ACTUATOR: STANDBY [IDLE] [RUN +03.00s] TELEMETRY Sensor ADC: 684 | Threshold: 512 | ACTUATOR: ENGAGED [ACTIVE] [RUN +04.00s] INTERRUPT Optocoupler PC817 saturated | Actuator Active in 4.2 ms [RUN +05.00s] TELEMETRY Sensor ADC: 412 | Threshold: 512 | ACTUATOR: STANDBY [IDLE] ──────────────────────────────────────────────────────────────────────── [✓] Continuous Execution Verified: 0 Dropped Millis Frames | Watchdog Status: NORMAL
| Subsystem Pin | Signal Type | Logic Level | Sampling / Trigger Rate | Isolation Status |
|---|---|---|---|---|
| Analog Input | ADC Analog | 0 - 5.0V / 3.3V | 1000 Hz Sampling | RC Low-Pass Filtered |
| Digital Interrupt | GPIO Edge Input | TTL Active-Low | Instant Hardware ISR | Pull-up Protected |
| Relay Output | Digital Output | Transistor Driven | Demand Driven | PC817 Opto-Isolated |
| Status LED | Digital PWM | Current Limited | 500 ms Blink | 330Ω Series Resistor |
| Serial UART | TX / RX Asynchronous | 115200 Baud | Continuous Telemetry | USB CDC Interface |