Journal of Robotics
Volume 2015 (2015), Article ID 763710, 11 pages
http://dx.doi.org/10.1155/2015/763710

Research Article

Unified Switching between Active Flying and Perching of a Bioinspired Robot Using Impedance Control

Shanshan Du,¹ Heping Chen,² Yong Liu,¹ and Runting Hu¹

¹School of Computer Science and Engineering, Nanjing University of Science and Technology, Nanjing 210094, China
²Ingram School of Engineering, Texas State University, San Marcos, TX 78666, USA

Received 23 January 2015; Revised 19 June 2015; Accepted 20 August 2015

Academic Editor: Maki K. Habib

Copyright © 2015 Shanshan Du et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

Currently, a bottleneck problem for battery-powered microflying robots is time of endurance. Inspired by flying animal behavior in nature, an innovative mechanism with active flying and perching in the three-dimensional space was proposed to greatly increase mission life and more importantly execute tasks perching on an object in the stationary way. In prior work, we have developed some prototypes of flying and perching robots. However, when the robots switch between flying and perching, it is a challenging issue to deal with the contact between the robot and environment under the traditional position control without considering the stationary obstacle and external force. Therefore, we propose a unified impedance control approach for bioinspired flying and perching robots to smoothly contact with the environment. The dynamic model of the bioinspired robot is deduced, and the proposed impedance control method is employed to control the contact force and displacement with the environment. Simulations including the top perching and side perching and the preliminary experiments were conducted to validate the proposed method. Both simulation and experimental results validate the feasibility of the proposed control methods for controlling a bioinspired flying and perching robot.

1. Introduction

With the increasing missions requirements in the air space, the flying robots have been widely used in all kinds of fields. In the military fields, flying robots are mainly developed for reconnaissance and surveillance, communication relay, and electronic interference, as well as biochemical detection. In the civil aspects, they are employed to accomplish atmospheric monitoring, resource exploration, traffic monitoring, aerial photography, and so on [1–3]. For such applications, flying robots are difficult to meet the requirement because of their low power efficiency. For example, the requirement of the surveillance missions mostly needs to take more than one hour; however, current flying robots have to keep flying which decreases the endurance of battery dramatically. Typical battery-powered microflying robots can only fly in tens of minutes. Thus, power consumption for flying robots is a challenging issue.

An attractive approach is to enable the flying robots to do what flying animals do: taking frequent short flights with periods of perching in between. The energy efficiency of such animals is much higher than that of flying robots.

In particular, it is useful for small fixed-wing planes to perch on vertical surfaces such as cliffs or the walls of buildings [4]. Clinging to such surfaces, they consume little power, allowing them to stay there for hours or possibly days as a stable platform for surveillance, inspection, or environmental monitoring. But the application is greatly limited on the brick walls and the process is hardly controllable.

Anderson et al. have proposed various ideas for perching, such as perching with adhesives and weighted tail line [5]. Kovač et al. have designed a simple and practical perching mechanism based on the concept of the target surface using needles [6]. Chi et al. have proposed a design of bioinspired adaptive perching mechanism, and it mainly focused on the static characteristics [7]. Still other works have focused on performing perching maneuvers using a morphing airplane [8, 9].

However, existing methods focus on passive way to perch on the surface. Although they consume little or no power, switching processes are not stable and uncontrollable, the payload is too small, or specified objects are required so that the applications are greatly limited in laboratory. The flying and perching robot, which can fly in the sky and anchor on a wall surface alternately, has the advantages of both long distance motion with the ability to overcome obstacles and long time stop with low energy consumption. In our prior work, prototypes of active flying and perching robots we proposed [10, 11], as shown in Figure 1, are promising in many applications. Figure 1(a) is the phototype of our developed generation one top perching robot adsorbed on the ceiling and mechanism of the adsorption device is based on vortex attraction technique. This mechanism allows the robot to adsorb on various smooth and rough surfaces. Figure 1(b) is the side perching robot perching on the window glass.

(a)

(b)

Figure 1: The developed robot prototypes. (a) is top perching robot with an adsorption device consisting of motor, spinning rotor, fixture, and flexible sponge skirt seal. (b) is side perching with suction cup driven by micropump.

The existing challenging issue is to control the switching process between flying and perching on an object surface that may cause robots breakdown. Traditional position control methods [12–14] of the flying robot do not consider the force and the displacement constraint from the environment. When the robot contacts with the environment, because a force balance has been broken and a stationary obstacle appears, the original dynamic model, the planed trajectory, and the position controller will be completely ineffective. The approach we employed before is to make the robot approach the environment at certain velocity; thus, the external force will be compensated. But the problem is that it is difficult to decide how much velocity should be given to the robot. If it is too large, it could hit the environment and damage the robot; but if it is too small, its attitude will be changed by the external force, and robots cannot generate the enough force for adsorption. In this paper, we propose a model based impedance control method to address the issue for the bioinspired active flying and perching robot. The control system performs not only position and attitude control but also force control in order to interact with the environment. Force control of robotic manipulators has been an active area of research for many reasons [15–18]. We extend the impedance control to our developed active flying and adhesion robot control system, which has an active adsorption device and the adhesion force and switching process are controllable so that it is suitable for all kinds of objects surfaces and applications.

This paper is structured as follows. In Section 2, the strategy of the bioinspired flying and perching robot is introduced and the dynamic model of the robot is described, especially considering the situation that the mass center and the geometric center may not be coincident. In Section 3, impedance force control system of the robot is designed and analyzed. In Section 4, simulations for top perching and side perching and experiments based on the prototype we developed were performed. The results are analyzed. Section 5 concludes the work and discusses future directions of our research.

2. Robot Dynamics

2.1. The Strategy

The motivation for our design is that the robot could execute the missions with the ability of flying and the ability of actively perching on most objects surfaces in the three-dimension space with more payloads and obstacle-free under lower power consumption. The general sequence of the bioinspired active flying and perching robot, illustrated in Figure 2, is as follows: (1) fly in the sky, (2) approach the target perching object surface, (3) contact the environment and regulate the contact force to achieve desired contact force, (4) adsorption device in the robot starts to work and make it adhere to the object surface steadily, (5) stop flying and anchor on the object surface with low power consumption, (6) execute the missions such as reconnaissance and surveillance, and (7) switching from the perching to flying is an inverse process.

Figure 2: Top perching and side perching: the robot performs several phases when switching from flying to perching. The top perching robot equipped with a quadrotor and suction cup flies to the ceiling and hangs on the ceiling. (a) Top perching approaching step, (b) top contact step, and (c) top perching rest step. The side perching robot with suction cup flies and perches on the wall. (d) Side perching approaching step, (e) side contact step, and (f) side perching rest step.

The focus of our work in the paper is the interaction with environment in step (3) and the goal of the step is to control the bioinspired robot switch between the flying and the perching actively and smoothly in natural way like a flying animal behavior.

2.2. Dynamics Model

The generalized coordinates of the robot system are (, , , , , ) where (, , ) represents the relative position with respect to an inertial frame and (, , ) represents the orientation of the robot using -- Euler angles, namely, yaw, pitch, and roll. Let denote the inertial frame and the body frame. The frame is related to by a 3 by 3 coordinate rotation matrix , which is defined to map a vector expressed in the frame to the equivalent vector expressed in the frame . The translational and rotational variables are defined as and , respectively, shown in Figure 3. The rotation matrix is given by

Figure 3: Free body diagram and coordinate systems.

The th rotor has an angular speed and generates a force and moment according to

where is force stiffness and is moment stiffness.

The position vectors of the center of mass in frame and geometric center in frame are related to the geometric relationship according to

where are offsets of the center of mass in frame , which is calculated by the system design. The linear velocity of geometric center of the robot in the frame is expressed as follows:

And the angular velocity of the robot body frame in the inertial frame is denoted by , with the components , , and in the body frame . The dynamic model of the bioinspired robot can be written in the position subsystem by Newton’s equation of motion acting on the geometric center

and in the rotational subsystem by Euler equation

The force vector can be calculated:

where is the system control input which can be defined using the total thrust and the torques is the total mass of the rotor system; is the mass of the battery and perching device; is the moment of inertia matrix referenced to the center of mass along the -, -, and -axis in the frame . is the external force.

The two terms and in (5) can be compensated by the feedback. This is because these terms are generally small relative to other terms in practice [19]. Meanwhile, for the side perching robot, the asymmetry is mainly caused by the installation of the perching device. Therefore, the disequilibrium is primarily made along the X and Y directions.

In summary, the dynamic equation in the inertial frame under the assumption of neglecting Coriolis terms and gyroscopic effects yields

where , , ,

There are six variables to represent the system; we have only four inputs. Therefore, the system is an underactuated system. Since the motor response is quick compared to that of the robotic system, we assume that rotor speed response can be instantly achieved during the controller development. Therefore, the control inputs can be expressed in terms of the rotor speeds as follows:

where is the distance from the rotational axes of the rotors to the center of the robot. is the translational matrix. The angular speed of each rotor can be calculated using (11) and (12).

3. Impedance Control

In this section, in order to let the robot fly to a desired perching object, contact the object surface with a desired force, and adsorb on a surface steadily, the impedance controller for this underactuated bioinspired flying and perching robot is introduced.

Direct application of traditional position controller designed for free space robot motion usually results in instability and eventually lets the robot break down when the robot is in contact with environment, because this controller ignores the interaction between the robot and the environment, which may generate external force and displacement block. Impedance control allows us to deal with the external force and displacement simultaneously under interaction with the environment. The inclusion of force information in the control of this kind of bioinspired flying and perching robots will increase their adaptability to uncertain environments and provide safety against damage due to excessive contact force.

Suppose and are the desired robot motion and interaction force, and is assumed to be twice continuously differentiable. Let

be the tracking errors of motion and the interaction force, respectively; the impedance control law can be described as

where the generalized impedance parameters , , and are specified as positive definite diagonal matrices and is the force stiffness matrix.

Following (14), the controller can yield based on some different situations.

Case 1. In the free space control, the control law can be obtained as follows:

Note that when the desired force is set to zero and , then the robot is under position control:

Then, the desired total thrust and desired attitude , , can be also obtained using (8) and (9).

Case 2. When the robot comes close to the environment, we hope it can produce a steady force against the external environment; the control law can be obtained as follows:

Case 3. The special case of Case 2 is used for the top perching; in this case, the direction of is controlled by impedance control and the other two directions are controlled by position control. Combining the control laws (20) and (12), impedance controller in the direction of can be obtained:

4. Simulation and Experiment

4.1. System Setup

To accomplish some missions such as reconnaissance and surveillance, the robot is required to carry a certain payload, adsorb on a surface actively, and spend low power consumption. Figure 4 shows the real bioinspired side perching robot we have designed and developed. The prototype of the bioinspired flying and perching robot is based on the quadrotor structure [20], which also includes an adsorption device, a supporting structure, and an embedded controller. The perching device we employed here is based on vacuum generated by micropumps which mainly depends on a membrane, which is characterized with low power consumption, low noise, and light weight. Meanwhile, it can be very convenient to be installed due to its small size. The supporting system, on the one hand, is used to improve the payload when the robot anchors on a wall surface; meanwhile, it plays a role in protection; on the other hand, is equipped with a spring and potentiometer, which can be used to measure the contact force as feedback.

Figure 4: The prototype of the side perching robot. (a), (b), and (c) are views of local components of the robot showing the details when it rests on the wall. A suction cup seals with the wall which generates the vacuum chamber. The supporting system shown in (b) is well designed to provide more payload. A slider structure with spring and potentiometer is well designed to measure the external force.

Figure 5 shows the control block diagram of the torque-based force control system for simulation. Two kinds of simulations were performed: top perching and side perching. Table 1 lists the parameters of the bioinspired robot used for simulation. The impedance parameters are shown in Table 2, where is for the situation of top perching.

Table 1: Parameters of the robot system.

Variables
Values

Total mass [Kg]
0.65

Micropump mass [Kg]
0.15

Frame size [cmcm]

Mass center offsets [cm] [grams]
(4, 4, 0)

Angle between suction cup and lateral rotors [rad]

Table 2: Impedance parameters.

Figure 5: System schematic for impedance control system.

In the simulation, the impedance control block uses the relationship of displacement error and force error (14) to calculate the new control variable. In the top perching, only the vertical force and displacement are considered; there are no displacement and movement in the other directions. And the total thrust and angles in the second block are calculated by using (8) and (18). Torque from attitude angle is calculated using (9) and then the four rotor speeds are calculated according to the torque and the four thrust forces in (11) and are output to robot system block.

In the real system, the feedback data comes from the measurement of sensors, but in the simulation, inverse kinematics are used to simulate the movement of the robot. The force generated by four rotors is calculated based on the proportional relationship. The displacement and attitude angle are computed by integration. Because the data is obtained by virtual computing instead of collecting from real system, without taking into account the system error, the ideal result should be completely tracking the desired data. In simulation system, according to the real system, the sampling time is set to 0.01 s.

To verify the reliability and stability, without loss of generality, we add noise into simulation, which exists in real system. In the sensor block, we put white Gaussian noise into the block.

4.2. Top Perching

The robot is controlled to adhere to the ceiling of a room. The deviation is added to the nominal values of all parameters shown in Table 1. White noises are also deployed in the sensor measurement to simulate the real situation. The desired motion trajectory along the Z direction is given as follows (the unit is m):

And the desired force is given:

where is preset by the stiffness of the environment.

Figures 6 and 7 show the impedance control simulation results for the top perching. During the free flight, the robot tracks the desired position to approach the environment. Because the parameter uncertainties are added to the system, the maximum tracking error is about 2.3 cm. In the free space, the desired force is set to zero. The robot starts to contact with the ceiling at around 10 s and follows the desired force reference very well from Figure 7. The maximum force error is about 0.4 N and stabilized at 0.2 N. Figure 6 shows the position tracking result along the Z direction. After 12 s, the system settled down and the tracking error is about 0.2 cm.

Figure 6: Position tracking error along the Z direction.

Figure 7: Force tracking error along the Z direction.

4.3. Evaluation

The traditional one of control techniques tracking a desired motion trajectory for quadrotors is PD controller. An investigation is conducted to evaluate the performance of the developed impedance control and PD controller while performing the top perching which is the same as Section 4.2. During step (3) of contact with the environment, the flying robot will encounter the ceiling of high stiffness at a position about 9.8 m from the ground. The position tracking error and the interaction force along the direction are shown in Figures 6, 7, 8(a), and 8(b), respectively. The larger interaction force is generated with the pure position PD control. The measured force continues to increase at the time of 11 seconds where = 33 N which will cause the flying robot to fall down. The results demonstrate that the impedance control can handle the external contact without generating excessive interaction forces.

(a)

(b)

Figure 8: (a) Position tracking errors along the z-axis. (b) The interaction force along the z-axis.

4.4. Side Perching

The desired trajectory is as follows:

And the desired force is given:

The robot is controlled to perform side perching following the planned trajectory and force reference.

The parameter deviation and white noise are also added to the system. The perching device is placed in the center of -axis and -axis, so the desired trajectory along the X direction and Y direction is the same as that along the Z direction in the top perching. The desired trajectory along the Z directions is 0. The desired force is the same as that used in the top perching. In the side perching, the tracking errors along both the x-axis and y-axis are generated because the robot has to tilt a little bit to approach a side wall in a room. There are also orientation tracking errors. Figure 9 shows the tracking errors along the X and Y directions.

(a)

(b)

Figure 9: Position tracking errors: (a) along the x-axis, (b) along the y-axis.

Because it is more challenging to make the robot perching on the side wall, the force tracking error is bigger than that in the top perching. Figure 10 shows the force tracking error. The maximum tracking error is about 1 N. The orientation errors are also recorded and shown in Figures 11 and 12. The maximum orientation tracking error is about 0.05 rad.

Figure 10: Force tracking error.

Figure 11: The orientation tracking error phi.

Figure 12: The orientation tracking error theta.

4.5. Sensors Testing

The ultrasonic sensors are employed to measure the distance between the quadrotor and the target object surface and some experiments are conducted on different materials to test the performance of the ultrasonic sensor; the experimental results of different materials using US-100 are shown in Table 3.

Table 3: US-100 testing results for different materials.

Distance (mm)
Wood
Glass
Foam
Plastic
Sponge
Iron

50
55
56
60
60
550
55

100
106
106
105
102
890
106

150
156
157
156
151
260
156

200
205
157
156
151
260
156

300
300
302
299
299
320
301

500
500
504
501
501
520
498

Although there is a certain deviation between the measured results and the actual distance, but the deviation is within a small range (except that a material has a good ability to absorb ultrasonic wave such as sponge); the cause of the deviation is that an ultrasonic transmitter and receiver sensors are in the interior, while the distance is measured by the front end of the ultrasonic sensor.

In order to get the feedback of force, a dynamometer is well designed and developed by ourselves, which contains a spring and sliding fixture. The contact force between the suction cup and the wall is measured by mapping the relationship between the force and the voltage changed with the displacement. Figure 13 shows the mapping relationship between the voltage value and the force value.

Figure 13: The mapping results between voltage and force.

Through Figure 13, we can conclude that the force and the displacement are a linear relationship. When the spring wire diameter is 0.8 cm in diameter and 3.5 cm in length, the mapping formulation is as follows:

where is the measured force and is the measured voltage which is linear with the displacement of the dynamometer.

4.6. Switching Control Testing

To test the switching strategy and also simplify the testing preparation, the structure with a spring and slider fixture, called dynamometer, is developed to link the quadrotor and the suction cup. From the mapping results for the dynamometer, the relationship between the displacement and the force is linear during the contact process. So the impedance control could be yielded as position control. We let the robot take off from the ground and perch on a ceiling which is about 3 meters high. The trajectory is planned in the manual way. The experimental results are shown in Figure 14. The robot can fly in the free space and approach the target position of the ceiling. The system can handle the external force when the robot pushes the ceiling. The rotors stop running after the robot perches on the ceiling; during this stage, the power consumption is very lower because the vacuum pump starts to work instead of the quad rotors. The whole switching process for top perching is very smooth and stable so that it verifies the effectiveness of the method and the developed actively flying and perching robot. When the robot leaves the ceiling, note that the robot needs to start to run the rotors to produce the force to support the gravity of the body before the adhesion force will be released. Currently, the robot needs struggle with the adhesion force because of the residual negative pressure even if the vacuum pump stopped working. A valve which connects the inner cup with outer air will be added to solve the issue. One could also think about a further work here: implement the control algorithm and plan the trajectory in the autonomous way. But this would require new hardware support and is undergoing.

(a)

(b)

(c)

(d)

(e)

Figure 14: A group of sequences of experimental results of the top perching robot adsorbing on a ceiling. (a) Fly in the sky, (b) approach the ceiling and adsorb on the ceiling, (c) stop flying and perch on the ceiling, (d) start to fly from the nest, and (e) fly again in the sky.

5. Conclusions and Future Work

The bioinspired active flying and perching robot has many applications and market potentials because it can increase the time of endurance greatly, about ten times and even hundreds of times longer than typical battery-powered flying robots. However, it is difficult to control the switching of the robot we have built in natural way like a flying animal because of the unexpected external force. The impedance force control method is developed to enable the robot to approach a desired position and handle the contact force with the environment smoothly until the adsorption device perches on the object surface steadily. Simulations and preliminary experiments were performed to evaluate the performance of the position and force tracking, which demonstrate the effectiveness of the proposed methods. In the future work, further experiments will be conducted on the developed platform using the proposed method and comparing the performance to realize an autonomous and robust switching between flying and perching. Meanwhile, the micro wireless camera may be mounted on the robot to do some tasks with the use of image processing. Furthermore, other sensors will be integrated to control the system to accomplish more complex missions.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

This work was supported in part by National Natural Science Foundation of China under Grants 61473155 and 61175082, Jiangsu Prospective Joint Research Project under Grants BY2013046, and Lianyungang Joint Research Project under Grants CXY1310.

References

P. E. Rybski, N. P. Papanikolopoulos, S. A. Stoeter et al., “Enlisting rangers and scouts for reconnaissance and surveillance,” IEEE Robotics & Automation Magazine, vol. 7, no. 4, pp. 14–24, 2000.

E. Krotkov and J. Blitch, “The defense advanced research projects agency (DARP) tactical mobile robotics program,” International Journal of Robotics Research, vol. 18, no. 7, pp. 769–776, 1999.

P. Castillo, A. Dzul, and R. Lozano, “Real-time stabilization and tracking of a four-rotor mini rotorcraft,” IEEE Transactions on Control Systems Technology, vol. 12, no. 4, pp. 510–516, 2004.

A. L. Desbiens and M. R. Cutkosky, “Landing and perching on vertical surfaces with microspines for small unmanned air vehicles,” in Selected Papers from the 2nd International Symposium on UAVs, Reno, Nevada, U.S.A. June 8–10, 2009, pp. 313–327, Springer, Dordrecht, The Netherlands, 2010.

M. L. Anderson, C. J. Perry, B. M. Hua et al., “The sticky-pad plane and other innovative concepts for perching UAVs,” in Proceedings of the 47th AIAA Aerospace Sciences Meeting, Orlando, Fla, USA, January 2009.

M. Kovač, J. Germann, C. Hürzeler, R. Y. Siegwart, and D. Floreano, “A perching mechanism for micro aerial vehicles,” Journal of Micro-Nano Mechatronics, vol. 5, no. 3-4, pp. 77–91, 2009.

W. Chi, K. H. Low, K. H. Hoon, J. Tang, and T. H. Go, “A bio-inspired adaptive perching mechanism for unmanned Aerial Vehicles,” Journal of Robotics and Mechatronics, vol. 24, no. 4, pp. 642–648, 2012.

P. G. Backes, Y. Bar-Cohen, and B. Joffe, “The multifunction automated crawling system (MACS),” in Proceedings of the IEEE International Conference on Robotics and Automation, vol. 1, pp. 335–340, Albuquerque, NM, USA, April 1997.

A. Wickenheiser and E. Garcia, “Perching aerodynamics and trajectory optimization,” in 14th International Symposium on Smart Structures and Materials & Nondestructive Evaluation and Health Monitoring, vol. 6525 of Proceedings of SPIE, International Society for Optics and Photonics, April 2007.

Y. Liu, G. Sun, and H. Chen, “A micro robot with the ability of fly and adhesion: development and experiment,” in Proceedings of the IEEE International Conference on Robotics and Biomimetics (ROBIO '11), pp. 2413–2414, December 2011.

Y. Liu, H. Chen, Z. Tang, and G. Sun, “A bat-like switched flying and adhesive robot,” in Proceedings of the IEEE International Conference on Cyber Technology in Automation, Control, and Intelligent Systems (CYBER '12), pp. 92–97, IEEE, Bangkok, Thailand, May 2012.

B. Samir, N. Andk, and S. Roland, “PID vs LQ control techniques applied to an weight augmentation high energy conruniption indoor micro quadrotor,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 2451–2456, 2004.

T. Madani and A. Benallegue, “Backstepping control for a quadrotor helicopter,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS '06), pp. 3255–3260, IEEE, Beijing, China, October 2006.

A. Mokhtaril, A. Benallegue, and B. Daachi, “Robust feedback linearization and controller for a quadrotor unmanned aerial vehicle,” in Proceedings of the IEEE IRS/RSJ International Conference on Intelligent Robots and Systems (IROS '05), pp. 1009–1014, IEEE, August 2005.

K. Kiguchi and T. Fukuda, “Position/force control of robot manipulators for geometrically unknown objects using fuzzy neural networks,” IEEE Transactions on Industrial Electronics, vol. 47, no. 3, pp. 641–649, 2000.

S. Jung and T. C. Hsia, “Robust neural force control scheme under uncertainties in robot dynamics and unknown environment,” IEEE Transactions on Industrial Electronics, vol. 47, no. 2, pp. 403–412, 2000.

R. J. Anderson and M. W. Spong, “Hybrid impedance control of robotic manipulators,” IEEE Journal of Robotics and Automation, vol. 4, no. 5, pp. 549–556, 1988.

S. Jung, T. C. Hsia, and R. G. Bonitz, “Force tracking impedance control of robot manipulators under unknown environment,” IEEE Transactions on Control Systems Technology, vol. 12, no. 3, pp. 474–483, 2004.

D. Mellinger, Q. Lindsey, M. Shomin, and V. Kumar, “Design, modeling, estimation and control for aerial grasping and manipulation,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS '11), pp. 2668–2673, September 2011.

K. J. Yoon and N. S. Goo, “Development of a small autonomous flying robot with four-rotor system,” in Proceedings of the IEEE 15th International Conference on Advanced Robotics (ICAR '11), pp. 150–154, IEEE, Tallinn, Estonia, June 2011.