Giter Site home page Giter Site logo

swisswilson / phoenix-flightcontroller Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ctn-dev/phoenix-flightcontroller

0.0 2.0 0.0 3.3 MB

Flight Controller designed for SAR operations

Home Page: www.ctn-dev.org

License: GNU General Public License v3.0

phoenix-flightcontroller's Introduction

Flight Controller based on K20DX128 (Teensy 3.0)

PIN setup (Teensy 3.0 pin numbering)

  • I2C SCL 19

  • I2C SDA 18

  • PPM in (receiver) 3

  • Rotor 1 22

  • Rotor 2 23

  • Rotor 3 9

  • Rotor 4 10

  • Rotor 5 6

  • Rotor 6 20

  • Rotor 7 21

  • Rotor 8 5

  • Orientation lights / Armed-Disarmed indicator 14

  • Battery Monitor (current sensor) 17

Filters, kinematics, data handling

  • Initial raw data from sensors (read every 1ms = 1000Hz) is being averaged by a simple averaging filter
  • Averaged data from sensors are being processed every 10ms (100Hz)
  • CMP kinematitcs (my own) selected by default
  • ARG kinematics (from aeroquad) is also supported (can be enabled by simple include change)
  • DCM kinematics (from FreeIMU)
  • Flight controller supports
    • Rate (ACRO) | gyro only
    • Attitude | gyro with accel corrections
    • Altitute hold | barometer or sonar
  • Pilot commands are being read by PPM sampling code via single PIN (with HW timer), both PPM and PWM in is supported
  • Stabilization and pilot commands are mixed together by 2 separate PID controllers
    • First (only used in attitude mode) mixes pilot commands with kinematics output
    • Second (used in both attitude and rate mode) mixes output from first PID or raw stick input with gyroRate output
  • For ESC signal output i am using an build in 8 channel FLEX timer (yes you can controll octocopter with this)
    • ESC PWM signal supports both 250Hz and 400Hz update rate (running at 400Hz by default)

Accelerometer offset trimming via TX

  • While in dis-armed state
  • To enter the trimming mode = Throttle stick UP & Rudder LEFT
  • To adjust the values = PITCH UP & DOWN || ROLL LEFT & RIGHT
  • To save the values in EEPROM = Throttle UP & Rudder RIGHT
    • (you dont have to save the values right away, you can test them, then return back to trimming mode and save them)
  • To leave trimming mode = Throttle stick DOWN

phoenix-flightcontroller's People

Contributors

ctn-dev avatar matheusbrat avatar

Watchers

James Cloos avatar  avatar

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.