taherabbas67 / Quad-Flight-Controller

Designing and Building a Flight controller for a Quadcopter using a Microcontroller

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Quad-Flight-Controller

Quadcopter Flight controller using an ATmega328P Microcontroller. Picture of ATmega328P

The aim of this project is to design and build a flight controller circuit for a Quadcopter using an ATmega328P Microcontroller. An ATmega328P Microcontroller is a general purpose microcontroller with 14 digital pins and 6 analogy pins. The flight controller circuir will be integrated with some peripheral electronic components to safely control the drone. The flight controller will receive control signals from RF Transimitter throught RF Receiver, and decode the signals. The Circuit will also read and process the IMU sensor data for drone balancing. Finally the circuit will control speed of blushless motors using PWM signals that will be sent to electronic Speed controllers (ESC).

This project was divided into four main tasks: namely

  1. Flight Controller Circuit designing and building
  2. Coding and programming the Flight controller circuit using Arduino IDE
  3. Mounting the flight controller and other drone components on a DJI F450 frame and
  4. Testing the flight controller

NOTE

FC stands for Flight Controller

Flight controller circuit designing and building

I designed the FC circuit using proteus, then after I printed the circuit and soldered the electronic components on the PCB.

FC circuit schematic diagram

Flight Controller Schematic Circuit Diagram

FC circuit PCB design

Flight Controller PCB Design

FC circuit contains the following components

  1. Atmega328P microcontroller
  2. 16Mhz crystal oscillator
  3. 2 22p ceramic capacitor
  4. 1 Push button switch
  5. 1 10K resistor
  6. 3 200/220 Resistor
  7. 3 LED doide
  8. 1x8 female pinheader
  9. 2x4 female pinheader
  10. 1x4 female pinheader
  11. Microcontroller chip holder
  12. MPU-9265 (gyroscope, accelerometer and magnetometer)

Flight controller circuit

Flight Controller Circuit The circuit was programmed using Arduino IDE. Arduino Code for the circuit are in the folder named Quadcopter_Flight_Controller in this repository. View Code

Flight controller circuit mounted on a DJI F450

Flight Controller Circuit

The Drone

The Drone

About

Designing and Building a Flight controller for a Quadcopter using a Microcontroller


Languages

Language:C++ 100.0%