One of CAPSTONE’s purposes was to test new and unproven technologies.
At 7:39 p.m. EST on 13 November 2022, a microwave-sized CubeSat named CAPSTONE completed its sixth engine burn to place itself into a near-rectilinear halo orbit (NRHO) around the Moon. Launched as the first in the Artemis missions on 28 June 2022, the spacecraft spent more than four months journeying to the Moon. The trip was not without perils. Shortly after launch, CAPSTONE stopped responding to mission control due to an ill-formed communication packet. Later, during the third engine burn, a valve in the propulsion system became leaky, causing the spacecraft to lose attitude control and spin up into a tumble. A month of collecting telemetry, troubleshooting, and benchtop simulations resulted in the successful recovery of the spacecraft.
While there are many exciting technologies aboard CAPSTONE, I’m particularly fond of the Stellar Exploration propulsion system. Over the past two years, I’ve worked as a consultant with the Stellar Exploration team to help them design, implement, and test their propulsion controller’s flight software.
The Stellar Exploration propulsion system is an innovative and unique solution in spacecraft propulsion design. Typically, the pumps, valves, and heaters are directly controlled by the flight computer. Stellar Exploration decoupled propulsion control by separating the electronics and flight software for the propulsion system into its own subsystem. As a result, the flight computer could send guidance and control information to the controller, which then managed the pumps, valves, and thermal controls independently. Separating the two facilitates the ability to inexpensively embed intelligence into the propulsion system while freeing up the flight computer.
Flight software (FSW) development for the propulsion system was also innovative and modern. The FSW leveraged a task-based architecture like microservices. This architecture allowed the software to be built and tested off-target in isolation without the electronics. When the hardware did become available, a hardware-in-loop (HIL) bench setup was used to simulate and test all aspects of the system. This setup allowed aberrant conditions to be simulated and to verify that the flight software behaved as expected.
In addition to rigorous testing, the FSW was developed using modern embedded software processes such as test-driven development, thorough code reviews, and static analysis. Any function that reached a McCabe Cyclomatic Complexity greater than ten was refactored into simpler code because simple software is less likely to have defects. In addition, modules and interfaces were carefully designed with specific contracts, allowing them to be unit tested and integrated successfully.
CAPSTONE’s journey to the moon wasn’t without its hiccups, but one of its purposes was to test new and unproven technologies. These technologies have now been tested and lessons have been learned that will improve and enhance their future capabilities. As a result, CAPSTONE now orbits the moon with at least a six-month mission ahead. During this time, CAPSTONE will explore the stability of its quasi-stable orbit and provide positioning around the lunar environment that will be used to keep Gateway (a planned Moon-orbiting outpost that is part of NASA’s Artemis program) and other future spacecraft in orbit around the moon. Stellar Exploration’s propulsion system helped get the spacecraft there and will help CAPSTONE maintain its NRHO orbit around the moon for the foreseeable future.