end of semester design report final version

75
Autonomous Quadcopter By: Jordan Freedner *, Benjamin Kushnir**, James P. Rottinger* , and Daniel T. Worts* A Senior Project Proposal Submitted in Partial Fulfillment for the Degree of Bachelor of Science in Electrical Engineering* and Bachelor of Science in Mechanical Engineering** 3 December 2014 * Electrical and Computer Engineering Department, The College of New Jersey, (e-mail: [email protected], [email protected], [email protected]) ** Mechanical Engineering Department, The College of New Jersey, (e-mail: [email protected])

Upload: daniel-worts

Post on 17-Jul-2015

453 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: End of Semester Design Report Final Version

Autonomous Quadcopter

By:

Jordan Freedner *, Benjamin Kushnir**, James P. Rottinger*, and Daniel T. Worts*

A Senior Project Proposal Submitted in Partial Fulfillment for the Degree of Bachelor of Science in Electrical Engineering* and Bachelor of Science in Mechanical

Engineering**

3 December 2014

* Electrical and Computer Engineering Department, The College of New Jersey, (e-mail:

[email protected], [email protected], [email protected]) ** Mechanical Engineering Department, The College of New Jersey, (e-mail:

[email protected])

Page 2: End of Semester Design Report Final Version

Page 2 of 75

Abstract

An autonomous quadcopter is a multi-rotor helicopter that is capable of navigating

autonomously. It has multiple realistic applications such as last-leg of delivery, land

surveying, crop monitoring, search and rescue assistance, and military usage. The goal of

the TCNJ Autonomous Quadcopter senior project group is to design and construct a

quad-rotor capable of operating on GPS waypoint navigation with multiple flight modes.

It will include a live video feed and multiple layers of hardware and software fail-safe

conditions. Our top-level specifications include a mixed flight time of 15 minutes, a 0.75

mile video transmission radius, as well as object-avoidance sensors (ultrasonic), and a

parachute in case of a total electromechanical failure. The design requires a lightweight

and durable frame with vibration reduction held at utmost importance, in order to

maintain smooth video quality and to avoid interference with the on-board delicate

electronic systems. By the start of the Spring semester, the group plans to have a

quadcopter with fully functional altitude controls (through the use of both a manual

controller and our software), while transmitting a clean video feed.

Page 3: End of Semester Design Report Final Version

Page 3 of 75

Table of Contents

Abstract 2

Nomenclature 5

Introduction 6

Specifications 7

Chapter 1

Background

A: Modern Applications of Quadcopters and Drones 8

B: Commercially Available Quadcopters 9

Chapter 2

Mechanical Design

A: Dynamics and Mechanical Design 11

B: Initial Design Constraints and Considerations 17

C: Arm Design 19

D: Center Plate Design 23

E: Landing Gear Design 27

F: Motor/Propeller Selection and Dynamics 28

G: Vibration Reduction 32

Chapter 3

Power System and Distribution

A: Battery Selection 35

B: Electronic Speed Controls and Voltage Regulator Selection 37

Chapter 4

Communications Systems

A: On Board Data Flow 40

B: Telemetry 41

C: Video 45

D: Manual Controls and Overrides 49

Page 4: End of Semester Design Report Final Version

Page 4 of 75

Chapter 5

Software Control

A: An Introduction to the Role of Software in the Autonomous Quadcopter 50

B: Open-Source Software 51

C: Flight Controller and Sensor Performance 52

D: PID Software Implementation 55

E: Current Status of the Software 59

Chapter 6

Conclusion 60

List of References 61

Appendices

A1: About 62

A2: Realistic Constraints and Engineering Standards 64

B1: Gantt Chart 67

B2: Meeting Minutes 68

B3: Safety Form 70

B4: Materials List 71

B5: Budget 74

C: Quadcopter dynamics state variables 75

Page 5: End of Semester Design Report Final Version

Page 5 of 75

Nomenclature

ADC Analog to Digital Converter

AUW All Up Weight

DAC Digital to Analog Converter

ESC Electronic Speed Control

FCC Federal Communication Commission

GPIO General Purpose Input Output

GPS Global Positioning System

GUI Graphical User Interface

IMU Inertial Measurement Unit

I2C Inter-Integrated Circuit (multi-master, multi-slave, serial bus)

MAVLink Micro Air Vehicle Link

PWM Pulse Width Modulation

RS232 Serial Communication Standard

UAV Unmanned Aerial Vehicle

Page 6: End of Semester Design Report Final Version

Page 6 of 75

Introduction

A quadcopter is defined as a multicopter propelled by four rotors attached to arms

that extend from a central console. Unlike standard helicopters, these multirotors use

two sets of fixed pitch propellers that control the motion of the vehicle through changes

in RPM. The vehicle is capable of hovering as well as rotating about any of the three

reference axes, depending on the thrust being applied from each motor. The stable yet

responsive nature of a quadcopter’s manner of flight is what makes these multirotors so

desirable in small-scale applications. Since they are relatively cheap, simplistic in design,

and maneuverable, there has been a recent push towards their employment in both

militaristic and commercial applications. Quadcopters can be used for search and rescue

mission assistance, structure inspection, land surveying, delivery services, and aerial

support for large events and law enforcement.

As the advantages of implementing unmanned aerial vehicles into society continue

to expand, the research and technology involved in their development is growing rapidly.

With this growth, autonomous flight is becoming more accurate and popular. This

characteristic of new age UAV’s eliminates the need for an operator to be responsible for

the vehicle’s flight and further increases the potential applications for quadcopter usage.

Although there is much debate about the ethical dilemmas regarding drone use, including

issues of privacy and morality, it is obvious that this technology is monumentally

significant, allowing humans to obtain information about and even deliver assistance to

areas that are unsafe or inaccessible.

Page 7: End of Semester Design Report Final Version

Page 7 of 75

Specifications

In order to engineer our quadcopter properly, we first needed to set a series of

specifications and goals that needed to be met. Therefore, we needed to decide what

aspects of the project were vital for project success and define our specific requirements

for them as such. You can see our chosen specifications in the table (3.1) below. We chose

these specifications for a number of reasons. Video and Communications range is

important because we can only safely operate the quadcopter if we can communicate with

it. Therefore, we needed to make our range goal for these project aspects as large as

realistically possible. We determined that even if we lose video transmission, we can still

send failsafe operations to the quadcopter if telemetry communications are still active,

which explains why our telemetry range is larger than our video transmission range.

Flight time is valued in this project because the duration of time the quadcopter can spend

in the air determines how much can actually be done with the quadcopter. This project

would be useless if it were only able to sustain flight for 5 minutes. We chose a 15 minute

flight time goal based off of commercial equivalents and because it allows for full travel

inside of communications range multiple times.

Autonomous Quadcopter General Specifications

Specification Requirement Goal

Quadcopter Mixed Flight Time 12 Minutes 15 Minutes

Telemetry Comm. Range 1 Mile 1.5 Miles

Video Feed Range .75 Miles 1 Mile

Table 3.1: General Specifications

Page 8: End of Semester Design Report Final Version

Page 8 of 75

Chapter 1: Background

Section A: Modern Applications of Quadcopters and Drones

Before going into some of the modern applications of drones, quadcopters, and other

multi-rotor vehicles, it is important to draw a distinction between them and to properly

classify the vehicle described and discussed in this report. First of all, “drone” is a word

commonly used in association with an unmanned aircraft. This is a high-level

classification because it could refer to a vehicle that is piloted on its own given a set of

inputs, or to one that is controlled directly from a remote location. The former type will

be known as “autonomous” throughout this report and the latter is simply a remote-

controlled vehicle. In terms of being a multi-rotor copter, the prefix of the copter simply

refers to the number of arms and rotors on the vehicle; a quadcopter would have four, an

octocopter eight, etc. All that being said, the title of this report is “Autonomous

Quadcopter”, meaning that the vehicle being designed consists of four arms and rotors,

positioned in an X-formation, and is capable of being piloted on its own given a set of GPS

coordinates.

The most commonly-known use of drones, and the most controversial, is their use in

combat operations to perform unmanned bombing missions. Drones designed for this

specific application are known as Unmanned Combat Air Vehicles (UCAVs) and have

been in use for over 20 years but have just recently risen to higher popularity as

technology has allowed for the refinement and sophistication of these vehicles. Beyond

combat, however, it is also widely known that Amazon is working on applying drones to

package-delivery applications to fulfill orders to their customers.

When initially designing this quadcopter, a variety of applications were considered,

some of which are only theoretical at this point, meaning that they have only been

Page 9: End of Semester Design Report Final Version

Page 9 of 75

hypothesized and not implemented to date (as far as is known). The first application that

was considered is using the vehicle to perform 3D-modelling and mapping. This can

theoretically be done through stitching together a large number of images or 3D distance

vectors to a be point where a 3D map of a location can be generated. For the scope of this

project, however, a more general application was selected, and that is to perform land

surveying given a set of GPS coordinates to survey. This type of surveying can be applied

to search and rescue missions, wildlife preservation, and agricultural uses. To accomplish

this, the vehicle will be capable of piloting itself through a set of provided GPS coordinates

and relaying back a video feed from a camera mounted to the bottom of it.

Section B: Commercially Available Quadcopters

When designing any custom-made product, the commercial availability of the product

needs to be considered before committing resources to the project to determine if is

cheaper in the long-term to simply purchase it from a third-party. In the specific

application of this quadcopter, the relevant specifics are autonomous flight, GPS

navigation, flight-time, and transmission distance. The specifications section of this

report states that the specifications for this vehicle include a 15-minute flight time, a

telemetry communication distance of 1.5 miles, on-board GPS, and autonomous flight.

Table 1.1 compares these specifications to those of commercially available pre-assembled

multi-rotor vehicles.

Page 10: End of Semester Design Report Final Version

Page 10 of 75

Vehicle Price Flight Time (min)

Transmission Distance (mi)

GPS Equipped?

Autonomous / Manual

Current Design $1750 14-15 1.5 Yes Autonomous

ProHeli XPX Heavy-Lift Quadcopter

$3757 14-15 1.0 Yes Manual

Parrot AR.Drone 2.0 Elite (No Camera)

$299 < 10 Unknown No Manual

3RD IRIS+ $1729 16-22 1.0 No Manual

DJ Phantom II Vision+

$1399 25 0.5 Yes Hybrid

Table 1.1 - Comparison of the quadcopter to commercially available multirotors

Through researching the multirotors, it was found that many of the companies advertise

a low price for the base model, however, once the additional options were added to

accomplish the desired application, that the price quickly rose. In addition, none of the

commercially available are equipped to be operated autonomously, meaning that

additional time and money would have to be invested in adding that specific feature. Only

the DJ Phantom II is able to navigate through a set of GPS coordinates, however, a remote

control link is still required. The biggest difference between the quadcopter being

designed and the DJ Phantom II is the range. It has been reported that the Phantom loses

serial connection around 200m and will then automatically return to the home point. The

specifications for this quadcopter call for a range of 1.5 miles which provides a much larger

survey range. In summary, if the specifications of this quadcopter are realized, then it can

safely be said that it will be cheaper and more full-featured than anything that can

currently be purchased and used out of the box.

Page 11: End of Semester Design Report Final Version

Page 11 of 75

Chapter 2: Dynamics and Mechanical Design

Section A: Quadcopter Dynamics

Before frame design can begin, an understanding of general dynamics regarding

quadcopter flight must be established. A set of equations can be applied to identify the

dynamic model that guides the motion of a quadcopter, and is available below in a

simplified form (a detailed derivation is provided in the flight dynamics reference).

In order to start an analytical derivation of the equations of motion, rotational

matrices must be created that will help describe the orientation of the vehicle and the

transformation between various frames of reference. Given two coordinate frames as

shown in Figure 2.1, it is necessary to define a rotational matrix that provides a method

of conversion between the two.

Figure 2.1: 2D rotation to create vector p

The vector p can be defined in both coordinate frames; the 𝐹0 frame expresses the vector as:

𝒑 = 𝑝𝑥0𝑖̂0 + 𝑝𝑦

0𝑗̂0 + 𝑝𝑧0�̂�0

Page 12: End of Semester Design Report Final Version

Page 12 of 75

The vector p is defined in the 𝐹1 frame as:

𝒑 = 𝑝𝑥1𝑖̂1 + 𝑝𝑦

1𝑗̂1 + 𝑝𝑧1�̂�1.

By equating these expressions, simple trigonometric properties and matrix

manipulations offer a relationship between the two vectors, as given by:

𝒑1 = 𝑅01𝒑0

Where the rotation matrix, 𝑅01 , from coordinate frame 𝐹0 to frame 𝐹1 for rotation about

the z-axis is defined as :

𝑅01

𝑧−𝑎𝑥𝑖𝑠≜ (

cos (𝜃) sin (𝜃) 0−sin (𝜃) cos (𝜃) 0

0 0 1

).

Right-handed rotation matrices about the y-axis and x-axis are also pertinent and are

found in a similar manner:

𝑅01

𝑦−𝑎𝑥𝑖𝑠≜ (

cos (𝜃) 0 −sin (𝜃)0 1 0

sin (𝜃) 0 cos (𝜃)) 𝑅0

1𝑥−𝑎𝑥𝑖𝑠

≜ (

1 0 00 cos (𝜃) sin (𝜃)0 −sin (𝜃) cos (𝜃)

).

With the rotational matrices determined, various coordinate frames must be

established in order to begin modeling the dynamics of the quadcopter. The most basic of

the systems is the inertial frame 𝐹𝑖, defined as a fixed coordinate frame that remains

stationary with the movement of the vehicle. The vehicle frame 𝐹𝑣 has its origin at the

center of gravity of the quadcopter, but the frame’s axes are aligned with those of the

inertial frame 𝐹𝑖 at all times. The vehicle-1 frame 𝐹𝑣1 is also located at the center of

gravity, but is rotated about unit vector �̂�𝑣 by the yaw angle 𝛹. The subsequent vehicle-2

frame 𝐹𝑣2 is created by rotating the vehicle-1 frame about the unit vector 𝑗̂ 𝑣1 by the pitch

Page 13: End of Semester Design Report Final Version

Page 13 of 75

angle 𝜃. Finally, the body frame 𝐹𝑏 is generated by rotating the vehicle-2 frame about the

𝑖̂𝑣2 axis by the roll angle 𝜙, and is entirely identical to the physical orientation of the

vehicle. Rotation matrices identical to those discussed in regards to vector p can be

applied to relate each successive frame and are summarized in Table 2.1 below.

Frame Transfer Transformation

Equation

Rotational Matrix

Vehicle to Vehicle-1 𝒑𝑣1 = 𝑅𝑣𝑣1(𝛹)𝒑𝑣

𝑅𝑣𝑣1(𝛹) = (

cos(𝜃) sin(𝜃) 0− sin(𝜃) cos(𝜃) 0

0 0 1

)

Vehicle-1 to Vehicle-2 𝒑𝑣2 = 𝑅𝑣1𝑣2(𝜃)𝒑𝑣1

𝑅𝑣1𝑣2(𝜃) = (

cos (𝜃) 0 −sin (𝜃)0 1 0

sin (𝜃) 0 cos (𝜃))

Vehicle-2 to Body 𝒑𝑏 = 𝑅𝑣2𝑏 (𝜙)𝒑𝑣2

𝑅𝑣2𝑏 (𝜙) = (

1 0 00 cos (𝜃) sin (𝜃)0 −sin (𝜃) cos (𝜃)

)

Table 2.1: Rotational Matrix Equations for Frame Transformations

Therefore, the full transformation matrix from vehicle to body frame is simply the

product of each individual rotation matrix, as represented by:

𝑅𝑣𝑏(𝜙, 𝜃, 𝛹) = 𝑅𝑣2

𝑏 (𝜙) × 𝑅𝑣1𝑣2(𝜃) × 𝑅𝑣

𝑣1(𝛹).

Page 14: End of Semester Design Report Final Version

Page 14 of 75

By substituting the matrices provided in Table 2.1 and completing the calculation, the

transformation matrix is shown to be:

𝑅𝑣𝑏(𝜙, 𝜃, 𝛹) = [

𝑐(𝜃)𝑐(𝛹) 𝑐(𝜃)𝑠(𝛹) −𝑠(𝜃)

𝑠(𝜙)𝑠(𝜃)𝑐(𝛹) − 𝑐(𝜙)𝑠(𝛹) 𝑠(𝜙)𝑠(𝜃)𝑠(𝛹) + 𝑐(𝜙)𝑐(𝛹) 𝑠(𝜙)𝑐(𝜃)

𝑐(𝜙)𝑠(𝜃)𝑐(𝛹) + 𝑠(𝜙)𝑠(𝛹) 𝑐(𝜙)𝑠(𝜃)𝑠(𝛹) − 𝑠(𝜙)𝑐(𝛹) 𝑐(𝜙)𝑐(𝜃)].

To continue the analysis of quadcopter kinematics, it is important to define all

necessary state variables in relation to the various frames formed in the previous section.

Table C.1 in Appendix C provides a set of variables with definitions. The relationship

between position and velocity for this set of variables requires the rotation matrix that

transforms the body frame into the vehicle frame (which calls for the transpose of the

previously defined matrix), and is given by:

𝑑

𝑑𝑡(

𝑝𝑛

𝑝𝑒

ℎ) = (

𝑝�̇�

𝑝�̇�

ℎ̇

) = 𝑅𝑏𝑣 (

𝑢𝑣𝑤

) = (𝑅𝑣𝑏)𝑇 (

𝑢𝑣𝑤

)

= [

𝑐(𝜃)𝑐(𝛹) 𝑠(𝜙)𝑠(𝜃)𝑐(𝛹) − 𝑐(𝜙)𝑠(𝛹) 𝑐(𝜙)𝑠(𝜃)𝑐(𝛹) + 𝑠(𝜙)𝑠(𝛹)

𝑐(𝜃)𝑠(𝛹) 𝑠(𝜙)𝑠(𝜃)𝑠(𝛹) + 𝑐(𝜙)𝑐(𝛹) 𝑐(𝜙)𝑠(𝜃)𝑠(𝛹) − 𝑠(𝜙)𝑐(𝛹)𝑠(𝜃) −𝑠(𝜙)𝑐(𝜃) −𝑐(𝜙)𝑐(𝜃)

] (𝑢𝑣𝑤

)

Where ℎ̇ is defined as the velocity vector along �̂�𝑖 resulting in a sign change in the third

row. This system represents a connection between the velocities in the inertial frame and

the velocities in the body frame, which is necessary for conversion between sensor

readings and observations with reference to the user’s position.

An additional set of equations that helps identify the dynamics of the vehicle is the

solution for the rate of change in roll, pitch and yaw angles defined in the 𝐹𝑣2, 𝐹𝑣1, and 𝐹𝑣

frames, respectively, as functions of the roll, pitch and yaw rates defined in the body frame

𝐹𝑏. Again, this relation can be found using rotational matrix manipulation:

Page 15: End of Semester Design Report Final Version

Page 15 of 75

(𝑝𝑞𝑟

) = 𝑅𝑣2𝑏 (�̇�) (

�̇�00

) + 𝑅𝑣2𝑏 (𝜙)𝑅𝑣1

𝑣2(�̇�) (0�̇�0

) + 𝑅𝑣2𝑏 (𝜙)𝑅𝑣1

𝑣2(𝜃)𝑅𝑣𝑣1(�̇�) (

00�̇�

)

Where each additional angular rate requires a subsequent rotation applied to it. Assuming

that �̇�, 𝜃,̇ and �̇� are relatively small, the rotational matrices of these rates can all be

equated to the identity matrix by using the matrices tabulated in Table2.1. Applying the

identity and rotation matrices and inverting, the rates of the absolute angles of the body

frame are found to be

𝑑

𝑑𝑡(

𝜙𝜃𝛹

) = (�̇�

�̇��̇�

) = (

1 sin(𝜙)tan (𝜃) cos(𝜙)tan (𝜃)0 cos (𝜙) −sin (𝜙)

0 sin(𝜙)sec (𝜃) cos(𝜙)sec (𝜃)) (

𝑝𝑞𝑟

).

A quadcopter maintains stability using counteracting torques provided by two

pairs of motors spinning in opposite directions (with each pair located along an axis of

rotation). A visualization of the forces, torques, and angles caused by each motor is

provided below in Figure 2.2 (where the subscripts f, r, b, and l identify the front, right,

back, and left of the vehicle).

Figure 2.2: Forces, torques, and angular movement of quadcopter frame

The net force is simply the sum of each motor’s applied force, given by:

𝐹 = 𝐹𝑓 + 𝐹𝑟 + 𝐹𝑏 + 𝐹𝑙.

Page 16: End of Semester Design Report Final Version

Page 16 of 75

The rolling torque (produced by the left and right motors) is defined as:

𝜏𝜙 = 𝑙(𝐹𝑙 − 𝐹𝑟)

And the pitching torque (produced by the front and back motors) is defined as:

𝜏𝜃 = 𝑙(𝐹𝑓 − 𝐹𝑏)

Where l is given by the perpendicular distance between the center of gravity of the

quadcopter and the axis of rotation of each motor. The yawing torque is affected by the

drag caused by each propeller, and can be quantified by subtracting the sum of the

counterclockwise torques from the sum of the clockwise torques, or

𝜏𝛹 = 𝜏𝑟 + 𝜏𝑙 − 𝜏𝑓 − 𝜏𝑏.

The final force that must be considered in the analysis of the dynamics of

movement is the force on the center of mass due to gravity, given by

𝒇𝑔𝒗 = (

00

𝑚𝑔).

The equation above is applied to the vehicle frame and must be transformed to the body

frame to become relevant in the analysis of the vehicle’s movement. This transformation

is made possible through the derived rotation matrix relating vehicle and body frames,

giving:

𝒇𝑔𝑏 = 𝑅𝑣

𝑏 (00

𝑚𝑔) = (

−𝑚𝑔sin (𝜃)

𝑚𝑔 cos(𝜃) sin (𝜙)

𝑚𝑔 cos(𝜃) sin(𝜙)).

Page 17: End of Semester Design Report Final Version

Page 17 of 75

Upon analyzing this matrix equation, it is important to note that the forces of gravity are

unaffected by the yaw angle. This conclusion is logical because the angle between the

direction of gravity and the x-y plane of the body frame remains unchanged over the entire

range of yaw.

The dynamics of quadcopter flight is an important concept that affects both the

design and testing of the vehicle. Knowledge of the influences that contribute to the

angular and linear movement of the quadcopter can offer substantial guidance in

determining how the motor commands must change to accommodate the observations of

initial testing. This knowledge will facilitate the transfer from visual observation to coding

adjustment requirements and will therefore improve the likelihood of a successful, stable

flight.

Section B: Initial Design Constraints and Considerations

A fundamental component for a stable, reliable quadcopter flight is a rigid and

optimized frame design. The approach to this design begins with the determination of

dimensional requirements for the sizing of the body, specifically the motor-to-motor

distance (the distance between two motor axes measured along the length of the arms).

Selection of this parameter is reliant on two major design constraints. Firstly, the

acceptable minimum spacing between GPS and video transmission devices to avoid

interference is 1ft, meaning that the arm length must agree with this size limitation.

Secondly, the path of the propeller blade must not interfere with the placement of the

controller and parachute in the center. This second parameter is slightly more

complicated to analyze; an iterative process detailed in Section E is used to provide thrust

Page 18: End of Semester Design Report Final Version

Page 18 of 75

calculations for various propellers and motors in order to determine the optimal

combination.

After multiple iterations, a motor-to-motor distance of 21.25” is selected. Both X

and plus configurations are considered for the design (an X-oriented quadcopter will

contain 2 rotors at 45° angles in front of the vehicle when travelling forward while a plus-

oriented quadcopter will have a single rotor directly in line with forward motion). In

general, an X-shaped build offers greater stability while a plus-shaped build provides

increased flight response. This assertion is intuitive; a quadcopter oriented as an X will

generate roll and pitch from a pair of motors on each side, whereas the alternative relies

on a single motor to rotate about a given axis. Since the scope of the project is geared

towards first person video rather than speed and aerobatics, an X-configuration is

selected. This design will provide a more stable video feed and will avoid any interference

caused by a swinging propeller located in the direction of the camera’s frame of capture.

Figure 2.3 below shows a labeled 3D representation of the full quadcopter model:

Figure 2.3: Labeled Front View of Quadcopter SolidWorks Assembly

Page 19: End of Semester Design Report Final Version

Page 19 of 75

The three main structural components of the design are the center plates, the arms,

and the landing gear. Each component is analyzed individually for stress and deflection

characteristics. Although the frame is designed to sustain as much loading as possible, it

is unreasonable to assume that failure will not occur under free-fall crash conditions; the

amount of material needed to withstand such a fall would amplify the weight and price of

the vehicle, and would result in a design that is out of the scope of the project. Therefore,

the rigidity of all mechanical systems are analyzed subject to standard flight conditions

and are designed with factors of safety that are sufficient enough to minimize any

structural damage that should occur from operational malfunction caused by a free-fall

crash of 1m.

Section C: Arm Design

Some constraints that influence the arm design include the placement of various

electrical components (including video transmitter, GPS unit, antenna, and ESC’s) that

are to be mounted along the length of each arm, the required separation given by the

motor-to-motor distance, and the need for minimum deflection under maximum thrust

conditions to ensure that the resultant thrust be entirely perpendicular to the reference

plane of the body. With these constraints in mind, the arms are designed with 9” long

square ¾” 6061-T6 aluminum tubing. Aluminum is chosen over carbon fiber and wood

for multiple reasons. The material offers a high strength-to-weight ratio, is machinable

and accessible, and is entirely cost efficient. Carbon fiber, while exhibiting better strength

characteristics, is difficult to machine and is out of the price range. Wooden arm selection

offers a very lightweight and cheap alternative, but is much more prone to failure than

aluminum. Since rigidity and durability are of utmost importance in the frame design, it

Page 20: End of Semester Design Report Final Version

Page 20 of 75

is more logical to select a stronger, heavier arm material than to design solely for weight

reduction and result in a design that requires constant maintenance and repair. Since

weight is still a significant factor, the sides of each arm are trussed to reduce their weight

without compromising the strength or bending characteristics under typical flight

conditions.

An original consideration for the arm design involved welding 2 long arms in an x-

formation rather than bolting together 4 arms between 2 center plates. This design would

improve the rigidity of the frame and would allow for some material to be removed from

the center plate, thereby reducing the weight and improving the flight time. While

beneficial in theory, maintenance and repairability are factors that cannot be ignored,

especially with components that are under constant loading. With a welded frame, the

slightest issue that arises in any of the arms will require the entire frame to be

disassembled and the arm chassis to be removed and completely rebuilt. Considering the

downsides of this method of assembly, it is decided that welding should be avoided at all

costs.

Stress and deflection analyses are conducted for loading characteristics based on a

maximum thrust production of 1360g from a single motor. The deflection plot in Figure

2.4 (next page) shows a maximum deflection of .06925mm with a factor of safety of 19;

such a small deflection is considered negligible and should not affect operation.

Page 21: End of Semester Design Report Final Version

Page 21 of 75

Figure 2.4: Deflection plot of arm under maximum thrust loading conditions

Additionally, the arms are analyzed under free-fall crash conditions from a 1m drop. The

result of the 300N simulated loading (Figure 2.5) is a factor of safety of 2.28, meaning

failure will not occur even if the quadcopter were to malfunction mid-flight and land

directly on an arm.

Figure 2.5: Von Mises stress plot of arm under 1m freefall crash loading conditions

Page 22: End of Semester Design Report Final Version

Page 22 of 75

The selected motor has a bolt hole spacing that exceeds the width of the aluminum

arm, meaning that a motor mount must be installed. This component is made from 1/8”

aluminum plate and includes holes that correspond with the bolt pattern on the motors

as well as material removed for weight reduction and heat dissipation. Similar to the other

rigid components of the assembly, it is important that the deflection demonstrated by

these mounts under expected loading conditions be minimized. Since the placement of

the motor mount represents an overhang beam, a thicker piece of aluminum is chosen in

order to reduce the effects of the bending moment caused by the applied thrust, which is

assumed to be in line with the axis of the motor. At maximum throttle, the expected

deflection of the component’s outermost edge is insignificant at a value of 0.04266mm,

as presented below in Figure 2.6.

Figure 2.6: Deflection plot of motor mount under maximum thrust loading conditions

An analysis of the stress concentration plot (Figure 2.7, next page) shows that a

significant amount of stress exists at the tip of the bolt hole nearest to the motor. Although

the factor of safety is an acceptable value of 4.89, it is also worthy to note that the area

where stress is maximized is located directly above the square aluminum arm. The extra

Page 23: End of Semester Design Report Final Version

Page 23 of 75

material below this segment will reinforce the motor mount and will distribute the stress

to a section further along the length of the mount where the aluminum arm is not present.

This section is designed with a large fillet to alleviate the critical stresses seen by this part.

Figure 2.7: Von Mises stress plot of motor mount under maximum thrust conditions

Section D: Center Plate Design

The center plate is responsible for attaching all 4 arms together, with the upper

plate holding the controller mount and Tx/Rx antenna in place and the lower plate

holstering the battery and camera mount. Both the upper and lower center plate are

subject to high bending moments, since the weight of the entire vehicle is being

transmitted from the landing gear through the arms into the central console. Therefore,

material selection is as always a key factor in the design: the center plate material

properties should include resilience to bending and impact loads, machinability and

compatibility with the aluminum arms, and aesthetics. Plywood, acrylic, and

polycarbonate are all reasonable material selections for the application. Aluminum is

immediately ruled out due to interference issues with the electronics and wiring and

Page 24: End of Semester Design Report Final Version

Page 24 of 75

carbon fiber is avoided for the same reasons it is not selected as the arm material.

Although plywood offers a cheap and replaceable center plate, it is not aesthetically

pleasing, and does not exhibit sufficient strength characteristics, as it is prone to cracking

along the grain from fatigue stresses. Acrylic sheet offers poor impact resistance, a quality

that is a necessity for a proper center plate design. While slightly more expensive, 3/16”

high-impact polycarbonate sheet is selected for the center plate material due to its high

strength characteristics and resistance to impact loading. The plate is shaped such that

the weight is minimized, bolt placement is optimal for the expected levels of stress, and

the wires are able to be routed comfortably throughout the frame to connect all integrated

electronics.

Like the arms, the center plate is analyzed using maximum thrust loading as well

as free-fall crash conditions. Figure 2.8 and 2.7 (next page) depict the deformation plots

and Von-Mises stress, respectively, for a maximum thrust of 1360g being applied from

each motor. Given this applied loading, the deformation can be considered negligible at a

value of 0.2438 mm and the factor of safety is well within the acceptable limit.

Figure 2.8: Deformation plot of center plate under maximum thrust loading conditions

Page 25: End of Semester Design Report Final Version

Page 25 of 75

Figure 2.9: Von Mises stress plot of center plate under maximum thrust conditions

Stress and deformation plots are shown in Figure 2.10 and 2.11(next page) for loading due

to a crash landing scenario. Under a 500N load, the deformation is significant at 8.126mm

but the plate does not fail due to the high-impact characteristics of the material. The

factory of safety for this loading scenario is 1.88. With the smallest factor of safety in the

design, this component will be the first to fail. These plates are designed with this

consideration in mind, as they are cheap and readily replaceable

Page 26: End of Semester Design Report Final Version

Page 26 of 75

Figure 2.10: Deformation plot of center plate under 1m freefall crash conditions

Figure 2.11: Von Mises stress plot of center plate under 1m freefall crash conditions

Page 27: End of Semester Design Report Final Version

Page 27 of 75

Section E: Landing Gear Design

The landing gear design consists of 4 sets of 2 concentric polyvinyl chloride (PVC)

tubes. The smaller tube is attached to the lower surface of the arm by a compression spring

which will serve to absorb the shock of a crash landing. Not only will this design reduce

the impact force of landing on the arms, but will also allow for the quadcopter to land on

uneven ground without the risk of toppling. The spring is selected based on the expected

loading of a 1m fall in order to ensure that the camera gimbal is at least 2in above the

ground at maximum compression. Calculations show that a steady, balanced landing will

only compress the spring 0.136in: this small displacement is desirable because the

purpose for this spring-damper assembly is to reduce impact caused only by a heavy

landing. When subject to forces exerted from a 1m free fall, the compression of the spring

is 1.39in. Since this scenario is considered worst case, compression is impeded at 2in to

avoid the need for unnecessary material and to leave adequate clearance for the camera

gimbal. A modeled view of a single landing gear assembly is available below in Figure 2.12.

Figure 2.12: 3D model of spring-loaded PVC landing gear assembly

Page 28: End of Semester Design Report Final Version

Page 28 of 75

PVC was chosen over aluminum for this application because it is characterized by

high compression strength while still remaining extremely lightweight compared to the

alternative. The location of the landing gear is limited by the viewing angle of the camera

(to avoid video obstruction), but must be placed such that the moment arm of the load

applied during landing is minimized; a length of 5.5 inches from the central axis satisfies

both of these conditions.

Section F: Motor/ Propeller Selection and Dynamics

Motor and propeller selection is a vital design requirement to ensure stable and

efficient flight of a multirotor. This process can be simplified by analyzing readily

available motor and propeller combinations, computing the thrust requirements needed

to lift the all-up-weight(AUW) of the vehicle, and comparing the characteristics of each

combination. Specifically, it is pertinent to take thrust production, power consumption,

RPM, efficiency, weight, and cost into consideration. Thrust production is the guiding

factor in this selection process, since it is this value that counteracts the weight and allows

the quadcopter to maneuver. A rule of thumb that is used as a standard for quadcopter

design is that the combined thrust of all four motors must generate double the AUW,

meaning that hovering conditions should be achieved at 50% of maximum throttle. This

standard is quite intuitive: hovering at less than this value will cause the vehicle to become

too responsive to changes in throttle, which will reduce stability and increase vibration.

At a higher value, the motors will consume more power than needed to create the

necessary thrust, causing greatly reduced flight time and making the vehicle sluggish and

unresponsive.

Page 29: End of Semester Design Report Final Version

Page 29 of 75

Another consideration in the selection of motors and propellers is the RPM value.

It is optimal to keep the angular velocity of the blades as low as possible; reducing the

RPM will reduce the vibrations commonly caused by electric motors, a necessity for first-

person video applications. As a consequence of reducing the kv rating of the motor (a

constant value that is used to classify motors and is defined by the RPM value with 1V

being applied and no loading), the propeller diameter must increase to produce the same

amount of air flow through the sweep area of the blades. A spreadsheet, shown on the top

of the next page in Table 2.2, is used to organize the motor characteristics calculated using

a maximum blade diameter of 12” and a pitch of 4.5”; although smaller propellers with

larger pitches are also analyzed, they are excluded early in the selection process due to an

inability to meet hover requirements and a significantly reduced efficiency and estimated

flight time.

Page 30: End of Semester Design Report Final Version

Page 30 of 75

Table 2.2: Detailed quadcopter motor spreadsheet

After several iterations of calculations, along with the support of reliable software

used for quadcopter power systems analysis, a Tiger Motor 3508-16 700kv motor with

12" diameter propellers is chosen as the optimal solution. This combination provides

1360g of thrust per motor (manufacturer specification) with hover occurring at 47%

throttle and a 15 minute mixed-flight time in junction with the selected battery. The

specific thrust of a motor is a value closely related to the efficiency, representing the

measure of thrust production, in grams, per unit of electrical power supplied, in Watts.

The selection process is highly dependent on this quantity; with a value of 6.94 g/W the

MN3508-16 is nearly unbeatable and is well worth the price. The specific thrust can be

easily measured through experimental means, and will be scrutinized for conformity to

the manufacturer’s specifications when the testing phase of the project begins. All other

Page 31: End of Semester Design Report Final Version

Page 31 of 75

competitors with similar performance characteristics are either unavailable or do not

meet minimum thrust requirements.

Due to the vehicle’s autonomous functionality, calculations must be carried out to

verify that the sensors responsible for object avoidance have an adequate response time

with respect to the movement of the quadcopter. These calculations are imperative to the

safety of the frame and propellers; if the reaction time is over the range that will allow all

necessary signals to be processed and transmitted to thrust commands within a certain

distance (given by the specifications of the sensors), the quadcopter will not be able to

avoid a crash. Computations for flight dynamics are conducted for a maximum angle of

attack of 45°. For horizontal travel, each motor must operate at 70% throttle, giving a

resultant velocity of 12.33 mph. The time required to traverse the allowable radius of

0.75mi at constant horizontal velocity is 3 minutes and 36 seconds, which verifies that a

round trip at these conditions is achievable given the expected battery life of 15 minutes.

At full throttle, the vehicle moves horizontally at 16.44mph, with a resultant velocity of

23.25mph. These calculations are compared with output of the software used to conduct

motor selection, which estimates a maximum velocity 26.1mph. Some variation with these

calculations exists due to necessary approximations for the drag coefficient and the acting

surface area, but are considered negligible in relation to the time constant characteristics

detailed in Chapter 5.

Page 32: End of Semester Design Report Final Version

Page 32 of 75

Section G: Vibration Reduction

Vibration is a common issue encountered in quadcopter design and must be

accounted for to reduce electronic malfunctions and stabilize video feed. The multiple

possibilities for vibration dampening apparatuses and supplements must be investigated

based on their purpose, functionality, and practicality. Vibration originates from the

motor, travels through the mount and arms, and reverberates throughout the center

plates, affecting both mechanical and electrical systems along the way. Although the

logical conclusion suggests that maximizing the number of dampened connections within

the assembly will minimize the vibrations, the slight angular imbalance that a damping

device would produce when placed between motor and motor mount or between arm and

center plate is extremely undesirable: the increased chance for an unstable flight is not

worth the slight reduction in vibration. Therefore, serious precaution must be taken when

determining which areas require dampening and which can be left rigid.

For example, a SECRAFT anti-vibration O-ring damper (as depicted in Figure 2.13)

is an original design consideration used to isolate the upper and lower center plates from

the arms.

Figure 2.13: SECRAFT anti-vibration damper considered for vibration reduction

Page 33: End of Semester Design Report Final Version

Page 33 of 75

Although this part would greatly diminish the vibration seen by the center plates, the

incorporation of this component in the design would cause arm deflection with respect to

the reference frame even at hover, causing thrust to be wasted and efficiency to be

sacrificed (it is an absolute requirement that the direction of thrust remain orthogonal to

the reference plane of the frame). Instead of including these dampers and mounting the

controller directly onto the center plate, the arms are bolted between upper and lower

center plates and the controller is isolated on an entirely separate plate. This plate receives

its own damping with the cylindrical rubber dampers shown in Figure 2.14 below; these

separators insulate some of the vibration passing through the center plate and relieve the

controller of any unwanted impact forces from an improper landing for a significantly

decreased cost as compared to the SECRAFT damper

Figure 2.14: Cylindrical rubber damper selected for vibration reduction of controller

Page 34: End of Semester Design Report Final Version

Page 34 of 75

As a supplement to the cylindrical mounts, RTOM Moongel will be used to adhere

the controller to the polycarbonate controller plate. These pads are sold commercially for

drum pads, but have been proven to isolate vibration much better than alternative foam

adhesives and are less complex to implement and maintain than O-ring suspension

structures.

The camera mounting apparatus is another location within the assembly where

vibration reduction is key. Although custom solutions are considered for the design of the

mount, an off-the-shelf solution is the selected method. Construction of a custom camera

gimbal would not only require 2-axes of rotational freedom (necessitating two separate

servo motors), but would also involve a camera holster and a damping system to reduce

camera vibration. Overall, the cost of this type of custom equipment is not an efficient use

of budget, since cost-effective, reputable camera gimbals are readily available on the

market. These gimbals are designed to reduce the “jello” effect commonly witnessed in

first person video applications, and can satisfy vibration reduction with a single

mountable apparatus.

A final effort to reduce the detrimental effects of motor vibration is the use of

Threadlocker on each nut and bolt. Although this will not significantly reduce vibration

through the frame, application of Loctite Blue will prevent unscrewing of the components

that hold the frame together while allowing for maintenance if necessary.

Page 35: End of Semester Design Report Final Version

Page 35 of 75

Chapter 3: Power

In order to be operational, this quadcopter requires a power source and a method of

distributing power throughout the system to its many components. Due to the nature of

the project and its operation, this source obviously can not be stationary on the

ground. Therefore, a battery must be selected that will meet all of the functions and

requirements each individual subsystem needs, along with the overall specifications of

the quadcopter. This includes the flight time, the current draw of electrical components,

and the power supplied to the motors. In order to correctly distribute power throughout

the quadcopter, electronic speed controls (ESC’s) and voltage regulators must be used.

Section A: Battery Selection

Selecting an operational battery for use on this quadcopter is an iterative process with

the motor selection. Because each individual motor draws a large amount of current, a

battery must be selected that can safely support the combined current draw of the motors

and all other electrical components on the quadcopter. In order to do this, the first thing

determined was the combined current draw of the entire system, which came out to 67.73

A. In order to operate safely, we decided that the battery selected must match this current

draw with a safety factor of at least 2. Therefore, the battery selected must support 135.5

A of current draw throughout the system.

Component Motors Video Transmission

Telemetry Sensors Controller/GPS Total

Current Draw

(Amps)

16.8 (each)

.05 .02 .035 .11 67.73

Fig. 3A.1: Current Draw of Individual Quadcopter Components

Page 36: End of Semester Design Report Final Version

Page 36 of 75

The battery must also be able to support the system throughout the entire flight time

spec, which is set at 15 minutes. This means that for consisted mixed flight, which is at

approximately 75% throttle, the battery must be able to safely supply power to the system

for 15 minutes. In order to calculate the estimated mixed flight time, we must first figure

out the total current draw of the quadcopter at 75% throttle. From the motor data sheet,

it can be seen that during mixed flight, the motors are drawing approximately 10A each,

making the total system current draw 40.77A. In order to find flight time, we divide the

capacity of the battery (10 Ah) by the total current draw of the system. We then multiply

that number by 60 minutes to give us our estimated flight time. Below, you can see our

calculation.

Flight Time = (Capacity/Current Draw)*60 (Eq. 3.1)

10/40.77=.2453 , 60 * .2453=14.72 min=14 min 43 sec

As you can see, our battery can adequately provide enough power to the entire system for

nearly the entirety of our goal flight time of 15 min. Here, you can also see our estimated

flight times if the motors were run at different throttle percentages for the entirety of

flight.

Throttle 50% (Hover)

65% 75% (Mixed)

85% 100%

Current Draw (Amps)

3.8 7.4 10 13.5 16.1

Estimated Flight Time

37 min 35

sec

19 min 46

sec

14 min 43

sec

10 min 58

sec

9 min 13

sec

Fig. 3A.2: Quadcopter Flight Times based on Constant Throttle

Page 37: End of Semester Design Report Final Version

Page 37 of 75

Section B: ESC’s and Voltage Regulator Selection

As mentioned previously, Electronic Speed Controllers (ESC’s) and voltage

regulators help determine how much power is provided to each component of the

quadcopter. While the battery may have a nominal voltage of 14.8 volts, not every

component on the quadcopter is made to handle that much voltage. Therefore, we need

voltage regulators to limit the amount of voltage that reaches the input of certain

components. There are 3 different voltages that components on the quadcopter operate

at. As you can see in figure 3B.1, those voltages are 5 V, 12 V, and the 14.8 V coming from

the battery. Custom voltage regulators will help us achieve the needed voltage input at

each of these components. While linear voltage regulators are the simplest form of

regulator, we will be looking into the use of switching regulators. Linear regulators

operate by taking the difference between the input and output voltages and burning it up

as heat waste. Because there are large differences between regulator input and output

voltages on this quadcopter, a large amount of waste heat energy would be produced,

meaning a low efficiency of the regulators themselves, along with the need for additional

bulky heat sinks, which would reduce the battery life of the copter.

Switching regulators work by taking small amounts of energy, bit by bit, from the

input voltage source, and moving them to the output of the voltage regulator. The energy

losses are relatively small in moving energy in this fashion, and the result is a much higher

efficiency than that of a linear voltage regulator. Since switching regulator efficiency is

less dependent on input voltage, they can power useful loads from higher voltage

sources. A basic diagram of a switching regulator can be seen below in Fig. 3B.2. When

the switch is closed, the inductor will begin to generate an electromagnetic field, and the

diode will act as an open circuit, for it is reverse biased. When the switch is opened again,

Page 38: End of Semester Design Report Final Version

Page 38 of 75

the inductor field will discharge and produce a current, causing the diode to conduct until

discharge is complete. The value of the inductor determines the minimum load

requirement of the regulator. If this value is not met, the regulator will not function

properly and may even be damaged.

Quadcopter Components

Multiwii AIO Flight

Controller

800 mW Transmitter

Motors Ultrasonic Sensors

3DR Radio Telemetry

Operational Voltage

5 V 12 V 14.8 V 5 V 5 V

Fig. 3B.1: Operational Voltage of Quadcopter Components

Fig. 3B.2: Basic Switching Regulator Circuit

Our motors, on the other hand, need a different form of input regulation. Our

ESC’s will control how fast each motor will be spinning during flight, based off of

controller commands and coded in constraints. Essentially, each ESC works currently by

receiving commands from a physical ground controller. From there, each ESC will send

a PWM (pulse-width modulated) signal to the motors, controlling the speed of each motor

individually. Essentially, each pulse width of the signal being sent from the ESC’s

corresponds to a certain motor speed. If the pulse width is increased, the speed at which

the motor turns is increased.

Page 39: End of Semester Design Report Final Version

Page 39 of 75

Chapter 4: Communications

With a project of this nature, a well performing system of communications is of the

utmost importance. The microcontroller, besides its own internal data flow, must send

that data to the base station for monitoring, and receive data from it (our remote

commands). All the while, the flight controller must be receiving and outputting reliable

signals to the electronic speed controllers, so that flight remains stable and smooth. An

added layer of complexity is the inclusion of a live video feed, despite it being a separate

sub-system. A basic, high level diagram follows:

Figure 4.1: System Level Communications Diagram. Solid lines represent hard wired

connections, and dotted lines represent wireless connections

This diagram, while providing useful information, is very high-level, and it is important

to take a much closer look at the system for a thorough analysis. It can be broken up into

four different sections (A-D). One is the on-board and hard wired data, coming from

sensors and GPS (A). The second is the telemetry link, for transmission and reception of

important flight data and controls from board to base station, and visa-versa (B). The

third is the video feed, as, from a system perspective, it does not interact with anything

on-board the quadcopter (C). The final section is the manual controls and overrides (D),

and all are detailed through the next few pages. A much more detailed and less abstract

data flow diagram is included in figure 4.2, which will be referenced in each section.

Page 40: End of Semester Design Report Final Version

Page 40 of 75

Figure 4.2: Detailed Data Flow and Communications Diagram

Section A: On Board Data Flow

The on-board flight controller is ATMega 2560-based, and operates with a 16MHz

clock rate. This is important, as we are integrating additional sensors to those already on-

board. Internally, the controller includes a 6-axis gyroscope, accelerometer, altimeter,

and magnetometer. The gyro provides pitch/roll/yaw information, which is made more

precise with the magnetometer (it prevents the gyro readings from “drifting” over time).

The accelerometer provides, trivially, information on instantaneous acceleration (of three

axis, pitch/roll/yaw), and the altimeter provides altitude. All these sensors provide their

data through the use of an on-board, expandable, I2C bus. We are integrating an external

ultrasonic sensor to this bus, as well, to be used for object avoidance. Every sensor used,

and the board itself, supports the “Fast” I2C data rate, which is 400kHz. This was shown

Page 41: End of Semester Design Report Final Version

Page 41 of 75

in figure 4.2 by the green lines of “fast I2C” sensor data. The performance (time constants,

latency, processing, etc) of the controller and sensors is explained further in chapter 5.

Also included in the flight controller is the capability to add a GPS module,

something that is integral to the success of our project. The interfacing is done through a

serial (RS232) connection, shown in figure 4.2, with a 10Hz update rate. It was originally

thought that the video transmitter, operating at 1258MHz, would cause interference to

the GPS, making it more difficult to obtain a lock. This did not turn out to be true, as the

commercial GPS we are using only utilizes the “L1” frequency of 1575MHz, not the

theoretically troublesome L2 frequency of 1228MHz, as the L2 frequency is reserved for

military use.

Section B: Telemetry

The transmission of data to and from the flight controller and base station software

is accomplished through the use of a dedicated telemetry link. It uses the 433MHz

frequency, a part of the 70cm ameteur radio band. This frequency, without an ameteur

radio license, is illegal to use. Team leader Daniel Worts (author of this chapter), however,

possesses this license, call sign KD2HJY, thus allowing the team to take advantage of this

frequency; it provides tremendous range and object penetration improvements when

compared to the other popular telemetry frequency, 915MHz. We will be using a low pass

filter on the on-board end of the telemetry link, in order to filter out the potentially

problematic second and third harmonic interference to any 915MHz systems in the area

and to our 1.3GHz video transmission, respectively. This filter was designed to pass 100%

signal strength at 433MHz, while attenuating the signal -40dB (1% strength) at 915MHz

and -60dB (0.1% strength) at 1258MHz.

Page 42: End of Semester Design Report Final Version

Page 42 of 75

Making use of an online calculator and PSpice, it was determined that a

butterworth filter did not provide adequate performance, and a Chebyshev model was

chosen. The required filter order was experimentally determined to be N = 7, and the

passband ripple was set to be 0.05dB, the minimum value that still met design

specifications. The resulting design is shown in figure 4.3, with the simulation results in

figures 4.4 (linear scale) and 4.5 (log scale).

Figure 4.3: Telemetry Low Pass Filter Design, N=7, Chebyshev

Figure 4.4: Frequency Sweep, Linear Voltage Scale (Y axis), showing 100% (peak of

ripple) signal strength transmission at 1258MHz

Page 43: End of Semester Design Report Final Version

Page 43 of 75

Figure 4.5: Frequency Sweep, Log Voltage Scale (Y axis)

To realize this filter, the following components will be used. They will all be

purchased from Digi-key.

Component Value Tolerance Rated V/I Part Number

C1 = C4 6.0pF +/- 0.25pF 50V 445-5036-1-ND

C2 = C3 11pF +/- 5% 50V 490-1404-1-ND

L1 = L3 20nH +/- 5% 550mA 490-6873-1-ND

L2 24nH +/- 5% 500mA 490-6878-1-ND

Table 4.1: Telemetry Filter Components

The telemetry kit uses a standardized format for sending data, called MAVlink

(Micro Air Vehicle Link) Protocol Framing. This protocol sends (and receives) data

through the use of six standardized bytes (zero through five), then the data (a variable

amount of bytes), and lastly a checksum byte, to ensure data integrity. The following table

(4.2) describes the MAVlink data format, where n denotes the byte index.

Page 44: End of Semester Design Report Final Version

Page 44 of 75

Name

Byte Index Purpose

Start 0 Represents the start of data (frame) transmission

Length 1 Represents the length of data (payload)

Packet Sequence 2 Allows for detection of data loss

System ID 3 Identifies the originating “sender” (unchanged for us)

Component ID 4 Identifies the component sending data (i.e. the IMU)

Message ID 5 Identifies how to decode the specific payload type

Payload 6 to n+6 The data in the message

CRC n+7 & n+8 Checksum of the packet

Table 4.2: MAVLink Data Format

The MAVLink format would not be so useful were it not also supported by our

ground station software. That is to say, the software also knows how to interpret the type

of data, where it is coming from, what it actually is, and how to display it on-screen in a

format familiar to humans. This is the same way we will be sending commands - by using

the software, which frames our data in MAVLink protocol, where it is easily received and

interpreted at the microcontroller. Remote commands will consist of GPS waypoint

destination updates and on-the-fly flight mode switching. The specifics of flight modes

are detailed in chapter 5 (software).

Page 45: End of Semester Design Report Final Version

Page 45 of 75

Section C: Video

There are many options available to implement a wireless, live video feed, but few would

fit our design requirements. The commonly used frequencies for video transmission, as

defined by the FCC, are 900MHz, 1.3GHz, 2.4GHz, and 5.8GHz. There are further

limitations in each of these frequencies for power output, and, just as with our telemetry

frequency of 433MHz, some require an ameteur radio license to use. Again, because team

leader (and current chapter author) Daniel Worts has this license, the team is provided

with a more robust set of options. In weighing these options, the main considerations for

us included range and potential interference, as well as practicality. The commercial

availability of video transmitters/receivers ruled out 900MHz, and 1.3GHz was chosen

for it’s superior range and object penetration properties. In addition, the size of high gain

antennas for 1.3GHz is reasonable enough (in terms of real estate) to fit on the

quadcopter. 2.4GHz and 5.8GHz do not provide sufficient video range, and 2.4GHz is

used as our manual control frequency (see section D). Figure 4.6 shows a block diagram

of the system, which is a more detailed version of the right three blocks in Figure 4.2.

Figure 4.6: Video Feed Block Diagram

Page 46: End of Semester Design Report Final Version

Page 46 of 75

The specific high gain antennas chosen were done so based upon polarization and size.

It was determined that circular polarization provided the optimal signal propagation, as

linear polarization would not be sufficiently maintained through the movement and

tilting of the quadcopter. Circular polarization can be left or right handed, and right

handed was chosen, because it had more commercially available antennas. The final

chosen antenna for video transmission is a three-lobe cloverleaf, which pairs very nicely

with the final choice of receive antenna, a five-lobe skew-planar. It would be a senior

project in and of itself to design this video transmission and reception system, including

the antennas and analog to digital (USB) convertor, from the ground-up, so we had to use

commercially available components for all. Though we will only be able to display

720x480 resolution from the live feed, due to USB 2.0, analog to digital conversion, and

price limitations, we will still be storing the full 1920x1080p HD video on a micro SD card

inside our camera.

Filtering the video transmitter output is necessary to suppress harmonic interference

with our 2.4GHz transmitter. A number of options were weighed, and, ultimately, it was

decided that a low pass filter would be created by the team (Figure 4.7). The first and

major design consideration is the attenuation provided at 2.4GHz. This was defined to be

60dB, which corresponds to a 100x drop in signal strength. This specification was utilized

in order to find the order filter needed, as well as the type. Because it provides steeper roll

off, a Chebyshev model was used. The 3dB cutoff point was set to be 1460MHz, which

allows for full strength signal transmission at 1258MHz (with respect to ripples), and the

passband ripple was set to be 0.2dB. This provided realistic component values, as well as

a minimum loss in signal strength with varying component values due to tolerances. The

order filter to provide 60dB of attenuation at 2.4GHz was found to be N=9. The filter

schematic is shown in figure 4.7, with frequency sweeps shown in figures 4.8 (linear) and

4.9 (log, to display 60dB drop). The output was normalized to be 1 volt maximum to make

observation simple.

Page 47: End of Semester Design Report Final Version

Page 47 of 75

Figure 4.7: Video Low Pass Filter Design, N=9, Chebyshev

Figure 4.8: Frequency Sweep, Linear Voltage Scale (Y axis), showing 100% (peak of ripple) signal strength transmission at 1258MHz

Figure 4.9: Frequency Sweep, Log Voltage Scale (Y axis)

A simulation was also done to see the behavior change of the filter with varying

component values, in order to confirm function with realistic capacitor and inductor

tolerances. All values were increased by 10%, and, observing figure 4.10, it can be seen

that the vital characteristics remained functionally unchanged.

Page 48: End of Semester Design Report Final Version

Page 48 of 75

Figure 4.10: Frequency Sweep, Linear Scale (Y axis), All Component Values +10%

To physically construct this filter, the following components will be utilized. They will

all be purchased from Digi-Key. Reasonably priced, available, and sufficiently rated

inductors could not be found for L1 and L4, but, by using a parallel combination of two

15nH inductors, the needed values will be achieved.

Component Value Tolerance Rated V/I Part Number

C1 = C5 3.0pF +/- 0.1pF 250 Volts 712-1347-1-ND

C2 = C4 5.0pF +/- 0.1pF 50 Volts 1276-2129-1-ND

C3 5.1pF +/- 0.25pF 250 Volts 712-1359-1-ND

L1 = L4 15nH (two in parallel)

+/- 5% 1.1 Amps (2.2 together)

535-12231-1-ND

L2 = L3 8.3nH +/- 5% 1.5 Amps 490-7682-1-ND

Table 4.3: Video Filter Components

Page 49: End of Semester Design Report Final Version

Page 49 of 75

Section D: Manual Controls and Overrides

Before the team can implement autonomous navigation, we must have basic manual

controls functioning; one must walk before they can run. A bound 2.4GHz, 6-channel

transmitter and receiver is being used for this. Because of our telemetry and video, lower

frequencies were not an option, and 2.4GHz is by far the most commonly used for radio

control vehicle controls. That is not to say that it was not a design consideration - the

2.4GHz system provides enough range, should controls need to be taken over mid-flight

(due to some unforeseen software or electro-mechanical failure), and there are no

interference issues.

The four primary channels of the transmitter/receiver are defined as throttle,

elevator, aileron, and rudder. The last two “auxiliary” channels are simply switches, which

will be used for selection of manual or autonomous flight, and parachute deployment.

Each channel of the receiver is wired to it own serial input pin on the flight controller,

which interprets and processes the input of every channel (when in manual mode), and

sends the corresponding pulse-width modulated signals to the electronic speed controller

of each motor. The manual, four-channel input is the equivalent to the data given by the

on-board sensors. More detail about the ESC operation was provided in chapter 3, and

more detail about the flight controller processing is included in chapter 5. Figure 4.2

displays the (color-coded) differences in input to the controller when in autonomous

versus manual mode.

Page 50: End of Semester Design Report Final Version

Page 50 of 75

Chapter 5: Software and Controller Hardware

Section A: An Introduction to the Role of Software in the Autonomous Quadcopter

Given that one of the primary specifications in the design of the quadcopter is for it to

be autonomous, software plays a major role in that all flight controls and navigation must

be computed and applied via software and not through a manual controller. That being

said, there are multiple levels of software and controls to be discussed in this

section. First, an introduction and description of the open-source softwares to be used in

the project will be given in the next section. Open-source softwares are being used for

both the flight controller and the ground station. This includes a description of the

software interfacing of the information passed via telemetry, which is discussed in

Chapter 4, Section B.

Next, an in-depth explanation of the flight controller will be given at both the

hardware and software level. The flight controller includes multiple loops that run on

different timers. The operations controlled on each these timers will be described in order

of the fastest timer to the slowest. Once that is done, the current status of the software

programming and interfacing will be given.

Page 51: End of Semester Design Report Final Version

Page 51 of 75

Section B: Open-Source Software

As was mentioned in the previous section, there are two levels of open-source softwares

being used in this project. The first level exists at the flight controller level and is used to

manage all in-flight input from the sensors and gyros, receive GPS inputs from the ground

station, and relay information back to the ground station. This open-source software is

called MegaPirateNG and is built on-top of another open-source software called

Arducopter which is a flight control manager built for Arduino. The functionality of this

software will be discussed in greater detail in the next section.

Figure 5.1 - Software Interfacing between Mission Planner and the Flight Controller.

As for the ground station, a graphical user interface (GUI) called Mission Planner

(also by Arducopter) is being used. This program provides widgets for monitoring the

status of the flight, and a built-in map to view the GPS location of the vehicle. In addition,

waypoints can be passed from the ground station to the flight controller to provide

navigation points in the flight path. This communication is done through a packing C-

Page 52: End of Semester Design Report Final Version

Page 52 of 75

structs via a serial protocol called MAVlink. The interface between the ground station

and the quadcopter can be seen in Figure 5.1. The ground station maintains a C++ style

object for each quadcopter in the air (in this case, only one) and uses information relayed

from the vehicle to keep the object up to date with all of the latest

information. Furthermore, the ground station communicates back to the flight controller

with GPS waypoints. Through the MAVlink protocol, it can write a waypoint, read and

clear the current one, and query to determine if it has reached its current waypoint. These

waypoints can be updated in real time through the GUI that the software provides.

Section C: Flight Controller and Sensor Performance

With any program that is written for the arduino platform, the main file consists of two

functions from which all other functionality is derived Figure 5.2. The first function that

is processed and ran is the the setup() function. In most cases, this function will be

used to allocate memory, initialize the required global variables, and any other

initialization processes that are necessary. In the case of the flight controller software,

the setup function populates the arduino’s memory with the initial variable values and

establishes the power sources from the battery or power supply to the board. The final

function performed by the setup function is to call the second major function in the main

file, loop().

Page 53: End of Semester Design Report Final Version

Page 53 of 75

Figure 5.2 - Basic arduino file setup

As the name implies, the loop function is an infinitely running loop that is used to

contain the main functionality of the arduino board. The contents of this function is

entirely application dependent and will therefore vary with the desired output of the

arduino. Obviously, in this case, the desired output of the arduino is to fly and navigate

the quadcopter. When considering everything that goes into the autonomous flight of a

vehicle, this amounts to a large number of processes. To manage this, the functions are

divided into separate functions and loops that run on different timers. These different

timers run at different speeds to give more processor time to certain functions and

schedules others at a slower rate. A high level overview of these timers and the controls

they process can be seen in Table 5.1.

Page 54: End of Semester Design Report Final Version

Page 54 of 75

Timer Loop Name Speed (Hz) Controls

timer 0 (pin 13, 4) fast_loop() 100 - process any deferred messages - PWM motor controls - inertia calculations - roll, pitch, and yaw

timer 2 (pin 10, 9) fifty_hz_loop() 50 - read/adjust altitude - update throttle output - sonar (if enabled)

timer 1 (pin 12, 11) medium_loop() 10 - GPS and compass - navigation update - battery monitor

timer 3 (pin 13, 4) slow_loop() 3.33 - camera

timer 4 (pin 5, 3, 2) super_slow_loop() 1 - various logging - auto power down

Table 5.1 - High Level Overview of Flight Controller Software

The loop titled fast_loop() is actually the main loop of this arduino software.

As Table 5.1 indicates, this loop handles many of the main flight controls just as adjusting

for changes in the roll, pitch, and yaw and updating the outputs to the PWMs which

directly control the motors. Since this loop contains the main functionality of the system,

it is up to this loop to schedule the other tasks not found in this control loop. The way this

works in the software is that, once the fast loop has completed an iteration, it will “tick”

the scheduler to and assign any functions that are due to run. Figure 5.3 gives information

regarding how often each function should run. Once this is done, the first task of the fast

loop the next time it runs is to completed any scheduled tasks. This ensures that all tasks

are being performed and is not starved for too long.

Page 55: End of Semester Design Report Final Version

Page 55 of 75

Figure 5.3 - Processes scheduled by the fast loop. The value in the 0 index is the function name, index 1 indicates how often they should be run, and index 2 is an approximation

of the run time

Section D: PID Software Implementation

The previous section in this chapter discusses the multiple timers and the functions on

those timers that the microcontroller on the quadcopter uses to update both its position

in space and its orientation in the air, otherwise known as the roll, pitch, and

yaw. Whenever there is an operation to be performed that involves adjusting the system

from a current measurement to a new, desired measurement, an appropriate technique

to employ is PID control. PID stands for present (or proportional), integral, and

derivative error and can be used by the quadcopter to achieve stability. In terms of said

Page 56: End of Semester Design Report Final Version

Page 56 of 75

stability, “error” refers to the difference between the current roll, pitch, or yaw angle and

the desired values for each. Before going into how the software implements PID control,

a more in-depth description is appropriate.

The basic equation for PID control is given by:

Response = KpP + KiI + KdD

where the ‘K’ values represent the coefficients to the proportional, integral, and derivative

errors, respectively. By tuning these coefficients, the importance of each error can be

altered in the system. The proportional gain coefficient, Kp, uses the present error in the

algorithm. The higher this coefficient, the more sensitive or loose the quadcopter will feel

to angular change. Oppositely, the integral gain coefficient, KI, is a weighted accumulation

of the past error in the system. Ideally, if, say, the yaw is tilted by 10 degrees, the integral

gain will be able to reproduce the reverse of that and adjust the yaw 10 degrees in the

opposite direction. Therefore, tuning the integral gain higher is good for handling

irregularities in the flight such as strong winds, however, for a mostly stable flight, the

integral coefficient is hardly necessary. Lastly, the derivative coefficient, Kd, measures the

rate at which the error is changing, which is why it is called the derivative factor. It is

sometimes called the acceleration parameter because it uses the current rate at which the

error is changing to predict the future error and make changes based on that rate. Figure

5.4 shows a diagram of the PID control loop with the input from the sensors divided into

its P, I, and D parts all going into the microcontroller which contains the control

algorithm.

Page 57: End of Semester Design Report Final Version

Page 57 of 75

Figure 5.4 - PID Control Loop implemented on the quadcopter for the roll, pitch, and yaw of the flight.

It was previously mentioned that PID control can be used to achieve flight

stability. Stability refers to the steady, as opposed to erratic, adjustment of the roll, pitch,

and yaw of the quadcopter. Roll, pitch, and yaw represent the three angular axes in 3D

space. If the quadcopter is flying straight forward, roll is the front-to-back angle, pitch is

the side-to-side tilt, and yaw is the title along the vertical axes stemming out of the

ground. Because the desired output of the system can be broken down into desired values

for the roll, pitch, and yaw individually, each parameter will have its own PID control and

their own three coefficient. However, since quadcopters are designed to be completely

symmetric, the coefficients should be the same across each axis.

It has already been discussed that the roll, pitch, and yaw are updated in the

fast_loop() of the microcontroller which runs at 100Hz. It is important that this runs

on this loop because the more often that inputs from the sensors are read and received by

the controller, the faster the PID algorithms can update. A commented example of the

this process, for the roll specifically, can be seen in Figure 5.5

Page 58: End of Semester Design Report Final Version

Page 58 of 75

static int16_t get_rate_roll(int32_t target_rate) { static int32_t last_rate = 0; // previous iterations rate int32_t p,i,d; // used to capture pid values for logging int32_t current_rate; // this iteration's rate int32_t rate_error; // simply target_rate - current_rate int32_t rate_d; // roll's acceleration int32_t output; // output from pid controller int32_t rate_d_dampener; // value to dampen output based on acceleration

// get current rate current_rate = (omega.x * DEGX100);

// calculate and filter the acceleration rate_d = roll_rate_d_filter.apply(current_rate - last_rate);

// store rate for next iteration last_rate = current_rate;

// call pid controller rate_error = target_rate - current_rate; p = g.pid_rate_roll.get_p(rate_error); i = g.pid_rate_roll.get_i(rate_error, G_Dt); d = g.pid_rate_roll.get_d(rate_error, G_Dt); output = p + i + d;

// Dampening output with D term rate_d_dampener = rate_d * roll_scale_d; rate_d_dampener = constrain(rate_d_dampener, -400, 400); output -= rate_d_dampener;

// output control return output; }

Figure 5.5 - Software implementation for PID control of the roll axis

The software example in Figure 5.5 implements what has just been discussed when

describing PID control. It defines the error has the difference between the current rate

and the target rate, and then uses that to obtain values for P, I, and D. To do so, it calls

the functions get_p(), get_i(), and get_d() which are part of an accessory PID

library. The coefficients for each part are built into the library as static variables and can

be adjusted as needed. From there, it gets the output value by summing up the P,I, and

D and then dampens (or accelerates, but usually dampens) it based on the differential

component which, again, uses the current rate of change to predict the future

Page 59: End of Semester Design Report Final Version

Page 59 of 75

error. Lastly, it simply returns the output value. This is done for the roll, pitch, and yaw,

all of which happen one time in the fast loop which operates 100 times a second.

Section E: Current Status of the Software

At this point in the construction process, the flight controller has been programmed

with the MegaPirateNG software, which was first manually configured to work with the

sensors, GPS, and telemetry kits located on the board. With that complete, a MAVlink

connection from the flight controller to the ground station was able to be established via

a USB cable. With the MAVlink connection, sensor inputs were able to be read and

transmitted to Mission Planner, which uses this data to update the graphical user

interface with the row, pitch, yaw, and altitude of the flight controller. The GPS has not

yet been interfaced.

As for the next step in the construction and testing process, it will be to replace the USB

cable connection with that of the telemetry connection so that wireless communication

can be established to transmit the same sensor data to Mission Planner. From there, the

GPS module can be interfaced with the flight controller to provide that location

information as well. The final steps in terms of the flight controller will be to supply power

to it from the on-board battery and to connect the PWM outputs to the motors and begin

tuning and testing the flight of the quadcopter. This will be done by tuning the PID

coefficients described in the previous section of this chapter. Since it would be difficult

to mathematically represent the quadcopter exactly as it performs, the best way to do this

is through a trial-and-error process of tuning the coefficients and examining how it

responds to control signals. This tuning will be done using the RC controller so that the

correct coefficients are in place for the autonomous flight.

Page 60: End of Semester Design Report Final Version

Page 60 of 75

Chapter 6: Conclusion

Although the group is slightly behind according to the semester goals set by the

preliminary schedule, significant progress will be made over the months of December and

January to ensure that a functioning quadcopter is ready for testing and tweaking by the

beginning of next semester. This progress involves assembling the entire frame, testing

all necessary equipment for conformance to manufacturer specifications, integrating all

mechanical and electrical components, and making headway on software

implementation. Due to the fact that the Autonomous Quadcopter Senior Project is a

relatively new venture at The College of New Jersey, with a somewhat unsuccessful

history, diligent testing and performance analysis must be completed to maximize the

potential for a stable flight and reliable integrated design to, ultimately, achieve success.

With projects of this nature, it is reasonable to assume that slight modifications in design

and implementation will be called for along the way; the proper steps will be taken to

guarantee prompt completion of open action items so that the testing phase of the project

can begin.

Page 61: End of Semester Design Report Final Version

Page 61 of 75

List of References

1. A Beginner’s Guide to Switching Regulators,

https://www.dimensionengineering.com/info/switching-regulators

2. A Survey of Quadrotor Unmanned Aerial Vehicles,

http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=6196930&url=http%3A

%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D6196930

3. Antenna Design, http://www.microwaves101.com/encyclopedias/antenna-design

4. Autonomous quadcopter swarm robots for object localization and tracking,

http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=6710447&url=http%3A

%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D6710447

5. Decibel Conversion, http://www.mogami.com/e/cad/db.html

6. Five Surprising Drone Uses (Besides Amazon Delivery),

http://news.nationalgeographic.com/news/2013/12/131202-drone-uav-uas-

amazon-octocopter-bezos-science-aircraft-unmanned-robot/

7. IRIS+, http://store.3drobotics.com/products/IRIS

8. Low Pass Filter Calculator,

http://highfields-arc.co.uk/constructors/olcalcs/lpf.htm

9. PID Controller Tutorial for Robots, http://robot-kingdom.com/pid-controller-

tutorial-for-robots/

10. Quadcopter Dynamics,

http://nbviewer.ipython.org/github/pestrickland/notebooks/blob/master/quadc

opter_dynamics.ipynb

11. Quadcopter Dynamics and Control, Randal W. Beard,

http://rwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=quadrotor:beards

quadrotornotes.pdf

12. Quadcopter Flight Dynamics, Mohd Khan,

http://www.ijstr.org/final-print/aug2014/Quadcopter-Flight-Dynamics.pdf

13. Quadcopter PID Explained and Tuning, http://blog.oscarliang.net/quadcopter-

pid-explained-tuning/

14. Radio Frequency Safety, http://www.fcc.gov/encyclopedia/radio-frequency-

safety

15. Radio Spectrum Allocation, http://www.fcc.gov/encyclopedia/radio-spectrum-

allocation

16. RTF XPX Heavy Lift Quadcopter with GPS,

http://xproheli.com/collections/multirotors/products/xpx-heavy-lift-quadcopter

17. Switching Regulators, http://www.linear.com/products/switching_regulator

18. Unmanned Aircraft Systems, https://www.faa.gov/uas/

Page 62: End of Semester Design Report Final Version

Page 62 of 75

Appendix A: About

Appendix A1: Bio

(Left to Right) James Rottinger, Benjamin Kushnir, Daniel Worts, Jordan Freedner

Daniel Worts is the team leader of the autonomous

quadcopter and one of two electrical engineers on the team.

He is primarily responsible for all of the RF communication

used on the vehicle and much of the mechanical/electrical

interfacing. Because of his experience, he is also leading the

electrical assembly. Outside of this project, he is very

actively searching for a full time job as an entry level

electrical/RF engineer.

Page 63: End of Semester Design Report Final Version

Page 63 of 75

James Rottinger, computer and software engineer, is

responsible for all software and computing components on

the quadcopter. This includes programming and

configuring the flight controller, the ground station, and the

interfacing of telemetry kits to both. Outside of this project,

he works as a software developer for the San Francisco based

start-up, Weebly, which he will be joining full-time upon

graduation in May.

Benjamin Kushnir is the mechanical engineer of the

team, responsible for frame design and structural analysis

of mechanical components. He is tasked with creating a

model of the entire assembly, construction of all mechanical

subsystems as well as motor/propeller selection. Alongside

this project, he currently works as a part-time Process

Engineer at a performance plastics facility, which he hopes

will progress into a full time position.

Jordan Freedner is the other electrical engineer and is

primarily tasked with creating a power system for the

project, along with electrical-mechanical

interfacing. Outside of this project, he is actively searching

for a full-time position as a power systems engineer.

Page 64: End of Semester Design Report Final Version

Page 64 of 75

Appendix A2: Realistic Constraints and Engineering Standards

Like any proper engineering endeavor, it is required that a set of standards and

constraints be identified and followed to certify a safe, economical, and ethical design that

will uphold the expectations of the user and observer. Although design constraints are the

first to be considered, these are detailed throughout the entire report and are therefore

not covered in this section. Instead, this section will discuss how the design is affected by

all other decisions that are made through the process.

In terms of importance, safety constraints are by far at the top of the list with a

project of this caliber. It is essential to understand the safety considerations with regards

to design and testing that must be made with any vehicle, especially with one that will be

flying overhead. On top of a reliable, rigid design, various fail-safes are incorporated into

the assembly to minimize the chance of the quadcopter falling out of the sky, such as a

battery voltage monitor to signify low power, and ultrasonic object avoidance sensors that

allow quick route correction in case of an unexpected obstacle. As a last resort, a

parachute operating on a separate power source will be deployed in case of severe

malfunction. These various safety constraints will provide reassurance to the user as well

as to those that are observing the flight of the quadcopter. Safety in regards to testing will

be maintained by ensuring that the software dictating autonomous control is entirely

functional before autonomous testing begins, and all initial testing will be conducted in

an open field, at very low altitude.

With green engineering experiencing a sudden increase in popularity, it is

important to understand the constraints that the environment places on the design and

operation of the quadcopter. Although the quadcopter is fully battery operated and

therefore uses no natural gas energy source, an important consideration to keep in mind

Page 65: End of Semester Design Report Final Version

Page 65 of 75

during design is noise pollution. The motors are the main source of noise during the flight

of the vehicle. With that in mind, the motor selection process includes noise as a decision

factor, although thrust production and expected flight time are both factors that hold a

much greater influence. Eventually, a motor was selected that will minimize the noise

levels (with more noise usually comes more vibration, which is another serious design

constraint). This motor is certainly not the cheapest, but is well worth the advantages that

it offers.

The social and ethical aspects of any drone design is a highly debated topic,

especially with current-day UAV design becoming so technologically advanced. Freedom

of flight is a large concern in regards to ethical constraints; a considerable argument

against UAV production is the idea that they cause an invasion of privacy, especially when

the vehicle has a camera that offers live video feed. The group wants to clarify to the public

that any footage taken will not be utilized for commercial applications, and any recorded

video that includes bystanders will only be used with the consent of those recorded.

Additionally, the path of the quadcopter will deliberately avoid all residence halls (and

highly traveled areas), as it would not be a pleasant sight for a resident to see a vehicle

with a camera hovering outside his or her window.

Maintenance and repairability are important constraints to consider for both

mechanical and electrical construction. In terms of mechanical design, it is important that

the quadcopter has easily removable parts in order to perform maintenance on parts if

necessary. Although weight is a serious concern, the design will not compromise strength

for weight, since it is more reasonable to introduce a stronger, heavier design than for the

frame to be too delicate and require continuous repair. In terms of electrical design, the

wiring system must be organized and clearly accessible at all areas. Additionally, the

Page 66: End of Semester Design Report Final Version

Page 66 of 75

design must include proper insulation where necessary in order to avoid short circuiting

and interference.

Besides holding all constraints in mind, the final design must also comply with all

standards and specifications provided by the Federal Aviation Administration (FAA). The

FAA requires that all nonmilitary UAV’s be flown under a 400ft altitude and operate

during daytime only. Although autonomous, the quadcopter must be in sight at all times,

meaning the team will have to follow the vehicle during operation. Finally, the quadcopter

cannot enter any airport fly zones and must not be operated for commercial use.

Page 67: End of Semester Design Report Final Version

Page 67 of 75

Appendix B: Management

Appendix B1: Gantt Chart

Page 68: End of Semester Design Report Final Version

Page 68 of 75

Appendix B2: Meeting Minutes

9/19/14: Need to form a high level system diagram and better gantt chart

9/24/14: Need better articulated top level specifications, specific roles, and design

challenges, and more knowledge in control theory

9/28/14: Order forms filled out for controller, telemetry, gps module, electronic speed

controls. Wiring sizes as per current draw chosen

10/7/14: Communications systems and electrical hardware/tools material list and order

forms done. Finalized top level specifications and design challenges. Noted that GPS

should be separated from video transmitter. Finalized a budget for meeting with Dean

Schreiner.

10/9/14: After first budget meeting with the Dean, it was determined that we required a

more integrated design, more safety measures, a better defined wiring plan (grounding),

and a solution to possible GPS interference

10/11/14: Professor Joseph Jesson cleared up a misconception about the operation of the

GPS - the team was concerned about interference with the L1 GPS frequency, 1228MHz,

which is only used by military. The L2 frequency, 1575MHz, is the only one actually used,

and it will not be harmfully interfered with.

10/15/14: Proposed the idea of a parachute recovery system. Noted a higher discharge

battery is required, as well as motors with larger lift, and that a 2.4GHz 6-channel

transmitter/receiver set must be budgeted for/ordered.

10/18/14: Better integrated electrical and mechanical design on SolidWorks model,

decided to custom make a parachute recovery system, chose 2.4GHz Tx/Rx

10/21/14: Had second budget meeting with the Dean. Very close to being approved, but

we need to do a bit more analytics. Specifically, dynamics calculations to validate design

specifications, time constant/sensor latency calculations, and better validated power

useage.

Page 69: End of Semester Design Report Final Version

Page 69 of 75

10/28/14: Brought together and verified all analytical work, including: forward

speed/angle, maximum speed, battery life with respect to thrust percentage, sensor

latency and control loop computation time, and communication range. Established agile

development-style management using the website Trello.

11/3/14: Third budget meeting with Dean Schreiner - budget was approved (third time’s

a charm!)

11/9/14: End of the first agile development “sprint,” had to carry some tasks into the new

“sprint,” namely, a blog post from Jim, Jordan, and Ben, getting Jordan and Jim machine

shop approved, and filling out the “about” section of our website. Defined the tasks for

“Sprint 2,” 11/9 through 11/25, which included: frame design finished, 100% completed

and verified power system design, controller interfaced to base station software, and

manual controls interfaced from receiver to ESC’s to motors (as well as calibrated ESC’s).

11/15/14: Listed some miscellaneous items to order (XT60/XT90 connectors, microUSB

video breakout camera, etc), confirmed wiring of receiver to ESC/motor. Interfacing

controller to software proving much more difficult than originally expected.

11/23/14: Soldered connectors to battery and ESC’s, as well as all possible wiring (frame

not yet constructed). Calibrated ESC’s and confirmed function of each motor. Interfaced

manual controller to ESC’s. Divided and planned the end of semester report amongst the

group.

11/25/14: Determined the need for an adapter cable to live feed video to PC

(composite/s-video to USB connector (ADC)). Panicked some about impending due dates

for this report and the presentation - enough work is never done!

12/2/14: Received video breakout cable (microusb to base wires), attempted to get live

video feed, ran into regulated voltage problems which will be solved be making our own

switching regulators. Also noted the need to fabricate a custom 6 pin to 8 pin cable for

our telemetry and gps to link to our controller.

Page 70: End of Semester Design Report Final Version

Page 70 of 75

Appendix B3: Safety Form

Hazard Category List specific hazards Shop or Lab to be Used

Name of individual providing training

Flammables (gas, oil, solvents, alcohol, kerosene)

Chemical hazards (acids, bases, toxic materials, paints, adhesives, epoxy, resin);

Epoxy, solder fumes Joe Zanetti (training already given)

Non-chemical Inhalation hazards (particulates/dust)

Biological materials (list type such as plant, cells, human subjects, etc.)

Physical hazards (heavy lifting, risk of crush injury; risk of slipping as a result of water or other liquids, etc)

Risk of injury if moving propellers are struck or if quadcopter free falls from the sky

Dean Schreiner & the group

Electrical hazards (use of high voltage >30V) equipment; electrical interface with the body such as electrodes

High current draw system (up to ~100 Amps), use of lithium polymer battery (highly flammable/explosive if not charged or discharged properly)

Dr. Adegbege

Non-Ionizing Radiation hazards ( lasers, near UV light; infrared, intense visible light; microwave, radio waves)

433MHz, 1.3GHz, 2.4GHz radio waves (all under one watt)

Dr. Katz

Ionizing radiation hazards (x-rays, radioactive sources that emit alpha, beta, gamma particles)

Use of compressed gases or cryogenic materials (liquid nitrogen, dry ice, etc)

Use of portable shop equipment (saws, drills, welder, etc.)

Use of drill press, soldering iron, hand tools

Machine Shop

Joe Zanetti (training already given)

Other Minor noise pollution from motors The group

Page 71: End of Semester Design Report Final Version

Page 71 of 75

Appendix B4: Material List (derived from budget)

Frame and Flight Operation:

Power System:

Page 72: End of Semester Design Report Final Version

Page 72 of 75

Communications:

Controller, Sensors, and Parachute

Page 73: End of Semester Design Report Final Version

Page 73 of 75

Electrical Hardware and Tools:

Page 74: End of Semester Design Report Final Version

Page 74 of 75

Appendix B5: Budget (color coded by vendor)

The actual given budget was $1,725.00, and did not include the +10% unexpected costs.

Should we run into anything that causes us to go over budget, Dean Schreiner requested

that we submit an allocation increase form at that time.

Page 75: End of Semester Design Report Final Version

Page 75 of 75

Appendix C: Quadcopter dynamics state variables (Table C.1)

State Variable Definition

𝑝𝑛 North inertial position along 𝑖̂𝑖 in 𝐹𝑖

𝑝𝑒 East inertial position along 𝑗̂𝑖 in 𝐹𝑖

ℎ Altitude along −�̂�𝑖 in 𝐹𝑖

𝑢 Velocity of body frame along 𝑖̂𝑏 in 𝐹𝑏

𝑣 Velocity of body frame along 𝑗̂𝑏 in 𝐹𝑏

𝑤 Velocity of body frame along �̂�𝑏 in 𝐹𝑏

𝜙 Roll angle with respect to 𝐹𝑣2

𝜃 Pitch angle with respect to 𝐹𝑣1

𝛹 Yaw angle with respect to 𝐹𝑣

𝑝 Roll rate along 𝑖̂𝑏in 𝐹𝑏

𝑞 Pitch rate along 𝑗̂𝑏 in 𝐹𝑏

𝑟 Yaw rate along �̂�𝑏 in 𝐹𝑏