4. Primary Reason
● Reliable way to safely measure tank pressures
while preparing for a test or launch.
○ Reliable power management
○ Wired connection to bunker
Secondary Reason
● To demonstrate the ability to collect data
during flight.
○ 9-axis Inertial Measurement Unit, paired with
Pressure Data.
● To be adaptable to future rocket designs.
Purpose
FRONTBACK
5. Features
● ARM Cortex M0 Based Atmel Micro
○ Dual 3.3V/5V Power Supply
○ 2 16-Bit Sigma Delta ADCs
○ CAN Controller/API
○ RS-485 Controller/API
● microSD Card
● CAN Transceiver
○ Possibility of feature expansion
● RS485 Transceiver
○ Long Distance Wired Communication
● 3S LiPo Power Source
○ Pressure Transducers and PCB can be
powered off the same battery.
● BNO055 IMU for in flight data acquisition
● Low Power
● Lightweight (1.6 Ounces Battery+PCB)
6.
7.
8. MSP-300 Pressure Transducer
● 100-10,000 PSI Range
● Identical in usage and output to previous PTs, just
smaller and lighter
● 1-5V Output Range for ADC(Reason for Dual Power
Supply MCU)
● 8-30V Supply Range (Reason for 3S LiPo)
● 16-bit ADC allows for ~0.1 PSI Resolution on 5K PT
BNO055 Inertial Measurement Unit
● Allows us to collect 3-axis accelerometer, gyroscope,
and magnetometer data. Totaling to a 9-axis IMU.
● Outputs quaternion data for easy analysis
● Can be magnetically calibrated to the rockets
structure ahead of time.
● Tons of configuration options
● Low-power optimizable
Sensors
9. Considerations
● Highly Conservative Estimates
● “Really High” is a worst case scenario.
● “Realistic High” was estimated as a high-typical load.
● Picked reasonably conservative values from each datasheet
● Estimation ignores firmware optimization, idle modes, and
also includes 1 extra pressure transducer.
● 11.1V 450mAh LiPo Battery
Potential Optimizations
● IMU Idle
● SD Card Idle
● CAN Idle(Already Part of these estimates)
● Firmware(Above estimates assume very high
CPU utilization)
Power Estimations
10. Firmware
● FreeRTOS
○ Real-time Operating System
○ Easy configuration and API
○ Real-time guarantees are not strictly
necessary here, however it makes task
management trivial.
○ Small Size allows for entire kernel to fit on
controller
○ Its FREE
11. ● Long Distance Twisted Pair Interface
○ RS485(Half-Duplex)
○ Eliminates the need for power hungry radio,
and therefore a larger battery
○ Long Range, High Data Rates
○ Connects to Analog Control System
○ Sends Data to Bunker
● Serial Wire Debugger
○ Debugging and Programming Port
○ Once flashed, controller can be treated like a
black box.
○ Will start executing tasks as soon as it is
powered on.
Interface
13. Analog Control System
● All bunker commands will be sent using the ACS
● Device consists of:
○ Custom PCB
○ Raspberry Pi
○ Arduino
○ 7V DC power supply
○ 14 toggle switches
○ 1 abort button
○ 3 safety switches
○ 2 display screens
○ 15 state LEDs
○ 1 volt meter
14. Analog Control System
● Designed to be highly configurable/easy
to access
● Three removable plates
1. Display plate
2. Back plate
3. Front plate
● All components interior to ACS will sit
on a removable acrylic plate
1
2
3
15. Analog Control System Layout
1
2
3
5
1. Display
2. Toggle Switch
3. LED Indicator
4. Abort Button
5. Key Switch
4
16. Analog Control System PCB
● Printed Circuit Board Design
○ 3 different versions
1. KiCAD
2. Altium v.1
3. Altium v.2
○ Relays are actively grounded
○ Switch needs to be placed
between signal and ground
○ PCB manufacturing choice:
OshPark
○ JST connectors for I/O pins
○ Ethernet connectors for long
distance signal transmission
KiCAD
Altium v.1
18. Analog Control System PCB
Ethernet 2 pin JST
Purpose: Organize ACS
interior circuit so that it
is both easily
replaceable and reliable
Switch connectors
LED connectors
19. int LOX = 12;
int CH4 = 11;
int IGNITION = 10;
int LOX_s = 7;
int CH4_s = 6;
int LAUNCH_s = 5;
int vLOX;
int vCH4;
int vLAUNCH;
void setup(){
pinMode(LOX, OUTPUT);
pinMode(CH4, OUTPUT);
pinMode(IGNITION, OUTPUT);
pinMode(LOX_s, INPUT);
pinMode(CH4_s, INPUT);
pinMode(LAUNCH_s, INPUT);
digitalWrite(LOX, HIGH);
digitalWrite(CH4, HIGH);
digitalWrite(IGNITION, HIGH);
}
void loop(){
vLAUNCH =
digitalRead(LAUNCH_s);
vLOX = digitalRead(LOX_s);
vCH4 = digitalRead(CH4_s);
MPV and Spark Ignition Relays
Simple Arduino code to turn on ignitor and actuate valves with time delay
if (vLAUNCH == HIGH) {
digitalWrite(IGNITION, LOW);
delay(1000);
digitalWrite(CH4, LOW);
delay(250);
digitalWrite(LOX, LOW);
}
if (vLOX == HIGH) {
digitalWrite(LOX, LOW);
}
if (vCH4 == HIGH) {
digitalWrite(CH4, LOW);
}
else {
digitalWrite(LOX, HIGH);
digitalWrite(CH4, HIGH);
digitalWrite(IGNITION, HIGH);
}
}
20. Relay Station Circuit Diagram
4 step safety routine:
AC Power Switch, Safety Switch, Safety Relay, ACS Key Switch
21. Relay Station Pelican Case
iM2370 Storm Case
● Interior: 18.20" × 12.10" × 5.20"
● Watertight, crushproof, and dustproof
● Two Press & Pull Latches
● Two Padlockable Hasps
● Double-layered, Soft-grip Handle
22. Relay Station CAD
DIN rail connectors
3 pin bulkheads
Raspberry Pi
Ethernet bulkheads
Relays
Power supply
bulkhead 24VDC supply
Relay Station PCB
Pelican case
23. REDS
Rocket Emergency Depressurization System
In the shared valve scenario, there needs to be a seperate connector into the
rocket specifically for REDS. Vent valve lead wires will be spliced in boat tail
area and attached to both the Umbilical and REDS connectors. This will be done
using a simple PCB with inline diodes attached to the REDS connector and a
simple passthrough for the Umbilical connector.
REDS (P1)
connector
Altium
24. Harness Connections to Rocket
Specs:
● 13A capacity
● 12 pins
● Dimensions: ½” by ½”
● McMaster: 6168T79
Pinout:
1&2: LOX VENT
3&4: CH4 VENT
5&6: DATA
7&8: LOX MPV
9&10: CH4 MPV
11&12: AUX
25. Harness Overall Structure
1: Connection to exterior. 12 pin connector, 10 currently populated
2: VV leads split off to REDS connector, MPVs connected to initiators, fill solenoids connected
3: CH4 Vent splits off main line.
4: LOX Vent splits off
5: Data lines terminate at board
Lox Tank Passthrough CH4 Tank Passthrough
2 data wire = 0.132” diameter
+
2 Lox Vent wire = 2*0.132”
~0.4” diameter total
2 data wire = 0.132” diameter
+
2 Lox Vent wire = 2*0.312 =
0.264”
+
2 CH4 Vent wire = 2*0.132”
0.264
~0.66” diameter total
29. Relay Station:
● Relay max current: 10A
● Power source max current: 5A
● Solenoid max current draw: 0.1A x 5
● Clark Cooper vent valves: 1A x 2
Max current draw: ~2.5A
Analog Control System:
● Relay activation current: 70 mA x 12
● Diode activation current: 30 mA x 12
● Power source max current: 2A
Max current draw: ~1.2A
Power Constraints
Ignitor System:
● Spark ignitor max current: 4A
● Power source max current: 6A
Max current draw: ~4A
31. Software will display:
● Helium system
pressures
● Rocket tank pressures
● Overpressure warnings
● Breakwire read
● IMU data
● Tank weight
Software
*Test Stand PyQt Example