All research into satellite guidance, navigation, and control relies upon high-fidelity software simulations of satellite dynamics. While there exist high-fidelity software packages written in FORTRAN, C++, and Java, these packages are not suitable for rapid development and testing of novel GNC concepts, due to the lengthy write-compile-execute development cycle. However, more agile development environments that interpret scripts at runtime are unable to deliver the performance (in terms of speed and accuracy) that is often required for the most cutting-edge applications.
To solve both these issues we are developing a satellite dynamics toolkit for Matlab/Simulink that relies upon a core set of satellite dynamics libraries written in C++ and compiled to Matlab executable files. This way users can leverage the speed and performance of compiled software while being able to work in the Matlab/Simulink environment, which offers model-based capabilities, a user-friendly interface, high modularity, and is familiar to the aerospace community. S3 can be accessed from Stanford's network by clicking here.
Future work will include the development of modules for orbit and attitude dynamics, GNSS and optical navigation systems, and precise orbit determination capabilities.
This research aims at developing a novel mission-independent framework for the design, implementation, rapid-prototyping, testing and validation of advanced Guidance, Navigation, and Control (GNC) subsystems for multi-satellite missions. It is intended to support all phases during the lifetime of a GNC subsystem, from the preliminary design to the system functional testing, from the performance evaluation to the post-facto analysis during mission operations.
The complete project is implemented in a Matlab/Simulink environment, which offers model-based capabilities, a user-friendly interface, high modularity, and is well known in the aerospace community. For tasks where utmost computational performance is required, Simulink-functions are used to make use of handwritten C/C++ code. The goal is to execute the applications of interest on different platforms in a fully consistent manner. This will allow a seamless transition between offline simulations, playbacks of flight data, real-time hardware-in-the-loop tests, and deployment on the target microprocessor of interest.
Future work will be devoted to the development of two high-fidelity testbeds for GNSS and optical navigation of distributed space systems. The first one includes spaceborne GNSS receivers and a GNSS signal simulator to emulate the radio-frequency signals as received by GNSS antennas in space or in high-dynamics applications. The second one is an optical stimulator system for vision based sensors. It will enable the stimulation of spaceborne cameras through scenes representative of rendezvous scenarios, including starry sky, planetary objects and spacecraft. The optical stimulator will also be used to simulate high-precision attitude determination of cameras onboard spacecraft, or to support optical navigation for planetary or asteroid landing.
Recent Publications (2010-2011)
Gaias G., Ardeans J.-S., D'Amico S.;
Formation Flying Testbed at DLR's German Space Operations Center;
8th International ESA Conference on Guidance, Navigation & Control Systems; 5-10 Jun. 2010, Carlsbad, Czech Republic (2011).
Gaias G., D'Amico, Boge T.;
Hardware-in-the-loop Multi-satellite Simulator for Proximity Operations;
11th International Workshop on Simulation & EGSE facilities for Space Programmes, SESP 2010, 28-30 Sept. 2010, Noordwijk, The Netherlands (2010)
Autonomous Formation Flying in Low Earth Orbit;
Advisors: Gill E., Ambrosius, B.
PhD thesis, Technical University of Delft (2010).
Ardaens J.S., Montenbruck O., D'Amico S.;
Functional and Performance Validation of the PRISMA Precise Orbit Determination Facility;
ION International Technical Meeting, 25-27 Jan. 2010, San Diego, California (2010).