@article{GrzesikBaumannWalteretal.2021, author = {Grzesik, Benjamin and Baumann, Tom and Walter, Thomas and Flederer, Frank and Sittner, Felix and Dilger, Erik and Gl{\"a}sner, Simon and Kirchler, Jan-Luca and Tedsen, Marvyn and Montenegro, Sergio and Stoll, Enrico}, title = {InnoCube — a wireless satellite platform to demonstrate innovative technologies}, series = {Aerospace}, volume = {8}, journal = {Aerospace}, number = {5}, issn = {2226-4310}, doi = {10.3390/aerospace8050127}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:20-opus-239564}, year = {2021}, abstract = {A new innovative satellite mission, the Innovative CubeSat for Education (InnoCube), is addressed. The goal of the mission is to demonstrate "the wireless satellite", which replaces the data harness by robust, high-speed, real-time, very short-range radio communications using the SKITH (SKIpTheHarness) technology. This will make InnoCube the first wireless satellite in history. Another technology demonstration is an experimental energy-storing satellite structure that was developed in the previous Wall\#E project and might replace conventional battery technology in the future. As a further payload, the hardware for the concept of a software-based solution for receiving signals from Global Navigation Satellite Systems (GNSS) will be developed to enable precise position determination of the CubeSat. Aside from technical goals this work aims to be of use in the teaching of engineering skills and practical sustainable education of students, important technical and scientific publications, and the increase of university skills. This article gives an overview of the overall design of the InnoCube.}, language = {en} } @phdthesis{Flederer2021, author = {Flederer, Frank}, title = {CORFU - An Extended Model-Driven Framework for Small Satellite Software with Code Feedback}, doi = {10.25972/OPUS-24981}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:20-opus-249817}, school = {Universit{\"a}t W{\"u}rzburg}, year = {2021}, abstract = {Corfu is a framework for satellite software, not only for the onboard part but also for the ground. Developing software with Corfu follows an iterative model-driven approach. The basis of the process is an engineering model. Engineers formally describe the basic structure of the onboard software in configuration files, which build the engineering model. In the first step, Corfu verifies the model at different levels. Not only syntactically and semantically but also on a higher level such as the scheduling. Based on the model, Corfu generates a software scaffold, which follows an application-centric approach. Software images onboard consist of a list of applications connected through communication channels called topics. Corfu's generic and generated code covers this fundamental communication, telecommand, and telemetry handling. All users have to do is inheriting from a generated class and implement the behavior in overridden methods. For each application, the generator creates an abstract class with pure virtual methods. Those methods are callback functions, e.g., for handling telecommands or executing code in threads. However, from the model, one can not foresee the software implementation by users. Therefore, as an innovation compared to other frameworks, Corfu introduces feedback from the user code back to the model. In this way, we extend the engineering model with information about functions/methods, their invocations, their stack usage, and information about events and telemetry emission. Indeed, it would be possible to add further information extraction for additional use cases. We extract the information in two ways: assembly and source code analysis. The assembly analysis collects information about the stack usage of functions and methods. On the one side, Corfu uses the gathered information to accomplished additional verification steps, e.g., checking if stack usages exceed stack sizes of threads. On the other side, we use the gathered information to improve the performance of onboard software. In a use case, we show how the compiled binary and bandwidth towards the ground is reducible by exploiting source code information at run-time.}, subject = {FRAMEWORK }, language = {en} }