CubeSat flight software development with limited access to satellite hardware
Date
2024-12
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Stellenbosch : Stellenbosch University
Abstract
This thesis demonstrates a method of developing CubeSat flight software earlier in the satellite development timeline. Through this method, more time is permitted for testing, optimization and development of a more robust software product. CubeSats consist of embedded subsystems bought as commercial components. Developers are required to integrate these subsystems into a reliable software system. However, procurement is usually done late in the development timeline. In the modern satellite industry, where missions are developed at a rapid pace, little time is left for full system software verification and testing. The proposed solution is the utilization of digital twins to replace physical components during the early stages of development. Through simulation of components in orbit and interfacing them with flight software on an On-Board-Computer (OBC), the software is continuously tested as if the full satellite is available. Flight software is developed specifically for the DockSat mission. While the software is built upon a commercial software framework, it is tailored with additional software architecture to be inherently robust and support mission-specific subsystems. The first three stages of the mission: commissioning, beaconing and detumbling, are chosen for the scope of the thesis. Additional focus is placed on the development of those software structures which are difficult to test without access to hardware. Digital twins are developed for the D2S2 simulation program running on a desktop computer. Various interfacing methods are explored, with the final design utilizing STM development boards to act as data relays between the OBC and the desktop. Digital twins of the antenna system, radio, Electrical Power System (EPS) and Attitude Determination and Control System (ADCS) are developed using the documentation provided by their
manufacturers. Testing the flight software through this method proved to be convenient and time-efficient. The results show the effects of robustness techniques applied to the flight software. It also demonstrates the feasibility and usefulness of simulated components by performing rapid and repeated testing of various orbital scenarios. Due to these results demonstrating complex and reliable satellite operation, this thesis shows that the use of this method is successful in the facilitation of robust CubeSat flight software development.
Description
Thesis (MEng)--Stellenbosch University, 2024.