Skip to content

Repository files navigation

Drone Simulator

This package includes modules and tools to simulate Vehicles (land, water or aerial vehicles (maybe even space at some point)) similar to a quadcopter or rover, and makes it easy to use it for various A.I. applications such as path following, obstacle avoidance, etc.

It comes with a bunch of sensors that can be attached to the Vehicle or UAV, such as a Camera (RGB and Depth), IMU (motion), and more to come. The simulator can have an "objective" set to generate observations for machine learning applications.

Features

TODO

Installation

Install the package using pip from :

pip install git+https://github.com/nb-programmer/dronesim.git

Usage

Run the default simulator which launches a window with keyboard controls and a scene with an elliptical path to traverse.

To run the simulator, call the package name in the terminal:

$ dronesim

Or alternatively, execute the package using the Python interpreter:

$ python -m dronesim

Refer to the examples/ folder for running the simulator with custom controllers. You will need to clone this repo in order to access the examples.

Controls

Simulator controls

Use the keyboard and mouse to interact with the simulator app.

The default mouse control is set to Free mode with mouse for looking.

KeyAction
EscUnlock/Lock and Show/Hide mouse
F1Toggle visibility of HUD
F3Toggle visibility of debug view
Shift+F3Connect to Panda3D's PStats tool for profiling
F5Change camera mode from one of [Free, First Person or Third Person]
F6Toggle your control between camera and the Vehicle
F8Toggle wireframe render
F11Toggle fullscreen
vShow/hide all buffers
\Dump current simulator state to console

Default drone/camera controls

Use the keyboard to control the drone or camera, with the following binds:

KeyAction
ITake off
KLand
WMove forwards
SMove backwards
AMove left
DMove right
Up arrowIncrease altitude
Down arrowDecrease altitude
Left arrowHeading counter-clockwise
Right arrowHeading clockwise
Mouse wheelFree cam: change fly speed; Third Person cam: Change orbit radius

About

Python package to simulate a virtual UAV (quadcopter) within a scene with visualizations and sensor interface such as POV camera output

Topics

Resources

Stars

10 stars

Watchers

2 watching

Forks

Releases

Contributors

Languages