Please use this identifier to cite or link to this item:
https://etd.cput.ac.za/handle/20.500.11838/4253
Title: | An investigation of an algorithm for error detection and correction in transceivers for nanosatellites | Authors: | Sivate, Themba | Issue Date: | 2024 | Publisher: | Cape Peninsula University of Technology | Abstract: | One of the biggest problems faced by many organizations in the space science industry is the inability to determine the accuracy of the data received from satellites. A satellite collects data from a point of interest, store the data on the onboard storage, then transmits it to the ground when the ground station is visible. The problem arises when the satellite loose connection to the ground station while it was transmitting data, resulting in corrupt and unusable data. The purpose of this study is to identify a possible solution to this problem by investigating and developing an algorithm that can be used to determine the accuracy of the data received from the satellite and provide an 8-bit error correction. This study focuses on Very High Frequency (VHF) and Ultra High Frequency (UHF) Transceivers which are used for light weigh data transfer between a nanosatellite and a ground station. Since the transceiver normally transfers data at a rate of 9600bps (depending on the application), we can easily simulate such data transfer using a universal asynchronous receiver-transmitter (UART) based transceiver such as nRF24L01+ with a baud rate of 9600bps. In the nanosatellite industry, little to no research about error detection and correction, especially for VHF/UHF Transceivers. The proposed solution uses an ASCII table as a base for signing and validating data exchanged wirelessly between the nanosatellites and the ground stations. The error detection is archived by computing both the number of characters and the sum of the characters as the corresponding decimal value of each character is found in the ASCII table. Both variables are then set as a header separated by a pipe (vertical bar) into the actual payload sent by satellite to the ground station. Once the data arrives at the ground station, we recompute to check the payload’s accuracy and the possibility of data recovery if any was lost. Data recovery is archived by computing the difference between the sum from the header and the sum computed on arrival, and by comparing the number of characters from both ends. When 8 bits (single character) of data is lost, such data is recovered from the ASCII table using the difference computed. This method was chosen because any programming language understands the ASCII standard and can be implemented at both application and firmware level, which is crucial for bare metal implementation as it supports power efficiency. The experimental results show that the proposed algorithm always detects invalid payloads. Furthermore, the experimental results show that the data recovery rate is 100% when the data loss is a single byte (8 bits). An increased payload size was also noticed due to the appended header, which then increased the time it takes for data to be transferred from the satellite to the ground station. A response command was also sent indicating the data integrity status of the payload received, allowing the satellite to delete such payload as the onboard storage is limited. | Description: | Thesis (MEng (Satellite Systems and Applications))--Cape Peninsula University of Technology, 2024 | URI: | https://etd.cput.ac.za/handle/20.500.11838/4253 |
Appears in Collections: | Industrial and Systems Engineering - Master's Degree |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
Sivate, T_ 221010424.pdf | 4.48 MB | Adobe PDF | View/Open Request a copy |
Page view(s)
22
checked on May 21, 2025
Download(s)
1
checked on May 21, 2025
Google ScholarTM
Check
Items in Digital Knowledge are protected by copyright, with all rights reserved, unless otherwise indicated.