pathfinder-for-autonomous-navigation / psim

Six DOF flight simulator and related GNC implementations.
MIT License
4 stars 6 forks source link

Implemented First Simulation and Early Python Bindings #239

Closed kylekrol closed 3 years ago

kylekrol commented 3 years ago

First Simulation and Early Python Bindings

Improvements to the Build System

There were many updates to the build system in this PR.

GNC Updates

I've updated all of the fixed step size integrators to take a void pointer as an argument to the state update function. This will be useful when the models in psim get more complex! Unit tests were updated for this as well.

PSim Models

Many more truth models were implemented. The primary ones are specified in the new *.yml files under psim/include/truth/. These form the basic buildings blocks for a truth sim that outputs sensor values!

Joint attitude and orbit truth model is still under development

PSim Simulations

We've now plugged in a 3-DOF single satellite, orbit simulation into Python! The simulations that Python will consume are listed under include/psim/simulations and src/psim/simulations and the Python wrappers (along with the other Python code to support simulations) is under python/psim/**.

DIY

To test this out yourself run the following from the psim repository (follow install instructions in the README first):

bazel run //python:single_orbit

You should have some pretty graphs! I tested this out myself on Mac and Arch.

Screen Shot 2020-09-26 at 8 55 18 PM
kylekrol commented 3 years ago

Reworking to split up the commits in a cleaner fashion