Acessibilidade / Reportar erro

A Software-in-the-Loop Simulation Scheme for Position Formation Flight of Multicopters

ABSTRACT

The cooperative control of small unmanned aerial vehicles such as the multicopters has been extensively investigated worldwide for functionality augmentation and cost reduction with respect to a single larger vehicle. The present paper proposes a software-in-the-loop simulation scheme for performance evaluation and demonstration of formation flight control systems of multicopters. The simulation scheme consists of a computer network where each computer simulates one of the vehicles using the MATLAB/Simulink for implementing the local control system and the X-Plane for simulating the flight dynamics and environment. For cooperation, the local control systems exchange position data by means of the network. In order to illustrate the proposed scheme, a group of 3 octocopters is taken into consideration and a leader-follower strategy is chosen for triangular position formation, with the leader moving in a straight line with constant speed.

Keywords
Software-in-the-loop simulation; Formation control; Multicopter; Micro aerial vehicle

INTRODUCTION

Technological advances of the last 2 decades have boosted the use of micro aerial vehicles (MAV) for tasks that can be dangerous, inefficient or unsuitable for human beings. Possible applications of these vehicles include search and rescue (Tomic et al. 2012Tomic T, Schmid K, Lutz P, Domel A, Kassecker M, Mair E, Grixa IL, Ruess F, Suppa M, Burschka D (2012) Toward a fully autonomous UAV: Research platform for indoor and outdoor urban search and rescue. IEEE Robot Autom Mag 19(3):46-56. doi: 10.1109/MRA.2012.2206473
https://doi.org/10.1109/MRA.2012.2206473...
, environmental monitoring (Koo et al. 2012Koo VC, Chan YK, Gobi V, Chua MY, Lim CH, Lim CS, Thum CC, Lim TS, Ahmad Z, Mahmood KA, Shahid MH, Ang CY, Tan WQ, Tan PN, Yee1 KS, Cheaw WG, Boey HS, Choo AL, Sew BC (2012). A new unmanned aerial vehicle synthetic aperture radar for environmental monitoring. PIER 122:245-268. doi: 10.2528/PIER11092604
https://doi.org/10.2528/PIER11092604...
), buildings inspection (Eschmann et al. 2012Eschmann C, Kuo CM, Kuo CH, Boller C (2012) Unmanned aircraft systems for remote building inspection and monitoring. Proceedings of the European Workshop on Structural Health Monitoring; Dresden, Germany.), border surveillance (Girard et al. 2004Girard AR, Howell AS, Hedrick JK (2004) Border patrol and surveillance missions using multiple unmanned air vehicles. Proceedings of the IEEE Conference on Decision and Control; Paradise Island, Bahamas.), fire monitoring (Casbeer et al. 2005Casbeer DW, Li SM, Beard RW, Mehra RK, McLain TW (2005) Forest fire monitoring with multiple small UAVs. Proceedings of the American Control Conference; Portland, USA.), powerline inspection (Li et al. 2010Li Z, Li Y, Walker R, Hayward R, Zhang J (2010) Towards automatic power line detection for a UAV surveillance system using pulse coupled neural filter and an improved Hough transform. Mach Vis Appl 21:677-686. doi: 10.1007/s00138-009-0206-y
https://doi.org/10.1007/s00138-009-0206-...
), traffic monitoring (Puri et al. 2007Puri A, Valavanis KP, Kontitsis M (2007) Statistical profile generation for traffic monitoring using real-time UAV based video data. Proceedings of the IEEE Mediterranean Conference on Control and Automation; Athens, Greece.) and surveillance in urban areas (Semsch et al. 2009Semsch E, Jakob M, Pavlicek D, Pechoucek M (2009) Autonomous UAV surveillance in complex urban environments. Proceedings of the International Joint Conference on Web Intelligence and Intelligent Agent Technology; Stevenage, United Kingdom.).

Recently, we have seen an increasing interest from industry and academia in MAV formation flight (Hao and Bin 2011Hao Y, Bin J (2011) Fault tolerant cooperative control with application to UAV team longitudinal flight. Proceedings of the IEEE 30th Chinese Control Conference; Yantai, China.; Han et al. 2013Han J, Hong Wang C, Xing Yi G (2013) Cooperative control of UAV based on multi-agent system. Proceedings of the IEEE 8th Conference on Industrial Electronics and Applications; Melbourne, Australia.; Wang and Xin 2013Wang J, Xin M (2013) Integrated optimal formation control of multiple unmanned aerial vehicles. IEEE Trans Contr Syst Tech 21(5):1731-1744. doi: 10.1109/TCST.2012.2218815
https://doi.org/10.1109/TCST.2012.221881...
; Zhu et al. 2013Zhu S, Wang D, Low CB (2013) Cooperative control of multiple UAVs for moving source seeking. Proceedings of the IEEE International Conference on Unmanned Aircraft Systems; Grand Hyatt, USA..) This is motivated by the belief that a cooperative group of small robots can perform better and with a lower cost than a single large vehicle (Wen 2012Wen G (2012) Distributed cooperative control for multi-agent systems (PhD thesis). Villeneuve-d’Ascq: École Centrale de Lille.). The position formation control of a group of vehicles with communication capability can be understood as the position control of each vehicle in such a way that the relative positions of the vehicles converge to a desired disposal.

For evaluating cooperative systems involving MAV, some research groups have built outdoor experimental setups for conducting flight tests (Shim et al. 2005Shim DH, Chung H, Kim HJ, Sastry S (2005) Autonomous exploration in unknown urban environments for unmanned aerial vehicles. Proceedings of the AIAA Guidance, Navigation, and Control Conference and Exhibit; San Francisco, USA.; How et al. 2004How J, King E, Kuwata Y (2004) Flight demonstrations of cooperative control for UAV teams. Proceedings of the AIAA 3rd “Unmanned Unlimited”Technical Conference, Workshop and Exhibit; Chicago, USA.; King et al. 2004King E, Kuwata Y, Alighanbari M, Bertuccelli L, How J (2004) Coordination and control experiments on a multi-vehicle testbed. Proceedings of the IEEE American Control Conference; Boston, USA.; Hoffmann et al. 2009Hoffmann GM, Waslander SL, Vitus MP, Huang H, Gillula JH, Pradeep V, Tomlin CJ (2009) Stanford testbed of autonomous rotorcraft for multi-agent control. Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems; St Louis, USA.). In these cases, the success of the tests are dependent on good weather conditions, availability of a safe flight area (Valenti et al. 2006Valenti M, Bethke B, Fiore G, How JP, Feron E (2006) Indoor multivehicle flight testbed for fault detection, isolation and recovery. Proceedings of the AIAA Guidance, Navigation and Control Conference and Exhibit; Keystone, USA.) as well as of a team of trained people (How et al. 2008How JP, Behihke B, Frank A, Dale D, Vian J (2008) Real-time indoor autonomous vehicle test environment. IEEE Contr Syst Mag 28(2):51-64. doi: 10.1109/MCS.2007.914691
https://doi.org/10.1109/MCS.2007.914691...
). Some other research groups alternatively adopt indoor flight tests relying on pose feedback provided by a stationary camera system (How et al. 2008How JP, Behihke B, Frank A, Dale D, Vian J (2008) Real-time indoor autonomous vehicle test environment. IEEE Contr Syst Mag 28(2):51-64. doi: 10.1109/MCS.2007.914691
https://doi.org/10.1109/MCS.2007.914691...
; Lupashin et al. 2010Lupashin S, Schollig A, Sherback M, D’Andrea R (2010) A simple learning strategy for high-speed quadrocopter multi-flips. Proceedings of the IEEE International Conference on Robotics and Automation; Anchorage, USA.; Michael et al. 2010Michael N, Mellinger D, Lindsey Q, Kumar V (2010) The GRASP multiple micro-UAV testbed. IEEE Robot Autom Mag 17(3):56-65. doi: 10.1109/MRA.2010.937855
https://doi.org/10.1109/MRA.2010.937855...
; Stirling et al. 2012Stirling T, Roberts J, Zufferey JC, Floreano D (2012) Indoor navigation with a swarm of flying robots. Proceedings of the IEEE International Conference on Robotics and Automation; St Paul, USA.).

In order to maximize the probability of success and save time in flight experiments, preliminary tests based on a realistic simulation environment are often desirable. In particular, the so-called software-in-the-loop (SIL) simulation is an interesting approach. It attempts to gain realism by combining in a simulation scheme 2 or more specilized softwares, each one for modeling a specific part of the system. It can also include the flight computer, which can be evaluated before flight experiments (Pizetta et al. 2012Pizetta IHB, Brandão AS, Sarcinelli Filho M, Carelli R (2012) Uma plataforma hardware-in-loop para vants de asas rotativas. Proceedings of the XIX Congresso Brasileiro de Automática; Campina Grande, Brazil.). Garcia and Barnes (2010)Garcia R, Barnes LE (2010) Multi-UAV simulator utilizing X-Plane. J Intell Robot Syst 57:393-406. doi: 10.1007/s10846-009-9372-4
https://doi.org/10.1007/s10846-009-9372-...
present a SIL simulation for formation flight of electric helicopters using one computer to implement the control laws in a centralized form and others to simulate the dynamics of the fleet members. The disadvantage of this work, as reported by the authors, is that the processing and communication capabilities of the (centralized) control computer are a bottleneck.

The present paper proposes a distributed SIL simulation scheme for testing position formation control systems of multicopters. The scheme consists of a network where each computer simulates a vehicle of the fleet using the MATLAB/ Simulink, for implementing the local control laws, and the flight simulator X-Plane, for simulating the flight dynamics and environment.

The paper is organized in the following manner. The next section presents the multicopter dynamic models. Thus, it is presented a position formation control method. In sequence, the proposed SIL simulation scheme is described. In “Simulation Tests” section, the proposed scheme is illustrated by testing a position formation flight of 3 octocopters. Finally, the last section concludes the paper.

MULTICOPTER MODELING

Consider a multicopter and 2 Cartesian coordinate systems (CCSs), as illustrated in Fig. 1. The body CCS SBXB, YB, ZB} is fixed on the vehicle’s structure with its origin at the vehicle’s center of mass (CM). The reference CCS SRXR, YR, ZR} is fixed on the ground at point O; its Z-axis is aligned with the local vertical axis. { {

Figure 1
A multicopter and the Cartesian coordinate systems.

ANALYTICAL MODELING

Here we present analytical models for a multicopter. These models will be later compared with the corresponding X-Plane model. The attitude kinematics equation in quaternions q is given by the following differential one (Wertz 1978Wertz JR (1978) Spacecraft attitude determination and control. Dordrecht, Boston: Reidel.):

where:

and ωω1 ω2 ω3]T ∈ ℝ3 is the SB representation of the angular velocity of SB w.r.t. SR and [ω×] is the cross-product matrix of ω, i.e.: [

The attitude dynamics is described by the Euler equation:

where: ττ1 τ2 τ3]T ∈ ℝ3 is the SB representation of the total control (propeller) torque; hI ω ∈ ℝ3 is the SB representation of the vehicle’s angular momentum; I ∈ ℝ3×3 is the vehicle’s inertia matrix w.r.t. SB. It is assumed that the vehicle has a symmetrical structure so that I can be written as: [

Neglecting perturbations, the translational dynamics model is obtained from the Newton’s Second Law as:

where: rr1 r2 r3]T ∈ ℝ3 is the position of the CM w.r.t. SR; vv1 v2 v3]T ∈ ℝ3 is the unit vector perpendicular to the plane of rotors; f is the magnitude of the total thrust; g is the gravity acceleration; m is the vehicle’s mass. [ [

Now denote the thrust and the reaction torque produced by the j-th rotor by, respectively, fj and τj, . = 1, …, n, being n the number of rotors. The usual aerodynamic models for the rotors are:

where: kf is the thrust coefficient; kτ is the reaction torque coefficient; ωf is the rotation speed of the jth rotor.

Define the vector of individual thrusts by ff1 f2 ...fn]T. We can relate the magnitude f of the total thrust and the resultant torque ττ1 τ2 τ3]T ∈ ℝ3 with f by: [ [

where, for the octocopter configuration taken into account in the present paper (see Fig. 1),

and kkτ/ kf and l the arm’s length.

X-PLANE MODELING

In this study, the multicopter dynamics, its flight environment (gravity, wind, etc.), as well as a graphic visualization of the mission, are modeled in Plane-Maker, the design tool associated with the flight simulator X-Plane. For illustration, we chose the Gyrofly Gyro-200ED-X8 octocopter (Fig. 2a). The corresponding X-Plane model is depicted in Fig. 2b.

Figure 2
(a) Gyrofly Gyro-200ED-X8 octocopter; (b) X-Plane model.

The X-Plane was chosen due to the following characteristics: it is certified by the Federal Aviation Administration (FAA); it is able to simulate wind and turbulence; it permits to design customized models by means of the Plane-Marker module; it allows simultaneous visualization of multiple vehicles on the same monitor; and, finally, it can import and export data along the simulation.

Based on Blade Elements Theory, the X-Plane reads the geometric shape of the aircraft modeled in Plane-Maker and divides its surfaces into several small elements. Then, it simulates the forces acting on each element. These forces are converted into accelerations that, when integrated over time, result in velocities and translation.

The X-Plane dynamic model is generated numerically as described above. In other words, it does not give the equations of motion neither of some physical parameters such as the inertia matrix and the rotor coefficients. Therefore, for designing of control laws, we need first to identify some parameters of the X-Plane model.

PARAMETER ESTIMATION

The inputs of the analytical modeling (Eqs. 1 to 6) are the magnitude f of the total thrust and the total torque τ produced by the propellers. On the other hand, the inputs of the X-Plane model are rotor throttles Tj ∈ [0, 1], j = 1, …, 8. Therefore, before estimating the rotor coefficients kf and kτ, and the moments of inertia I1, I2, and I3, we need to convert commands of f and τ into Tj. Denote the commands of f, τ, and f by f , τ, and f , respectively. From Eq. 9, one can write:

By inverting Eq. 11, we can obtain the individual thrust commands from f and τ,by:

where: ΓΓT Γ)–1 ΓTis the pseudo-inverse of Γ. (

The next step is to convert from fj and τj to Tj. For this end, a preliminary test was made, which showed a linear relation between these quantities, i.e.:

In order to estimate the parameters kj and kτ, we adopt the SIL simulation scheme that will be presented in “Software-in-the-Loop Simulation” section. The rotors are assumed to be identical and the identification is made only for the first rotor. The vehicle is commanded to hover and an additive random signal is used to excite the X-Plane model through the throttle input T1(k). Let f1 and τ1 denote the measurements of f1 and τ1, respectively. We adopt the following measurement model:

where: y(k) f1(k) τ1(k)]T ∈ ℝ2 is the output measurement vector; x(k) 1(k)] ∈ ℝ is the input measurement; Ѳ kf kτ]T ∈ ℝ2 is the parameter vector; є (k) є1(k) є2(k)]T ∈ ℝ2 is the modeling error vector. [ [T [ [

Applying the data set took at instants k = 1, 2, …, N in Eq. 15, one obtains a set of linear equations with unknown Ѳ. These equations can be compactly represented by the following matrix equation:

where: Yy(1)T y(N)T]T, Xx(1)T x(2)T ...x(N)]T, and ET є(2)T ... є(N)T]T [ [ [є(1)

Using the measurement model (Eq. 16) and the data set represented in X and Y, one can immediately obtain a leastsquares estimate Ѳ by (Ljung 1987Ljung L (1987) System identification: theory for the user. 2nd edition. Englewood Cliffs: Prentice Hall.): of

A similar procedure is adopted for estimating the moments of inertia I1, I2, and I3 from tests with the SIL simulation scheme. In this case, each rotation DOF is consider separately, resulting in the estimation of the corresponding moment of inertia. The vehicle is initially commanded to hover at a point and a random signal is added to the attitude command about the considered axis. The attitude command is sampled to obtain the input measurements X, while the true attitude computed by the X-Plane gives the output measurements Y. Finally, on the basis of a measurement model similar to Eq. 16, a least-squares estimate of the moment of inertia is obtained using Eq. 17. Table 1 presents the obtained estimates.

Table 1
Estimation of the parameters kf, kτ, I1, I2, and I3.

A POSITION FORMATION CONTROL METHOD

PRELIMINARY DEFINITIONS

This section presents a position formation flight control method based on the leader-follower strategy (Santos 2013Santos DA (2013) Automatic position control of multirotor helicopters. Paris: ESIEE. Technical report.). To begin with, consider a team of N multicopters and the CCSs of Fig. 3. The body’s CCSs are denoted by SiB = {XiB, YiB, ZiB}, i ∈ I N} The ith body CCS SiB is assumed to be attached to the structure of the i-th multicopter and centered at its center of mass CMi. The reference CCS is denoted by SR = {XR, YR, ZR}. It is assumed to be fixed on the ground at point O. {1, 2, ....

Figure 3
A team of N multirotor vehicles and the Cartesian coordinate systems.

Assume the SR in an inertial frame and neglect any disturbance force. The direct application of the Second Newton’s Law gives the following translational dynamic models represented in SR.

where: rir1i r2i r3i]T ∈ ℝ denotes the three-dimensional position of CMi; vi ∈ ℝ3 is the unit vector normal to the rotor plane of the ith multicopter; mi is the mass of the ith multicopter; fi is the magnitude of the total thrust produced by the rotors of the ith multicopter. [

Define the total thrust vector fi ∈ ℝ3 of the ith vehicle by:

and the inclination angle ϕi of vi as:

Note that ϕi consists of the angle between vi and ZR.

Let ridrid,1 rid,2 rid,3]T ∈ ℝ3 denote the position command for the i-th vehicle and define the corresponding tracking error ri ∈ ℝ3by: [

Let the position formation be described by the set:

where: rr ∈ ℝ3 is defined as the reference position for the formation; ρi ∈ ℝ3 , ∀iI, are the actual relative positions of the vehicles w.r.t. rr. Using the same notation, one can represent the corresponding desired formation by:

where: rrd ∈ ℝ3 is the desired relative reference position of the formation; ρid ∈ ℝ, ∀iI, are the desired positions of the vehicles w.r.t. rrd.

For all iI, let ϕimax ∈ ℝ be the maximum allowable value of the inclination angle ϕi and fimin ∈ ℝ and fimax ∈ ℝ be, respectively, the minimum and the maximum allowable values of the total thrust magnitudes fi. The position formation control problem is to find . feedback control laws for fi ,∀iI, which make FFd while respecting the constraints fiminfifimax and ϕiϕimax, ∀iI.

LOCAL POSITION CONTROL

In order to solve the afore-defined problem, we first establish the local position control law to be adopted by the i-th multicopter. This control law is partitioned into an altitude controller and a horizontal position controller.

Altitude Control

Let ri3 ∈ ℝ, vi3 ∈ ℝ, and rid,3 ∈ ℝ denote the vertical projections of ri , vi, and rid, respectively. Consider the minimum fimin ≥0 and maximum fimax > fimin allowable values for the thrust magnitude fi. Assume that mi, g, and v3i ≠ 0are exactly known.

The altitude feedback control law is given by (Santos et al. 2013Santos DA, Saotome O, Cela A (2013) Trajectory control of multirotor helicopters with thrust vector constraints. Proceedings of the IEEE 21st Mediterranean Conference on Control and Automation; Chania, Greece.):

with

The above control law respects the total thrust magnitude constraint fiminfifimax and is such that, if fiminαi3fimax ,then the vehicle altitude r3i responds to the altitude command rid,3 as if it were governed by a second-order linear time-invariant model. The gains k1 and k2 are design parameters and have effect of proportional and derivative actions, respectively.

Horizontal Position Control

Let ri12ri1 ri2]T ∈ ℝ2, vi12vi1 vi2]T ∈ ℝ2, and rid,12 ∈ ℝ2 denote the horizontal projections of ri , vi, and rdi, respectively. Consider the maximum allowable value ϕimax > 0 for the inclination angle ϕi. Assume that mi and fi ≠ 0 are exactly known. The horizontal-position feedback control law is given by (Santos et al. 2013Santos DA, Saotome O, Cela A (2013) Trajectory control of multirotor helicopters with thrust vector constraints. Proceedings of the IEEE 21st Mediterranean Conference on Control and Automation; Chania, Greece.): [ [

with

The above control law respects the inclination angle constraint ϕiϕimax and is such that, if ||αi12 || ≤ sinϕimax, then ri12 responds to the horizontal position command rid,12rid,1 rid,2]T as if it were governed by a pair of second-order linear time-invariant models. The gains k3 and k4 are design parameters and have effect of proportional and derivative actions, respectively. [

The control law (Eq. 26) provides the horizontal projection vi12 of the normal vector vi. Since vi is a unit vector, one can thus write:

Therefore, Eqs. 24 and 28 give together a solution fi = fivi to the local control problem of the ith multicopter.

LEADER-FOLLOWER STRATEGY

After establishing the stable local position controllers, it remains to define the position formation strategy. Here we adopt a leader-follower strategy with a single leader.

Consider rrr(1), which corresponds to attribute the leadership to vehicle i = 1. Assume that the local control laws fi = fi vi , ∀iI, are asymptotically stable, i.e. ri → 0,∀iI, for an arbitrary position command rdi , ∀iI. Therefore, if the position commands of the individual multicopters are chosen to be:

then the control laws fi, ∀iI, make FFd (Santos 2013Santos DA (2013) Automatic position control of multirotor helicopters. Paris: ESIEE. Technical report.).

In order to specify the translation of the fleet, the designer needs to choose the desired leader position rrd as an appropriate time-function. On the other hand, for specifying the form of the formation, the designer needs to establish the desired relative positions of the followers ρdq w.r.t. the leader.

SOFTWARE-IN-THE-LOOP SIMULATION

The present section proposes a software-in-the-loop simulation scheme for evaluation and demonstration of position formation control of multicopters. Particularly, we take into consideration a leader-follower formation with one leader and 2 followers. Each one of the vehicles is simulated by a separate desktop computer, where the control laws are implemented in MATLAB/Simulink and the flight dynamics and environment are simulated in the flight simulator X-Plane.

The 3 computers are interconnected by an Ethernet network (Fig. 4). Computer 1 simulates the leader multicopter, while computers 2 and 3 simulate the followers 1 and 2, respectively. The data exchaged in the network throughtout the simulation is the leader’s position r1, which is sent from the leader to the 2 followers.

Figure 4
(a) SIL simulation scheme; (b) Real simulation environment.

The use of a separate computer for simulating each multicopter is justified by the X-Plane’s inability to simulate more than 1 vehicle in a single computer. Nevertheless, despite the use of a distributed simulation architecture, the X-Plane still allows simultaneous visualization of up to 20 vehicles on the same monitor by means of its multiplayer function. The proposed scheme uses this function to show the formation flight on a larger screen (Fig. 4b).

For communicating with external processes and machines, the X-Plane adopts the User Datagram Protocol (UDP). Unlike the Transmission Control Protocol (TCP), the UDP does not assure that data packages will arrive completetly and orderly (Garcia and Barnes 2010Garcia R, Barnes LE (2010) Multi-UAV simulator utilizing X-Plane. J Intell Robot Syst 57:393-406. doi: 10.1007/s10846-009-9372-4
https://doi.org/10.1007/s10846-009-9372-...
). However, the communication via UDP is extremely fast and makes efficient use of the bandwidth (Liu et al. 2002Liu PX, Meng M, Ye X, Cui J (2002) An UDP-based protocol for internet robots. Proceedings of the 4th World Congress on Intelligent Control and Automation; Shanghai, China.), which are advantageous characteristics for the simulation under consideration.

In the proposed scheme, the UDP interface between MATLAB/Simulink and X-Plane is used in 2 directions. On one hand, the X-Plane sends to Simulink the vehicle’s position, linear velocity, Euler angles, and angular velocity. On the other hand, the Simulink sends rotor throttle commands to the X-Plane. The present study considers a sampling frequency of 90 Hz.

To enable the X-Plane exchanging data with Simulink, both softwares running in the same computer, a loopback network is adopted, i.e. the computer sends data via the UDP network to its own address. Ribeiro and Oliveira (2012)Ribeiro LR, Oliveira NMF (2012) UAV autopilot controllers test platform using Matlab/Simulink and X-Plane. Proceedings of the ASEE/IEEE Frontiers in Education Conference; Seattle, USA. and Garcia and Barnes (2010)Garcia R, Barnes LE (2010) Multi-UAV simulator utilizing X-Plane. J Intell Robot Syst 57:393-406. doi: 10.1007/s10846-009-9372-4
https://doi.org/10.1007/s10846-009-9372-...
present more details about UDP communication between MATLAB/Simulink and X-Plane.

To perform the communication between computers it was set an Ethernet network with star topology, by assigning a fixed IP address for each computer. This network was assembled through a standard router that has an internal switch. The switch allows data to be sent directly to the desired port, avoiding excessive data traffic on the network. The transmission is performed through twisted pair cables.

SIMULATION TESTS

In order to validate the SIL scheme, a pure MATLAB simulation using the analytical models given in “Analytical Modeling” section is also implemented for comparison. In the pure MATLAB simulation, numerical integrations are performed using the 4th-order Runge-Kutta method with step of 0.002 s. The multicopter’s initial positions are chosen to be: r1 = [0 0 2]T m, r2 = [−2 0 2]T m, and r3 = [−4 0 2]T m. The vehicles’ mass is g = 2.132 kg and the gravity acceleration is g = 9.796 m/s2. The parameters k1, k2, k3, and k4 of the local position control laws are tuned for a time response with overshoot of MP ≈ 0.02 m and peak time of tP ≈ 2 s. Moreover, the constraint parameters of the local controllers are set at φimax = 30°, fimax = 40 N, and fimin = 2 N.

For illustrating the proposed SIL simulation scheme, the desired formation Fd (see the notation defined in Eq. 23) is chosen with:

where: t ≥ 0 denotes the continuous time; λ = 0.5 m/s is the longitudinal velocity; h = 2 m is the formation altitude; η = 2.6 m is the longitudinal distance from the CM of the leader vehicle to the CM of the follower vehicles; γ = 1.5 m is the transversal distance from the CM of the leader vehicle to the CM of the follower vehicles.

Note that the afore-defined Fd is a triangular formation (Fig. 5). Moreover, it is worth mentioning that, by Eq. 31, the leader vehicle is commanded to follow a straight line on the horizontal plane, with constant speed λ and with an altitude h.

Figure 5
A triangular desired formation flight. (a) Geometry of the desired formation; (b) X-Plane visualization of the desired formation.

In order to quantify the formation error and compare the SIL simulation with the corresponding pure MATLAB simulation, the following accuracy figure of merit is adopted:

Note the Ia (t) ≥ 0, ∀i, is such that, if FFd, then (t) ≥ 0.

First of all, we conducted a test with the SIL simulation scheme in order to evaluate the performance of the network’s data exchange. In this test, data are exchanged between computers of the network and compared to check if they are equal in the origin and destination. As a result, it was verified that the communication stays synchronized, as it shows no delays and no data loss. The observed characteristics are essential for a consistent operation of the proposed SIL simulation scheme.

Figure 6 shows the time response of the vehicles’ translation considering the desired formation given in Eq. 31. This figure compares the SIL simulation with the pure MATLAB simulation. In both cases, the true formation converges to the desired one with a transient of less than 5 s and an steady-state error of less than 0.02 m. These results also show that the performance observed in the SIL simulation is quite similar to that obtained using the pure MATLAB simulation, which, in some sense, validates the model of “Analytical Modeling” section with parameters identified, as described in “Parameter Estimation” section.

Figure 6
Time response to the formation command (Eq. 31). The solid red lines represent the components of rd(1), rd(2), and rd(3). The dashed black lines represent the components of r(1), r(2), and r(3) obtained in the SIL simulation. The dashed blue lines represent the components of r(1), r(2), and r(3) obtained in the pure MATLAB simulation.

For a better visualization of the position formation, Fig. 7 illustrates the trajectory of the multicopters on the X-Y plane.

FIgure 7
The position formation on the x-y plane, obtained in the SIL simulation.

Each curve shows the trajectory of 1 vehicle, starting on the left and finishing at t = 20 s on the right extremity. In this figure, we can see the convergence of F towards Fd.

Finally, we illustrate the position formation in the SIL simulation scheme under constant wind disturbances. Figure 8 compares the performance of the position formation using the figure of merit Ia (t) for 3 different values of the wind speed υ. Here, it is possible to see the impact of the wind on the perfomance of the formation flight.

Figure 8
The position formation error for different wind velocities.

CONCLUSIONS

The paper proposed a SIL simulation scheme for demonstration and evaluation of position formation control of multicopters. The scheme is implemented in a star-topology computer network, where each computer simulates 1 multicopter of the fleet. The MATLAB/Simulink is used for implementing the control laws, while the flight simulator X-Plane models the environment, the vehicles’ dynamics and provides a graphical visualization as well.

For illustrating the SIL simulation, a leader-follower strategy together with distributed linear saturated position control laws were considered. The simulation tests showed that the SIL simulation scheme proved itself to be effective and reliable to simulate a fleet of multicopters in formation flight, allowing a good visualization of the scene and providing realistic data.

The proposed SIL simulation scheme can be used effectively for preliminary evaluation of position formation control systems of multicopters, before conducting real flight tests. We argue that, by adopting such a simulation, it is possible to reduce costs, avoid risks, and save time in the development of such a fleet of micro aerial vehicles.

ACKNOWLEDGEMENTS

The first author would like to thank the Fundação de Amparo à Pesquisa do Estado do Amazonas (FAPEAM), for providing his master’s scholarship during the project. Furthermore, we are grateful to Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq), for supporting the project under the Grant 475251/2013.

AUTHOR’S CONTRIBUTION

  • Castro DFand Santos DAconceived the idea and co-wrote the text. Castro DF worked on the simulations results.

REFERENCES

  • Casbeer DW, Li SM, Beard RW, Mehra RK, McLain TW (2005) Forest fire monitoring with multiple small UAVs. Proceedings of the American Control Conference; Portland, USA.
  • Eschmann C, Kuo CM, Kuo CH, Boller C (2012) Unmanned aircraft systems for remote building inspection and monitoring. Proceedings of the European Workshop on Structural Health Monitoring; Dresden, Germany.
  • Garcia R, Barnes LE (2010) Multi-UAV simulator utilizing X-Plane. J Intell Robot Syst 57:393-406. doi: 10.1007/s10846-009-9372-4
    » https://doi.org/10.1007/s10846-009-9372-4
  • Girard AR, Howell AS, Hedrick JK (2004) Border patrol and surveillance missions using multiple unmanned air vehicles. Proceedings of the IEEE Conference on Decision and Control; Paradise Island, Bahamas.
  • Han J, Hong Wang C, Xing Yi G (2013) Cooperative control of UAV based on multi-agent system. Proceedings of the IEEE 8th Conference on Industrial Electronics and Applications; Melbourne, Australia.
  • Hao Y, Bin J (2011) Fault tolerant cooperative control with application to UAV team longitudinal flight. Proceedings of the IEEE 30th Chinese Control Conference; Yantai, China.
  • Hoffmann GM, Waslander SL, Vitus MP, Huang H, Gillula JH, Pradeep V, Tomlin CJ (2009) Stanford testbed of autonomous rotorcraft for multi-agent control. Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems; St Louis, USA.
  • How J, King E, Kuwata Y (2004) Flight demonstrations of cooperative control for UAV teams. Proceedings of the AIAA 3rd “Unmanned Unlimited”Technical Conference, Workshop and Exhibit; Chicago, USA.
  • How JP, Behihke B, Frank A, Dale D, Vian J (2008) Real-time indoor autonomous vehicle test environment. IEEE Contr Syst Mag 28(2):51-64. doi: 10.1109/MCS.2007.914691
    » https://doi.org/10.1109/MCS.2007.914691
  • King E, Kuwata Y, Alighanbari M, Bertuccelli L, How J (2004) Coordination and control experiments on a multi-vehicle testbed. Proceedings of the IEEE American Control Conference; Boston, USA.
  • Koo VC, Chan YK, Gobi V, Chua MY, Lim CH, Lim CS, Thum CC, Lim TS, Ahmad Z, Mahmood KA, Shahid MH, Ang CY, Tan WQ, Tan PN, Yee1 KS, Cheaw WG, Boey HS, Choo AL, Sew BC (2012). A new unmanned aerial vehicle synthetic aperture radar for environmental monitoring. PIER 122:245-268. doi: 10.2528/PIER11092604
    » https://doi.org/10.2528/PIER11092604
  • Li Z, Li Y, Walker R, Hayward R, Zhang J (2010) Towards automatic power line detection for a UAV surveillance system using pulse coupled neural filter and an improved Hough transform. Mach Vis Appl 21:677-686. doi: 10.1007/s00138-009-0206-y
    » https://doi.org/10.1007/s00138-009-0206-y
  • Liu PX, Meng M, Ye X, Cui J (2002) An UDP-based protocol for internet robots. Proceedings of the 4th World Congress on Intelligent Control and Automation; Shanghai, China.
  • Ljung L (1987) System identification: theory for the user. 2nd edition. Englewood Cliffs: Prentice Hall.
  • Lupashin S, Schollig A, Sherback M, D’Andrea R (2010) A simple learning strategy for high-speed quadrocopter multi-flips. Proceedings of the IEEE International Conference on Robotics and Automation; Anchorage, USA.
  • Michael N, Mellinger D, Lindsey Q, Kumar V (2010) The GRASP multiple micro-UAV testbed. IEEE Robot Autom Mag 17(3):56-65. doi: 10.1109/MRA.2010.937855
    » https://doi.org/10.1109/MRA.2010.937855
  • Pizetta IHB, Brandão AS, Sarcinelli Filho M, Carelli R (2012) Uma plataforma hardware-in-loop para vants de asas rotativas. Proceedings of the XIX Congresso Brasileiro de Automática; Campina Grande, Brazil.
  • Puri A, Valavanis KP, Kontitsis M (2007) Statistical profile generation for traffic monitoring using real-time UAV based video data. Proceedings of the IEEE Mediterranean Conference on Control and Automation; Athens, Greece.
  • Ribeiro LR, Oliveira NMF (2012) UAV autopilot controllers test platform using Matlab/Simulink and X-Plane. Proceedings of the ASEE/IEEE Frontiers in Education Conference; Seattle, USA.
  • Santos DA (2013) Automatic position control of multirotor helicopters. Paris: ESIEE. Technical report.
  • Santos DA, Saotome O, Cela A (2013) Trajectory control of multirotor helicopters with thrust vector constraints. Proceedings of the IEEE 21st Mediterranean Conference on Control and Automation; Chania, Greece.
  • Semsch E, Jakob M, Pavlicek D, Pechoucek M (2009) Autonomous UAV surveillance in complex urban environments. Proceedings of the International Joint Conference on Web Intelligence and Intelligent Agent Technology; Stevenage, United Kingdom.
  • Shim DH, Chung H, Kim HJ, Sastry S (2005) Autonomous exploration in unknown urban environments for unmanned aerial vehicles. Proceedings of the AIAA Guidance, Navigation, and Control Conference and Exhibit; San Francisco, USA.
  • Stirling T, Roberts J, Zufferey JC, Floreano D (2012) Indoor navigation with a swarm of flying robots. Proceedings of the IEEE International Conference on Robotics and Automation; St Paul, USA.
  • Tomic T, Schmid K, Lutz P, Domel A, Kassecker M, Mair E, Grixa IL, Ruess F, Suppa M, Burschka D (2012) Toward a fully autonomous UAV: Research platform for indoor and outdoor urban search and rescue. IEEE Robot Autom Mag 19(3):46-56. doi: 10.1109/MRA.2012.2206473
    » https://doi.org/10.1109/MRA.2012.2206473
  • Valenti M, Bethke B, Fiore G, How JP, Feron E (2006) Indoor multivehicle flight testbed for fault detection, isolation and recovery. Proceedings of the AIAA Guidance, Navigation and Control Conference and Exhibit; Keystone, USA.
  • Wang J, Xin M (2013) Integrated optimal formation control of multiple unmanned aerial vehicles. IEEE Trans Contr Syst Tech 21(5):1731-1744. doi: 10.1109/TCST.2012.2218815
    » https://doi.org/10.1109/TCST.2012.2218815
  • Wen G (2012) Distributed cooperative control for multi-agent systems (PhD thesis). Villeneuve-d’Ascq: École Centrale de Lille.
  • Wertz JR (1978) Spacecraft attitude determination and control. Dordrecht, Boston: Reidel.
  • Zhu S, Wang D, Low CB (2013) Cooperative control of multiple UAVs for moving source seeking. Proceedings of the IEEE International Conference on Unmanned Aircraft Systems; Grand Hyatt, USA.

Publication Dates

  • Publication in this collection
    Oct-Dec 2016

History

  • Received
    03 Feb 2016
  • Accepted
    04 July 2016
Departamento de Ciência e Tecnologia Aeroespacial Instituto de Aeronáutica e Espaço. Praça Marechal do Ar Eduardo Gomes, 50. Vila das Acácias, CEP: 12 228-901, tel (55) 12 99162 5609 - São José dos Campos - SP - Brazil
E-mail: submission.jatm@gmail.com