cd-5-doc quadcopter batch no 30 (1).pdf

download cd-5-doc quadcopter batch no 30 (1).pdf

of 51

Transcript of cd-5-doc quadcopter batch no 30 (1).pdf

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    1/51

    Radio Controlled Quad copter

    B.Tech PROJECT REPORT

    SRIKANTH BABLU(09241A04B2)

    RAKESH MALLEM(09241A0493)

    SIDDHARTH SURESH (09241A0436)

    ANAND KARWA(09241A0459)

    DEPARTMENT OF ELECTRONICS AND

    COMMUNICATION ENGINEERING

    GOKARAJU RANGARAJU INSTITUTE OF

    ENGINEERING AND TECHNOLOGY

    (Affiliated to Jawaharlal Nehru TechnologicalUniversity)

    HYDERABAD 500 090

    2013

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    2/51

    Radio Controlled Quad copter

    Project Report Submitted in Partial Fulfillment of

    the Requirements for the Degree of

    Bachelor of Technology

    in

    Electronics and Communication Engineering

    By

    SRIKANTH BABLU(09241A04B2)

    RAKESH MALLEM(09241A0493)

    SIDDHARTH SURESH (09241A0436)

    ANAND KARWA(09241A0459)

    DEPARTMENT OF ELECTRONICS AND

    COMMUNICATION ENGINEERING

    GOKARAJU RANGARAJU INSTITUTE OF

    ENGINEERING AND TECHNOLOGY

    (Affiliated to Jawaharlal Nehru Technological University)

    HYDERABAD 500 090

    2013

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    3/51

    Department of Electronics and Communication Engineering

    Gokaraju Rangaraju Institute of Engineering and Technology(Affiliated to Jawaharlal Nehru Technological University)

    Hyderabad 500 090

    2013

    Certificate

    This is to certify that this project report entitled radio controlled quad copter by

    SiddharthSuresh(09241A0436),AnandKarwa(09241A0459),Rakeshmallem(09241A0493)

    ,Srikanth Bablu(09241A04B2) submitted in partial fulfillment of the requirements for

    the degree of Bachelor of Technology in Electronics and Communication Engineering of

    the Jawaharlal Nehru Technological University, Hyderabad, during the academic year

    2012-2013, is a bonafide record of work carried out under our guidance and supervision.

    The results embodied in this report have not been submitted to any otherUniversity or Institution for the award of any degree or diploma.

    (Guide) (External Examiner) (Head of Department)

    Hima Bindu Dr.Ravi Billa

    Assistant Professor

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    4/51

    Acknowledgements:

    It is a pleasure to express thanks to Mrs.Hima Bindu for the

    encouragement and guidance throughout the course of this project.

    We would like to express my deep sense of gratitude and admiration to Dr.Ravi

    Billa, Head Of Electronics & Communication Engineering Department .

    At the outset we sincerely thank the Management and Faculty of ECE, GRIET,

    for their kind cooperation in supporting for our project.

    SIDDHARTH SURESH ________________________

    ANAND KARWA _________________________

    RAKESH MALLEM _________________________

    SRIKANTH BABLU _________________________

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    5/51

    Abstract:

    The use of quad copter in the field of armed appliances has grown drastically to

    operate in dangerous situations where human can be safe at a distance. Our project

    has verified that it is possible to build a small-scale Quadcopter that could be used for

    both military and commercial use. Our most significant problems to date have been an

    ambitious development schedule coupled with very limited funds. These constraints

    have forced compromise in components selected and methods used for prototype

    development. Our teams Quadcopter prototype is a very limited version of what

    could be created in a production facility using more advanced technology. Currently

    our Quad copter has achieved only tethered flight and it can maintain a stable position

    when flying. Our next step is to fix the software so that we can achieve controllable

    undeterred flight. We are also working on integrating our own Graphical UserInterface (GUI) which will allow us to have direct control over all systems. Although

    there are many enhancements that we could do to the design, we have proven that it is

    possible to produce a small scale UAV that performs functions of interest to the

    military as well as commercial/industrial applications.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    6/51

    TABLE OF CONTENTS:

    INTRODUCTION:..................................................................1

    PROTOTYPE SPECIFICATIONS:...........................................2

    1.CONTROL BOARD..........................................................2

    2.ELECTRONIC SPEED CONTROLLER(ESC)..................12

    3.BRUSHLESS DC MOTOR..............................................14

    4.LI-PO BATTERY............................................................17

    5.TRANSMITTER AND RECIEVER..................................18

    ASSEMBLY:.......................................................................22

    1.THEORY OF QUADCOPTER........................................23

    2.DESIGN.........................................................................26

    SOFTWARE IMPLEMENTATION:......................................27

    CONCLUSION:....................................................................43

    SCHEMATIC:......................................................................44

    REFERENCE:.......................................................................45

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    7/51

    1

    INTRODUCTION:

    Quad copter is an aerial vehicle which is operated to fly independently.There are several

    advantages to quad copters over comparably-scaled helicopters. First, quad rotors do not

    require mechanical linkages to vary the rotor blade pitch angle as they spin. This

    simplifies the design and maintenance of the vehicle. Second, the use of four rotors

    allows each individual rotor to have a smaller diameter than the equivalent helicopter

    rotor, allowing them to possess less kinetic energy during flight. This reduces the

    damage caused should the rotors hit anything. For small-scale UAVs, this makes the

    vehicles safer for close interaction. Some small-scale quad -copters have frames that

    enclose the rotors, permitting flights through more challenging environments, with lowerrisk of damaging the vehicle or its surroundings.The prototype has four arms made of

    light weight fibre frame to which four motors can be assembled. These motors are

    controlled by means of electronic speed controllers(ESC).These ESCs are connected to

    the pins of control board. The signal from microcontroller goes to ESCs which in turn

    control the speed of motor. In this design we are using four brushless motors which is

    able to make the prototype fly and to change its direction. In this type Invensense

    gyroscopes are used to attain stability of quad copter. These gyros are used to maintain

    good stability condition so that it can balance the whole body of it. The power

    distribution in this system is done by a high capacity Li-Po battery of 11.1V giving

    adequate power supply.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    8/51

    2

    PROTOTYPE SPECIFICATION:

    KK2.0 Multi-Rotor control Board:

    Designed by the Grand father of the KK revolution, Rolf R Bakke, exclusively for

    HobbyKing, the KK2.0 is the evolution of the first generation KK flight control

    boards. The KK2.0 was engineered from the ground up to bring multi-rotor flight to

    everyone, not just the experts. A host of multi-rotor craft types are pre-installed.

    Simply select the craft type, check motor layout/propeller direction, calibrate

    the ESCs and radio and it is ready to go. All of which can be done with the help of the

    on screen prompts.

    The original KK gyro system has been updated to an incredibly sensitive

    dual chip 3 Axis gyro and single chip 3-axis accelerometer system making this the

    most stable KK board ever and allowing for the addition of an Auto-level function.

    At the heart of the KK2.0 is an Atmel Mega324PA 8-bit AVR RISC-based

    microcontroller with 32k of memory. An additional 2 motor output channels have

    been added to the KK2.0 allowing for a total of 8 motors to be controlled (Octo

    copter). A handy Piezo buzzer is also included with the board for audio warningwhen activating and deactivating the board.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    9/51

    3

    The pin diagram of the Atmel Mega324PA is shown in the figure below.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    10/51

    4

    The 6 Pin USB asp AVR Programming interface ensures future software updates

    will be quick and efficient.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    11/51

    5

    Specifications:

    Size: 50.5mm x 50.5mm x 12mm

    Weight: 21 gram (IncPiezo buzzer)

    IC: Atmega324 PA

    Gyro: InvenSense Inc.

    Accelerometer: Anologue Devices Inc.

    Auto-level: Yes

    Input Voltage: 4.8-6.0V

    AVR interface: standard 6 pin.

    Signal from Receiver: 1520us (5 channels)

    Signal to ESC: 1520us

    What is a Multi-Rotor Control board

    The HobbyKing KK2.0 Multi-Rotor controller is a flight control board for multi-

    rotor Aircraft(Tricopters, Quadcopters, Hexcoptersetc). Its purpose is to stabilize

    the aircraft during flight. To do this it takes the signal from the three on board

    gyros (roll, pitch and yaw) then passes the signal to the Atmega324PA IC. The

    Atmega324PA IC unit then processes these signals according the users selected

    firmware and passes control signals to the installed Electronic Speed Controllers

    (ESCs). These signals instruct the ESCs to make fine adjustments to the motors

    rotational speed, which in turn stabilizes your multi-rotor craft.

    The HobbyKing KK2.0 Multi-Rotor control board also uses signals from

    your radio systems receiver (Rx) and passes these signals to the Atmega324PA IC

    via the ail, ele, thr and rud inputs. Once this information has been

    processed the IC will send varying signals to the ESCs, which in turn adjust the

    rotational speed of each motor to induce controlled flight (up, down, backwards,

    forwards, left, right, yaw).

    Initial Setup of the Control Board:1.Mount the FC on the frame with the LCD facing front and the buttons facing back.

    2.Connect the receiver to the pins on the left side. The negative (black or brown) lead

    towards the edgeof the FC. The order is, from front to back: Aileron, Elevator,

    Throttle, Rudder and AUX.

    3.Connect the motors and servos to the pins on the right side. M1 is the front one and

    M8 is the backone.

    4.The negative (black or brown) lead towards the edge of the FC.See below for how

    to find out which motor goes where.

    5.DO NOT MOUNT THE PROPELLERS YET!

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    12/51

    6

    The M1 connector must always have a ESC connected, because this ESC will be the

    only one thatsupplies the FC with 5V power. This ensures stable power to the FC.The

    M2 to M4's 5V power pin is connected together, and any servos here will be supplied

    by any ESC's connected here. There is no necessity to cut the 5V (red) lead on any

    ESC unless it has a SwitchingBEC.

    With many servos, for example airplane stabilization, there may be need of an extra

    BEC. Donot use multiple switched BEC's.

    Set up a new model on your transmitter, Use a normal airplane profile.

    Turn on the power and press the menu button and enter the "Receiver Test" sub-

    menu.

    Move each channel on your transmitter and check that the displayed direction

    corresponds withthe stick movements. If they disagree, reverse the channel on your

    transmitter.

    Check that the AUX channel show "ON" when the switch on your transmitter is in

    your preferred onposition. If not, reverse the AUX channel on your transmitter.

    Use the trims or sub-trims and adjust the channel values shown on the LCD to zero.

    Enter the "Load Motor Layout" sub-menu and choose the configuration you want. If

    the configurationyou want is not listed, use the "Mixer Editor" sub-menu to make one.

    Enter the "Show Motor Layout" sub-menu and confirm the following. Check if the

    configuration is correct.Check if the motors and servos are connected to the correct

    output and correct rotation direction.Check if the motorspeeds up when dropping the

    arm it is mounted on.

    Enter the "PI Editor " sub-menu and check for correct PI gain values. Use knowngood values or thedefault ones.

    Now we can mount the propellers and test it. Arm the

    device by giving right rudder and zero throttle for a

    few seconds. It will beep and the LED will turn on. Do not arm it until

    themulticopteris put on theground.

    SAFE mode the device after landing by holding the rudder to left at zero throttle

    and the LED will turnoff. If it shakes and maybe climbs after its airborne, adjust the

    Roll and Pitch P-gain down.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    13/51

    7

    If it easily tips over after its airborne, adjust up.

    If it drifts away, use the trims to keep the drift down. It will normally drift away with

    the wind. For excessive trimsetings, check if the arms and motors have the correct

    angles and that the motors aregoodIncrease the Roll and Pitch I-gain until it flies

    straight forward without it pitching up or down.

    Turn on the Self-leveling by holding right aileron while arming or disarming it. Turn

    it off by holdingleft aileron.

    Sub-menu descriptions

    "PI Editor":

    Adjust the PI gain settings here. Use the PREV and NEXT buttons to highlight the

    parameter that needs to changed, then press the CHANGE button. To adjust both Roll

    and Pitch at the sametime, see the"Mode Settings "sub-menu.

    "Receiver test":

    To check output from the receiver.

    "Mode Settings":

    "Self Level" item: How the self-leveling function will be controlled:

    "stick": Turn on Self-leveling by holding the aileron to the right when armingor disarming. Turn it ofwith left aileron.

    "AUX": AUX switch channel controls the self-leveling function.

    "I part of PI" item: How the heading-hold

    function will be controlled:

    "On": Always on.

    "AUX": AUX switch channel controls the heading-hold function.

    "Arming" item: How the heading-hold function will be controlled: "Stick": Arm with right rudder at zero throttle. Disarm with left rudder at zero

    throttle.

    "On": Always on. Careful with this one. Use it only when the FC does not

    control any motors, e.g.when using it for airplane stabilization.

    "Link Roll Pitch" item:1. "On": Edit the Roll and Pitch gain parameters together.

    2. "Off": Edit the Roll and Pitch gain parameters separately. Use it when

    the multicopter has differentinertial mass on the different axis.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    14/51

    8

    "Stick Scaling"

    Here response from the stick can be adjusted to our liking. Higher number gives

    higher response.This is similar to the endpoint or volume adjustment on the

    transmitter.The transmitter can also be adjustedby adjusting the stick response and use

    the stick scaling if even more response is needed.

    "Misc. Settings":

    "Minimum Throttle" item: Adjust just high enough to keep all the motorsrunning when the throttle isabove zero.

    "LCD Contrast" item: Adjust the LCD contrast.

    "Self-level Settings":

    "Self-level Gain" item: The power of the self-leveling. Higher number is

    stronger.

    "Self-level Limit" item: Limits the max power of self leveling. Higher number

    is higher limit.

    "Sensor Test":Displays the output from the sensors. See if all shows "OK". Move the FC around and

    see that thenumbers change.

    "Sensor Calibration":

    Follow the instructions on the LCD. The calibration is only necessary to be done once

    per initial setup.

    "Esc Calibration":

    Instructions:

    1. Important: TAKE OFF THE PROPELLERS OR DISCONNECT ONE WIRE

    FROM THE MOTOR.

    2. Turn off the FC power.

    3. Turn on the transmitter and set the throttle to max.

    4. Press down button 1 and 4, keep pressing until last step. Releasing the buttons

    aborts the calibration.

    5. Turn on power to the FC

    6. Wait for the ESC to beep its full throttle calibrated signal. Takes a few

    seconds, depends on the ESC.7. Lower the throttle to idle.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    15/51

    9

    8. Wait for the idle throttle calibrated signal.

    9. Release the buttons.

    "Mixer Editor":

    This menu lets you adjust where and how much signal the motors gets from the sticks

    and sensors.

    This makes us able to make any configuration possible, with up to 8 motors or servos.

    To change between the output channels 1-8, press CHANGE when the upper right

    number is highlighted.

    The value is given by "Throttle" item: Amount of throttle command.

    Usually 100% if the output channel is connected to a ESC.

    "Aileron" item: Amount of aileron/roll command. Use positive value for

    motors on the right side of the roll axis, and negative for the left side of the

    roll axis. The value is given by the motor's distance from the roll axis.. More is

    further away.

    "Elevator" item: Amount of elevator/pitch command. Use positive value for

    motors on the front side of the pitch axis, and negative he motor's distance

    from the pitch axis. More is further away.

    "Rudder" item: Amount of rudder/yaw command. Usually 100%. Use a

    positive value for a CW spinning propeller, and negative for a CCW spinningpropeller.

    "Offset" Item: Applies a constant offset to the channel. Keep this zero when itis a ESC channel, and around 50% when connected to a servo. Fine tune servo

    can be positioned by adjusting this value.

    "Type" Item: Set it to the type (servo or ESC) connected to the channel.1. For ESC: Output PWM rate is always high. Gives a output zero when

    disarmed or throttle is at idle. Applies the "Minimum Throttle" item

    from the "Misc. Settings" sub-menu when armed and throttle is above

    zero.

    2. For Servo: Output PWM rate can be high or low. Outputs the offset

    value when disarmed or throttleis at idle. "Rate":High rate (400Hz) for ESC or digital servos, or low rate (80Hz) for

    analog servos.

    "Show Motor Layout":

    Shows the configuration graphically. Used to check the build and/or the custom mixer

    table.

    "Load Motor Layout":

    Loads one of many fixed configurations. The loaded configuration can be modified

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    16/51

    10

    afterwards.

    TUNING GUIDE:

    1. Make sure the KK2.0 reads the transmitter stick neutrals. Go to the "Receiver

    Test" menu and use the trims to get the values to zero.

    2. Go to the "PI Editor" menu and set P to 150 and I to zero for both the Roll and

    Pitch Axis. It is only necessary to edit the roll axis and the pitch axis will be

    automatically changed to the same values as the roll axis.Leave the P-limit and

    I-limit alone, it is seldom necessary to change them.

    1. Hover the aircraft and compare the response to the multi copter to other quad

    copters.

    2. Adjust according to the response. For newbies who do not knowhow to fly,just leave the I-gain at zero or the default value. Also the Yaw PI-gains can be

    left at default, but it must be remembered to zero them for the string tuning

    method.

    Default PI editor settings

    Roll/Pitch Axis:

    Pgain = 150

    Plimit = 100

    Igain = 50

    Ilimit = 20

    Yaw Axis:

    Pgain = 150

    Plimit = 20

    Igain = 50

    Ilimit = 10

    GYROSCOPE THEROY

    A gyroscope is defined as a rigid rotating object, symmetric about one axis.

    Generations of children, back at least to Greek antiquity, have found fascination in the

    behavior of tops, to give the gyroscope its common name. A number of eminent

    physicists have also found the complex behaviour of spinning objects a matter of

    interest and a fit subject for detailed analysis.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    17/51

    11

    More recently, very carefully engineered gyroscopes were used for

    navigation because the axis of spin points in a nearly fixed direction when externaltorques are small. This makes the gyroscope a good replacement for a magnetic

    compass, particularly in regions where magnetic compasses are unreliable.

    As with any mechanical system, the motion of a gyroscope can be understood

    completely by a systematic to all the particles of which the rigid body is

    made. It is much more efficient, however, to exploit the fact that most of the forces

    act between the particles of the body, and simply have the effect of making it rigid.

    The overall motion is then described by

    with the torque due to external forces Although an

    apparently simple equation, analysis of the resulting motions can become very

    complicated. For understanding this concept let us take an simplified example

    Our toy is spinning about its axis with an angular speed supported at one end on a

    frictionless bearing. Choosing the origin at the pivot, gravity will produce a torque

    about the origin because the centre of mass is not necessarily above the pivot point,

    but there are no other external forces that can produce a torque because the bearing is

    assumed frictionless. This implies that both with and must be constant. Further,

    the total mechanical energy, including gravitational potential, must also be constant.

    The motion will still be interesting, but these conditions let us understand some

    qualitative features.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    18/51

    12

    First, consider the case where the top is spinning rapidly with its axis more or less

    horizontal. The external force is vertically downwards, so, the torque is horizontal,

    perpendicular to the axis of rotation. Since the spin angular momentum is parallel

    to the axis of rotation, is the same length as but pointing in a different

    direction.

    ELECTONIC SPEED CONTOLLER(ESC)

    An electronic speed control or ESC is an electronic circuit with the purpose to

    vary an electric motor's speed, its direction and possibly also to act as a dynamic

    brake. ESCs are often used on electrically powered radio controlled model , with

    the variety most often used for brushless motor essentially providing an

    electronically-generated three phase electric power low voltage source of energy

    for the motor.

    Brushless ESC systems basically drive tri-phase brushless motors by sending

    sequence of signals for rotation. Brushless motors, otherwise called out

    runners or in runners, have become very popular with radio controlled

    airplane hobbyists because of their efficiency, power, longevity and light weight

    in comparison to traditional brushed motors. However,brushless AC motor

    controllers are much more complicated than brushed motor controllers.

    Most modern ESCs incorporate a battery eliminator circuit (or BEC) to regulate

    voltage for the receiver, removing the need for receiver batteries.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    19/51

    13

    Here we use MYSTRY PENTIUM 30A BRUSHLESS ESC.

    ELECTRONIC SPEED CONTROLLER

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    20/51

    14

    SPECIFICATIONS OF ESC ARE:

    Model:FM30A

    Continuos working current:30A

    Input voltage:Ni-Mh 6 -12cells Li-ion 2 -3cells

    BEC current: 2A(max)

    Weight: 25g

    FUNCTION OF ESC

    BRUSHLESS DC MOTOR:

    Brushless DC electric motor (BLDC motors, BL motors) also known as electronically

    commutated motors (ECMs, EC motors) are synchronous motors which are powered

    by a DC electric source via an integrated inverter/switching power supply, whichproduces an AC electric signal to drive the motor (AC, alternating current, does not

    imply a sinusoidal waveform but rather a bi-directional current with no restriction on

    waveform); additional sensors and electronics control the inverter output amplitude

    and waveform (and therefore percent of DC bus usage/efficiency) and frequency (i.e.

    rotor speed).

    The motor part of a brushless motor is often a permanent magnet synchronous motor,

    but can also be a switched reluctance motor, or induction motor.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    21/51

    15

    Brushless motors may be described as stepper motors; however, the term stepper

    motortends to be used for motors that are designed specifically to be operated in amode where they are frequently stopped with the rotor in a defined angular position.

    Here we use DC Outrunner .

    The term outrunner refers to a type of brushless motor primarily used in electrically

    propelled, radio-controlled model aircraft.

    This type of motor spins its outer shell around its windings, much like motors found

    in ordinary CD-ROM computer drives. In fact, CD-ROM motors are frequently

    rewound into brushless outrunner motors for small park flyer aircraft. Parts to aid in

    converting CD-ROM motors to aircraft use are commercially available.

    The stationary (stator) windings of an outrunner motor are excited by conventional

    DC brushless motor controllers. A direct current (switched on and off at high

    frequency for voltage modulation) is typically passed through three or more non-

    adjacent windings together, and the group so energized is alternated electronicallybased upon rotor position feedback. The number of permanent magnets in the rotor

    does not match the number of stator poles, however. The difference between the

    number of magnet poles and the number of stator poles provides an effect that can be

    understood as similar to planetary gearing. The number of magnet poles divided by 2

    gives the ratio of magnetic field rotation speed to motor rotation speed. Consequently

    the advance of the electromagnetic impulse around the motor axis proceeds much

    faster than the rotor turns. With more magnet poles the maximum torque is increased,

    while the speed of rotor advance is decreased in proportion to the ratio of magnet

    poles to stator poles.In our project we use MYSTERY A2212-15 930KV

    BRUSHLESS OUTRUNNER MOTOR .

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    22/51

    16

    specification of brushless motor:

    - RPM/V: 930 RMP/V

    - Input Voltage: 7.4~11.1V

    - No-load Current: 0.4A

    - Load Current: 12A

    - Shaft Diameter: 3mm / 0.12in

    - Cable Length: 60mm / 2.4in- Dimensions: 38 x 30 mm / 1.5 x 1.2in(L x Dia.)

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    23/51

    17

    BRUSHLESS DC MOTOR

    Lithium-Polymer Battery:

    Lithium-ion polymer batteries, polymer lithium ion or more commonly Li-Po

    batteries (abbreviated Li-poly, Li-Pol, LiPo, LIP, PLI or LiP)

    are rechargeable (secondary cell) batteries. LiPo batteries are usually composed of

    several identical secondary cells in parallel to increase the discharge current

    capability, and are often available in series "packs" to increase the total available

    voltage.Li-poly batteries are also gaining favor in the world of radio-controlled

    aircraft, radio-controlled cars and large scale model trains, where the advantages of

    both lower weight and greatly increased run times and power delivery can be

    sufficient justification for the price. Radio-controlled car batteries are often protected

    by durable plastic cases to prevent puncture. Specially designed electronic motor

    speed controls are used to prevent excessive discharge and subsequent battery

    damage. This is achieved using a low voltage cutoff (LVC) setting that is adjusted to

    maintain cell voltage greater than (typically) 3 V per cell.

    Extremely high performance RC batteries which (appear to) utilize nano wire battery

    technology were introduced in approximately March 2009, and have since become

    extremely popular.These new Lithium Polymer (LiPo) batteries boast extremely high

    charge and discharge rates up to 5~15C charge rates, and 65C continuous

    dischargerates, with 165C burst discharge.

    Here we use ZOP POWER 2200MAH LIPO.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    24/51

    18

    LI-PO BATTERY

    Specification:

    Battery Configuration: 11.1V 2200mAh 3cell

    Battery Capacity: 2200mAh

    Max Continuous Discharge (C-rate/current): 20C

    Max Burst (3Sec) (C-rate/current): 45C

    Approx Dimensions H x W x L (mm): 22.0 x 35 x 104

    Approx Weight (g): 166.5

    Max Charging rate: 2C.

    RF TRANSMITTER AND RECEIVER:

    An RF Module (Radio Frequency Module) is a usually small electronic circuit used to

    transmit and/or receive radio signals on one of a number of carrier frequencies. RF

    Modules are widely used in electronic design owing to the difficulty of designing

    radio circuitry. Good electronic radio design is notoriously complex because of the

    sensitivity of radio circuits and the accuracy of components and layouts required to

    achieve operation on a specific frequency.

    Here we are using fly sky (fs) ct6b transmitter and receiver.

    RECEIVER MODULE

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    25/51

    19

    Receiver specification :

    Channel: 6

    Frequency band: 2.4GHz

    Power resorce: 1.5V*4AAbattery

    Program type: GFSK

    Modulation type: FM

    RF receiver sensitivity: -76db

    Static current: 85mA

    Size: 45*23*13.5mm

    Weight: 12g

    Colour:gray semi-transparent

    Antenna length: 26mm

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    26/51

    20

    Transmitter specification:

    Channels: 6

    Frequency band: 2.4GHz

    Simulator port: PS-2

    Power resource: 1.5V*8AAbattery

    Program type:GFSK

    Modulation type: FM

    RF power:19db

    Static current: 250mA

    Antenna length: 26mm

    Sub trim: yes

    Thro cuv: programmable

    Pith cuv: programmable

    Support multiple user model

    Support trim movement

    Support rudder angle overturned

    Support rudder angle adjustment

    Support programmable channel output.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    27/51

    21

    Receiver and the server connectivity can be given as

    Some of the initial steps to start with the transmitter and receiver can be

    given as

    1. Install the battery to 2.4G transmitter and shut it down.

    2. Insert the matching lines to the channel bat port of the receiver.

    3. Connect the receiver battery to any one of the channel port,on the same timethe two LED are flashing and this means the receiver are going to the match

    status.

    4. Press and hold the button on the transmitter,and then switch on the power

    supply.

    5. Observe the LED on the receiver,if found that the LED is not flash anymore

    and that means successful matched.

    6. Release the match button on the transmitter,take out the match line.

    7. Install the server and then test.

    8. If the tests fail,please repeat the action above.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    28/51

    22

    9. If the tests success,then insert the power supply port into BAT,match

    complete.

    Here we use t6configere it is the calibration part of the receiver it calibrates the

    transmitter for proper flying of the quad copter.

    ASSEMBLY OF QUADCOPTER:

    QUADCOPTER FRAME:

    It is the important part of the quad copter it should be made of fiber or plastic which is

    of light weight and strong. In our project we use Q450. This Q450 is a well thought

    out 450mm quad frame built from quality materials. The main frame is glass fiber

    while the arms are constructed from ultra durable polyamide nylon.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    29/51

    23

    THEORY OF QUADCOPTER:

    Assembly is a breeze with pre-threaded brass sleeves for all of the frame bolts, so no

    lock-nuts are required. It utilizes one size of bolt for the entire build, making the

    hardware very easy to keep in order and only requiring one size of hex wrench to

    assemble.

    A great feature of this frame is the large mounting tabs at the front and rear of the

    main frame bottom plate for mounting cameras or other accessories. This makes for agreat way to take aerial video or fly FPV without the need to add any additional

    mounting brackets.

    The Q450 also features coloured arms (2 white and 2 red) which are great for

    orientation. It helps to keep us flying the right direction without the need for different

    coloured props. It consists of power board which gives ease in wiring in the board.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    30/51

    24

    Features:

    Built from quality glass fibre and polyamide nylon. Pre-threaded brass sleeves for all

    of the frame bolts. Coloured arms for orientation to keep you flying in the right

    direction. Large mounting tabs on main frame bottom plate for easy camera mounting.

    PROPELLERS:

    It is also main part of the quad copter for flying, there are two types of propellers used

    in the quad copter they mostly left hand propellers and right hand propellers.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    31/51

    25

    Left hand propellers are also called as normal propeller and they are mounted to the

    motor which is moving in counter clock wise direction.

    Right hand propellers are also called as pusher propellers and they are mounted to the

    motor which is moving in the clock wise direction.

    We are using four propellers controlled by motors and ESCs. Using gyroscopes we

    can measure the orientation of prototype in X,Y and Z directions. These are used to

    adjust the RPM of each motor.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    32/51

    26

    ORIENTATION OF AXIS

    This prototype contains a theory in which two motors rotate in clockwise directions

    and other two opposite motors rotates in counter clockwise direction as shown in the

    figure below.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    33/51

    27

    Software implementation:

    #include

    //AIL, THR etc

    //can also be digital outputs

    const byte IN1 = 0; //PD3 (PCINT27/TXD1/INT1) not tested, but use Serial1

    const byte IN2 = 1; //PD2 (PCINT26/RXD1/INT0) interrupts good for CCPM

    decoding.

    const byte IN3 = 2; //PD0 (PCINT24/RXD0/T3) tx0 is on the lcd not sure if using

    this would conflict with the lcd

    const byte IN4 = 3; //PB2 (PCINT10/INT2/AIN0)

    const byte IN5 = 4; //PB0 (PCINT8/XCK0/T0) //timer/counter0 source

    //motor outputs can also be digital inputs. these also have PCINT16 to 23 Arduino

    interrupts not tested.

    const byte OUT1 = 5; //PC6 (TOSC1/PCINT22) //32.768kHz crystal or custom

    clock source for counter (rpm sensor)

    const byte OUT2 = 6; //PC4 (TDO/PCINT20) //JTAG

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    34/51

    28

    const byte OUT3 = 7; //PC2 (TCK/PCINT18) //JTAG

    const byte OUT4 = 8; //PC3 (TMS/PCINT19) //JTAG

    const byte OUT5 = 9; //PC1 (SDA/PCINT17) //I2C i2c not tested

    const byte OUT6 = 10; //PC0 (SCL/PCINT16) //I2C

    const byte OUT7 = 11; //PC5 (TDI/PCINT21) //JTAG

    const byte OUT8 = 12; //PC7 (TOSC2/PCINT23) //32.768kHz crystal

    const byte RED_LED = 13; //PB3 (PCINT11/OC0A/AIN1) //same as arduino!

    //important enable the internal pullups when using these as inputs

    const byte BUT1 = 14; //PB7 (PCINT15/OC3B/SCK) PWM pwm not tested

    const byte BUT2 = 15; //PB6 (PCINT14/OC3A/MISO) PWM

    const byte BUT3 = 16; //PB5 (PCINT13/ICP3/MOSI)

    const byte BUT4 = 17; //PB4 (PCINT12/OC0B/SS)

    const byte _BUZZER = 18; //PB1 (PCINT9/CLKO/T1) CLOCK output can adjust

    with system prescaler. (make tones) not tested

    //uncomment if you want to write your own LCD library

    /*

    const byte LCD_CS1 = 19;

    const byte LCD_RES = 20;

    const byte LCD_A0 = 21;

    const byte LCD_SCL = 22;

    const byte LCD_SI = 23;

    */

    //analog reads must be done using thier channels, specifying digital pin numbers will

    not work in this case

    const byte BATT = 3;

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    35/51

    29

    const byte GYR_R = 1;

    const byte GYR_Y = 2;

    const byte GYR_P = 4;

    const byte ACC_X = 5;

    const byte ACC_Y = 6;

    const byte ACC_Z = 7;

    //most of the hardware pwm is on the LCD, LED pins so dont bother. There is PWM

    on the buttons.

    const int switch_release_debounce_us = 100; //milliseconds

    const int switch_press_debounce_uS = 500; //microseconds

    void setup() {

    // put your setup code here, to run once:

    pinMode(RED_LED, OUTPUT);

    pinMode(GYR_R, INPUT);

    pinMode(GYR_Y, INPUT);

    pinMode(GYR_P, INPUT);

    pinMode(ACC_X, INPUT);

    pinMode(ACC_Y, INPUT);

    pinMode(ACC_Z, INPUT);

    pinMode(BUT1,INPUT);

    digitalWrite(BUT1, HIGH); //enable internal pullup.

    pinMode(BUT2,INPUT);

    digitalWrite(BUT2, HIGH);

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    36/51

    30

    pinMode(BUT3,INPUT);

    digitalWrite(BUT3, HIGH);

    pinMode(BUT4,INPUT);

    digitalWrite(BUT4, HIGH);

    analogReference(EXTERNAL); //important!!

    st7565Init( Font5x7 );

    st7565SetBrightness(12);

    st7565DrawString_P( 64, 40, PSTR("Arduino on") );

    st7565DrawString_P( 64, 32, PSTR(" the KK2.") );

    st7565DrawString_P( 64, 24, PSTR("Test suite") );

    st7565DrawString_P( 64, 16, PSTR(" v1.0 ") );

    st7565DrawString_P( 64, 8, PSTR( " Marc G") );

    st7565DrawString_P( 50, 1, PSTR("Press any key") );

    st7565WriteLogo(); //see library to modify

    delay(1000);

    while(true)

    {

    if(!digitalRead(BUT1)||!digitalRead(BUT2)||!digitalRead(BUT3)||!digitalRead(BUT4)

    ) {

    break;

    }

    }

    }

    String Str = String("hello hello");

    char str[7];

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    37/51

    31

    int ii = 0;

    // every time I write debounce code it comes out different. Complicated but I like the

    feel of it.

    byte button4Pressed()

    {

    if(!digitalRead(BUT4))

    {

    delayMicroseconds(switch_press_debounce_uS);

    if(!digitalRead(BUT4))

    {

    while(!digitalRead(BUT4))

    {

    st7565SetBrightness(12);

    st7565ClearBuffer();

    st7565SetFont( Font12x16 );

    st7565DrawString_P( 42, 26 , PSTR("Next") );

    st7565Refresh();

    digitalWrite(RED_LED,HIGH);

    //we could put a beep in here too.

    }

    delayMicroseconds(switch_release_debounce_us);

    digitalWrite(RED_LED,LOW);

    return 1;

    }

    }

    return 0;

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    38/51

    32

    }

    void fonts()

    {

    //delay(200);

    // st7565SetBrightness(12);

    while(true)

    {

    st7565ClearBuffer();

    st7565SetBrightness(12);

    st7565SetFont( Font12x16 );

    st7565DrawString_P( 0, 0, PSTR("Font12x16") );

    st7565SetFont( Font12x24Numbers );

    st7565DrawString_P( 0+40, 15+12, PSTR("12") );

    st7565DrawString_P( 34+40, 15+12, PSTR("24") );

    st7565SetFont( Font12x16 );

    st7565DrawChar( 24+40, 20+12, (uint8_t) '.' );

    st7565SetFont( Font5x7 );

    st7565DrawString_P( 20, 14, PSTR("Font5x7") );

    st7565DrawString_P( 102, 54, PSTR("Next") );

    st7565Refresh();

    if(button4Pressed())

    return;

    }

    }

    /*

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    39/51

    33

    // needs fixing, causes memory leaks !!

    void drawCoordinates(int x, int y)

    {

    Str = String(x) + "," + String(y);

    Str.toCharArray(str,6);

    st7565DrawString( x, y, str);

    }

    void text_position()

    {

    delay(200);

    st7565SetBrightness(12);

    while(true)

    {

    st7565ClearBuffer();

    st7565SetBrightness(12);

    st7565SetFont( Font5x7 );

    st7565DrawString_P( 0, 8, PSTR("Co-ords test") );

    drawCoordinates(0,0);

    drawCoordinates(80,0);

    drawCoordinates(81,8);

    drawCoordinates(82,16);

    drawCoordinates(83,24);

    drawCoordinates(84,32);

    drawCoordinates(85,40);

    drawCoordinates(86,48);

    drawCoordinates(0,20);

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    40/51

    34

    drawCoordinates(6,28);

    drawCoordinates(0,56);

    drawCoordinates(38,56);

    st7565DrawString_P( 102, 56, PSTR("Next") );

    st7565Refresh();

    if(button4Pressed())

    return;

    }

    }*/

    void analog()

    {

    int aread = 0;

    // delay(switch_release_debounce);

    st7565SetBrightness(12);

    while(true)

    {

    st7565ClearBuffer();

    st7565SetBrightness(12);

    st7565SetFont( Font12x16 );

    st7565DrawString_P( 0, 0, PSTR("Analog Read") );

    st7565SetFont( Font5x7 );

    delayMicroseconds(10);

    aread = analogRead(GYR_R);

    Str = String(aread);

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    41/51

    35

    Str.toCharArray(str,6);

    st7565DrawString_P(10*6,16,PSTR("GYR_R "));

    st7565DrawString(16*6,16,str);

    delayMicroseconds(10);

    aread = analogRead(GYR_Y);

    Str = String(aread);

    Str.toCharArray(str,6);

    st7565DrawString_P(10*6,24,PSTR("GYR_Y "));

    st7565DrawString(16*6,24,str);

    delayMicroseconds(10);

    aread = analogRead(GYR_P);

    Str = String(aread);

    Str.toCharArray(str,6);

    st7565DrawString_P(10*6,32,PSTR("GYR_P "));

    st7565DrawString(16*6,32,str);

    delayMicroseconds(10);

    aread = analogRead(ACC_X);

    Str = String(aread);

    Str.toCharArray(str,6);

    st7565DrawString_P(0,16,PSTR("ACC_X "));

    st7565DrawString(6*6,16,str);

    delayMicroseconds(10);

    aread = analogRead(ACC_Y);

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    42/51

    36

    Str = String(aread);

    Str.toCharArray(str,6);

    st7565DrawString_P(0,24,PSTR("ACC_Y "));

    st7565DrawString(6*6,24,str);

    delayMicroseconds(10);

    aread = analogRead(ACC_Z);

    Str = String(aread);

    Str.toCharArray(str,6);

    st7565DrawString_P(0,32,PSTR("ACC_Z "));

    st7565DrawString(6*6,32,str);

    delayMicroseconds(10);

    aread = analogRead(BATT);

    Str = String(aread);

    Str.toCharArray(str,6);

    st7565DrawString_P(0,48,PSTR("BATT "));

    st7565DrawString(6*6,48,str);

    st7565DrawString_P( 102, 56, PSTR("Next") );

    st7565Refresh();

    if(button4Pressed())

    return;

    }

    }

    void buttons()

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    43/51

    37

    {

    st7565SetBrightness(12);

    // delay(switch_release_debounce);

    while(true)

    {

    st7565ClearBuffer();

    st7565SetFont( Font12x16 );

    st7565DrawString_P( 0, 0, PSTR(" Buttons") );

    st7565SetFont( Font12x24Numbers );

    Str = String(digitalRead(BUT1));

    Str.toCharArray(str,5);

    st7565DrawString( 0, 38, str);

    Str = String(digitalRead(BUT2));

    Str.toCharArray(str,5);

    st7565DrawString( 38, 38, str);

    Str = String(digitalRead(BUT3));

    Str.toCharArray(str,5);

    st7565DrawString( 76, 38, str);

    st7565SetFont( Font5x7 );

    st7565DrawString_P( 102, 56, PSTR("Next") );

    st7565Refresh();

    if(button4Pressed())

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    44/51

    38

    return;

    }

    }

    void leds()

    {

    // delay(switch_release_debounce);

    st7565SetBrightness(12);

    while(true)

    {

    byte offset = 0;

    for (int i = 0;i9)

    {

    offset = 6;

    }

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    45/51

    39

    st7565DrawString_P(14*6+offset,28,PSTR(",HIGH)"));

    st7565DrawString_P(20*6-2+offset,28,PSTR(";"));

    st7565DrawString_P( 102, 56, PSTR("Next") );

    /*

    st7565SetFont( Font12x24Numbers );

    st7565DrawString( 0+OFFSET_X, 15+OFFSET_Y, str);

    */

    pinMode(i,OUTPUT);

    digitalWrite(i,HIGH);

    st7565Refresh();

    for(int k = 0;k

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    46/51

    40

    void contrast()

    {

    while(true)

    {

    for (int i = 0;i

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    47/51

    41

    }

    }

    }

    void time()

    {

    unsigned long time = 0;

    st7565SetBrightness(12);

    st7565ClearBuffer();

    st7565SetFont( Font12x16 );

    st7565DrawString_P( 0, 0, PSTR("Test clock") );

    st7565SetFont( Font5x7 );

    st7565DrawString_P( 4, 24, PSTR("One flash per second.") );

    st7565DrawString_P( 102, 56, PSTR("Next") );

    st7565Refresh();

    while(true)

    {

    // heartbeat

    if (millis() % 1000)

    {

    digitalWrite(RED_LED,LOW);

    }

    else

    {

    digitalWrite(RED_LED,HIGH);

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    48/51

    42

    delay(100);

    }

    if(button4Pressed())

    return;

    }

    }

    void loop() {

    analog();

    buttons();

    leds();

    fonts();

    contrast();

    time();

    //text_position()

    }

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    49/51

    43

    Conclusion:

    The overall goal of this project was to create a sustainable and flexible platform for an

    UNMANNED AERIAL VEHICLE (UAV) using a Quadcopter design profile. To thiseffect, we have completed this requirement and feel the project was a success. The

    platform which we have created is capable of sustained autonomous flight. While this

    in essence proves to be short of our ultimate goal, the group is proud to have created a

    proven and solid platform for later development. Our platform can be outfitted with

    additional sensors (cameras, IR sensors, wireless technology) to expand the overall

    usefulness and flexibility the Quadcopter design. The capabilities of this design may

    prove to be asymptotic in nature, however these may not be realized until proper

    funding is given and experimental analysis is conducted.

    Given the stable platform produced by this group, further research and development

    can and should be done to improve the functionality of our design. This may be done

    by a later Senior.

    Design team or by ourselves during our own time and schedule. This project has

    increased our interests in robotics and autonomous design, knowledge which will

    serve useful throughout our professional careers. We feel that this form of thinking

    and engineering will be prevalent in the modern world and beyond as new

    applications are found which will test the limits of current technologies. The concept

    and goal of Senior Design growing out of an interest and incorporating the knowledge

    and skills learned over the undergraduate career, this has been encapsulated in our

    project. Overall, the group is proud of our accomplishments and has enjoyed working

    on the fore-front of engineering technology over the extent of our Senior Design

    coursework.

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    50/51

    44

    SCHEMATIC OF ACCELOROMETER AND

    GYROSCOPE:

  • 7/27/2019 cd-5-doc quadcopter batch no 30 (1).pdf

    51/51

    REFERENCE:

    1.H. Huang, G. M. Hofmann, S. L. Waslander, and C. J. Tomlin, Aerodynamics

    and control of autonomous quad rotor helicopters in aggressive manoeuvring,

    IEEE International Conference on Robotics and Automation, pp. 32773282,

    May 2009.

    2.K. M. Zemalache, L. Beji, and H. Marref, Control of an under-actuated system:

    Application to a four rotors rotorcraft

    3.Gabriel Hoffmann. (2007, January 15) Schematic of reaction torques on each motor

    of a quadrotor aircraft, due to spinning rotors.

    4.K. Munson. (1968). Helicopters and Other Rotorcraft Since 1907