Skip to content

Release v0.5.0

Compare
Choose a tag to compare
@github-actions github-actions released this 02 Mar 16:10
· 333 commits to master since this release
3a7f9a7

All notable changes to this project will be documented in this file.

[0.5.0] - 2023-03-02

Bug Fixes

  • Make velocity depend on the yaw error (55e3e09)
  • Update states after step (e768caf)
  • Small changes to simplify drone model (6c540a5)
  • General controller as return, rather than PID (c7a0f3c)
  • Top-level collect errors (9d8bd3f)
  • Remove and add the appropriate envs (19e835e)
  • Incorrect classmethod implementation (df08a83)
  • Bug in PID code after updating to Controller parent class (93a6a5a)
  • Add all in the dir. Controlling what gets published is done via VSC (92db0a8)
  • Droneenv -> pbdroneenv as per conftest (9b7d206)
  • Sign changes due to linear model direction changes in d394ad6 (72ab2cb)
  • Top level warning at every import to warn about the different coordinate systems in use (67d330a)
  • Other dependencies were causing huge increases in CI build time, so just cache them all for now (efd7e00)
  • Stupid dumb typo... (1702be4)
  • Correctly define drone motors (1860e97)
  • Simulation_name -> tag (80e3fa8)
  • Add condition within PositionDroneEnv to truncate sim if any value is nan (024387b)
  • Update docs to reflect changes in f56225d (previously forgot to do this) (4ff1508)
  • Typo (8af69f8)
  • Correction on the maths. This step is done elsewhere (3d8a93c)
  • Oversight from aa0e1e3 after refactor (a011166)

Documentation

Feat

Features

  • Allow wrappers to be added to the sub-env (647cc1f)
  • Implement nonlinear, linear, and nonlinear PB3 models (d394ad6)
  • Create helper functions for both rpm->rpyT and vise versa (6aea072)
  • LQR controlled drone env (eb30f2d)
  • Helper functions and classes to make going from and to state logs easier using pandas (8fd2b89)
  • Lqrdroneenv fixture (4e725fc)
  • Use scipy (f8c96a1)
  • PositionDroneEnv (11e812d)
  • Visually validate models to step inputs (6123dd2)
  • Position example (8a3c694)
  • Import script to make the imports less clunky across scripts (4000218)
  • Positiondroneenv fixture (345c5e8)
  • MPC Drone Example (80f4458)
  • Add pandas (450c653)
  • Quaternion multiplication (083e53f)
  • Rotate state by quat (8aeba67)
  • Ensure all models use RHR coordinate system, consistent with URDF and other sim packages (2e90952)
  • Polynomial trajectory drone env (7ef1768)
  • Stress test the position environments to ensure they don't crash over time (513dcf2)

Miscellaneous Tasks

  • Clean up application of forces and torques to use body (d6b2ed4)
  • Commit before deleting, to save the current state of the AttitudeAltitudeDroneEnv (54c99a9)
  • Commit before deleting, to save the current state of the VelHeadAltDroneEnv (f312e9d)
  • Commit before deleting, to save the current state of the trajectory envs (fa55246)
  • Update Q and R matrix gains from tuning via GA (5a0c71c)
  • Fix API (be1e6c2)
  • Add more test cases to transform tests (2e850c3)
  • Commit before deletion for archival purposes (1b2c99c)
  • Specify action space (497e74f)
  • Implement reset in LQR controller and be more verbose about shape of error (eb828e1)
  • Cleanup imports (e416f5b)
  • Version getting (664d4aa)
  • Remove (c1ac6cf)
  • Update Q and R matrix gains from tuning via GA (e59f514)
  • Update graphics (d8b8ac8)
  • Still broken, but at least it's been unified... (adc136a)
  • Mark integration tests (c54f3fe)
  • Rename CI step to something more descriptive (475303d)
  • Update Q and R matrix gains from tuning via GA (6d14ee9)
  • Update graphics (e78074f)
  • Add automatic linearisation of NL model to examples (e365fb1)
  • Mock pandas (4b2399c)
  • Document BaseControlledEnv (f4b039e)
  • Explicitly state the stratgies to prevent duplicates and only run the stress tests once (e976499)
  • Update changelog for v0.5.0 [skip pre-commit.ci] (3a7f9a7)

Refactor

  • Remove AttitudeAltitudeDroneEnv to be replaced by LQR controller (6df31dd)
  • Remove VelHeadAltDroneEnv to be replaced by LQR controller (9de143a)
  • Remove trajectory envs to be replaced by LQR controller (1807e57)
  • Reflect envs refactory changes (07e91ad)
  • Merge into BaseDroneEnv (d3df134)
  • Switch to creating matrices via staticmethod to enable easier access without creating the class (4b972da)
  • Move to/from x tests as per refactor (387cf9f)
  • Delete (1f4fd4f)
  • Use the new PositionDroneEnv (3149d74)
  • Split true types and data models into seperate files (f56225d)

Testing

  • Unify tests for NL and L models to ensure compatibility when designing controllers (606317d)
  • Correct input to rotation (820540d)
  • Mark pybullet env's test_vel_from_rot as skipped for now (1b30792)
  • Tested State.apply_quat (683a12e)
  • Ensure assets are consistent between lib and tests (581d0d5)
  • Ensure states are float as per 683a12e (ab208fd)
  • Quat mul via hypothesis using scipy.spatial.transform.Rotation (5cfcd55)
  • Add pytest-xdist to allow threaded test execution (92c480b)