(ADCS = Attitude Determination and Control System)
6DOF python simulation for validating SAMWISE ADCS
To install the contents of this repo as an editable python package run:
pip3 install -e .
(making sure you are in the root folder)
attitude
: Attitude GNC algorithmsorbit
: Orbit GNC algorithmsworld_model
: Code for modelling things external to the satellite (such as fields, gravity, etc)data_structures
: Classes for holding and modeling datamath
: Purely math utils (e.g. quaternion functions)utils
: General utilities (plotting, etc)simulations
: Runnable code goes here - each file must define arun
method!
To run the code, type:
python -m simwise.main --run [name of file in simulations/operational folder]
i.e. to run the integrated sim, run the following command in the root directory:
python -m simwise.main --run nadir_pointing
INSTALL MAGNETIC FIELD MODEL
cd igrf
python -m pip install -e .
e.g. python3 simwise/main.py --run simulate_attitude
Note
See the rust code for the actual board here: https://github.com/polygnomial/adcs
- Magnetorquer Only Control: https://rexlab.ri.cmu.edu/papers/magnetorquer_only.pdf
- Equinoctial Elements: https://spsweb.fltops.jpl.nasa.gov/portaldataops/mpg/MPG_Docs/Source%20Docs/EquinoctalElements-modified.pdf
- Extrinsic vs Intrinsic: https://dominicplein.medium.com/extrinsic-intrinsic-rotation-do-i-multiply-from-right-or-left-357c38c1abfd
Started 10/17/2024 Stanford Student Space Initiative