SIMULUS-NG: a new era for satellite simulation
Satellites are incredibly valuable high-tech machines that operate in dangerous environments far from assistance. One wrong move or faulty update could have significant financial and scientific implications. So how do satellite operators make sure a software update or new manoeuvre is safe?
They use a satellite simulator – a digital replica of the satellite that runs software or performs actions exactly as the satellite would, but on an Earth-bound computer, removing the risk. Simulators are used to prepare mission operations, but can also be used to train satellite operators, test potential bug fixes, and even save a mission in an emergency scenario by providing a safe environment to experiment with radical new solutions.
ESOC has used its current generation of ‘SIMULUS’ software, and provided it to the European space community, for many years. SIMULUS is a powerful toolbox for building a satellite simulator, complete with an emulator suite capable of running the real spacecraft software, a modelling environment, generic models of standard satellite components (e.g. batteries, solar panels, thrusters, star trackers, payload) and the groundstation network together with modelling of the spacecraft’s orbit and attitude behaviour related to relevant celestial bodies.
But as ESOC flies an increasing number of technologically advanced satellites, and spacecraft components undergo a rapid and significant increase in power, current simulators are being pushed to their limits.
Refresh, rebuild, replace
In 2019, ESOC and its partners completed a study to determine the needs of new ESA missions planned for launch up to 2030. The result is the SIMULUS-NG (‘Next Generation’) project, which began in 2020 and will run until the end of 2024. A large part of the project is a technology refresh to SIMULUS, such as the emulator to ensure it can simulate the latest spacecraft hardware and software and the runtime infrastructure to support operations as a service.
“Imagine trying to run Microsoft Flight Simulator on a Commodore 64,” says Paul Steele, Infrastructure Data Systems Manager and SIMULUS-NG Project Manager at ESOC. “It wouldn’t be enough just to throw more processing power at the old hardware. You need to refresh the architecture, implementation and technology stack to ensure that spacecraft simulators stay one step ahead of the increasing hardware capabilities and onboard processing power of satellites.”
Another key driver behind the project is the increasing number for satellite missions flown from ESOC. ESOC is moving towards a centralised provision of mission services in which infrastructure teams need only develop new features and bug fixes once before making them available to all missions, rather than maintaining a separate software implementation for each mission.
Since 2020, the project has been going through SIMULUS system-by-system, refreshing, rebuilding or replacing them as needed. This is no small task, as SIMULUS consists of nine different systems comprising over three million lines of code.
Bringing DevOps into mission ops
The SIMULUS-NG project is adopting modern software development methodologies and the latest European space sector standards to drastically increase the efficiency of simulator generation, testing, validation and deployment.
New features include the automation and digitalisation of a number of processes that traditionally rely heavily on text documents. Automated documentation of model design, automated log and documentation generation, and online documentation lifecycle management are already providing a significant return, with updates that once took up to six months now able to be implemented overnight.
“Automation and other efficiency improvements to the underlying infrastructure are key to make it easier to deploy a new version of a simulator,” says James Eggleston Head of Data Systems Infrastructure at ESOC. “That means you don’t have to save up months of bug fix and update requests until it’s worth the work of building and deploying a new version. Instead, you do many smaller, quicker updates and have end-users see the benefits immediately.”
Made at ESOC, for Europe
The SIMULUS infrastructure is widely used outside ESA to model satellites at national space agencies and within industry.
“Our industry writes the software, but it is driven by the needs of our Member and Cooperating States,” says James Eggleston. “As SIMULUS-NG is a series of rolling updates, there is a version available via ESA’s Space CODEV platform which is hosting the SIM Community. This means the new era for satellite simulation can be adopted by partners and industry in ESA Member States immediately at no cost.”
Potential users of SIMULUS-NG extend beyond traditional satellites. It has already been used to model cubesats, fleets and in astronaut-operated rover projects, and ESA’s Human and Robotic Exploration teams have registered interest in the use of SIMULUS-NG to simulate other rovers and human spaceflight applications.
SIMULUS-NG also synergises with other software and infrastructure developments taking place at ESOC. It is integrated into our new shared IT ecosystem and interacts with new applications for monitoring and controlling satellites and for modelling external environments and flight dynamics.
This interoperability is improving efficiency and breaking down silos, helping us to avoid developing the same functionality twice and integrating more teams into one shared software environment.