Liquid Rocket Engine

People: Ford McClure, Julian Costas, Jackson Stearns, Alex Guschulack, Ethan Derikito


During my Bachelor's I built a rocket computer engine for Northeastern's rocketry division, AerospaceNU.

Ford lead the group and coordinated the engine tests. Jackson and Julian were responsible for all fluid flow and combusion calculations. Ethan, Julian, and Alex built the rocket test stand.

I was brought on to develop the rocket computer. The test stand had a liquid oxygen tank, a liquid nitrogen tank, and a motley of control valves, check valves, pneumatic actuators, thermocouples, and Venturi flow meters. Finally at the center was a miniscule but adequate Phidget brain.

A rocket computer should do many things, but the minimum viable product was a programmed firing sequence in line with Jackson's combustion calculations. The logical structure of the computer is, of course, a state machine. In all circumstances the rocket needs a fail-safe transition.

We have two independent computers who talk to eachother: the rocket computer, and the controller. The control software had to be sufficiently reliable to take data for several hours, but less than a day, and resilient to data transmission failures. The control software should absolutely never reset the state machine under a data transmission failure, nor under a complete restart of the controller host. The rocket computer is the authority as to what state it should be in.

That still leaves a design issue with the rocket computer. We decided that the state would be deductively determined. Rather than setting a meagre variable in software to claim that the rocket is in a particular state, the rocket computer deduces what state it is apparently in depending on its own measured data from the transducers, thermocouples, and Venturi valves. With a well-designed state machine, this permitted the rocket computer to crash, restart, and resume its place in the firing sequence without controller intervention.

The telemetry bottleneck is the time required to sample all instruments, so there was little time left to deliver the actual data. As such, the data structures were designed to be low-level and quickly parsable.