Content uploaded by Nguyen Xuan Mung
Author content
All content in this area was uploaded by Nguyen Xuan Mung on Jul 22, 2019
Content may be subject to copyright.
Copyright © 2018 Authors. This is an open access article distributed under the Creative Commons Attribution License, which permits
unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
International Journal of Engineering & Technology, 7 (4.39) (2018) 65-73
International Journal of Engineering & Technology
Website: www.sciencepubco.com/index.php/IJET
Research paper
A Multicopter Ground Testbed for the Evaluation of Attitude
and Position Controller
Nguyen Xuan-Mung1, Sung-Kyung Hong2*
1 2Faculty of Mechanical and Aerospace Engineering, Sejong University, Seoul, South Korea
*Corresponding author E-mail: skhong@sejong.ac.kr
Abstract
A ground testbed system to evaluate the performance of attitude and position control of multicopters is proposed in this paper. The
system consists of a vehicle attached to a base via a sphere joint which allows the vehicle to rotate about the three axes roll, pitch and
yaw. In addition, a pseudo positioning algorithm is presented to simulate the position of the vehicle based on a force sensor and an
inertial measurement unit sensor. A global positioning system simulator is used to provide the artificial GPS signal based on the
simulated position signal during the indoor trials. The proposed system provides the multicopters with all six degrees of freedom during
flight allowing the vehicle to perform as if it were in actual flight. Several experimental flight tests are conducted to prove the
effectiveness of the proposed system.
Keywords: Ground testbed, test bench, hardware-in-the-loop simulation, multicopter, quadrotor, 6-DOF flight.
1. Introduction
In recent years, unmanned aerial vehicles (UAVs) have become
increasingly popular with the researches of aerial robotics due to
their many advantages such as high maneuverability, diverse
applicability, reliability, and economy. Technological advanced
have allowed the UAVs to become smaller and lighter.
Multicopters, also referred to as multirotor, are the most popular
type of UAV and have attracted worldwide attention. Due to their
simple structure, they are easily designed and manufactured at an
affordable cost. Moreover, due to the ready availability of
mathematical models and the multicopters’ exceptional agility,
they can be controlled to perform a variety of complex tasks.
These factors have contributed to their popularity and ubiquity in a
broad range of applications that includes scientific research, civil
engineering, military applications, aerial mapping, search and
rescue operations, and risk zone inspection, etc. [1-4].
Developing a multicopter vehicle is time consuming and
complicated. The typical development process of a multicopter
usually consists of several phases: system design, modelling,
controller design, simulation, and real flight tests [1-3]. Generally,
there is a considerable difference between the controller’s
performance during a simulation and a real flight. Therefore, the
flight test usually faces several critical failures and experiences a
long period [4]. Furthermore, the actual test is usually costly and
risky. Meanwhile, a ground testbed (GTB) allows multicopter
developers to repeatedly tune their controllers and test the control
performance in a quick and reliable manner. On the GTB, vehicles
can perform flights without crashing, endangering people, or
damaging the surroundings.
Several GTB systems have been developed. An approach is
presented in [3] for a 2-DOF hardware-in-the-loop (HIL) testbed
for testing longitudinal, lateral, and heading control of small
helicopters (Figure 1c). This testbed consists of a long pole,
anchored to the ground, and a headpiece connected to the pole
through a mechanical structure. The testbed uses a mathematical
model of the helicopter to simulate motion and calculate state
information of the vehicle. Although the testbed allows for testing
and tuning of the controller in both hover and trajectory mode, it
cannot perform the longitudinal and lateral controls
simultaneously due to a lacking DOF. Another approach presented
in [5] introduces a testbed for quadcopter attitude stabilization
control (Figure 1a). This three Degree of Freedom (DOF) testbed
is small, simple but affordable. By using a single pole with a
sphere joint, the testbed allows the quadcopter to rotate about the
three Euler angles but not to perform a position flight. In a recent
study [6], the authors proposed a 3-DOF test bench which consists
of a support and a rotation joint. The test bench is useful to
identify model parameters and test attitude controllers of
quadcopter. However, due to a lacking DOF this system cannot be
used to test the quadcopter’s position controller.
(a)
(b)
66
International Journal of Engineering & Technology
(c)
(d)
Figure 1: Some GTBs presented in the literature
In [7], the authors described a 5-DOF testbed, called Whiteman
training stand, for a small quadcopter (Figure 1b). The testbed
allows the quadcopter to hover as the quadcopter is able to rotate
about its three Euler angles. The arm of the stand also allows the
quadcopter perform altitude flight. However, position control
cannot be performed as the training stand has no positioning unit.
Yet another approach involving a 6-DOF test bench (Figure 1d) is
described in [2], where the test bench consists of a stand, a 6-axes
force/torque sensor, a sphere joint, and a quadcopter. The
quadcopter is equipped with an inertial measurement unit (IMU)
and a digital signal processor (DSP) to process input and output
data. The test bench is capable to perform a 6-DOF flight in
position hold mode but unable to perform a target position
approach flight because of the structure’s vibration and sensor
noise [2]. Besides that, this test bench may not be suitable for
other quadcopter platforms that are equipped with flight control
units (FCU) that differ from the DSP used in [2] because of
incompatibilities in communication protocols between the devices.
The references [2-12] indicate performing position flights on a
GTB is a challenge for multicopter researchers. Most of the
previous GTBs are only capable of 2-DOF, 3-DOF, or 5-DOF
flights with only very few capable of providing the full 6-DOF
capabilities. Current GTBs still need to be improved in order to
meet the higher requirements posed by real-world applications. In
this study, we propose a 6-DOF GTB for multicopters. With a
stand that is firmly fixed on the ground, the GTB is suitable for
both small and large force and torque simulations. A force sensor
is utilized to measure vehicle thrust. A pseudo positioning
algorithm simulates translational positions of the vehicle based on
the measured thrust and the IMU data. A global positioning
system (GPS) simulator emits the simulated position information
in the indoor environment allowing any multicopter which
equipped with a standard GPS receiver to receive the position
feedback. The main contribution of this paper is twofold: 1) the
proposed GTB allows multicopters to perform 6-DOF flight as if
it were in actual flight. This indicates that multicopter developers
can use the GTB to preliminarily verify and refine new 6-DOF
control algorithms though indoor trials before applying them to
the real system, which could significantly reduce the experimental
risks and costs; and 2) the GTB is applicable for various types of
flight platform which equipped with different types of FCU and
sensor. Several flights on the GTB, i.e., attitude stabilized, altitude,
and position flights, were conducted to verify the value of the
system.
The rest parts of this paper are organized as follows: Section 2
describes the system hardware and software structure. Section 3
presents the pseudo positioning algorithm. The dynamics model
and controller of quadcopter are described in section 4. Section 5
presents the experimental results followed by conclusions.
2. System Structure
2.1. Hardware
The GTB consists of a base, a vehicle, and a control station (see
Figure 2a). The base is a large stand with one end firmly fixed on
the ground and the other end equipped with a force sensor. The
vehicle used in this study is a quadcopter, at its base attached to
the stand through a spherical joint. This joint transmits the forces
acting upon the vehicle to the force sensor and allows the vehicle
to rotate about the three Euler angles. Since the joint is small and
lightweight, the mass and friction can be ignored in the analyses.
The quadcopter is equipped with aviation electronic and a
Pixhawk flight computer unit (FCU) which includes an inertial
measurement unit (IMU) to provide information about the
vehicle’s attitude and angular rate. The vehicle receives simulated
GPS signals. The control station consists of a personal computer
(PC), a GPS simulator, and an RC transmitter. The thrust force is
measured via a commercially available data acquisition (DAQ)
box.
Spherical joint
Force sensor
Stand
GPS Simulator
Quadcopter
Pixhawk FCU
PC
DAQ box
Working table
RC transmitter
a) Hardware
{}E
x
y
z
1
F
2
F
3
F
4
F
z
x
y
{}B
l
b) Coordinate systems
Figure 2: The ground testbed scheme
67
International Journal of Engineering & Technology
2.2. Software
Definition 1 (pseudo positioning algorithm): A pseudo positioning
algorithm (PPA) is an algorithm which simulates translational
positions of a non-moving vehicle mounted to a GTB from the
force sensor’s measurements and IMU sensor’s data.
Definition 2 (pseudo position): The position provided by the PPA
is called pseudo position.
GPS simulator
DAQ RC receiver
mGCS Pixhawk
Attitude setpoint
Force data
acquisition
PPA
Position controller
Indoor GPS signal
emitting
Attitude controller
Control mode
management
Sensed forces Attitude commands,
flight mode switch
To ESC
Position setpoint
RS-232
TCP/IP Wireless
MavRos
Figure 3: The software structure
A program called mGCS has been built to serve as a control
station program which provides the following functions:
- Func. 1: User’s command of attitude and position.
- Func. 2: Vehicle’s attitude and angular rate acquisition.
- Func. 3: Thrust force acquisition.
- Func. 4: PPA operation.
- Func. 5: Vehicle’s pseudo position broadcasting and
visualization.
For Functions 1 and 2, mGCS connects to the FCU using wireless
MavRos [13] [14] protocol at a frequency of 50 Hz. Using these
functions, users can manually send either attitude or position
commands to the vehicle. Simultaneously, mGCS receives IMU
sensor’s feedback data, and use them for calculating in the PPA.
For Function 3, mGCS is connected to the DAQ box via serial
protocol on RS-232 port at a baud rate of 115200 bps. A low pass
filter (LPF) is applied to reduce noise in the thrust data. Functions
4 operates the PPA at 100 Hz to simulate the vehicle’s pseudo
positions. Function 5 operates at 10 Hz to send the pseudo
positions to the GPS simulator via TCP/IP protocol and display
the pseudo positions on a visualization window of mGCS.
The GPS simulator is operated by its particular driver and receives
the pseudo positions from mGCS, processes them, and emits
indoor artificial GPS signals. The FCU contains an attitude and a
position controller which utilize the IMU’s data and the received
indoor GPS signals. The whole software structure and
communication protocols are described in Figure 3.
3. Pseudo Positioning Algorithm
Through analyzing a quadcopter dynamics along x-direction, a
comparison between traditional algorithm and modified algorithm
is presented in subsections 3.2 and 3.3 to highlight the soundness
of the proposed method. Afterward, subsection 3.4 presents a
procedure to obtain the parameters of the modified algorithm. The
approaches for the PPA along y-direction and z-direction,
respectively, can be analyzed by performing some similar steps as
given in this section which are omitted for brevity.
3.1. Coordinate Systems
Figure 2b presents coordinate systems to be used in this study. In
the body frame {B}, the origin is at the center of gravity of the
vehicle, the x axis points out the nose, the y axis points out the
right side of the vehicle, and the z axis points toward the belly
[15,16]. The body frame is the reference used for estimating the
attitude, angular rates of the vehicle, and also for attitude
controller design.
In the north-east-down (NED) inertial frame {E}, the origin is
usually located at the position the base is fixed on the ground, the
x axis points North, the y axis points East, and the z axis points
downward the center of the earth. The inertial frame is used for
the PPA and for the position controller design.
Denote the three Euler angles roll, pitch, and yaw by
,θ
, and
ψ
,
respectively. Where,
2π
,
/2θ π
, and
ψ π
. The
rotation matrix representing the orientation of {B} with respect to
{E} is as the following [17]:
E
B
cθcψssθcψcsψcsθcψssψ
Rcθsψssθsψccψcsθsψscψ
sθscθccθ
(1)
where,
cosci i
and
sinsi i
(
,,iθ ψ
).
3.2. Traditional Algorithm
The traditional algorithm is based on typical quadcopter models in
the body frame {B} with an assumption that only gravity (mg) and
thrust force (T) are the forces acting significantly on the vehicle
body, while other forces are negligible [17-18]:
sin
sin cos
cos cos /
ugθrv qw
vg θpw ru
wg θqu pv T m
(2)
where u, v, and w represent the velocities in the x, y, and z
directions, respectively, p, q, and r are the angular velocities of the
vehicle corresponding to the x, y, and z axes, respectively.
Taking a look at the x-direction term, the first equation in
expression (2), it can be seen that if the quadcopter tilts a small
constant pitch angle of
c
θ
then the acceleration along to the x
axis can be approximately calculated as:
c
ugθ
(3)
Integration of (3) yields:
0c
ugθtu
(4)
Expression (4) implies that the velocity u tends toward infinity as
the time t becomes infinite (see Figure 4a). However, in actual
flight, even the quadcopter keeps tilting a constant pitch angle as
time goes, its velocity cannot exceed a specific maximum. This
inherent contradiction demonstrates the main weakness of the
traditional model which is simply unsuitable for calculating both
velocity and position of the vehicle. To overcome this
shortcoming of the traditional algorithm, a modified algorithm is
presented in the following subsection.
Ot
u
0c
ugtu
(a)
68
International Journal of Engineering & Technology
Ot
u
/
xt
cx
u Ce g
(b)
Figure 4: Traditional estimated velocity and innovated estimated velocity
3.3. Modified Algorithm
An alternative model has been proposed in [19-22] based on the
assumption that beside of the gravity and thrust force, there is
another term, call drag force, which needs to be considered. The
model is as follows:
sin
sin cos
cos cos /
x
y
z
ugθrv qw χu
vg θpw ru χv
wg θqu pv T m χw
(5)
where,
x
χ
and
y
χ
are the drag force coefficients corresponding
to the x and y axes, respectively.
x
χ
and
y
χ
can depend on
several factors, but for nominal autonomous flight conditions they
can be treated as constants [19].
After linearization at hover position, expression (5) can be
rewritten as the followings:
/
x
y
z
uχugθ
vχvg
wχw g T m
(6)
Solving the first equations in expression (6) for a constant value
c
θ
of the pitch angle, we obtain:
1/
x
χt
cx
u C e gθ χ
(7)
where, C1 is a constant. Figure 4b shows the forward velocity u
with respect to time. It is seen that with a constant tilting angle the
velocity converges to a specific value. This confirms that the
modified model is suitable for estimating the velocity and position
of the vehicle.
To apply this modified algorithm to the PPA, the drag coefficients
are obtained through a method presented in subsection 3.4. Figure
5 shows the block diagram of the proposed PPA which employs
expression (6) to calculate the pseudo translational acceleration,
velocity, and position of the vehicle.
E
B
R
Acceleration
calculator
u, v, w
x,y, z
T
p, q, r
,,
,
xy
,,
x y z
vvv
Figure 5: The PPA’s block diagram
The simulated velocity vx, vy, and vz in the inertial frame can be
obtained as follows:
{ } { }
x
E
yB
zEB
vu
v R v
vw
(8)
where
,
ne
pp
, and h represent positions of the vehicle in the x, y,
and z directions, respectively.
3.4. Drag Coefficient Estimation
Several studies have introduced methods to obtain the drag force
coefficient [19] [20]. This subsection briefly presents a procedure
to the obtain drag coefficients that best describe the drag force
acting on the flight platform using in this study. Actual flights
were conducted to get data for the analysis. To obtain the
coefficients, we need the translational acceleration, velocity, and
the attitude of the vehicle. The accelerations axis measured by the
IMU sensor. An LPF with a cut-off frequency of 3Hz is applied to
the acceleration data to eliminate sensor noise. The vehicle’s
velocities in the inertial frame {E} are provided by a commercial
GPS receiver are used as reliable references. These velocities are
transformed into the body-frame velocities before for use in the
subsequent analyses.
On one hand, the drag coefficient is considered to be proportional
to the velocity as the followings [19] [20]:
/
xx
uaχ
(9)
The drag coefficients
x
χ
that best satisfies the equation (9) are
obtained through trial-and-error (Figure 6a).
On the other hand, this coefficient satisfies the equation (6).
θxθ
uχugθ
(10)
The velocity
θ
u
, called estimated velocity, are calculated from
the drag coefficient and the attitude. This estimated velocity is
compared to the corresponding measured velocities to test the
reliability of the obtained coefficients (Figure 6b).
(a)
(b)
Figure 6: Comparison between
/,
xxθ
aχu
, and u
69
International Journal of Engineering & Technology
4. Quadcopter Dynamics Modelling and
Control Design
In many previous studies, the modeling and control of quadcopter
have been clearly proposed and verified through simulations and
experiments [23-26]. In this section, the dynamics model and
control of the quadcopter used in the experimental tests are briefly
presented.
4.1. Quadcopter Dynamics Model
Let Jx, Jy, and Jz denote the moments of inertia of the quadcopter
along x, y, and z axis, respectively, m represents the mass of
vehicle; l denotes the arm length of vehicle, and g denotes the
gravitational acceleration. The quadcopter’s dynamics model is
described as follows [23] [25]:
2
3
4
1
1
1
1
1cos sin cos sin sin
1cos sin sin sin cos
1cos cos
yz
xx
zx
yy
xy
zz
JJ l
θψ U
JJ
JJ l
θ ψ U
JJ
JJ
ψ θ U
JJ
xθ ψ ψ U
m
yθ ψ ψ U
m
zg θU
m
(11)
where, Ui (i= 1, 2, 3, 4) denote the control inputs which are
described as [2] [23]:
1 1 3 2 4
2 4 2
3 3 1
4 1 3 2 4
cos sin
sin
J
J
d
U F F F F
U F F mgd θ
U F F mgd θ
U C F F F F
(12)
2
Ω
i t i
FC
denotes the thrust force generated by motor i;
Ωi
represents the speed of motor i; Ct and Cd are the thrust and drag
coefficients, respectively; dJ is the distance between the vehicle’s
center of gravity (CG) and the center of the sphere joint (CSJ).
4.2. Quadcopter Control
To evaluate the GTB’s performance, a 6-DOF flight controller
(including attitude and position controller) is designed based on
the quadcopter dynamics model [23-26]. The attitude controller
consists of two loops, i.e., outer loop and inner loop (see Figure 7).
The outer loop is a P-controller which calculates the angular rate
setpoints. The inner loop is a PID-controller fed by the setpoints
from the outer loop. The inner loop generates control signals that
are allocated to be PWM signals before being sent to the motor’s
ESCs.
1
k
Regulator +
-
d
k
d
k
d
k
Attitude
control
allocation
Attitude
error PWM
to ESC
Angular
rates
+
+
+
Figure 7: Attitude controller block diagram
sp
p
+
-
Velocity
setpoint
calculator
sp
p
1
k
p
T
Position
control
allocation
Yaw
angle
Fz
Attitude
commands
p
Throttle
command
i
k
p
k
d
k
+
+
+
Figure 8: Position controller block diagram
The position controller (Figure 8) consists of a velocity setpoint
calculator block that checks the distance, d, between the current
position p and the destination
sp
p
, before calculating the
corresponding velocity setpoint
sp
p
. If d is smaller than a
specified leash length, ld, then the velocity setpoint is obtained as
follows:
1()
sp sp
p k p p
(13)
If d is larger than ld, define vmax as:
70
International Journal of Engineering & Technology
max max
22
d
l
v a d
(14)
where, amax is the desired maximum acceleration of the vehicle.
Then, the velocity setpoints are calculated as:
max( )/
sp sp
p v p p d
(15)
Remark 1: The control laws in (13) and (15) make the vehicle’s
response to be smooth even the position setpoint is far from the
current position.
5. Experimental Results
Figure 9 shows experimental setup of the proposed GTB. The
system’s numerical parameters used for the experiment are listed
in Table 1. At the start of each flight test, the vehicle is held in
balance by some brackets. After powering on, the sensors process
a series of initial setup and calibration steps, while mGCS is
getting ready for data transmission. Once all start-up procedures
have completed, the vehicle is armed and operated under
stabilized control mode (3-DOF attitude control). The stabilizing
brackets are released and the vehicle is free. In stabilized control
mode, the attitude command can be sent to the vehicle either from
the RC transmitter or from mGCS.
Table 1: System parameters for experiments
Parameters
Value and unit
Description
m
1.80 kg
Total mass of the quadcopter
Jx
0.0121 kg.m2
Moment of inertia along x-axis
Jy
0.0119 kg.m2
Moment of inertia along y-axis
Jz
0.0223 kg.m2
Moment of inertia along z-axis
l
0.23 m
Arm length of quadcopter
dJ
0.11 m
Distance between the CG and CSJ
g
9.81 m/s2
Gravitational acceleration
x
χ
0.25
Drag coefficient along x-axis
y
χ
0.24
Drag coefficient along y-axis
z
χ
0.31
Drag coefficient along z-axis
amax
2.5 m/s2
Maximum acceleration of
quadcopter
ld,xy
0.7 m
Leash length along x and y-axis
ld,z
0.62
Leash length along z-axis
Once the attitude is stabilized, the control mode can be switched to
position control mode (6-DOF), which means that the attitude
controller will no longer receive any commands sent from the RC
transmitter or the PC but directly from the position controller.
Tables 2 lists the parameters of the attitude and position
controllers. The position, velocity and acceleration of the vehicle
were set to zero at the initialization. Afterward, they were
simulated and updated automatically and can be reset to zero at
any time during the test by using mGCS.
Table 2: Attitude and position controller’s gains
Controller
k1
kp
ki
kd
Attitude
roll
6.5
0.15
0.05
0.003
pitch
6.5
0.15
0.05
0.003
yaw
2.8
0.30
0.10
0
Position
x, y
0.95
0.10
0.02
0.01
z
1.00
0.20
0.02
0
Figure 9: The proposed GTB
The experiment is conducted with several test cases, including:
attitude stabilized flight, altitude flight, and position flight. In the
following figures, the dashed line (if any) represents for the
commanded value and the solid line represents the sensed value
(or simulated value). Figure 10 shows the attitude and angular rate
responses of the vehicle corresponding to an attitude step setpoint.
It is seen that the vehicle tracks the setpoint with a small overshoot
in the response which can be handled by tuning the attitude
controller’s gains.
Figure 11 presents the height, vertical velocity, throttle, and thrust
force (less gravity) responses under an altitude step command.
These results not only demonstrate the reliability of both the thrust
force measurements and the PPA but also indicate the altitude
controller was designed in a good manner.
a) Attitude
b) Angular rate
Figure 10: Results of an attitude stabilized flight
71
International Journal of Engineering & Technology
(a)
(b)
Figure 11: Results of an altitude flight
Figures 12 and 13 show the responses of the vehicle in a position
hold (position setpoint is (0, 0, 2) meter) and a position waypoint
flight, respectively. The stability and capability of the proposed
system are proved through these results. These 6-DOF flight’s
performances also indicate the controllers are well designed with
reasonable chosen values for the controller gains. These GTB tests
provide significant references that allow developers to design, re-
design, and fine-tune both the attitude and position controller
without danger or crashing the vehicle.
(a) Position
(b) Velocity
(c) Attitude
(d) Angular rate
Figure 12: Results of a position hold flight
72
International Journal of Engineering & Technology
(a) Position
(b) Velocity
(c) Attitude
(d) Angular rate
Figure 13: Results of a position waypoint flight
While the experimental results underlined the value of the
proposed GTB, the system still has noticeable shortcomings: The
mass and friction of the sphere joint have neglected which
introduces a discrepancy between performances of the on-GTB
and actual outdoor flying behavior. The sensor noise and bias are
variable when the vehicle is in motion. Although an LPF is
applied to reduce the measurement noise, the variable bias cannot
be removed entirely.
6. Conclusions
This paper proposes a 6-DOF multicopters ground testbed for the
evaluation of attitude and position controllers. The experimental
results demonstrate the feasibility and reliability of the proposed
GTB. The system works successfully with attitude stabilized flight,
altitude flight, and position flight. The GTB can accelerate
multicopter development procedures provide a basis for a safe,
reliable, and economic hardware-in-the-loop systems. Future work
will employ a fusion algorithm to combine force data along the x
and y axis and the IMU data with the aim to further improve PPA.
Acknowledgement
This work was supported by the Korea Institute for Advancement
of Technology (KIAT) grant funded by the Korean government
(Motie: Ministry of Trade, Industry & Energy) (No. N0002431).
References
[1] Frank Hoffmann, Niklas Goddemeier, Torsten Bertram. Attitude
estimation and control of a quadcopter. International Conference on
Intelligent Robots and Systems (2010): 1072-1077.
[2] Yushu Yu, Xilun Ding. A Quadrotor Test Bench for Six Degree of
Freedom Flight. J Intell Robot Syst (2012) 68:323–338.
[3] Sepehr P. Khaligh, Alejandro Martinez, Farbod Fahimi, Chales
Robert Koch. A HIL testbed for initial controller gain tuning of a
small unmanned helicopter. J Intell Robot Syst (2014) 73:289–308.
[4] Yi-Rui Tang, Yangmin Li. Development of a laboratory HILS
testbed system for small UAV helicopter. China. 2011.
[5] Kozuo Tanaka, Hiroshi Ohtake, Hua O. Wang. A practical
approach to stabilization of a 3-DOF RC Helicopter. IEEE
73
International Journal of Engineering & Technology
Transactions on Control Systems Technology, vol. 12, no. 2, pp.
315-325, March 2004.
[6] J. G. B. F. Filho, C. E. T. Dórea, W. M. Bessa and J. L. C. B. Farias.
Modeling, Test Benches and Identification of a Quadcopter. 2016
XIII Latin American Robotics Symposium and IV Brazilian
Robotics Symposium (LARS/SBR), Recife, 2016, pp. 49-54.
[7] Scott D. Hanford, Lyle N. Long, Joseph F. Horn. A Small Semi-
Autonomous Rotary-Wing Unmanned Air Vehicle (UAV).
American Institute of Aeronautics and Astronautics.3. 2005-7077.
[8] Corentin Cheron, Aaron Dennis, Vardan Semerjyan, YangQuan
Chen. A multifunctional HIL testbed for multirotor VTOL UAV
actuator. Proceedings of 2010 IEEE/ASME International
Conference on Mechatronic and Embedded Systems and
Applications, Qingdao, ShanDong, 2010, pp. 44-48.
[9] Nikos I. Vitzilaios, Nikos C. Tsourveloudis. An experimental test
bed for small unmanned Helicopters. J Intell Robot Syst (2009)
54:769–794.
[10] Huang Ran. Design and Demonstration of a Two-Dimentional Test
Bed for UAV Controller Evaluation. All Theses.1874. 2014.
[11] Daniel Simon. Hardware-in-the-loop test-bed of an Unmanned
Aerial Vehicle using Orccad.6th National Conference on Control
Architectures of Robots, May 2011, Grenoble, France.14p., 2011.
[12] Bhargava, Abhishek. Development of a Quadrotor Testbed for
Control and Sensor Development. All Theses. Paper 522. 2008.
[13] ROS.org. http://wiki.ros.org/. 2018.
[14] Dronecode. https://dev.px4.io/en/ros/. 2018.
[15] G. Cai. Unmanned Rotorcraft Systems. Springer - Verlag London
Limited. 2011.
[16] Beard, Randal. UAV Coordinate Frames and Rigid Body Dynamics.
Theory and Practice, Princeton University Press, 2012, ISBN: 978-
06-911-4921-9.
[17] V. Kumar and N. Michael, “Opportunities and challenges with
autonomous micro aerial vehicles,” in Proc. 15th Int. Symp.
Robotics Research, Flagstaff, AZ, Aug. 28–Sept. 1, 2011, pp. 1–16.
[18] M. Hehn and R. D. Andrea, “Quadrotor trajectory generation and
control,” in Proc. IFAC World Congress, Milano, Italy, Aug. 28–
Sept. 2, 2011, pp. 1485–1491.
[19] Robert C. Leishman, John Macdonald, Randal W. Beard, Timothy
W. McLain. Quadrotors and Accelerometers: State Estimation with
an Improved Dynamic Model. IEEE Control Systems, vol. 34, no. 1,
pp. 28-41, Feb. 2014.
[20] Philippe Martin and Erwan Salaun. The True Role of
Accelerometer Feedback in Quadrotor Control.2010 IEEE
International Conference on Robotics and Automation, Anchorage,
AK, 2010, pp. 1623-1629.
[21] Rafik Mebarki, Jonathan Cacace, Vincenzo Lippiello. Velocity
estimation using visual and IMU in GPS-denied environment.2013
IEEE International Symposium on Safety, Security, and Rescue
Robotics (SSRR), Linkoping, 2013, pp. 1-6.
[22] Du Ho, Jonas Linder, Gustaf Hendeby, Martin Enqvist. Mass
estimation of a quadcopter using IMU data.2017 International
Conference on Unmanned Aircraft Systems (ICUAS), Miami, FL,
USA, 2017, pp. 1260-1266.
[23] L. R. García Carrillo, A.E. Dzul López, Rogelio Lozano, Claude
Pégard. Quad Rotorcraft Control. Springer - Verlag London 2013,
pp. 23-34.
[24] W. Dong, G.-Y. Gu, X. Zhu, and H. Ding. Modeling and control of
a quadrotor UAV with aerodynamic concepts. Int. J. Mech. Aeros.
Ind. Mechatronic Manuf. Eng., vol. 7, no. 5, p. 437, 2013.
[25] J.-J. Xiong and E.-H.Zheng. Position and attitude tracking control
for a quadrotor UAV. ISA Trans., vol. 53, pp. 725–731, May 2014.
[26] Gabriel M. Hoffmann, Haomiao Huang, Steven L. Waslander,
Claire J. Tomlin. Precision flight control for a multi-vehicle
quadrotor helicopter testbed. Control Engineering Practice
19.1023–1036. 2011.