Rotating the Heading Angle of Underactuated …micro.seas.harvard.edu/papers/IROS15_1280_FI.pdf ·...

8
Rotating the heading angle of underactuated flapping-wing flyers by wriggle-steering Sawyer B. Fuller , John P. Whitney , and Robert J. Wood Abstract— The Harvard Robobee is a fly-sized aerial vehicle that can perform controlled flight maneuvers. But this robot is unable to control its yaw or heading angle to a desired value. Motivated by this deficiency, we propose a new method to produce yaw-axis rotations. Termed wriggle-steering, it consists of driving body oscillations around its two other rotational axes. Because no torque is applied directly around the controlled axis, it therefore constitutes an alternative control method for under-actuated designs. Oscillations are driven around pitch and roll axes at the same frequency but 90 degrees out of phase, resulting in a small change in yaw angle after each cycle because of nonlinearity in attitude dynamics. We propose two wing kinematics perturbations that produce the necessary actuation. The predictions are validated with a quasi-steady aerodynamics model, free-body simulations, and flight tests on a fly-sized hovering aerial robot. The results suggest that wriggle- steering can save mass and reduce complexity by eliminating the need for additional actuators in flapping-wing robots or other aircraft. I. I NTRODUCTION Flapping-wing hovering flight, as performed by humming- birds and flies, requires the wings to undergo a complicated trajectory, moving forward and backward while rotating at the correct time to optimize lift [1]. As the wings move, typically with a steep angle of attack, a vortex appears at the leading edge that adds lift [2]. During translatory motion, this vortex eventually detaches from the wing, causing a loss in lift that is known as stall. But in flapping-wing flight, the wings rotate around a vertical axis, causing the vortex to remain attached, maintaining lift [3]. The resulting unsteady, time-varying fluid flow patterns contrast with the typically steady-state flows assumed by fixed-wing aircraft and rotorcraft. To drive these motions, intricate mechanisms are required, both in biological organisms [4] and their man-made counterparts [5], [6], [7]. Flapping-wing flight therefore imposes a burden of mechanical complexity relative to fixed-wing or propellor driven craft, which has limited their application. But in return, flapping wings can produce an expanded repertoire of forces and torques for use in flight control. Theoretical studies indicate that, in addition to torques about three orthogonal axes, flapping wings can additionally produce thrusts along these axes as well [8], [9], permitting fully actuated flight School of Engineering and Applied Sciences, Harvard University, Cambridge MA 02138 USA and the Wyss Institute for Biologically In- spired Engineering, Harvard University, Boston, MA 02115, USA, Disney Research Pittsburgh, PA 15213 (E-mail: [email protected], pe- [email protected], [email protected]) x, θ e1 (roll) y, θ e2 (pitch) z, θ e3 (yaw/heading) x y Fig. 1. A microrobotic fly such as the Harvard Robobee (top, U.S. Quarter coin shown in background for scale), or other flapping-wing or hovering flying robots may not be able to directly actuate heading or yaw angle. We propose that motion can be controlled around this axis by using cyclic body motions about other axes termed wriggle-steering. (middle) Illustration of sequence of motions. The body of the robot is represented as a rectangular solid, with wings shown in the leftmost image. Starting from the left, the vehicle rotates by an angle e1 around its x- or roll-axis (dashed line), then by e2 around its new (rotated) y- or pitch axis, and then reverses these two rotations about its x- and y-axes. (bottom) As shown in the projection of its base, this sequence results in a small rotation e3 around its body z- or yaw axis (the initial orientation of its axes are shown as dashed lines). motions. Flapping wings may therefore enable new types of aircraft that have an expanded flight envelope relative to existent fixed-wing vehicles and rotorcraft. By measuring wing kinematics, studies have shown that insects employ a number of different perturbations to their baseline wing kinematics to control flight. For example, fruit flies structure their flight into bouts of forward motion punctuated by rapid yaw turns known as body saccades. The saccades are produced by a combination of changing the angle of stroke deviation as well as wing stroke amplitude [11] (For a definition of wing stroke parameters and body axis conventions, see Figures 1 and 2). Flies can also produce

Transcript of Rotating the Heading Angle of Underactuated …micro.seas.harvard.edu/papers/IROS15_1280_FI.pdf ·...

Page 1: Rotating the Heading Angle of Underactuated …micro.seas.harvard.edu/papers/IROS15_1280_FI.pdf · Rotating the heading angle of underactuated ßapping-wing ... In this work we propose

Rotating the heading angle of underactuated flapping-wing flyers bywriggle-steering

Sawyer B. Fuller⇤, John P. Whitney†, and Robert J. Wood⇤

Abstract— The Harvard Robobee is a fly-sized aerial vehiclethat can perform controlled flight maneuvers. But this robotis unable to control its yaw or heading angle to a desiredvalue. Motivated by this deficiency, we propose a new method toproduce yaw-axis rotations. Termed wriggle-steering, it consistsof driving body oscillations around its two other rotational axes.Because no torque is applied directly around the controlledaxis, it therefore constitutes an alternative control method forunder-actuated designs. Oscillations are driven around pitchand roll axes at the same frequency but 90 degrees out ofphase, resulting in a small change in yaw angle after eachcycle because of nonlinearity in attitude dynamics. We proposetwo wing kinematics perturbations that produce the necessaryactuation. The predictions are validated with a quasi-steadyaerodynamics model, free-body simulations, and flight tests on afly-sized hovering aerial robot. The results suggest that wriggle-steering can save mass and reduce complexity by eliminating theneed for additional actuators in flapping-wing robots or otheraircraft.

I. INTRODUCTION

Flapping-wing hovering flight, as performed by humming-birds and flies, requires the wings to undergo a complicatedtrajectory, moving forward and backward while rotating at thecorrect time to optimize lift [1]. As the wings move, typicallywith a steep angle of attack, a vortex appears at the leadingedge that adds lift [2]. During translatory motion, this vortexeventually detaches from the wing, causing a loss in lift thatis known as stall. But in flapping-wing flight, the wings rotatearound a vertical axis, causing the vortex to remain attached,maintaining lift [3]. The resulting unsteady, time-varyingfluid flow patterns contrast with the typically steady-stateflows assumed by fixed-wing aircraft and rotorcraft. To drivethese motions, intricate mechanisms are required, both inbiological organisms [4] and their man-made counterparts [5],[6], [7]. Flapping-wing flight therefore imposes a burden ofmechanical complexity relative to fixed-wing or propellordriven craft, which has limited their application. But in return,flapping wings can produce an expanded repertoire of forcesand torques for use in flight control. Theoretical studiesindicate that, in addition to torques about three orthogonalaxes, flapping wings can additionally produce thrusts alongthese axes as well [8], [9], permitting fully actuated flight

⇤School of Engineering and Applied Sciences, Harvard University,Cambridge MA 02138 USA and the Wyss Institute for Biologically In-spired Engineering, Harvard University, Boston, MA 02115, USA, †DisneyResearch Pittsburgh, PA 15213 (E-mail: [email protected], [email protected], [email protected])

x, θe1 (roll)

y, θe2 (pitch)

z, θe3 (yaw/heading)

x y

Fig. 1. A microrobotic fly such as the Harvard Robobee (top, U.S. Quartercoin shown in background for scale), or other flapping-wing or hoveringflying robots may not be able to directly actuate heading or yaw angle. Wepropose that motion can be controlled around this axis by using cyclic bodymotions about other axes termed wriggle-steering. (middle) Illustration ofsequence of motions. The body of the robot is represented as a rectangularsolid, with wings shown in the leftmost image. Starting from the left, thevehicle rotates by an angle ✓e1 around its x- or roll-axis (dashed line), thenby ✓e2 around its new (rotated) y- or pitch axis, and then reverses these tworotations about its x- and y-axes. (bottom) As shown in the projection of itsbase, this sequence results in a small rotation ✓e3 around its body z- or yawaxis (the initial orientation of its axes are shown as dashed lines).

motions. Flapping wings may therefore enable new typesof aircraft that have an expanded flight envelope relative toexistent fixed-wing vehicles and rotorcraft.

By measuring wing kinematics, studies have shown thatinsects employ a number of different perturbations to theirbaseline wing kinematics to control flight. For example,fruit flies structure their flight into bouts of forward motionpunctuated by rapid yaw turns known as body saccades. Thesaccades are produced by a combination of changing the angleof stroke deviation as well as wing stroke amplitude [11](For a definition of wing stroke parameters and body axisconventions, see Figures 1 and 2). Flies can also produce

Page 2: Rotating the Heading Angle of Underactuated …micro.seas.harvard.edu/papers/IROS15_1280_FI.pdf · Rotating the heading angle of underactuated ßapping-wing ... In this work we propose

A

B“upstroke”

“downstroke”θ

Aanterior view

Bdistal view

Cventral view

C

θ

Fig. 2. Kinematic description of wing motion for hovering flapping-winganimals and robots. Definitions: ' is the wing stroke angle, ✓ is the strokedeviation angle, and is the angle of attack. Figure used with permissionfrom [10].

forward thrust through a “paddling” mode that consists ofaltering the angle of attack on the upstroke relative to thedownstroke [12]. And the precise timing of angle of attackrotation at stroke reversal can alter forces as well [1].

These wing stroke strategies have inspired robotic counter-parts at similar scales. As a robot’s scale diminishes, machineelements such as motors, bearings, and fixed-wing airfoilsbecome inefficient as they get smaller due to the physicsof scaling: surface effects increasingly dominate Newtonianforces [13] and viscous friction increases. Thus the mecha-nisms in flapping-wing flight becomes more favorable thanrotor-powered flight as scale diminishes. For example, thesmallest robot to demonstrate controlled flight, the 80 mgRoboBee [6], is powered by a pair of flapping wings. Thisrobot actuates its flight using independently-actuated wings:roll torque is produced by altering the amplitude of the leftwing stroke relative to the right wing; pitch torque is producedby moving the mean wing stroke angle forward or backwardof the center of mass (CM) [14], [6]. A larger flyer, the 19 gNano Hummingbird, used a different approach, moving thelocation of a boom at the base of the wing to alter its angleof attack, thereby producing control torques about all threeaxes [5]. Other strategies have included moving the locationof wing pivot points [15], actuating the stroke deviationangle [10], and altering the neutral angle of the flexure hingegoverning the wing’s neutral angle of attack [7].

As the space of design and control strategies is furtherexplored, it may be either difficult or impossible for a givendesign to actuate certain degrees of freedom using availablemechanisms. For example, the robotic fly presented in [14],when tethered to a sensitive torque meter, was able to producemeasurable yaw or z-axis torques by driving the wings with a“split-cycle” signal. This produced wing kinematics in which

the downstroke was faster or slower than the upstroke, alteringthe relative strength of aerodynamic drag during each of thesephases, producing a net torque. However, later flight testsrevealed that the magnitude of torque that could be achievedwas insufficient to overcome the disturbance effects of aircurrents in the room and the uncertain conformation of thewire tether. Accordingly, the controller implemented in [6]was designed to be able to hover regardless of the robot’sorientation and yaw angular velocity. It included a componentthat applied a yaw-axis torque using the split-cycle drivingsignal to add a damping effect to reduce yaw angular velocity,but the absolute heading or yaw angle was not regulatedto a specific value. But for many reasons, it is desirable tocontrol the heading or yaw angle of the robot. For example,landing may be facilitated by having the legs in a certainorientation, or a sensor must be aimed in a certain direction,or computational complexity of the flight controller may bereduced if the yaw rate is low.

In this work we propose a new mechanism to performrotations about the yaw or heading angle of a hovering vehicleor animal. The basic principle is that instead of directlyapplying a torque about the actuated axis, the entire bodyof the robot is rotated by a small amount (⌧ 90

�) around theother two orthogonal axes in a cyclical fashion. The sequenceof rotations is as follows: the body first rotates around itsroll or x-axis by a small angle, then about its new pitchor y-axis by a similarly-sized small angle, followed by anegative x-axis roll rotation of equal magnitude, and thena negative y-axis pitch rotation. After this sequence, the bodyhas returned to an upright orientation, but its rotation aboutits yaw axis has changed by a small amount (Figure 1). Onecan get an intuitive sense of this process in computer aideddesign software (CAD) by engaging the “rotate view” mode,and moving the mouse in circles on the screen: in additionto wobbling, the object in view slowly rotates around an axisintersecting near the center of the circular motions.

To our knowledge, the approach described here has notpreviously been proposed. A key differentiating factor is thathere we rely on the ability of the body to rotate feely in spacearound other axes in order to perform the desired rotation.This was inspired by [16], [17] which suggested a generalprocess for deriving trajectories for nonlinear systems withnonholonomic constraints by driving them with sinusoids. Acyclic sequence of motions is known as a Lie bracket, andcan be used to drive a nonlinear system infinitesimally along adesired path. We use the term wriggle because of its similarityto the actuation mode of the same name proposed in that workto steer a car model.

In Section II we describe the theoretical kinematic motionsof the vehicle necessary to produce the desired motion. Weuse a numerical model of attitude dynamics to compare yawturning rates for different frequencies and amplitudes. InSection III we use a quasi-steady aerodynamic model of wingforces on the Robobee to simulate two proposed types ofwing kinematics that could produce the necessary pitch androll torques. The first occurs at the flapping frequency, while

Page 3: Rotating the Heading Angle of Underactuated …micro.seas.harvard.edu/papers/IROS15_1280_FI.pdf · Rotating the heading angle of underactuated ßapping-wing ... In this work we propose

the second operates at a lower frequency, producing forces ona stroke-averaged basis to produce pitch and roll torques. InSection IV, we describe the 6 degree-of-freedom (DOF) free-body model of the Robobee’s body dynamics, and in SectionV simulate the results of the aerodynamic torques acting on it.The results show that yaw rotation is produced as predicted.In Section VI we validate the findings with free-flight tests ofa hovering Robobee, finding that the mean yaw rate closelymatches the prediction of the model. We conclude with designimplications for future flapping-wing robotic prototypes.

II. KINEMATICS MODEL

The basic principle is purely kinematic and is illustratedin Figure 1. A series of small roll (x-axis) and pitch (y-axis) motions are made to steer motion around yaw (z-axis).Analytically, we can describe the result of a single cycle usinga rotation matrix R 2 R3⇥3 to represent orientation. For avector v0 given in body-attached coordinates, v = Rv0 is thevector given in world coordinates. For infinitesimal rotations✏1 and ✏2 around x and y axes, respectively, the result is R =2

41 �✏1✏2 0

✏1✏2 1 0

0 0 1

3

5, neglecting higher-order terms (computed

using axis-angle rotations in python’s sympy package).A more realistic scenario requires that these motions be

smooth, minimizing the magnitude of required torques. Thissuggests sinusoidal oscillations [16]. These can be driven witha sinusoidal torque

⌧ c = T0

2

4sin(2⇡Ft)

sin(2⇡Ft+ �)

0

3

5, (1)

where T0 is the torque oscillation amplitude, which must beless than or equal to the maximum possible torque that canbe achieved by the vehicle’s wings. The quantity F is thefrequency of the driving oscillations, t is time, and � is thephase offset. Note that the torque about the z-axis is zero.

To understand how these torques map to body motions,consider a dynamic model of the attitude dynamics of aflapping-wing flyer, parameterized by Euler Angles. Theattitude is represented by an array of three angles ✓e 2 R3

and is obtained by first rotating by an angle ✓e3 (yaw) aroundthe body z-axis, then by ✓e2 (pitch) around the new bodyy-axis, and then by ✓e1 (roll) around the new body x-axis.This representation has singularities at extreme attitudes butis convenient to represent motion in the neighborhood of acertain attitude. Its dynamics can be written as

˙✓e = W(✓e)!, (2)J ˙! = ⌧ � ! ⇥ J!, (3)

where ! 2 R3 is the angular velocity vector, ⌧ 2 R3 isa torque applied to the body by aerodynamic forces andcontrol torques generated by the wings, and J 2 R3⇥3 is thematrix of the mass moment of inertia given in body-attachedcoordinates. The quantity W(✓e) is a matrix that relates the

angular velocity ! to the rate of change in Euler Angles.Rewriting equation (2) in terms of these coordinates gives2

✓e1˙

✓e2˙

✓e3

3

5=

2

41 sin ✓e1 tan ✓e2 cos ✓e1 tan ✓e2

0 cos ✓e1 � sin ✓e1

0 sin ✓e1/ cos ✓e2 cos ✓e1/ cos ✓e2

3

5

2

4!1

!2

!3

3

5.

(4)The kinematic behavior can be understood using a simplifi-

cation in which the inertia matrix is identity, J = I, so that theterm ! ⇥ J! = ! ⇥ (I!) = ! ⇥ ! = 0. Then Equation (3)reduces to ˙! = ⌧ , and for zero initial conditions gives

! =

T0

2⇡F

2

4cos(2⇡Ft)

cos(2⇡Ft+ �)

0

3

5. (5)

We analyze the resulting motion by numerically integratingEquations (4) and (5) with a fixed-step time increment of 0.1ms with a � = 90º phase offset between !1 and !2. Figure 3(and video) shows the results of simulations. Oscillating !inputs cause the two Euler Angles ✓e1 and ✓e2 to oscillatecyclically around a mean value of zero so that the bodyremains upright. Results show that a), for a given amplitudeof oscillations in ✓e1 and ✓e2, a higher frequency resultsin a higher cycle-averaged rate of yaw rotation, ˙

✓e3, b)for a constant amplitude of ! oscillations (= T0/2⇡F inEquation (5)), the amplitude in oscillations of ✓e1 and ✓e2

increases, resulting in larger ˙

✓e3, and c) that ˙

✓e3 can be variedby varying the magnitude of the oscillations about one of thetwo axes. The simulation also confirmed (data not shown)that ˙

✓e3 is highest for � = 90

�, falling to zero at � = 0

� and� = 180

� (in the latter two cases, ✓e3 varies in time, but itsstroke-averaged value and time-derivative remain zero).

III. AERODYNAMICS MODEL AND SIMULATIONS

With a demonstration of the operation of the basic kine-matics, we now turn to how to generate the required torquesabout the pitch and roll axes by altering wing motions relativeto baseline hovering kinematics.

1) Oscillating at the flapping frequency: At the flappingfrequency, note that the flapping wings themselves producean oscillating pitch torque. This is because drag produced bytheir forward-backward motion acts at a distance above thecenter of mass (CM). The free-body dynamics simulationsdescribed below suggest the amplitude of ✓e2 oscillations isabout 1� for the robot fly considered here. The flapping fre-quency of this vehicle is 120 Hz, which is far below its ~3 Hzunstable natural mode predicted for body oscillations [18],suggesting that wing motion should not excite its naturalmode.

To achieve wriggling, roll oscillations must occur at abouta 90

� phase difference relative to pitch oscillations. Be-cause basic aerodynamics suggest that lift and drag typicallyoccur in phase with one another for forward motion, weinstead consider incorporating vertical (z-axis) motion intothe wing kinematics. Previously, a mechanism was proposedand demonstrated that could actuate the stroke deviation angle

Page 4: Rotating the Heading Angle of Underactuated …micro.seas.harvard.edu/papers/IROS15_1280_FI.pdf · Rotating the heading angle of underactuated ßapping-wing ... In this work we propose

0 0.05 0.1 0.15 0.2−5

0

5

angl

e (°)

θe1 (roll)

0 0.05 0.1 0.15 0.2−5

0

5

θe2 (pitch)

0 0.05 0.1 0.15 0.20

1

2

3

θe3 (yaw)

0 0.05 0.1 0.15 0.2−5

0

5

0 0.05 0.1 0.15 0.2−5

0

5

0 0.05 0.1 0.15 0.20

1

2

3

0 0.05 0.1 0.15 0.2−5

0

5

time (s)0 0.05 0.1 0.15 0.2

−5

0

5

0 0.05 0.1 0.15 0.2

−2

0

2

Fig. 3. Kinematics of wriggle-steering. Motions of the body attitude Euler Angles ✓e were computed from a numerical simulation of Equation (4) drivenby the sinusoid input in ! given by Equation (5). In all cases, pitch and roll oscillations are offset by � = 90� phase. (top) If the amplitude of body rotations✓e1 and ✓e2 are held constant, a higher oscillation frequency F in ! results in a higher cycle-averaged rate of change in yaw angle, ✓̇e3. Examples areplotted for frequencies F of 60 Hz (blue), 120 Hz (red), and 240 Hz (green). (middle) For oscillations with a fixed torque amplitude T0 (Equation (1)),corresponding to a fixed amplitude in body angular velocity ! oscillations (Equation (5)), lower frequency results in a larger amplitude oscillations in ✓e1and ✓e2, resulting in a higher ✓̇e3. Examples are plotted for oscillations with ! amplitude of 1000�/sec for frequencies F of 60 Hz (green), 120 Hz (red),and 240 Hz (blue). (bottom) Given a constant pitch oscillation angle amplitude, yaw rate can be varied by modulating the magnitude of roll oscillations.Examples are plotted for a pitch amplitude of 1000�/s, and roll amplitudes of 1000�/s, 500�/s, and 0�/s.

✓ of a microrobotic fly, in addition to the necessary strokeangle, by adding an extra piezo actuator [10]. Figure 4 showsthe resulting wing kinematic perturbation: the stroke planeangle ✓ oscillates at the same frequency as wing flapping sothat the wings move up and down as they move front to back.In [10], the oval stroke pattern was found to be energeticallyless efficient at generating lift than other wing kinematics, butwe note here that it is ideal for producing wriggling becausethe resulting vertical wing motion produces roll torques outof phase with stroke-induced pitch torques.

2) Quasi-steady aerodynamics simulation: To demonstratethe ability to produce the necessary actuation mode, theproposed driving wing kinematics were simulated in a quasi-steady aerodynamic model that includes passive flexion ofthe elastic flexure around which the wing’s angle of attackis allowed to rotate during wing motions [19]. This model,which estimates resulting forces and torques, was validatedon experimental force data taken from flapping wings, andis based on the characteristics of the wing and hinge of thevehicle in [6]. Figures 5 and 6 show the resulting body torquesarising out of the “flat” and “oval” kinematics, respectively.The torque produced by “oval” kinematics has a fundamentalharmonic in roll torque that is 90º out of phase from pitchtorque, as desired. The magnitude of the roll torque can bealtered by varying the size of the stroke angle deviation,providing a means for varying ˙

✓e3.3) Oscillating below flapping frequency: We now consider

oscillations driven at lower frequency, driven by torques that

flatupstroke

downstroke

U-shaped

oval figure-of-eight

0

0

0

ψ

Fig. 4. Proposed wing kinematics that generate a profile of roll torquesnecessary to induce wriggling at the flapping frequency. An “unwrapped”distal viewpoint from the tip of the wing (As in Figure 2B) shows lines thatrepresent the angle of attack of the wing, with a dot denoting the leading edge.In the baseline “flat” kinematics (top), the leading edge of the wings remainsin a plane, so that the stroke deviation angle ✓ remains a constant zero. With“oval” kinematics (bottom), the stroke deviation angle varies up and down atthe same frequency as the flapping frequency. The up-and-down motion addsa net roll torque, particularly around the moment of stroke reversal. Figureused with permission from [10].

are produced on a stroke-averaged basis. The robot shown inFigure 1 has a pair of independently-actuated wings that canproduce orthogonal stroke-averaged pitch and roll torques.Following [6], which used the simulation derived in [19],we derive a simplified numerical linearization to provide a

Page 5: Rotating the Heading Angle of Underactuated …micro.seas.harvard.edu/papers/IROS15_1280_FI.pdf · Rotating the heading angle of underactuated ßapping-wing ... In this work we propose

0 50 100 150 200 250 300 350−100

−50

0

50

100

wing phase (°)

angl

e (°)

φ (wing stroke)θ (stroke deviation)ψ (angle of attack)

0 200−20

−10

0

10

20

roll

(x−)

torq

ue (µ

Nm

)

left wing

0 200−20

−10

0

10

20right wing

0 200−20

−10

0

10

20both

0 200−20

−10

0

10

20

pitc

h (y−)

torq

ue (µ

Nm

)

wing phase (°)0 200

−20

−10

0

10

20

0 200−20

−10

0

10

20

0 200−20

−10

0

10

20both

simulationidealφ (wing stroke° /10)θ (stroke deviation° /10)

Fig. 5. Wing kinematics (top) and resulting torques (bottom) for the “oval”trajectory in shown in Figure 4. The amplitude of stroke deviation ✓ is 7.5º(15º peak-to-peak). The resulting torque from the wings (black, solid line) iscompared against the ideal (black, dashed line) given by Equation (1). Largedeviations from the ideal roll torque profile at phases of 0� and 180� occurat time points when the angle of attack of the wing, , is near zero, that is,when it is near vertical. At these phases, the cross-sectional area exposed tothe flow is very small, leading to small forces and therefore torque duringthe wing’s predominantly z-axis motions at that time. Nevertheless, this wingmotion produces a fundamental harmonic in roll torque at the desired 90�phase shift relative to pitch torque.

mapping between desired torques and the necessary wingkinematics to produce them. Given stroke kinematics in which� is the amplitude of wing stroke cycles '(t), �� is thedifference in wing stroke amplitude between left and rightwings, and �m is the shift forward or backward in meanwing stroke angle, then the lift force fl and control torques⌧c1 and ⌧c2 follow the following relation to first order:

fl = ↵l�� �l

⌧c1 = (↵1�� �1)��

⌧c2 = (↵2�� �2)�m. (6)

The ↵ and � quantities are constants derived from nu-merical linearization. The control signal �� produces a rolltorque by changing the relative amplitudes of the left and right

0 50 100 150 200 250 300 350−100

−50

0

50

100

wing phase (°)

angl

e (°)

φ (wing stroke)θ (stroke deviation)ψ (angle of attack)

0 200−20

−10

0

10

20

roll

(x−)

torq

ue (µ

Nm

)

left wing

0 200−20

−10

0

10

20right wing

0 200−20

−10

0

10

20both

0 200−20

−10

0

10

20

pitc

h (y−)

torq

ue (µ

Nm

)

wing phase (°)0 200

−20

−10

0

10

20

0 200−20

−10

0

10

20

Fig. 6. Wing kinematics (top) and resulting torques (bottom) for the “flat”trajectory shown in Figure 4, in which stroke deviation remains at ✓ = 0.No net roll torque arises.

wing strokes, producing a differential lift force. Changing �m

produces a pitch torque by moving the “mean wing strokeangle”–the time-averaged angle of the forward-backward mo-tion of the wings–in front (+x) or behind (�x) the CM [14].These two torques are approximately orthogonal, so theycan be considered independently. The torque magnitudes,however, are dependent on the wing stroke amplitude �.A second-order linear model of the piezo-transmission-wingresonant system is used to map these wing stroke kinematicsto electrical driving signals to the piezo actuators [20].

IV. FREE-BODY SIMULATION OF ROBOT DYNAMICS

To provide a more realistic test of wriggle-steering, wesimulated forces and torques on a 6DOF dynamic simulationof the flapping-wing vehicle described in [6]. The modelincludes a stroke-averaged model of aerodynamic drag on thewings, so it additionally incorporates velocity in the robot’sstate according to

m

˙v = f � ! ⇥mv. (7)

In this equation, v 2 R3 is the velocity of the CM, f 2 R3

are external forces acting on the CM, and m is the mass ofthe vehicle. The stroke-averaged aerodynamic drag is

fd = �bwvw = �bw(v + ! ⇥ rw), (8)

Page 6: Rotating the Heading Angle of Underactuated …micro.seas.harvard.edu/papers/IROS15_1280_FI.pdf · Rotating the heading angle of underactuated ßapping-wing ... In this work we propose

quantity symbol quantity unitsmass m 81⇥ 10�6 kg

moment of inertia (x-axis) J1 1.42⇥ 10�9 kg m2

moment of inertia (y-axis) J2 1.34⇥ 10�9 kg m2

moment of inertia (z-axis) J3 0.45⇥ 10�9 kg m2

vector, CM to wing pair midpoint rw

2

400

7⇥ 10�3

3

5 m

aerodynamic drag constant bw 2⇥ 10�4 Nsm�1

TABLE IESTIMATED PARAMETERS FOR THE ROBOTIC VEHICLE USED IN

SIMULATIONS.

where bw is the air drag proportionality constant, and vw =

! ⇥ rw is the velocity of the point on the body midwaybetween the wings [18].

Parameters for the robotic fly in this simulation are given inTable I and were derived from computer aided design (CAD)software [6], a precision scale, and wind tunnel tests [18] onthe Robobee. The dynamics of the simulation reproduce therobot’s dynamics, including dynamic instability in flight, soan additional feedback torque was added to the simulation,⌧ c = �kd!, with a gain of kd = 1.5 ⇥ 10

�7 Nms/rad, sothat the simulated robot remains upright in flight [18].

A. Oscillations driven at stroke-frequencyThe results of the simulation of the robot fly (Equa-

tions (2)–(4), (7), and (8)) driven by torques plotted inFigure 5, show that torques produced by oval wing kinematicscan produce yaw rotations, with a rate proportional to themagnitude of stroke plane deviations ✓ (Figure 7). We notethat the torques estimated by the quasi-steady aerodynamicsimulation assumed the vehicle was still and in quiescent flow,but this assumption may not necessarily hold under conditionsin which the vehicle is in motion. However, the amplitude ofpitch and roll oscillations are small, only 1-2º, suggesting thatthey may have a small effect on the simulated aerodynamics,and lateral motions are near zero.

B. Oscillations below the flapping frequencyIn this simulation of the robotic fly (also given by Equa-

tions (2)–(4), (7), and (8)), driven by stroke-averaged torques,the torque amplitude T0 was set to 0.5 µNm, approximatelyhalf of the maximum torque that the robot’s wings have beenable to produce along its pitch and roll axes [14]. The resultsfor driving frequencies of F = 5, 10, and 20 Hz, are shownin Figure 8. As in Figure 3, we found that driving torqueswith the same amplitude but lower frequency results in largerdeviations in attitude, and results in a larger cycle-averagedyaw angular rate ˙

✓e3.

V. FLIGHT TESTS OF LOW-FREQUENCY OSCILLATIONS

We verified that the simulations described above couldoperate as desired by performing flight tests on a hover-ing robotic fly (Figure 1). Robot power and control com-mands were sent through a lightweight compliant tether cable

0 0.1 0.2−10

−5

0

5

10

angl

e (°)

time (s)

θe1

0 0.1 0.2−10

−5

0

5

10

θe2

0 0.1 0.2

0

1

2

3

θe3

Fig. 7. Free-body simulation of the robotic fly subject to wriggling driven atthe flapping frequency. Wing-induced torques were estimated from a quasi-steady model of flapping-wing aerodynamics (Figure 5). Pitch oscillationsabout ✓e2 are driven by the forward-backward motion of the flapping wingswhile roll oscillations about ✓e1 are driven by an “oval” stroke deviationpattern shown in Figure 4. Deviation amplitudes are 0� (blue), 7.5� (red),and 15º (green). A larger stroke deviation produces a larger roll torqueand a correspondingly larger stroke-averaged yaw-rate ✓̇e3 (right). The slowtransients are the result the perturbation when the wings first start moving,but have a small effect on yaw rotations.

0 0.5 1−10

−5

0

5

10

angl

e (°)

θe1

time (s)0 0.5 1

−10

−5

0

5

10

θe2

0 0.5 10

5

10

15

θe3

Fig. 8. Simulation of the free-body motion of of the robotic fly subject towriggling driven below the flapping frequency by stroke-averaged torques.Wing-induced torques were estimated from a quasi-steady model of stroke-averaged flapping-wing aerodynamics (Equation (6)). The driving signal isgiven by Equation (1), with oscillations driven at frequencies of F = 5 Hz(green), 10 Hz (red), and and 20 Hz (blue). A lower driving frequency resultsin larger attitude oscillations in ✓e2 and ✓e2, resulting in a larger cycle-averaged yaw angular rate ✓̇e3 (right).

consisting of four 51-gauge (0.022 mm diameter) copperwires [6]. We performed flights tests in a motion capturearena with an array of calibrated cameras (Vicon T040-series, Oxford, UK). Each camera emits bright infrared lightthat is reflected from a number of retroreflective markersmounted on the vehicle so that its position and orientationcan be reconstructed in real-time for later analysis. In allflights, computations to generate signals for the piezoelectricactuators to drive wing motion, as well as to map desiredcontrol torques to these signals, were performed on an XPCTarget, a desktop computer running a real-time operatingsystem (Mathworks, Natick, MA USA). Analog voltage out-puts from an analog-to-digital conversion board (NationalInstruments, Austin TX USA, model PCI-6259) installed inthis computer were amplified by high-voltage piezo amplifiersand transmitted to the robotic fly through the tether cable.

In these flight tests, we introduced a three-filament kevlarrestraining thread at the top of the robot to reduce wear onthe wing hinges during crash landings. This was inspired by

Page 7: Rotating the Heading Angle of Underactuated …micro.seas.harvard.edu/papers/IROS15_1280_FI.pdf · Rotating the heading angle of underactuated ßapping-wing ... In this work we propose

Fig. 9. Example of wriggle-induced left (left) and right (right) turn duringhover of fly-sized flapping-wing robot. (top) Euler Angles ✓e1 (roll rotation,red) and ✓e2 (pitch rotation, green) do not oscillate before turn, but oscillatedue to commanded inputs during turning phase. Roll oscillations either lead(left turn) or lag (right turn) pitch oscillations by 90�, resulting in a turn ofthe desired polarity. Roll oscillations are larger than pitch oscillations becauseof a resonant mode in the feedback system near the commanded oscillationfrequency. (bottom) The heading or yaw angle ✓e3 changes during the turningphase. Dashed line shows the prediction of the model for a pitch oscillationamplitude of 10� and a roll oscillation amplitude of 20�.

the umbilical cord used to stop the fall of walking robots inthe event of malfunction [21]. In both cases, the thread massis negligible relative to the robot – each 30 cm filament has amass of 60 µg, measured on a precision scale, giving the bun-dle of three a mass of approximately 0.2 mg, less than 0.2%of the total robot mass. To test its compliance, we extended asingle filament horizontally 10 cm. The length of thread wasunable to support its own 20 µg weight, indicating that thetorque that a three-filament bundle can apply to the robot isless than 3 · 20⇥ 10

�9[kg] · 9.81

hNkg

i· 0.01[m] ⇡ 0.02 µNm,

which is small relative to control torques, calculated to havea root mean square (RMS) magnitude of 0.35 µNm for pitchand roll during normal hovering flights.

Flight tests consisted of a takeoff and a short period ofhover (4 seconds) to stabilize the dynamics and allow theadaptive controller to tune its parameters (roll and pitchtrim torques and three orthogonal force trim values). Thecontroller was functionally similar to [6], and consists ofan inner loop controlling the attitude (roll and pitch angles)of the robot and an outer loop that regulates position bycommanding attitude changes to the inner loop. To producethe wriggling oscillations, an oscillating setpoint attitude wassent to the attitude feedback controller to command pitchand roll oscillations with an amplitude of 10� at a frequencyF = 10 Hz. Larger amplitudes are in principle possible, butcause undesirable larger position errors.

Figure 9 shows that the flight controller was successfully

Fig. 10. Flight tests of wriggle-induced turns from 24 separate events. (top)The mean of the 12 turn events (black) is shown as a thick blue line, andthe prediction of the model shown as a dashed line, showing a close match.(bottom) Equivalent plot for 12 right turns. Disturbances from the tether areoccasionally sufficiently large to overcome the effect of the wriggle-turns.

able to induce roll oscillations that either led or lagged pitchoscillations by 90�. This resulted in either a left or a rightturn, respectively (video shows these two turns).

Figure 10 shows data from 24 separate turn events, 12in each direction, resulting in turns of the desired polarity.The mean angular velocity of the robot was approximately131�/sec in leftward direction and -139�/sec in the rightwarddirection. The prediction of the model, for a pitch oscillationamplitude of 10� and a roll oscillation amplitude of 20�,closely follows the behavior of the robot, with 12% and18% error for left and right turns, respectively. However,the robot’s turn rate was variable, occasionally even going inthe opposite direction of the wriggle-steering. This indicatesthat disturbances, likely primarily due to the wire tether, arelarger than is possible to consistently overcome using wrigglesteering to control yaw angle.

VI. CONCLUSIONS

This paper describes a method to rotate the yaw or headingangle of underactuated flapping-wing hovering flying robotsand animals. Termed wriggle-steering, it consists of drivingvehicle rotations around a certain axis by cyclically rotatingby small angles about two other axes. This was motivatedby a deficiency in an existing design of a fly-sized hoveringrobot, which is unable to reliably regulate its heading to adesired value using known wing kinematics. To the authors’knowledge, inducing motion by wriggle-steering way has notpreviously been proposed.

We used a simplified kinematic analysis to maximizeyaw angular rate under the realistic situation that actuationauthority T0 (maximum achievable pitch and roll torque)

Page 8: Rotating the Heading Angle of Underactuated …micro.seas.harvard.edu/papers/IROS15_1280_FI.pdf · Rotating the heading angle of underactuated ßapping-wing ... In this work we propose

is limited. Our results indicate that this can be achievedby minimizing oscillation cycle frequency. The lower fre-quency produces higher-amplitude rotation cycles. However,large oscillations may produce undesirable consequences. Asamplitude increases, the cycle-averaged lift force decreasesbecause more of the thrust from the wings is directed laterally.Oscillations also may make it more difficult to collect feed-back from onboard sensors, as well as making the vehicle’saerodynamics harder to predict. These consequences must beweighed against design objectives.

We then proposed two mechanisms by which a flapping-wing flying robot could perform the desired motion. Thefirst consists of wriggling at the stroke frequency. As aconceptual exercise, this is appealing because it relies on bodypitching oscillations that already occur as a result of the robotbeing driven by flapping wings. But it requires additionalactuators in the robot design, and our quasi-steady aerody-namic simulations and free-body model suggest it producesa low yaw rotation rate of 2.5�/s, limiting its applicability.The second consists of lower-frequency wriggling, driven bystroke-averaged torques. This produced much higher turn ratesin simulation, and can be performed on a currently-availablerobotic fly design. We performed hovering flight tests showedthat the robot’s average yaw rate was comparable to theprediction of the model in both directions.

Although our tests indicated that wriggle-steering couldnot consistently overcome tether disturbances acting on ourrobotic vehicle, our purpose in this work was merely tointroduce an actuation mode that could in principle performthe desired motion in underactuated designs. Our flight testsprovide encouraging evidence that wriggle-steering operatesas desired, reducing the need for additional actuators tosimplify design and reduce weight. In the future, consistentcontrol of heading angle may be facilitated as follows. First,disturbances could be reduced by using even thinner tetherwire, or better, removing it entirely by using batteries. Alter-natively, wriggling could be combined with split-cycle signalsto the actuators [14] to provide greater control authority.Combining actuation modes like this appears to be a commonapproach used in biology. For example, sudden headingchanges in flies in flight, termed body-saccades, are drivenby changes both in stroke deviation and amplitude [11].

We conclude by remarking that wriggle-steering as pro-posed here could be performed by other, non-hovering typesof robotic aerial vehicles. It is, however, impractical onmanned vehicles because rapid cyclic oscillations could leadto pilot discomfort. But for a robotic aerial vehicle, as longas the rotation angle along any two axes can be actuated, thenthe third can rotated by an equivalent style of phased cyclicexcitations.

VII. ACKNOWLEDGEMENTS

The authors would like to thank Richard M. Murray, BenFinio, and Pakpong Chirarattananon for insightful discussions.This work was partially supported by the National Science

Foundation (award numbers CCF-0926148) and the WyssInstitute for Biologically Inspired Engineering. Any opinions,findings, and conclusions or recommendations expressed inthis material are those of the authors and do not necessarilyreflect the views of the National Science Foundation.

REFERENCES

[1] Michael H. Dickinson, Fritz-Olaf Lehmann, and Sanjay P. Sane. Wingrotation and the aerodynamic basis of insect flight. Science, 204:1954–1960, 1999.

[2] M. H. Dickinson and K. G. Gotz. Unsteady aerodynamic performanceof model wings at low reynolds numbers. The Journal of ExperimentalBiology, 174(1):45–64, 1993.

[3] Charles P. Ellington, Coen van den Berg, Alexander P. Willmott, andAdrian L. R. Thomas. Leading-edge vortices in insect flight. Nature,384(19):626–630, December 1996.

[4] Michael H. Dickinson and Michael S. Tu. The function of the dipteranflight muscle. Journal of Comparative Physiology A, 116A:230–238,1997.

[5] Matthew Keennon, Karl Klingebiel, Henry Won, and Alexander An-driukov. Development of the nano hummingbird: A tailless flappingwing micro air vehicle. In AIAA Aerospace Sciences Meeting, pages1–24, Reston, VA, 9–12 January 2012. AIAA.

[6] Kevin Y. Ma, Pakpong Chirarattananon, Sawyer B. Fuller, and RobertWood. Controlled flight of a biologically inspired, insect-scale robot.Science, 340(6132):603–607, 2013.

[7] Zhi Ern Teoh and Robert J. Wood. A flapping-wing microrobot witha differential angle-of-attack mechanism. In Robotics and Automation(ICRA), 2013 IEEE Int. Conf., 2013.

[8] Jiang-hao Wu and Mao Sun. Control of flight forces and momentsby flapping wings of model bumblebee. Applied Mathematics andMechanics, 29(3):333–350, 2008.

[9] Michael W Oppenheimer, Isaac E Weintraub, David O Sigthorsson, andDavid B Doman. Control of a minimally actuated biomimetic vehicleusing quarter-cycle wingbeat modulation. Journal of Guidance, Control,and Dynamics, pages 1–10, 2015.

[10] B.M. Finio, J.P. Whitney, and R.J. Wood. Stroke plane deviation fora microrobotic fly. In Intelligent Robots and Systems (IROS), 2010IEEE/RSJ Int. Conf., pages 3378 –3385, 2010.

[11] Steven N. Fry, Rosalyn Sayaman, and Michael H. Dickinson. The aero-dynamics of free-flight maneuvers in Drosophila. Science, 300:495–498, 2003.

[12] Leif Ristroph, Attila J Bergou, John Guckenheimer, Z. Jane Wang, andItai Cohen. Paddling mode of forward flight in insects. Phys Rev Lett,106(17):178103, Apr 2011.

[13] W. S. N. Trimmer. Microbots and micromechanical systems. Sensorsand Actuators, 19:267–287, 1989.

[14] Kevin Y. Ma, Samuel M. Felton, and Robert J. Wood. Design,fabrication, and modeling of the split actuator microrobotic bee. InRobotics and Automation (ICRA), 2012 IEEE Int. Conf., pages 1133–1140, St. Paul, MN, 14–18 May 2012.

[15] M Karásek, A Hua, Y Nan, M Lalami, and A Preumont. Pitch androll control mechanism for a hovering flapping wing mav. In Micro AirVehicles (IMAV), 2014 Int. Conf. and Competition, 2014.

[16] Richard M. Murray and S. Shankar Sastry. Nonholonomic motionplanning: Steering using sinusoids. IEEE Trans. on Automatic Control,38(5):700–716, May 1993.

[17] Richard M. Murray. Geometric phases, control theory, and robotics.In Proceedings of the Board on Mathematical Sciences, Science andTechnology Symposium, Washington, DC, 1994.

[18] Sawyer B. Fuller, Michael Karpelson, Andrea Censi, Kevin Y. Ma,and Robert J. Wood. Controlling free flight of a robotic fly usingan onboard vision sensor inspired by insect ocelli. J. Royal SocietyInterface, 11(97), August 2014.

[19] JP Whitney and RJ Wood. Aeromechanics of passive rotation inflapping flight. J. Fluid Mechanics, 660(1):197–220, 2010.

[20] Ben M. Finio, Nestor O. Perez-Arancibia, and Robert J. Wood. Systemidentification and linear time-invariant modeling of an insect-sizedflapping-wing micro air vehicle. In Intelligent Robots and Systems(IROS), 2011 IEEE/RSJ Int. Conf., September 2011.

[21] Marc H. Raibert. Legged robots that balance. MIT press, 1986.