Abstract

This paper presents the dynamic modeling and control of a bi-modal, multirotor vehicle that is capable of omnidirectional terrestrial rolling and multirotor flight. It focuses on the theoretical development of a terrestrial dynamic model and control systems, with experimental validation. The vehicle under consideration may roll along the ground to conserve power and extend endurance but may also fly to provide high mobility and maneuverability when necessary. The vehicle uses a three-axis gimbal system that decouples the rotor orientation from the vehicle’s terrestrial rolling motion. A dynamic model of the vehicle’s terrestrial motion is derived from first principles. The dynamic model becomes the basis for a nonlinear trajectory tracking control system suited to the architecture of the vehicle. The vehicle is over-actuated while rolling, and the additional degrees of actuation can be used to accomplish auxiliary objectives, such as power optimization and gimbal lock avoidance. Experiments with a hardware vehicle demonstrate the efficacy of the trajectory tracking control system.

1 Introduction

Multi-modal or hybrid mobile robots continue to draw attention from researchers due to their versatility and success in traversing unknown and unstructured terrain. Such vehicles show particular promise in subterranean operations, where long endurance and high mobility are required [17]; these are often competing requirements for a single locomotion mechanism, whereas a judicious combination of complementary locomotion mechanisms can provide both efficiency and mobility.

A bi-modal locomotion combination that has recently received attention from researchers is that of a multirotor, rolling-flying vehicle (MRFV) [6,814]. MRFVs contain a multirotor vehicle at their core, combined with a means of rolling locomotion. The rotors provide the sole source of propulsion, whether rolling or flying. This arrangement combines the mobility and maneuverability of multirotor flight with the efficiency of rolling locomotion, making MRFVs attractive candidates for subterranean operations. One of the earliest MRFVs is the Hy-TAQ [13], which places a quadrotor at the center of a cylindrical cage with a single axis of rotation to permit forward rolling. Takahashi et al. [11] and Atay et al. [10] create and analyze two-wheeled MRFVs which permit yawing without slipping.

A key challenge for researchers has been to demonstrate controlled, terrestrial trajectory tracking of MRFVs in closed-loop; most authors do not discuss nor design a control system and only [10] reports any experimental, closed-loop control system data from a hardware prototype. One reason for this is the existence of a constrained (or preferential) rolling direction enforced by the kinematic constraints of the rolling mechanism (e.g., wheels ([9,11,12]), cylindrical cage ([6,13,14])). This means that the orientation of the multirotor vehicle is coupled to the motion of the rolling mechanism. As a result, when an obstacle or disturbance is encountered at the rolling mechanism, (e.g., a bump in terrain), the multirotor, and therefore propulsion direction, is affected. This effect is exacerbated as the distances between wheels (or lengths of cylindrical cages) increase. This makes trajectory tracking control difficult on all but the most benign terrains, i.e., smooth, flat ground. One strategy to address this challenge is to decouple the multirotor from the terrestrial rolling mechanism. Mizutani et al. [15] accomplish this by suspending the multirotor vehicle within a series of nested gimbals that are surrounded by a spherical cage; the cage may rotate compliantly in response to encountering an obstacle while leaving the multirotor vehicle within unperturbed. A commercial embodiment of this strategy is the Elios by Flyability (Paudex, Switzerland), which is an inspection drone surrounded by a protective cage. Though both systems contain a gimbal system within a spherical cage, neither is intended to locomote by rolling; both are flying vehicles, and the gimballed cage helps the vehicles remain stable in flight despite collisions with obstacles. Other researchers have enclosed multirotor vehicles within static (i.e., nongimballed) protective cages [16,17]. However, these vehicles are not capable of (nor intended for) rolling locomotion because they cannot control the orientation of their rotors with respect to their cages.

1.1 Contributions.

The spherical multirotor rolling-flying vehicle (SRFV) presented in this paper consists of a quadrotor suspended within a three-axis gimbal system that is surrounded by a spherical cage. An image of the SRFV appears in Fig. 1. The gimbals permit the quadrotor within to rotate independently of the spherical cage, while the cage serves as the rolling mechanism and protects the vehicle. Therefore, the SRFV combines the virtues of the MRFV of [810] (i.e., aerial mobility and maneuverability, terrestrial efficiency) with the benefits of a decoupling gimbal mechanism and a spherical cage.

Fig. 1
Fig. 1
Close modal

In particular, the SRFV’s gimbal and spherical cage arrangement reduces the sensitivity of the quadrotor’s orientation to terrain disturbances (as in Ref. [15]), which helps address the control challenge faced by existing MRFVs. Additionally, using a spherical cage (rather than wheels or a cylindrical cage) places the point at which the vehicle contacts the terrain nearer to the vehicle’s center. This reduces the moment arm through which disturbance forces caused by the terrain produce deleterious disturbance moments. Furthermore, the spherical cage makes contact with the terrain at one (or a few closely spaced) point(s), meaning that differences in the terrain between contact points are less likely to generate large disturbance moments; this is a significant advantage over a wheeled or cylindrical MRFV wherein the distance between the terrain contact points is typically as large as the vehicle itself. Taken together, these characteristics reduce the SRFV’s sensitivity to terrain disturbances compared with existing MRFVs. Additionally, the kinematic independence of the SRFV’s quadrotor and spherical cage permits controlled, omnidirectional rolling; the SRFV’s three-axis gimbal system decouples the rotor orientation from the cage orientation so that the SRFV can generate thrust is any direction, irrespective of the direction of terrestrial rolling motion. This contrasts with existing MRFVs, which can only generate thrust in a vertical plane that is parallel to the direction of terrestrial rolling motion. As a result, the SRFV offers inherent advantages in terrestrial mobility compared with existing MRFVs.

Several authors use off-the-shelf (OTS) flight controllers on their MRFVs, e.g., PixHawk [14], ArduCopter [13]. Others retrofit a complete OTS quadrotor vehicle with a rolling mechanism and use the onboard flight controller [12,15]. These controllers are inherently limited as they are designed to control flying multirotor vehicles. Their limitations as they relate to control, control allocation, and power optimization are discussed in Ref. [10]. In particular, OTS quadrotor controllers and control allocation methods limit the quadrotor’s range in pitch and roll. As a result, most of the thrust produced by an OTS quadrotor controller is directed vertically, which does no work to propel a terrestrial vehicle on flat ground. Such limitations reduce the potential energetic benefits of the SRFV’s rolling mode and prohibit complete control of the rotors’ thrust direction. This paper presents a novel, terrestrial control system for the SRFV which permits thrust generation in any direction; the quadrotor’s pitching and rolling range are unlimited.

The control system design is based on a terrestrial dynamic model of the SRFV. The model considers the translational and rotational dynamics of the quadrotor and spherical cage, along with nonholonomic rolling constraints. This paper is the first to produce a dynamic model of the SRFV.

Additionally, the SRFV is over-actuated while rolling. This paper describes how the additional degrees of actuation can be used to optimize SRFV operation by controlling the ground reaction normal force. The result is a control system that leverages the SRFV’s over-actuation to simultaneously accomplish control and optimization objectives.

1.2 Outline.

This paper is organized as follows: Sec. 2 develops a six-DOF dynamic model of the SRFV’s terrestrial motion using the Newton–Euler method of mechanics. The nonholonomic kinematics of the SRFV are derived, providing a method for vehicle odometry. Section 3 utilizes this model to design a trajectory tracking control system for terrestrial motion, the output of which is the two-dimensional position of the SRFV upon a horizontal plane. In addition, this section describes how the vehicle is over-actuated while rolling and discusses methods for optimizing the performance of the SRFV by leveraging the extra degrees of actuation. Section 4 describes a hardware embodiment of the SRFV, along with a description of the sensors required to implement the trajectory tracking controller. Section 5 presents simulation results and empirical results obtained from the hardware embodiment of the SRFV, both of which demonstrate favorable trajectory tracking.

2 Modeling

2.1 Mathematical Nomenclature.

This section briefly describes the mathematical conventions and nomenclature used to derive the terrestrial dynamic model of the SRFV. Lowercase, uppercase, and double struck sub- and superscripts refer to points, bodies, and coordinate reference frames, respectively. The position vector $rabC$ represents the position of point b relative to point a resolved (i.e., expressed) in the ℂ coordinate frame of reference. $rab,pC$ indexes the element of $rabC$ in the p-direction, where p can be x, y, or z. The velocity vector $Dr˙abC$ is the derivative with respect to (i.e., measured by an observer fixed in) reference frame $D$ of the position of point b relative to point a resolved in coordinate frame ℂ. The acceleration vector $EDr¨abC$ is the derivative with respect to reference frame $E$ of the derivative with respect to reference frame $D$ of the position of point b relative to point a resolved in coordinate frame ℂ. The angular velocity $ωABC$ is the angular velocity of frame $B$ with respect to frame $A$ resolved in frame ℂ. The angular acceleration $Dω˙ABC$ is the derivative with respect to frame $D$ of the angular velocity of frame $B$ with respect to frame $A$ resolved in frame ℂ. $[a]x$ represents the skew-symmetric matrix formed from the elements of the vector $a$ such that $[a]xb=a×b$. $CAB$ is a rotation matrix that transforms a vector’s frame of resolution from $A$ to $B$ such that $rB=CABrA$. A hat over a vector quantity indicates a unit vector, e.g., the unit vector of $r$ is $r^$. $i^$, $j^$ and $k^$ represent the orthonormal basis vectors of ℝ3 so that $i^=[100]T,$$j^=[010]T$, and $k^=[001]T$.

2.2 Model Formulation.

This section presents the mathematical model of the SRFV’s terrestrial motion.

• (1) Bodies and reference frames

Figure 2 contains schematic diagrams of the SRFV rolling upon a rough, horizontal, inertial plane. The vehicle is modeled as a rigid body A (the quadrotor, small interior rings) suspended within three, nested, massless gimbals G1 (vertical ring), G2 (horizontal ring), and G3 (horizontal rod) that create a three-dimensional (3D) pendulum. The gimbals are housed within a perfectly spherical shell B (thin outer circles) that rolls without slipping on the inertial plane. The outermost gimbal G1 is fixed to the interior of the spherical shell. The center of both the spherical shell and the gimbal assembly is point b. Reference frame $I$ is an inertial reference frame fixed to the plane at point i, and reference frames $A$ and $B$ are attached to bodies A and B, respectively. Reference frame $B$ is attached to body B at point b, i.e., the geometric center of the spherical shell. The center-of-mass (CoM) of A is at point a, and does not necessarily coincide with b, but is offset by a distance h (not labeled in Fig. 2) in the negative $y^A$-direction, i.e., $rbaA=[00−h]T$. Point b is fixed in bodies A and B so that rotation of A with respect to B occurs about point b.

Fig. 2
Fig. 2
Close modal
We choose as generalized coordinates the position of point b projected in the $x^I$-$y^I$ plane, the gimbal angles β1, β2, and β3, and the orientation of the $A$ with respect to $I$, parameterized by a quaternion $qIA$. Therefore, the generalized coordinates are
$q=[rib,xIrib,yIβ1β2β3qIAT]T$
(1)
• (2) Gimbals

Body A is free to rotate about point b (via the gimbal assembly) within the sphere B so that the orientations of $A$ and $B$ are independent. The rotation matrix relating $A$ and $B$ is a function of the gimbal angles β1, β2, and β3, which are associated with G1, G2, and G3, respectively:
$CAB=Rz(β1)Ry(β2)Rx(β3)$
(2)
where Rp(θ) represents a rotation of θ radians about the p-axis, where p ∈ {x, y, z}. That is, the G1 rotates about the shared z-axis of $B$ and G1, G2 rotates about the shared y-axis of G1 and G2, and G3 rotates about the shared x-axis of G2 and G3. The angular velocity $ωBA$ is related to the gimbal rates by
$ωBAB=[0−sinβ1cosβ1cosβ20cosβ1sinβ1cosβ210−sinβ2]β˙=Γβ˙$
(3)
where the definition of Γ follows from Eq. (3) and $β˙≡[β˙1β˙2β˙3]T$. Although not indicated with a superscript, the derivative $β˙q$ is with respect to an observer fixed to the Gq gimbal for q ∈ {1, 2, 3}. That is, $β˙q$ is the angular velocity that would be measured by a rotary encoder at the qth gimbal joint. Although rotation between $A$ and $B$ is unconstrained, a dissipative moment due to gimbal bearing friction is modeled as an equal and opposite reaction moment $Mb$ between A and B. Therefore
$MbB=−b1β˙1k^−b2β˙2Rz(β1)j^−b3β˙3Rz(β1)Ry(β2)i^$
(4)
where bi is a viscous damping coefficient associated with gimbal Gi. Additionally, the free-body diagrams of Fig. 3 indicate that there is an equal and opposite reaction force $Fb$ between bodies A and B at point b. Note that other moments internal to the gimbals (i.e., those orthogonal to gimbal rotation) are neglected because the gimbals are kinematically modeled as an unrestricted 3D pendulum. As a result, physical gimbal lock phenomena are not predicted by the model presented in this section. Lastly, because the gimbals are massless, $Mb$ and $Fb$ are sufficient to describe the direct reactions between bodies A and B.
• (3) Rolling reactions

Fig. 3
Fig. 3
Close modal
The sphere B contacts the plane at point c so that $rbcI=[00−R]$, where R is the radius of sphere B. The ground contact force $Fc$ acts on B at the point c. This force includes both the normal and rolling reaction forces. A moment due to rolling resistance $Mrr$ is applied to, and opposes the motion of, the sphere B. Assume that $Mrr$ is proportional to normal force FN, which is the component of $Fc$ in the $I$ frame z-axis direction, i.e., $FN=z^ITFc$, where $z^I$ is the unit vector in the direction of the $I$ frame z-axis. Then, if $Mrr$ is in a direction opposing the motion of B
$Mrr=crrIr˙ib×z^I|Ir˙ib×z^I|FN=crrIr˙ib×z^I|Ir˙ib×z^I|z^ITFc=CrrFc$
(5)
where crr is a terrain-dependent coefficient of rolling resistance and the definition of Crr ∈ ℝ3×3 follows from Eq. (5).
• (4) Control inputs

The control force and moment, $FR$ and $MR$, respectively, are generated by the quadrotor’s rotors and act directly on body A. Because of the fixed orientation of the rotors, $FR$ is entirely in the $z^A$-direction, i.e., $FRA=FR,zAk^$. As a result
$[FRAMRA]=[02×4I4×4][FR,zAMRA]$
(6)
Now, define the control input as $u≡[FR,zAMRAT]T∈R4×1$. $FR,zA$ and $MR$ are synthesized from the thrust and torque produced by each rotor. Define the thrust and torque of the ith rotor as Ti and Qi, respectively. By invoking the hover assumption, which is standard in the quadrotor literature [18], Ti and Qi can be expressed as
$Ti=kTΩi2,Qi=kQΩi2$
(7)
where Ωi is the angular velocity of the ith rotor about its axis, and kQ and kT are the rotor torque and thrust constants, respectively. Therefore, the control $u$ can be expressed in terms of the thrusts
$u≡[FR,zAMRA]=[1111LL−L−L−LLL−L−kQkTkQkT−kQkTkQkT][T1T2T3T4]=crotorT$
(8)
where L is the perpendicular distance of each rotor to point a projected in the x-y plane of $A$, T ∈ ℝ4×1 is a vector of thrusts, and the definition of crotor follows from Eq. (8).
• (5) Equations of motion for body B (spherical shell)

First apply Newton’s and Euler’s laws to the sphere B in Fig. 3(b). Summing forces yields
$∑FB=mBIIr¨ib=Fc+mBg−Fb$
(9)
where $g$ is the gravitational acceleration. Summing moments on B about its CoM b, yields
$∑MbB=IbBIω˙IB+ωIB×IbBωIB=rbc×Fc−Mb+Mrr$
(10)
where IbB is an inertia tensor of body B about point b. Substituting Eq. (5) into (10) results in
$∑MbB=IbBIω˙IB+ωIB×IbBωIB=([rbc]×+Crr)Fc−Mb$
(11)
The no-slip nonholonomic rolling constraint leads to kinematic relationships between the linear and angular velocity and acceleration of B:
$Ir˙ib=−ωIB×rbc$
(12)
$IIr¨ib=−Iω˙IB×rbc$
(13)
Substituting Eq. (13) into (9), solving the resulting expression for $Fc$, and then substituting that result into Eq. (10) yields
$(IbB−mB([rbc]×+Crr)[rbc]×)Iω˙IB+ωIB×IbBωIB=([rbc]×+Crr)(Fb−mBg)−Mb$
(14)
which relates $Iω˙IB$ to the inter-body reaction force $Fb$.
• (6) Equations of motion for body A (quadrotor)

Next, Newton’s and Euler’s laws are applied to body A in Fig. 3(a)
$∑FA=mAIIr¨ia=FR+mAg+Fb$
(15)
Summing moments on A about point b, yields
$∑MbA=IbAIω˙IA+ωIA×IbAωIA+rba×mAIIr¨ib=rba×mAg+Mb+MR$
(16)
where IbA is an inertia tensor of body A about point b. Invoking the transport theorem, the velocity and acceleration kinematics of A are
$Ir˙ia=Ir˙ib+ωIA×rba$
(17)
$IIr¨ia=IIr¨ib+Iω˙IA×rba+ωIA×(ωIA×rba)$
(18)
Substituting Eq. (13) into (18) yields
$IIr¨ia=[rbc]×Iω˙IB−[rba]×Iω˙IA+[ωIA]×2rba$
(19)
Substituting Eq. (19) into (15), solving for $Fb$ and substituting the result into Eq. (14) yields
$(IbB−(mA+mB)([rbc]×+Crr)[rbc]×)Iω˙IB+ωIB×IbBωIB=−mA([rbc]×+Crr)[rba]×Iω˙IA+([rbc]×+Crr)(mA[ωIA]×2rba−(mA+mB)g−FR)−Mb$
(20)
which relates $Iω˙IB$ and $Iω˙IA$. Substituting Eq. (13) into (16) results in another expression relating $Iω˙IB$ and $Iω˙IA$:
$IbAIω˙IA+ωIA×IbAωIA+mA[rba]×[rbc]×Iω˙IB=rba×mAg+Mb+MR$
(21)
• (7) Solving the equations of motion

Equations (20) and (21) must be simultaneously solved for $Iω˙IA$ and $Iω˙IB$. Furthermore, if the resulting equations of motion are to be the basis for control system design, it is desired to rewrite the solutions to $Iω˙IA$ and $Iω˙IB$ in control-affine form wherein the control $T$ is factored out. To do so, Eqs. (20) and (21) are rewritten as
$c11Iω˙IA+c12Iω˙IB=d1+g1FRc21Iω˙IA+c22Iω˙IB=d2+MR$
(22)
where, from inspection of Eqs. (20) and (21)
$c11=mA([rbc]×+Crr)[rba]×c12=IbB−(mA+mB)([rbc]×+Crr)[rbc]×c21=IbAc22=mA[rba]×[rbc]×$
(23)
$d1=([rbc]×+Crr)(mA[ωIA]×2rba−(mA+mB)g)−ωIB×IbBωIB−Mbd2=rba×mAg+Mb−ωIA×IbAωIA$
(24)
$g1=−[rbc]×−Crr$
(25)
Equation (22) is written in compact form and solved for $Iω˙IA$ and $Iω˙IB$:
$[Iω˙IAIω˙IB]=c−1d+c−1[g103×303×3I3×3][FRMR]$
(26)
where $c≡[c11c12c21c22]∈R6×6$ and $d≡[d1d2]∈R6×1$. Resolving Eq. (26) in the $A$ frame and substituting in Eq. (6) and the definition of the control $u$ yields
$[Iω˙IAAIω˙IBA]=(c−1d)A+(c−1[g103×303×3I3×3])A[02×4I4×4]u=f+gu$
(27)
which is the desired control-affine form. The definitions of f ∈ ℝ6×1 and g ∈ ℝ6×4 follow from Eq. (27), and the superscript $A$ indicates that all quantities in the parentheses are resolved in the $A$ frame. Note that g in this context is not to be confused with the gravitational acceleration $g$ from the dynamic model.
• (8) Generalized velocity

Note that even though the configuration space of the system is eight-dimensional (2D position of B plus 3D orientation of B plus 3D orientation of A), the motion of the system is confined to a six-dimensional subspace of the configuration space. This is due to the nonholonomic rolling constraints on the system; the linear velocity $Ir˙ib$ is completely determined by $ωIB$ according to Eq. (12). As a result, Eq. (27) is sufficient to completely describe the motion of the system. To see this, resolve Eq. (12) in the $I$ frame and isolate the x- and y-components:
$[Ir˙ib,xIIr˙ib,yI]=−[100010]ωIBI×rbcI=[100010]CAI[rbcA]×ωIBA$
(28)
Also, from Eq. (3), $β˙=Γ−1ωBAB=Γ−1CAB(ωIAA−ωIBA)$. Finally, the angular velocity $IωIAA$ is kinematically related to $q˙IA$ by $q˙IA=12qIA⊗ωIAA$. Therefore, the generalized velocity can be written as
$q˙=[Ir˙ib,xIIr˙ib,yIβ˙1β˙2β˙3q˙IAT]T=[[100010]CAI[rbcA]×ωIBAΓ−1CAB(ωIAA−ωIBA)12qIA⊗ωIAA]$
(29)

Since $CAI$ is a function of $qIA$ and $CAB$ is a function of $β$, $q˙$ only depends on $ωIAA$, $ωIBA$, and $q$.

3 Control System Design

In this section, a closed-loop, trajectory tracking control system is developed to control the terrestrial motion of the SRFV.

3.1 Control System Objectives.

The objective of the control system is to force point b of the SRFV to track a trajectory in the x-y plane of the inertial frame $I$. The control system consists of an outer position control loop and an inner orientation control loop, which is a common practice in the control of flying quadrotors [19]. However, a trajectory tracking controller intended for a conventional flying quadrotor is not appropriate for the terrestrial control of the SRFV. A flying quadrotor tracks a three-dimensional (3D) position (or velocity) in the inertial frame, and a heading angle. However, while on the ground, the SRFV only tracks a two-dimensional (2D) position (or velocity) in the inertial frame; altitude, and heading angle control are unnecessary. Therefore, there are only two quantities that must be tracked by the SRFV’s terrestrial controller, rather than the four required to control a flying quadrotor. As a result, the SRFV is over-actuated while rolling. In fact, there are two “extra” degrees of actuation which can be used to optimize the terrestrial operation of the SRFV. First, the actuation mechanism that would otherwise control the heading of a flying quadrotor may be used by the SRFV to avoid gimbal lock while rolling. Second, the component of the control force $FR$ in the $z^I$ direction (denoted $FR,zI$) can be directly prescribed while rolling. This force, which is typically used to control altitude in a conventional quadrotor, can instead be used to reduce the normal reaction between the SRFV and ground, thereby reducing rolling resistance. This phenomenon is discussed in detail by Ref. [8], and techniques to leverage this additional degree of control to minimize power consumption or maximize range are discussed by Ref. [20]. Other normal force optimization strategies could achieve a desired tradeoff between minimizing power consumption and minimizing the impact that the SRFV has on the surrounding environment, or the audible noise generated by the rotors. Note that OTS quadrotor controllers are not capable of arbitrarily prescribing $FR$, i.e., the range over which they can control roll and pitch is limited.

3.2 Control System Description.

This section provides an overview of the SRFV’s terrestrial trajectory tracking control system, which is illustrated in the block diagram of Fig. 4. An outer position controller operates on the desired and actual position and velocity of the SRFV, resolved in the inertial frame. The outputs of this controller are the x- and y-components of a desired control force $FR,desI$ to be synthesized by the SRFV’s rotors. The z-component of $FR,desI$ is specified directly to control the vehicle normal force, as described above. Recall from Sec. 2.2.4 that the control force $FR$ is constrained to be in the $z^A$ direction, which is normal to the plane of the rotors. That is
$FR=FR,zAz^A$
(30)
Fig. 4
Fig. 4
Close modal
Therefore, the direction of $FR,desI$, which comes from the position controller and normal force optimization block, prescribes the desired rotor-plane-normal (RPN) direction $z^A,desI$. That is, $z^A,desI=F^R,desI$. Now $z^A,desI$ becomes the reference command to an inner-loop RPN controller that forces $z^AI$ to track $z^A,desI$. The outputs of the RPN controller are the x- and y-components of the desired angular acceleration $Iω˙IA,desA$ that would regulate the RPN error to zero. This desired angular acceleration is termed $αdes$, i.e., $αdes≡[Iω˙IA,x,desAIω˙IA,y,desA]T$. Both the kinematic equations of the RPN error and the $Iω˙IAA$ equations of motion are nonlinear, so feedback linearization is used to determine the control $u≡[FR,zAMRAT]T$. The feedback linearized equations, which are underdetermined, are augmented with equations for $FR,zA$ and $MR,zA$ prior to solving. Thus, the solutions of $MR,xA$ and $MR,yA$ are informed by the auxiliary objectives of $FR,zA$ and $MR,zA$. $MR,zA$ may be chosen freely, or determined via a gimbal lock avoidance algorithm, while the value of the control $FR,zA$ is assigned to be the component of $FR,desI$ in the true $z^AI$ direction:
$FR,zA=z^AITFR,desI=k^TCIAFR,desI$
(31)

This occurs in the block labeled “Resolve Force in $A$” in Fig. 4. Thus, all four components of the control $u≡[FR,zAMRAT]T$ are specified. $u$ is then converted into the rotor thrusts $T$ via a control allocation algorithm which is discussed in Sec. 3.6.

3.3 Odometry.

The position $ribI$ and velocity $Ir˙ibI$ are inputs to the position controller. These variables are not measured directly but are calculated based on other measurements using odometry. From Eq. (12)
$Ir˙ibI=−ωIBI×rbcI=−(ωIAI−ωBAI)×rbcI=−[CAI(ωIAA−ωBAA)]×rbcI=−[CAI(ωIAA−Γβ˙)]×rbcI$
(32)
where $ωIAA$ and $CAI$ are obtained from the inertial navigation system (INS) and $β˙$ and $Γ(β)$ are obtained from the gimbal encoders (see Eq. (3)). Equation (32) is numerically integrated to determine $ribI$.

3.4 Position Controller Design.

The goal of the position controller is to force the x- and y-components of $ribI$ to track a desired trajectory $(ribI,Ir˙ibI,IIr¨ibI)des$ in the x-y plane. The plant model used to design the position control system is a simplified version of the dynamic model derived in Sec. 2.2. The simplifying assumptions are

• The body B is a uniform, spherical shell so that $IbBI=IbBB$ is a diagonal matrix, and the principal moments of inertia are identical, i.e., $IbB,xxB=IbB,yyB=IbB,zzB$. Therefore $IωIB×IbBIωIB=0$ in Eq. (23).

• The rolling resistance coefficient crr = 0, therefore Crr = 03×3. Rolling resistance provides open-loop damping, which is desirable from a stability perspective. Therefore, we do not attempt to compensate for rolling resistance, which could lead to instability if the estimate of crr were uncertain. Since the terrain characteristics are not known a priori, the most conservative action is to assume crr = 0.

• Gimbal viscous friction is negligible, i.e., b1 = b2 = b3 = 0, therefore $Mb=0$. As with rolling resistance, gimbal friction is a source of stability and is difficult to quantify.

• $h=0∴rba=0$. The result of this assumption is that $FR$ is the only control affecting $ribI$.

Combining the kinematic acceleration constraint of Eq. (13) with the equations of motion from Eq. (26) yields
$IIr¨ib=−Iω˙IB×rbc=[rbc]×Iω˙IB=[rbc]×[03×3I3×3](c−1d+c−1[g103×303×3I3×3][FRMR])$
(33)
Resolving Eq. (33) in the $I$ frame and invoking the simplifying assumptions results in
$IIr¨ibI=1meq[FR,xIFR,yI0]$
(34)
where $meq≡IbB,zzBR2+mA+mB$ is the equivalent mass. The x- and y-components of $IIr¨ibI$ are decoupled and linear, so the control for each component can be designed separately using state feedback. Moreover, the two designs will be identical. Let ej represent the error in the jth component of $ribI$, i.e., $ej≡rib,j,desI−rib,jI$, where j can be x or y. The differential equation describing the evolution of the error is
$e¨j=IIr¨ib,j,desI−IIr¨ib,jI=IIr¨ib,j,desI−1meqFR,jI$
(35)
Define a virtual control $vj≡IIr¨ib,j,desI−1meqFR,jI$ so that $e¨j=vj$. Now a control law can be designed for vj such that ej → 0. The assumptions outlined at the beginning of this section can result in a steady-state error due to modeling inaccuracies, particularly the assumption that B is perfectly spherical and that crr = 0. To combat this, we also require that $e˙j→0$, which results in an integrator in the control law. The state feedback control law is chosen to be
$vj=−Kηj,ηj≡[I∫ejIdtejIIe˙jI]T$
(36)
where the gains K = [K1K2K3] are selected using LQR or pole-placement. The final control law is
$FR,jI=meq(IIr¨ib,j,desI−vj)=meq(IIr¨ib,j,desI+Kηj)=meq(IIr¨ib,j,desI+K1I∫ejdt+K2ej+K3Ie˙j)$
(37)

If the integrator is not desired or unnecessary, it can be omitted by placing the first pole at the origin, resulting in K1 = 0. In the broader context of the entire trajectory tracking control system, the control law Eq. (37) specifies the x- and y-components of $FR,desI$ which, together with prescribed value of $FR,z,desI$ from the normal force optimization strategy, are the input to the RPN controller.

3.5 Rotor-Plane-Normal Controller.

An RPN control system is described in this section. The goal of the RPN controller is to force $z^A$ to align with $z^A,des$, where $z^A,desI=F^R,desI$. The plant model used to design the RPN control system is a simplified version of the dynamic model derived in Sec. 2.2. The simplifying assumptions are identical to those from the position controller design (Sec. 3.4) with the exception that the h = 0 assumption is relaxed; the CoM of A does not have to coincide with the center of the sphere B.

The dynamic equations that inform the RPN controller design are those of $Iω˙IAA$. Partitioning Eq. (27) yields
$[Iω˙IAAIω˙IBA]=f+gu=[fAfB]+[gAgB]u$
(38)
so that
$Iω˙IAA=fA+gAu$
(39)
Now a control law for $u$ must be designed to force $z^A$ to align with $z^A,des$. To do so, first define the RPN error $eRPN$ such that
$eRPN≡z^A×w^$
(40)
where $w^$ is the unit vector of
$w≡z^A+z^A,des$
(41)
which is a vector that bisects the angle γ between $z^A$ and $z^A,des$, as shown in Fig. 5. Therefore, the magnitude of $eRPN$ is $sinγ2$ and the direction of $eRPN$ is normal to both $z^A$ and $z^A,des$. This is a desirable error metric because the magnitude of $sinγ2$ is maximum when γ = ± π radians, and the direction of $eRPN$ is in the direction of $A$-frame rotation that will bring $z^A$ and $z^A,des$ into alignment. Differentiating Eq. (40) yields
$Ie˙RPN=Iz^˙A×w^+z^A×Iw^˙$
(42)
$IIe¨RPN=Iz^¨A×w^+2Iz^˙A×Iw^˙+z^A×Iw^¨$
(43)
where $w^=z^A+z^A,des|z^A+z^A,des|$. The derivatives $w^˙$ and $w^¨$ can be related to $w˙$ and $w¨$, respectively, by
$Iw^˙=Λ1Iw˙|w|,IIw^¨=Λ1IIw¨+Λ2Iw˙|w|$
(44)
where $Λ1=I−w^w^T$ and $Λ2=−1|w|(Λ1w^TIw˙+Λ1Iw˙w^T+w^Iw˙TΛ1)$.
Fig. 5
Fig. 5
Close modal
The goal now is to express Eq. (43) in terms of $Iω˙IA$ so that Eq. (39) can be inserted; this will provide a feedback linearizable expression. Substituting Eq. (44) into (43) and rearranging yields
$IIe¨RPN=(1|w|[z^A]×Λ1−[w^]×)IIz^¨A+1|w|[z^A]×(Λ1IIz^¨A,des+Λ2Iw˙)+2[Iz^˙A]×Iw^˙$
(45)
The derivatives of $z^A$ are expressed in terms of $ωIA$ and $Iω˙IA$ using kinematic relationships:
$Iz^˙A=ωIA×z^A=−[z^A]×ωIAIz^¨A=Iω˙IA×z^A+ωIA×Iz^˙A−[z^A]×Iω˙IA+[ωIAA]×2z^A$
(46)
Substituting Eq. (46) into (45) yields
$IIe¨RPN=([w^]×−1|w|[z^A]×Λ1)[z^A]×Iω˙IA+(1|w|[z^A]×Λ1−[w^]×)[ωIA]×2z^A+1|w|[z^A]×(Λ1IIz^¨A,des+Λ2Iw˙)+2[Iz^˙A]×Iw^˙=c1Iω˙IA+c2$
(47)
where the definitions of c1 and c2 follow from Eq. (47). Resolving Eq. (47) in the $A$ frame yields
$IIe¨RPNA=c1AIω˙IAA+c2A$
(48)
where the superscripts on $c1A$ and $c2A$ indicate that all quantities are resolved in the $A$ frame. Even though Eq. (48) describes the evolution of $eRPNA$ in the x-, y-, and z-directions, only $eRPN,xA$ and $eRPN,yA$ are independently controlled because $eRPN,zA=0$, always. Note that this does not imply that $Ie˙RPN,zA=0$ nor that $IIe¨RPN,zA=0$. Furthermore, while $IIe¨RPNA∈R3×1$, only two inputs (namely $Iω˙IA,xA$ and $ω˙IA,yA$) determine its evolution. That is, the third column of $c1A$ is always zeros. An intuitive explanation is that only two controls are required to specify a direction, such as $z^A$, in ℝ3. Therefore, only the dynamics of $IIe¨RPN,xA$ and $IIe¨RPN,yA$ are prescribed, and this is accomplished via $Iω˙IA,xA$ and $ω˙IA,yA$. To that end, define a variable $ϵ$ such that
$ε≡[eRPN,xAeRPN,yA]=[I2×202×1]eRPNA∈R2ε˙≡[I2×202×1]Ie˙RPNAε¨≡[I2×202×1]IIe¨RPNA$
(49)
and define $α≡[Iω˙IA,xAIω˙IA,yA]T=[I2×202×1]Iω˙IAA∈R2$. Substituting Eq. (48) into (49) and realizing that the third column of $c1A$ is always zeros (i.e., $IIe¨RPNA$ only depends on $Iω˙IA,xA$ and $Iω˙IA,yA$) yields
$ε¨=[I2×202×1](c1AIω˙IAA+c2A)=[I2×202×1](c1A[I2×201×2]α+c2A)$
(50)
Now the error dynamics $ε¨$ can be controlled through $α$ using feedback linearization. To feedback linearize Eq. (50), define a virtual control $νRPN$ such that
$ϵ¨=vRPN$
(51)
Now a stabilizing control law for $vRPN$ can be designed. The error system of Eq. (51) is input–output decoupled, and the control law will be the same in the x-, y-directions, so a single controller will be designed and applied to each axis. As with the position control system, a state feedback controller of the form
$vRPN,j=−KηRPN,jηRPN,j≡[I∫εRPN,jAdtεRPN,jAIε˙RPN,jA]T$
(52)
is chosen, where εj is the j-component of the of $ϵ$ and the gains K = [K1K2K3] are selected using LQR or pole-placement. An integral term ensures that $z^A→z^A,des$ even in the presence of modeling errors and disturbances, such as uncertainty in h. As before, if the integrator is not desired nor necessary, it can be omitted by placing the first pole at the origin, resulting in K1 = 0. With the virtual control defined, (51) is substituted into (50) and solved for $α$. The result is the desired value of $α$ (i.e., $Iω˙IA,xA$ and $ω˙IA,yA$) necessary to achieve $ϵ→0$, which is referred to as $αdes$
$αdes=([I2×202×1]c1A[I2×201×2])−1(vRPN−[I2×202×1]c2A)(53)$
(53)
The control $u$ that realizes this value of $α$ is determined using the equation of motion Eq. (39), rewritten in terms of $α$:
$α=[I2×202×1](fA+gAu)$
(54)
Rearranging Eq. (54) to isolate $u$ yields
$[I2×202×1]gAu=α−[I2×202×1]fA$
(55)
To solve for $u$, the quantity $[I2×202×1]gA$ must be inverted. However, $[I2×202×1]gA∈R2×4$, meaning that $u$ is underdetermined by (55). This condition permits specifying auxiliary performance or optimization criteria to be accomplished via $u$. $MR,zA$ can be specified directly to avoid gimbal lock. This provides another equation in $u$:
$MR,zA=[0001]u$
(56)
Also, recall from Sec. 3.1 that the z-component of $FR,desI$ is specified directly to control the vehicle normal force. This provides yet another equation in $u$. Namely, from Eq. (31)
$FR,zA=k^TCIAFR,desI=[1000]u$
(57)
Figure 4 illustrates how $FR,desI$ comes from both the position controller and the normal force controller, and $MR,zA$ comes from a gimbal lock avoidance algorithm. Augmenting Eq. (55) with Eqs. (56) and (57) and solving for $u$ yields
$u=[[I2×202×1]gA[1000][0001]]−1[αdes−[I2×202×1]fAk^TCIAFR,desIMR,zA]$
(58)
where $αdes$ is given by Eq. (53). This requires a 4 × 4 inversion. However, Eq. (58) can be partitioned between the third and fourth elements because the fourth column of $[I2×202×1]gA$ is zero, always. This is because the fourth element of $u$ is $MR,zA$, which is the moment about the $A$ frame z-axis. This moment cannot influence $ϵ¨$ because $ϵ$ is invariant under rotation about the $A$ frame z-axis; $MR,zA$only influences $Iω˙IA,zA$, and $Iω˙IA,zA$ does not influence $ϵ¨$. That is, $ϵ¨$ only depends on $Iω˙IA,xA$ and $Iω˙IA,yA$, i.e $α.$ This fact motivates the definition of a control variable that excludes $MR,zA$. Define $u3≡[FR,zAMR,xAMR,yA]T$ and rewrite Eq. (54) as
$α=[I2×202×1](fA+gA[I3×301×3]u3)$
(59)
Augmenting Eq. (59) with $FR,zA=[100]u3$, substituting $αdes$ for $α$, and solving for $u3$ yields
$u3=[[I2×202×1]gA[I3×301×3][100]]−1[α−[I2×202×1]fAk^TCIAFR,desI]$
(60)
where $αdes$ is given by Eq. (53). The inversion in Eq. (60) is 3 × 3 rather than the 4 × 4 inversion required by Eq. (58). Lastly, the control is determined by augmenting Eq. (60) with $MR,zA$ so that
$u=[u3MR,zA]$
(61)

Note that $FR,zA$ cannot be partitioned out in this way because the first column of $[I2×202×1]gA$ is nonzero, indicating that $FR,zA$ does influence $α$. Equation (61) is the control law for the RPN controller, which forces $z^A$ to track $z^A,des$ while simultaneously controlling normal force and avoiding gimbal lock, if desired. Formulating the control law thus requires a second-order and third-order matrix inverse and produces an identical result to (58). Lastly, note that only $MR,xA$ and $MR,yA$ are strictly required to control the trajectory of the SRFV; the use of $MR,zA$, which is particularly inefficient, can be avoided if desired.

3.6 Control Allocation.

As discussed in Section 2.2.4, the control $u$ can be written in terms of the thrust vector $T$. The reverse mapping from $u$ to $T$ is referred to as control allocation. If $T$ is unconstrained, solving for $T$ is trivial:
$T=crotor−1u$
(62)

However, if the elements of $T$ are constrained to be positive, as is the case for most rotors (i.e., the rotors only rotate in one direction), then (62) cannot be used because it may prescribe a negative thrust. Therefore, a constrained control allocation method must be used that solves (8) such that all elements of $T$ are positive. If the control allocation solution is constrained, then $u$ cannot be exactly realized. The control allocation solution is more likely to be constrained if $FR,zA$ is small or $|MRA|$ is large, as these conditions make Eq. (62) more likely to produce negative $T$ values [10]. The control allocation solution for flying quadrotors is usually unconstrained owing to a large desired $FR,zA$ required to support the quadrotor’s weight in flight. In the case of the SRFV in terrestrial mode, the desired $FR,zA$ is considerably smaller since the vehicle rests on the ground. As a result, the SRFV is more likely to have a constrained control allocation solution, meaning that $FR,zA$ is larger than desired. Therefore, $FR,desI$ is not synthesized exactly. Since $FR,desI$ is the control for the position (see Sec. 3.4), a constrained control allocation solution can affect the performance of the trajectory tracking controller. Rough, uneven terrain also has a negative effect on tracking performance (see empirical results in this paper), however rough terrain, characterized by a large crr value, requires large $FR,zA$ values. Therefore, the control allocation solution is less likely to be constrained in such cases.

4 Hardware Embodiment

A hardware embodiment of the SRFV is constructed to test the trajectory tracking controller. An image of the hardware SRFV appears in Fig. 6(a) with notable mechanical hardware components indicated. The “spherical shell” of the SRFV is a 42-faced geodesic icosahedral cage constructed of carbon fiber rods. The rods are joined at 80 vertices by 3D-printed joints. The quadrotor body is made of composite carbon fiber and balsa wood sheet (DragonPlate®, Elbridge, NY). Gimbals G1 and G2 are custom rings made of carbon fiber sleeve set in epoxy, whereas G3 is a bearing-mounted carbon fiber rod passing through the quadrotor body. The gimbals are nested within the cage and are supported by double ball bearings at each end. The angles and angular rates of the gimbals are measured by three quadrature encoders, one per gimbal. Two slip rings permit passing electronic cables through the bore of the gimbals’ shafts. The outer slip ring passes power and encoder signals from G1 to the inner slip ring. The inner slip ring passes these cables, plus power and encoder signals from G2, to the control board mounted on the quadrotor body. The INS provides orientation and angular rate data (i.e., $CAI$ and $ωIAA$) to the control board. Although the focus of this paper is the SRFV’s terrestrial locomotion, the SRFV can demonstrate controlled flight and has a thrust-to-weight of approximately two.

Fig. 6
Fig. 6
Close modal

Figure 6(b) is an image of the SRFV’s custom electronic control board. The control board contains an ARM Cortex-M7 microcontroller (STMicroelectronics STM32F767ZIT6U, Geneva, Switzerland) operating at 216 MHz. The microcontroller reads the gimbal encoders, INS (VectorNav Technologies® VN-200, Dallas, TX), backup INS (Bosch® BNO055, Farmington Hills, MI), and altimeter (Bosch® BMP388), plus senses battery voltage and current to estimate power, communicates serially with two Zigbee radios (Digi® XBee Pro S2C, Hopkins, MN) for telemetry and control commands, respectively, generates pulse-width-modulated signals to drive the four motor controllers (Crazepony BL Heli 32, Shenzhen, China), and executes all control algorithms. These tasks all occur in a hardware-timed interrupt that executes at 1 kHz. The average time to execute the interrupt is 370 μs. Power is provided by a 3-cell (11.1 V) Lithium-polymer battery.

The mathematical model parameters describing the hardware SRFV appear in Table 1. Moment of inertia values are estimated based on the mass and geometry of the vehicle. The crr value is estimated based on the terrain (uneven grass) on which the empirical experiments are carried out. The rotor characteristics kT and kQ are measured directly using a load cell on a test stand.

Table 1

SRFV parameter values

ParameterValue
R (m)0.25
h (m)0.02
L (m)0.085
mA (kg)0.8
mB (kg)0.29
$IbA,xxA,IbA,yyA$ (kg-m2)0.0027
$IbA,zzA$(kg-m2)0.0053
$IbB,zzB$ (kg-m2)0.0121
crr0.035
b1, b2, b3 (N-m/(rad/s))2.5 × 10−4
ParameterValue
R (m)0.25
h (m)0.02
L (m)0.085
mA (kg)0.8
mB (kg)0.29
$IbA,xxA,IbA,yyA$ (kg-m2)0.0027
$IbA,zzA$(kg-m2)0.0053
$IbB,zzB$ (kg-m2)0.0121
crr0.035
b1, b2, b3 (N-m/(rad/s))2.5 × 10−4

5 Results

The efficacy of the control system is evaluated via simulation studies and experiments with the hardware SRFV. The simulation and empirical results are presented in this section.

5.1 Simulation Setup.

The mathematical model of the SRFV under trajectory tracking control is simulated using matlab®. This system is shown in the block diagram of Fig. 4. The model parameters used in the simulations are based on the parameters of the hardware SRFV (Sec. 4), and are listed in Table 1. The SRFV is simulated by numerically integrating the equations of motion and the kinematic relationships presented in Eqs. (38) and (29), respectively. Care must be taken when numerically integrating the equations of motion to ensure that the frame of resolution is the same as the frame with respect to which differentiation occurs. Therefore, the transport theorem is used so that differentiation of angular velocity in the equations of motion is with respect to the $A$ frame. The transport theorem indicates that
$Aω˙IAA=Iω˙IAA−ωIAA×ωIAA=Iω˙IAAAω˙IBA=Iω˙IBA−ωIAA×ωIBA$
(63)
Therefore, the equations of motion Eq. (27) become
$[Aω˙IAAAω˙IBA]=[Iω˙IAAIω˙IBA]−[03×1−ωIAA×ωIBA]=f+gu−[03×1−ωIAA×ωIBA]$
(64)
and the SRFV is simulated by numerically integrating Eqs. (64) and (29). Also, integrating $β˙$ when Γ is near singular can be problematic, so the orientation of $A$ with respect to $B$ is expressed as a quaternion $qBA$ so that $q˙BA=12qBA⊗(ωIAA−ωIBA)$. Then $β$ can be determined from $qBA$.
The simulation and empirical results that follow are obtained using the control allocation method of Ref. [10], which yields a thrust-minimizing solution that constrains all thrusts to be positive. Use of this method is critical to reduce the impact that a constrained control allocation solution has on trajectory tracking. To include the effects of control allocation in the simulations, the input $u$ in Eq. (64) is the constrained control $uconstrained$, which is
$uconstrained=crotorT(uunconstrained)$
(65)
where $uunconstrained$ is the output of the trajectory tracking controller, $T(uunconstrained)$ is the thrust that is output from the control allocation algorithm, and crotor is defined in Eq. (8).

5.2 Control System Parameters.

All components of the trajectory tracking control system are executed in simulation. To permit comparison of simulated and empirical results, the desired control system pole locations used to generate the simulations are identical to those deployed on the hardware embodiment of the SRFV. The pole locations for the position control system and RPN control system are chosen based on the performance of the hardware SRFV. While better performing control systems can be achieved in simulation by choosing more aggressive pole locations, such designs do not yield acceptable performance of the hardware SRFV because of unmodeled actuator dynamics; parametric and modeling uncertainties in the rotor and electric motor result in $T$ synthesis errors. Furthermore, it is observed from both simulation and empirical results that the error integrator is not necessary in either the position or RPN controllers. The closed-loop pole locations for the position control system are λ1 = 0, λ2 = −8, and λ3 = −47. The pole λ1 = 0 results in the state feedback gain K1 = 0, indicating that the integrator is unused. Likewise, the closed-loop pole locations for the RPN control system are λ1,RPN = 0 and λ2,3,RPN = −1.95 ± 2.81i. The desired trajectory is a figure-eight pattern: $rib,desI=[sin(2π10t)2sin(2π20t)]T$. For simplicity of implementation, $Iz^˙A,des$ and $IIz^¨A,des$ are assumed to be zero, as their calculation requires numerically differentiating or filtering $z^A,des$, which comes from the position controller. For both the simulated and empirical studies, the gimbal lock avoidance block is disabled so that $MR,zA=0$. Also, $FR,z,desI$ is set at 0.5 N.

5.3 Simulated Results.

Figure 7 shows the results of the simulation. The SRFV trajectory tracking control system demonstrates good tracking performance (Figs. 7(a) and 7(c)); the mean of the position error norm $‖e‖¯$ is 0.0545 m. The vehicle is initially at rest, which explains the large, transient deviation from the command seen near the origin in Fig. 7(c). Beyond this transient the mean error norm is 0.0475 m. Figure 7(b) shows the RPN controller tracking the desired control force $FR,desI$. Note that $FRI$ does not appear to track $FR,desI$ well, and that the magnitude of each component of $FRI$ is typically greater than $FR,desI$. Closer inspection shows that $FRI$ has the same shape as $FR,desI$, but with a slightly larger magnitude. In fact, the direction of $FRI$ tracks the direction of $FR,desI$ well, i.e., $z^A→z^A,des$. The difference in the magnitude of $FRI$ and $FR,desI$ occurs because the control allocation solution is constrained. That is, the moments required to orient the quadrotor body so that $z^A→z^A,desI$ would require negative thrusts. Since the vehicle is not capable of producing negative thrusts, the control allocation solution can only generate the required moments by increasing the total thrust $‖FRI‖=FR,zA$ beyond that which is desired. So, while the RPN controller effectively controls the direction of $FRI$, the magnitude of each component of $FRI$ is greater than desired.

Fig. 7
Fig. 7
Close modal

This can be seen more clearly in Fig. 8, which illustrates the control $u$ and thrust $T$. Figure 8(a) shows that the $FR,zA>FR,z,desA$ for nearly the entire time, indicating that the control allocation solution is constrained. This is reflected in Fig. 8(b), showing the value of the four thrusts. Note that at nearly all times at least one thrust is saturated at zero. The mean RPN error norm $‖eRPN‖¯$ is 0.0512. Nevertheless, the overall trajectory tracking performance remains good.

Fig. 8
Fig. 8
Close modal

5.4 Empirical Results.

Figure 9 shows the results of the trajectory tracking control system deployed on the hardware SRFV. Approximately 3.5 figure-eight transits are executed. From Fig. 9(b), the mean of the position error norm $‖e‖¯$ is 0.173 m, about three times greater than that predicted by the simulation. The difference is primarily due to unmodeled terrain characteristics. In the simulation, the terrain has a constant rolling resistance coefficient crr, whereas the experiments are carried out on medium length grass with uneven terrain. The evenness of the terrain varies on approximately the same scale as the vehicle size; small bumps, mounds of grass, grassless pockets, and depressions in the terrain on the order of hundreds of millimeters are present. As a result, the vehicle is constantly responding to perturbations in position introduced by the changing terrain. Despite this, the trajectory tracking control system demonstrates good tracking performance with errors on the same scale as the terrain obstacle size. Small gaps in data can be seen in Fig. 9(c). These are artifacts of the data acquisition system buffering and saving the data. The data have been appropriately shifted in time to account for these “blank” periods, which occur for approximately 1 s every 15 s.

Fig. 9
Fig. 9
Close modal

Figure 10 shows a composite image of the SRFV tracking a figure-eight trajectory in closed loop. Snapshots from a video of the SRFV executing the trajectory are superimposed to create this image.

Fig. 10
Fig. 10
Close modal

Figure 11 illustrates the performance of the RPN controller. To obtain these data, $z^A,desI$ is prescribed manually using a joystick. This ensures sufficient excitation in all directions to demonstrate accurate tracking. Shown in Figs. 11(a) and 11(b) are the x- and y-components, respectively, of $z^AI$ tracking $z^A,desI$. Figure 11(c) shows β2 and β3 as a function of time. The dashed horizontal lines are located at odd multiples of π/2, at which point G2 is in gimbal lock. In general, $z^AI$ closely tracks $z^A,desI$. Exceptions occur when G2 is close to gimbal lock. An example of such a situation is highlighted by the yellow ellipses; large, brief tracking errors occur when β2 = − π/2.

Fig. 11
Fig. 11
Close modal

Comparison of the simulated and empirical data reveal that the trajectory tracking control system performs as expected. Furthermore, the size of the tracking error is considerably less than the overall vehicle size (vehicle diameter is 0.5 m), indicating that the trajectory tracking control system is appropriate for the SRFV.

6 Summary

This paper presents the SRFV, a promising alternative to the wheeled/cylindrical MRFV. In addition to exhibiting aerial locomotion and omnidirectional rolling, the SRFV is less sensitive to terrestrial disturbances than other MRFVs due to its spherical design and three-axis gimbal apparatus. Furthermore, the SRFV is over-actuated while rolling, providing two additional controls for optimization.

This paper is the first to present a terrestrial dynamic model of the SRFV that considers the translational and rotational dynamics of the multirotor and spherical cage, along with nonholonomic rolling constraints. Additionally, this paper is the first to present the detailed design of an SRFV terrestrial trajectory tracking control system. This novel controller leverages the SRFV’s over-actuation to simultaneously accomplish control and optimization objectives.

A hardware embodiment of the SRFV is presented, along with a description of the sensors required to implement the trajectory tracking controller and optimization algorithms. Furthermore, simulation and empirical results obtained from the hardware embodiment of the SRFV are presented, both of which demonstrate favorable trajectory tracking performance.

Future work involves developing an SRFV that is capable of producing negative thrust so that the control allocation solution will not be constrained so frequently. This permits the complete decoupling of $FR,zA$ from the other elements of $u$, and the control specified by the trajectory tracking controller will be faithfully synthesized. With such a vehicle, an empirical validation of gimbal lock avoidance while tracking a trajectory can be provided. Another future objective is to integrate LiDAR sensors onto the SRFV and demonstrate that LiDAR odometry and mapping (LOAM [21]) can be executed on a rotating platform.

Acknowledgment

The authors would like to thank Shaphan Jernigan, Tyler Jenkins, and Luis Jimenez for their work in creating the hardware embodiment of the SRFV. Funding for this research was provided by the U.S. Army Research Office and the U.S. Army Special Operations Command under Contract No. W911-NF-13-C-0045.

Conflict of Interest

There are no conflicts of interest.

Data Availability Statement

The datasets generated and supporting the findings of this article are obtainable from the corresponding author upon reasonable request. The authors attest that all data for this study are included in the paper.

References

1.
Choi
,
S. H.
, and
Zhu
,
W. K.
,
2012
, “
Performance Optimisation of Mobile Robots for Search-and-Rescue
,”
Appl. Mech. Mater.
,
232
, pp.
403
407
.
2.
Murphy
,
R. R.
,
,
S.
, and
Kleiner
,
A.
,
2016
, “
Disaster Robotics
,”
Springer Handbook of Robotics
,
The MIT Press
,
Cambridge, MA
.
3.
Bishop
,
B.
,
Crabbe
,
F.
, and
Hudock
,
B.
,
2005
, “
Design of a Low-Cost, Highly Mobile Urban Search and Rescue Robot
,”
,
19
(
8
), pp.
1
27
.
4.
Neumann
,
M.
,
Predki
,
T.
,
Heckes
,
L.
, and
Labenda
,
P.
,
2013
, “
Snake-Like, Tracked, Mobile Robot With Active Flippers for Urban Search-and-Rescue Tasks
,”
Ind. Rob.
,
40
(
3
), pp.
246
250
.
5.
Santos
,
J. M.
,
Krajník
,
T.
, and
Duckett
,
T.
,
2017
, “
Spatio-Temporal Exploration Strategies for Long-Term Autonomy of Mobile Robots
,”
Robot. Auton. Syst.
,
88
, pp.
116
126
.
6.
,
A.
,
Tagliabue
,
A.
,
Schneider
,
S.
, and
Morrell
,
B.
,
2019
, “
The Shapeshifter: A Morphing, Multi-Agent, Multi-Modal Robotic Platform for the Exploration of Titan
, NASA Technical Report, ID 20190033457. https://ntrs.nasa.gov/citations/20190033457.
7.
Ben-Tzvi
,
P.
, and
Saab
,
W.
,
2019
, “
A Hybrid Tracked-Wheeled Multi-Directional Mobile Robot
,”
J. Mech. Robot.
,
11
(
4
), p.
041008
.
8.
Atay
,
S.
,
Jenkins
,
T.
,
Buckner
,
G.
, and
Bryant
,
M.
,
2020
, “
Energetic Analysis and Optimization of a Bi-Modal Rolling-Flying Vehicle
,”
Int. J. Intell. Robot. Appl.
,
4
(
1
), pp.
3
20
.
9.
Atay
,
S.
,
Buckner
,
G.
, and
Bryant
,
M.
,
2020
, “
Dynamic Modeling for Bi-Modal, Rotary Wing, Rolling-Flying Vehicles
,”
ASME J. Dyn. Syst. Meas. Contr.
,
142
(
11
), p.
111003
.
10.
Atay
,
S.
,
Buckner
,
G.
, and
Bryant
,
M.
, “
Control and Control Allocation for Bi-Modal, Rotary Wing, Rolling-Flying Vehicles
,”
ASME J. Mech. Robot.
11.
Takahashi
,
N.
,
Yamashita
,
S.
,
Sato
,
Y.
,
Kutsuna
,
Y.
, and
,
M.
,
2015
, “
All-Round Two-Wheeled Quadrotor Helicopters With Protect-Frames for Air-Land-Sea Vehicle (Controller Design and Automatic Charging Equipment)
,”
,
29
(
1
), pp.
69
87
.
12.
Page
,
J. R.
, and
Pounds
,
P. E. I.
,
2014
, “
,”
IEEE International Conference on Intelligent Robots and Systems.
13.
Kalantari
,
A.
, and
Spenko
,
M.
,
2014
, “
Modeling and Performance Assessment of the HyTAQ, a Hybrid Terrestrial/Aerial Quadrotor
,”
IEEE Trans. Robot
,
30
(
5
), pp.
1278
1285
.
14.
Borik
,
A.
, et al
,
2019
, “
Caged Quadrotor Drone for Inspection of Central HVAC Ducts
,”
2019 Advances in Science and Engineering Technology International Conferences, ASET 2019
,
Mar. 26–Apr. 10
, pp.
1
7
.
15.
Mizutani
,
S.
,
,
Y.
,
Salaan
,
C. J.
,
Ishii
,
T.
,
Ohno
,
K.
, and
,
S.
,
2015
, “
Proposal and Experimental Validation of a Design Strategy for a UAV With a Passive Rotating Spherical Shell
,”
IEEE International Conference on Intelligent Robots and Systems
,
Sept. 28–Oct. 2
, pp.
1271
1278
.
16.
Briod
,
A.
,
Kornatowski
,
P.
,
Zufferey
,
J. C.
, and
Floreano
,
D.
,
2014
, “
A Collision-Resilient Flying Robot
,”
J. Field Rob.
,
31
(
4
), pp.
496
509
.
17.
Bai
,
P.
,
Guerreiro
,
B.
,
Cunha
,
R.
,
Kornatowski
,
P.
,
Floreano
,
D.
, and
Silvestre
,
C.
,
2018
, “
Wall-Contact Sliding Control Strategy for a 2D Caged Quadrotor
,”
International Conference on Control, Automation and Systems
,
Oct. 17–20
, pp.
291
296
.
18.
Powers
,
C.
,
Mellinger
,
D.
, and
Kumar
,
V.
,
2015
Handbook of Unmanned Aerial Vehicles
,
K.
Valavanis
, and
G. J.
Vachtsevanos
, eds.,
Springer
,
The Netherlands
.
19.
Lee
,
T.
,
Leok
,
M.
, and
Mcclamroch
,
N. H.
,
2013
, “
Nonlinear Robust Tracking Control of a Quadrotor UAV on SE(3)
,”
Asian J. Control
,
15
(
2
), pp.
391
408
.
20.
Atay
,
S.
,
Bryant
,
M.
, and
Buckner
,
G.
,
2020
, “
Real-Time Power Optimization
of
a Bi-Modal Rolling-Flying Vehicle via Extremum Seeking Control
,”
American Control Conference
,
Denver, CO
,
July 1–3
, pp.
5114
5118
.
21.
Zhang
,
J.
, and
Singh
,
S.
,
2014
, “
LOAM: Lidar Odometry and Mapping in Real-Time
,”
Proceedings of Robotics: Science and Systems (RSS 2014)
.