Publication:
Development/ testing of software for a cubesat for high resolution earth observation in a low earth orbit

Loading...
Thumbnail Image

Institution Authors

Journal Title

Journal ISSN

Volume Title

Publisher

Graduate School

Research Projects

Organizational Units

Journal Issue

Abstract

CubeSats, ranging from 1U to 27U, are small satellites many nations pursue for academic and commercial purposes. The success of their missions depends greatly on the design of their software architecture. Beyond merely achieving functionality and optimal performance, the software must also be resilient to faults and shielded from the effects of radiation, potential failures, and errors. As CubeSats accommodates more advanced subsystems, developers worldwide are exploring agile development methods. Consequently, software development must prioritize three essential factors: Modularization, refactoring, and generalization. This study aims to describe the design, implementation, and testing of software modules of a 16U CubeSat, focusing on its onboard computer (OBC) software. A comprehensive software platform has been developed featuring a flexible architecture capable of supporting a multispectral payload and other subsystems. Multiple studies were done to familiarize the current work with experience from past projects, coding standards, and rules. Three fundamental requirements were derived to ensure software development quality: Concurrent documentation, version control for efficient tracking, and Debug tools support. The mission software has been developed using the Free RTOS Real-Time Operating System for real-time scheduling functionality, inter-task communication, timing, and synchronization. SEU/SEL management is considered for relevant subsystems. The development environment of choice was the Eclipse IDE, with code crafted in the C language. The code architecture is structured around creating libraries for individual subsystems, which serve as building blocks for developing higher-level applications specific to each subsystem. Followed by creating subsystem managers and various operating modes (Initialization, idle, Payload operation mode, etc.) ensuring reliable operation. Finally, a mode manager is implemented which acts like a state machine handling decision-making and switching between operating modes. Additional peripherals like packet routing, housekeeping, timekeeping, data logging, and even power management have been designed to match the mission profile in these modes. Following code development, the subsequent phase involves testing the code on actual hardware. The chosen OBC hardware has 03 interfaces; I2C for housekeeping/telemetry, JTAG for programming and debugging, and UART for development and testing. Testing of the developed code is in process for various subsystems. As future work, implementation of developmental changes is an ongoing process to ensure robustness and reliability.

Description

Thesis (M.Sc.) -- Istanbul Technical University, Graduate School, 2024

Journal or Series

ISSN

ISBN

Rights

Keywords

CubeSats, Küp uydular

Citation

Endorsement

Review

Supplemented By

Referenced By

Related Patent

Related Goal

25
Görüntülenme
130
İndirme
Google Scholar
Scholar'da Ara ↗
Bu yayında DOI yok — Altmetric/Dimensions/PlumX/BIP! rozetleri DOI gerektirir.