Skip to main content

Vector Guidance methods implemented in Python.

Project description

OS Python Version Docker Maintenance GitHub

General Info

This repository implemented Vector Guidance methods for autonomous systems.

Table of Contents

  1. About Vector Guidance
  2. Install
  3. Usage
  4. References

About Vector Guidance

Vector Guidance are 3D optimal guidance methods for aerial systems.

The guidance laws based on a controller that minimized an finite LQ cost function with form of:

$$ J = |\mathbf{y(t_f)}| + k \int_{t_0}^{t_f} |\mathbf{u(t)}|^2 dt $$

Where:

  • $y$ is the Zero-Effort-Miss variable
  • $k$ is weight on the integration part of the cost
  • $u$ is the controller
  • $t_0$ is the initial time and $t_f$ is the final time.

Because the controller that minimized the LQ cost function is unbound, we define the maximum acceleration of the system as $u_m$, such that:

$|\mathbf{u}| \leq u_m$ while $t_0 \leq t \leq t_f$

Note: The value of $u_m$ is determine by the physical properties of the system (eg. thrusters saturations, aerodynamical constants)

Install:

    pip install pyvectorguidance

Usage

from VectorGuidance import VectorGuidance

r = np.random.rand(3) * np.random.uniform(40, 60, size=1)
v = np.random.rand(3) * np.random.uniform(5, 15, size=1)

rho_w = 9.81
rho_u = 15
gz = 9.81

tgo = VectorGuidance.interception_tgo_bounded(r, v, rho_u, rho_w)
u = VectorGuidance.interception_controller_bounded(r, v, rho_u, tgo, gz)

References

  1. S. Gutman and S. Rubinsky, "3D-nonlinear vector guidance and exo-atmospheric interception," in IEEE Transactions on Aerospace and Electronic Systems, vol. 51, no. 4, pp. 3014-3022, Oct. 2015, doi: 10.1109/TAES.2015.140204.

  2. Gutman, S. (2019). Exoatmospheric Interception via Linear Quadratic Optimization. Journal of Guidance, Control, and Dynamics.

  3. S. Gutman, "Rendezvous and Soft Landing in Closed Form via LQ Optimization," 2019 27th Mediterranean Conference on Control and Automation (MED), Akko, Israel, 2019, pp. 536-540, doi: 10.1109/MED.2019.8798572.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyvectorguidance-1.0.3.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

pyvectorguidance-1.0.3-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file pyvectorguidance-1.0.3.tar.gz.

File metadata

  • Download URL: pyvectorguidance-1.0.3.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for pyvectorguidance-1.0.3.tar.gz
Algorithm Hash digest
SHA256 53a4bae24d5a1eb09c5238895d198be83ffa07df181eb14b54cd912e4c7e7a66
MD5 c0d07dde0aaca91fa91b43781b144572
BLAKE2b-256 0e346a07bdc8dea4419cc12d3ba2400ae50ba2fdb369cd80defae0e4ff9f0194

See more details on using hashes here.

File details

Details for the file pyvectorguidance-1.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for pyvectorguidance-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5f85a6f9e73ceaa5f0fbcee55455e870566c1352e8ba95a36d67afbbc748d516
MD5 4fc5fac31371f83904cdef215dd90c8e
BLAKE2b-256 21038f1d0fcba16f59300c1684e1e4fd8bb97fab03265bbda2cb704213817578

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page