Unmanned Aerial Vehicles (UAVs) have been used for search and rescue missions in environments that are dangerous (e.g. [18, 15]). These hazardous environments, such as a tunnel after an earthquake, often challenge UAVs with complex obstacles that are hard to detect and difficult to avoid. Collisions with these obstacles can disrupt missions and damage vehicles.
To address this problem, many collision resilient designs are proposed to help aerial vehicles operate safely in a wide range of environments. Most of these designs fall into one of three major categories:
Resilient designs of the first category protect propellers, a key yet vulnerable part of aerial vehicles, from damage in collisions. For example, spherical guards that can passively rotate about vehicle propellers are proposed in 
. The design prevents the vehicle from bending moment during collisions and thus increases its surviving rate.
Meanwhile, designs with external shells provide an all-around protection. For instance, a collision resilient flying robot protected by a spherical shell with an inner gimbal system is proposed in . The design decouples its outer protective shell from its inner propulsion system. As a result, the inner frame can remain stable during collisions. On the other hand, a cargo drone with an origami-inspired external protective shell is demonstrated in . The vehicle can be folded to reduce its storage volume.
Collision resilient designs of the last category utilize novel materials. A quadcopter frame with dual stiffness materials is proposed in . The frame stays rigid during normal flights, and becomes soft to absorb energy once it collides. Similarly, a flexible propeller blade that bends when colliding with obstacles is presented in .
Unfortunately, most of the existing collision resilient aerial vehicles are not designed to survive collisions at high-speed, which robotic first responders may wish to operate at. For example, when a UAV is passing a corridor on fire, it needs to rush through the corridor so as to avoid long time exposure to the heat. A fast flight speed is also desired when the rescue mission is time-critical.
In this work we show that vehicles constructed with icosahedron tensegrity (tensile-integrity) structures have the potential to survive collisions during fast flights. A tensegrity structure is constructed with rigid bodies suspended in a tension network. The unique static and dynamic features of tensegrity structures have been studied by many (e.g. [2, 11]). Due to these features, an icosahedron tensegrity structure can distribute load among its members and does not experience bending moment in collisions. As a result, the structure can provide high impact resilience with a light weight, and it has consequently been proposed as a potential candidate for planetary landers  and exploratory rovers [16, 7].
The contribution of this work is as follows. We present the methodology used to design a collision resilient aerial vehicle that takes advantage of the high impact-tolerance of tensegrity structures. We introduce an analysis tool that approximates the stress in the tensegrity frame during collisions and use the tool to guide the selection of tensegrity components. In addition, we propose a controller that can reorient the vehicle from an arbitrary orientation on the ground to help it take off. The proposed controller exploits the 20-faced geometry of the icosahedron tensegrity and divides the task into simple rotations that are easy to analyze and implement.
With the proposed methodology, we achieve a new collision resilient vehicle that can safely operate at high speed despite the presence of obstacles and can resume flight after collisions. The vehicle, shown in Fig. 1, is protected by an orthogonal icosahedron  tensegrity shell made with carbon fiber rods and high tensile braided fishing lines, which provide collision resilience with a light weight. Experiments show that the vehicle can survive collisions with speed up to 6.5m/s. To the best of our knowledge, no other aerial vehicles with impact resilient designs in literature has reported to survive collisions with a higher speed.
Ii Design of the tensegrity structure
In this section, we introduce the design objectives of the tensegrity structure, the stress analysis used to guide the design and the criteria for selecting tensegrity components.
Ii-a Design objectives
The goal of the tensegrity structure is to protect the quadcopter inside, which has to survive collisions and continue its operation. As a result, the deformation of the tensegrity structure should be small during the collision so that vulnerable parts like sensors and propellers are not exposed to obstacles. Moreover, the tensegrity structure should also be lightweight, so that the additional mass of the structure has limited influence on the vehicle’s flight performance and payload capacity.
Ii-B Simplified stress analysis of icosahedron tensegrity
The design of the icosahedron tensegrity structure is guided by the stress its components experience during the collisions. To simplify the analysis, we consider only the moment when the vehicle is experiencing the largest impact force from the obstacle. To further simplify the problem, we additionally assume that: 1) the vehicle’s weight is small compared to the impact force and can be neglected; 2) the deformation of the tensegrity structure is small so that the geometry of the tensegrity structure remains unchanged. The second assumption is a close approximation, because stiff strings are used in the design to prevent large deformations that may expose vulnerable parts like propellers to collisions.
Forces in the tensegrity structure can thus be approximately solved from the following problem. Shown in Fig. 2, an icosahedron tensegrity is fixed on the ground with three connections. Vertical forces with a sum of , the maximum impact force in a collision, is applied to the top nodes of the vehicle. Due to symmetry, only two configurations need to be considered: forces act on a face with three string-pieces or on a face with two string-pieces. Moreover, for each configuration, we consider following scenarios: the total impact force is evenly distributed among 1, 2 or 3 nodes.
The equilibrium equations of the system can then be formulated. The icosahedron tensegrity has 12 nodes. Denote the nodes as , where . These nodes are connected by 6 rods and 20 string-pieces. We denote the connectivity of the nodes with functions and :
Denote as the magnitude of the tensile force in string-piece , and as the magnitude of the compression force in rod . Use to represent the external force on in the vehicle body frame. Define
as the unit vector along the string-piece fromto , whereas as the unit vector along the rod from to . Both vectors are in the vehicle body frame.
At equilibrium, the sum of forces acting on each node is zero:
This equation comes from Newton’s law with the assumption that each node has zero acceleration. A more rigorous derivation of tensegrity equilibrium can be found in . Expand the equation, we have for each node :
where the indices of string-pieces, and the indices of rods, , come from connectivity functions: and .
Due to the existence of self-stress in the icosahedron tensegrity, the structure is statically indeterminate . With the assumption that the members of the tensegrity structure follow Hooke’s law when the deformation is small, we apply the principle of minimum energy and solve for a minimum energy configuration solution under equilibrium constraints, with a method similar to the one presented in :
Constants , , , denote Hooke’s constant, Young’s modulus, cross sectional area and length respectively. Subscripts and represents string-pieces and rods. and are the strain of rod and string-piece . Notice that the strain of the string-pieces is constrained to be positive as the string-pieces cannot be compressed.
Finally, compare the results of all possible configurations and external force scenarios. Define the maximum compression force in rods as and maximum tensile force in string-pieces as .
Ii-C Selection of tensegrity components
Tensegrity components (rods and strings) in the structure should survive the maximum tensile and compression force found in the previous subsection. In other word, the stress in the string should be smaller than its yielding strength with a factor of safety :
Meanwhile, the maximum stress in the rod should be smaller than both its yielding strength and its critical buckling strength with factors of safety and .
The critical buckling strength of the rod can be approximated with Euler’s buckling theory:
Here is the second moment of area of the rod.
Iii Vehicle controllers and state estimators
Iii-a Sensing and state estimation
The vehicle’s onboard sensing system is based on an Inertial Measurement Unit (IMU) that provides information about the vehicle’s acceleration and angular velocities. When flying in the lab space, the vehicle is visible to a motion capture system, allowing for off-board estimation of the vehicle’s full 6 degrees of freedom position and orientation states. The onboard rate gyroscope is also used in flight for attitude estimation and angular velocity feedback.
During the reorientation process, however, the vehicle is assumed to lose access to the motion capture system and thus solely relies on its IMU for state estimation. It estimates its attitude from accelerometer and rate gyroscope measurements with a complementary filter.
Iii-B Flight controller
The overall control strategy of the vehicle is presented in Fig. 3. It features a cascaded control structure. A position controller outputs desired total thrust and thrust direction, whereas an inner attitude controller computes desired torques. Finally, a mixer converts the total thrust and body torque commands to per-propeller thrust commands. This cascaded structure can be decoupled into two separate parts: an offboard controller for position and attitude control, and an onboard part implementing thrust conversion.
The position controller makes position error act as a second order system with damping ratio and natural frequency :
wherein is the position of the vehicle, is desired acceleration, is desired velocity and is desired position. All vectors are in the Earth frame. Thus, we can find desired total thrust and its direction as:
A desired angular velocity is computed as proportional to the orientation error and then an desired angular acceleration is computed as follows:
where is the angular velocity measured by rate gyroscope and is the desired time constant. All vectors are in vehicle’s body frame. Thus, the desired torque follows as:
Where is the moment of inertia of the vehicle.
Finally, the thrust converter computes the desired thrust force for each propeller as follows:
where is a vector pointing from center of mass to propeller and and are the components of along the x-axis and y-axis of the body frame. is the propeller torque constant.
Iv Autonomous Reorientation
In this section, we introduce the controller used to autonomously reorient the vehicle from an arbitrary orientation on the ground to help it take off.
Iv-a Problem setup
The icosahedron tensegrity has twenty faces, numbered from 1 to 20, as shown in Fig. 4. After collisions, the tensegrity will land with one of its faces on the ground. Denote the contact face as if the face of the tensegrity is touching the ground. In most of the attitudes, the propellers are not pointing upwards, and it is very difficult for the tensegrity vehicle to take off. The goal of autonomous reorientation is to find a series of control inputs that can rotate the vehicle back to an attitude from which it can easily take off.
Iv-B Contact face identification
To successfully rotate to a desired attitude, the vehicle needs to first identify which face of the tensegrity is in contact with the ground.
The rods of the icosahedron tensegrity structure are parallel with the axes of the body frame. As a result, each contact face of the vehicle corresponds to a specific roll-pitch angle pair that can be found as follows:
Assume the contact face of the tensegrity is and node , node and node are the three nodes on the face. Let , , be the positions of these nodes in the vehicle body frame. Thus, , a vector normal to the contact face in the vehicle body frame can be found as:
Furthermore, a unit vector normal to the contact face and pointing into the icosahedron tensegrity can be computed as:
where is the sign function.
Let be the unit vector pointing along the positive z-axis of the vehicle body frame. The rotational matrix that rotates to can be found as follows:
is the skew-symmetric cross product matrix, so that.
As the attitude of the vehicle is defined as a rotation from the vehicle body frame to the Earth frame, also represents the attitude of a vehicle with contact face and zero yaw angle:
where is the conversion from rotation matrix to yaw-pitch-roll Euler-angle set.
Hence, the difference between the estimated attitude and the attitude of a vehicle with contact face and zero yaw angle is:
where converts a yaw-pitch-roll Euler-angle set to a rotation matrix, whereas and are estimated pitch and roll angles of the vehicle from the attitude estimator introduced in Section III. Finally, the contact face is identified:
where evaluates the angle of rotation matrix in the sense of the axis-angle representation.
Iv-C Target attitude
To implement a rotation that switches contact face from to , the vehicle first has to find its target attitude after the rotation.
Consider the following scenario: the tensegrity sits on the ground with contact face and the current attitude of the vehicle is estimated to be . The desired new contact face is . Notice that face and face are adjacent. Denote the nodes shared by the two faces as node and node . Thus, the desired rotation can be represented with an axis-angle pair. The axis, in the Earth frame, can be found as:
where amd are positions of node and node in the vehicle body frame. Meanwhile, , the angle of rotation between the two adjacent faces can be obtained from geometry as follows: let be a unit vector on face that is orthogonal to . Similarly, let be a unit vector on face that is orthogonal to . The angle of the rotation can be found as:
Thus, the desired target attitude follows:
where converts an axis-angle pair to a rotation matrix.
Iv-D Reorientation path
We introduce here a method to find the next contact face during the process of autonomous reorientation.
Possible transitions between contact faces are shown in Fig. 5. Each node in the graph represents a contact face and two points are connected if the vehicle can transition between two faces via rotating about a tensegrity edge. The weights of the edges in the graph are the angles between two adjacent faces. We define the contact face as the goal where the vehicle can directly take off. Thus, the objective is to find shortest paths starting from an arbitrary point on the graph to the goal.
It is worth noting that during the experiment, some paths in the graph are found to be physically infeasible, as they require the vehicle to generate a large yaw torque that exceeds the capability of the vehicle. These connections are deleted from the graph and the operation makes the graph disconnected. To fix the problem, we add two special movements in which the vehicle rotates about a node, instead of an edge, as is represented by the red curve in Fig. 5.(b).
With the new graph generated, A* search is used to find shortest paths from all possible starting points to the goal. The final reorientation path is illustrated in Fig. 5.(c).
Iv-E Implementation of rotations
Large torques are required to rotate the vehicle on the ground. As a result, the vehicle is modified so that the propellers can be controlled to rotate in both clockwise and counterclockwise directions. Consequently, the propellers can generate both positive and negative thrusts. Thus, the envelop of the feasible body torque generated is broadened.
During the process of autonomous reorientation, the same attitude controller and thrust converter introduced in Section III is applied. The desired attitude is computed with the method in Section IV.C. Meanwhile, the desired total thrust is set to zero. It is noteworthy that thrust commands are stopped once the vehicle determines its contact face switches from to . At this time, the moment arm of the gravity is expected to be zero-length and the gravity will no longer generate a torque against the rotation. Once the vehicle successfully reaches the desired attitude, it will find its next target with the method discussed in Section IV.C and IV.D. Notice that the controller plans at each step, so it can easily adjust the next target if the vehicle rotates to an unexpected attitude due to disturbance. After finding the next target attitude, the vehicle will perform the planned rotation, and repeat the process until it reaches its goal.
V Experimental results
This section presents the result of the tensegrity design and the experiments demonstrating the vehicle’s collision resilience and its ability to autonomously reorient itself. Experiment video: https://youtu.be/9v3vB4RaOew.
V-a Result of tensegrity design
We use the analysis tool presented in section II to guide the design of the tensegrity structure. Among all possible candidates satisfying the design requirements, carbon fiber rods with 6mm OD and braided fishing lines are selected based on weight, price and availability. The final tensegrity structure weighs 50g and is about one-fifth of the total 252g vehicle mass. The maximum total thrust of the vehicle is 8.5N, which leads to a 3.4:1 thrust-to-weight ratio.
V-B Collision resilience
We command the vehicle to accelerates towards a wall and to collide with it so as to validate the collision resilience of the vehicle.
Video sequences of the collision process is shown in Fig. 6. The vehicle collides with the wall with a speed of 6.5m/s. All parts within the tensegirty frame remain intact throughout the process and the vehicle maintains its ability to fly after the collision.
V-C Autonomous Reorientation
We roll the vehicle like a dice so it starts at a random attitude on the ground. Afterwards, the autonomous reorientation controller is implemented. The vehicle rotates itself to a desired attitude from which it can easily take off.
Fig. 7 illustrates the details of the autonomous reorientation process. The first row shows the yaw-pitch-roll angular velocity measured by the vehicle’s onboard rate gyroscope, and the second row captures the motor thrust commands of the vehicle. Red vertical dashed lines indicate the change of the faces that are identified as the closest to the ground, as described in Section IV.B. The circled numbers are the indices of the identified contact faces. Note that propeller thrust commands become zero once the vehicle determines its contact face has switched. From the graph, it is shown that the vehicle is able to recognize its face on the ground and autonomously rotate itself to the goal attitude.
In this paper we present the methodology used to design a collision resilient vehicle that adopts the advantages of icosahedron tensegrity structures. We guide the design of the tensegrity with stress analysis of the structure under impact forces during collisions. A cascaded flight controller with a state estimator based on an IMU and a motion capture system is proposed to control the vehicle in flight. We also exploit the 20-faced geometry of the icosahedron tensegrity and develop an autonomous controller that divides the reorientation process into a series of rotations switching the tensegrity’s face contacting the ground. Thus, the autonomous controller turns a complicated rotation task into a finite state machine that is easy to analyze and implement.
The tensegrity structure resulting from our design methodology weighs about one-fifth of the vehicle’s total mass. Due to its light weight, the tensegrity frame causes limited influence on the vehicle’s flight performance. The vehicle can still achieve a 3.4:1 thrust-to-weight ratio, which grants decent flight agility. Finally, we validate the capability of the vehicle with experiments and show that the vehicle can successfully reorient autonomously and survive collisions with speed up to 6.5m/s.
-  (2014) A collision-resilient flying robot. Journal of Field Robotics 31 (4), pp. 496–509. Cited by: item 2, §I.
-  (2015) Nonminimal dynamics of general class k tensegrity systems. International Journal of Structural Stability and Dynamics 15 (02), pp. 1450042. Cited by: §I.
-  () Elios 2. Note: https://www.flyability.com/elios-2(Accessed on 11/11/2019) Cited by: item 2.
-  (2018) Dynamics of class 1 tensegrity systems including cable mass. In 16th biennial ASCE international conference on engineering, science, construction and operations in challenging environments, Cited by: §II-B.
-  (2019) Design and experimental study of dragonfly-inspired flexible blade to improve safety of drones. IEEE Robotics and Automation Letters 4 (4), pp. 4200–4207. Cited by: item 3, §I.
-  (1967) Orthogonal icosahedra. Nordisk Matematisk Tidskrift, pp. 90–96. Cited by: §I.
-  (2016) Hopping and rolling locomotion with spherical tensegrity robots. In 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 4369–4376. Cited by: §I.
-  (2017) An origami-inspired cargo drone. In 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 6855–6862. Cited by: item 2, §I.
-  (2017) Insect-inspired mechanical resilience for multicopters. IEEE Robotics and automation letters 2 (3), pp. 1248–1255. Cited by: item 3, §I.
-  (1980) Analysis of truss-cable structures. Computers & Structures 11 (4), pp. 327–335. Cited by: §II-B.
-  (2001) Static and dynamic analyses of tensegrity structures. part 1. nonlinear equations of motion. International Journal of Solids and Structures 38 (20), pp. 3599–3613. Cited by: §I.
-  (1986) Matrix analysis of statically and kinematically indeterminate frameworks. International Journal of Solids and Structures 22 (4), pp. 409–428. Cited by: §II-B.
-  (2016) On the impact tolerance of tensegrity-based planetary landers. In 57th AIAA/ASCE/AHS/ASC Structures, Structural Dynamics, and Materials Conference, pp. 1511. Cited by: §I.
-  (2019) Development and experimental validation of aerial vehicle with passive rotating shell on each rotor. IEEE Robotics and Automation Letters 4 (3), pp. 2568–2575. Cited by: item 1, §I.
-  (2015) An autonomous multi-uav system for search and rescue. In Proceedings of the First Workshop on Micro Aerial Vehicle Networks, Systems, and Applications for Civilian Use, pp. 33–38. Cited by: §I.
-  (2013) Tensegrity based probes for planetary exploration: entry, descent and landing (edl) and surface mobility analysis. International Journal of Planetary Probes 7, pp. 13. Cited by: §I.
-  () Vantage robotics - snap flying camera. Note: https://vantagerobotics.com(Accessed on 10/19/2019) Cited by: item 1.
-  (2010) Supporting search and rescue operations with uavs. In Emerging Security Technologies (EST), 2010 International Conference on, pp. 142–147. Cited by: §I.