The project was developed by the CIN Researcher Tobia La Marca
Project Summary
The main outcomes of the collaboration are:
- Development of attitude and Earth Observation (EO) tasking modules for PASEOS (PAseos Simulates the Environment for Operating multiple Spacecraft), an open-source simulation framework for satellite mission design and analysis.
- Included overflight analysis capabilities, enabling simulation and optimization of observation opportunities over Areas of Interest (AOI) with respect to another satellite.
- Collaboration with ESA Φ-lab to gather critical feedback and insights on real mission constraints and application scenarios, generating a procedure for the fast and precise orbital propagation of spacecraft dynamics.
- Developed a module to simulate image distortions caused by the off-nadir angle of the observing spacecraft.
- Implemented modules for the visualization of intersections between AOI and the spacecraft footprints, supporting intuitive assessment of coverage performance.
Development Tools
The research and development tools employed include:
- Python as the core programming language for developing the simulation framework.
- Several scientific libraries such as NumPy, SciPy, and Matplotlib for numerical computations and data visualization.
- Orekit (via Python wrapper) and poliastro for orbital mechanics and high-precision spacecraft propagation.
- Pyproj and Shapely for handling geospatial data and Earth Observation geometry.
- Custom visualization tools to display footprints, AOI intersections with footprints, and off-nadir angle effects.
- Used Git and GitHub for version control, code management, and collaborative development with ESA Φ-lab and others ESA members.
- Validated modules against realistic mission scenarios and operational constraints in collaboration with Φ-lab experts.
Development Outputs
The development outputs are:
- PASEOS core repository: a Python-based framework for satellite mission simulation, including orbital dynamics integration with Orekit and Earth Observation tasking (It will be publicly available at: https://github.com/aidotse/PASEOS/tree/main)
- Implemented modules for:
- Attitude dynamics and coordinate transformations among multiple reference frames.
- Overflight analysis and relative geometry intersections between satellites and AOIs.
- Modelling the sensor-related effects on the acquired images from space. including off-nadir angle distortion.
- Visualization of intersections between image footprints and Areas of Interest.
- Drafted technical documentation and user guides to support future public release.
- Preliminary example missions and validation scenarios implemented for internal testing.
Upcoming:
- Full public release of the codebase under an open-source license
- Add demo cases and usage tutorials
Project Description
Scope of the project and introduction to PASEOS
During my research period at ESA's Φ-lab, I contributed to the design and development of PASEOS (PAseos Simulates the Environment for Operating multiple Spacecraft), an open-source, high-fidelity simulation environment for space mission planning and analysis. The project stems from the increasing need for realistic simulation frameworks to support the design space mission and the planning of space operations. PASEOS was developed to provide a modular and extensible software platform that integrates orbital and attitude dynamics, environmental disturbance or effects models, mission planning logic, and shortly, a complete Guidance, Navigation, and Control (GNC) module. Framed into these objectives, the main goal of this collaboration with the Φ-lab was to bring together expertise from both sides—academic research and Φ-lab innovation centre—to create a tool that can support both operational mission analysis and early-phase mission design, with a particular focus on Tip and Cue missions and overflight analysis.
Methodology and new modules included in PASEOS
The core architecture of PASEOS is based on a Python framework, which allows modularity and code readability, enabling the user to simulate end-to-end mission scenarios. The software is fully open source, which enables rapid development through the scientific community and fast adoption among users. The platform supports detailed modeling of sensors, orbital propagators, and target tracking systems. Within the Φ-lab environment, the development of PASEOS was driven by several key objectives:
- Creating a scalable simulation framework capable of handling complex multi-satellite scenarios and/or collaborative target tracking.
- Supporting Tip and Cue logic, in which a Tip satellite detects potential observation tasks to agile satellites based on evolving situational awareness.
- Enabling access analysis and overflight prediction for Earth observation missions, with the ability to ingest KML files to define spatial and temporal constraints on area targets that could be observed by designated satellites.
The collaboration resulted in the implementation of several new modules, significantly extending the core functionality of PASEOS. A dedicated Access Window Analyzer was developed, capable of computing time intervals and epoch intervals during which a satellite can observe a designated Area of Interest (AOI), based on orbital propagation, temporal constraints and sun-illumination conditions. This module implements Astropy and pyproj for coordinate transformations, along with Orekit-based wrappers for accurate orbit propagation using orbital parameters, or synthetic Two-Line Element (TLE) data, or state vectors in appropriate reference frames.
To support realistic sensor modeling, a flexible Field-of-View (FoV) class system was created, allowing users to define custom sensor geometry extension (up to now rectangularly shaped) based on parameters such as boresight direction and angular aperture in along-track and cross-track. The FoV computation integrates geometric filtering using Shapely and NumPy, enabling efficient intersection tests with ground targets and support for an ellipsoidal Earth shape via the standard WGS84.
A dedicated module was also developed to import KML files defining geographical areas of interest, such as observation zones or exclusion regions. The module explores the KML structure to extract polygonal shapes and initial-final epochs of observation, which are then translated into geodetic coordinates and integrated into the access analysis pipeline.
An onboard task assignment logic was introduced to support Tip and Cue mission architectures, enabling the system to determine when, where, and how to observe a target object. The module evaluates the predicted access opportunities to a given AOI or to a given target and computes the corresponding attitude maneuvers required by the cue satellite to align its boresight axis sensor to the pointing direction. This includes calculating the desired line-of-sight (LOS) direction, planning the reorientation attitude maneuvers, and checking pointing constraints such as maximum off nadir-angle bounds.
The open-source nature of PASEOS aligns with ESA Φ-lab ’s commitment of spreading the innovation through collaboration and knowledge sharing. The project can easily contribute to building a shared ecosystem for the design and analysis of future proximity operations, while enabling reproducibility, transparency, and collaboration among agencies, research centres, and industrial partners.
Some Results
To ensure robustness and reliability, the key modules developed within PASEOS were validated through a series of dedicated test functions. These tests were designed to verify the correctness and performance of individual components, as well as their integration within full mission scenarios.
Specific testing was carried out on the geometric intersection routines between Field-of-View (FoV) projections and Areas of observation imported from KML files. The validation pipeline includes checks for correct parsing of polygonal regions, projection of FoVs onto the Earth surface, and dynamic intersection computation as the satellite orbits and slews over time. These routines were verified under various orbital inclinations and sensor configurations, ensuring accurate visibility predictions even in edge cases. In Figure 1, the progressive FOV intersections for a Sun-Synchronous Orbit (SSO) at 502 km has been reported for almost one of its orbital period. As observabl, th footprint is deformed when near the poles, while the temporal evolution respects the spacecraft groundtrack.
Figure 1 - Footprints of the spacecraft during an orbital period
Similarly, the FoV time evolution module was tested to confirm the correct propagation of sensor geometry and orientation throughout the simulation temporal horizon. This involved validating the time-tagged footprint shapes against expected results under known orbital and attitude conditions. In addition to visual inspection, automated tests were performed to verify the dynamic intersection between the evolving sensor footprint and the potential AOIs defined via KML, ensuring consistency in spatial and temporal coverage. Performance metrics such as coverage duration, intersection Area extension, and angular offset were extracted for quantitative analysis. In Figure 2, an example of detection at a specific epoch of the intersection between the footprint of a satellite flying on the aforementioned orbit with a potential AOI scanned by Sentinel – 2B few minutes before.
Figure 2 - Example of multiple scanned area intersections
Finally, preliminary tests were conducted on the attitude estimation and pointing requirement module, which computes the desired spacecraft orientation for successful target observation. These tests confirmed that the computed attitude is consistent with the target location and FoV constraints, and respects actuator limits and avoidance conditions when defined. For this application, the software is able to provide a .txt file with the attitude information required. Note that all the test functions have been cross-validated with commercial software successfully implemented for real mission scenarios, obtaining a perfect compliancy in results.
Conclusions and Future Works
My time at ESA’s Φ-lab was a unique opportunity to contribute to a highly innovative and stimulating environment, working on a simulation framework with tangible operational relevance. The collaboration laid solid groundwork for further developments in PASEOS, with several key extensions currently under consideration. These include the implementation of a realistic attitude dynamics module, accounting for environmental torques and hardware-induced disturbances, as well as the possibility for users to define custom attitude control laws to evaluate pointing performance under various scenarios. Another major upgrade will be the real-time visualization of the spacecraft’s attitude, enhancing both debugging capabilities and user interaction. In parallel, the integration of AI-based logic for target detection, classification, or autonomous decision-making remains a central goal to support increasingly autonomous mission concepts. Altogether, the outcome of this collaboration goes beyond the development of a software tool—representing a concrete step toward bridging the gap between academic research and practical applications in the domain of space mission autonomy.