Periodic Reporting for period 2 - AURORA (Tool suite for AUtomatic code generation and validation of model-based critical iteROpeRAble components)
Reporting period: 2021-11-01 to 2023-04-30
-Model orientation: system models are used to design the software at a high abstraction level.
-Auto-coding: source code is automatically generated from models.
-Support for validation of software based on models.
TASTE (https://taste.tools(opens in new window)) the ESA development environment for embedded real-time SW, have been used as a basis for integrating the tools making up the AURORA tool suite, and for supporting the auto-code life cycle.
The following technologies have been studied in the project:
-Code generators. QGen has been selected as a code generator for Simulink models. The integration of QGen with TASTE has been analysed and enhanced within the project.
-Component models. Different execution platforms were analysed to identify their functionalities and the most important design patterns associated with them. AURORA extended the TASTE languages to represent a component model, with more emphasis given to NASA Core Flight System (cFS).
-Flight software auto-coding life cycle. The Space software standard was taken a basis for defining a life cycle for auto-coded embedded software. The AURORA life cycle was defined in an incremental way, with MIL (model-in-the-loop), SIL (software-in-the-loop), CIL (component-in-the-loop), and PIL (execution platform-in-the loop) characterisations.
The auto-coding technology and the enhanced toolset have been demonstrated using two different systems.
-Euclid Attitude and Orbit Control System. Euclid is an ESA mission for space exploration that was launched on July 1st, 2023. A subset of the auto-generated Euclid AOCS software has been used as a technology evaluator.
-UPMSat-2 is an experimental satellite fully designed and built at UPM, which was launched in 2020. The UPMSat-2 Attitude Control System SW has been rebuilt using the AURORA tools and life cycle.
The results of using the AURORA tools on both demonstration systems have been analysed in order to assess the TRL (Technology Readiness Level) of the tool set. The conclusion is that TRL 7, “System prototype demonstration in operational environment”, has been achieved. AURORA has demonstrated the viability of a reduction in the efforts and planning of the SW life cycle at incorporating Autocoding technologies in the process: (1) A general increase in productivity: reduction of development effort by 60% and (2) a reduction of testing campaign: reduction in testing time by 30%.
The AURORA Tool suite contributes to the development of Critical Space Technologies for European Non-Dependence and Competitiveness. With this tool, Europe has its own technology and is in a competitive position in the space market.
AURORA also provides the definition of an Autocoded Flight Software Life-cycle process based on QGen. The workflow and standards involved in the Model-in-the-loop process were defined, supported by AURORA modelling guidelines and the definition of the Models Unitary Integration and performance test campaign. QGen Simulation Framework code was ported to run on TSIM/Leon2 allowing us to perform the Platform-in-the-loop test campaign and finally, the Hardware-in-the-loop phase executed on EUCLID Software Validation Facility in which the autogenerated QGen code is integrated with the version 2.1.6 of AASW to run selected tests to check code behavior in a representative scenario.
ESA’s TASTE model-based toolchain was selected as the basis for CBI implementation. SpaceCreator Integrated Development Environment (IDE), serving as the main graphical interface of TASTE, was extended with multiple additions. The changes to the IDE were supplemented by the relevant modifications of the rest of the toolchain, including Kazoo template processor and code generator. The integration of QGen code generator was redesigned and re-tested. Available to the public (https://gitrepos.estec.esa.int/taste/taste-setup(opens in new window)).
UPMSat-2 and EUCLID are used as technology evaluators to obtain a set of measurable values that, in turn, helped to fulfil the Key Performance Indicators (KPI) defined in the Technology Readiness Assessment Plan. A specific report covers the evidence for the applicability of the QGen tool set in the software design, modelling, simulation, and verification of autogenerated code.
The communication activities have been supported by the AURORA Web-portal https://www.aurora-software.eu(opens in new window). The gallery of videos includes several technical videos about the processes carried out, and in addition, AURORA project news was published by SENER internal and social channels. Relevant scientific deliverables and publications not subject to IP protection are published at the Project Website in open access.
AURORA QGen SW is released as open source under GNU General Public License (GPL).
AURORA main impact and long-term goal has been to provide the Space community with an autocoding tool suite solution, supporting modular satellites developments while reducing the dependence on critical technologies and capabilities from outside Europe. AURORA is promoting the use of open source allowing reducing such dependency on technologies that are of strategic importance to the future European space efforts.
AURORA open new market opportunities for the industrial partners supporting modular satellites developments in a cost-effective way. The Industrial partners in the Consortium have started and implemented transformation programs to adapt their products and methods to AURORA methodology that leads to faster development times and lower development costs. The consolidation of an Autocoding facility by integrating the AURORA tool-suite with a completed SW verification toolchain can be applied to design, model, simulate and verify the Flight software for several potential missions. Whereas a reduction of Flight SW delivery time due to the auto-coding guidelines and methodology ensures the conformance of the AURORA process through all the stages of the project. Moreover, the Interoperability capability reduces the integration phase in a long-term approach, as reusability consolidates.
In general, the Society can benefit from the satellite applications enabled or facilitated by the AURORA technology. In addition to this, AURORA has strengthened the cooperation between the Academia and Space industry generating new, qualified job positions and research opportunities.