Flight Computer
From Makers Local 256
Creator: |
Contents
[hide]Overview
This is a flight computer meant to go into a rocket. It is based on an Arduino micro-controller and will eventually be quite fancy.
Current Status
Spiral 1 - Design
I have a borrowed Arduino Uno board and just ordered two pressure sensors (so I can break one by accident later). The idea is to use a spiral development model to incrementally increase the features and capabilities of this flight computer.
See the Future Design Section below for the breakdown of the spirals.
Current Design
Hardware
Software
- Not yet done
- Since the pressure sensor uses the SPI interface, I am using the SPI library for the Arduino
Future Design
Components/Features
- Atmospheric Modelling
- Inertial Measurements
- Accelerometer
- Roll Measurements
- GPS
- Parachute deployment
- Telemetry
- Control via Bluetooth/Wifi
Knowledge Points
- Data Logging
- Communication with a ground station (telemetry)
- Communication with a cell phone controller
- GPS
- Flight state sensing
- Control Algorithms
- Simulation Platform
Spiral Details
- Spiral 1:
- Make atmospheric measurements by recording the static pressure and converting it to an associated altitude measurement
- The SCP1000 Pressure sensor also measures temperature so this improves the accuracy of the measurement
- Spiral 2:
- Spirals 2a and 2b can be done concurrently and I have not prioritised these
- Spiral 2a:
- Measure 3-axis acceleration and 3-axis roll rates to form a full Inertial Measurement Unit
- This step will most likely include some sort of Kalman Filtering
- Spiral 2b:
- Use the altitude measurement (and the IMU measurement) to trigger other events based on the different stages of flight
- This includes deploying the drogue parachute at apogee and the main parachute at some present height above ground (typically 500 ft to 700 ft)
- Spiral 3:
- Add GPS measurements into the mix.
- Spiral 4:
- Telemetry. This will be the hardest step as I know the least about RF.
- Spiral 5:
- Remote status, arming, etc.
- I want to implement this in Android such that the remote for this functionality is a cell-phone but the general idea is to make is as easy and portable as possible so several different platforms will be looked at (Blackberry, iOS, Palm). (Reminder to self: this is a good place to learn C++ and Android programming)
- Spiral 6:
- Things I haven't thought of yet.