0% found this document useful (0 votes)
59 views6 pages

Intelligent Control and Navigation of An Indoor Quad-Copter: Yiwen Luo Meng Joo Er Li Ling Yong

IEEE paper

Uploaded by

Kat Wolf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
59 views6 pages

Intelligent Control and Navigation of An Indoor Quad-Copter: Yiwen Luo Meng Joo Er Li Ling Yong

IEEE paper

Uploaded by

Kat Wolf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

2014 13th International Conference on Control, Automation, Robotics & Vision

Marina Bay Sands, Singapore, 10-12th December 2014 (ICARCV 2014)

Fr41.4

Intelligent Control and Navigation of


an Indoor Quad-copter
Yiwen Luo

Meng Joo Er

Li Ling Yong

School of Electrical and


Electronic Engineering
Nanyang Technological
University
Singapore
[email protected]

School of Electrical and


Electronic Engineering
Nanyang Technological
University
Singapore
[email protected]

School of Electrical and


Electronic Engineering
Nanyang Technological
University
Singapore
[email protected]

AbstractThis paper documents the development of a quadcopter with indoor control scheme and navigation capability. A
stabilized flying control system including traditional PID
controller, Raspberry Pi onboard flight computer and electronic
speed controller was developed to provide the basic platform for
the quad-copter. PID tuning was utilized optimize the
performance. In addition, RGB and depth cameras and other
sensors were deployed to enable remote semi-autonomous
control.

designed, which could be a new solution to popularize the


usage of UAVs in real conditions. [2] - [6]
There are six sections in this paper, among which section II
will introduce the overall scheme designs both for the platform
and the systems. Section III and IV will discuss the flying
control system and navigation system in details. Section V will
be focus on the utilization of the quad-copter. Section VI will
be the concluding part of the paper.
II.

KeywordsIndoor UAV, Quad-copter, Indoor navigation

I.

INTRODUCTION

Recently, developing small-scale indoor Unmanned Aerial


Vehicle (UAV) has aroused a world-wide interest among
researchers since it has various potential applications both for
civil and military purpose. The UAV could be implemented in
multiple tasks and missions such as searching, investigating,
rescuing, prospecting and even attacking. Besides, the UAV
should be tenacious and with high anti-interference capability
as it may be operated in a highly dangerous environment like a
defected nuclear plant or an environment with either physical
obstacles or electro-magnetic shielding. However, add
corresponding components to deal with these situations will
dramatically add the weight to the vehicle, which will increase
the size of the overall design and cause other problems. In that
case, balanced designs for specific tasks are required. [1]

Chiang Ju Chien
Department of Electronic
Engineering
Huafan University
Taiwan
[email protected]

OVERALL SCHEME DESIGN

A. Platform Designs
Since the quad-copter is supposed to be used indoor, its
ability of hovering becomes crucial when it is instructed to
perform tasks like dropping payloads or video recording.
Normally, such quad-copters are designed with Vertical Take
Off and Landing (VTOL) capabilities. In this project, the
simple maneuverability of its hardware, the sensitiveness of the
response of inputs should also be taken into consideration.
After comparing, the design of quad-copter is implemented for
the reasons above.

This paper focuses more on the overall system design and


implementation than covering very detailed design in each
specific system as numerous researches have been done on
each of the systems and components whose possibility of the
utilization of these systems and components have been proved.
Many of those tests and theoretical proofs are done with
simulations and specific preset equipment in the environment.
However, when being implemented, there are more factors to
be taken into consideration, especially some unexpected
extreme indoor situations. In that case, this paper includes a
few of the existing algorithms to help realizing the stable flying
of a traditional quad-copter and semi-autonomous control and
navigation systems using ARM based Raspberry Pi computer
without high-cost components such as laser scanners are
Figure 1. The developed quad-copter.

978-1-4799-5199-4/14/$31.00 2014 IEEE

1700

The quad-copter has a central symmetrical as well as axis


symmetrical structure which make the control system simpler.
The attitude control of the quad-copter is achieved by varying
the rotation speed of the rotors which changes the thrust they
generate. The quad-copter consists of two fixed pitch propellers
spinning in clockwise and two fixed pitch propellers spinning
in counter-clockwise which are arranged diagonally as shown
in Figure 2. Therefore, the moments produced can be cancelled
out by themselves as each of the rotational torque has a
reversed one with exactly the same magnitude. The complexity
of the overall quad-copter could be reduced by these features as
there are no separate components installed to realize pitching,
rowing and yawing. [7]

Where

B. Systems Designs
The overall system scheme is shown as follow, where the
blue blocks show the main control and communication. The
arrows in Figure3 show the signal or power direction inbetween modules.

Figure 2. Quad-copter aeronautic control schematic.

By using the rigid body dynamics are used to design the


aeronautic control system which includes the attitude and
altitude controls. Since the system of the quad-copter is six
degrees of freedom, to derive the dynamics, Euler-Lagrange
formula and Newton-Euler formula are used as approaches.
Since many detailed procedures of applying these two
formulas have been introduced in many researches, the control
inputs of the quad-copter are given as below: [8]

Figure 3. Overall system design.

The systems work with the control of Ardupilot flight


controller, which is a typical PID controller with basic flight
controlling libraries embedded based on the Arduino open
source platform, and the Raspberry Pi onboard flight computer.

Where

Moreover, based on the control input variables and the rigid


body dynamics from the Newton Euler formula, the dynamic
model of the quad-copter can be described by the equations
below: [8]

The Raspberry Pi computer is extremely popular for its low


price and high compatibility as it runs Linux operating system
on a credit card sized PCB board. Also, the Raspberry Pi
computer provides standard input/output ports such as USB
ports, a RJ-45 Ethernet port and serial ports, which could be
utilized to establish communication with the Ardupilot
controller. With the USB ports, the Raspberry Pi computer is
able to connect to more complicated sensors such as cameras

1701

and Kinect-liked depth sensors. Wi-Fi module could also be


connected to USB ports on the Raspberry Pi computer.
The flight control is charged by the Ardupilot controller
that receives instructions from both the Remote Control (RC)
and signals from the Raspberry Pi computer. Also, simple
distance sensors are connected to the controller for a more
prompt response to the obstacles detected. This could also
reduce the workload of the Raspberry Pi computer whose
capability is quite limited due to low power consumption. The
Ardupilot controller drives electronic speed controllers which
could directly output high DC current and Pulse-Width
Modulation (PWM) signals to brushless DC motors. The whole
system is driven by a high capacity 3-cell Lithium-Polymer
(Li-Po) battery whose output current could be as high as 40
Amperes.
III.

C. PID Tuning
The PID gain is tuned to achieve the optimum performance,
where all the Kp, Ki and Kd are tuned. Ziegler-Nicholas tuning
method, Cohen-Coon tuning method and direct synthesis are
implemented. In addition, manual tunings with visual
observation during test flights are also applied. The output
during roll control are shown as follow:

Figure 5. Roll control response with P=5 and I=1

FLYING CONTROL SYSTEM

A. Cascade Control Loop


A quad-copter is a multiple inputs and multiple outputs
system with high speed dynamics, which demands an effective
control loop. In order to achieve stable flight performance, the
cascade control loop is used, which could reduce or even
eliminate the effect by disturbances on the outer control loop
process output through the action of the inner control loop.
Besides, the sensitivity of the primary process gaining
variations in the inner control loop could be reduced. The
cascade loop improved the stability of the quad-copter to
external variations such as winds.

Figure 6. Roll control response with P=4.5 and I=1

Figure 7. Roll control response with P=4 and I=1

Figure 4. Cascade control loop for rolling controls.

Figure 4 shows one of the cascade control loops of the


system, which is the rolling controls, while the other flight
control systems are similar.
The outer loop is the control loop controlling the position of
the quad-copter, which generates the required reference by the
inner loop. The inner loop will intake the input from the outer
loop as well as sensors such as the gyro and accelerometer, and
output the designated signals to the rotor system.[9] [10]
B. PID Controller
Proportional-Integral-Derivative (PID) controller is used in
the inner loop for a higher responding speed because the inner
loop requires faster response than the outer loop to regulate the
disturbance before it affects the whole process.
At the same time, only a PI controller is used to eliminate
the steady error for the outer loop as the speed of response is
not that critical in the outer loop. Also, this could reduce the
risk of the systems being unstable. [11] [12]

The red curve is the desired output and the green curve is
the actual response. The tuning is started with Kp=5 and Ki=1
which are the recommended value by the manufacturer. With
observation, the P is reduced to minimize the overshoot. As
shown, the P is reduced to 4 and the performance becomes
smoother. However, the speed of response is not satisfactory.
After many tunings, the P value is locked at 4.5 which could be
a balanced value to both quick response and low overshoot.
The yaw, pitch and other controls are similar which are not
gone through in detail in this paper.
D. Ground Station Control
To simplify the ground station control, part of the flight
control is done by the Mission Planner software which is
provided by the manufacturer of the Ardupilot controller.
Flight data such as angels of yaw, pitch and roll, air speed,
altitude, heading and GPS location could be viewed in a single
dashboard user interface.
With a telemetry connected, all the data could be send back
to the ground station in real time, with which, a remote blind
flying is made possible by flying basing on the reading of the
dashboard. For sure, another remote control system to send
information to the UAV is required. In this project, a basic
2.4GHz transmission system is used.

1702

Figure 10. Out-runner type DC brushless motor


Figure 8. Flight dashboard in Mission Planner software

In addition to the dashboard, another user interface showing


all the real-time readings from all the onboard sensors are
introduced.

Electronic Speed Controller (ESC) is controller supplies


different amount of power to the motors required by the flight
controllers. It receives PWM signals from flight controllers
such as the Adrupoilt controller in this project and changes it
output voltages and currents accordingly to the motors.

Figure 11. The internal circuitry of the simple electronic speed control

In Figure 11, the battery eliminators are used to decrease


the battery voltage to the required level which can reduce the
rotating speed of the motors. Switching of MOSFETs are
controlled by the PWM signals, thorough which, the currently
supplied to the motors could be adjusted dynamically.
Figure 9. Flight readings in Mission Planner

With all the data available, an effective ground control


station is built. Also, with open interface of the data, other
programs and hardware such as the Raspberry Pi computer
could share the data and utilize them.
E. Rotor System
As talked in pervious sections, the lifting power of the
quad-copter is provided by motors and propellers. Since the
whole UAV is designed to be powered by batteries, DC motors
are more suitable to be applied on the UAV to improve the
efficiency during transformation. To further improve the
reliability of the UAV, brushless DC motors are used. After
comparing the in-runner type and out-runner type brushless
motor, the out-runner type is selected because its high-torque
generation with low rotating speed. Besides that, the out-runner
type motors operates quitter. After searching for suitable
products, the EMax MT2213-935 motors with 935KV each are
chosen because of its light weight and high power output.

Regarding the propellers, a balancing calculation should be


done to decide the sized used since the long and larger the
propellers, the more power they will needs to be rotating at a
specific speed. However, with too small propellers, there is not
sufficient thrust to lift the whole quad-copter up. After studying
the specifications of the motors and other components, 10x4.5
propellers are chosen for this project.
IV.

SENSORING AND NAVIGATION SYSTEM

A. Gyroscope, Accelerometer and Compass


The gyroscope or gyro measures the angular rotational rates
about axis and integrates the acceleration over time. The values
measured and calculated could determine the attitude of the
quad-copter with a calibrated starting point.
Accelerometer measures the G-forces acting on specific
directions which are separated by the 3-axix Cartesian
coordinates, which is the x, y, z directions. By applying simple
Newtons Law, the acceleration along each directions could be
simply calculated. [13]

1703

By integrating a 3-axis gyro and a 3-axis accelerometer, a


system of six degrees of freedom could be achieved. The two
sensors could compensate each others error by comparing the
references of them.

The SONAR sensors, which has been discussed in the


previous section, are installed at the sides of the quad-copter
for determining the distance from the UAV to the obstacles
such as walls or people.
The PrimeSense motion sensor, which is a Kinect liked
sensor, provide both RGB images and depth images with two
different cameras. Through the color depth of the image it
captured, the distance between the quad-copter and the object
could be derived easily. [14]

Figure 12. Gyroscope and Accelerometer integration in single board

In this project, a MPU-6000 device is used for a solution of


both the gyroscope and the accelerometer. The processor firstly
takes the data from other sensors through I2C or SPI bus and
then processes the data with the reading of the gyroscope and
the accelerometer, which could then be combined to a full
detailed of information. This information will be sent to the
main controller for further use.
A digital compass is used in this project to measure the
direction and strength of the earths magnetic field and provide
heading reference to the flight controller. This could be a
supplement of the gyroscope and accelerometer.
B. SONAR and air pressure sensors
The Sound Navigation and Ranging (SONAR) sensor
propagates sound waves into the air and reflected by objects.
Through this method, a distance reading could be achieved and
output by an analog signal with linear voltage output. A
SONAR sensor is light and budget friendly so that it could be
utilized well in this project.

Figure 14. Depth image by PrimeSense sensor

D. Raspberry Pi with camera


The Raspberry Pi computer is used as a flight computer in
this project and it is the core of the navigation system. It
connects to the depth sensors and another camera for sensor
readings input. After determining the distance by all the sensors,
it will come out with a more accurate value of the distances of
the objects around the quad-copter. Algorithms are preprogramed into the computer to make it capable to output the
magnitude of the motion required to avoid colliding with any
obstacles. All the anti-collision commands are send to the
Ardupilot controller for actual implementation. With this, the
quad-copter could minimize the chance of colliding with others.

Figure 13. XL-MaxSonar EZ4 sensor installed on the UAV

A SONAR sensor with narrow beam is installed on the


quad-copter for altitude holding purpose. The sensor is facing
to the ground and output the reading of the distance from the
quad-copter to the ground, by using which, a stable altitude
could be achieved through continuous adjustment to the thrust
from the rotor systems. Also, the sensor is very sensitive to
noise and environment conditions. Special program and
algorithms are applied to reduce the impact to the minimized
level.
Besides the SONAR sensor an air pressure sensor is also
installed. The air pressure sensor uses the change of air
pressure in different altitude to determine altitude of the quadcopter. However, within low altitude, the air pressure sensor is
not useful due to the distortion and the low sensitivity.
C. Distance sensors
There are two types of distance sensors installed on the
UAV, which are the SONAR sensors with wider beams and the
PrimeSense motion sensor.

Figure 15. The Raspberry Pi computer

Besides communication with sensors and controllers, a WiFi module is also connected to the computer, by which realtime video streaming can be sent from the quad-copter to the
ground station for manual control of the copter.
V.

ULTILIZATION

A. Experimental Rescue Mission


An experimental mission is set to test the real capability of
the quad-copter, whose routine design is shown as follow,
which is part of the Singapore Amazing Flying Machine
Competition 2014: [15]

1704

ACKNOWLEDGMENT
The author wishes to extend his deepest appreciation to his
project supervisor Professor Er Meng Joo, School of
Electrical and Electronic Engineering, Nanyang Technological
University for his selfless support and full effort for this
project. His knowledge, reliance and patience makes this
project a great success.
The author wishes to extend his deepest appreciation to his
project collaborator Ms. Yong Li Ling, a student from School
of Electrical and Electronic Engineering, Nanyang
Technological University for her constant support, practical
guidance and positive work. Without her, the author cannot
work on the project so smoothly.

Figure 16. Test mission routine

The quad-copter is supposed to take off at point 1 and go


through the windows with visual control and fly through the
rest of the routine with blind remote control. A payload
dropping session is designed, which will be included in the
next section. Besides, taking down information on the LCD
screen is also required to test the stability and the visual
detection ability of the quad-copter. Finally, the quad-copter is
required pass through the square shaped window and land
automatically.
B. Payload dropping
Mechanisms are designed for the payload such as the servo
driven platform for the RGB camera and the dropping
mechanism. When the quad-copter comes above the designated
location of payload dropping, the RGB camera will rotate 90
degrees down and capturing the images below, which helps the
pilot to aim at the target more accurately. The mechanism to
drop the payload is a simple box with a servo as a latch. Once
the command received, the servo will react to drop the payload.
Special algorithm of changing the thrust is also design since the
overall weight of the quad-copter will change before and after
the payload is dropped.
C. Automatic landing
There is an automatic landing mode programed to make a
smooth landing by decreasing the thrust in a specific way. The
sink rate of the automatic landing mode is set as 0.5m/s. When
the rate is higher or lower than the pre-set value, the controller
will adjust the thrust accordingly since there may be changes in
the overall weight. Once the acceleration in vertical direction is
between +0.1m/s and -0.1m/s, the controller will treat it as the
end of landing and cut the thrust totally.
VI.

CONCLUSION

The author wishes to acknowledge the funding for this


project from Nanyang Technological University under the
Undergraduate Research Experience on CAmpus (URECA)
program.
REFERENCES
[1]

[2]

[3]

[4]

[5]

[6]

[7]

[8]

[9]
[10]
[11]

In conclusion, this paper includes a complete scheme of an


intelligent control and navigation system of an indoor quadcopter. Innovations are focused on achieving the same control
and navigation systems with low cost components such as the
budget friendly Raspberry Pi computer. In addition, the
independency of the quad-copter is increased as there is no
high requirement for the environment and no pre-installed
equipment required to perform the navigation. Moreover,
although the quad-copter is used as the platform for the
controlling and navigation system in this project, other vehicles
both aeronautical ones and other based ones can also utilize the
system with minor changes.

[12]

[13]

[14]
[15]

1705

M.Innocenti, F.Giulietti and L.Pollini, Intelligent Management Control


for Unmanned Aircraft Navigation and Formation Keeping, University
of Pisa, Italy.
P. Pounds, R. Mahony, and P. Corke, Modelling and Control of a
Quad-Rotor Robot, Proceedings of the Australasian Conference on
Robotics and Automation, 2006.
J. F. Roberts, T. Stirling, J. C. Zufferey, and D. Floreano, Quadrotor
Using Minimal Sensing For Autonomous Indoor Flight, European
Micro Air Vehicle Conference and Flight Competition, 2007.
A. Cesetti, E. Frontoni, A. Mancini, P. Zingaretti, and S. Longhi,
Vision-based Autonomous Navigation and Landing of an Unmanned
Aerial Vehicle Using Natural Landmarks, 17th Mediterranean
Conference on Control and Automation, pp. 910-915, 2009.
J. Kim and I. S. Kweon, Vision-based Autonomous Navigation Based
on Motion Estimation, International Conference on Control,
Automation and Systems, pp. 1738-1743, 2008.
F. Wang, J. Cui, S. K. Phang, B. Chen and T. Lee, A Mono-Camera
and Scanning Laser Range Finder Based UAV Indoor Navigation
System, International Conference on Unmanned Aircraft Systems,
2013.
Abdel Ilah Alshbatat, Ashar Khamaisa, Mais Khreisa, Adaptive Control
System for an Autonomous Quadrotor Unmanned Aerial Vehicle,
Massachusetts Institute of Technology, 2010.
A.Y. Elruby, M.M. El-khatib, N.H. EL-Amary A.I. Hashad, "Dynamic
Modeling And Control Of Quadrotor Vehicle," Arab Academy for
Science and Technology and Maritime Transport , Egypt.
Guowei Cai, Ben M. Chen, Tong Heng Lee, Unmanned Rotorcraft
Systems, Chapter 7 Inner Loop Control, Springer, 2011, pp137-161.
Guowei Cai, Ben M. Chen, Tong Heng Lee, Unmanned Rotorcraft
Systems, Chapter 8 Outer Loop Control, Springer, 2011, pp161-179.
Araki M., Control System, Robotics and Automation Volume II, PID
Control, Kyoto University Japan.
Li, Y. and Ang, K.H. and Chong, G.C.Y. (2006) PID control system
analysis and design - Problems, remedies, and future directions. IEEE
Control Systems Magazine, 26 (1). pp. 32-41. ISSN 0272-1708
Baptiste Delporte, Laurent Perroton, Thierry Grandpierre, Jacques
Trichet, Accelerometer and Magnetometer Based Gyroscope Emulation
on Smart Sensor for a Virtual Reality Application, Universit Paris Est,
ESIEE Engineering, Marne-la-valle, France, 27 May 2013.
The comparision of Kinect and PrimeSense, [Online],
http://www.leiphone.com/d-primesense.html, Retrieved 4 May 2014.
SAFMC
2014
Challenge
Booklet,
[Online],
http://www.dsoamazingcompetitions.com.sg/safmc/home.php, Retrieved
4 May 2014.

You might also like