On-board communication-based relative localization for collision avoidance in Micro Air Vehicle teams

On-board communication-based relative localization for collision avoidance in Micro Air Vehicle... To avoid collisions, Micro Air Vehicles (MAVs) flying in teams require estimates of their relative locations, preferably with minimal mass and processing burden. We present a relative localization method where MAVs need only to communicate with each other using their wireless transceiver. The MAVs exchange on-board states (velocity, height, orientation) while the signal strength indicates range. Fusing these quantities provides a relative location estimate. We used this for collision avoidance in tight areas, testing with up to three AR.Drones in a 4 m × 4 m area and with two miniature drones (≈ 50 g) in a2m × 2 m area. The MAVs could localize each other and fly several minutes without collisions. In our implementation, MAVs communicated using Bluetooth antennas. The results were robust to the high noise and disturbances in signal strength. They could improve further by using transceivers with more accurate signal strength readings. Keywords Relative localization · Collision avoidance · Micro Air Vehicles · Autonomous flight · Indoor exploration 1 Introduction ity, and flexibility to the system, being no longer tied to the success and abilities of one unit (Brambilla et al. 2013). Dur- The agility and small scale of Micro Air Vehicles (MAVs) ing this scenario, however, it may happen that a few MAVs make them ideal for indoor exploration (Kumar and Michael end up flying together in a small area (e.g., an office, meet- 2012). We imagine several autonomous MAVs navigating ing room, or hallway), leading to a high risk of inter-MAV through a building for mapping or inspection. The agents collisions (Szabo 2015). This is a failure condition to be could spread out and thus complete the exploration task in avoided to ensure mission success without the unwanted loss a short time. This approach also brings robustness, scalabil- of units. We have developed and tested a method to tackle this issue which uses only decentralized wireless communication This is one of several papers published in Autonomous Robots between MAVs. Two or more MAVs estimate their relative comprising the “Special Issue on Distributed Robotics: From location via the wireless connection and adjust their path Fundamentals to Applications”. to avoid collisions. In this paper, we describe the details of B Mario Coppola the algorithm and present real-world results on autonomous m.coppola@tudelft.nl MAVs. Kimberly N. McGuire The primary contribution in this article is an on-board k.n.mcguire@tudelft.nl relative localization method for MAVs based on inter-MAV Kirk Y. W. Scheper wireless communication. The communication channel is k.y.w.scheper@tudelft.nl used as a method for the exchange of own state measurements GuidoC.H.E.deCroon and as a measure of relative range (based on signal strength), g.c.h.e.decroon@tudelft.nl providing each MAV with sufficient data to estimate the rela- tive location of another. Our implementation uses Bluetooth, Department of Control and Simulation (Micro Air Vehicle which is readily available at a low mass, power, and cost Laboratory), Faculty of Aerospace Engineering, Delft University of Technology, Kluyverweg 1, 2629 HS Delft, penalty even on smaller MAVs (McGuire et al. 2016). The The Netherlands advantages of our solution are: (a) it provides direct MAV- Department of Space Systems Engineering, Faculty of to-MAV relative location estimates at all relative bearings; Aerospace Engineering, Delft University of Technology, (b) it does not require any external system such as beacons; Kluyverweg 1, 2629 HS Delft, The Netherlands 123 Autonomous Robots (c) it does not require knowledge of global positions; (d) One method to achieve relative localization is to provide it does not depend on the lighting and sound conditions of a shared reference frame in which each MAV knows its own the environment; (e) it has low mass, battery, and processing absolute location. The MAVs can share absolute position requirements; (f) it does not require dedicated sensors. Our data and infer a relative estimate. In outdoor tasks, Global solution also applies to other indoor localization applications, Navigation Satellite System (GNSS) receivers can be used because it shows that only one access point is sufficient to to obtain global position data to share. This has enabled obtain a localization estimate, as opposed to multiple ones formation flying (Min et al. 2016) and large-scale flock- as in current state of the art (Malyavej et al. 2013; Choudhry ing (Vásárhelyi et al. 2014). In indoor tasks, where GNSS is et al. 2017). The system can also be implemented on teams not available, absolute position data can be measured using with more than two agents. This can be done by setting up external sensors/beacons in a known configuration, such as: multiple MAV-to-MAV parallel instances of the estimator. motion tracking cameras (Michael et al. 2010), fixed wire- The secondary contribution in this article is a reactive col- less transmitters/receivers (Guo et al. 2016; Ledergerber et al. lision avoidance strategy that is designed to deal with the 2015), or visual markers (Faigl et al. 2013). However, these localization estimator. The strategy is based on the concept of solutions are unsuitable for exploration tasks of unknown collision cones (Fiorini and Shiller 1998), tailored to suit the and unstructured environments. Simultaneous Localization relative localization method and its expected performance. and Mapping (SLAM) methods circumvent this by gener- The paper is organized as follows. First, we review related ating a map on-board during flight, which then provides literature in Sect. 2. Then, Sect. 3 introduces the rela- position information that can be shared (Scaramuzza et al. tive localization method and Sect. 4 describes our collision 2014). However, if on-board map generation is not part of the avoidance strategy. To assess the system, we developed a rep- mission then this is a resource intensive practice to be dis- resentative room exploration task, explained in Sect. 5.We couraged (Ho et al. 2015). Therefore, the more direct strategy started with simulation trials to test the system under different is for the MAVs to directly localize each other. conditions (Sect. 6). Then, the technology was implemented Vision has received significant attention as a method for on AR.Drones. Initially, the AR.Drones were aided by using direct localization, where front-facing cameras are used to ego-motion data from an external tracking system, as detailed detect and localize other MAVs. Current implementations in Sect. 7. This was done to isolate the performance of generally adopt mounted visual aids in the form of: colored the relative localization from other sensors. Next, this was balls (Roelofsen et al. 2015), tags (Conroy et al. 2014), or removed so that the AR.Drones were relying on on-board markers (Nägeli et al. 2014). However, experiments during sensors, for which the set-up and results can be found in exploratory phases of this study have shown that the use Sect. 8. Finally, the system was implemented on miniaturized of vision without such aids, for very small drones, and at MAVs (Sect. 9). All results are further discussed in Sect. 10. low resolution [128 px × 96 px, as seen on a Lisa-S Lady- Concluding statements and future challenges are laid out in bird (McGuire et al. 2016)], is prone to either false positives Sect. 11. or false negatives. Other disadvantages of using vision are: dependence on lighting conditions, the need for a front-facing camera, limited field-of-view, and high processing require- ments (Alvarez et al. 2016). 2 Related work and research context Roberts et al. (2012) proposed using Infra-Red (IR) sensors. If arranged in an array, this enables an accurate mea- MAVs need to be as efficient as possible so as to decrease sure of relative bearing between two MAVs. Unfortunately, because IR is uni-directional, several sensors are needed to mass and maximize flight time. This means that they are often limited in sensing, computational power, and pay- each face in a specific direction. This is not easily portable load capabilities (Remes et al. 2014; Mulgaonkar et al. to smaller MAVs. 2015). Inter-MAV collision avoidance is important for mis- Alternatively, recent work by Basiri (2015) uses on-board sion success but it must not exhaust the already limited sound-based localization. A microphone array and a chirp resources, which should remain free to pursue the real mis- generator are mounted on-board of the MAVs, and the dif- sion. Arguably, the simplest method to avoid collisions is to ference between arrival times of the chirp at the different have the MAVs fly at different heights. However, experiments microphones is used to estimate the relative bearing (Basiri by Powers et al. (2013) have shown that MAV multi-rotors et al. 2014, 2016). This method requires dedicated hardware, which for smaller MAVs can account for an increase in mass flying over each other experience and/or cause considerable aerodynamic disturbances. Furthermore, height sensor (e.g., of even 10–20% (Basiri et al. 2016; Remes et al. 2014). To truly minimize the footprint, we focused on a compo- sonar) readings could be disturbed. Based on this limitation, we conclude that lateral evasive maneuvers are needed, and nent that is mounted by necessity on all MAVs: a wireless these require relative location estimates between MAVs. transceiver. This is typically used for communication with 123 Autonomous Robots a ground station (Lehnert and Corke 2013; McGuire et al. 2016), but it may also be used for communication between the MAVs. The signal strength of a wireless communication decreases with distance from the antenna, and can be used as a measure for range between MAVs. Signal strength ranging has been used to obtain relative localization between mod- ules using Multi-Dimensional Scaling (MDS) (Li et al. 2007). Unfortunately, these methods need more than two agents to function, whereas we are equally interested in avoiding a sim- Fig. 1 Top view of the relative localization framework (x and y are B B ple collision between two MAVs. In previous work by our the planar axis of F ,while z is positive down) B B group at the Micro Air Vehicle Laboratory, we first exploited signal strength on-board of real MAVs for collision avoidance others. This section details the design and implementation of (Szabo 2015). However, range-only measurements, coupled the relative localization scheme and presents some prelimi- with significant noise and disturbances, were found insuf- nary localization results that were obtained in early stages of ficient to guarantee safe flight of two or more MAVs in a the research. confined area despite using a complex evolved avoidance behavior. Lijina and Nippun Kumaar (2016) recently also 3.1 Framework definition for relative localization explored wireless-range avoidance on WeBot robots (in sim- ulation only), but range measurements were aided by an array Consider two MAVs R and R with body-fixed frames F of proximity sensors. i j B and F , respectively. We define the relative pose of R with Transceivers can be exploited for both ranging and data B j respect to R as the set P ={ρ ,β , z ,ψ }, where ρ exchange. Based on this, we developed a fusion filter to esti- i ji ji ji ji ji ji represents the range between the origins of F and F , mate relative location using range and the communicated B B i j β is the horizontal planar bearing of the origin of F with states between the MAVs. To the best of our knowledge, the ji B respect to F , z is the height of R with respect to R and only instance of on-board relative localization using a wire- B ji j i ψ is the yaw of F with respect to F . See Fig. 1 for an less transceiver was recently brought forward by Guo et al. ji j i illustration. Note that ρ and β are related to their Cartesian (2017) with Ultra Wide-Band (UWB) technology. However, ji ji counterparts via: they make use of one of the MAVs as a beacon and their method relies on highly accurate distance measurements. 2 2 2 Instead, we propose a method that complements possibly ρ = x + y + z , (1) ji ji ji ji noisy distance measurements by communicating on-board β = atan2(y , x ). (2) ji ji ji states between moving MAVs. We then show how it can be used for indoor collision avoidance. We extensively vali- x , y , and z are the Cartesian coordinates of the origin ji ji ji date this on real platforms as light as 50 g that communicate of R in F . j B between each other using Bluetooth, which is highly prone to noise and disturbances. 3.2 Signal strength as a range measurement Let S be the RSSI measurement in dB. It is correlated with ji 3 Communication-based relative localization ρ by a function L(ρ ). We define this function based on ji ji the Log-Distance (LD) model (Seybold 2005): Relative localization is achieved via wireless communication between the MAVs. The MAVs communicate the following S = L(ρ ) = P − 10 ∗ γ ∗ log (ρ ). (3) ji ji n l ji states to each other: planar velocity in the body frame, ori- entation with respect to North, and height from the ground. P is the RSSI at a nominal distance of 1 m. γ is the space- n l When communicating, the MAVs can also measure the sig- loss parameter, which dictates how much the signal strength nal strength; this acts as a measure of distance. For Bluetooth decays with distance (for free-space: γ = 2.0). The LD Low Energy (BLE), the technology chosen in our imple- model is assumed subject to Gaussian noise (Sveck ˇ o et al. mentation, signal strength measurements are referred to as 2015). Received Signal Strength Indication (RSSI). Each MAV fuses the received states, the RSSI, and its own on-board Experimentally, it has been found that office buildings can feature states to estimate the relative position of another MAV. When 2 ≤ γ ≤ 6 (Kushki et al. 2008). Performing a sensitivity analysis of the multiple MAVs are present, each MAV can run multiple par- LD model shows that an accurate identification of γ has a low impact allel instances of the fusion filter so as to keep track of all on the distance estimate at small distances. 123 Autonomous Robots (a) (b) (c) Fig. 2 Results of RSSI measurements during an experiment whereby a b error about LD model with respect to relative bearing fitted with a Ladybird MAV was carried in circles around a fixed Bluetooth antenna. second order Fourier series, c noise distribution about the LD model a RSSI measurements with respect to distance and fitted LD model, without and with lobe effects In preliminary tests, we analyzed the LD model with a a pressure sensor (Beard 2007; Sabatini and Genovese Ladybird MAV (Remes et al. 2014) connected via Bluetooth 2013; Shilov 2014), sonar, or a downward-facing camera to a fixed W1049B omni-directional antenna (Pulse 2008). (Kendoul et al. 2009a, b). Two MAVs R and R can i j The MAV was carried in concentric circles at different dis- share their altitude data, such that: z = z − z . ji j i tances around the antenna whilst RSSI was being recorded – ψ (relative orientation). It is assumed that all MAVs ji with the antenna. The orientation of the MAV with respect to acknowledge a common planar axis [e.g., magnetic North North was kept constant, thus varying the relative bearing to (No et al. 2015; Afzal et al. 2011)]. Through communi- the antenna. Ground-Truth (GT) data was recorded with an cation, the MAVs exchange their orientation data. Optitrack Motion Capture System (MCS). The results from a representative data sample are shown in Fig. 2, to which Relative bearing is the only unknown variable. It becomes the LD model was fitted using a non-linear least squares esti- observable when fusing the three measurements above with matorasinFig. 2a. Among a set of similar experiments, velocity measurements (Martinelli and Siegwart 2005;Mar- the Standard Deviation (SD) of the error about the fitted LD tinelli et al. 2005). We chose to perform sensor fusion with model was found to be between 3 and 6 dB. This is in line a discrete-time Extended Kalman Filter (EKF) due to its effi- with literature (Szabo 2015; Nguyen and Luo 2013). cient processing and memory requirements (De Silva et al. We also observed a change of the error with the rela- 2014). The filter uses Cartesian coordinates so that it can tive bearing. This is shown in Fig. 2b, and accounts for the directly take the difference between velocities in each axis. skew in error distributions, see Fig. 2c. The disturbances that The state transition model from time-step k to k + 1was can this are uneven directional propagation lobes, interfer- defined as in Eq. (4). ence by the reflection of the signal in the environment, the ⎡ ⎤ ⎡ ⎤ presence of other signals in the 2.4 GHz spectrum, or other p p + p ˙ − p ˙ Δt ji ji jRi i ⎢ ⎥ ⎢ ⎥ objects that obstruct the signal (Seybold 2005;Sveck ˇ o et al. p ˙ p ˙ i i ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ 2015; Szabo 2015; Kushki et al. 2008; Caron et al. 2008). p ˙ p ˙ jRi jRi ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ Such disturbances could be dependent on the environment ψ = ψ + v (4) j j k ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ or on the relative bearing between antennas, both of which ψ ψ i i ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ ⎣ ⎦ are unknown during an exploration task. For this reason, the z z j j LD model was not expanded to include this dependency on z z i i k+1 k bearing. p =[ x y ] holds Cartesian equivalents of relative ji ji ji 3.3 Localization via fusion of range and on-board bearing and range. p ˙ =[˙x y ˙ ] is a vector of the velocity i i states of R in F (see Fig. 1). p ˙ is p ˙ rotated from F to F . i B B B i jRi j j i Δt is a discrete time-step between updates, equal to the time Achieving a relative pose estimate requires measuring or between k and k + 1. v represents the noise in the process inferring all four variables in P . We can directly measure at time-step k. This model assumes that all current velocities ji or observe the following three: An intuitive explanation of the observability is as follows: if robot R is moving towards North with 1 m/s and its distance to R (which, i j – ρ (range), available via RSSI as in Sect. 3.2. ji in this example, remains stationary) increases by 1 m each second, then – z (relative height). Each MAV is expected to measure ji R could infer that R is to its North. Similarly, R would know that j i i its height above the ground. This could be done with R is to its South. This logic can be extended for all directions. 123 Autonomous Robots and orientations remain constant between time-steps. The convergence and helps discard the high noise and disturbance observation model for the EKF is given by Eq. (5). in the RSSI measurements. σ , σ , and σ were then Q Q Q v ψ z tuned higher (to 0.5) to enhance the difference, while stay- ⎡ ⎤ ⎡ ⎤ S L(ρ ) ing within the order of magnitude of the expected standard ji ji ⎢ ⎥ ⎢ ⎥ p ˙ p ˙ deviations of the measurements. i i ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ p ˙ R (ψ ) ∗ p ˙ This filter is limited by flip and rotation ambiguity as 2D j ji jRi ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ψ = ψ + w (5) defined by Cornejo and Nagpal (2015). When the motion of j j k ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ψ ψ R perfectly matches the motion of R , range-only measure- i i j i ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ ⎣ ⎦ z z ments remain constant and are not informative for bearing j j z z estimation. Unless the MAVs are flying in formation, the i i k k probability of this event will be low (Cornejo and Nagpal R (·) is a 2D rotation matrix that uses the relative heading 2D 2015). The same ambiguity takes place when both R and ψ to rotate the state estimate p ˙ from F to F . w ji B B k R are static. Motion by at least one MAV is required, as jRi i j j represents the noise in the measurements at time-step k.Note the filter operates by taking the difference in velocity. The that ρ is expanded as per Eq. (1) so as to observe x and ji ji performance of the filter thus increases as the average dif- y . The EKF cannot be initialized with a correct relative ference in velocity between the MAVs increases (and/or the ji location estimate, since this is not known; it must converge accompanying measurement noise decreases). towards the correct value during flight. Appropriate tuning of the EKF noise covariance matrices is key to achieving this. 3.4 Implementation details In the EKF, the measurement noise matrix R is a diagonal matrix with the form shown in Eq. (6). We used BLE to enable communication between the MAVs. ⎡ ⎤ 2 The data is sent and received by means of advertising messages scheduled using a Self-Organized Time Divi- ⎢ ⎥ σ ∗ I 4×4 ⎢ ⎥ R = (6) 2 sion Multiple Access (STDMA) algorithm, as described by ⎣ ⎦ σ ∗ I 2×2 Gaugel et al. (2013). This enables ad-hoc communication and σ ∗ I 2×2 circumvents the Master-Slave paradigm otherwise enforced by the BLE standard (Townsend et al. 2014), as each antenna σ is the assumed SD of S . σ is the assumed SD of p ˙ and m ji v alternates between advertising and listening. The messag- p ˙ . σ is the assumed SD of the magnetic orientation mea- ing rate is tuned to 5 Hz, which is a compromise between surements. σ is the assumed SD of the height measurements. the amount of STDMA communication slots (8 slots) and I is a n×n identity matrix. Based on our preliminary RSSI n×n an acceptable communication rate. 5 Hz keeps the conges- noise analysis, σ is tuned to 5 dB. Throughout this paper, tion low. Nevertheless, the messaging rate can be affected all other SDs were tuned to 0.2, unless otherwise stated. This by differences in clock rates and possible packet losses. Fig- was based on the measurement noise, either simulated or ure 3 shows the interval between received messages rate over expected from the sensors. approximately 3 min of recording from the point of view of a The process noise matrix Q is the diagonal matrix pre- single antenna in a group of two or three participating anten- sented in Eq. (7). nas. Approximately 80% of messages are received and parsed ⎡ ⎤ within 0.25 s and 95% within 0.45 s. A slight increase in σ ∗ I 2×2 ⎢ 2 ⎥ packet loss was observed when increasing the number of σ ∗ I 4×4 ⎢ ⎥ Q = ⎢ ⎥ antennas to three, with 128 missed messages as opposed to σ ∗ I ⎣ ⎦ 2×2 σ ∗ I 2×2 (7) σ is the SD of the process noise on the relative position update. σ , σ , and σ are SDs for the expected updates Q Q Q v ψ z in velocity, orientation, and height, respectively. By tuning Q we can define the validity of the process equations (Malyavej et al. 2013). In this paper, unless otherwise stated: σ = 0.1, while σ = σ = σ = 0.5. We tuned σ to 0.1soas Q Q Q Q v ψ z p (a) (b) to have a relatively low process noise on the relative position update. This forces the filter to rely less on the (noisy) range Fig. 3 Messaging rate over a test flight. a Message intervals, b distri- measurements and more on other data, which encourages bution 123 Autonomous Robots 120 when two antennas were used. This corresponds to an is because, at very small distances, a small error in x or ji increase in packet loss from 13.4 to 14.2%. y can translate into a large error in β . It can reach ± π if ji ji x or y estimates are both of the wrong sign, as it briefly ji ji happens at around 55 s. 3.5 Preliminary relative localization tests We performed preliminary localization tests with a Lady- 4 Collision avoidance behavior bird MAV flying around a fixed Bluetooth W1049B antenna. The objective was to determine how well the antenna could The avoidance algorithm is based on the Collision Cone (CC) localize the MAV. An Optitrack MCS was used to guide the framework (Fiorini and Shiller 1998; Wilkie et al. 2009). A MAV in circular flights and record its GT velocity, orienta- collision cone is a set of all velocities of an agent that are tion, and height. The antenna measured the RSSI to the MAV. expected to lead to a collision with an obstacle at a given The recorded GT data was altered with Gaussian noise with point in time. Its name derives from the fact that it is geo- σ = 0.2m/s, σ = 0.2 m, and σ = 0.2 rad, and then used metrically cone-shaped. In our work, we scale the collision v z ψ as measurements for the EKF. In the LD model of the EKF: cones according to the expected relative localization errors P =− 63 dB and γ = 2.0. The EKF was initialized with a and implement a clockwise search to find escape directions n l null guess position of x = y = 1 m. In these preliminary not covered by cones. Using this framework bears these main ji ji tests, the localization filter was applied off-board. advantages: (a) the MAVs are not encouraged to vary their Estimates for x and y are shown in Fig. 4a, b, the EKF speed (slow down), as motion is beneficial to the perfor- ji ji converges towards GT in the first few seconds, after which mance of the relative localization filter (see Sect. 3.3), and it tracks successfully. The small oscillations in the GT are also select a predictable escape direction. This is different to induced by the fact that the MAV did not travel continuously, Velocity Obstacle (VO) approaches (Wilkie et al. 2009); (b) but via way-point navigation. Figure 4c shows the estimated there can be an explicit relationship between the size of the range, where we can observe a significant improvement in cone and the expected localization error; (c) distance, which error with respect to an inverted LD model. Note that the has a low estimation accuracy, is not used to make decisions. range error increases with distance, this is due to the log- This differentiates it from distance-based methods such as arithmic nature of RSSI propagation. Figure 4dshows the repulsion forces (Virágh et al. 2016). This section details our bearing error, which is small throughout most of the flight. implementation of collision cones and how they are used to A noticeable exception is a spike about the 55 s mark. This determine a collision-free trajectory. (a) (b) (c) (d) Fig. 4 Preliminary localization trial based on circular flights of a Lady- b Ground-truth versus estimated location of the MAV along the y bird MAV around a fixed antenna (with artificial noise added to the axis of the antenna. c Comparison of EKF estimated range com- velocity, height, and orientation measurements). a Ground-truth ver- pared to ground-truth and estimate from inverting the LD model. sus estimated location of the MAV along the x axis of the antenna. d Error in β over time B ji 123 Autonomous Robots m−1 CC = CC (11) i ji j =1 If, during flight, p ˙ ∈ CC , then a clockwise search about the z axis (starting with the current desired velocity) is used to determine the desired escape velocity. If no solu- tion is found, then the search is repeated for a higher escape speed. A clockwise search encourages a preference for right- sided maneuvers with respect to the current flight direction. This differentiates it from the VO avoidance method, which selects a flight direction that minimizes the required change Fig. 5 Depiction of CC that R holds with respect to the estimated ji i in velocity. Although effective, when an agent opts for the location of R minimum change in velocity without considering that the other might also change its motion, this may lead to an 4.1 Collision cones and avoidance strategy issue known as “reciprocal dances”. These happen when two entities heading towards each other repeatedly select the Take two MAVs R and R . The collision cone CC , same escape direction. The situation is analogous to when i j ji depicted in Fig. 5, would include all velocities of R which two people try to avoid each other in a corridor and both could lead to a collision with R . It is constructed in three select the same direction, leading to a left–right dance by steps. each person. In other literature, solutions to VO’s recipro- cal dances rely on the reciprocity assumption, meaning that each agent assumes that the other agent will also take a pre- 1. A cone CC is defined as in Eq. (8). α is an arbitrary ji defined evasive action (Snape et al. 2009, 2011;Van Den angle. x and y are points on x and y , respectively. B B i i Berg et al. 2011). In our case, however, due to the poten- The cone is characterized by an expansion angle α , CC ji tial for large relative localization errors, MAVs cannot safely subject to 0 <α <π. CC ji assume that the others will participate in a suitable and recip- rocal escape maneuver. Enforcing right sided maneuvers CC ji is a solution to limit oscillations without assuming reci- |α | CC ji procity. It should be noted, however, that oscillations may = (x , y) ∈ R ; α ∈ R;|α|≤ : tan(α)x = y still occur when the MAVs have to coordinate between mul- (8) tiple obstacles, such as a wall and another MAV, or multiple MAVs. 2. CC is rotated so as to be centered around the estimated ji bearing to the obstacle R as in Eq. (9), where: β is the j ji 4.2 Tuning the expansion angle of the collision cone estimated β from the EKF, ← is an update operator, ji and R(·) is a rotation operator for the set. The expansion angle of a collision cone is dependent on the distance between the MAVs (the MAV radii becomes more ¯ significant as distance decreases) and the relative estimation CC ← R(β ) ∗ CC (9) ji ji ji errors (Conroy et al. 2014). Based on this knowledge, we formulated Eq. (12) to calculate the expansion angle, 3. The cone is translated by the estimated velocity of R expressed in F , as per Eq. (10). This accounts for the 2r +¯ ρ + ε ji α −1 fact that the obstacle is moving. p ˙ is the estimated p ˙ α = 2 ∗ tan , (12) jRi jRi CC ji κ ∗¯ ρ α ji from the EKF. The operator ⊕ denotes the translation of a set by a vector. where r is the radius of a MAV (modeled as a circle); ρ¯ is the ji estimated range between R and R ; ε is an additional mar- i j α CC ← CC ⊕ p ˙ (10) ji ji jRi gin, the properties of which are discussed in Sect. 4.3; κ is a In a team of m MAVs, each member R holds m − 1 Note that, equivalently, the search could be anticlockwise, as long as collision cones that it can superimpose into a single set CC . this is equal for all agents. 123 Autonomous Robots Fig. 6 Effect of κ on α (r = 0.1m, ε = 0.5) Fig. 7 Effect of ε on α (r = 0.1m, κ = 1) α CC α CC α asymptote 5 Testing methodology coefficient describing the quality of the estimate. The expan- sion angle has a lower bound α which is dependent CC asymptote An exploration task was developed where multiple MAVs fly on κ : in a room at the same altitude and attempt to pass through the center. This is designed to provoke collisions. The sample task was used to test the performance of the relative localiza- −1 α = lim α = 2 ∗ tan . (13) CC CC asymptote ji tion and collision avoidance, separately and combined. This ρ¯ →∞ ji α section describes the task in more detail and outlines how it will be used for assessment. The impact of κ may be appreciated in Fig. 6. In this work, unless otherwise stated, we use κ = 1, so α = α CC asymptote 5.1 Description of arbitrary task for performance . This generally encompasses the expected bearing errors 2 testing during flight based on our preliminary results. Consider a team of m homogeneous MAVs. Each MAV R can control its velocity. Let p ˙ be the desired velocity for cmd,k 4.3 Preserving behavior in rooms of different size R expressed in its body-frame F at a given time-step k. i B Let d be the distance between R and the arena border wall i The expansion angle of the collision cone widens towards π that is closest to it, with d being a safety distance to the safe as the distance between two MAVs decreases. This implies arena’s borders. Note that each robot R features m −1EKF that in smaller rooms the collision cones would always instances to keep track of the other members and uses their feature wide expansion angles, leading to most of the envi- outputs to determine its collision cone set CC ,see Eq.(11). ronment becoming out of bounds. This restriction in freedom At each time-step k, the EKF outputs are updated and CC of movement creates oscillations in MAV trajectories. To is re-calculated. p ˙ is then chosen as follows: p ˙ = i i cmd,k cmd,k limit the issue, we propose using ε as a tuning parameter. p ˙ unless conditions M1 and M2 take place. cmd,k−1 The effect of varying ε is shown in Fig. 7;as ε decreases, α α the decay of the expansion angle with distance increases. A M1: d < d and d < 0. This means that R is wall safe wall i faster decay is suitable for smaller rooms so that motion is i i close to the arena border and approaching it. Then, less restricted. p ˙ is rotated towards the center of the arena as seen We devised a method to tune ε intuitively. Rearranging i cmd,k in Fig. 8. Eq. (12), ε is expressed by: M2: p ˙ ∈ CC . This means that the current velocity of R i i could lead to a collision with one or more team mem- CC eq bers. An escape velocity is sought according to the ε = κ ∗ ρ ∗ tan − 2r − ρ . (14) α α eq eq strategy outlined in Sect. 4. This translates tuning ε to tuning a pair {α ,ρ }, In all experiments performed in this paper, wall detection α CC eq eq where α is the desired angle of expansion at a distance is deemed outside of our scope and is therefore enforced CC eq ρ . Note that α >α , and ε ≥−(r + r ) if by using the global position of the agent within an arena eq CC CC α i j eq asymptote κ ≥ 1. In all our tests, ρ is set to half of the side length of (provided by a MCS). Condition M1 holds priority over α eq the room. α is kept at 1.7 rad. M2 to ensure that the MAVs remain within the arena. At CC eq 123 Autonomous Robots localization estimates and establish how the collision avoid- ance would fare under such circumstances. Assessment of the full system The parameter of interest is the mean flight time until collisions. An ideal system is one with which, systematically, collisions do not take place. Such a result may be dependent on how crowded the airspace is, so we tested different configurations. By modeling MAVs as circles, airspace density is calculated with: m ∗ πr Fig. 8 Depiction of condition M1. Robot R is too close to the border i D = (15) m,c of the arena and receives a command to go towards the center D denotes the density for configuration c with m MAVs, m,c all time-steps, unless otherwise commanded by the collision r is the radius of a MAV in configuration c, and s is the side c c avoidance algorithm, |p ˙ |=v , where v is a nominal nominal length of the squared arena at configuration c. cmd,k fixed speed magnitude. 5.2 Assessment strategy 6 Simulation experiments Simulations allow to assess the collision avoidance algorithm Experiments were performed in stages with increasing real- ism and autonomy: and the full system. We can assess the performance of the system for several airspace densities, noise scenarios, etc., and obtain statistical insights. 1. Simulation This enabled assessing system performance under different conditions. 6.1 Simulation environment set-up 2. External own-state measurements These tests used an external MCS to control the drones (but not for relative The simulation environment was developed using Robotics localization). This allowed to make the results indepen- Operating System (ROS) (Quigley et al. 2009), the Gazebo dent of the ability of the drones to fly autonomously. physics engine (Koenig and Howard 2004), and the hector- 3. On-board own-state measurements These tests rely on quadrotor model (Meyer et al. 2012). Multiple quad-rotor on-board sensors to control the drones. They are used to MAVs can be simulated simultaneously. A ROS module (or determine real-world performance. The external MCS is “node”) for each MAV simulates Bluetooth communication only used to simulate wall detection. This type of test and enforces the controller described in Sect. 5.1. A rendered is performed on AR.Drones and on miniaturized MAVs. screenshot of a simulation is shown in Fig. 9a. Note that for the miniaturized MAVs, the MCS was also The RSSI is simulated using the LD model (P =−63 dB, used to measure height from the ground. This was due to γ = 2.0) with added Gaussian noise (SD of 5 dB) and the lack of a suitable height sensor on the MAVs. l horizontal antenna lobes, unless otherwise stated. The lobes were modeled using a third order Fourier series with unitary The results of all tests are discussed in the next four chapters. weights, see Fig. 9b. The other measurements were altered During the tests, the three items below were assessed. Assessment of relative localization The performance of the relative localization can be assessed by comparing the estimated relative locations to ground-truth data obtained cumulatively during all real-world experiments. Assessment of collision avoidance This is partially depen- (a) (b) dent on the performance of the relative localization, yet can be assessed independently by identifying failure cases and Fig. 9 The simulation environment and the simulated lobes. a Screen- observing general behavior properties. In simulation, how- shot of a simulation with 3 MAVs. b Simulated RSSI horizontal lobes applied as a function of relative bearing between MAVs ever, it is also possible to artificially improve the relative 123 Autonomous Robots 2MAVs 3MAVs D =0.6% D =1.6% 2,8 2,12 D =0.8% D =2.4% 3,8 3,12 5 8 12 D =0.1% D =0.9% D =2.5% 2,4 2,7 2,11 D =0.1% D =1.3% D =3.7% 3,4 3,7 3,11 4 4 7 11 D =0.2% D =1.6% D =4.4% 2,3 2,6 2,10 D =0.3% D =2.4% D =6.5% 3,3 3,6 3,10 3 3 6 10 123456789 10 11 12 D =0.4% D =3.5% D =9.8% 2,2 2,5 2,9 D =0.6% D =5.3% D =14.7% 3,2 3,5 3,9 Configuration 2 2 5 9 Fig. 11 Mean flight time to collision for all simulated configurations. D =1.6% 2,1 D =2.4% Average results without collision avoidance, not shown in this figure, 3,1 1 1 range between 3.9 and 14.3 s 0 0.1 0.2 0.3 0.4 0.5 0.6 MAV diameter [m] Fig. 10 The twelve configurations tested in simulation with configura- tion numbers shown in the white circles. D is the airspace density m,c for configuration c with m MAVs from Eq. (15) with the same standard deviations as in the preliminary local- ization tests of Sect. 3.5. Furthermore: v = 0.5m/s, nominal (a) (b) d = 0.25 m, and ψ = 0 rad for all MAVs. The MAVs safe begin at different corners of the arena. The EKF is initialized Fig. 12 Flight parameters with respect to airspace density based on such that the initial position guess is towards their initial flight simulation results. a Mean flight time with respect to density. b Mean area coverage with respect to density direction (i.e. the center of the arena). We investigated twelve configurations of arena size and MAV diameter for teams of two MAVs and three MAVs. density improves the probability of success, but this is found The configurations will be referred to by the encircled num- to not strictly be the case. Figure 12a shows the flight time bers in Fig. 10. Each configuration was simulated 100 times. to collision as a function of the airspace density. A portion Each simulation was automatically interrupted if a collision of configurations show low results despite the low airspace occurred or after 500 s of collision-free flight. density, and are outliers in the negative linear trend. These correspond to configurations 1, 2, 5, and 9, which feature 6.2 Results smaller arena sizes. The conclusion is that room size affects performance even when airspace density remains constant. Mean flight time for each configuration is shown in Fig. 11. This is a remaining limitation of the current status of the sys- Flights with three MAVs consistently show a lower perfor- tem when operating in smaller rooms. Its causes are discussed mance than with two MAVs. The performance drop is a in Sect. 10.2. result of the team dynamics at play, namely: (1) increased airspace density, and (2) decreased freedom of movement Freedom of movement Figure 12b shows the impact of due to superposition of collision cones. These two factors airspace density on area coverage for all flights with two are analyzed in the remainder of this section. MAVs and three MAVs. Area coverage was measured as fol- lows. The total area is divided in sections of 0.20 m ×0.20 m. Airspace density When the MAV diameter remains constant, A section is marked “covered” when one of the MAVs crosses but the arena size increases, an increase in mean flight time is it. Area coverage is the percentage of covered sections during observed. This is seen by comparing the configuration quar- a trial. Here, two patterns arise. tets 1-2-3-4, 5-6-7-8, and 9-10-11-12. Furthermore, when the arena side-length remains constant and the MAV diame- ter increases, a decrease in mean flight time is observed. This 1. A higher airspace density leads to a lower overall cover- is seen by comparing within the configuration triads 4-7-11, age. This is due to: (a) lower flight times, providing less 3-6-10, and 2-5-9, and the pair 8-12. This implies that a lower overall time to complete the mission, and (b) decreased Arena side length [m] Mean Flight time [s] Autonomous Robots 5dB, no lobes 3dB Orig. 5dB, no lobes 3dB Orig. 500 500 300 300 200 200 100 100 12569 10 12569 10 Configuration Configuration Fig. 13 Heat maps of normalized area coverage over all simulations (black crosses indicate collisions). a Two MAVs. b Three MAVs (a) (b) Fig. 14 Improvements in system performance against nominal results (“Orig.”) when noise is reduced from 5 to 3 dB, or when lobes are freedom of movement due to larger portions of the arena removed. a Two MAVs. b Three MAVs being covered by collision cones. 2. Three MAVs systematically achieve lower area cover- age than only two MAVs in the same configuration. This is explained by analyzing the flight trajectories in more detail, from which an emergent circular behavior is dis- cerned. See Fig. 13, which shows the normalized heat map over all simulations for two (Fig. 13a) and three (Fig. 13b) MAVs. When more than one MAV to avoid is present, the superposition of multiple collision cones Fig. 15 A flight with 3 AR.Drones, encircled in white pushes the MAVs towards the edges. 7 Experiments featuring external own-state measurements 6.3 Impact of RSSI noise on performance We implemented our system on AR.Drones. In the experi- In simulation, we also tested all configuration with a clean ments in this section, we used Optitrack to accurately inform case, where each MAV perfectly knows the position of all MAVs of their velocity, orientation, and height. This isolates others. Our tests lasted 500 s (the maximum time) with no the impact of using real RSSI measurements and Bluetooth collisions. This shows that, with perfect relative localization, communication on the relative localization system during the collision avoidance should give perfect results. Two fur- flight. It also shows the system performance in case of high ther case studies were explored. In the first case, the simulated quality ego-motion estimates. RSSI noise is reduced from 5 to 3 dB, but lobes are still simu- lated. In the second case, RSSI noise is kept at 5 dB but sensor 7.1 Experimental set-up lobes are removed. All other parameters remain the same as in the primary simulations. The configurations tested are those The experiments were performed using AR.Drones 2.0 (Par- with the lowest performance: 1, 2, 5, 6, 9, 10. The results are rot 2012). A BLED112 (Silicon Labs 2016) Bluetooth Smart shown in Fig. 14, and show that removing the antenna lobes USB Dongle equipped them with Bluetooth. The controller provides the largest improvement in performance. A lower was developed using Paparazzi (Drouin and Muller 2007) noise also improves results, yet the impact is generally lower and was running entirely on-board. The experiments in this than antenna lobes. The lower error in relative position esti- section relied on Optitrack to provide each MAV with data mates translates into a more successful collision avoidance of its own velocity, orientation, and height via a Wi-Fi link. system. For real-world systems, this shows that performance Each AR.Drone then communicated this data via a Blue- can be improved by operating in cleaner environments, using tooth broadcast to the other ones, using the implementation better antennas, or by better filtering of signal strength mea- described in Sect. 3.4. The Wi-Fi link was also used for take- surements. off/land commands and for data logging. Figure 15 shows a picture of a flight with three AR.Drones. All MAVs flew at 1.5 m from the ground, with a nom- Interestingly, emergent circular behaviors of this kind have also been inal speed v = 0.5 m/s and safety wall distance nominal observed in nature over a vast amount of organisms, ranging from bac- teria to humans (Delcourt et al. 2016). d = 0.5 m. The enforced arena size in all experiments safe Mean Flight Time [s] Mean Flight Time [s] Autonomous Robots was 4 m × 4 m, making these tests analogous to configu- 0.70 rad. Figure 16f shows the bearing error distribution. We ration 11 from the simulation runs (AR.Drones are slightly can see the slightly larger spread of the bearing error. There larger in diameter than 0.5 m). The LD model in the EKF is also an apparent positive bias in the error. This bias could filter was tuned with P =− 68 dB and γ = 2.0. P was have been caused by the initial guess of the EKF, which was n l n obtained via a brief hand-held measurement, γ was based unable to converge back to a zero mean. On occasion, we on the free-space assumption. The Optitrack measurements observe that the bearing error temporarily diverges towards inputted into the EKFs were altered with Gaussian noises ± π. This error does not necessarily lead to collisions due to σ = 0.2 m/s and σ = 0.2 rad. the non-reciprocal nature of the avoidance behavior. Never- v ψ theless, it introduces a temporary uncertainty in the system. The error is more frequent with three AR.Drones. We also 7.2 Results observe that the convergence rate for bearing estimates over flights with three AR.Drones appears worse than with two Four flights were performed with two AR.Drones for a cumu- AR.Drones. This may be seen in Fig. 17, which zooms into lative time of 25.3 min. Only one collision took place, which the first 30 s of Fig. 16d, e. Convergence times for flights occurred in the second flight after 5.6 min. Six flights were with three MAVs reach up to 30 s prior to settling (Fig. 17b). performed with three AR.Drones for a cumulative time of By comparison, the convergence time for flights with two 15.3 min. Five flights ended in collisions. On average, this AR.Drones only (Fig. 17a) is within 10 s. happened after 160 s of flight. An analysis of the noise in RSSI showed that flights with All estimated range and bearing errors are presented in three MAVs experienced a marginally larger noise. This Fig. 16. The estimated range features a Root Mean Squared can be evaluated in Fig. 18a. A two-sample Kolmogorov- Error(RMSE)of0.86 m with two MAVs and 1.14 m with Smirnov test rejected that the two distributions could be the three MAVs. Figure 16c shows the error distribution, indi- −22 same (with a p value of 6.9 ×10 ). We also ran a bootstrap cating the lower performance with three MAVs. For bearing test with 10,000 repetitions, testing for the difference in sam- estimates, the Root Mean Squared Error (RMSE) for flights ple mean and the ratio of variances as reference statistics. In with two MAVs is 0.57 rad and with three MAVs it rises to (a) (b) (c) (d) (e) (f) Fig. 16 Overview of all relative range a, b, c and relative bearing d, e, distribution for all flights. d Bearing estimate error with two AR.Drones f estimation errors for flights with external own-state measurements. a (RMSE = 0.57 rad). e Bearing estimate error with three AR.Drones Range estimate error with two AR.Drones (RMSE = 0.86 m). b Range (RMSE = 0.70 rad). f Bearing error distribution for all flights estimate error with three AR.Drones (RMSE = 1.14 m). c Range error 123 Autonomous Robots π π also closer on more occasions than during flights with two MAVs. This can be seen in Fig. 18b. π/2 π/2 0 0 8 Experiments featuring on-board own-state −π/2 −π/2 measurements −π −π 0 5 10 15 20 25 30 0 5 10 15 20 25 30 The experiments from the controlled flights were repeated Time [s] Time [s] but with on-board state estimation by the MAVs. Therefore, (a) (b) on-board MAV sensors measured velocity, orientation, and height. This shows real-world relative localization perfor- Fig. 17 Comparison of bearing estimate errors in the first 30 s of flight during flights with external state measurements. a With two AR.Drones, mance for collision avoidance. b with three AR.Drones 8.1 Experimental set-up Velocity was estimated using the bottom facing camera and the EdgeFlow algorithm (McGuire et al. 2016). In the exper- iments described in this section, this provided velocity with a standard deviation between 0.10 and 0.35 m/s, as extracted by comparison with ground-truth measurements. The mag- netometer could not be used due to large electro-magnetic disturbances in the environment, so orientation was measured using gyroscope integration only (given an initial orientation (a) (b) towards North). Height from the ground was measured using sonar. Optitrack was only used to enforce condition M1 (wall Fig. 18 Distributions of RSSI error and distance measurements for all detection) with d = 0.5 m. This is because wall detection safe flights. a RSSI error distribution, b distribution of distances between is outside of the purpose of this research. To further stress-test MAVs based on ground-truth measurements the system, a further change was that the EKFs initial relative position assumption was x = y = 1mforany MAV R ji ji i both cases, the bootstrap test rejected the null hypothesis over with respect to any other R , as opposed to the center of the the 95% confidence interval, and declared the distributions arena. The AR.Drones communicated with a ground-station different. If we model the distributions as normal distribu- using a Wi-Fi link for logging and take-off/land control. tions, the standard deviation increases from 4.65 dB with twoMAVsto4.9 dB with three MAVs. Aside from this, we 8.2 Results also attribute the drop in relative localization performance (and the slower convergence) with three MAVs to the factors Four flights were performed with two AR.Drones for a cumu- below. lative flight time of 17.3 min. In this time, only two collisions took place (after 3.9 and 1.0 min in the first and last flight). – As also seen in the simulations from Sect. 6, flying with Another flight saw a near-collision in the early stages, but three MAVs pushes them further apart. This also hap- afterwards successfully continued until battery depletion. pened in the real-world experiments, as can be seen in Another four flights were conducted with three AR.Drones, Fig. 18b. At larger distances, RSSI is less informative as which lasted 8.3 min cumulatively. In this time, the MAVs a distance measurement due to its logarithmic decline. experienced three collisions (after 1.2, 1.6, and 2.3min of – With three MAVs, the MAVs move slower and with more flight). oscillations. This has a negative impact on the EKF’s per- The bearing estimation error is shown in Fig. 19. The error formance, which favors smooth trajectories with faster has increased with comparison to the previous results. With velocities. A more aggressive MAV controller could have two AR.Drones, the mean RMSE over the first three flights is lowered this effect. 0.85 rad. This is sufficient for a long collision-free flight time. – The bearing error appears to diverge towards ± π more In the last flight, however, the RMSE was 1.3 rad, possibly frequently with three MAVs. As already discussed in Sect. 3.5, this happens at smaller distances because a The differences arise from the fact that the noise is partially dependent small error in x or y can translate into a large bearing on what the MAV sees during a flight, which depends on its chosen flight error. When flying with three MAVs, the MAVs were path. Bearing Error [rad] Bearing Error [rad] Autonomous Robots (a) (b) (c) Fig. 19 Overview of relative bearing estimation errors for flights with two AR.Drones and three AR.Drones featuring on-board own-state estimation. a With two AR.Drones, b with three AR.Drones, c bearing error distribution for all flights due to a large disturbances in RSSI by the environment. This is held responsible for the early collision after 1.0 min. With three drones, the bearing RMSE over all flights is 1.0 rad. Fig- ure 19c shows the distribution. There is an apparent negative bias. We can note how this bias increases in magnitude over time when observing Fig. 19a, b. This is due to the accumulat- ing gyroscope bias during the flights. This could be corrected in future implementations by using a magnetometer. 9 Implementing the technology on miniature drones Fig. 20 Miniature drone used in the experiments To show that the proposed solution scales to smaller MAVs, we ported the technology to a pocket-sized MAV. A test- ready MAV and its components are shown in Fig. 20.The platform is as used by McGuire et al. (2017). latter came in light of low-batteries by one of the drones. As it lowered its height, the two MAVs also actually col- 9.1 Experimental set-up lided. The third flight saw a near collisions after ≈ 60 s and ≈ 90 s. Both took place in the corner when condition M1 The set-up is equivalent to the one for the AR.Drones in takes over the drones, and are thus regarded more as a failure Sect. 8, with a few minor differences. In the LD model, fol- of the behavior than the relative localization. This shows the lowing a short hand-held calibration, P =− 55 dB. Also, n importance of implementing a method that keeps taking into given the smaller size of the drones, the enforced flight arena account other drones while also avoiding the walls, which was reduced to 2 m ×2 m with d = 0.5 m. This scenario is safe was not implemented in our controller. similar to configuration 2 from Fig. 10. As for the AR.Drones It is noted that a slightly lower performance than previ- in Sect. 8, a bottom facing camera and a gyroscope mea- ous experiments was expected due to the smaller arena size, sured velocity and orientation, respectively. However, given an effect which was also observed in simulation and is dis- the lack of an accurate height sensor on these small drones, cussed further in Sect. 10.2. Nevertheless, we also note a the height was measured using Optitrack. Because of their decrease in accuracy for relative localization as RMSE per fragility, the two drones also flew at different heights (1.0 flight ranges from 0.8to1.37 rad. Inspecting the data in and 1.5 m) so as to limit damages in case of failure. more detail shows that this is the result of larger errors in both RSSI noise (standard deviation 5.4–6.5 dB with mean 9.2 Results error 2.1–4 dB) as well as lower quality of on-board velocity estimates (standard deviation of ≈ 0.8 m/s with mean error Three flights were performed with this set up lasting 2.8, of up to 0.2 m/s). The former is explained by the fact that the 3.7, and 3.1 min. The first flight saw no collision cases. The Bluetooth module was placed right next to the Wi-Fi mod- second flight saw near collisions at 1.35 and 3.7min.The ule, creating larger disturbances. The latter is explained by 123 Autonomous Robots the lower resolution of the camera and the fact that it is sub- 10.2 Performance of collision avoidance ject to larger vibrations (McGuire et al. 2016). Furthermore, as the MAVs were flying closer to each other in a smaller The aim is to achieve a solution where no collisions will occur arena, errors in relative x and y estimates are amplified when between the MAVs. In simulation, all twelve configurations translated into relative bearing estimates. have also been tested without active collision avoidance. The obtained mean flight times ranged between 3.9 and 14.3s,as opposed to the results from Fig. 11.A z-test with 95% confi- dence level (Dekking 2005) shows a statistically significant 10 Discussion improvement in flight time for all configurations when using our method. 10.1 Performance of relative localization Figure 12a showed that smaller rooms lead to poorer per- formance than larger rooms despite similar airspace density. In all AR.Drone tests, a loss in relative localization perfor- Reasons for this are: mance was measured when introducing a third MAV. The effects were longer convergence times as well as higher rela- – The ratio of arena size to v decreases in smaller nominal tive bearing/range errors. A decrease in performance was also rooms. observed when using on-board velocity estimates. This was – The communication rate is constant, which limits the due to a combination of over/under-estimation of velocity or decision rate of the collision avoidance controller. occasional spikes in the measurements. – In smaller rooms, M1 is called more frequently, in which The relative localization scheme was implemented with case collision cones are ignored according to the task in an EKF. This may be criticized for its reliance on a Gaussian this article. noise model. Robust (Kallapur et al. 2009) or adaptive (Sasi- adek and Wang 1999) variants of Kalman filters, or particle It was observed that collisions for flights with three MAVs filters (Sveck ˇ o et al. 2015), might be better suited. However, likely occur along the edges of the area. In the simulations of a change in filter could increase computational costs without configuration 11, which is the one tested with the AR.Drones, bringing a higher quality estimate. This is because there are 81% of the collided simulated flights with three MAVs ended a number of other limitations: within 0.5 m of the arena borders. By comparison, only 35% of collisions with two MAVs occurred within this space. This difference can also be appreciated visually in Fig. 13.An – The logarithmic decrease in RSSI makes it intrinsically example of a collision extracted from an AR.Drone flight is insufficient to measure changes in range at larger dis- recounted by the three events below (depicted in Fig. 21). tances. – RSSI disturbances in the environment cannot be fully 1. One MAV is at the corner and reluctant to make move- modeled unless the environment is known a-priori. ments towards the center, gathering an oscillatory behav- – The proposed process update equation makes the null ior. At time t = 180 s (Fig. 21a), we see this for the assumption that all velocities remain constant between bottom right AR.Drone (blue). Its slow speed causes the time-steps. Improvements may come from including red MAV to mistaken its estimate of the blue drone. more complex dynamic properties in the process equa- In normal conditions, collision avoidance could still be tion, such as acceleration and/or jerk. achieved by the blue MAV, but it cannot react as it is – As seen throughout our tests, improvements can come by trapped in the corner. improving the quality of on-board state estimates. 2. Another MAV turns towards the same side. In time t = 182 s (Fig. 21b), the central AR.Drone (red) avoids the Further investigations are encouraged to define a filter that black AR.Drone (on left) but in doing so goes to the right. lowers the expected error. 3. The second MAV also ends along the border and is reluc- We expect the main improvement to come from a change tant to make movements. At time t = 188 s (Fig. 21c), in communication hardware. In this work, we have achieved the two oscillate along the border until a collision occurs. promising results using Bluetooth, which was selected due to its prompt availability on several MAVs. The noise and dis- This scenario is less likely with two MAVs due to the larger turbances with Bluetooth ranging, however, are large. Other freedom of movement and the generally higher relative local- hardware, such as UWB, would offer a significant reduction ization accuracy. One method to limit this would be to reduce in noise, leading to better overall relative localization results. the angle of the collision cones for further away MAVs, Based on our simulations from Sect. 6.3, this should result increasing mobility. In the extreme, each MAV could only in improved collision avoidance. consider other MAVs within a close range. This could also 123 Autonomous Robots Fig. 21 Chronological depiction (left to right) of a collision case in a flight with 3 AR.Drones (large circles indicate the ground-truth position in the arena, the triangles are the collision cones that each AR.Drone holds). a Time = 180 s, b time = 182 s, c time = 188 s help to increase the scalability of the method, so that only tation has shown that it can work for small teams, but we a small amount of parallel filters need to run even for large cannot say whether it is the best solution as the size of the team sizes. Furthermore, it is also necessary to create an team grows. Furthermore, the introduction of an avoidance avoidance scheme that takes into account the wall and the strategy that makes a more informed decision near walls drones together. This shall be tackled in future work. or when multiple MAVs are present is needed. This could resolve the more complex collision scenarios, especially in smaller rooms. There is also on-going work to improve the miniaturized platforms to feature a front-facing camera, as 11 Conclusion and future work in (McGuire et al. 2017), and active wall-sensors, so as to achieve fully autonomous teams of MAVs capable of explor- We have shown that it is possible to use wireless commu- ing an unknown environment safely. nication as a relative localization sensor that can be used on-board of MAVs operating in a team. This leads to a large reduction in collisions without the need of a dedicated sensor. Videos With the solution proposed in this paper, teams of two and three AR.Drones could fly in a 4 m × 4 m area for minutes Videos of experiments are available at: https://www.youtube. without collisions, despite being prompted to fly towards the com/playlist?list=PL_KSX9GOn2P9f0qyWQNBMj7xpe1 center of the arena. This extreme test condition shows the HARSpc. high potential of our solution. The technology was also used with miniature drones, showing its portability. With respect to the scenario in mind (i.e. the exploration of indoor spaces Open Access This article is distributed under the terms of the Creative by MAV teams), this is an efficient method to limit collision Commons Attribution 4.0 International License (http://creativecomm ons.org/licenses/by/4.0/), which permits unrestricted use, distribution, risks in the event that MAVs end up flying in the same room. and reproduction in any medium, provided you give appropriate credit The combined relative localization/collision avoidance to the original author(s) and the source, provide a link to the Creative system as presented and tested in this paper will be further Commons license, and indicate if changes were made. improved in future work. Importantly, we will investigate UWB modules instead of Bluetooth modules. Using UWB is expected to considerably improve the distance measure- References ments used by the filter. The increase in accuracy could Afzal, M. H., Renaudin, V., & Lachapelle, G. (2011). Magnetic field enable more complex group behaviors, such as formation based heading estimation for pedestrian navigation environments. flight, and accommodate larger teams of MAVs. This can In 2011 international conference on indoor positioning and indoor extend the use of the system beyond the scope of this paper. navigation (IPIN) (pp. 1–10). IEEE. Larger teams intrinsically occupy larger areas, and UWB can Alvarez, H., Paz, L. M., Sturm, J., & Cremers, D. (2016). Collision avoidance for quadrotors with a monocular camera. In M. A. provide range measurements at larger distances without the Hsieh, O. Khatib, & V. Kumar (Eds.), Experimental Robotics: The degradation of Bluetooth RSSI. For true scalability to larger 14th International Symposium on Experimental Robotics (pp. 195– teams, there also needs to be a more detailed assessment 209). Cham: Springer International Publishing. https://doi.org/10. of the communication algorithm. Our STDMA implemen- 1007/978-3-319-23778-7_14. 123 Autonomous Robots Basiri, M. (2015). Audio-based positioning and target localization for Guo, K., Qiu, Z., Meng, W., Xie, L., & Teo, R. (2017). Ultra-wideband swarms of Micro Aerial Vehicles. Lausanne: EPFL. based cooperative relative localization algorithm and experiments Basiri, M., Schill, F., Floreano, D., & Lima, P.U. (2014). Audio-based for multiple unmanned aerial vehicles in GPS denied environ- localization for swarms of Micro Air Vehicles. In 2014 IEEE ments. International Journal of Micro Air Vehicles, 9(3), 169–186. international conference on robotics and automation (ICRA) (pp. https://doi.org/10.1177/1756829317695564. 4729–4734). IEEE. Ho, H., De Wagter, C., Remes, B., & de Croon, G. (2015). Optical-flow Basiri, M., Schill, F., Lima, P., & Floreano, D. (2016). On-board relative based self-supervised learning of obstacle appearance applied to bearing estimation for teams of drones using sound. IEEE Robotics MAV landing. arXiv preprint. arXiv:1509.01423. and Automation Letters, 1(2), 820–827. Kallapur, A., Petersen, I., & Anavatti, S. (2009). A discrete-time robust Beard, R. W. (2007). State estimation for Micro Air Vehicles. In J. S. extended kalman filter. In American control conference 2009. Chahl, L. C. Jain, & A. Mizutani (Eds.), Innovations in intelligent ACC’09 (pp. 3819–3823). IEEE. machines-1 (pp. 173–199). Berlin, Heidelberg: Springer. https:// Kendoul, F., Fantoni, I., & Nonami, K. (2009a). Optic flow-based vision doi.org/10.1007/978-3-540-72696-8_7. system for autonomous 3d localization and control of small aerial Brambilla, M., Ferrante, E., Birattari, M., & Dorigo, M. (2013). Swarm vehicles. Robotics and Autonomous Systems, 57(6), 591–602. robotics: A review from the swarm engineering perspective. Kendoul, F., Nonami, K., Fantoni, I., & Lozano, R. (2009b). An adaptive Swarm Intelligence, 7(1), 1–41. https://doi.org/10.1007/s11721- vision-based autopilot for mini flying machines guidance, naviga- 012-0075-2. tion and control. Autonomous Robots, 27(3), 165–188. Caron, C., Chamberland-Tremblay, D., Lapierre, C., Hadaya, P., Roche, Koenig, N., & Howard, A. (2004). Design and use paradigms for S., & Saada, M. (2008). Indoor positioning. Encyclopedia of gazebo, an open-source multi-robot simulator. In 2004 IEEE/RSJ GIS (pp. 553–559). Boston, MA: Springer, US. https://doi.org/ international conference on intelligent robots and systems, 2004. 10.1007/978-0-387-35973-1_626. Proceedings of (IROS 2004) (Vol. 3, pp. 2149–2154). IEEE. Choudhry, V., Singh, R., & Gehlot, A. (2017). RSSI-based indoor Kumar, V., & Michael, N. (2012). Opportunities and challenges with robot localization system using LabVIEW. In Proceeding of inter- autonomous micro aerial vehicles. The International Journal of national conference on intelligent communication, control and Robotics Research, 31(11), 1279–1291. devices (pp. 267–277). Singapore: Springer. https://doi.org/10. Kushki, A., Plataniotis, K. N., & Venetsanopoulos, A. N. (2008). Indoor 1007/978-981-10-1708-7_31. positioning with wireless local area networks (WLAN). Encyclo- Conroy, P., Bareiss, D., Beall, M., van den Berg, J. (2014). 3-D pedia of GIS (pp. 566–571). Boston, MA: Springer, US. https:// reciprocal collision avoidance on physical quadrotor helicopters doi.org/10.1007/978-0-387-35973-1_629. with on-board sensing for relative positioning. arXiv preprint Ledergerber, A., Hamer, M., & D’Andrea, R. (2015). A robot self- arXiv:1411.3794. localization system using one-way ultra-wideband communica- Cornejo, A., & Nagpal, R. (2015). Distributed range-based relative tion. In 2015 IEEE/RSJ international conference on intelligent localization of robot swarms. In H. L. Akin, N. M. Amato, V. robots and systems (IROS) (pp. 3131–3137). IEEE. Isler, & A. F. van der Stappen (Eds.), Algorithmic Foundations of Lehnert, C., & Corke, P. (2013). μAV—Design and implementation of Robotics XI: Selected Contributions of the Eleventh International an open source micro quadrotor. In J. Katupitiya, J. Guivant, & R. Workshop on the Algorithmic Foundations of Robotics (pp. 91– Eaton (Eds.), Australasian Conference on Robotics and Automa- 107). Cham: Springer International Publishing. https://doi.org/10. tion (ACRA2013) (pp. 1–8). University of New South Wales, 1007/978-3-319-16595-0_6. Syndney: Australian Robotics & Automation Association. https:// De Silva, O., Mann, G. K. I., & Gosine, R. G. (2014). Relative local- eprints.qut.edu.au/66625/. ization with symmetry preserving observers. In 2014 IEEE 27th Li, H., Almeida, L., Wang, Z., & Sun, Y. (2007). Relative posi- Canadian conference on electrical and computer engineering tions within small teams of mobile units. In Proceedings of the (CCECE) (pp. 1–6). IEEE. 3rd international conference on mobile Ad-hoc and sensor net- Dekking, F. M. (2005). A modern introduction to probability and statis- works. MSN’07 (pp. 657–671). Berlin: Springer. http://dl.acm.org/ tics: Understanding why and how. Berlin: Springer. citation.cfm?id=1781974.1782041. Delcourt, J., Bode, N. W. F., & Denol, M. (2016). Collective vortex Lijina, P., & Nippun Kumaar, A. A. (2016). Bluetooth RSSI based behaviors: Diversity, proximate, and ultimate causes of circular collision avoidance in multirobot environment. In 2016 interna- animal group movements. The Quarterly Review of Biology, 91(1), tional conference on advances in computing, communications and 1–24. https://doi.org/10.1086/685301. pMID: 27192777. informatics (ICACCI) (pp. 2168–2174). https://doi.org/10.1109/ Drouin, A., & Muller, M. (2007). Paparazzi—the free autopilot : ICACCI.2016.7732373. Build your own UAV. In CCC 2007, 24th Chaos communication Malyavej, V., Kumkeaw, W., & Aorpimai, M. (2013). Indoor robot congress, Berlin: Germany. https://hal-enac.archives-ouvertes.fr/ localization by RSSI/IMU sensor fusion. In 2013 10th interna- hal-00938858. Accessed Apr 2016. tional conference on electrical engineering/electronics, computer, Faigl, J., Krajník, T., Chudoba, J., Pˇreucil, ˇ L., & Saska, M. (2013). Low- telecommunications and information technology (ECTI-CON) (pp. cost embedded system for relative localization in robotic swarms. 1–6). IEEE. In 2013 IEEE international conference on robotics and automation Martinelli, A., & Siegwart, R. (2005). Observability analysis for mobile (ICRA) (pp. 993–998). IEEE. robot localization. In 2005 IEEE/RSJ international conference Fiorini, P., & Shiller, Z. (1998). Motion planning in dynamic envi- on intelligent robots and systems, (IROS 2005) (pp. 1471–1476). ronments using velocity obstacles. The International Journal of IEEE. Robotics Research, 17(7), 760–772. Martinelli, A., Pont, F., & Siegwart, R. (2005). Multi-robot localiza- Gaugel, T., Mittag, J., Hartenstein, H., Papanastasiou, S., & Ström, tion using relative observations. In Proceedings of the 2005 IEEE E. G. (2013). In-depth analysis and evaluation of self-organizing international conference on robotics and automation, 2005. ICRA TDMA. In 2013 IEEE vehicular networking conference (pp. 79– 2005 (pp. 2797–2802). IEEE. 86). https://doi.org/10.1109/VNC.2013.6737593. McGuire, K., de Croon, G., de Wagter, C., Remes, B., Tuyls, K., & Guo, K., Qiu, Z., Miao, C., Zaini, A. H., Chen, C. L., Meng, W., et al. Kappen, H. (2016). Local histogram matching for efficient optical (2016). Ultra-wideband-based localization for quadcopter naviga- flow computation applied to velocity estimation on pocket drones. tion. Unmanned Systems, 04(01), 23–34. https://doi.org/10.1142/ In 2016 IEEE international conference on robotics and automa- S2301385016400033. 123 Autonomous Robots tion (ICRA) (pp. 3255–3260). https://doi.org/10.1109/ICRA.2016. Scaramuzza, D., Achtelik, M. C., Doitsidis, L., Friedrich, F., Kos- 7487496. matopoulos, E., Martinelli, A., et al. (2014). Vision-controlled McGuire, K., de Croon, G., Wagter, C. D., Tuyls, K., & Kappen, H. micro flying robots: From system design to autonomous navigation (2017). Efficient optical flow and stereo vision for velocity esti- and mapping in gps-denied environments. IEEE Robotics Automa- mation and obstacle avoidance on an autonomous pocket drone. tion Magazine, 21(3), 26–40. https://doi.org/10.1109/MRA.2014. IEEE Robotics and Automation Letters, 2(2), 1070–1076. https:// 2322295. doi.org/10.1109/LRA.2017.2658940. Seybold, J. S. (2005). Introduction to RF propagation. Hoboken: Wiley. Meyer, J., Sendobry, A., Kohlbrecher, S., Klingauf, U., & Von Stryk, O. Shilov, K. (2014). The next generation design of autonomous MAV (2012). Comprehensive simulation of quadrotor UAVS using ROS flight control system SMARTAP. In IMAV 2014: International and gazebo. In International conference on simulation, modeling, Micro Air Vehicle conference and competition 2014 Delft Univer- and programming for autonomous robots (pp. 400–411). Berlin: sity of Technology: Delft, The Netherlands, August 12–15, 2014. Springer. Silicon Labs (2016). Bled112 bluetooth smart dongle. https://www. Michael, N., Mellinger, D., Lindsey, Q., & Kumar, V. (2010). The grasp bluegiga.com/en-US/products/bled112-bluetooth-smart-dongle. multiple micro-uav testbed. IEEE Robotics and Automation Mag- Accessed Feb 2016. azine, 17(3), 56–65. Snape, J., Berg J, van den., Guy, S. J., & Manocha, D. (2009). Indepen- Min, S., & Nam, H. (2016). A formation flight control of UAVS using dent navigation of multiple mobile robots with hybrid reciprocal zigbee. In 2016 13th international conference on ubiquitous robots velocity obstacles. In IEEE/RSJ international conference on intel- and ambient intelligence (URAI) (pp. 163–165). https://doi.org/10. ligent robots and systems, IROS 2009 (pp. 5917–5922). IEEE. 1109/URAI.2016.7625728. Snape, J., van den Berg, J., SJ, G., & Manocha, D. (2011). The hybrid Mulgaonkar, Y., Cross, G., & Kumar, V. (2015). Design of small, safe reciprocal velocity obstacle. IEEE Transactions on Robotics, and robust quadrotor swarms. In 2015 IEEE international confer- 27(4), 696–706. ence on robotics and automation (ICRA) (pp. 2208–2215). IEEE. Sveck ˇ o, J., Malajner, M., & Gleich, D. (2015). Distance estimation Nägeli, T., Conte, C., Domahidi, A., Morari, M., & Hilliges, O. (2014). using rssi and particle filter. ISA Transactions, 55, 275–285. Environment-independent formation flight for micro aerial vehi- Szabo, T. (2015). Autonomous collision avoidance for swarms of MAVS cles. In 2014 IEEE/RSJ international conference on intelligent based solely on RSSI measurements. Master’s thesis Delft Univer- robots and systems (IROS 2014) (pp. 1141–1146). IEEE. sity of Technology: Delft. Nguyen, K., & Luo, Z. (2013). Evaluation of bluetooth properties for Townsend, K., Cufí, C., Akiba, & Davidson, R. (2014). Getting started indoor localisation. In Progress in Location-Based Services (pp. with Bluetooth low energy: Tools and techniques for low-power 127–149). Berlin: Springer. networking. O’Reilly Media, Inc. No, H., Cho, A., & Kee, C. (2015). Attitude estimation method for Van Den Berg, J., Guy, S. J., Lin, M., & Manocha, D. (2011). Recipro- small UAV under accelerative environment. GPS Solutions, 19(3), cal n-body collision avoidance. In Robotics research (pp. 3–19). 343–355. Berlin: Springer. Parrot (2012). AR Drone 2.0. http://ardrone2.parrot.com. Accessed Apr Vásárhelyi, G., Virágh, C., Somorjai, G., Tarcai, N., Szörényi, T., 2016. Nepusz, T., & Vicsek, T. (2014). Outdoor flocking and forma- Powers, C., Mellinger, D., Kushleyev, A., Kothmann, B., & Kumar, tion flight with autonomous aerial robots. In 2014 IEEE/RSJ V. (2013). Influence of aerodynamics and proximity effects in international conference on intelligent robots and systems (pp. quadrotor flight. In J. P. Desai, G. Dudek, O. Khatib, & V. 3866–3873). IEEE. Kumar (Eds.), Experimental Robotics: The 13th International Virágh, C., Nagy, M., Gershenson, C., & Vásárhelyi, G. (2016). Self- Symposium on Experimental Robotics (pp. 289–302). Heidelberg: organized UAV traffic in realistic environments. In 2016 IEEE/RSJ Springer International Publishing. https://doi.org/10.1007/978-3- international conference on intelligent robots and systems (IROS) 319-00065-7_21. (pp. 1645–1652). https://doi.org/10.1109/IROS.2016.7759265. Pulse (2008). W1049b datasheet version 1.1. Accessed November 2015 Wilkie, D., Berg, J., & Van den Manocha, D. (2009). Generalized veloc- from www.cdiweb.com/datasheets/pulse/W1049B.pdf. ity obstacles. In IEEE/RSJ international conference on intelligent Quigley, M., Conley, K., Gerkey, B., Faust, J., Foote, T., Leibs, J., robots and systems, IROS 2009 (pp. 5573–5578). IEEE. Wheeler, R., & Ng, A. Y. (2009). ROS: An open-source robot oper- ating system. In ICRA workshop on open source software (Vol. 3, Mario Coppola is a Ph.D. can- p. 5). didate at the Delft University of Remes, B., Esden-Tempski, P., Van Tienen, F., Smeur, E., De Wagter, Technology, the Netherlands. He C., & De Croon, G. (2014). Lisa-S 2.8 g autopilot for GPS-based is a part of the department of flight of MAVs. In IMAV 2014: international Micro Air Vehicle Control and Simulation as well as conference and competition 2014 Delft University of Technology: the department of Space Systems Delft, The Netherlands. August 12–15, 2014. Engineering. His research is on Roberts, J. F., Stirling, T., Zufferey, J. C., & Floreano, D. (2012). 3-d the design of autonomous robot relative positioning sensor for indoor flying robots. Autonomous swarms with a focus on meth- Robots, 33(1–2), 5–20. ods to develop local agent con- Roelofsen, S., Gillet, D., & Martinoli, A. (2015). Reciprocal collision trollers that reach a global objec- avoidance for quadrotors using on-board visual detection. In 2015 tive. He received his M.Sc. in IEEE/RSJ international conference on intelligent robots and sys- 2016 in Aerospace Engineering tems (IROS) (pp, 4810–4817). IEEE. from the same university. His Sabatini, A. M., & Genovese, V. (2013). A stochastic approach to research interests lie in autonomo- noise modeling for barometric altimeters. Sensors, 13(11), 15,692– us robotics, artificial intelligence, and swarms. 15,707. Sasiadek, J., & Wang, Q. (1999). Sensor fusion based on fuzzy kalman filtering for autonomous robot vehicle. In 1999 IEEE international conference and proceedings on robotics and automation (Vol. 4, pp. 2970–2975). IEEE. 123 Autonomous Robots Guido C. H. E. de Croon received Kimberly N. McGuire is a Ph.D. his M.Sc. and Ph.D. in the field candidate at the faculty of Aero- of Artificial Intelligence at Maas- space Engineering of the Delft tricht University, the Netherlands. University of Technology, concen- His research interest lies with trated in autonomous navigation computationally efficient algorith- on lightweight pocket drones at ms for robot autonomy, with a theMAVlab. Shehas abroad particular focus on computer research-interest in embodied vision and evolutionary robotics. intelligence for robotics, in both From 2011–2012 he worked as autonomous navigation and cog- a Research Fellow in Artificial nition. In 2012 she received her Intelligence at the European Space B.Sc. degree in Industrial Design Agency. Since 2013, he is an Assi- Engineering and her M.Sc. degree stant-Professor at the Micro Air in the field of Mechanical Engi- Vehicle lab of Delft University of neering in 2014 at the Delft Uni- Technology, the Netherlands. versity of Technology, specialized in biologically inspired robotics. Kirk Y. W. Scheper received his M.Sc. from the faculty of Aero- space Engineering at Delft Uni- versity of Technology in 2014. Since then, he has been a Ph.D. candidate in the Micro Air Vehi- cle Laboratory at the same univer- sity. His research focuses on the development of embedded soft- ware which facilitates high level autonomy of micro air vehicles. His work is mainly in the fields of evolutionary robotics, embod- ied cognition, and vision-based navigation. http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png Autonomous Robots Springer Journals

On-board communication-based relative localization for collision avoidance in Micro Air Vehicle teams

Free
19 pages

Loading next page...
 
/lp/springer_journal/on-board-communication-based-relative-localization-for-collision-kAiF4vPb09
Publisher
Springer US
Copyright
Copyright © 2018 by The Author(s)
Subject
Engineering; Robotics and Automation; Artificial Intelligence (incl. Robotics); Computer Imaging, Vision, Pattern Recognition and Graphics; Control, Robotics, Mechatronics
ISSN
0929-5593
eISSN
1573-7527
D.O.I.
10.1007/s10514-018-9760-3
Publisher site
See Article on Publisher Site

Abstract

To avoid collisions, Micro Air Vehicles (MAVs) flying in teams require estimates of their relative locations, preferably with minimal mass and processing burden. We present a relative localization method where MAVs need only to communicate with each other using their wireless transceiver. The MAVs exchange on-board states (velocity, height, orientation) while the signal strength indicates range. Fusing these quantities provides a relative location estimate. We used this for collision avoidance in tight areas, testing with up to three AR.Drones in a 4 m × 4 m area and with two miniature drones (≈ 50 g) in a2m × 2 m area. The MAVs could localize each other and fly several minutes without collisions. In our implementation, MAVs communicated using Bluetooth antennas. The results were robust to the high noise and disturbances in signal strength. They could improve further by using transceivers with more accurate signal strength readings. Keywords Relative localization · Collision avoidance · Micro Air Vehicles · Autonomous flight · Indoor exploration 1 Introduction ity, and flexibility to the system, being no longer tied to the success and abilities of one unit (Brambilla et al. 2013). Dur- The agility and small scale of Micro Air Vehicles (MAVs) ing this scenario, however, it may happen that a few MAVs make them ideal for indoor exploration (Kumar and Michael end up flying together in a small area (e.g., an office, meet- 2012). We imagine several autonomous MAVs navigating ing room, or hallway), leading to a high risk of inter-MAV through a building for mapping or inspection. The agents collisions (Szabo 2015). This is a failure condition to be could spread out and thus complete the exploration task in avoided to ensure mission success without the unwanted loss a short time. This approach also brings robustness, scalabil- of units. We have developed and tested a method to tackle this issue which uses only decentralized wireless communication This is one of several papers published in Autonomous Robots between MAVs. Two or more MAVs estimate their relative comprising the “Special Issue on Distributed Robotics: From location via the wireless connection and adjust their path Fundamentals to Applications”. to avoid collisions. In this paper, we describe the details of B Mario Coppola the algorithm and present real-world results on autonomous m.coppola@tudelft.nl MAVs. Kimberly N. McGuire The primary contribution in this article is an on-board k.n.mcguire@tudelft.nl relative localization method for MAVs based on inter-MAV Kirk Y. W. Scheper wireless communication. The communication channel is k.y.w.scheper@tudelft.nl used as a method for the exchange of own state measurements GuidoC.H.E.deCroon and as a measure of relative range (based on signal strength), g.c.h.e.decroon@tudelft.nl providing each MAV with sufficient data to estimate the rela- tive location of another. Our implementation uses Bluetooth, Department of Control and Simulation (Micro Air Vehicle which is readily available at a low mass, power, and cost Laboratory), Faculty of Aerospace Engineering, Delft University of Technology, Kluyverweg 1, 2629 HS Delft, penalty even on smaller MAVs (McGuire et al. 2016). The The Netherlands advantages of our solution are: (a) it provides direct MAV- Department of Space Systems Engineering, Faculty of to-MAV relative location estimates at all relative bearings; Aerospace Engineering, Delft University of Technology, (b) it does not require any external system such as beacons; Kluyverweg 1, 2629 HS Delft, The Netherlands 123 Autonomous Robots (c) it does not require knowledge of global positions; (d) One method to achieve relative localization is to provide it does not depend on the lighting and sound conditions of a shared reference frame in which each MAV knows its own the environment; (e) it has low mass, battery, and processing absolute location. The MAVs can share absolute position requirements; (f) it does not require dedicated sensors. Our data and infer a relative estimate. In outdoor tasks, Global solution also applies to other indoor localization applications, Navigation Satellite System (GNSS) receivers can be used because it shows that only one access point is sufficient to to obtain global position data to share. This has enabled obtain a localization estimate, as opposed to multiple ones formation flying (Min et al. 2016) and large-scale flock- as in current state of the art (Malyavej et al. 2013; Choudhry ing (Vásárhelyi et al. 2014). In indoor tasks, where GNSS is et al. 2017). The system can also be implemented on teams not available, absolute position data can be measured using with more than two agents. This can be done by setting up external sensors/beacons in a known configuration, such as: multiple MAV-to-MAV parallel instances of the estimator. motion tracking cameras (Michael et al. 2010), fixed wire- The secondary contribution in this article is a reactive col- less transmitters/receivers (Guo et al. 2016; Ledergerber et al. lision avoidance strategy that is designed to deal with the 2015), or visual markers (Faigl et al. 2013). However, these localization estimator. The strategy is based on the concept of solutions are unsuitable for exploration tasks of unknown collision cones (Fiorini and Shiller 1998), tailored to suit the and unstructured environments. Simultaneous Localization relative localization method and its expected performance. and Mapping (SLAM) methods circumvent this by gener- The paper is organized as follows. First, we review related ating a map on-board during flight, which then provides literature in Sect. 2. Then, Sect. 3 introduces the rela- position information that can be shared (Scaramuzza et al. tive localization method and Sect. 4 describes our collision 2014). However, if on-board map generation is not part of the avoidance strategy. To assess the system, we developed a rep- mission then this is a resource intensive practice to be dis- resentative room exploration task, explained in Sect. 5.We couraged (Ho et al. 2015). Therefore, the more direct strategy started with simulation trials to test the system under different is for the MAVs to directly localize each other. conditions (Sect. 6). Then, the technology was implemented Vision has received significant attention as a method for on AR.Drones. Initially, the AR.Drones were aided by using direct localization, where front-facing cameras are used to ego-motion data from an external tracking system, as detailed detect and localize other MAVs. Current implementations in Sect. 7. This was done to isolate the performance of generally adopt mounted visual aids in the form of: colored the relative localization from other sensors. Next, this was balls (Roelofsen et al. 2015), tags (Conroy et al. 2014), or removed so that the AR.Drones were relying on on-board markers (Nägeli et al. 2014). However, experiments during sensors, for which the set-up and results can be found in exploratory phases of this study have shown that the use Sect. 8. Finally, the system was implemented on miniaturized of vision without such aids, for very small drones, and at MAVs (Sect. 9). All results are further discussed in Sect. 10. low resolution [128 px × 96 px, as seen on a Lisa-S Lady- Concluding statements and future challenges are laid out in bird (McGuire et al. 2016)], is prone to either false positives Sect. 11. or false negatives. Other disadvantages of using vision are: dependence on lighting conditions, the need for a front-facing camera, limited field-of-view, and high processing require- ments (Alvarez et al. 2016). 2 Related work and research context Roberts et al. (2012) proposed using Infra-Red (IR) sensors. If arranged in an array, this enables an accurate mea- MAVs need to be as efficient as possible so as to decrease sure of relative bearing between two MAVs. Unfortunately, because IR is uni-directional, several sensors are needed to mass and maximize flight time. This means that they are often limited in sensing, computational power, and pay- each face in a specific direction. This is not easily portable load capabilities (Remes et al. 2014; Mulgaonkar et al. to smaller MAVs. 2015). Inter-MAV collision avoidance is important for mis- Alternatively, recent work by Basiri (2015) uses on-board sion success but it must not exhaust the already limited sound-based localization. A microphone array and a chirp resources, which should remain free to pursue the real mis- generator are mounted on-board of the MAVs, and the dif- sion. Arguably, the simplest method to avoid collisions is to ference between arrival times of the chirp at the different have the MAVs fly at different heights. However, experiments microphones is used to estimate the relative bearing (Basiri by Powers et al. (2013) have shown that MAV multi-rotors et al. 2014, 2016). This method requires dedicated hardware, which for smaller MAVs can account for an increase in mass flying over each other experience and/or cause considerable aerodynamic disturbances. Furthermore, height sensor (e.g., of even 10–20% (Basiri et al. 2016; Remes et al. 2014). To truly minimize the footprint, we focused on a compo- sonar) readings could be disturbed. Based on this limitation, we conclude that lateral evasive maneuvers are needed, and nent that is mounted by necessity on all MAVs: a wireless these require relative location estimates between MAVs. transceiver. This is typically used for communication with 123 Autonomous Robots a ground station (Lehnert and Corke 2013; McGuire et al. 2016), but it may also be used for communication between the MAVs. The signal strength of a wireless communication decreases with distance from the antenna, and can be used as a measure for range between MAVs. Signal strength ranging has been used to obtain relative localization between mod- ules using Multi-Dimensional Scaling (MDS) (Li et al. 2007). Unfortunately, these methods need more than two agents to function, whereas we are equally interested in avoiding a sim- Fig. 1 Top view of the relative localization framework (x and y are B B ple collision between two MAVs. In previous work by our the planar axis of F ,while z is positive down) B B group at the Micro Air Vehicle Laboratory, we first exploited signal strength on-board of real MAVs for collision avoidance others. This section details the design and implementation of (Szabo 2015). However, range-only measurements, coupled the relative localization scheme and presents some prelimi- with significant noise and disturbances, were found insuf- nary localization results that were obtained in early stages of ficient to guarantee safe flight of two or more MAVs in a the research. confined area despite using a complex evolved avoidance behavior. Lijina and Nippun Kumaar (2016) recently also 3.1 Framework definition for relative localization explored wireless-range avoidance on WeBot robots (in sim- ulation only), but range measurements were aided by an array Consider two MAVs R and R with body-fixed frames F of proximity sensors. i j B and F , respectively. We define the relative pose of R with Transceivers can be exploited for both ranging and data B j respect to R as the set P ={ρ ,β , z ,ψ }, where ρ exchange. Based on this, we developed a fusion filter to esti- i ji ji ji ji ji ji represents the range between the origins of F and F , mate relative location using range and the communicated B B i j β is the horizontal planar bearing of the origin of F with states between the MAVs. To the best of our knowledge, the ji B respect to F , z is the height of R with respect to R and only instance of on-board relative localization using a wire- B ji j i ψ is the yaw of F with respect to F . See Fig. 1 for an less transceiver was recently brought forward by Guo et al. ji j i illustration. Note that ρ and β are related to their Cartesian (2017) with Ultra Wide-Band (UWB) technology. However, ji ji counterparts via: they make use of one of the MAVs as a beacon and their method relies on highly accurate distance measurements. 2 2 2 Instead, we propose a method that complements possibly ρ = x + y + z , (1) ji ji ji ji noisy distance measurements by communicating on-board β = atan2(y , x ). (2) ji ji ji states between moving MAVs. We then show how it can be used for indoor collision avoidance. We extensively vali- x , y , and z are the Cartesian coordinates of the origin ji ji ji date this on real platforms as light as 50 g that communicate of R in F . j B between each other using Bluetooth, which is highly prone to noise and disturbances. 3.2 Signal strength as a range measurement Let S be the RSSI measurement in dB. It is correlated with ji 3 Communication-based relative localization ρ by a function L(ρ ). We define this function based on ji ji the Log-Distance (LD) model (Seybold 2005): Relative localization is achieved via wireless communication between the MAVs. The MAVs communicate the following S = L(ρ ) = P − 10 ∗ γ ∗ log (ρ ). (3) ji ji n l ji states to each other: planar velocity in the body frame, ori- entation with respect to North, and height from the ground. P is the RSSI at a nominal distance of 1 m. γ is the space- n l When communicating, the MAVs can also measure the sig- loss parameter, which dictates how much the signal strength nal strength; this acts as a measure of distance. For Bluetooth decays with distance (for free-space: γ = 2.0). The LD Low Energy (BLE), the technology chosen in our imple- model is assumed subject to Gaussian noise (Sveck ˇ o et al. mentation, signal strength measurements are referred to as 2015). Received Signal Strength Indication (RSSI). Each MAV fuses the received states, the RSSI, and its own on-board Experimentally, it has been found that office buildings can feature states to estimate the relative position of another MAV. When 2 ≤ γ ≤ 6 (Kushki et al. 2008). Performing a sensitivity analysis of the multiple MAVs are present, each MAV can run multiple par- LD model shows that an accurate identification of γ has a low impact allel instances of the fusion filter so as to keep track of all on the distance estimate at small distances. 123 Autonomous Robots (a) (b) (c) Fig. 2 Results of RSSI measurements during an experiment whereby a b error about LD model with respect to relative bearing fitted with a Ladybird MAV was carried in circles around a fixed Bluetooth antenna. second order Fourier series, c noise distribution about the LD model a RSSI measurements with respect to distance and fitted LD model, without and with lobe effects In preliminary tests, we analyzed the LD model with a a pressure sensor (Beard 2007; Sabatini and Genovese Ladybird MAV (Remes et al. 2014) connected via Bluetooth 2013; Shilov 2014), sonar, or a downward-facing camera to a fixed W1049B omni-directional antenna (Pulse 2008). (Kendoul et al. 2009a, b). Two MAVs R and R can i j The MAV was carried in concentric circles at different dis- share their altitude data, such that: z = z − z . ji j i tances around the antenna whilst RSSI was being recorded – ψ (relative orientation). It is assumed that all MAVs ji with the antenna. The orientation of the MAV with respect to acknowledge a common planar axis [e.g., magnetic North North was kept constant, thus varying the relative bearing to (No et al. 2015; Afzal et al. 2011)]. Through communi- the antenna. Ground-Truth (GT) data was recorded with an cation, the MAVs exchange their orientation data. Optitrack Motion Capture System (MCS). The results from a representative data sample are shown in Fig. 2, to which Relative bearing is the only unknown variable. It becomes the LD model was fitted using a non-linear least squares esti- observable when fusing the three measurements above with matorasinFig. 2a. Among a set of similar experiments, velocity measurements (Martinelli and Siegwart 2005;Mar- the Standard Deviation (SD) of the error about the fitted LD tinelli et al. 2005). We chose to perform sensor fusion with model was found to be between 3 and 6 dB. This is in line a discrete-time Extended Kalman Filter (EKF) due to its effi- with literature (Szabo 2015; Nguyen and Luo 2013). cient processing and memory requirements (De Silva et al. We also observed a change of the error with the rela- 2014). The filter uses Cartesian coordinates so that it can tive bearing. This is shown in Fig. 2b, and accounts for the directly take the difference between velocities in each axis. skew in error distributions, see Fig. 2c. The disturbances that The state transition model from time-step k to k + 1was can this are uneven directional propagation lobes, interfer- defined as in Eq. (4). ence by the reflection of the signal in the environment, the ⎡ ⎤ ⎡ ⎤ presence of other signals in the 2.4 GHz spectrum, or other p p + p ˙ − p ˙ Δt ji ji jRi i ⎢ ⎥ ⎢ ⎥ objects that obstruct the signal (Seybold 2005;Sveck ˇ o et al. p ˙ p ˙ i i ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ 2015; Szabo 2015; Kushki et al. 2008; Caron et al. 2008). p ˙ p ˙ jRi jRi ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ Such disturbances could be dependent on the environment ψ = ψ + v (4) j j k ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ or on the relative bearing between antennas, both of which ψ ψ i i ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ ⎣ ⎦ are unknown during an exploration task. For this reason, the z z j j LD model was not expanded to include this dependency on z z i i k+1 k bearing. p =[ x y ] holds Cartesian equivalents of relative ji ji ji 3.3 Localization via fusion of range and on-board bearing and range. p ˙ =[˙x y ˙ ] is a vector of the velocity i i states of R in F (see Fig. 1). p ˙ is p ˙ rotated from F to F . i B B B i jRi j j i Δt is a discrete time-step between updates, equal to the time Achieving a relative pose estimate requires measuring or between k and k + 1. v represents the noise in the process inferring all four variables in P . We can directly measure at time-step k. This model assumes that all current velocities ji or observe the following three: An intuitive explanation of the observability is as follows: if robot R is moving towards North with 1 m/s and its distance to R (which, i j – ρ (range), available via RSSI as in Sect. 3.2. ji in this example, remains stationary) increases by 1 m each second, then – z (relative height). Each MAV is expected to measure ji R could infer that R is to its North. Similarly, R would know that j i i its height above the ground. This could be done with R is to its South. This logic can be extended for all directions. 123 Autonomous Robots and orientations remain constant between time-steps. The convergence and helps discard the high noise and disturbance observation model for the EKF is given by Eq. (5). in the RSSI measurements. σ , σ , and σ were then Q Q Q v ψ z tuned higher (to 0.5) to enhance the difference, while stay- ⎡ ⎤ ⎡ ⎤ S L(ρ ) ing within the order of magnitude of the expected standard ji ji ⎢ ⎥ ⎢ ⎥ p ˙ p ˙ deviations of the measurements. i i ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ p ˙ R (ψ ) ∗ p ˙ This filter is limited by flip and rotation ambiguity as 2D j ji jRi ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ψ = ψ + w (5) defined by Cornejo and Nagpal (2015). When the motion of j j k ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ψ ψ R perfectly matches the motion of R , range-only measure- i i j i ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ ⎣ ⎦ z z ments remain constant and are not informative for bearing j j z z estimation. Unless the MAVs are flying in formation, the i i k k probability of this event will be low (Cornejo and Nagpal R (·) is a 2D rotation matrix that uses the relative heading 2D 2015). The same ambiguity takes place when both R and ψ to rotate the state estimate p ˙ from F to F . w ji B B k R are static. Motion by at least one MAV is required, as jRi i j j represents the noise in the measurements at time-step k.Note the filter operates by taking the difference in velocity. The that ρ is expanded as per Eq. (1) so as to observe x and ji ji performance of the filter thus increases as the average dif- y . The EKF cannot be initialized with a correct relative ference in velocity between the MAVs increases (and/or the ji location estimate, since this is not known; it must converge accompanying measurement noise decreases). towards the correct value during flight. Appropriate tuning of the EKF noise covariance matrices is key to achieving this. 3.4 Implementation details In the EKF, the measurement noise matrix R is a diagonal matrix with the form shown in Eq. (6). We used BLE to enable communication between the MAVs. ⎡ ⎤ 2 The data is sent and received by means of advertising messages scheduled using a Self-Organized Time Divi- ⎢ ⎥ σ ∗ I 4×4 ⎢ ⎥ R = (6) 2 sion Multiple Access (STDMA) algorithm, as described by ⎣ ⎦ σ ∗ I 2×2 Gaugel et al. (2013). This enables ad-hoc communication and σ ∗ I 2×2 circumvents the Master-Slave paradigm otherwise enforced by the BLE standard (Townsend et al. 2014), as each antenna σ is the assumed SD of S . σ is the assumed SD of p ˙ and m ji v alternates between advertising and listening. The messag- p ˙ . σ is the assumed SD of the magnetic orientation mea- ing rate is tuned to 5 Hz, which is a compromise between surements. σ is the assumed SD of the height measurements. the amount of STDMA communication slots (8 slots) and I is a n×n identity matrix. Based on our preliminary RSSI n×n an acceptable communication rate. 5 Hz keeps the conges- noise analysis, σ is tuned to 5 dB. Throughout this paper, tion low. Nevertheless, the messaging rate can be affected all other SDs were tuned to 0.2, unless otherwise stated. This by differences in clock rates and possible packet losses. Fig- was based on the measurement noise, either simulated or ure 3 shows the interval between received messages rate over expected from the sensors. approximately 3 min of recording from the point of view of a The process noise matrix Q is the diagonal matrix pre- single antenna in a group of two or three participating anten- sented in Eq. (7). nas. Approximately 80% of messages are received and parsed ⎡ ⎤ within 0.25 s and 95% within 0.45 s. A slight increase in σ ∗ I 2×2 ⎢ 2 ⎥ packet loss was observed when increasing the number of σ ∗ I 4×4 ⎢ ⎥ Q = ⎢ ⎥ antennas to three, with 128 missed messages as opposed to σ ∗ I ⎣ ⎦ 2×2 σ ∗ I 2×2 (7) σ is the SD of the process noise on the relative position update. σ , σ , and σ are SDs for the expected updates Q Q Q v ψ z in velocity, orientation, and height, respectively. By tuning Q we can define the validity of the process equations (Malyavej et al. 2013). In this paper, unless otherwise stated: σ = 0.1, while σ = σ = σ = 0.5. We tuned σ to 0.1soas Q Q Q Q v ψ z p (a) (b) to have a relatively low process noise on the relative position update. This forces the filter to rely less on the (noisy) range Fig. 3 Messaging rate over a test flight. a Message intervals, b distri- measurements and more on other data, which encourages bution 123 Autonomous Robots 120 when two antennas were used. This corresponds to an is because, at very small distances, a small error in x or ji increase in packet loss from 13.4 to 14.2%. y can translate into a large error in β . It can reach ± π if ji ji x or y estimates are both of the wrong sign, as it briefly ji ji happens at around 55 s. 3.5 Preliminary relative localization tests We performed preliminary localization tests with a Lady- 4 Collision avoidance behavior bird MAV flying around a fixed Bluetooth W1049B antenna. The objective was to determine how well the antenna could The avoidance algorithm is based on the Collision Cone (CC) localize the MAV. An Optitrack MCS was used to guide the framework (Fiorini and Shiller 1998; Wilkie et al. 2009). A MAV in circular flights and record its GT velocity, orienta- collision cone is a set of all velocities of an agent that are tion, and height. The antenna measured the RSSI to the MAV. expected to lead to a collision with an obstacle at a given The recorded GT data was altered with Gaussian noise with point in time. Its name derives from the fact that it is geo- σ = 0.2m/s, σ = 0.2 m, and σ = 0.2 rad, and then used metrically cone-shaped. In our work, we scale the collision v z ψ as measurements for the EKF. In the LD model of the EKF: cones according to the expected relative localization errors P =− 63 dB and γ = 2.0. The EKF was initialized with a and implement a clockwise search to find escape directions n l null guess position of x = y = 1 m. In these preliminary not covered by cones. Using this framework bears these main ji ji tests, the localization filter was applied off-board. advantages: (a) the MAVs are not encouraged to vary their Estimates for x and y are shown in Fig. 4a, b, the EKF speed (slow down), as motion is beneficial to the perfor- ji ji converges towards GT in the first few seconds, after which mance of the relative localization filter (see Sect. 3.3), and it tracks successfully. The small oscillations in the GT are also select a predictable escape direction. This is different to induced by the fact that the MAV did not travel continuously, Velocity Obstacle (VO) approaches (Wilkie et al. 2009); (b) but via way-point navigation. Figure 4c shows the estimated there can be an explicit relationship between the size of the range, where we can observe a significant improvement in cone and the expected localization error; (c) distance, which error with respect to an inverted LD model. Note that the has a low estimation accuracy, is not used to make decisions. range error increases with distance, this is due to the log- This differentiates it from distance-based methods such as arithmic nature of RSSI propagation. Figure 4dshows the repulsion forces (Virágh et al. 2016). This section details our bearing error, which is small throughout most of the flight. implementation of collision cones and how they are used to A noticeable exception is a spike about the 55 s mark. This determine a collision-free trajectory. (a) (b) (c) (d) Fig. 4 Preliminary localization trial based on circular flights of a Lady- b Ground-truth versus estimated location of the MAV along the y bird MAV around a fixed antenna (with artificial noise added to the axis of the antenna. c Comparison of EKF estimated range com- velocity, height, and orientation measurements). a Ground-truth ver- pared to ground-truth and estimate from inverting the LD model. sus estimated location of the MAV along the x axis of the antenna. d Error in β over time B ji 123 Autonomous Robots m−1 CC = CC (11) i ji j =1 If, during flight, p ˙ ∈ CC , then a clockwise search about the z axis (starting with the current desired velocity) is used to determine the desired escape velocity. If no solu- tion is found, then the search is repeated for a higher escape speed. A clockwise search encourages a preference for right- sided maneuvers with respect to the current flight direction. This differentiates it from the VO avoidance method, which selects a flight direction that minimizes the required change Fig. 5 Depiction of CC that R holds with respect to the estimated ji i in velocity. Although effective, when an agent opts for the location of R minimum change in velocity without considering that the other might also change its motion, this may lead to an 4.1 Collision cones and avoidance strategy issue known as “reciprocal dances”. These happen when two entities heading towards each other repeatedly select the Take two MAVs R and R . The collision cone CC , same escape direction. The situation is analogous to when i j ji depicted in Fig. 5, would include all velocities of R which two people try to avoid each other in a corridor and both could lead to a collision with R . It is constructed in three select the same direction, leading to a left–right dance by steps. each person. In other literature, solutions to VO’s recipro- cal dances rely on the reciprocity assumption, meaning that each agent assumes that the other agent will also take a pre- 1. A cone CC is defined as in Eq. (8). α is an arbitrary ji defined evasive action (Snape et al. 2009, 2011;Van Den angle. x and y are points on x and y , respectively. B B i i Berg et al. 2011). In our case, however, due to the poten- The cone is characterized by an expansion angle α , CC ji tial for large relative localization errors, MAVs cannot safely subject to 0 <α <π. CC ji assume that the others will participate in a suitable and recip- rocal escape maneuver. Enforcing right sided maneuvers CC ji is a solution to limit oscillations without assuming reci- |α | CC ji procity. It should be noted, however, that oscillations may = (x , y) ∈ R ; α ∈ R;|α|≤ : tan(α)x = y still occur when the MAVs have to coordinate between mul- (8) tiple obstacles, such as a wall and another MAV, or multiple MAVs. 2. CC is rotated so as to be centered around the estimated ji bearing to the obstacle R as in Eq. (9), where: β is the j ji 4.2 Tuning the expansion angle of the collision cone estimated β from the EKF, ← is an update operator, ji and R(·) is a rotation operator for the set. The expansion angle of a collision cone is dependent on the distance between the MAVs (the MAV radii becomes more ¯ significant as distance decreases) and the relative estimation CC ← R(β ) ∗ CC (9) ji ji ji errors (Conroy et al. 2014). Based on this knowledge, we formulated Eq. (12) to calculate the expansion angle, 3. The cone is translated by the estimated velocity of R expressed in F , as per Eq. (10). This accounts for the 2r +¯ ρ + ε ji α −1 fact that the obstacle is moving. p ˙ is the estimated p ˙ α = 2 ∗ tan , (12) jRi jRi CC ji κ ∗¯ ρ α ji from the EKF. The operator ⊕ denotes the translation of a set by a vector. where r is the radius of a MAV (modeled as a circle); ρ¯ is the ji estimated range between R and R ; ε is an additional mar- i j α CC ← CC ⊕ p ˙ (10) ji ji jRi gin, the properties of which are discussed in Sect. 4.3; κ is a In a team of m MAVs, each member R holds m − 1 Note that, equivalently, the search could be anticlockwise, as long as collision cones that it can superimpose into a single set CC . this is equal for all agents. 123 Autonomous Robots Fig. 6 Effect of κ on α (r = 0.1m, ε = 0.5) Fig. 7 Effect of ε on α (r = 0.1m, κ = 1) α CC α CC α asymptote 5 Testing methodology coefficient describing the quality of the estimate. The expan- sion angle has a lower bound α which is dependent CC asymptote An exploration task was developed where multiple MAVs fly on κ : in a room at the same altitude and attempt to pass through the center. This is designed to provoke collisions. The sample task was used to test the performance of the relative localiza- −1 α = lim α = 2 ∗ tan . (13) CC CC asymptote ji tion and collision avoidance, separately and combined. This ρ¯ →∞ ji α section describes the task in more detail and outlines how it will be used for assessment. The impact of κ may be appreciated in Fig. 6. In this work, unless otherwise stated, we use κ = 1, so α = α CC asymptote 5.1 Description of arbitrary task for performance . This generally encompasses the expected bearing errors 2 testing during flight based on our preliminary results. Consider a team of m homogeneous MAVs. Each MAV R can control its velocity. Let p ˙ be the desired velocity for cmd,k 4.3 Preserving behavior in rooms of different size R expressed in its body-frame F at a given time-step k. i B Let d be the distance between R and the arena border wall i The expansion angle of the collision cone widens towards π that is closest to it, with d being a safety distance to the safe as the distance between two MAVs decreases. This implies arena’s borders. Note that each robot R features m −1EKF that in smaller rooms the collision cones would always instances to keep track of the other members and uses their feature wide expansion angles, leading to most of the envi- outputs to determine its collision cone set CC ,see Eq.(11). ronment becoming out of bounds. This restriction in freedom At each time-step k, the EKF outputs are updated and CC of movement creates oscillations in MAV trajectories. To is re-calculated. p ˙ is then chosen as follows: p ˙ = i i cmd,k cmd,k limit the issue, we propose using ε as a tuning parameter. p ˙ unless conditions M1 and M2 take place. cmd,k−1 The effect of varying ε is shown in Fig. 7;as ε decreases, α α the decay of the expansion angle with distance increases. A M1: d < d and d < 0. This means that R is wall safe wall i faster decay is suitable for smaller rooms so that motion is i i close to the arena border and approaching it. Then, less restricted. p ˙ is rotated towards the center of the arena as seen We devised a method to tune ε intuitively. Rearranging i cmd,k in Fig. 8. Eq. (12), ε is expressed by: M2: p ˙ ∈ CC . This means that the current velocity of R i i could lead to a collision with one or more team mem- CC eq bers. An escape velocity is sought according to the ε = κ ∗ ρ ∗ tan − 2r − ρ . (14) α α eq eq strategy outlined in Sect. 4. This translates tuning ε to tuning a pair {α ,ρ }, In all experiments performed in this paper, wall detection α CC eq eq where α is the desired angle of expansion at a distance is deemed outside of our scope and is therefore enforced CC eq ρ . Note that α >α , and ε ≥−(r + r ) if by using the global position of the agent within an arena eq CC CC α i j eq asymptote κ ≥ 1. In all our tests, ρ is set to half of the side length of (provided by a MCS). Condition M1 holds priority over α eq the room. α is kept at 1.7 rad. M2 to ensure that the MAVs remain within the arena. At CC eq 123 Autonomous Robots localization estimates and establish how the collision avoid- ance would fare under such circumstances. Assessment of the full system The parameter of interest is the mean flight time until collisions. An ideal system is one with which, systematically, collisions do not take place. Such a result may be dependent on how crowded the airspace is, so we tested different configurations. By modeling MAVs as circles, airspace density is calculated with: m ∗ πr Fig. 8 Depiction of condition M1. Robot R is too close to the border i D = (15) m,c of the arena and receives a command to go towards the center D denotes the density for configuration c with m MAVs, m,c all time-steps, unless otherwise commanded by the collision r is the radius of a MAV in configuration c, and s is the side c c avoidance algorithm, |p ˙ |=v , where v is a nominal nominal length of the squared arena at configuration c. cmd,k fixed speed magnitude. 5.2 Assessment strategy 6 Simulation experiments Simulations allow to assess the collision avoidance algorithm Experiments were performed in stages with increasing real- ism and autonomy: and the full system. We can assess the performance of the system for several airspace densities, noise scenarios, etc., and obtain statistical insights. 1. Simulation This enabled assessing system performance under different conditions. 6.1 Simulation environment set-up 2. External own-state measurements These tests used an external MCS to control the drones (but not for relative The simulation environment was developed using Robotics localization). This allowed to make the results indepen- Operating System (ROS) (Quigley et al. 2009), the Gazebo dent of the ability of the drones to fly autonomously. physics engine (Koenig and Howard 2004), and the hector- 3. On-board own-state measurements These tests rely on quadrotor model (Meyer et al. 2012). Multiple quad-rotor on-board sensors to control the drones. They are used to MAVs can be simulated simultaneously. A ROS module (or determine real-world performance. The external MCS is “node”) for each MAV simulates Bluetooth communication only used to simulate wall detection. This type of test and enforces the controller described in Sect. 5.1. A rendered is performed on AR.Drones and on miniaturized MAVs. screenshot of a simulation is shown in Fig. 9a. Note that for the miniaturized MAVs, the MCS was also The RSSI is simulated using the LD model (P =−63 dB, used to measure height from the ground. This was due to γ = 2.0) with added Gaussian noise (SD of 5 dB) and the lack of a suitable height sensor on the MAVs. l horizontal antenna lobes, unless otherwise stated. The lobes were modeled using a third order Fourier series with unitary The results of all tests are discussed in the next four chapters. weights, see Fig. 9b. The other measurements were altered During the tests, the three items below were assessed. Assessment of relative localization The performance of the relative localization can be assessed by comparing the estimated relative locations to ground-truth data obtained cumulatively during all real-world experiments. Assessment of collision avoidance This is partially depen- (a) (b) dent on the performance of the relative localization, yet can be assessed independently by identifying failure cases and Fig. 9 The simulation environment and the simulated lobes. a Screen- observing general behavior properties. In simulation, how- shot of a simulation with 3 MAVs. b Simulated RSSI horizontal lobes applied as a function of relative bearing between MAVs ever, it is also possible to artificially improve the relative 123 Autonomous Robots 2MAVs 3MAVs D =0.6% D =1.6% 2,8 2,12 D =0.8% D =2.4% 3,8 3,12 5 8 12 D =0.1% D =0.9% D =2.5% 2,4 2,7 2,11 D =0.1% D =1.3% D =3.7% 3,4 3,7 3,11 4 4 7 11 D =0.2% D =1.6% D =4.4% 2,3 2,6 2,10 D =0.3% D =2.4% D =6.5% 3,3 3,6 3,10 3 3 6 10 123456789 10 11 12 D =0.4% D =3.5% D =9.8% 2,2 2,5 2,9 D =0.6% D =5.3% D =14.7% 3,2 3,5 3,9 Configuration 2 2 5 9 Fig. 11 Mean flight time to collision for all simulated configurations. D =1.6% 2,1 D =2.4% Average results without collision avoidance, not shown in this figure, 3,1 1 1 range between 3.9 and 14.3 s 0 0.1 0.2 0.3 0.4 0.5 0.6 MAV diameter [m] Fig. 10 The twelve configurations tested in simulation with configura- tion numbers shown in the white circles. D is the airspace density m,c for configuration c with m MAVs from Eq. (15) with the same standard deviations as in the preliminary local- ization tests of Sect. 3.5. Furthermore: v = 0.5m/s, nominal (a) (b) d = 0.25 m, and ψ = 0 rad for all MAVs. The MAVs safe begin at different corners of the arena. The EKF is initialized Fig. 12 Flight parameters with respect to airspace density based on such that the initial position guess is towards their initial flight simulation results. a Mean flight time with respect to density. b Mean area coverage with respect to density direction (i.e. the center of the arena). We investigated twelve configurations of arena size and MAV diameter for teams of two MAVs and three MAVs. density improves the probability of success, but this is found The configurations will be referred to by the encircled num- to not strictly be the case. Figure 12a shows the flight time bers in Fig. 10. Each configuration was simulated 100 times. to collision as a function of the airspace density. A portion Each simulation was automatically interrupted if a collision of configurations show low results despite the low airspace occurred or after 500 s of collision-free flight. density, and are outliers in the negative linear trend. These correspond to configurations 1, 2, 5, and 9, which feature 6.2 Results smaller arena sizes. The conclusion is that room size affects performance even when airspace density remains constant. Mean flight time for each configuration is shown in Fig. 11. This is a remaining limitation of the current status of the sys- Flights with three MAVs consistently show a lower perfor- tem when operating in smaller rooms. Its causes are discussed mance than with two MAVs. The performance drop is a in Sect. 10.2. result of the team dynamics at play, namely: (1) increased airspace density, and (2) decreased freedom of movement Freedom of movement Figure 12b shows the impact of due to superposition of collision cones. These two factors airspace density on area coverage for all flights with two are analyzed in the remainder of this section. MAVs and three MAVs. Area coverage was measured as fol- lows. The total area is divided in sections of 0.20 m ×0.20 m. Airspace density When the MAV diameter remains constant, A section is marked “covered” when one of the MAVs crosses but the arena size increases, an increase in mean flight time is it. Area coverage is the percentage of covered sections during observed. This is seen by comparing the configuration quar- a trial. Here, two patterns arise. tets 1-2-3-4, 5-6-7-8, and 9-10-11-12. Furthermore, when the arena side-length remains constant and the MAV diame- ter increases, a decrease in mean flight time is observed. This 1. A higher airspace density leads to a lower overall cover- is seen by comparing within the configuration triads 4-7-11, age. This is due to: (a) lower flight times, providing less 3-6-10, and 2-5-9, and the pair 8-12. This implies that a lower overall time to complete the mission, and (b) decreased Arena side length [m] Mean Flight time [s] Autonomous Robots 5dB, no lobes 3dB Orig. 5dB, no lobes 3dB Orig. 500 500 300 300 200 200 100 100 12569 10 12569 10 Configuration Configuration Fig. 13 Heat maps of normalized area coverage over all simulations (black crosses indicate collisions). a Two MAVs. b Three MAVs (a) (b) Fig. 14 Improvements in system performance against nominal results (“Orig.”) when noise is reduced from 5 to 3 dB, or when lobes are freedom of movement due to larger portions of the arena removed. a Two MAVs. b Three MAVs being covered by collision cones. 2. Three MAVs systematically achieve lower area cover- age than only two MAVs in the same configuration. This is explained by analyzing the flight trajectories in more detail, from which an emergent circular behavior is dis- cerned. See Fig. 13, which shows the normalized heat map over all simulations for two (Fig. 13a) and three (Fig. 13b) MAVs. When more than one MAV to avoid is present, the superposition of multiple collision cones Fig. 15 A flight with 3 AR.Drones, encircled in white pushes the MAVs towards the edges. 7 Experiments featuring external own-state measurements 6.3 Impact of RSSI noise on performance We implemented our system on AR.Drones. In the experi- In simulation, we also tested all configuration with a clean ments in this section, we used Optitrack to accurately inform case, where each MAV perfectly knows the position of all MAVs of their velocity, orientation, and height. This isolates others. Our tests lasted 500 s (the maximum time) with no the impact of using real RSSI measurements and Bluetooth collisions. This shows that, with perfect relative localization, communication on the relative localization system during the collision avoidance should give perfect results. Two fur- flight. It also shows the system performance in case of high ther case studies were explored. In the first case, the simulated quality ego-motion estimates. RSSI noise is reduced from 5 to 3 dB, but lobes are still simu- lated. In the second case, RSSI noise is kept at 5 dB but sensor 7.1 Experimental set-up lobes are removed. All other parameters remain the same as in the primary simulations. The configurations tested are those The experiments were performed using AR.Drones 2.0 (Par- with the lowest performance: 1, 2, 5, 6, 9, 10. The results are rot 2012). A BLED112 (Silicon Labs 2016) Bluetooth Smart shown in Fig. 14, and show that removing the antenna lobes USB Dongle equipped them with Bluetooth. The controller provides the largest improvement in performance. A lower was developed using Paparazzi (Drouin and Muller 2007) noise also improves results, yet the impact is generally lower and was running entirely on-board. The experiments in this than antenna lobes. The lower error in relative position esti- section relied on Optitrack to provide each MAV with data mates translates into a more successful collision avoidance of its own velocity, orientation, and height via a Wi-Fi link. system. For real-world systems, this shows that performance Each AR.Drone then communicated this data via a Blue- can be improved by operating in cleaner environments, using tooth broadcast to the other ones, using the implementation better antennas, or by better filtering of signal strength mea- described in Sect. 3.4. The Wi-Fi link was also used for take- surements. off/land commands and for data logging. Figure 15 shows a picture of a flight with three AR.Drones. All MAVs flew at 1.5 m from the ground, with a nom- Interestingly, emergent circular behaviors of this kind have also been inal speed v = 0.5 m/s and safety wall distance nominal observed in nature over a vast amount of organisms, ranging from bac- teria to humans (Delcourt et al. 2016). d = 0.5 m. The enforced arena size in all experiments safe Mean Flight Time [s] Mean Flight Time [s] Autonomous Robots was 4 m × 4 m, making these tests analogous to configu- 0.70 rad. Figure 16f shows the bearing error distribution. We ration 11 from the simulation runs (AR.Drones are slightly can see the slightly larger spread of the bearing error. There larger in diameter than 0.5 m). The LD model in the EKF is also an apparent positive bias in the error. This bias could filter was tuned with P =− 68 dB and γ = 2.0. P was have been caused by the initial guess of the EKF, which was n l n obtained via a brief hand-held measurement, γ was based unable to converge back to a zero mean. On occasion, we on the free-space assumption. The Optitrack measurements observe that the bearing error temporarily diverges towards inputted into the EKFs were altered with Gaussian noises ± π. This error does not necessarily lead to collisions due to σ = 0.2 m/s and σ = 0.2 rad. the non-reciprocal nature of the avoidance behavior. Never- v ψ theless, it introduces a temporary uncertainty in the system. The error is more frequent with three AR.Drones. We also 7.2 Results observe that the convergence rate for bearing estimates over flights with three AR.Drones appears worse than with two Four flights were performed with two AR.Drones for a cumu- AR.Drones. This may be seen in Fig. 17, which zooms into lative time of 25.3 min. Only one collision took place, which the first 30 s of Fig. 16d, e. Convergence times for flights occurred in the second flight after 5.6 min. Six flights were with three MAVs reach up to 30 s prior to settling (Fig. 17b). performed with three AR.Drones for a cumulative time of By comparison, the convergence time for flights with two 15.3 min. Five flights ended in collisions. On average, this AR.Drones only (Fig. 17a) is within 10 s. happened after 160 s of flight. An analysis of the noise in RSSI showed that flights with All estimated range and bearing errors are presented in three MAVs experienced a marginally larger noise. This Fig. 16. The estimated range features a Root Mean Squared can be evaluated in Fig. 18a. A two-sample Kolmogorov- Error(RMSE)of0.86 m with two MAVs and 1.14 m with Smirnov test rejected that the two distributions could be the three MAVs. Figure 16c shows the error distribution, indi- −22 same (with a p value of 6.9 ×10 ). We also ran a bootstrap cating the lower performance with three MAVs. For bearing test with 10,000 repetitions, testing for the difference in sam- estimates, the Root Mean Squared Error (RMSE) for flights ple mean and the ratio of variances as reference statistics. In with two MAVs is 0.57 rad and with three MAVs it rises to (a) (b) (c) (d) (e) (f) Fig. 16 Overview of all relative range a, b, c and relative bearing d, e, distribution for all flights. d Bearing estimate error with two AR.Drones f estimation errors for flights with external own-state measurements. a (RMSE = 0.57 rad). e Bearing estimate error with three AR.Drones Range estimate error with two AR.Drones (RMSE = 0.86 m). b Range (RMSE = 0.70 rad). f Bearing error distribution for all flights estimate error with three AR.Drones (RMSE = 1.14 m). c Range error 123 Autonomous Robots π π also closer on more occasions than during flights with two MAVs. This can be seen in Fig. 18b. π/2 π/2 0 0 8 Experiments featuring on-board own-state −π/2 −π/2 measurements −π −π 0 5 10 15 20 25 30 0 5 10 15 20 25 30 The experiments from the controlled flights were repeated Time [s] Time [s] but with on-board state estimation by the MAVs. Therefore, (a) (b) on-board MAV sensors measured velocity, orientation, and height. This shows real-world relative localization perfor- Fig. 17 Comparison of bearing estimate errors in the first 30 s of flight during flights with external state measurements. a With two AR.Drones, mance for collision avoidance. b with three AR.Drones 8.1 Experimental set-up Velocity was estimated using the bottom facing camera and the EdgeFlow algorithm (McGuire et al. 2016). In the exper- iments described in this section, this provided velocity with a standard deviation between 0.10 and 0.35 m/s, as extracted by comparison with ground-truth measurements. The mag- netometer could not be used due to large electro-magnetic disturbances in the environment, so orientation was measured using gyroscope integration only (given an initial orientation (a) (b) towards North). Height from the ground was measured using sonar. Optitrack was only used to enforce condition M1 (wall Fig. 18 Distributions of RSSI error and distance measurements for all detection) with d = 0.5 m. This is because wall detection safe flights. a RSSI error distribution, b distribution of distances between is outside of the purpose of this research. To further stress-test MAVs based on ground-truth measurements the system, a further change was that the EKFs initial relative position assumption was x = y = 1mforany MAV R ji ji i both cases, the bootstrap test rejected the null hypothesis over with respect to any other R , as opposed to the center of the the 95% confidence interval, and declared the distributions arena. The AR.Drones communicated with a ground-station different. If we model the distributions as normal distribu- using a Wi-Fi link for logging and take-off/land control. tions, the standard deviation increases from 4.65 dB with twoMAVsto4.9 dB with three MAVs. Aside from this, we 8.2 Results also attribute the drop in relative localization performance (and the slower convergence) with three MAVs to the factors Four flights were performed with two AR.Drones for a cumu- below. lative flight time of 17.3 min. In this time, only two collisions took place (after 3.9 and 1.0 min in the first and last flight). – As also seen in the simulations from Sect. 6, flying with Another flight saw a near-collision in the early stages, but three MAVs pushes them further apart. This also hap- afterwards successfully continued until battery depletion. pened in the real-world experiments, as can be seen in Another four flights were conducted with three AR.Drones, Fig. 18b. At larger distances, RSSI is less informative as which lasted 8.3 min cumulatively. In this time, the MAVs a distance measurement due to its logarithmic decline. experienced three collisions (after 1.2, 1.6, and 2.3min of – With three MAVs, the MAVs move slower and with more flight). oscillations. This has a negative impact on the EKF’s per- The bearing estimation error is shown in Fig. 19. The error formance, which favors smooth trajectories with faster has increased with comparison to the previous results. With velocities. A more aggressive MAV controller could have two AR.Drones, the mean RMSE over the first three flights is lowered this effect. 0.85 rad. This is sufficient for a long collision-free flight time. – The bearing error appears to diverge towards ± π more In the last flight, however, the RMSE was 1.3 rad, possibly frequently with three MAVs. As already discussed in Sect. 3.5, this happens at smaller distances because a The differences arise from the fact that the noise is partially dependent small error in x or y can translate into a large bearing on what the MAV sees during a flight, which depends on its chosen flight error. When flying with three MAVs, the MAVs were path. Bearing Error [rad] Bearing Error [rad] Autonomous Robots (a) (b) (c) Fig. 19 Overview of relative bearing estimation errors for flights with two AR.Drones and three AR.Drones featuring on-board own-state estimation. a With two AR.Drones, b with three AR.Drones, c bearing error distribution for all flights due to a large disturbances in RSSI by the environment. This is held responsible for the early collision after 1.0 min. With three drones, the bearing RMSE over all flights is 1.0 rad. Fig- ure 19c shows the distribution. There is an apparent negative bias. We can note how this bias increases in magnitude over time when observing Fig. 19a, b. This is due to the accumulat- ing gyroscope bias during the flights. This could be corrected in future implementations by using a magnetometer. 9 Implementing the technology on miniature drones Fig. 20 Miniature drone used in the experiments To show that the proposed solution scales to smaller MAVs, we ported the technology to a pocket-sized MAV. A test- ready MAV and its components are shown in Fig. 20.The platform is as used by McGuire et al. (2017). latter came in light of low-batteries by one of the drones. As it lowered its height, the two MAVs also actually col- 9.1 Experimental set-up lided. The third flight saw a near collisions after ≈ 60 s and ≈ 90 s. Both took place in the corner when condition M1 The set-up is equivalent to the one for the AR.Drones in takes over the drones, and are thus regarded more as a failure Sect. 8, with a few minor differences. In the LD model, fol- of the behavior than the relative localization. This shows the lowing a short hand-held calibration, P =− 55 dB. Also, n importance of implementing a method that keeps taking into given the smaller size of the drones, the enforced flight arena account other drones while also avoiding the walls, which was reduced to 2 m ×2 m with d = 0.5 m. This scenario is safe was not implemented in our controller. similar to configuration 2 from Fig. 10. As for the AR.Drones It is noted that a slightly lower performance than previ- in Sect. 8, a bottom facing camera and a gyroscope mea- ous experiments was expected due to the smaller arena size, sured velocity and orientation, respectively. However, given an effect which was also observed in simulation and is dis- the lack of an accurate height sensor on these small drones, cussed further in Sect. 10.2. Nevertheless, we also note a the height was measured using Optitrack. Because of their decrease in accuracy for relative localization as RMSE per fragility, the two drones also flew at different heights (1.0 flight ranges from 0.8to1.37 rad. Inspecting the data in and 1.5 m) so as to limit damages in case of failure. more detail shows that this is the result of larger errors in both RSSI noise (standard deviation 5.4–6.5 dB with mean 9.2 Results error 2.1–4 dB) as well as lower quality of on-board velocity estimates (standard deviation of ≈ 0.8 m/s with mean error Three flights were performed with this set up lasting 2.8, of up to 0.2 m/s). The former is explained by the fact that the 3.7, and 3.1 min. The first flight saw no collision cases. The Bluetooth module was placed right next to the Wi-Fi mod- second flight saw near collisions at 1.35 and 3.7min.The ule, creating larger disturbances. The latter is explained by 123 Autonomous Robots the lower resolution of the camera and the fact that it is sub- 10.2 Performance of collision avoidance ject to larger vibrations (McGuire et al. 2016). Furthermore, as the MAVs were flying closer to each other in a smaller The aim is to achieve a solution where no collisions will occur arena, errors in relative x and y estimates are amplified when between the MAVs. In simulation, all twelve configurations translated into relative bearing estimates. have also been tested without active collision avoidance. The obtained mean flight times ranged between 3.9 and 14.3s,as opposed to the results from Fig. 11.A z-test with 95% confi- dence level (Dekking 2005) shows a statistically significant 10 Discussion improvement in flight time for all configurations when using our method. 10.1 Performance of relative localization Figure 12a showed that smaller rooms lead to poorer per- formance than larger rooms despite similar airspace density. In all AR.Drone tests, a loss in relative localization perfor- Reasons for this are: mance was measured when introducing a third MAV. The effects were longer convergence times as well as higher rela- – The ratio of arena size to v decreases in smaller nominal tive bearing/range errors. A decrease in performance was also rooms. observed when using on-board velocity estimates. This was – The communication rate is constant, which limits the due to a combination of over/under-estimation of velocity or decision rate of the collision avoidance controller. occasional spikes in the measurements. – In smaller rooms, M1 is called more frequently, in which The relative localization scheme was implemented with case collision cones are ignored according to the task in an EKF. This may be criticized for its reliance on a Gaussian this article. noise model. Robust (Kallapur et al. 2009) or adaptive (Sasi- adek and Wang 1999) variants of Kalman filters, or particle It was observed that collisions for flights with three MAVs filters (Sveck ˇ o et al. 2015), might be better suited. However, likely occur along the edges of the area. In the simulations of a change in filter could increase computational costs without configuration 11, which is the one tested with the AR.Drones, bringing a higher quality estimate. This is because there are 81% of the collided simulated flights with three MAVs ended a number of other limitations: within 0.5 m of the arena borders. By comparison, only 35% of collisions with two MAVs occurred within this space. This difference can also be appreciated visually in Fig. 13.An – The logarithmic decrease in RSSI makes it intrinsically example of a collision extracted from an AR.Drone flight is insufficient to measure changes in range at larger dis- recounted by the three events below (depicted in Fig. 21). tances. – RSSI disturbances in the environment cannot be fully 1. One MAV is at the corner and reluctant to make move- modeled unless the environment is known a-priori. ments towards the center, gathering an oscillatory behav- – The proposed process update equation makes the null ior. At time t = 180 s (Fig. 21a), we see this for the assumption that all velocities remain constant between bottom right AR.Drone (blue). Its slow speed causes the time-steps. Improvements may come from including red MAV to mistaken its estimate of the blue drone. more complex dynamic properties in the process equa- In normal conditions, collision avoidance could still be tion, such as acceleration and/or jerk. achieved by the blue MAV, but it cannot react as it is – As seen throughout our tests, improvements can come by trapped in the corner. improving the quality of on-board state estimates. 2. Another MAV turns towards the same side. In time t = 182 s (Fig. 21b), the central AR.Drone (red) avoids the Further investigations are encouraged to define a filter that black AR.Drone (on left) but in doing so goes to the right. lowers the expected error. 3. The second MAV also ends along the border and is reluc- We expect the main improvement to come from a change tant to make movements. At time t = 188 s (Fig. 21c), in communication hardware. In this work, we have achieved the two oscillate along the border until a collision occurs. promising results using Bluetooth, which was selected due to its prompt availability on several MAVs. The noise and dis- This scenario is less likely with two MAVs due to the larger turbances with Bluetooth ranging, however, are large. Other freedom of movement and the generally higher relative local- hardware, such as UWB, would offer a significant reduction ization accuracy. One method to limit this would be to reduce in noise, leading to better overall relative localization results. the angle of the collision cones for further away MAVs, Based on our simulations from Sect. 6.3, this should result increasing mobility. In the extreme, each MAV could only in improved collision avoidance. consider other MAVs within a close range. This could also 123 Autonomous Robots Fig. 21 Chronological depiction (left to right) of a collision case in a flight with 3 AR.Drones (large circles indicate the ground-truth position in the arena, the triangles are the collision cones that each AR.Drone holds). a Time = 180 s, b time = 182 s, c time = 188 s help to increase the scalability of the method, so that only tation has shown that it can work for small teams, but we a small amount of parallel filters need to run even for large cannot say whether it is the best solution as the size of the team sizes. Furthermore, it is also necessary to create an team grows. Furthermore, the introduction of an avoidance avoidance scheme that takes into account the wall and the strategy that makes a more informed decision near walls drones together. This shall be tackled in future work. or when multiple MAVs are present is needed. This could resolve the more complex collision scenarios, especially in smaller rooms. There is also on-going work to improve the miniaturized platforms to feature a front-facing camera, as 11 Conclusion and future work in (McGuire et al. 2017), and active wall-sensors, so as to achieve fully autonomous teams of MAVs capable of explor- We have shown that it is possible to use wireless commu- ing an unknown environment safely. nication as a relative localization sensor that can be used on-board of MAVs operating in a team. This leads to a large reduction in collisions without the need of a dedicated sensor. Videos With the solution proposed in this paper, teams of two and three AR.Drones could fly in a 4 m × 4 m area for minutes Videos of experiments are available at: https://www.youtube. without collisions, despite being prompted to fly towards the com/playlist?list=PL_KSX9GOn2P9f0qyWQNBMj7xpe1 center of the arena. This extreme test condition shows the HARSpc. high potential of our solution. The technology was also used with miniature drones, showing its portability. With respect to the scenario in mind (i.e. the exploration of indoor spaces Open Access This article is distributed under the terms of the Creative by MAV teams), this is an efficient method to limit collision Commons Attribution 4.0 International License (http://creativecomm ons.org/licenses/by/4.0/), which permits unrestricted use, distribution, risks in the event that MAVs end up flying in the same room. and reproduction in any medium, provided you give appropriate credit The combined relative localization/collision avoidance to the original author(s) and the source, provide a link to the Creative system as presented and tested in this paper will be further Commons license, and indicate if changes were made. improved in future work. Importantly, we will investigate UWB modules instead of Bluetooth modules. Using UWB is expected to considerably improve the distance measure- References ments used by the filter. The increase in accuracy could Afzal, M. H., Renaudin, V., & Lachapelle, G. (2011). Magnetic field enable more complex group behaviors, such as formation based heading estimation for pedestrian navigation environments. flight, and accommodate larger teams of MAVs. This can In 2011 international conference on indoor positioning and indoor extend the use of the system beyond the scope of this paper. navigation (IPIN) (pp. 1–10). IEEE. Larger teams intrinsically occupy larger areas, and UWB can Alvarez, H., Paz, L. M., Sturm, J., & Cremers, D. (2016). Collision avoidance for quadrotors with a monocular camera. In M. A. provide range measurements at larger distances without the Hsieh, O. Khatib, & V. Kumar (Eds.), Experimental Robotics: The degradation of Bluetooth RSSI. For true scalability to larger 14th International Symposium on Experimental Robotics (pp. 195– teams, there also needs to be a more detailed assessment 209). Cham: Springer International Publishing. https://doi.org/10. of the communication algorithm. Our STDMA implemen- 1007/978-3-319-23778-7_14. 123 Autonomous Robots Basiri, M. (2015). Audio-based positioning and target localization for Guo, K., Qiu, Z., Meng, W., Xie, L., & Teo, R. (2017). Ultra-wideband swarms of Micro Aerial Vehicles. Lausanne: EPFL. based cooperative relative localization algorithm and experiments Basiri, M., Schill, F., Floreano, D., & Lima, P.U. (2014). Audio-based for multiple unmanned aerial vehicles in GPS denied environ- localization for swarms of Micro Air Vehicles. In 2014 IEEE ments. International Journal of Micro Air Vehicles, 9(3), 169–186. international conference on robotics and automation (ICRA) (pp. https://doi.org/10.1177/1756829317695564. 4729–4734). IEEE. Ho, H., De Wagter, C., Remes, B., & de Croon, G. (2015). Optical-flow Basiri, M., Schill, F., Lima, P., & Floreano, D. (2016). On-board relative based self-supervised learning of obstacle appearance applied to bearing estimation for teams of drones using sound. IEEE Robotics MAV landing. arXiv preprint. arXiv:1509.01423. and Automation Letters, 1(2), 820–827. Kallapur, A., Petersen, I., & Anavatti, S. (2009). A discrete-time robust Beard, R. W. (2007). State estimation for Micro Air Vehicles. In J. S. extended kalman filter. In American control conference 2009. Chahl, L. C. Jain, & A. Mizutani (Eds.), Innovations in intelligent ACC’09 (pp. 3819–3823). IEEE. machines-1 (pp. 173–199). Berlin, Heidelberg: Springer. https:// Kendoul, F., Fantoni, I., & Nonami, K. (2009a). Optic flow-based vision doi.org/10.1007/978-3-540-72696-8_7. system for autonomous 3d localization and control of small aerial Brambilla, M., Ferrante, E., Birattari, M., & Dorigo, M. (2013). Swarm vehicles. Robotics and Autonomous Systems, 57(6), 591–602. robotics: A review from the swarm engineering perspective. Kendoul, F., Nonami, K., Fantoni, I., & Lozano, R. (2009b). An adaptive Swarm Intelligence, 7(1), 1–41. https://doi.org/10.1007/s11721- vision-based autopilot for mini flying machines guidance, naviga- 012-0075-2. tion and control. Autonomous Robots, 27(3), 165–188. Caron, C., Chamberland-Tremblay, D., Lapierre, C., Hadaya, P., Roche, Koenig, N., & Howard, A. (2004). Design and use paradigms for S., & Saada, M. (2008). Indoor positioning. Encyclopedia of gazebo, an open-source multi-robot simulator. In 2004 IEEE/RSJ GIS (pp. 553–559). Boston, MA: Springer, US. https://doi.org/ international conference on intelligent robots and systems, 2004. 10.1007/978-0-387-35973-1_626. Proceedings of (IROS 2004) (Vol. 3, pp. 2149–2154). IEEE. Choudhry, V., Singh, R., & Gehlot, A. (2017). RSSI-based indoor Kumar, V., & Michael, N. (2012). Opportunities and challenges with robot localization system using LabVIEW. In Proceeding of inter- autonomous micro aerial vehicles. The International Journal of national conference on intelligent communication, control and Robotics Research, 31(11), 1279–1291. devices (pp. 267–277). Singapore: Springer. https://doi.org/10. Kushki, A., Plataniotis, K. N., & Venetsanopoulos, A. N. (2008). Indoor 1007/978-981-10-1708-7_31. positioning with wireless local area networks (WLAN). Encyclo- Conroy, P., Bareiss, D., Beall, M., van den Berg, J. (2014). 3-D pedia of GIS (pp. 566–571). Boston, MA: Springer, US. https:// reciprocal collision avoidance on physical quadrotor helicopters doi.org/10.1007/978-0-387-35973-1_629. with on-board sensing for relative positioning. arXiv preprint Ledergerber, A., Hamer, M., & D’Andrea, R. (2015). A robot self- arXiv:1411.3794. localization system using one-way ultra-wideband communica- Cornejo, A., & Nagpal, R. (2015). Distributed range-based relative tion. In 2015 IEEE/RSJ international conference on intelligent localization of robot swarms. In H. L. Akin, N. M. Amato, V. robots and systems (IROS) (pp. 3131–3137). IEEE. Isler, & A. F. van der Stappen (Eds.), Algorithmic Foundations of Lehnert, C., & Corke, P. (2013). μAV—Design and implementation of Robotics XI: Selected Contributions of the Eleventh International an open source micro quadrotor. In J. Katupitiya, J. Guivant, & R. Workshop on the Algorithmic Foundations of Robotics (pp. 91– Eaton (Eds.), Australasian Conference on Robotics and Automa- 107). Cham: Springer International Publishing. https://doi.org/10. tion (ACRA2013) (pp. 1–8). University of New South Wales, 1007/978-3-319-16595-0_6. Syndney: Australian Robotics & Automation Association. https:// De Silva, O., Mann, G. K. I., & Gosine, R. G. (2014). Relative local- eprints.qut.edu.au/66625/. ization with symmetry preserving observers. In 2014 IEEE 27th Li, H., Almeida, L., Wang, Z., & Sun, Y. (2007). Relative posi- Canadian conference on electrical and computer engineering tions within small teams of mobile units. In Proceedings of the (CCECE) (pp. 1–6). IEEE. 3rd international conference on mobile Ad-hoc and sensor net- Dekking, F. M. (2005). A modern introduction to probability and statis- works. MSN’07 (pp. 657–671). Berlin: Springer. http://dl.acm.org/ tics: Understanding why and how. Berlin: Springer. citation.cfm?id=1781974.1782041. Delcourt, J., Bode, N. W. F., & Denol, M. (2016). Collective vortex Lijina, P., & Nippun Kumaar, A. A. (2016). Bluetooth RSSI based behaviors: Diversity, proximate, and ultimate causes of circular collision avoidance in multirobot environment. In 2016 interna- animal group movements. The Quarterly Review of Biology, 91(1), tional conference on advances in computing, communications and 1–24. https://doi.org/10.1086/685301. pMID: 27192777. informatics (ICACCI) (pp. 2168–2174). https://doi.org/10.1109/ Drouin, A., & Muller, M. (2007). Paparazzi—the free autopilot : ICACCI.2016.7732373. Build your own UAV. In CCC 2007, 24th Chaos communication Malyavej, V., Kumkeaw, W., & Aorpimai, M. (2013). Indoor robot congress, Berlin: Germany. https://hal-enac.archives-ouvertes.fr/ localization by RSSI/IMU sensor fusion. In 2013 10th interna- hal-00938858. Accessed Apr 2016. tional conference on electrical engineering/electronics, computer, Faigl, J., Krajník, T., Chudoba, J., Pˇreucil, ˇ L., & Saska, M. (2013). Low- telecommunications and information technology (ECTI-CON) (pp. cost embedded system for relative localization in robotic swarms. 1–6). IEEE. In 2013 IEEE international conference on robotics and automation Martinelli, A., & Siegwart, R. (2005). Observability analysis for mobile (ICRA) (pp. 993–998). IEEE. robot localization. In 2005 IEEE/RSJ international conference Fiorini, P., & Shiller, Z. (1998). Motion planning in dynamic envi- on intelligent robots and systems, (IROS 2005) (pp. 1471–1476). ronments using velocity obstacles. The International Journal of IEEE. Robotics Research, 17(7), 760–772. Martinelli, A., Pont, F., & Siegwart, R. (2005). Multi-robot localiza- Gaugel, T., Mittag, J., Hartenstein, H., Papanastasiou, S., & Ström, tion using relative observations. In Proceedings of the 2005 IEEE E. G. (2013). In-depth analysis and evaluation of self-organizing international conference on robotics and automation, 2005. ICRA TDMA. In 2013 IEEE vehicular networking conference (pp. 79– 2005 (pp. 2797–2802). IEEE. 86). https://doi.org/10.1109/VNC.2013.6737593. McGuire, K., de Croon, G., de Wagter, C., Remes, B., Tuyls, K., & Guo, K., Qiu, Z., Miao, C., Zaini, A. H., Chen, C. L., Meng, W., et al. Kappen, H. (2016). Local histogram matching for efficient optical (2016). Ultra-wideband-based localization for quadcopter naviga- flow computation applied to velocity estimation on pocket drones. tion. Unmanned Systems, 04(01), 23–34. https://doi.org/10.1142/ In 2016 IEEE international conference on robotics and automa- S2301385016400033. 123 Autonomous Robots tion (ICRA) (pp. 3255–3260). https://doi.org/10.1109/ICRA.2016. Scaramuzza, D., Achtelik, M. C., Doitsidis, L., Friedrich, F., Kos- 7487496. matopoulos, E., Martinelli, A., et al. (2014). Vision-controlled McGuire, K., de Croon, G., Wagter, C. D., Tuyls, K., & Kappen, H. micro flying robots: From system design to autonomous navigation (2017). Efficient optical flow and stereo vision for velocity esti- and mapping in gps-denied environments. IEEE Robotics Automa- mation and obstacle avoidance on an autonomous pocket drone. tion Magazine, 21(3), 26–40. https://doi.org/10.1109/MRA.2014. IEEE Robotics and Automation Letters, 2(2), 1070–1076. https:// 2322295. doi.org/10.1109/LRA.2017.2658940. Seybold, J. S. (2005). Introduction to RF propagation. Hoboken: Wiley. Meyer, J., Sendobry, A., Kohlbrecher, S., Klingauf, U., & Von Stryk, O. Shilov, K. (2014). The next generation design of autonomous MAV (2012). Comprehensive simulation of quadrotor UAVS using ROS flight control system SMARTAP. In IMAV 2014: International and gazebo. In International conference on simulation, modeling, Micro Air Vehicle conference and competition 2014 Delft Univer- and programming for autonomous robots (pp. 400–411). Berlin: sity of Technology: Delft, The Netherlands, August 12–15, 2014. Springer. Silicon Labs (2016). Bled112 bluetooth smart dongle. https://www. Michael, N., Mellinger, D., Lindsey, Q., & Kumar, V. (2010). The grasp bluegiga.com/en-US/products/bled112-bluetooth-smart-dongle. multiple micro-uav testbed. IEEE Robotics and Automation Mag- Accessed Feb 2016. azine, 17(3), 56–65. Snape, J., Berg J, van den., Guy, S. J., & Manocha, D. (2009). Indepen- Min, S., & Nam, H. (2016). A formation flight control of UAVS using dent navigation of multiple mobile robots with hybrid reciprocal zigbee. In 2016 13th international conference on ubiquitous robots velocity obstacles. In IEEE/RSJ international conference on intel- and ambient intelligence (URAI) (pp. 163–165). https://doi.org/10. ligent robots and systems, IROS 2009 (pp. 5917–5922). IEEE. 1109/URAI.2016.7625728. Snape, J., van den Berg, J., SJ, G., & Manocha, D. (2011). The hybrid Mulgaonkar, Y., Cross, G., & Kumar, V. (2015). Design of small, safe reciprocal velocity obstacle. IEEE Transactions on Robotics, and robust quadrotor swarms. In 2015 IEEE international confer- 27(4), 696–706. ence on robotics and automation (ICRA) (pp. 2208–2215). IEEE. Sveck ˇ o, J., Malajner, M., & Gleich, D. (2015). Distance estimation Nägeli, T., Conte, C., Domahidi, A., Morari, M., & Hilliges, O. (2014). using rssi and particle filter. ISA Transactions, 55, 275–285. Environment-independent formation flight for micro aerial vehi- Szabo, T. (2015). Autonomous collision avoidance for swarms of MAVS cles. In 2014 IEEE/RSJ international conference on intelligent based solely on RSSI measurements. Master’s thesis Delft Univer- robots and systems (IROS 2014) (pp. 1141–1146). IEEE. sity of Technology: Delft. Nguyen, K., & Luo, Z. (2013). Evaluation of bluetooth properties for Townsend, K., Cufí, C., Akiba, & Davidson, R. (2014). Getting started indoor localisation. In Progress in Location-Based Services (pp. with Bluetooth low energy: Tools and techniques for low-power 127–149). Berlin: Springer. networking. O’Reilly Media, Inc. No, H., Cho, A., & Kee, C. (2015). Attitude estimation method for Van Den Berg, J., Guy, S. J., Lin, M., & Manocha, D. (2011). Recipro- small UAV under accelerative environment. GPS Solutions, 19(3), cal n-body collision avoidance. In Robotics research (pp. 3–19). 343–355. Berlin: Springer. Parrot (2012). AR Drone 2.0. http://ardrone2.parrot.com. Accessed Apr Vásárhelyi, G., Virágh, C., Somorjai, G., Tarcai, N., Szörényi, T., 2016. Nepusz, T., & Vicsek, T. (2014). Outdoor flocking and forma- Powers, C., Mellinger, D., Kushleyev, A., Kothmann, B., & Kumar, tion flight with autonomous aerial robots. In 2014 IEEE/RSJ V. (2013). Influence of aerodynamics and proximity effects in international conference on intelligent robots and systems (pp. quadrotor flight. In J. P. Desai, G. Dudek, O. Khatib, & V. 3866–3873). IEEE. Kumar (Eds.), Experimental Robotics: The 13th International Virágh, C., Nagy, M., Gershenson, C., & Vásárhelyi, G. (2016). Self- Symposium on Experimental Robotics (pp. 289–302). Heidelberg: organized UAV traffic in realistic environments. In 2016 IEEE/RSJ Springer International Publishing. https://doi.org/10.1007/978-3- international conference on intelligent robots and systems (IROS) 319-00065-7_21. (pp. 1645–1652). https://doi.org/10.1109/IROS.2016.7759265. Pulse (2008). W1049b datasheet version 1.1. Accessed November 2015 Wilkie, D., Berg, J., & Van den Manocha, D. (2009). Generalized veloc- from www.cdiweb.com/datasheets/pulse/W1049B.pdf. ity obstacles. In IEEE/RSJ international conference on intelligent Quigley, M., Conley, K., Gerkey, B., Faust, J., Foote, T., Leibs, J., robots and systems, IROS 2009 (pp. 5573–5578). IEEE. Wheeler, R., & Ng, A. Y. (2009). ROS: An open-source robot oper- ating system. In ICRA workshop on open source software (Vol. 3, Mario Coppola is a Ph.D. can- p. 5). didate at the Delft University of Remes, B., Esden-Tempski, P., Van Tienen, F., Smeur, E., De Wagter, Technology, the Netherlands. He C., & De Croon, G. (2014). Lisa-S 2.8 g autopilot for GPS-based is a part of the department of flight of MAVs. In IMAV 2014: international Micro Air Vehicle Control and Simulation as well as conference and competition 2014 Delft University of Technology: the department of Space Systems Delft, The Netherlands. August 12–15, 2014. Engineering. His research is on Roberts, J. F., Stirling, T., Zufferey, J. C., & Floreano, D. (2012). 3-d the design of autonomous robot relative positioning sensor for indoor flying robots. Autonomous swarms with a focus on meth- Robots, 33(1–2), 5–20. ods to develop local agent con- Roelofsen, S., Gillet, D., & Martinoli, A. (2015). Reciprocal collision trollers that reach a global objec- avoidance for quadrotors using on-board visual detection. In 2015 tive. He received his M.Sc. in IEEE/RSJ international conference on intelligent robots and sys- 2016 in Aerospace Engineering tems (IROS) (pp, 4810–4817). IEEE. from the same university. His Sabatini, A. M., & Genovese, V. (2013). A stochastic approach to research interests lie in autonomo- noise modeling for barometric altimeters. Sensors, 13(11), 15,692– us robotics, artificial intelligence, and swarms. 15,707. Sasiadek, J., & Wang, Q. (1999). Sensor fusion based on fuzzy kalman filtering for autonomous robot vehicle. In 1999 IEEE international conference and proceedings on robotics and automation (Vol. 4, pp. 2970–2975). IEEE. 123 Autonomous Robots Guido C. H. E. de Croon received Kimberly N. McGuire is a Ph.D. his M.Sc. and Ph.D. in the field candidate at the faculty of Aero- of Artificial Intelligence at Maas- space Engineering of the Delft tricht University, the Netherlands. University of Technology, concen- His research interest lies with trated in autonomous navigation computationally efficient algorith- on lightweight pocket drones at ms for robot autonomy, with a theMAVlab. Shehas abroad particular focus on computer research-interest in embodied vision and evolutionary robotics. intelligence for robotics, in both From 2011–2012 he worked as autonomous navigation and cog- a Research Fellow in Artificial nition. In 2012 she received her Intelligence at the European Space B.Sc. degree in Industrial Design Agency. Since 2013, he is an Assi- Engineering and her M.Sc. degree stant-Professor at the Micro Air in the field of Mechanical Engi- Vehicle lab of Delft University of neering in 2014 at the Delft Uni- Technology, the Netherlands. versity of Technology, specialized in biologically inspired robotics. Kirk Y. W. Scheper received his M.Sc. from the faculty of Aero- space Engineering at Delft Uni- versity of Technology in 2014. Since then, he has been a Ph.D. candidate in the Micro Air Vehi- cle Laboratory at the same univer- sity. His research focuses on the development of embedded soft- ware which facilitates high level autonomy of micro air vehicles. His work is mainly in the fields of evolutionary robotics, embod- ied cognition, and vision-based navigation.

Journal

Autonomous RobotsSpringer Journals

Published: May 2, 2018

References

You’re reading a free preview. Subscribe to read the entire article.


DeepDyve is your
personal research library

It’s your single place to instantly
discover and read the research
that matters to you.

Enjoy affordable access to
over 18 million articles from more than
15,000 peer-reviewed journals.

All for just $49/month

Explore the DeepDyve Library

Search

Query the DeepDyve database, plus search all of PubMed and Google Scholar seamlessly

Organize

Save any article or search result from DeepDyve, PubMed, and Google Scholar... all in one place.

Access

Get unlimited, online access to over 18 million full-text articles from more than 15,000 scientific journals.

Your journals are on DeepDyve

Read from thousands of the leading scholarly journals from SpringerNature, Elsevier, Wiley-Blackwell, Oxford University Press and more.

All the latest content is available, no embargo periods.

See the journals in your area

DeepDyve

Freelancer

DeepDyve

Pro

Price

FREE

$49/month
$360/year

Save searches from
Google Scholar,
PubMed

Create lists to
organize your research

Export lists, citations

Read DeepDyve articles

Abstract access only

Unlimited access to over
18 million full-text articles

Print

20 pages / month

PDF Discount

20% off