For complex satellite missions that rely on agile and high-precision manoeuvres, the low-friction aspect of the space environment is a critical component in understanding the attitude control dynamics of the spacecraft. The Kinesthetic Node and Autonomous Table-Top Emulator (KNATTE) is a three-degree-of-freedom frictionless vehicle that serves as the foundation of a multipurpose platform for real-time spacecraft hardware-in-the-loop experiments, and allows emulation of these conditions in two dimensions with the purpose of validating various guidance, navigation, and control algorithms. The data acquisition of the vehicle depends on a computer vision system (CVS) that yields position and attitude data, but also suffers from unpredictable blackout events. To complement such measurements, KNATTE incorporates an inertial measurement unit (IMU) that yields accelerometer, gyroscope, and magnetometer data. This study describes a multisensor data fusion approach to obtain accurate attitude information by combining the measurements from the CVS and the IMU using nonlinear Kalman filter algorithms. To do this, the data fusion algorithms are developed and tested in a Matlab/Simulink environment. After that, the algorithms are adapted to the KNATTE platform and their performance is confirmed in various conditions. Through this work, the accuracy and efficiency of the approach can be checked by numerical simulation and real-time experiments. In addition, the quality of the CVS measurements are further improved by the introduction of a neural network to the image processing pipeline of the original system.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:ltu-95249 |
Date | January 2023 |
Creators | Lundström, Lars |
Publisher | Luleå tekniska universitet, Institutionen för system- och rymdteknik |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0096 seconds