Giter Club home page Giter Club logo

qrsim2's Introduction

Quadrotor Simulator using Matlab/Simulink and Flightgear

The aim of this simulator is to

  1. provide a framework for control and dynamics simulation,
  2. focus on the rigid body attitude control problem,
  3. provide a nice way to visualize what's going on.

I used it on my thesis to test a global, robust, non-linear controller based on Lyapunov functions. This controller can to track any arbitrary desired orientation of the Quadrotor within a specified error bound, and the results provide a way to translate bounded measurement and navigation errors to final pointing accuracy errors, and also to obtain a bound on the tracking accuracy given the timestep used for the digital implementation of the continuous controller. If you want to find out more please have a look at my thesis!

ScreenShot

##Blocks The modular approach allows for customization of the different blocks: ScreenShot

a. Command Generation Block / Joystick Input
b. Controller Block
c. Rigid Body Dynamics (UAV model) Block
d. Navigation/Measurement Block
e. Visualization Block

Each block is implemented inside a standalone .m file that gets called from within simulink as a level-2 s-file. The name of the .m files is self explanatory (Quadrotor_Navigation.m, Quadrotor_Controller.m, etc.).

Global initialization is done with a callback hooked up on ModelInit, implemented through modelo2Initialization.m

##Visualization with Flightgear

The last block allows for Flightgear visualization, see Flightgear-QUADLSE-Model for a nice UAV model to use with Flightgear. Otherwise it's straightforward.

##Structure

Almost all functionality is implemented in separate .m files for easy tweaking.

Launching

  1. Load with simulink:
load_model('modelo2a.slx')

...
2. Start Flightgear with arguments to listen for network connections:

./fgfs --fdm=network,localhost,5501,5502,5503 --fog-fastest --disable-clouds --in-air --enable-freeze --aircraft=QUADLSE  

...
3. Fly
4. Tweak
5. goto 3

qrsim2's People

Contributors

clausqr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

qrsim2's Issues

compile error

I'm using matlab 2016a.But i can't complie it .error list:
Derivative of state '1' in block 'modelo2a/Quadrotor Navigation ' at time 0.005 is not finite. The simulation will be stopped. There may be a singularity in the solution. If not, try reducing the step size (either by reducing the fixed step size or by tightening the error tolerances)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.