Skip to content

Python simulator for an Unmanned Aerial Vehicle (UAV).

License

Notifications You must be signed in to change notification settings

ateveraz/quadrotorpy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Structure and Usage

Project Structure

The quadrotorpy project is organized as follows:

  • src/quadrotorpy/ — Main package directory containing:
    • controller.py: Implements the quadrotor controller logic.
    • mathtools.py: Mathematical tools, including quaternion-based parametrization for robust 3D orientation and rotation handling.
    • model.py: Quadrotor dynamic model and simulation utilities.
    • pathplanning.py: Path planning algorithms and utilities.
    • __init__.py: Package initialization.
  • test.py — A small and brief simulation example demonstrating the usage of the package.
  • pyproject.toml — Project metadata and build configuration.
  • README.md — Project documentation (this file).

Tools and Features

  • Quaternion-based Parametrization: The project uses quaternions for representing and computing 3D orientations, providing numerically stable and singularity-free attitude control.
  • Controller: The controller.py module implements control algorithms for quadrotor flight, leveraging the quaternion-based math tools.
  • Path Planning: Algorithms for generating and following trajectories are provided in pathplanning.py.
  • Math Tools: Utility functions for vector and quaternion operations are available in mathtools.py.

Installation

To install the package in editable mode, navigate to the directory containing pyproject.toml and run:

pip install -e .

This will install quadrotorpy in your Python environment in editable mode, allowing you to make changes to the source code and use them immediately without reinstalling.

Important: If you make any changes to the package source code or its structure, you should reinstall it using the same command:

pip install -e .

This ensures that all updates are properly reflected in your environment.

Updating the Package

To update to newer versions from the repository, pull the latest changes and reinstall the package using:

git pull
pip install -e .

This ensures your environment uses the most recent version of the code.

Example Simulation

The test.py file provides a small and brief simulation example to demonstrate the usage of the package. You can run it directly after installation to see a basic quadrotor simulation in action.

About

Python simulator for an Unmanned Aerial Vehicle (UAV).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages