This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

The Geometric Structure of Externally Actuated Planar Locomoting Systems in Ambient Media

Blake Buchanan1, Tony Dear2, Scott David Kelly3, Matthew Travers1, and Howie Choset1


Corresponding Author:
Blake Buchanan, The Robotics Institute, Carnegie Mellon University
Email: blakeb@andrew.cmu.edu 1The Robotics Institute
Carnegie Mellon University, Pittsburgh, PA, USA
2Department of Computer Science
Columbia University, New York, NY, USA
3Mechanical Engineering and Engineering Science
University of North Carolina at Charlotte, Charlotte, NC, USA
Abstract

Robots often interact with the world via attached parts such as wheels, joints, or appendages. In many systems, these interactions, and the manner in which they lead to locomotion, can be understood using the machinery of geometric mechanics, explaining how inputs in the shape space of a robot affect motion in its configuration space and the configuration space of its environment. In this paper we consider an opposite type of locomotion, wherein robots are influenced actively by interactions with an externally forced ambient medium. We investigate two examples of externally actuated systems; one for which locomotion is governed by a principal connection, and is usually considered to possess no drift dynamics, and another for which no such connection exists, with drift inherent in its locomotion. For the driftless system, we develop geometric tools based on previously understood internally actuated versions of the system and demonstrate their use for motion planning under external actuation. For the system possessing drift, we employ nonholonomic reduction to obtain a reduced representation of the system dynamics, illustrate geometric features conducive to studying locomotion, and derive strategies for external actuation.

Index Terms:
Geometric mechanics, underactuated robots, motion planning, locomotion, nonholonomic mechanics

I Introduction

It is often the case that the locomotion of a robot can be understood in a simplified context by analyzing only its joint trajectories. For example, a simple geometric model has been developed for the multi-link wheeled robot shown in Fig. 1, in which joint trajectories map to world trajectories through a principal connection. We have shown in [1] that this robot retains similar locomotive capabilities if one joint becomes passive, by combining the geometric model with the dynamics of the passive joint. In this work, we study an alternative problem where the joints of the robot are completely passive, with input energy being channeled from the surrounding environment. In particular, the presence of a controlled moving platform underneath the robot, as shown in Fig. 1, provides this input.

Refer to caption
Figure 1: A three-link nonholonomic robot on top of a movable platform. The coordinates (x,y,θ)(x,y,\theta) denote the inertial configuration of the robot’s proximal link, with body velocities (ξx,ξy,ξθ)(\xi_{x},\xi_{y},\xi_{\theta}). The relative joint angles are (α1,α2)(\alpha_{1},\alpha_{2}). The platform’s inertial position is (xp,yp)(x_{p},y_{p}).

The first objective of this work is to seek to understand how this system’s geometric structure changes and to what extent it can still be exploited to understand locomotion when control authority is assumed over the environment. It is not always the case, however, that the locomotion of a robot can be understood by analyzing only its joint trajectories. There are many systems for which drift is present in the dynamics and a mapping between the joint trajectories of the robot and world trajectories does not exist, meaning one is tasked with invoking and / or developing additional tools to analyze locomotion or accomplish control.

The canonical system with drift considered in this paper is the Chaplygin beanie on a movable platform, shown in Fig. 2. Any change in the rotor angle ϕ\phi of the Chaplygin beanie will cause it, and the platform beneath it, to accrue nonzero momentum, and thus drift in its environment. The second objective of this work is to understand how the geometric structure of such a system can be exploited when its locomotion is inherently driftful and not described by a principal connection, and again when control authority is assumed over the environment.

While the tools with which we analyze the locomotion of these two systems differ geometrically, they share a common theme in that the robot is coupled to a platform that acts as the medium through which dynamics are imparted to the robot. More importantly, we use these examples to illustrate how the problem structure changes due to how external inputs are applied. We make an explicit choice to consider only translational motion of the platform, engendering symmetries that we leverage in developing the tools we use to accomplish motion planning and control.

This paper juxtaposes results from a recent conference paper[2] with complementary new material to construct a more unified narrative concerning externally actuated nonholonomic planar locomoting systems in ambient media. We first present results that draw on familiar tools for the three-link kinematic snake robot on a platform for which locomotion is governed purely by a principal connection. We then discuss our proposed modifications to these tools which allow one to leverage connection-like mappings outside of the theory of principal connections to aid in motion planning when considering symmetry-breaking fiber variables. Finally, we present results concerning the control of the Chaplygin beanie on a platform, a system for which locomotion is not governed by a principal connection. The material in the present paper differs from that appearing in our recent conference paper (Section VI) in that our conference paper did not leverage or extend familiar tools arising from principal connections that we introduce in Sections IV and V. These new tools provide a way to accomplish motion planning and control for externally actuated planar locomoting systems when an internally actuated version of the system can be analyzed using principal connections.

We have structured the material as follows. We review related work in geometric mechanics and locomotion in Section II, provide some mathematical preliminaries in Section III, and present our contributions to the geometric theory in Section IV. Section V considers the problem of a passive three-link wheeled robot on a movable platform, exemplifying the cases in which external inputs are applied with respect to a body frame as well as inertial frame dependent on system orientation. In Section VI we first discuss a completely passive system and provide a formal proof of stable trajectories, guiding our approach to the external actuation of the Chaplygin beanie on a movable platform. We illustrate the geometric features of the problem that are conducive to studying its locomotion and conduct a sampling-based analysis to derive motion primitives. We conclude with a review of our contributions and discuss novel problems arising from our analyses and possible approaches to solving them.

Refer to caption
Figure 2: A Chaplygin beanie atop a movable platform. The vehicle’s rotor angle relative to the heading is shown as ϕ\phi, its heading as θ\theta, its position relative to the platform as (x,y)(x,y), and the position of the platform in a world frame, (xp,yp)(x_{p},y_{p}).

II Prior Work

In recent decades, techniques and methods from geometric mechanics have been a popular way to model and control mechanical systems. A key idea is that of symmetries in a system’s configuration space, which allows for the reduction of the equations of motion to a simpler first-order form. This has been addressed for general mechanical systems by [3], [4], and [5], as well as nonholonomic systems by [6] and [7].

For locomoting robots, geometric reduction is often leveraged in tandem with a decomposition of the configuration variables into actuated shape variables, describing internal configurations of the robot, and position, describing the position and orientation of the body frame with respect to an inertial one. If such a decomposition is possible, then the configuration space often takes on a fiber bundle structure, whereby a mapping called the connection relates trajectories from the shape space to the position space. Analysis of the connection then gives us intuition into ways to perform motion planning and control on the system, engendering visualization and design tools, detailed by [8, 9, 10, 11, 12, 13, 14].

Much of the progress in the geometric mechanics of locomotion is predicated on the assumption that the symmetries of a system coincide exactly with the position degrees of freedom. The three-link robot of Fig. 1 with actuated joints is one of the simplest examples of such a system, and as such, it has received considerable attention from researchers such as [15] and [16] treating it as a kinematic system, so named because its three constraints eliminate the need to consider second-order dynamics when modeling its locomotion. This allows for the treatment of the system’s locomotion, and subsequent motion planning, as a result of geometric phase [17, 18, 19, 20, 21].

While the notion of geometric phase lends itself to the study of certain locomoting robots like the three-link wheeled snake robot, a different set of tools are required for the analysis and computation of motion primitives for others. One can still consider the configuration space to be split into a base and a fiber space, but a connection relating trajectories in these spaces is not guaranteed. One such system is that of the Chaplygin beanie on a movable platform. Any actuation of its single shape variable will cause motion along its fibers, and in a partially uncontrollable way. The notion of nonholonomic momentum was used for the analysis of an internally actuated Chaplygin beanie in [22]. We will employ reduction using nonholonomic momentum in our analysis of a completely passive Chaplygin beanie on a platform system, which will then guide our approach to finding motion primitives for an externally actuated version of the system. Other internally actuated and passively compliant versions of this robot have been studied in [23, 24] with limit cycle behaviors elucidated in [25].

External actuation to achieve locomotion has been used for sorting and controlling the motion of mechanical parts via controlled vibrations in [26, 27, 28], and has been used in the famous ball-on-a-plate problem [29, 30]. In this paper, we give the problem of external actuation a geometric flavor and invoke familiar tools from the geometry of locomotion. In prior work we posed the problem of actuating a three-link wheeled snake robot via an external platform as a specific deviation from the usual geometric assumptions [31]. We also investigated an externally actuated version of the Chaplygin beanie in [2]. These two example systems belong to different classes in that the external actuation of one can be studied using a principal connection formulation, while the other demands reduction by means of nonholonomic momenta. The framework within which each of the examples is analyzed differs geometrically, clarifying the set of tools necessary to understand external actuation in each setting.

III Mathematical Preliminaries

In this section, provide an overview of the mathematical ideas we will invoke in the present paper and define terms we will use throughout.

III-A Principal Fiber Bundles

We now review the underlying geometric structure for locomoting systems like the three-link wheeled snake robot.

Refer to caption
Figure 3: A visualization of the principal fiber bundle. Base trajectories in BB are lifted via the connection A(b)-A(b) to trajectories in the fiber space GG.

The usage of geometric mechanics in locomotion has traditionally assumed the existence of a principal fiber bundle structure in a system’s configuration space. This structure decomposes the space into two distinct subspaces, often called a fiber bundle, with a mapping called a connection relating trajectories from one to trajectories in the other.

Definition III.1 (Fiber Bundle).

A fiber bundle is a trio of topological spaces QQ, the total space, BB, the base space, and GG, the fiber space, together with a map π:QB\pi:Q\rightarrow B called the bundle projection such that every rBr\in B has an open neighborhood UBU\subset B, there exists a homeomorphism φ:π1(U)U×G\varphi:\pi^{-1}(U)\rightarrow U\times G, and QG×BQ\cong G\times B, i.e., QQ is locally equivalent to G×BG\times B, but not necessarily globally.

In this work, we will consider the configuration spaces of a robot and its environment to comprise smooth fiber bundles, particularly principal fiber bundles.

Definition III.2 (Principal Fiber Bundle).

A principal fiber bundle is a smooth fiber bundle (Q,B,F,π)(Q,B,F,\pi) together with an action of a Lie group GG on QQ such that

  1. 1.

    the action of the Lie group preserves fibers (gqQgq\in Q for every gGg\in G)

  2. 2.

    the action is free (for g,hGg,h\in G, if qQq\in Q, then gq=hqgq=hq implies g=hg=h) and transitive (for pairs qi,qjQq_{i},q_{j}\in Q, there exists a gGg\in G such that gqi=qjgq_{i}=q_{j}) on each fiber.

Fig. 3 shows a typical visualization of the fiber bundle as a direct product of a base space BB and a fiber space GG. The space BB corresponds to the system’s shape variables, which are traditionally assumed to be fully actuated. The space GG corresponds to the system’s configuration variables, which typically correspond to symmetries in the system, so that the dynamics of the system do not depend explicitly on the fiber variables. Since we will make use of symmetries in both of the examples presented, a system exhibits a continuous symmetry if its dynamics are invariant under the free action of a Lie group on its configuration manifold [4].

In this paper, the symmetry exploited for the three-link wheeled snake robot on a platform is given by the invariance of the system’s dynamics under the action of SE(2)\text{SE}(2) on its configuration manifold Q=SE(2)×𝕊1×𝕊1Q=\text{SE}(2)\times\mathbb{S}^{1}\times\mathbb{S}^{1}. The Chaplygin beanie on a platform system exhibits a symmetry arising from the action of the Lie group G=SE(2)×2G=\text{SE}(2)\times\mathbb{R}^{2} on the configuration manifold Q=SE2×2×𝕊1×𝕊1Q=\text{SE}^{2}\times\mathbb{R}^{2}\times\mathbb{S}^{1}\times\mathbb{S}^{1}.

The local form of the connection A(b)A(b), which depends only on base variables bb, governs how the system’s fiber variables change due to changes in the base. The equation is typically of the form

g˙=TeLg(A(b)b˙),\dot{g}=-T_{e}L_{g}(A(b)\dot{b}), (1)

where g˙\dot{g} are the velocities of the fibers, and b˙\dot{b} are the velocities of the shape variables. The mapping TeLgT_{e}L_{g} for gSE(2)g\in\text{SE}(2) is given by

TeLg=[cosθsinθ0sinθcosθ0001],T_{e}L_{g}=\begin{bmatrix}\cos\theta&-\sin\theta&0\\ \sin\theta&\cos\theta&0\\ 0&0&1\end{bmatrix}, (2)

with θ\theta representing the orientation of the robot relative to an inertial reference frame in the plane. The mapping TeLgT_{e}L_{g} transforms fiber velocities from a body-attached frame to a world frame; in practice, one can drop the TeLgT_{e}L_{g} mapping by performing all analysis in the body frame. If we are able to express the fiber velocities g˙\dot{g} as body velocities ξ\xi via the transformation g˙=TeLgξ\dot{g}=T_{e}L_{g}\xi, then Eq. (1) can be recast into the kinematic reconstruction equation[32], given by

ξ=A(b)b˙.\xi=-A(b)\dot{b}. (3)

As an example, consider the wheeled robot of Fig. 1 in the absence of an underlying platform. Its configuration space can naturally be written as Qw=Gw×BwQ_{w}=G_{w}\times B_{w}, where gw=(x,y,θ)TGwg_{w}=(x,y,\theta)^{T}\in G_{w} are the position and orientation fiber variables, and bw=(α1,α2)Tb_{w}=(\alpha_{1},\alpha_{2})^{T} are the joint, or shape, variables.111We use the subscript ww for the configuration space of the wheeled snake robot. Similarly, we will use the subscript cc for the Chaplygin beanie. The fiber GwG_{w} is the Lie group of planar translations and rotations SE(2)(2). The body velocities ξ\xi are related to the world velocities g˙w\dot{g}_{w} through the mapping TeLgT_{e}L_{g}.

The structure of the connection form in Eq. (3) can be visualized in order to understand the response of ξ\xi to input trajectories without regard to time, according to [32]. By integrating each row of Eq. (3) over a given joint trajectory, one can obtain a measure of displacement corresponding to the body frame directions. For SE(2)\text{SE}(2), this measure provides the exact rotational displacement, i.e., θ˙=ξθ\dot{\theta}=\xi_{\theta} for the third row, and an approximation of the translational component for the first two rows.

We can consider the time integral to be a line integral over the trajectory ψ:[0,T]B\psi:[0,T]\rightarrow B in the shape space, since the kinematics depend only on the gait executed in shape space. This can then be viewed as an integral over β\beta, the region of the joint space enclosed by ψ\psi. Assuming that we have periodic trajectories, or gaits, the integral can be realized by Stokes’ theorem as

0Tξ𝑑t\displaystyle\int_{0}^{T}\xi dt =0TA(b(τ))b˙(τ)𝑑τ=ψA(b)𝑑b\displaystyle=-\int_{0}^{T}A(b(\tau))\dot{b}(\tau)\,d\tau=-\int_{\psi}A(b)\,db (4)
=βdA(b)+[A1,A2]db+higher-order terms.\displaystyle=-\int_{\beta}\text{d}A(b)+[A_{1},A_{2}]db+\text{\parbox{56.9055pt}{\centering higher-order terms\@add@centering}}.

The first term in the final integral is the exterior derivative of A(b)A(b) and is computed as the curl of A(b)A(b) in two dimensions, i.e.,

dAi(b)=Ai,2α1Ai,1α2,\text{d}A_{i}(b)=\frac{\partial A_{i,2}}{\partial\alpha_{1}}-\frac{\partial A_{i,1}}{\partial\alpha_{2}}, (5)

where Ai,jA_{i,j} is the element corresponding to the iith row and jjth column of AA. The second term is the Lie bracket of the two vector fields comprising the local connection form A(b)A(b). In this work, we consider only the first term in our approximation of the displacement. Prior works on similar locomoting systems have shown that this approximation suffices for the study of locomotion, even in the absence of Lie bracket and higher-order terms when considering an appropriate choice of coordinates [31, 1, 33]. Eq. (5) can be extended to arbitrary dimensions [34], however, we define it for two-dimensional base spaces since the present paper focuses on planar systems.

Refer to caption
Refer to caption
Figure 4: The xx (top) and θ\theta (bottom) components of the exterior derivative of the connection that relates the three-link robot’s joint velocities to the robot’s body velocities. Note that the xx plot is non-negative everywhere and that both plots are symmetric about the α1=α2\alpha_{1}=\alpha_{2} diagonal. An example of a gait (closed loop) is also shown on these plots.

The magnitudes of the three-link robot’s connection exterior derivative over the joint space are depicted in Fig. 4, along with a gait trajectory shown as a closed curve on the surfaces. The area integral over the enclosed region is the geometric phase, a measure of the displacement in the body xx and θ\theta directions (the body yy plot is not shown because it is zero everywhere). The xx plot is positive everywhere, meaning that any closed loop will lead to net displacement along the ξx\xi_{x} direction. The θ\theta plot is anti-symmetric about α1=α2\alpha_{1}=-\alpha_{2}, meaning that gaits symmetric about this line will yield zero net reorientation while simultaneously moving the robot forward.

III-B Reduction by Nonholonomic Momentum

Identifying conserved quantities in mechanical systems permits the use of reduction tools we are ultimately interested in leveraging in our analysis of an externally actuated locomoting system with drift in its dynamics, e.g., the Chaplygin beanie on a movable platform. In particular, Noether’s theorem [35] states that continuous symmetries correspond to conserved quantities in a mechanical system. In this section, we introduce the terminology necessary to leverage symmetries in the reduction we employ for the Chaplygin beanie on a movable platform.

Let vqv_{q} be a tangent vector at point qq in the tangent space TqQT_{q}Q. The momentum map corresponding to a continuous symmetry is computed as

J(vq),ξ=𝔽L(vq),ξQ(q),\langle J(v_{q}),\xi\rangle=\langle\mathbb{F}L(v_{q}),\xi_{Q}(q)\rangle, (6)

where 𝔽L\mathbb{F}L is the fiber derivative of the system Lagrangian, given by

𝔽L\displaystyle\mathbb{F}L :TQTQ\displaystyle:TQ\rightarrow T^{*}Q (7)
:(q,q˙iqi)(q,Lq˙idqi)\displaystyle:(q,\dot{q}^{i}\frac{\partial}{\partial q^{i}})\mapsto(q,\frac{\partial L}{\partial\dot{q}^{i}}dq^{i})

Define the iith component of the vector field ξQ\xi_{Q} as (ξQ)i(\xi_{Q})^{i}. We compute the momentum map with respect to coordinates qiq^{i} as

J=Lq˙i(ξQ)iJ=\frac{\partial L}{\partial\dot{q}^{i}}(\xi_{Q})^{i} (8)

where a summation over ii is assumed. Note that every vector field ξQ\xi_{Q} on TQTQ is associated with a component of the momentum map. Given the above definition, the evolution equations corresponding to the nonholonomic momenta are computed as

J˙=Lq˙i[dξdt]Qi.\dot{J}=\frac{\partial L}{\partial\dot{q}^{i}}\bigg{[}\frac{d\xi}{dt}\bigg{]}_{Q}^{i}. (9)

We will utilize Eq. (9) in Section VI in order to provide proof of particular stable trajectories in this reduced space. It is worth noting that the symmetries by which we reduce the dynamics of each system we study correspond to group actions of G=Gint×GextG=G^{\text{int}}\times G^{\text{ext}} on the configuration manifold of the system.

The Lie algebra elements ξ\xi associated with each vector field ξQ\xi_{Q} are needed to determine J˙\dot{J} in Eq. (9). To compute each ξ\xi, it is necessary to define the subspace on which the constrained dynamics evolve. Let 𝒟\mathcal{D} be the distribution spanned by all tangent vectors that annihilate the constraints, and let the group orbit of the Lie group GG be

Orb(q):={gq|gG}.\text{Orb}(q):=\{gq\,|\,g\in G\}. (10)

Associated with every vector field ξQ\xi_{Q} referenced in Eq. (8) is a Lie algebra element ξ𝔤\xi\in\mathfrak{g} where 𝔤\mathfrak{g} is the Lie algebra of the Lie group GG. We define the tangent space to the group orbit through a point qQq\in Q as

Tq(Orb(q))={ξQ(q)|ξ𝔤},T_{q}(\text{Orb}(q))=\{\xi_{Q}(q)\,|\,\xi\in\mathfrak{g}\}, (11)

where ξQ(q)\xi_{Q}(q) is the vector field ξQ\xi_{Q} evaluated at qq. We define the intersection of 𝒟q\mathcal{D}_{q} and Tq(Orb(q))T_{q}(\text{Orb}(q)) to be the reduced space in which the constrained dynamics evolve, which we write as

Sq=𝒟qTq(Orb(q)),S_{q}=\mathcal{D}_{q}\cap T_{q}(\text{Orb}(q)), (12)

where 𝒟q\mathcal{D}_{q} denotes the constraint distribution at point qq. We have the freedom to choose the set of vector fields comprising Tq(Orb(q))T_{q}(\text{Orb}(q)), and our choice of vector fields determines the reduced space (Eq. (12)) and thus the resulting evolution equations in Eq. (9).

IV Role of External Actuation via Fiber Bundles

The fiber bundle description of a system assumes that all of its configuration variables can be neatly categorized into either the base or a single fiber space. However, this is no longer sufficient when there are other configuration variables, such as those describing the evolution of a non-static ambient medium. In such a scenario, these additional variables will form a third subspace, whose role depends on its interaction with the original fiber bundle and whether system symmetries are still preserved.

IV-A Stratified Fiber Bundle

If we consider the example of the three-link wheeled robot of Fig. 1 on a moving platform, then the configuration of the platform would live in a new fiber space. Furthermore, this new fiber space corresponds to another set of symmetries in the system. That is, the system’s dynamics and energetics are invariant with respect to the robot’s (x,y)(x,y) position (two of its fibers) as well as the platform’s position (external fibers). A subtlety does arise regarding the robot’s orientation, θ\theta, relative to the platform; the dynamics of the platform depend on how the robot is oriented in the environment. A helpful simplification would be to continuously orient the platform’s frame of reference to the robot’s body frame, eliminating the dependency of the dynamics on θ\theta. In order for this arrangement to be practical, the platform would also ideally be able to move along any direction in the plane.

Refer to caption
Figure 5: A stratified fiber bundle with an internal fiber GintG^{\text{int}} and external fiber GextG^{\text{ext}}, from which controls determine base trajectories through the inverse mapping of Aext-A^{\text{ext}}, which are then lifted back to GintG^{\text{int}} via the connection Aint-A^{\text{int}}.

For this type of system, the fiber space takes on a stratified structure G=Gint×GextG=G^{\text{int}}\times G^{\text{ext}}. We separately identify fiber variables associated with the configuration of the system gintGintg^{\text{int}}\in G^{\text{int}} making up an internal fiber, describing the configuration of the robot, from those describing the configuration of the platform gextGextg^{\text{ext}}\in G^{\text{ext}}, the external fiber. This is visualized in Fig. 5 as two differently colored fiber components.

Note that for systems for which locomotion is governed by a principal connection, the original fiber bundle is unchanged and we retain our original connection Aint(b)-A^{\text{int}}(b). Furthermore, a second connection Aext(b)-A^{\text{ext}}(b) from the robot’s base configuration to the medium’s configuration can be derived in a manner analogous to Aint(b)-A^{\text{int}}(b), and takes the form

[g˙intg˙ext]=TeLg([Aint(b)Aext(b)]b˙).\displaystyle\begin{bmatrix}\dot{g}^{\text{int}}\\ \dot{g}^{\text{ext}}\end{bmatrix}=-T_{e}L_{g}\left(\begin{bmatrix}A^{\text{int}}(b)\\ A^{\text{ext}}(b)\end{bmatrix}\dot{b}\right). (13)

The structures of the two connections Aint(b)-A^{\text{int}}(b) and Aext(b)-A^{\text{ext}}(b) can both be analyzed in the same visual manner as shown in Fig. 4. For example, if we care only about the robot’s fiber motion in response to certain joint trajectories without regard to how the platform moves, then we need only look at Aint(b)-A^{\text{int}}(b), and the problem is unchanged from before. On the other hand, looking at Aext(b)-A^{\text{ext}}(b) tells us how the robot’s joint trajectories lead to motion of the platform.

In this paper, and in particular for the three-link robot on a platform system, we will consider both the traditional problem of mapping base trajectories to the external fiber, as well as the problem of having the controls in the external fiber GextG^{\text{ext}}, with the base variables remaining passive. Once we know our trajectories in BB, the original connection Aint(b)-A^{\text{int}}(b) ultimately lifts them to the internal fiber GintG^{\text{int}}. The problem of finding platform inputs in GextG^{\text{ext}} to produce a set of desired base trajectories in BB is more difficult, as the “inverse” mapping of Aext(b)-A^{\text{ext}}(b) may not be well defined. In this paper we consider only cases for which the dimension of the external actuation is equivalent to the dimension of the base manifold, ensuring Aext(b)A^{\text{ext}}(b) is invertible.

IV-B Fibers Without Symmetries

In the three-link robot system, the preservation of symmetries holds as long as all quantities are prescribed or expressed relative to the body-fixed frame of the robot. If this is not the case, e.g., the platform velocity inputs are prescribed relative to an inertial frame, then one of the fiber components, the robot’s orientation θ\theta, breaks this symmetry. The decision to keep all quantities relative to an inertial frame may be one of practicality, especially when considering multiple distinct locomoting robots in an ambient medium.

Refer to caption
Figure 6: Trajectories in the base space BB determine the dynamics through which the “non-symmetric” fiber components in GnonG^{\text{non}} evolve. Both BB and GsymG^{\text{sym}} trajectories are then mapped together through the connection A-A to trajectories in GsymG^{\text{sym}}.

In all of these cases, the system’s internal dynamics will no longer be symmetric with respect to a subset of the fiber degrees of freedom (e.g., (x,y)(x,y) in the case of a three-link robot on a platform). However, we may still be able to define a principal bundle on the base variables and the fibers that are symmetric. For example, a falling, reorienting robot is affected by gravity in one fiber direction (or two, if orientation is also considered). A visual representation is shown in Fig. 6; like Fig. 5 we see fibers atop a base space, the former of which is subdivided into two distinct components. Trajectories in a non-symmetric fiber component evolve dynamically depending on trajectories in the base. This evolution is depicted as flow along a vector field in the semi-transparent yellow plane in Fig.  6. Both trajectories are then mapped through a connection together to obtain trajectories in the symmetric fiber component.

Mathematically, a new connection mapping Asym-A^{\text{sym}} from the base variables to all of the configuration variables would depend explicitly on the fiber variables that lack symmetries. That is, if gsymg^{\text{sym}} are the fiber variables of which the dynamics are independent, and gnong^{\text{non}} are the external variables that are not (previously we had gintg^{\text{int}} and gextg^{\text{ext}} for internal and external fiber variables, respectively), then

[g˙symg˙non]=TeLg([Asym(gnon,b)Anon(gnon,b)]b˙).\begin{bmatrix}\dot{g}^{\text{sym}}\\ \dot{g}^{\text{non}}\end{bmatrix}=-T_{e}L_{g}\left(\begin{bmatrix}A^{\text{sym}}(g^{\text{non}},b)\\ A^{\text{non}}(g^{\text{non}},b)\end{bmatrix}\dot{b}\right). (14)

This splitting between gsymg^{\text{sym}} and gnong^{\text{non}} is conducive to studying motion planning for the three-link snake robot on a platform when considering the platform fibers to be relative to an inertial reference frame, and not coinciding with the body frame of the robot. The first involves being able to decouple the two lines of Eq. (14). If it is the case that g˙sym\dot{g}^{\text{sym}} depends very weakly on gnong^{\text{non}} or if gnong^{\text{non}} evolves on a significantly slower time scale relative to bb and gsymg^{\text{sym}}, then one can approximate the first line of Eq. (14) as a form of Eq. (1), where any gnong^{\text{non}} dependencies are made constant and inputs are prescribed in bb. The second line of Eq. (14), which deals with the evolution of gnong^{\text{non}}, can then be treated separately from the first as it has no dependencies on gsymg^{\text{sym}}.

If such a decoupling cannot be done, we would have to work with the full form of Eq. (14). In this case, we can define Bnon=Gnon×BB^{\text{non}}=G^{\text{non}}\times B as an extended base space in which we have partial control over the base variables. We treat gnong^{\text{non}} as if they are passive base variables, and we can first analyze their kinematics from the second line of Eq. (14) using techniques that we have already described. Once we have solved for the motion involving base and non-symmetric fibers only, it is straightforward to push through the original connection in the first line of Eq. (14) to find the rest of the system’s fiber motion.

In summary, we have identified two different approaches for accommodating external actuation into the principal fiber bundle picture. In the first, all external degrees of freedom are themselves symmetries of the entire system, so that we can consider them to be a separate fiber with their own connection mapping. In the second, these new degrees of freedom actually break symmetries, in which case we consider a splitting of the configuration space to differentiate between symmetric and non-symmetric variables, dealing with them separately. It is also possible to have systems that exhibit both types of splittings simultaneously.

V Three-link Wheeled Snake Robot on a Platform

We now describe the three-link snake robot of Fig. 1 in more detail, deriving the mechanical models corresponding to its locomotion in isolation as well as on a movable platform. This example will illustrate the stratified fiber bundle structure introduced in the previous section, as well as our approach to the problem of locomotion with controls applied externally (platform) rather than in the base (robot joints). Note that in our analysis of the three-link wheeled snake robot and the Chaplygin beanie systems on a platform, we consider the platform to not possess a rotational degree of freedom.

V-A Robot Description

Recall that the configuration space of the robot can be written as Qw=Gwint×BwQ_{w}=G^{\text{int}}_{w}\times B_{w}, where gwint=(x,y,θ)TGwintg^{\text{int}}_{w}=(x,y,\theta)^{T}\in G^{\text{int}}_{w} are the fiber variables describing the robot’s position and orientation, and bw=(α1,α2)T𝕋2b_{w}=(\alpha_{1},\alpha_{2})^{T}\in\mathbb{T}^{2} are the base variables describing the robot’s joint angles. We designate the constant parameter RR for the link lengths of the robot, which are identical across all links.

The kinematics of the system are described by the set of nonholonomic constraints on the wheels, which prohibit motion perpendicular to each of the links’ longitudinal directions. They can be written as three equations of the form

x˙isinθi+y˙icosθi=0,-\dot{x}_{i}\sin\theta_{i}+\dot{y}_{i}\cos\theta_{i}=0, (15)

where (x˙i,y˙i)(\dot{x}_{i},\dot{y}_{i}) is the velocity and θi\theta_{i} is the inertial orientation of the iith link. These quantities can be computed recursively to express them as functions of qwq_{w}. Starting with the proximal link, we have (x1,y1,θ1)=(x,y,θ)(x_{1},y_{1},\theta_{1})=(x,y,\theta); for i=2,3i=2,3:

θi\displaystyle\theta_{i} =θi1+αi1,\displaystyle=\theta_{i-1}+\alpha_{i-1},
xi\displaystyle x_{i} =xi1+R2(cosθi1+cosθi),\displaystyle=x_{i-1}+\frac{R}{2}(\cos\theta_{i-1}+\cos\theta_{i}),
yi\displaystyle y_{i} =yi1+R2(sinθi1+sinθi).\displaystyle=y_{i-1}+\frac{R}{2}(\sin\theta_{i-1}+\sin\theta_{i}). (16)

The constraint equations are symmetric with respect to the fiber part GwG_{w} of the configuration, since the kinematics do not explicitly depend on where the system is positioned or how it is oriented in space. We can thus rewrite the constraints in a reduced Pfaffian form as

ωξ(bw)ξ+ωb(bw)b˙w=0,\omega_{\xi}(b_{w})\xi+\omega_{b}(b_{w})\dot{b}_{w}=0, (17)

where ωξ3×3\omega_{\xi}\in\mathbb{R}^{3\times 3}, ωb3×2\omega_{b}\in\mathbb{R}^{3\times 2}, and ξ=(ξx,ξy,ξθ)T𝔰𝔢(2)\xi=(\xi_{x},\xi_{y},\xi_{\theta})^{T}\in\mathfrak{se}(2) are the body velocities of the system expressed in a frame attached to the proximal link, as shown in Fig. 1. Recall that the velocities g˙w\dot{g}_{w} and ξ\xi are related through g˙w=TeLgξ\dot{g}_{w}=T_{e}L_{g}\xi, where TeLgT_{e}L_{g} is the lifted left action given by Eq. (2).

The reduced constraints of Eq. (17) can then be rearranged to derive the connection relationship of Eq. (3). For the three-link robot, this can be written as

ξ\displaystyle\xi =1D[cosα1+cos(α1α2)1+cosα1002R(sinα1+sin(α1α2))2Rsinα1][α˙1α˙2]\displaystyle=\!\frac{1}{D}\!\begin{bmatrix}\cos\alpha_{1}\!+\!\cos(\alpha_{1}-\alpha_{2})\!\!&\!\!1+\cos\alpha_{1}\\ 0&0\\ \frac{2}{R}(\sin\alpha_{1}\!+\!\sin(\alpha_{1}\!-\!\alpha_{2}))\!\!&\!\!\frac{2}{R}\sin\alpha_{1}\end{bmatrix}\!\!\!\begin{bmatrix}\dot{\alpha}_{1}\\ \dot{\alpha}_{2}\end{bmatrix}
Awint(bw)b˙w,\displaystyle\triangleq-A^{\text{int}}_{w}(b_{w})\dot{b}_{w}, (18)

where D=2R(sinα1sin(α1α2)+sinα2)D=\frac{2}{R}(-\sin\alpha_{1}-\sin(\alpha_{1}-\alpha_{2})+\sin\alpha_{2}). The values of the second row, corresponding to ξy\xi_{y}, are zero since this corresponds to the direction prohibited by the wheel of the proximal link. The mapping Awint(bw)-A^{\text{int}}_{w}(b_{w}) corresponds to the connection form between the base (robot joints) and the internal fiber (robot position and orientation). Visualizations of the exterior derivative of this connection form were shown in Fig. 4.

V-B Adding the Platform

We now add in the dynamics of an underlying movable platform to the kinematics of the three-link wheeled snake robot. The position of the platform, which we denote by (xp,yp)(x_{p},y_{p}), itself constitutes a symmetry group GpextG^{\text{ext}}_{p} since the modified system’s properties do not depend on where the platform is located in space. The configuration manifold is now rewritten as Qp=Gwint×Gpext×Bw=SE(2)×2×𝕋2Q_{p}=G^{\text{int}}_{w}\times G^{\text{ext}}_{p}\times B_{w}=\mathrm{SE(2)}\times\mathbb{R}^{2}\times\mathbb{T}^{2}, although it is important to note that the connection relationship of Eq. (18) still holds, as the nonholonomic constraints Eq. (17) depend only on the robot’s pose and velocities relative to the platform, rather than an inertial frame.

Suppose that each of the links has identical mass MlM^{l} and a moment of inertia JJ, while the platform has a mass MpM^{p}. Recalling that the inertial link positions and orientation are given by (xi,yi,θi)(x_{i},y_{i},\theta_{i}), the system’s Lagrangian is

L=12i=13(Ml(x˙i2+y˙i2)+Jθ˙i2)+12Mp(x˙p2+y˙p2).L=\frac{1}{2}\sum_{i=1}^{3}\left(M^{l}(\dot{x}_{i}^{2}+\dot{y}_{i}^{2})+J\dot{\theta}_{i}^{2}\right)+\frac{1}{2}M^{p}(\dot{x}_{p}^{2}+\dot{y}_{p}^{2}).

Since the nonholonomic constraints are independent of x˙p\dot{x}_{p} and y˙p\dot{y}_{p}, governing the trajectories of (x˙,y˙,θ˙)(\dot{x},\dot{y},\dot{\theta}), the free directions of motion are simply the degrees of freedom of the platform. The conserved momenta are given by

p=[p1p2]=[Lx˙pLy˙p]=ρg(bw)g˙w+ρb(bw)b˙w.\displaystyle p=\begin{bmatrix}p_{1}\\ p_{2}\end{bmatrix}=\begin{bmatrix}\frac{\partial L}{\partial\dot{x}_{p}}\\ \frac{\partial L}{\partial\dot{y}_{p}}\end{bmatrix}=\rho_{g}(b_{w})\dot{g}_{w}+\rho_{b}(b_{w})\dot{b}_{w}. (19)

Noting that the form of Eq. (19) is the same as the non-reduced form of Eq. (17), we can rearrange to obtain

[x˙py˙p]=[cosθsinθsinθcosθ]Apext(bw)b˙w+1M[p1p2].\begin{bmatrix}\dot{x}_{p}\\ \dot{y}_{p}\end{bmatrix}=-\begin{bmatrix}\cos\theta\!&\!-\sin\theta\\ \sin\theta\!&\!\cos\theta\end{bmatrix}A^{\text{ext}}_{p}(b_{w})\dot{b}_{w}+\frac{1}{M}\begin{bmatrix}p_{1}\\ p_{2}\end{bmatrix}. (20)

where M=3Ml+MpM=3M^{l}+M^{p}.

Here, the matrix Apext(bw)-A^{\text{ext}}_{p}(b_{w}) is the external connection of our now stratified bundle structure. It is also the local form of the mechanical connection, so named because it is derived from the conservation of momentum for the combined robot-platform system. In practice, we can drop the momentum drift terms if the platform starts at rest. The main complexity comes from the rotation matrix in front of the mechanical connection—the range of the connection is still the robot’s Lie algebra, or velocities expressed in the robot-fixed frame. In the next subsection we first bypass this problem by assuming that we can prescribe platform velocities in the robot’s body frame.

V-C Platform Actuation in Body Frame

Refer to caption
Refer to caption
Figure 7: The upu_{p} (top) and vpv_{p} (bottom) components of the connection exterior derivative for the platform; that is, the exterior derivative of the connection that relates the robot’s joint velocities to the platform’s velocities in the robot’s body frame.

In deriving Eq. (20) we noted that the main difficulty in using it, even after dropping the drift terms using a start-from-rest assumption, is the presence of the rotation matrix. This relationship signifies a dependence on θ\theta, the orientation of the robot relative to the platform (and inertial frame). However, if we know or can prescribe the platform’s position relative to the robot’s body frame222Of course, this assumes that we have free control over the platform’s motion in all directions, rather than along a set of fixed axes., we can directly use the external, mechanical connection Apext(bw)-A^{\text{ext}}_{p}(b_{w}) without accounting for the effect of θ\theta on the robot-platform interaction. In other words, we can choose to specify the platform’s velocity using the variables

[u˙pv˙p]=[cosθsinθsinθcosθ][x˙py˙p].\begin{bmatrix}\dot{u}_{p}\\ \dot{v}_{p}\end{bmatrix}=\begin{bmatrix}\cos\theta&\sin\theta\\ -\sin\theta&\cos\theta\end{bmatrix}\begin{bmatrix}\dot{x}_{p}\\ \dot{y}_{p}\end{bmatrix}. (21)

Again assuming that the system starts from rest, Eq. (20) then reduces to

[u˙pv˙p]=Apext(bw)b˙w.\begin{bmatrix}\dot{u}_{p}\\ \dot{v}_{p}\end{bmatrix}=-A^{\text{ext}}_{p}(b_{w})\dot{b}_{w}. (22)

Since Apext(bw)-A^{\text{ext}}_{p}(b_{w}) plays a role identical to that of the kinematic connection for the robot, we can also plot its exterior derivative in the same way that we have done for the robot. Fig. 7 shows their shape for a set of chosen system parameters.

The main observation one finds from these plots is that the upu_{p} plot is in general a flipped version of the robot’s xx exterior derivative plot (Fig. 4). This is reasonable; as the robot moves in the forward or backward direction, we would expect the platform to move in the opposite direction, preserving net initial momentum of zero. The exterior derivative for vpv_{p} (motion of the platform in a direction lateral to the robot’s heading) resembles the robot’s θ\theta exterior derivative (second plot of Fig. 4), but reflected about the α1=α2\alpha_{1}=-\alpha_{2} axis. This can be physically interpreted as a counteraction of the platform due to rotation of the robot; as the platform does not have a rotation degree of freedom, the counteraction is projected onto the vpv_{p} component.

With the derivation of Eq. (22) we are now also able to consider the problem of actuating the platform to induce a completely passive robot to move in a desired way. In other words, we can prescribe platform velocities (u˙p,v˙p)(\dot{u}_{p},\dot{v}_{p}), which would produce trajectories bw(t)b_{w}(t) in the robot’s joint variables. These base trajectories (and the associated velocities) then result in the robot moving along its fiber degrees of freedom according to Eq. (18) and Fig. 4.

Refer to caption
Refer to caption
Figure 8: Top: The robot’s desired fiber trajectory, which moves forward without reorientation. Bottom: The platform velocity inputs, relative to the robot’s body frame, required to obtain the base gait in Fig. 7 and ultimately the fiber trajectory above.

This problem can be approached in two ways. The first is to assume that we have access to a particular robot fiber motion, either desired or measured, for which we can find a corresponding gait in the base space through analysis of the robot’s original connection mapping in Eq. (18). The same gait can also then be pushed through the platform connection relationship shown in Eq. (22). This would yield the required platform velocity inputs u˙p(t)\dot{u}_{p}(t) and v˙p(t)\dot{v}_{p}(t) that would generate the robot’s overall desired motion. As an example, suppose we want to induce the robot to locomote as shown in the top figure of Fig. 8, in which the robot advances forward without reorientation. The gait that would achieve this is the gait shown as a closed loop in Fig. 7. Mapping this gait through the platform connection produces the required velocities as shown in the bottom figure of Fig. 8.

One drawback with the above approach is that there is no guarantee on the feasibility of platform input. This is reflected in Fig. 8 in that the required input requires a constant nonzero offset in u˙p(t)\dot{u}_{p}(t), meaning that the platform would essentially have to move on the plane with the robot. The second, more control-oriented, way to approach this problem is to invert the mechanical connection in Eq. (22) to find feasible (u˙p,v˙p)(\dot{u}_{p},\dot{v}_{p}) trajectories to obtain a desired b˙w\dot{b}_{w}.

That Eq. (22) is reduced, i.e., we have eliminated all robot fiber dependencies from the equation, allows us to consider only the interaction between the robot’s joints and the platform fiber variables. Furthermore, the equation bears a resemblance to the dynamics between a set of actuated and a set of unactuated joints on the same robot, as detailed in [1]; the only difference is that the actuated variables in this case are external to the robot.

Refer to caption
(a)
Refer to caption
(b)
Refer to caption
(c)
Refer to caption
(d)
Refer to caption
(e)
Refer to caption
(f)
Figure 9: The xpx_{p} (top) and ypy_{p} (bottom) components of the connection exterior derivative for the platform, corresponding to the robot’s orientation θ\theta at 45 (left), 90 (middle), and 180 degrees (right). The case in which the robot is aligned with the platform (θ=0\theta=0) is the same as the plots in Fig. 7. Note that the plots undergo an inversion as θ\theta increase from 0 to 180.
Refer to caption
Refer to caption
Refer to caption
Figure 10: Top: A set of platform inputs that does not lead to net motion of the platform over time. Bottom left: The offset of the gait in shape space shifts from the third quadrant to the first. Bottom right: The resulting fiber motion of the robot, a trajectory with an increasing curvature.

For example, it can be numerically shown that increasing the relative phase between the two input directions will increase the offset of the resultant joint trajectories. Such a gait is shown in Fig. 10 (top); note that v˙p\dot{v}_{p} lags u˙p\dot{u}_{p} more and more over time. This has the effect of shifting the center of the gait in shape space (Fig. 10, bottom left) from the third quadrant to the first quadrant. As we know from the θ\theta plot of Fig. 4, gaits with negative offsets in α1\alpha_{1} and α2\alpha_{2} acquire negative net orientation; gaits with positive offsets acquire positive net orientation. In addition, the robot continues to move forward in its body direction while rotating, since all gaits enclose a positive net area in the xx plot of Fig. 4. All of these observations are apparent in the robot’s fiber trajectory for this simulation (Fig. 10, bottom right). It starts at the origin moving forward on a trajectory rotating clockwise (negative curvature) and at around t=60t=60 begins rotating counterclockwise (positive curvature), as the relative phase between u˙p\dot{u}_{p} and v˙p\dot{v}_{p} becomes large and the center of the resulting α1\alpha_{1}-α2\alpha_{2} gait becomes positive.

V-D Platform Actuation in Inertial Frame

In the previous subsection, the assumption that we can actuate the platform relative to the robot body’s longitudinal and lateral directions requires that the platform can freely move in all directions. An alternative scenario is that it may be limited to move only in two fixed directions, corresponding to two independent degrees of freedom. Assuming that the system starts from rest, this model is described exactly by Eq. (21).

Even if the system again starts from rest, dropping the momenta terms from the equation, the dependency of Eq. (21) on the robot’s orientation θ\theta introduces an additional complexity. We assume that we know the robot’s orientation throughout the system’s operation, for example via an overhead camera, so that θ\theta is not an unknown quantity. However, it is a symmetry-breaking fiber variable that changes the form of the connection Ap(bw)-A_{p}(b_{w}) (shown in the general case by Eq. (14)) and its corresponding exterior derivative plots in Fig. 7.

Fig. 9 shows the effect of θ\theta on dAp(bw)\text{d}A_{p}(b_{w}); in other words, the plots show the exterior derivative, for different values of θ\theta, of a θ\theta-dependent connection

Aθnon(θ,bw)=[cosθsinθsinθcosθ]Apext(bw).A^{\text{non}}_{\theta}(\theta,b_{w})=\begin{bmatrix}\cos\theta&-\sin\theta\\ \sin\theta&\cos\theta\end{bmatrix}A^{\text{ext}}_{p}(b_{w}). (23)

The plots shown correspond to θ\theta at 4545, 9090, and 180180 degrees (of course, the nominal plots of Fig. 7 correspond to θ=0\theta=0). As we would expect, the nature of the interaction between the robot and platform changes with the orientation of the robot. As the robot rotates to 9090 degrees, its body xx axis points along the inertial yy axis, while its body yy axis points along the inertial xx axis. The xpx_{p} plot is thus identical to vp-v_{p}, or an inverted version of the vpv_{p} plot in Fig. 7, while ypy_{p} is identical to upu_{p} (recall that the corresponding robot and platform components are inverted). At 180180 degrees, both xpx_{p} and ypy_{p} are completely inverted from upu_{p} and vpv_{p}, the latter again corresponding to xpx_{p} and ypy_{p} at 0 degrees. Finally, as the robot reorients back to 0 degrees, both plots smoothly deform back to their nominal forms (Fig. 7).

Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 11: Top: The exterior derivatives of an AθA_{\theta} for θ\theta between π2\frac{\pi}{2} and 2π3\frac{2\pi}{3} (middle plot corresponding to xpx_{p}, right to ypy_{p}). Bottom: Same functions but for θ\theta between π\pi and 7π6\frac{7\pi}{6}. Note that some of the plots appear relatively unchanged from those of Fig. 9; the others acquire deformations starting from the edges.

With a varying θ\theta, robot base trajectories no longer solely lie on the α1\alpha_{1}-α2\alpha_{2} plane in interacting with the inertial platform velocities x˙p\dot{x}_{p} and y˙p\dot{y}_{p}. However, we are able to simplify this problem and reduce motion planning to analysis of a single exterior derivative function as before if θ\theta is known to be periodic. In other words, the robot may start out at some arbitrary orientation, but its net motion only moves it forward in the body direction and does not turn it away from its initial orientation. From the connection exterior derivative plot that depicts the mapping between internal joint changes and robot position changes in Fig. 4, we know that such gaits are centered about the origin.

The following strategy is one which we referred to in Section IV, that of decoupling the dependency of the fiber trajectories on the evolution of the non-symmetric fiber, which in the present case is gnon=θg^{\text{non}}=\theta. Assuming that the joint trajectories α1\alpha_{1} and α2\alpha_{2} are also periodic, we can apply harmonic balance on the third line of Eq. (18), a first-order differential equation θ˙=f(bw,b˙w)\dot{\theta}=f(b_{w},\dot{b}_{w}), to obtain a solution for θ(t)\theta(t) in terms of the parameters of α1(t)\alpha_{1}(t) and α2(t)\alpha_{2}(t) [36]. In other words, if

α1(t)\displaystyle\alpha_{1}(t) =B1cos(ωt),\displaystyle=B_{1}\cos(\omega t), (24)
α2(t)\displaystyle\alpha_{2}(t) =B2cos(ωtϕ),\displaystyle=B_{2}\cos(\omega t-\phi), (25)

then we can find

θ(t)\displaystyle\theta(t) =Θcos(ωtψ)+C,\displaystyle=\Theta\cos(\omega t-\psi)+C, (26)

where Θ\Theta, ψ\psi, and CC are functions of B1B_{1}, B2B_{2}, and ϕ\phi. Taking this procedure one step further, we can apply trigonometric identities to write

θ=a1α1+a2α2+C,\theta=a_{1}\alpha_{1}+a_{2}\alpha_{2}+C, (27)

where a1a_{1} and a2a_{2} are the solutions of the nonlinear equations

Θ\displaystyle\Theta =(a1B1)2+(a2B2)2+2a1a2B1B2cosϕ,\displaystyle=\sqrt{(a_{1}B_{1})^{2}+(a_{2}B_{2})^{2}+2a_{1}a_{2}B_{1}B_{2}\cos\phi},
ψ\displaystyle\psi =atan2(a2B2sinϕ,a1B1+a2B2cosϕ).\displaystyle=-\text{atan}2(-a_{2}B_{2}\sin\phi,a_{1}B_{1}+a_{2}B_{2}\cos\phi).

The unknowns can be analytically solved as

(a1,a2)=±(Θsin(ϕψ)B1sinϕ,ΘsinψB2sinϕ).\displaystyle(a_{1},a_{2})=\pm\left(\frac{\Theta\sin(\phi-\psi)}{B_{1}\sin\phi},\frac{\Theta\sin\psi}{B_{2}\sin\phi}\right). (28)

With the numerical values of a1a_{1} and a2a_{2} in hand, we can substitute Eq. (27) into Eq. (23) and obtain a reduced connection mapping solely between the joint variables bwb_{w} and the platform fiber variables xpx_{p} and ypy_{p}, without regard to θ\theta. Again, this new connection assumes that θ\theta is periodic and is only valid for the given or known functional form of θ\theta, whether through analysis or visual tracking. With this connection form, we are able to reduce the previous exterior derivative plots from three dimensions (α1\alpha_{1}, α2\alpha_{2}, and θ\theta) back down to two (α1\alpha_{1} and α2\alpha_{2} only).

Two effective connection exterior derivatives over different ranges of θ\theta are shown in Fig. 11 (one may be able to characterize such approximations if the robot has limited reorientation over its trajectory, for example). In the first row, θ\theta has a range from about π2\frac{\pi}{2} to about 2π3\frac{2\pi}{3}; in the second, θ\theta ranges from about π\pi to about 7π6\frac{7\pi}{6}. In both rows, the representative exterior derivative functions corresponding to xpx_{p} and ypy_{p} are shown. Interestingly, the xpx_{p} plot in the first row and ypy_{p} plot in the second row are not very different from their constant θ\theta counterparts at 9090 and 180180 degrees, respectively. This indicates that those particular surfaces are more stable and hold over large ranges of θ\theta. On the other hand, the other two plots are noticeably different, particularly on the edges. In both the ypy_{p} plot in the first row and xpx_{p} plot in the second, the edges are the first regions to deform as θ\theta changes.

Given that we are able to find single representative connection derivative plots over a given range of θ\theta, we can use this visual tool for locomotion analysis and planning for the three-link wheeled snake robot on a platform system, whether the inputs are applied to the robot on a passive platform or to an actuated platform underneath a passive robot. A weakness of this approach is that the computed connection only holds for the specific θ\theta range. If this range changes, whether by shifting or scaling, a new connection must be found.

VI Chaplygin Beanie on a Platform

We now shift our focus from a system for which external actuation strategies can be guided by a principal connection, to one for which no such connection exists, requiring that we develop additional tools or intuition for motion planning. We first investigate behaviors for a completely passive system with the robot being driven by elastic elements in its body, provide a formal proof for these behaviors, and then illustrate the degree to which this formal understanding can inform investigations into an externally actuated version of the system. We then compute motion primitives for multiple passively compliant Chaplygin beanies on an actuated platform. The material in this section appeared previously in [2] without the broader context of the present paper.

Refer to caption
Figure 12: Coordinate assignments and inertial parameters of a Chaplygin beanie on a platform. We designate mm, BB, CC the mass of the Chaplygin beanie, rotational inertia of the rotor, and rotational inertia of the cart, respectively. We let kk be the stiffness of the linear torsional spring coupling the cart to the rotor, and MM the total mass of the platform.

VI-A Robot Description

Constrained to the platform via a wheel located at its rear, the Chaplygin beanie locomotes using a rotor sitting atop its body. The rotor can be driven actively, for example by a motor, or passively, via an elastic element coupling the cart to the rotor. In this subsection, we study the latter of these two configurations, and assume the elastic element to be a linear torsional spring. The total mass of the vehicle is represented by mm, its rotational inertia about the center of mass as CC, rotational inertia of the rotor about the center of mass as BB, and the mass of the platform as MM. The distance between the center of mass and the contact point at the wheel is denoted by aa, and the stiffness of the spring coupling the rotor to the body denoted by kk. The position of the vehicle relative to the platform is given coordinates (x,y)(x,y), its orientation θ\theta, the rotor angle relative to the vehicle heading by ϕ\phi, and the position of the platform in a laboratory frame by (xp,yp)(x_{p},y_{p}).

The configuration manifold for this system is Qc=SE(2)×𝕊1×2Q_{c}=\text{SE}(2)\times\mathbb{S}^{1}\times\mathbb{R}^{2}, with a subscripted ()c()_{c} to denote Chaplygin beanie. Adhering to our earlier notation that delineates between internal and external configurations, we let Gcint=SE(2)G^{\text{int}}_{c}=\text{SE}(2), Bc=𝕊1B_{c}=\mathbb{S}^{1}, and Gcext=2G^{\text{ext}}_{c}=\mathbb{R}^{2}. Furthermore, we let gcint=(x,y,θ)Gcintg^{\text{int}}_{c}=(x,y,\theta)\in G^{\text{int}}_{c}, bc=ϕBcb_{c}=\phi\in B_{c}, and gcext=(xp,yp)Gcextg^{\text{ext}}_{c}=(x_{p},y_{p})\in G^{\text{ext}}_{c}. Note that the use of this notation does not assume the existence of a connection relating trajectories in BcB_{c} to trajectories in GcintG^{\text{int}}_{c} or GcextG^{\text{ext}}_{c}. Like the three-link snake robot, the Chaplygin beanie is constrained via a no-slip condition on its wheel. The nonholonomic constraint at the wheel is given by

x˙sinθ+y˙cosθaθ˙=0.-\dot{x}\sin\theta+\dot{y}\cos\theta-a\dot{\theta}=0. (29)

Constraints of this kind can also be thought of as one forms lying in the codistribution on the configuration manifold QcQ_{c}, written equivalently as

ω=sinθdx+cosθdyadθ.\omega=-\sin\theta dx+\cos\theta dy-ad\theta. (30)

Given an initial condition gcint(0)=(0,0,π/4)g^{\text{int}}_{c}(0)=(0,0,-\pi/4), bc=πb_{c}=\pi, gcext(0)=(0,0)g^{\text{ext}}_{c}(0)=(0,0), and setting the inertial parameters and kk equal to unity, we observe the trajectory in Fig 13.

Refer to caption
Figure 13: Trajectory of a Chaplygin beanie (in blue) as it locomotes atop a platform. The platform trajectory is shown in red.

VI-B Nonholonomic Reduction

Stable trajectories like the one in Fig. 13 illustrate fixed points in a reduced space. To analyze these fixed points, we employ nonholonomic reduction, and leverage the geometric structure of the passive system to guide our development of a formal understanding of the types of stable locomotive trajectories that can arise from external actuation.

The evolution equations arising from the reduction are the changes in linear and angular momentum permitted by the no-slip constraint at the wheel and will replace the equations describing the evolution of x˙\dot{x}, y˙\dot{y}, and θ˙\dot{\theta}. The presence of a platform gives rise to two additional evolution equations, one of which is the time evolution of forward translational momentum of both the Chaplygin beanie and the platform, the second of which is the time evolution of the momentum of both the Chaplygin beanie and the platform in the direction orthogonal to that allowed by the no-slip consraint at the wheel. We also refer to this momentum term as momentum lateral to the forward motion of the vehicle. The Lagrangian for the system is given by

Lc\displaystyle L_{c} =12m((x˙+x˙p)2+(y˙+y˙p)2)+12Cθ˙2\displaystyle=\frac{1}{2}m((\dot{x}+\dot{x}_{p})^{2}+(\dot{y}+\dot{y}_{p})^{2})+\frac{1}{2}C\dot{\theta}^{2} (31)
+12B(θ˙+ϕ˙)2+12M(x˙p2+y˙p2)12kϕ2.\displaystyle+\frac{1}{2}B(\dot{\theta}+\dot{\phi})^{2}+\frac{1}{2}M(\dot{x}_{p}^{2}+\dot{y}_{p}^{2})-\frac{1}{2}k\phi^{2}.

We require that the one form describing the no-slip constraint be annihilated by the system’s generalized velocity, having coordinates (x,y,θ,ϕ,xp,yp)(x,y,\theta,\phi,x_{p},y_{p}), at every point qcQcq_{c}\in Q_{c}. For the Chaplygin beanie on a platform with finite inertia, the manifold on which the dynamics evolve is described by the configuration manifold Qc=SE(2)×𝕊1×2Q_{c}=\text{SE}(2)\times\mathbb{S}^{1}\times\mathbb{R}^{2}.

We let G=SE(2)×2=Gcint×GcextG=\text{SE}(2)\times\mathbb{R}^{2}=G^{\text{int}}_{c}\times G^{\text{ext}}_{c} be the Lie group representing the group of rigid translations and rotations of the Chaplygin beanie and rigid translations of the platform. Let an arbitrary element of the Lie group GG be described by g=(x,y,θ,xp,yp)g=(x,y,\theta,x_{p},y_{p}). Consider now a different element of GG with assignment g=(a,b,α,c,d)g=(a,b,\alpha,c,d) and an element qcQcq_{c}\in Q_{c} given by qc=(x,y,θ,xp,yp,ϕ)q_{c}=(x,y,\theta,x_{p},y_{p},\phi). The left action of GG on QQ is given by

Φ:\displaystyle\Phi: G×QcQc:(g,qc)(a+xcosαysinα,\displaystyle G\times Q_{c}\mapsto Q_{c}:(g,q_{c})\mapsto(a+x\cos\alpha-y\sin\alpha, (32)
b+ycosα+xsinα,c+xpcosαypsinα,\displaystyle b+y\cos\alpha+x\sin\alpha,c+x_{p}\cos\alpha-y_{p}\sin\alpha,
d+ypcosα+xpsinα,θ+α,ϕ).\displaystyle d+y_{p}\cos\alpha+x_{p}\sin\alpha,\theta+\alpha,\phi).

The above defines a tangent lifted action, TΦT\Phi, of GG on the tangent bundle TQcTQ_{c}, given by

TΦ\displaystyle T\Phi :G×TQcTQc\displaystyle:G\times TQ_{c}\mapsto TQ_{c} (33)
:(g,(qc,q˙c))(Φ(g,qc),TqΦ(g,qc)q˙c)\displaystyle:\big{(}g,(q_{c},\dot{q}_{c})\big{)}\mapsto(\Phi(g,q_{c}),T_{q}\Phi(g,q_{c})\dot{q}_{c})

where TqcΦ(g,qc)T_{q_{c}}\Phi(g,q_{c}) is given by

TqcΦ(g,qc)=[cosαsinα0000sinαcosα0000001000000cosαsinα0000sinαcosα0000001].T_{q_{c}}\Phi(g,q_{c})\!=\!\begin{bmatrix}\cos\alpha&-\sin\alpha&0&0&0&0\\ \sin\alpha&\cos\alpha&0&0&0&0\\ 0&0&1&0&0&0\\ 0&0&0&\cos\alpha&-\sin\alpha&0\\ 0&0&0&\sin\alpha&\cos\alpha&0\\ 0&0&0&0&0&1\end{bmatrix}. (34)

We can use the mapping of tangent vectors according to the above Jacobian to show that the Lagrangian, Eq. 31, is invariant under the tangent lifted action, Eq. 33. We must now verify the constraint one form, ω\omega, is invariant under the group action, Φ\Phi. Given a point qcQcq_{c}\in Q_{c} and a tangent vector q˙cTqcQc\dot{q}_{c}\in T_{q_{c}}Q_{c}, we check for left-invariance by computing

ωqc,q˙c=ωΦgqc,TqcΦgq˙c,\langle\omega_{q_{c}},\dot{q}_{c}\rangle=\langle\omega_{\Phi_{g}q_{c}},T_{q_{c}}\Phi_{g}\dot{q}_{c}\rangle, (35)

where ωqc\omega_{q_{c}} is the constraint one form evaluated at point qcq_{c} and ωΦgqc\omega_{\Phi_{g}q_{c}} is the constraint one form evaluated at point qcq_{c} after being mapped through the group action. It can be shown that the Eq. (35) holds. Thus, the system’s Lagrangian is invariant under the tangent lifted action and the constraint one form is invariant under the cotangent lifted action, making GG a symmetry group. The Lie group GG then acts on the GG part of QcQ_{c} via left translation, leaving the Bc=𝕊1B_{c}=\mathbb{S}^{1} part unchanged.

We take an approach presented in [6], involving the choosing of appropriate left-invariant vector fields spanning the intersection of the constraint distribution and the space tangent to the orbit of the group action, and leverage [37] in computing the components of the nonholonomic momentum. We designate the distribution 𝒟qc\mathcal{D}_{q_{c}} as the space of all tangent vectors which annihilate the constraint one form, ω\omega, and is given by

𝒟qc\displaystyle\mathcal{D}_{q_{c}} =span{asinθx+acosθy+θ,\displaystyle=\text{span}\{-a\sin\theta\frac{\partial}{\partial x}+a\cos\theta\frac{\partial}{\partial y}+\frac{\partial}{\partial\theta}, (36)
cosθx+sinθy,ϕ}.\displaystyle\cos\theta\frac{\partial}{\partial x}+\sin\theta\frac{\partial}{\partial y},\frac{\partial}{\partial\phi}\}.

Furthermore, we designate TqcOrb(qc)T_{q_{c}}\text{Orb}(q_{c}) as the space tangent to the orbit of the group action, given by

TqcOrb(qc)=span{x,y,θ,xp,yp}.T_{q_{c}}\text{Orb}(q_{c})=\text{span}\{\frac{\partial}{\partial x},\frac{\partial}{\partial y},\frac{\partial}{\partial\theta},\frac{\partial}{\partial x_{p}},\frac{\partial}{\partial y_{p}}\}. (37)

We then choose appropriate vector fields on the configuration space, QcQ_{c}, to span

Sqc=𝒟qcTqcOrb(qc),qcQc.S_{q_{c}}=\mathcal{D}_{q_{c}}\cap T_{q_{c}}\text{Orb}(q_{c}),\quad\forall q_{c}\in Q_{c}. (38)

The intersection of 𝒟qc\mathcal{D}_{q_{c}} and TqcOrb(qc)T_{q_{c}}\text{Orb}(q_{c}) constitutes the space in which a reduced representation of the dynamics evolve. Its dimension corresponds to the number of evolution equations obtained from the reduction. The following choice of vector fields is made to define this intersection.

Sqc\displaystyle S_{q_{c}} =span{asinθx+acosθy+θ,\displaystyle=\text{span}\{-a\sin\theta\frac{\partial}{\partial x}+a\cos\theta\frac{\partial}{\partial y}+\frac{\partial}{\partial\theta}, (39)
cosθx+sinθy,cosθxp+sinθyp,\displaystyle\cos\theta\frac{\partial}{\partial x}+\sin\theta\frac{\partial}{\partial y},\cos\theta\frac{\partial}{\partial x_{p}}+\sin\theta\frac{\partial}{\partial y_{p}},
sinθxp+cosθyp}.\displaystyle-\sin\theta\frac{\partial}{\partial x_{p}}+\cos\theta\frac{\partial}{\partial y_{p}}\}.

The first two vector fields correspond to rotation about the contact point at the wheel and longitudinal translation of the vehicle, respectively [37]. Flow along the third corresponds to forward translation of the entire system, including the platform, along the forward direction of the Chaplygin beanie. The fourth of these vector fields represents motions of the entire system lateral to the forward direction of the Chaplygin beanie.

We invoke the Einstein summation convention in the following definition of the momentum map and designate qciq_{c}^{i} as the iith coordinate on the configuration manifold, QcQ_{c}. The nonholonomic momenta are computed following

Jnhc=Lcq˙ci(ξQc)i.J^{nhc}=\frac{\partial L_{c}}{\partial\dot{q}_{c}^{i}}(\xi_{Q_{c}})^{i}. (40)

The resulting momenta are given directly by Eq. (42). It is clear by inspection that JLTJ_{LT} and JRWJ_{RW} correspond to forward translational momentum and angular momentum about the contact point of the wheel, respectively. The quantities JXJ_{X} and JYJ_{Y} correspond to forward translational momentum and momentum lateral to the direction allowed by the nonholonomic constraint for both the Chaplygin beanie and the platform.

J˙LT=m((B+C)JY+Ma(JRWBα))(maJY(m+M)(JRWBα))(M(ma2+B+C)+m(B+C))2,J˙RW=aJLT(maJY(m+M)(JRWBα))M(ma2+B+C)+m(B+C),J˙X=JY(maJY+(m+M)(JRWBα))M(ma2+B+C)+m(B+C),J˙Y=JX(maJY+(m+M)(JRWBα))M(ma2+B+C)+m(B+C)\begin{gathered}\dot{J}_{LT}=-\frac{m((B+C)J_{Y}+Ma(J_{RW}-B\alpha))(maJ_{Y}-(m+M)(J_{RW}-B\alpha))}{(M(ma^{2}+B+C)+m(B+C))^{2}},\\ \dot{J}_{RW}=\frac{aJ_{LT}(maJ_{Y}-(m+M)(J_{RW}-B\alpha))}{M(ma^{2}+B+C)+m(B+C)},\\ \dot{J}_{X}=-\frac{J_{Y}(maJ_{Y}+(m+M)(J_{RW}-B\alpha))}{M(ma^{2}+B+C)+m(B+C)},\\ \dot{J}_{Y}=-\frac{J_{X}(-maJ_{Y}+(m+M)(J_{RW}-B\alpha))}{M(ma^{2}+B+C)+m(B+C)}\end{gathered} (41)
JLT=m(x˙+x˙p)cosθ+m(y˙+y˙p)sinθ,JRW=ma(x˙+x˙p)sinθ+ma(y˙+y˙p)cosθ+(B+C)θ˙+Bϕ˙,JX=m(x˙+x˙p)cosθ+m(y˙+y˙p)sinθ+Mx˙pcosθ+My˙psinθ,JY=m(x˙+x˙p)sinθ+m(y˙+y˙p)cosθMx˙psinθ+My˙pcosθ.\begin{split}J_{LT}&=m(\dot{x}+\dot{x}_{p})\cos\theta+m(\dot{y}+\dot{y}_{p})\sin\theta,\\ J_{RW}&=-ma(\dot{x}+\dot{x}_{p})\sin\theta+ma(\dot{y}+\dot{y}_{p})\cos\theta\\ &+(B+C)\dot{\theta}+B\dot{\phi},\\ J_{X}=&m(\dot{x}+\dot{x}_{p})\cos\theta+m(\dot{y}+\dot{y}_{p})\sin\theta+\\ &M\dot{x}_{p}\cos\theta+M\dot{y}_{p}\sin\theta,\\ J_{Y}=&-m(\dot{x}+\dot{x}_{p})\sin\theta+m(\dot{y}+\dot{y}_{p})\cos\theta-\\ &M\dot{x}_{p}\sin\theta+M\dot{y}_{p}\cos\theta.\end{split} (42)

Similarly, the evolution equations are computed following

J˙nhc=Lcq˙ci[dξcdt]Qci,\dot{J}^{nhc}=\frac{\partial L_{c}}{\partial\dot{q}_{c}^{i}}\bigg{[}\frac{d\xi_{c}}{dt}\bigg{]}_{Q_{c}}^{i}, (43)

and are given by Eq. (41).

VI-C Stable Trajectories of Passive System

A formal understanding of the types of stable locomotive trajectories of a completely passive system for which bc(0)=ϕ0b_{c}(0)=\phi_{0} is nonzero can give us insight into how to actuate the platform to induce locomotion in a passive Chaplygin beanie. In this section, we provide proof for the following proposition.

Proposition 1.

For all initial conditions corresponding to the system starting at rest and for which bc(0)=ϕ00b_{c}(0)=\phi_{0}\neq 0, JLTJ_{LT} will asymptotically approach a positive constant, with JRWJ_{RW}, ϕ\phi, and ϕ˙\dot{\phi} exponentially decreasing to zero as tt\rightarrow\infty.

This proposition effectively says that all of the rotational momentum in the system will be transformed into forward translational momentum. We now present a formal argument for Proposition 1.

Proof.

Defining the following variables, the nonholonomic momenta, ϕ\phi, and ϕ˙\dot{\phi} can be expressed as

r=JLTd,w=JRWBαd,px=JXd,\displaystyle r=\frac{J_{LT}}{d},\quad w=\frac{J_{RW}-B\alpha}{d},\quad p_{x}=\frac{J_{X}}{d}, (44)
py=JYd,α=ϕ˙.\displaystyle p_{y}=\frac{J_{Y}}{d},\quad\alpha=\dot{\phi}.

The constants d=m(B+C)+M(ma2+B+C)d=m(B+C)+M(ma^{2}+B+C), γ1=m2a(B+C)/d\gamma_{1}=-m^{2}a(B+C)/d, γ2=(m(m+M)(B+C)m2Ma2)/d\gamma_{2}=(m(m+M)(B+C)-m^{2}Ma^{2})/d, γ3=mMa(m+M)/d\gamma_{3}=mMa(m+M)/d, λ1=ma2\lambda_{1}=ma^{2}, λ2=a(m+M)\lambda_{2}=-a(m+M), μ1=ma\mu_{1}=-ma, μ2=m+M\mu_{2}=m+M, ν0=B/d\nu_{0}=B/d, D=B(mMa2+C(m+M))D=B(mMa^{2}+C(m+M)), ν1=dk/D\nu_{1}=-dk/D, ν2=Bma2(m+M)/(dD)\nu_{2}=-Bma^{2}(m+M)/(dD), ν3=aB(m+M)2/(dD)\nu_{3}=aB(m+M)^{2}/(dD), ν4=Bm2a2/(dD)\nu_{4}=Bm^{2}a^{2}/(dD), and ν5=mBa(m+M)/(dD)\nu_{5}=-mBa(m+M)/(dD) fully encapsulate the presence of system parameters in a more convenient form for analysis. The reduced dynamics are then easier to analyze for stability. Taking the time derivatives of (44) and using (41) to make the necessary substitutions, the evolution equations become

r˙\displaystyle\dot{r} =γ1py2+γ2pyw+γ3w2,\displaystyle=\gamma_{1}p_{y}^{2}+\gamma_{2}p_{y}w+\gamma_{3}w^{2}, (45)
w˙\displaystyle\dot{w} =λ1rpy+λ2rwν0(ν1ϕ+ν2rpy\displaystyle=\lambda_{1}rp_{y}+\lambda_{2}rw-\nu_{0}(\nu_{1}\phi+\nu_{2}rp_{y}
+ν3rw+ν4pxpy+ν5pxw),\displaystyle+\nu_{3}rw+\nu_{4}p_{x}p_{y}+\nu_{5}p_{x}w),
p˙x\displaystyle\dot{p}_{x} =μ1py2+μ2pyw,\displaystyle=\mu_{1}p_{y}^{2}+\mu_{2}p_{y}w,
p˙y\displaystyle\dot{p}_{y} =μ1pxpyμ2pxw,\displaystyle=-\mu_{1}p_{x}p_{y}-\mu_{2}p_{x}w,
α\displaystyle\alpha =ϕ˙,\displaystyle=\dot{\phi},
α˙\displaystyle\dot{\alpha} =ν1ϕ+ν2rpy+ν3rw+ν4pxpy+ν5pxw.\displaystyle=\nu_{1}\phi+\nu_{2}rp_{y}+\nu_{3}rw+\nu_{4}p_{x}p_{y}+\nu_{5}p_{x}w.

The dynamics given by Eq. (45) can be further simplified under assumptions of momentum conservation. The quantity px2+py2p_{x}^{2}+p_{y}^{2} is conserved, with all its level sets invariant under Eq. (45). We wish to prove that all trajectories corresponding to px2+py2=0p_{x}^{2}+p_{y}^{2}=0 approach the rr axis asymptotically. Restricting the dynamics to this level set, Eq. (45) can be written as

r˙=γ3w2,w˙=λ2rwν0(ν1ϕ+ν3rw),p˙x=0,p˙y=0,α=ϕ˙,α˙=ν1ϕ+ν3rw.\begin{gathered}\dot{r}=\gamma_{3}w^{2},\quad\dot{w}=\lambda_{2}rw-\nu_{0}(\nu_{1}\phi+\nu_{3}rw),\\ \dot{p}_{x}=0,\quad\dot{p}_{y}=0,\quad\alpha=\dot{\phi},\\ \dot{\alpha}=\nu_{1}\phi+\nu_{3}rw.\end{gathered} (46)

The time evolution of rr, ww, ϕ\phi, and α\alpha then fully describe the behavior of the system. By inspection it is clear that r˙\dot{r} is nonnegative, and is positive where ww is nonzero. For w=0w=0, w˙\dot{w} is nonzero for ϕ0\phi\neq 0. It follows that rr will increase for all time given that w0w\neq 0 and ϕ0\phi\neq 0. Thus, rr will increase for all time unless ww, ϕ\phi, and α\alpha, are zero for all time, requiring rr to increase unless the flow of the vector field corresponding to Eq. (46) is always on the rr axis. All fixed positive values of rr correspond to a linear dynamical system described by w˙\dot{w}, α\alpha, and α˙\dot{\alpha}. For every such rr, denoted by rcr_{c}, the dynamics are then

[w˙αα˙]=[λ2rcwν0(ν1ϕ+ν3rcw)ϕ˙ν1ϕ+ν3rcw].\begin{bmatrix}\dot{w}\\ \alpha\\ \dot{\alpha}\end{bmatrix}=\begin{bmatrix}\lambda_{2}r_{c}w-\nu_{0}(\nu_{1}\phi+\nu_{3}r_{c}w)\\ \dot{\phi}\\ \nu_{1}\phi+\nu_{3}r_{c}w\end{bmatrix}. (47)

The Jacobian of Eq. (47) is

Λ=[λ2ν0ν3rcν0ν10001ν3rcν10].\Lambda=\begin{bmatrix}\lambda_{2}\nu_{0}\nu_{3}r_{c}&-\nu_{0}\nu_{1}&0\\ 0&0&1\\ \nu_{3}r_{c}&\nu_{1}&0\end{bmatrix}. (48)

The eigenvalues of Eq. (48) at (w,ϕ,α)=(0,0,0)(w,\phi,\alpha)=(0,0,0) correspond to the roots of a third order polynomial in pp with parameter-dependent coefficients, written as

p3+(ν0ν3rcλ2rc)p2ν1p+λ2ν1rc=0.p^{3}+(\nu_{0}\nu_{3}r_{c}-\lambda_{2}r_{c})p^{2}-\nu_{1}p+\lambda_{2}\nu_{1}r_{c}=0. (49)

With rc>0r_{c}>0, Decartes’ rule of signs tells us that the polynomial above has roots with all negative real part, showing that ww, ϕ\phi, and α\alpha exponentially decrease to zero as rr increases. Given knowledge of the asymptotic values of ww, ϕ\phi, and α\alpha, this result suggests a stable fixed point of Eq. (46) at (r,w,ϕ,α)=(r,0,0,0)(r,w,\phi,\alpha)=(r_{\infty},0,0,0). ∎

Our proof is supported by numerical simulations, an example of which is shown in Fig. 14. Note that this aligns with the behavior exhibited by the Chaplygin beanie in Fig. 13.

Refer to caption
Figure 14: Rotational momentum about the rear wheel, longitudinal translational momentum, and the rotor angle.

VI-D Platform Actuation in Body Frame

We have established that for every bc(0)=ϕ00b_{c}(0)=\phi_{0}\neq 0 corresponding to the zero level set of momentum, all of the rotational momentum decreases exponentially to zero as time approaches infinity. For the Chaplygin beanie equipped with a torsional spring, we see from numerical simulations that the rotational dynamics are dampened and oscillatory given such initial conditions. This perceived damping is a result of the conversion of rotational momentum into translational momentum. Using our knowledge of the steady-state behaviors of the completely passive system, we can therefore assume that there might exist periodic control inputs to the platform that will induce limit cycle behavior in the dynamics of the Chaplygin beanie. That is, there might exist platform control inputs that result in steady periodic trajectories in JLTJ_{LT}, JRWJ_{RW}, ϕ\phi, and ϕ˙\dot{\phi}. Limit cycles for an internally-actuated Chaplygin beanie were shown to exist in [25].

Refer to caption
Figure 15: Platform actuation rotated so as to exert control in the direction orthogonal to direction of motion allowed by the no-slip constraint at the wheel

VI-D1 Frequency Response Analysis

We seek to characterize locomotive behaviors when the frequency at which the environment is stimulated varies over a range of values containing the natural frequency of the rotor and the modal frequency of the body-rotor couple when not constrained to the platform, both of which are dependent on the stiffness of the spring. These two frequencies provide a natural starting point for our analysis. Consider a single passively compliant Chaplygin beanie atop an actuated platform and let its parameters, mm, BB, CC, aa, and kk, be equal to unity. Note that the platform can only be actuated in the directions (xp,yp)(x_{p},y_{p}) as shown in Fig. 15. There’s no reason to assume a relationship exists between forward translational speed, heading, or even stability, when actuating purely in the (xp,yp)(x_{p},y_{p}) directions. In fact, such a relationship is obfuscated by dependence on the initial heading of the robot. However, such a relationship could exist when considering actuation in a rotated frame of reference, orthogonal to the allowable direction of motion required by the nonholonomic constraint at the robot’s wheel, much like the actuation strategy considered for the three-link wheeled snake robot in the preceding section.

Fig. 15 shows the rotated reference frame of the platform. Actuation along ypy_{p}^{*} is not only independent of the heading of the vehicle, but also the direction for which its passive dynamics are most responsive. Actuation along xpx_{p}^{*}, for example, causes no deformations of the rotor relative to the body and therefore no passive response. Consider the natural frequency of the rotor and the modal frequency of the vehicle when not constrained to the platform, given by

ωnat=kB,ωmod=k(B+C)BC.\begin{gathered}\omega_{nat}=\sqrt{\frac{k}{B}},\qquad\omega_{mod}=\sqrt{\frac{k(B+C)}{BC}}.\\ \end{gathered} (50)

With a spring coupling the cart to the rotor, we sweep through a range of frequencies for a particular set of parameters to analyze the response of the system to external actuation in the ypy_{p}^{*} direction and use asymptotic mean forward translational momentum of the system (JLTJ_{LT}) as a performance metric. Since we expect that under certain periodic actuation the system dynamics will approach a limit cycle behavior, we will compute the mean forward translational momentum for an integer number of periods of oscillation. Forward translational momentum of the Chaplygin beanie is given by JLTJ_{LT} in Eq. 40.

Consider a situation that allows the orientation of the robot to be tracked in the environment. We actuate the platform according to

[xpyp]=[cosθsinθsinθcosθ]1[xpyp]\displaystyle\begin{bmatrix}x_{p}^{*}\\ y_{p}^{*}\end{bmatrix}=\begin{bmatrix}\cos\theta&-\sin\theta\\ \sin\theta&\cos\theta\end{bmatrix}^{-1}\begin{bmatrix}x_{p}\\ y_{p}\end{bmatrix} (51)

and let xp=0x_{p}^{*}=0 and yp=Asin(ωt)y_{p}^{*}=A\sin(\omega t). Note that this is effectively a feedback-like controller in that it requires tracking the heading of the robot, which is then used to compute the control xpx_{p} and ypy_{p}. Setting system parameters and the amplitude AA to unity, we discretize the range of frequencies between 0.3 and 2.0 into N=100N=100 equally-spaced intervals. Using the final three periods of oscillation to compute JLTJ_{LT} for a given actuation frequency ω\omega, we obtain the frequency response plot shown in Fig. 16.

Refer to caption
Figure 16: Frequency response of a passive Chaplygin beanie under external actuation in the body frame. The parameters were set to unity to obtain this response.

In carrying out this experiment, it is clear that the natural frequency of the rotor and modal frequency of the system in free space bound a region of high performance when considering mean forward translational momentum as a metric. Additional questions concerning generalizability and associated behaviors arise from this particular result. To address the first of these questions, we consider a variation in the parameters of the robot, compute the corresponding frequencies given in Eq. (50) and generate similar results to Fig. 16. The results of these experiments are shown in Fig. 17. The natural frequency of the rotor and modal frequency of the robot in free space again yield lower and upper bounds on regions of high performance.

Refer to caption
Figure 17: Frequency responses of a Chaplygin beanie for two different parameter combinations

Of further interest are behaviors emerging from actuating within, and outside of, the frequency bounds set by Eq. (50). In particular, we wish to characterize the frequencies that result in stable dynamics and from that characterization deduce motion primitives for controlling multiple passive vehicles.

Refer to caption
Figure 18: Analysis of the asymptotic heading of a Chaplygin beanie over the actuation bounds described in Fig. 16

An analysis of the time evolution of θ\theta when actuating the platform at frequencies inside and oustide of the bands given above is shown in Fig. 18, experimentally clarifying the existence of distinct dynamics in the robot’s heading. The blue curve is actually a family of curves all resulting from frequencies lying within the bounds of the natural and modal frequency of the robot, all resembling stable oscillatory behavior. The red and green curves each correspond to θ\theta dynamics of a single frequency chosen that satisfies the inequalities shown in the legend.

VI-D2 Manipulation

The frequency characterization carried out above provides clear rules by which we can exert control over the platform to manipulate Chaplygin beanies. Actuating the platform at frequencies within the bounds set by the natural frequency of the rotor and the modal frequency of the robot in free space allow for control primitives which induce robots to achieve stable undulatory locomotion along a particular heading. We term such behavior in the context of manipulating multiple robots as dispersion. Actuation outside of these boundaries yield trajectories corresponding to much more complex dynamics, not as easily classified as those of stable undulatory behavior. We discuss some of these behaviors in Section VII. Two such trajectories are shown in Fig. 19.

Refer to caption
Figure 19: Trajectories of two individual simulations for actuation of the platform inside of the bounds (blue) and outside of bounds (red) defined by ωnat\omega_{nat} and ωmod\omega_{mod}

The Chaplygin beanie under external actuation with ω=ωnat\omega=\omega_{nat} will disperse from its initial position and undulate stably at a particular heading for all time. The degree to which it stably oscillates in θ\theta increases with increasing ω\omega, as long as actuation stays within the bounds of the natural frequency of the rotor and the modal frequency of the robot. Though no formal guarantee is given in this work, the authors assert that trajectories corresponding to those of platform actuation at frequencies of ω<ωnat\omega<\omega_{nat} or ω>ωmod\omega>\omega_{mod} will stay within some neighborhood of its initial position, much like that of the red trajectory in Fig. 19. Such trajectories are also prone to exhibit dynamics that reveal the presence of multi-scale time dynamics, discussed below.

This result clarifies the ability to control passive robots using the kind of actuation given by Eq. (51). Consider a case with two identical passive Chaplygin beanies at rest atop an actuated platform with different initial headings. Naively assuming control over the platform to manipulate one robot in this sense does not guarantee a certain behavior for the other. In the presence of other passive robots, however, to achieve a desired behavior, the platform can be actuated corresponding to the desired control for that particular robot and its resulting behavior remains independent of the others. Fig. 20 shows such a case if the desired behavior for Chaplygin beanie 1 is to stay within some neighborhood of its initial position.

Refer to caption
Figure 20: Resulting trajectories for two Chaplygin beanie agents atop an actuated platform. The blue trajectory corresponds to actuation of beanie 1 at a frequency lower than the natural frequency of its rotor. The red trajectory corresponds to the dynamics induced by actuating the platform so as to induce the behavior seen in beanie 1.

Though the second Chaplygin beanie appears to stably locomote away in this example, there is no basis in assuming it does so. Similarly, actuation within the frequency bands discussed above would result in the vehicle approaching a stable oscillatory trajectory rather than oscillating about the initial position. In this result, we emphasize the importance of exerting control over a particular robot in a multi-robot setting given that we actuate the platform according to Eq. (51). The ability to actuate the platform in this way leads to questions concerning the control of multiple robot. Naively, one may conclude this control methodology can be targeted to one robot and switched at any time to target another to disperse or station-keep robots as needed, but this is nullified by each robot having attained nonzero momentum.

VII Conclusions and Future Work

We have presented an investigation into two distinct examples of externally actuated planar locomoting systems in ambient media, namely systems without and with drift, that rely on external interactions to achieve locomotion. In contrast to more traditional systems that locomote via commands to internal joints, the types of systems that we consider may require that we analyze and exploit the resulting external dynamics. These present difficulties in more complex mappings between different configuration components, as well as extra structure that cannot be easily reduced as before. Nevertheless, we have also presented a framework that incorporates these changes and is still amenable to established methods for analysis and motion planning.

The three-link wheeled robot on a platform is an example in which a stratified fiber bundle structure, with the external platform’s configuration forming a separate fiber space of its own. By manipulating both of the resultant connection mappings, we can find base trajectories that lead to desired fiber trajectories and vice versa, addressing the problem of actuating a passive robot using the platform only. We also discussed the problem of the broken symmetry in the relative orientation, and we proposed a method by which to eliminate this dependency for different ranges by using its periodicity.

The Chaplygin beanie on a platform exemplifies the challenges introduced by drift in an externally actuated system’s dynamics. Though it is clear based on the present work that there exist parameter-invariant bounds on platform actuation frequencies for achieving stable undulatory behavior of a passive Chaplygin beanie under external control, formal proof for this result is sought. Other interesting phenomena are exhibited by the nonlinear dynamics that warrant further exploration. Namely, certain platform actuation frequencies yield behaviors which indicate the presence of multi-scale time dynamics, demonstrated in Fig. 21.

This behavior relates qualitatively to that exhibited by an externally actuated three-link snake-like robot in [38].

Refer to caption
Figure 21: Trajectory resulting from actuating the platform at a frequency of ω<ωmod\omega<\omega_{mod} for a Chaplygin beanie with parameters C=0.5C=0.5, m=B=k=1m=B=k=1 for a duration of 500 simulation seconds.

The system was given an initial position at the origin and controlled corresponding to Eq. (51). The robot locomotes away along some heading for some time, reverses direction, locomotes for some time, switches its heading, and repeats this behavior. The dynamics of moving along in some heading occur at a fast time scale, while the dynamics for switching direction occur at a much slower time scale. Changes in the direction taken by the robot likely correspond to bifurcations in the dynamics at one of these time scales, the analysis of which is a topic of future work. The actuated system has also been shown to display stable oscillatory behavior for frequencies within the frequency bands discussed. As such, proving stabilizability for the externally-actuated system will also be included in future publications.

There are several avenues along which to move forward with this work. One is to produce a more general description of the “inversion” of the connection mapping when pushing trajectories from one fiber to another in a stratified structure. Here we were able to reuse some of the results of our companion work in analyzing the harmonics of the passive joint variables; we envision a more complete framework describing the usage of such methods in all these situations.

More generally, we showed that leveraging the tools of connection exterior derivative plots allowed us to achieve motion planning for a fully dynamic externally actuated three-link snake robot by varying the phasing between the two platform inputs. These tools gave us a structured way to accomplish motion planning, but do not consider the drift inherent in externally actuated systems. That is, any actuation of the platform beneath any robot will introduce second-order dynamics in the robot, like those seen in the Chaplygin beanie. Moving forward, considering, and even leveraging, these second-order dynamics will be a priority in controlling externally actuated systems. Of particular interest to the authors is the introduction of geometric optimal control in the sense of [39, 40] to externally actuated locomoting systems. Moreover, applications of this work in a multi-robot setting are also of interest to the authors, particularly in the context of mechanical communication 333Mechanical communication is a form of stigmergy [41, 42] and has been studied in the context of cell coordination in biology and engineering [43, 44, 45]., where robots use a shared ambient medium to transmit information as well as propulsive energy for locomotion.

References

  • [1] T. Dear, B. Buchanan, R. Abrajan-Guerrero, S. D. Kelly, M. Travers, and H. Choset, “Locomotion of a multi-link non-holonomic snake robot with passive joints,” The International Journal of Robotics Research, vol. 0, no. 0, p. 0278364919898503, 2020.
  • [2] B. Buchanan, M. Travers, H. Choset, and S. Kelly, “Stability and control of chaplygin beanies coupled to a platform through nonholonomic constraints,” Dynamic Systems and Control Conference, Oct 2020.
  • [3] J. E. Marsden, R. Montgomery, and T. S. Rațiu, Reduction, Symmetry, and Phases in Mechanics, vol. 436. American Mathematical Society, 1990.
  • [4] J. E. Marsden and T. Ratiu, Introduction to Mechanics and Symmetry: A Basic Exposition of Classical Mechanical Systems, vol. 17. Springer Science & Business Media, 2013.
  • [5] J. E. Marsden and J. Scheurle, “The reduced euler-lagrange equations,” Fields Institute Comm, vol. 1, pp. 139–164, 1993.
  • [6] A. M. Bloch, P. S. Krishnaprasad, J. E. Marsden, and R. M. Murray, “Nonholonomic mechanical systems with symmetry,” Archive for Rational Mechanics and Analysis, vol. 136, no. 1, pp. 21–99, 1996.
  • [7] J. P. Ostrowski, “Reduced equations for nonholonomic mechanical systems with dissipative forces,” Reports on Mathematical Physics, vol. 42, no. 1, pp. 185–209, 1998.
  • [8] S. D. Kelly and R. M. Murray, “The geometry and control of dissipative systems,” in Proceedings of the 35th IEEE Conference on Decision and Control, vol. 1, pp. 981–986, IEEE, 1996.
  • [9] J. P. Ostrowski and J. W. Burdick, “The geometric mechanics of undulatory robotic locomotion,” The International Journal of Robotics Research, vol. 17, no. 7, pp. 683–701, 1998.
  • [10] J. Grover, J. Zimmer, T. Dear, M. Travers, H. Choset, and S. Kelly, “Geometric motion planning for a three-link swimmer in a three-dimensional low reynolds-number regime,” pp. 6067–6074, 06 2018.
  • [11] S. Kadam, K. Joshi, N. Gupta, P. Katdare, and R. Banavar, “Trajectory tracking using motion primitives for the purcell’s swimmer,” in 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 3246–3251, IEEE, 2017.
  • [12] J. B. Melli, C. W. Rowley, and D. S. Rufat, “Motion planning for an articulated body in a perfect planar fluid,” SIAM Journal on applied dynamical systems, vol. 5, no. 4, pp. 650–669, 2006.
  • [13] S. Kadam and R. Banavar, “Geometry of locomotion of the generalized purcell’s swimmer: Modelling, controllability and motion primitives,” IFAC Journal of Systems and Control, vol. 4, pp. 7–16, 2018.
  • [14] R. L. Hatton and H. Choset, “Geometric motion planning: The local connection, stokes’ theorem, and the importance of coordinate choice,” The International Journal of Robotics Research, vol. 30, no. 8, pp. 988–1014, 2011.
  • [15] J. Ostrowski, “Computing reduced equations for robotic systems with constraints and symmetries,” Robotics and Automation, IEEE Transactions on, vol. 15, pp. 111–123, Feb 1999.
  • [16] E. A. Shammas, H. Choset, and A. A. Rizzi, “Geometric motion planning analysis for two classes of underactuated mechanical systems,” The International Journal of Robotics Research, vol. 26, no. 10, pp. 1043–1073, 2007.
  • [17] R. M. Murray and S. S. Sastry, “Nonholonomic motion planning: Steering using sinusoids,” IEEE Transactions on Automatic Control, vol. 38, no. 5, pp. 700–716, 1993.
  • [18] R. Mukherjee and D. P. Anderson, “Nonholonomic motion planning using stoke’s theorem,” in Robotics and Automation, 1993. Proceedings., 1993 IEEE International Conference on, pp. 802–809, IEEE, 1993.
  • [19] S. D. Kelly and R. M. Murray, “Geometric phases and robotic locomotion,” Journal of Robotic Systems, vol. 12, no. 6, pp. 417–431, 1995.
  • [20] J. P. Ostrowski, J. P. Desai, and V. Kumar, “Optimal gait selection for nonholonomic locomotion systems,” The International Journal of Robotics Research, vol. 19, no. 3, pp. 225–237, 2000.
  • [21] F. Bullo and K. M. Lynch, “Kinematic controllability for decoupled trajectory planning in underactuated mechanical systems,” IEEE Transactions on Robotics and Automation, vol. 17, no. 4, pp. 402–412, 2001.
  • [22] S. D. Kelly, M. J. Fairchild, P. M. Hassing, and P. Tallapragada, “Proportional heading control for planar navigation: The chaplygin beanie and fishlike robotic swimming,” in 2012 American Control Conference (ACC), pp. 4885–4890, IEEE, 2012.
  • [23] M. J. Fairchild, P. M. Hassing, S. D. Kelly, P. Pujari, and P. Tallapragada, “Single-input planar navigation via proportional heading control exploiting nonholonomic mechanics or vortex shedding,” in Dynamic Systems and Control Conference, vol. 54754, pp. 345–352, 2011.
  • [24] V. Fedonyuk and P. Tallapragada, “The dynamics of a chaplygin sleigh with an elastic internal rotor,” Regular and Chaotic Dynamics, vol. 24, no. 1, pp. 114–126, 2019.
  • [25] B. Pollard, V. Fedonyuk, and P. Tallapragada, “Swimming on limit cycles with nonholonomic constraints,” Nonlinear Dynamics, vol. 97, no. 4, pp. 2453–2468, 2019.
  • [26] D. S. Reznik and J. F. Canny, “C’mon part, do the local motion!,” in Proceedings 2001 ICRA. IEEE International Conference on Robotics and Automation (Cat. No. 01CH37164), vol. 3, pp. 2235–2242, IEEE, 2001.
  • [27] T. H. Vose, P. Umbanhowar, and K. M. Lynch, “Friction-induced velocity fields for point parts sliding on a rigid oscillated plate,” The International Journal of Robotics Research, vol. 28, no. 8, pp. 1020–1039, 2009.
  • [28] T. H. Vose, P. Umbanhowar, and K. M. Lynch, “Sliding manipulation of rigid bodies on a controlled 6-dof plate,” The International Journal of Robotics Research, vol. 31, no. 7, pp. 819–838, 2012.
  • [29] D. Debono and M. Bugeja, “Application of sliding mode control to the ball and plate problem,” in 2015 12th International Conference on Informatics in Control, Automation and Robotics (ICINCO), vol. 1, pp. 412–419, IEEE, 2015.
  • [30] A. R. Ghiasi and H. Jafari, “Optimal robust controller design for the ball and plate system,” in The 9th International Conference on Electronics Computer and Computation ICECCO-2012, 2012.
  • [31] T. Dear, S. D. Kelly, and H. Choset, “Variations on the role of principal connections in robotic locomotion,” in ASME 2016 Dynamic Systems and Control Conference, pp. V002T24A012–V002T24A012, American Society of Mechanical Engineers, 2016.
  • [32] R. L. Hatton, Geometric Mechanics of Locomotion and Optimal Coordinate Choice. PhD thesis, Carnegie Mellon University, Pittsburgh, 2011.
  • [33] R. L. Hatton and H. Choset, “Geometric swimming at low and high reynolds numbers,” IEEE Transactions on Robotics, vol. 29, no. 3, pp. 615–624, 2013.
  • [34] B. Bittner, R. L. Hatton, and S. Revzen, “Geometrically optimal gaits: a data-driven approach,” Nonlinear Dynamics, vol. 94, no. 3, pp. 1933–1948, 2018.
  • [35] E. Noether and M. A. Tavel, “Invariant variation problems,” 1971.
  • [36] C. Hayashi, Nonlinear Oscillations in Physical Systems. Princeton University Press, 2014.
  • [37] S. D. Kelly, P. Pujari, and H. Xiong, Geometric Mechanics, Dynamics, and Control of Fishlike Swimming in a Planar Ideal Fluid, pp. 101–116. New York, NY: Springer New York, 2012.
  • [38] S. Kelly, “Entrainment and multiscale dynamics in vibrationally driven nonholonomic systems,” 24th International Congress of Theoretical and Applied Mechanics, 2016.
  • [39] A. Bloch, L. Colombo, R. Gupta, and D. M. De Diego, “A geometric approach to the optimal control of nonholonomic mechanical systems,” in Analysis and geometry in control theory and its applications, pp. 35–64, Springer, 2015.
  • [40] L. Colombo, “A variational-geometric approach for the optimal control of nonholonomic systems,” 2017.
  • [41] O. Holland and C. Melhuish, “Stigmergy, self-organization, and sorting in collective robotics,” Artificial life, vol. 5, no. 2, pp. 173–202, 1999.
  • [42] Q. Tang, F. Yu, Y. Zhang, L. Ding, and P. Eberhard, “A stigmergy based search method for swarm robots,” in International Conference on Swarm Intelligence, pp. 199–209, Springer, 2017.
  • [43] C. A. Reinhart-King, M. Dembo, and D. A. Hammer, “Cell-cell mechanical communication through compliant substrates,” Biophysical Journal, vol. 95, no. 12, pp. 6044 – 6051, 2008.
  • [44] I. Nitsan, S. Drori, Y. E. Lewis, S. Cohen, and S. Tzlil, “Mechanical communication in cardiac cell synchronized beating,” Nature Physics, vol. 12, no. 5, pp. 472–477, 2016.
  • [45] S. C. Schwager, P. V. Taufalele, and C. A. Reinhart-King, “Cell–cell mechanical communication in cancer,” Cellular and molecular bioengineering, vol. 12, no. 1, pp. 1–14, 2019.