As a student engineer for UC Berkeley Space Technologies and Rocketry (STAR), I contributed to a team of 15 undergraduate student engineers focused on launching the team's first liquid rocket, ALULA. In my role as an avionics engineer, I was one of the responsible engineers for ALULA's State Machine, which was critical for static-fire (hotfire) and launch operations. The goal of this State Machine was for mission operations, data collection, and acted as the main communication system for the ground and flight vehicle avionics systems. The State Machine is built with an Arduino framework utilizing ESP32 and custom-made PCBs programmed in C++ and Python.
The State Machine is the main communication link between the ground and flight vehicle systems, with respect to avionics and propulsion. The physical system is a plastic box which encases an ESP32 (COM Board) with crimped wires running through a protective sleeve to the MOSFET system, which is linked to the ground and flight systems themselves.
The system has 8 total states and after each state is actuated, there is a status light that displays completion of actionable tasks within that state. The first state is the ARM state, which prepares the system for hotfire and launch procedures to begin. When the switch is flipped, a component on the MOSFET board is actuated and this sends a request to the ground systems DAQ board to arm the system. Once the sensors are reset and the vehicle is in a steady state, the user can flip the PRESS switch and wait for the status lights to glow. During this state, the Liquid Oxygen (LOx) and Ethanol (ETH) tanks are filled to a desired pressure for procedures to safely and effectively take place. Within the ground systems avionics, there are respective sensors that measure system temperature and tank pressure, such as thermocouples and pressure transducers (PT). When these sensors report safe values, the status light for each tank illuminates (3 and 4), indicating the system is ready to proceed. State 5 is referred to as Quick Disconnect (QD). During this state, the COM Board sends a command to the DAQ board for the ground systems to release the tank fill lines by releasing the linear actuators. This mechanical system closes the tank valves and prohibits further filling by releasing the fill lines themselves, eventually falling on the ground. Once these states are completed, the flight vehicle is ready for static-fire or launch, and the ignition stage can begin. When state 6 (ignition) is initiated, the vehicle ignites it's engine and in state 7 (mains), the rocket performs its final function of either a static-fire or launch. It is important to note the abort state, which is actuated at the instant the red button is pressed. If the procedure must be aborted due to an anomaly or emergency, the operator can press the abort button which will reset the system to "unarmed" and abort all functions. This safety measure was implemented in the case of an emergency or sudden anomaly, which could happen at any moment during the testing and launch phases.
In addition to this physical system, there is a live data plot of the data being read by the various onboard sensors throughout the flight vehicle and ground systems components. This is beneficial during testing and launch as it provides the operator with live feedback of the system, alerting the operator if an anomaly occurs.
The system architecture reflects the overall view of the system component interactions. The State Machine has a COM (communications) board which talks to both the Propulsion Ground Systems and the Flight Vehicle. The ground systems house a suite of sensors and have full authority over the propulsion system from a loading and release perspective. The ground system also has its own COM board to communicate stored and live data of the system, which is stored on the DAQ (data acquisition) board. The flight vehicle houses its own suite of onboard sensors, the onboard propulsion system, and flight computer which transmits and receives data (COM and DAQ). This is essentially a 3-way communication system which between the state machine, ground systems, and flight vehicle which provides live feedback and inputs in the form of status lights.