No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.
![]() |
space_station_os repositoryground_station space_station_base space_station_communication space_station_electrical space_station_gnc space_station_service space_station_thermal |
|
Repository Summary
Description | Space Station OS. A future where anyone can develop space stations. |
Checkout URI | https://github.com/space-station-os/space_station_os.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-04-06 |
Dev Status | UNKNOWN |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
ground_station | 0.0.0 |
space_station_base | 0.0.0 |
space_station_communication | 0.0.0 |
space_station_electrical | 0.0.0 |
space_station_gnc | 0.0.0 |
space_station_service | 0.0.0 |
space_station_thermal | 0.0.0 |
README
Space Station OS source
Prerequisites
- Ubuntu 22.04
- ROS 2 Humble (desktop install)
Installation
Common procedures for preparing Space Station OS:
- Install Ubuntu 22.04
- Install ROS 2 Humble (desktop install): https://docs.ros.org/en/humble/Installation/Ubuntu-Install-Debs.html
- Clone Space Station OS source
cd /path/to/place_space_station_os/
- For ROS beginners: The directory structure typically looks like this:
mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
- Then clone:
git clone https://github.com/space-station-os/space_station_os.git
- Compile the Space Station OS source:
cd /path/to/placed_space_station_os/
colcon build --symlink-install
source install/setup.bash
- For ROS beginners: assuming the stracture above, you can compile the Space Station OS source:
cd ~/ros2_ws/
colcon build --symlink-install
source install/setup.bash
Demo1: Estimates of Nauka incident on ISS in July 2021 and more
Demo1 focuses on space station GNC features.
In Demo 1a, we estimate what happened and how the system and people reacted in the Nauka incident that occurred on the ISS in July 2021. https://www.nasaspaceflight.com/2021/07/nauka-docking/ In Demo 1b, we prepared for an imaginary difficult case.
Through these cases, we will study the importance of determining fault detection, isolation and recovery (FDIR).
Procedures to run Demo 1a/1b/1c
- Terminal 1: handles scenario description and user input.
- for Demo 1a
ros2 run space_station_gnc demo1a_nauka_incident_estimate
- for Demo 1b -- more agressive incident.
ros2 run space_station_gnc demo1b_crisis_mainengine
- for Demo 1c -- less agressive incident, good for testing the CMG control
ros2 run space_station_gnc demo1c_small_incident
- Terminal 2: handles space station actuation system and attitude control dynamics, where the user (you) do not need to touch thereafter.
- common for Demo 1a/1b/1c
ros2 launch space_station_gnc gnc_core.launch.py
- Terminal 3: Visualization in RViz
- We use RViz, a common tool for visualization in ROS 2.
- common for Demo 1a/1b/1c
ros2 launch space_station_gnc gnc_rviz.launch.py
- Choose `Fixed Frame`, change from `map` to `world`
- Add a robot visualization : `Add` -> `RobotModel`
- Choose the `Description Topic` of the `RobotModel`: use `/robot_description`
- You should now see the ISS model in rviz (you may need to zoom out)
- You can also choose your own space station by placing urdf file in
/path/to/placed_space_station_os/space_station_os/space_station_gnc/urdf
where we prepared SD_SpaceStation_Ver05.urdf.
- To configure the space station for RViz, modify the launch file in
/path/to/placed_space_station_os/space_station_os/space_station_gnc/launch/gnc_core.launch.py
- Then you go back to Terminal 1 and follow the scenario in the console as the attitude of ISS is displayed in rviz2.
TODOs
See the project backlog https://github.com/orgs/space-station-os/projects/2/views/1
CONTRIBUTING
No CONTRIBUTING.md found.
No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.
No version for distro kinetic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.