Proceedings of the ASME 2016 Dynamic Systems and Control Conference DSCC2016 October 12-14, 2016, Minneapolis, Minnesota, USA

DSCC2016-9923

EXPERIMENTAL GAIT ANALYSIS OF WAVEBOARD LOCOMOTION

Ayush Agrawal Tony Dear Hesham M. Zaini Howie Choset Department of Mechanical Engineering The Robotics Institute Carnegie Mellon University Carnegie Mellon University Pittsburgh, Pennsylvania 15213 Pittsburgh, Pennsylvania 15213 [email protected] [email protected] [email protected] [email protected]

ABSTRACT waveboards in light of ergonomic considerations. More Through modeling and experimentation, we analyze generally, analysis of the locomotive capabilities of this system common gaits on a waveboard, an underactuated mechanical informs control and planning of highly dynamic mobile robots. system whose motion is governed by both nonholonomic Although the waveboard itself has not appeared often in constraints and momentum conservation. We take advantage of geometric mechanics literature, the is a similar the system's symmetries to derive a reduced system model that system that has received considerable attention in the context of differentiates between kinematic and dynamic components of underactuated systems and controllability of nonholonomic motion. We evaluate this model using marker trajectory data mechanical systems. The snakeboard was first analyzed as a gathered through an optical tracking system for various types of nonholonomic mechanical system by Ostrowski et al. [2]. gaits. By extracting relevant trajectory parameters via state Shammas et al. [1] analyzed and generated gaits for mixed reconstruction and fitting our joint variables to an ellipse, we mechanical systems using height functions to analyze geometric determine the kinematic components of gaits commonly used by phase shift, as well as a novel scaled momentum and gamma human riders. In particular, we demonstrate that traditional functions to evaluate dynamic phase shift. In [1, 3], Shammas et forward motion is purely dynamic, while sustained turning al. classified gaits into three different categories: purely motion contains kinematic components. In order to validate our kinematic, purely dynamic, and kino-dynamic. More recently, model, we compare experimentally obtained trajectories with Shammas and de Oliveira provided an analytical solution to reconstructed displacements based on the model. Finally, we snakeboard motion planning [4]. Dear et al. [5] built upon their suggest an approach for further analysis of the dynamic work using body coordinates and local trajectory information to components of these gaits. address trajectory generation. Dear et al. [6] also incorporated dissipative friction in the traveling direction and skidding in the INTRODUCTION snakeboard model, investigating these effects on trajectory The waveboard, also known as the essboard, caster board, planning. Asnafi and Mahzoon [7] generated some flower-like vigor board, and ripstik, is a variant in which two gaits for the snakeboard. Similar geometric approaches can be platforms, each resting upon a caster , are constrained to applied to the waveboard in order to analyze its locomotive rotate about the same axis and coupled with a torsional spring. It capabilities. is a mixed mechanical system whose motion is governed by both This paper addresses the challenge of modeling and nonholonomic velocity constraints and momentum conservation. characterizing motions of the waveboard. In the next section, we It is modeled similarly to the variable inertia snakeboard present a model for the waveboard and derive its reconstruction examined by Shammas et al. [1], who used geometric mechanics equation. Subsequent sections describe experimental to differentiate between kinematic and dynamic components of methodology and analysis of common types of gaits in the motion. framework of geometric mechanics. Correlations between Relative to traditional two-wheel drive systems, the configurational variations and trajectory parameters are waveboard possesses greater maneuverability and potentially investigated, and numerically reconstructed forward motion higher efficiency at the expense of stability. Modeling insight displacements are compared with experimental data. could be used by designers to optimize kinematic parameters of

1 Copyright © 2016 by ASME WAVEBOARD MODELING 푳ퟏ The waveboard consists of two platforms coupled with a 푌 풎 torsional spring and constrained to rotate along the same axis. 풎ퟏ ퟐ 휃 Each platform rests upon a caster wheel that is inclined relative 푦 푍 to the vertical axis. A schematic of the waveboard, illustrating 푳ퟐ 휶 푳ퟐ 휶 휙푏 휙푓 relevant model parameters, is presented in Fig. 1. Here, 푚1 represents the mass of the entire system, 푚2 half the mass of the rider, 퐿1 the separation between the center of the waveboard and each wheel, 퐿2 the height of idealized mass 푚2 above each platform, and 퐽 the moment of inertia of the system about the vertical axis coincident with the board center (not shown). 푋 To obtain a dynamical model of the waveboard, we first 푍 휓 derive the equations of motion by solving the Euler-Lagrange 휓푏 푓 equations in generalized coordinates, as demonstrated by Kinugasa et al. [8]. We take advantage of the trivial fiber bundle structure of the configuration space and decompose it into a base FIGURE 1. DIAGRAMS OF WAVEBOARD MODEL, space, which describes internal shape changes of the system, and ILLUSTRATING SIDE VIEW (TOP) AND TOP VIEW a fiber space, which describes position and orientation with (BOTTOM). ANNOTATED MODEL PARAMETERS respect to an inertial frame. Inherent symmetries render the INCLUDE CONSTANTS (GREEN), JOINT VARIABLES Lagrangian and nonholonomic constraints invariant to global (RED), AND AN INERTIAL FRAME (VIOLET) position and orientation, allowing us to obtain a simplified and reduced form of the equations of motion in body coordinates. and orientation variables 푧, 푥, and 휃 of the waveboard. 푀, the The fiber bundle structure allows us to study the effects of base space, represents the internal degrees of freedom of the internal shape changes on motion in the inertial frame through a waveboard, comprising of roll angles 휙푓 and 휙푏 of the front and first order differential equation known as the reconstruction back platforms respectively, measured about the z-axis of the equation. This enables us to intuitively visualize kinematic body frame relative to the x-z plane. A configuration variable can contributions of various periodic internal shape changes then be expressed as 푞 = (푔, 푟) ∈ 푄 where 푔 ∈ 퐺 and 푟 ∈ 푀. (gaits) for further analysis. Similarly, a configuration velocity can then be written as 푞̇ = (푔̇, 푟̇), where 푞̇ represents the configuration velocity. Since the Model Assumptions roll angles 휙푓 and 휙푏 are small, the potential energy of the The following assumptions are made in order to simplify system remains fairly constant. This allows us to define the model derivation, and are similar to those in [8]. Lagrangian as the total kinetic energy of the system in the form a. Roll angles of the front and back platforms are small, permitting the following small angle approximations. 1 퐿 = 푞̇ 푇푀푞̇, (4) 2 sin(휙 ) ≈ 휙 (1) 푖 푖 where 푀 is the mass matrix. The Lagrangian of the waveboard cos(휙푖) ≈ 1 (2) [8] can be expressed explicitly as where 푖 = 푓, 푏 for the front and back platforms. 1 1 1 푑 2 퐿 = 푚 (푧̇2 + 푥̇ 2) + 퐽휃̇ 2 + 푚 [( [푧 + 퐿 cos(휃) − 퐿 휙 sin(휃)]) + b. The front and back roll angles alone span the entire 2 1 2 2 2 푑푡 1 2 푓 shape space of the board. Wheel dynamics are ignored, 푑 2 푑 2 ( [푥 + 퐿 sin(휃) + 퐿 휙 cos(휃)]) + ( [푧 − 퐿 cos(휃) − 퐿 휙 sin(휃)]) + 푑푡 1 2 푓 푑푡 1 2 푏 and the following holonomic constraints map platform 2 ( 푑 [푥 − 퐿 sin(휃) + 퐿 휙 cos(휃)]) ]. (5) roll angles surjectively onto wheel yaw angles by the 푑푡 1 2 푏 relation Nonholonomic Constraints tan(휓푖) = tan(훼) sin(휙푖), (3) Two nonholonomic constraints act upon the waveboard, namely, a no- condition on each of the two caster [8]. where 푖 = 푓, 푏, and 훼 is the constant angle of wheel These constraints are expressed in Pfaffian form as follows. inclination. c. Dissipative elements within the system are neglected. 푥̇ 푦̇

sin (휃 + 휓푓) −cos (휃 + 휓푓) −푙1cos (휓푓) 0 0 휔(푞) 푞̇ = [ ] 휃̇ = 0 (6) Lagrangian Mechanics sin (휃 + 휓푏) −cos (휃 + 휓푏) 푙1 cos(휓푏) 0 0 휙̇ 푓 The configuration of the waveboard, 푄, is a trivial principal [휙̇ 푏] fiber bundle. 푄 = 퐺 × 푀, where 퐺, the fiber space with a Lie group structure, represents the position of the waveboard with The waveboard possesses fewer nonholonomic constraints respect to an inertial coordinate frame, comprising of position than fiber variables, and is therefore a mixed mechanical system

2 Copyright © 2016 by ASME [1, 3]. In other words, since the number of constraints is not 푚1 + 2푚2 0 −퐿2푚2(휙푓 + 휙푏) sufficient to specify the full motion of the entire position space, 퐼 = [ 0 푚1 + 2푚2 0 ] (13) 2 2 2 2 the system is also governed by Lagrangian mechanics. The −퐿2푚2(휙푓 + 휙푏) 0 퐽 + 푚2 (2퐿1 + 퐿2 (휙푓 + 휙푏 )) dynamic equations of motion of this type of system can be expressed in the form Note that the mass matrix varies with configuration, whose space is spanned by base variables 휙푓 and 휙푏. Thus, the 푑 휕퐿 휕퐿 푗 waveboard is similar to the variable inertia snakeboard defined ( ) − + 휆푗휔푖 = 휏푖, (7) 푑푡 휕푞̇푖 휕푞푖 in [1, 3], whose mass matrix is also expressed as a function of base variables. where 푖 = 1, 2, … , 5 for each dimension of the configuration Similarly, by substituting Eq. (8) into Eq. (6), we can 푗 space, 푗 = 1, 2 for each nonholonomic constraint, 휔푖 is the compute the nonholonomic constraints in body coordinates as th 푇 (푗, 푖) component of 휔, 휆 = [휆1 휆2] is the set of Lagrange 푇 multipliers, and 휏 = [휏1 휏2] is the set of generalized forces. 휉 휔(푟) [ ] = 휔 (푟)휉 + 휔 (푟)푟̇ = 0. (14) 푟̇ 휉 푟 Body Representation For configuration spaces with a Lie group structure, we can For the waveboard, 휔휉 is define an action Φ푔 on the configuration manifold and a lifted sin(휙푓) tan(훼) 1 퐿 action 푇 Φ on its tangent space 푇 푄. The body velocity 휉, − − 1 푔 푔 푞 2 2 2 2 2 2 √sin (휙푓) tan (훼)+1 √sin (휙푓) tan (훼)+1 √sin (휙푓) tan (훼)+1 which is an element of the Lie Algebra, is expressed as 휔휉 = (15) sin(휙푏) tan(훼) 1 퐿1 2 2 − 2 2 2 2 [√sin (휙푏) tan (훼)+1 √sin (휙푏) tan (훼)+1 √sin (휙푏) tan (훼)+1 ] 휉푧 푥 −1 2×2 휉 = [휉 ] = 푇푔퐿푔 푔̇, (8) and 휔푟 = ퟎ . 휉휃 The reduced equations of motion then become where 퐿푔 represents the left action on the fiber variables and 푑 휕푙 휕푙 푇 퐿 represents the left lifted action. In terms of the system ( ) + 푎푑∗ + 휆푇 휔̅ = 0 (16) 푔 푔 푑푡 휕휉 휉 휕휉 model, this is simply the velocity of the system represented in a body-fixed frame attached to the center of the waveboard. 푑 휕푙 휕푙 ( ) − = 휏푟, (17) The system dynamics are symmetric with respect to the fiber 푑푡 휕푟̇푗 휕푟푗 푗 variables, a fact we can easily exploit using our principal bundle 푟 structure to derive a reduced set of dynamics. This property where 푗 = 1,2, 휏푗 is the set of base forcing functions [10], and ∗ applies to both the Lagrangian and the nonholonomic 푎푑휉 is the dual adjoint operator on the Lie algebra. constraints, i.e. Kinematic and Dynamic Reconstruction 퐿(푞, 푞̇) = 퐿(Φ푔푞, 푇푔Φ푔푞̇) (9) The waveboard is a mixed mechanical system in which the 휔(푞)푞̇ = 휔(Φ푔푞)푇푔Φ푔푞̇ (10) nonholonomic constraints alone are not sufficient to completely specify the system’s fiber velocity for a given base velocity. We Utilizing this property, the dependence of the Lagrangian can derive a first-order reconstruction equation [1, 3] of the form and nonholonomic constraints on the fiber variables is eliminated by expressing the dynamics of the system at the Lie 휉 = −퐀(푟)푟̇ + Γ(푟)푝푇, (18) group identity [9]. The reduced Lagrangian 푙, computed by substituting Eq. (8) into Eq. (9), has the form where 퐀(푟) is the local form of the mixed mechanical connection and Γ(푟) is an implicit function of 푟. This equation naturally 1 휉 follows the principal bundle structure of the system wherein 푙(휉, 푟̇) = [휉푇 푟̇푇] 푀̃ [ ], (11) 2 푟̇ trajectories in the base are lifted to trajectories in the fiber via 퐀(푟). where 푀̃ is the reduced mass matrix Note that Eq. (18) presents the body velocity as a sum of two separate components. The first term is the kinematic 퐼(푟) 퐼(푟) 퐴(푟) contribution, which arises purely from joint movement. The 푀̃ = [ ], (12) 퐴푇(푟) 퐼푇(푟) 푚(푟) second term is a dynamic or drift component, where 푝 is the generalized nonholonomic momentum defined as in which 퐴 is the local form of the mechanical connection and 퐼 휕푙 is the local form of the locked inertia tensor [1, 3], which is 푝 = Ω̅푇 = (휉푇퐼푇 + 푟̇(퐼퐴)푇) Ω̅푇, (19) expressed as follows for the waveboard. 휕휉

3 Copyright © 2016 by ASME TABLE 1. ELEMENTS OF 퐀(풓) MATRIX

2 2 2 2 2 2 2 2 2 2 2 퐷퐴 = tan (훼) ((sin (휙푓) + sin (휙푏)) (0.25퐽 + 퐿1 (0.25푚1 + 푚2) + 퐿2 푚2(0.25휙푓 + 0.25휙푏 )) − 0.5 sin(휙푓) sin (휙푏) (퐽 − 퐿1 푚1 + 퐿2 푚2(휙푓 + 휙푏 ))) 2 + 퐿1퐿2푚2tan (훼)(휙푓 + 휙푏)(sin(휙푏) − sin(휙푓)) + 퐿1 (푚1 + 2푚2) 2 2 퐴11 = 퐿1 퐿2푚2 tan(훼) sin(휙푓) 퐴12 = 퐿1 퐿2푚2 tan(훼) sin(휙푏) 2 2 2 2 퐴21 = 0.5퐿1 퐿2푚2 tan (훼) sin(휙푓) (sin(휙푓) + sin(휙푏)) 퐴22 = 0.5퐿1 퐿2푚2 tan (훼) sin(휙푏) (sin(휙푓) + sin(휙푏)) 2 2 2 퐴31 = 0.5퐿1 퐿2푚2 tan (훼) sin(휙푓) (sin(휙푓) − sin(휙푏)) 퐴32 = 0.5퐿1퐿2푚2 tan (훼) sin(휙푓) (sin(휙푓) − sin(휙푏))

TABLE 2. ELEMENTS OF 횪(풓) MATRIX

2 2 2 2 2 2 2 2 2 2 2 퐷훤 = tan (훼) ((sin (휙푓) + sin (휙푏)) (퐽 + 퐿1 (푚1 + 4푚2) + 퐿2 푚2(휙푓 + 휙푏 )) − 2 sin(휙푓) sin(휙푏) (퐽 − 퐿1 푚1 + 퐿2 푚2(휙푓 + 휙푏 ))) 2 + 4퐿1퐿2푚2 tan(훼) (휙푓 + 휙푏)(sin(휙푏) − sin(휙푓)) + 4퐿1 (푚1 + 2푚2) Γ = 2퐿 tan(훼) sin 휙 − sin(휙 ) Γ = 퐿 tan2(훼) sin2 휙 − sin2(휙 ) 2 2 1 1 ( ( 푓) 푏 ) 2 1 ( ( 푓) 푏 ) Γ3 = tan (훼) (sin(휙푓) − sin(휙푏))

푇 where Ω̅ is the null space of 휔휉. In general, the system's variables, this first order differential equation is expressed in the momentum components evolve in a way that satisfies the following form. nonholonomic constraints. 푇 푇 From Eq. (14) and (19), we can derive the reconstruction 푝̇ = 푟̇ 휎푟̇푟̇ 푟̇ + 푟̇ 휎푟̇푝푝, (23) equation to be where 휎푟̇푟̇ and 휎푟̇푝 are matrices that depend only on 푟 [11]. 휔 −1 푘×푘 −1 휉 ퟎ 휔휉 휔푟 휉 = [ ] [ ] − [ ] [ ] 푟̇. (20) Ω̅ 퐼 (푝푇)푙−푘 Ω̅ 퐼 Ω̅ 퐼 퐴 Height Functions Having obtained 퐀(푟) and Γ(푟), we can integrate each row The reader is referred to [1, 3] for a proof. For the of Eq. (18) with respect to time to compute the body velocity waveboard, 퐀(푟) and Γ(푟) are expressed in the following forms. integral of the waveboard [12]. From [1, 3], we know that this integral is equal to the sum of two integrals: the geometric phase 퐺퐸푂 퐷푌푁 퐴11 퐴12 shift 퐼 and the dynamic phase shift 퐼 . In particular, the 1 퐀(푟) = [퐴21 퐴22] (21) geometric phase shift is expressed as 퐷퐴 퐴31 퐴32 푡 푟(푡 ) 퐼퐺퐸푂 = ∫ 1 −퐀(푟)푟̇ 푑푡 = ∮ 1 −퐀(푟) 푑푟. (24) 푡0 푟(푡0) Γ1 1 Γ(푟) = [Γ2] (22) 퐷 Each row of the integrand in the rightmost expression is a Γ Γ 3 one-form, hence the line integral can be converted to a volume

integral as follows. Symbolic expressions of the subcomponents are presented in Table 1 and Table 2. 퐺퐸푂 ( ) The generalized nonholonomic momentum variables are 퐼 = ∬Φ 푐푢푟푙 퐀 푟 푑푟, (25) governed by a first order differential equation. Specifically, for systems such as the waveboard in which the number of where Φ is the region enclosed by the gait 휙 in the base space. nonholonomic constraints are one less than the number of fiber The integrand of the above equation is known as the height

(a) (b) (c)

FIGURE 2. HEIGHT MAPS OF WAVEBOARD FOR (A) FORWARD MOTION, (B) LATERAL MOTION, AND (C) ROTATION ABOUT THE VERTICAL AXIS.

4 Copyright © 2016 by ASME function [1, 3]. For a two-dimensional base space, the height function for each fiber direction is

푖 푖 1 2 휕푨2 휕푨1 퐹푖(푟 , 푟 ) = − , (26) 휕푟1 휕푟2 where 푖 = 1,2,3 for each fiber variable. We use the estimated parameters in Table 3, which correspond with our physical 4 Cameras system, to calculate values of the height functions for 휉푧, 휉푥, and 휉휃, which are plotted in Fig. 2. The height functions allow us to visualize the geometric phase shift corresponding to various gaits. Since this base space is two-dimensional, we can visualize geometric phase shift as volume beneath the graph of the height functions within a gait. In turn, gaits that enclose zero area in the base space, as in Fig. 5(a, b, c, and e), are not associated with any volume, hence geometric phase shift is zero for these gaits. We note that the 휉푧 height function plotted in Fig. 2(a) is antisymmetric about 휙푓 = 0 and 휙푏 = 0. Therefore, any gait that is symmetric about either axis encloses equal areas in regions with opposite sign, having no net volume, and thus zero geometric phase shift in the z-direction. Similarly, the 휉푥 and 휉휃 height functions, plotted in Fig. 2(b) and 2(c), are antisymmetric about 휙푓 = 휙푏 and 휙푓 = −휙푏, respectively. Thus, any gait symmetric about these axes encloses equal areas in regions with opposite sign, having zero geometric phase shift in these fiber directions. 풚 TABLE 3. MODEL PARAMETERS 풛

Symbol Description Value

푚1 Mass of the entire system 71 kg 풙

푚2 Half mass of rider 35 kg 퐿1 Separation between board center and each wheel 0.095 m

퐿2 Height of mass 푚2 above each platform 0.100 m 퐽 Mass moment of inertia of system about vertical 0.64 kg m2 axis 훼 Angle of inclination of caster wheel axis relative 70° to horizontal axis

EXPERIMENTAL METHODOLOGY Gait analysis of physical motions of a waveboard require state identification throughout the duration of the gait. This was accomplished through reconstruction of marker trajectory data obtained using optical tracking techniques.

Optical Tracking of Waveboard State

Computer vision techniques were used to track the state of the system at frequent time intervals throughout the course of FIGURE 3. PHOTOGRAPHS OF EXPERIMENTAL each gait. Four cameras mounted to the ceiling at various APPARATUS FOR OPTICAL TRACKING OF WAVEBOARD positions and orientations captured the motion of markers fixed STATE. TOP: OVERALL SETUP, ILLUSTRATING GLOBAL to various parts of the board. Optical tracking software was used COORDINATE SYSTEM (YELLOW) AND CAMERA to reconstruct the three-dimensional position of each marker at MOUNTING LOCATIONS (RED). LOWER LEFT: ONE OF 120 frames per second. A photograph of the overall setup is FOUR CAMERAS USED FOR OPTICAL TRACKING. LOWER presented in Fig. 3. RIGHT: CALIBRATION DEVICE USED TO DEFINE ORIGIN AND ORIENTATION OF GLOBAL COORDINATE FRAME.

5 Copyright © 2016 by ASME Four reflective markers were adhered to the waveboard with adhesive foam. Two markers on each platform were used to reconstruct the position and handedness of both platforms. Marker orientation is presented in Fig. 4. The position, orientation, and configuration of the waveboard throughout each gait were obtained from processed optical tracking data.

Gait Generation Various gaits were performed on the waveboard by a rider within the field of vision of the cameras. Some types of gaits for sustained forward motion are illustrated in Fig. 5. Note that linear base space motions enclose zero area, having no kinematic contributions, and are thus associated with purely dynamic gaits. Amplitude of oscillation was varied for forward motions where neither leg was idle, while frequency of oscillation was varied for forward motions with an idle leg. A total of 76 gaits were performed on the waveboard. Reflective Data Processing Post processing of optical tracking data comprised of marker Markers identification, state reconstruction, curve fitting, and data visualization. First, markers were manually identified based on their relative positions within the global coordinate frame. FIGURE 4. PHOTOGRAPHS ILLUSTRATING MARKER Waveboard configuration was determined based on the relative PLACEMENT ON THE WAVEBOARD. MARKERS WERE positions of the markers. Measurements of marker placement FIXED TO THE BOARD USING ADHESIVE FOAM PADS were coupled with these data to calculate the relative position of (TOP). the center of the board. Global orientation of the board was calculated by vector dot products between axes of global and Curve fitting of the time variation of base variables was used body coordinate frames. Finally, absolute positions of the to precisely quantify gait parameters and reduce noise. All gaits markers in the global frame were used to determine the position resulting in sustained forward motion were assumed to have of the center of the board in global coordinates. Thus, full state sinusoidal inputs of the form reconstruction of the waveboard was achieved from marker tracking data. 휙푖 = 퐴푖 sin(휔푖푡 − Δi) + 퐵푖, (27)

(a) 푏푎푐푘 푖푑푙푒 (b) 푓푟표푛푡 푖푑푙푒 (c) 푖푛 푝ℎ푎푠푒 (d) 휋/2 표푢푡 표푓 푝ℎ푎푠푒 (e) 휋 표푢푡 표푓 푝ℎ푎푠푒

FIGURE 5. DIAGRAMS ILLUSTRATING GAITS PERFORMED ON THE WAVEBOARD. FOR EACH GAIT, BOARD CONFIGURATIONS (TOP) AND BASE SPACE MOTIONS (BOTTOM) ARE ILLUSTRATED. NOTE THAT STRAIGHT LINES ARE HIGH ASPECT RATIO ELLIPSES, AND THAT BASE SPACE MOTIONS ARE COUNTERCLOCKWISE SINCE REAR LEG MOTION TRAILS FRONT LEG MOTION.

6 Copyright © 2016 by ASME where 푖 = 푓, 푏 for the front and back platforms, and 푡 is time. RESULTS Nonlinear least-squares optimization techniques were used to Plots of relevant parameters for each type of gait that was solve for values of constants 퐴푖, 휔푖, Δ푖, and 퐵푖, which are performed are qualitatively analyzed. Experimentally obtained oscillation amplitude, oscillation frequency, phase offset, and base space motions are superimposed on the height maps roll angle offset bias, respectively. The phase lag Δ0 of back presented in Fig. 2 to determine the geometric phase shift for platform oscillation relative to front platform oscillation is various types of gaits. Equation (19) was used to compute the computed as generalized nonholonomic momentum for the duration of motion, and Eq. (8) and (18) were used to compute the fiber Δ0 = Δ푏 − Δ푓. (28) velocity 푔̇ in the global frame. The global velocity was then integrated to compute displacement in the global frame, resulting By the definition of a gait as a periodic motion, the in an approximate measure of the translational component of the oscillation frequencies of the front and back platforms should be displacement. identical and are thus averaged in presentation of fitted A traditional gait for forward motion on the waveboard is parameters. presented in Fig. 6. Forward velocity remains fairly constant. We immediately observe from the shape of the ellipse in Fig. 6(a) that the motion is more out of phase than in phase, due to the downward slope of the major axis of the ellipse. A phase lag of

(a) (b) (c) (d)

(e) (f) (g)

FIGURE 6. TRADITIONAL GAIT FOR SUSTAINED FORWARD MOTION OF THE WAVEBOARD. TOP ROW: ANIMATION SEQUENCES. MIDDLE ROW: PLOTS ILLUSTRATING (A) BASE SPACE OF FITTED DATA, AND TIME VARIATIONS OF (B) ROLL ANGLES, (C) BOARD ORIENTATION STATES, AND (D) BOARD CENTER DISPLACEMENT. BOTTOM ROW: BASE SPACE OVERLAID ON HEIGHT FUNCTIONS FOR (E) FORWARD MOTION, (F) LATERAL MOTION, AND (G) ROTATION ABOUT THE VERTICAL AXIS.

7 Copyright © 2016 by ASME (a) (b) (c) (d)

FIGURE 7. ALTERNATIVE GAIT FOR SUSTAINED FORWARD MOTION OF THE WAVEBOARD, IN WHICH FRONT AND REAR PLATFORMS OSCILLATE ENTIRELY IN PHASE. TOP ROW: ANIMATION SEQUENCES. BOTTOM ROW: PLOTS ILLUSTRATING (A) BASE SPACE OF FITTED DATA, AND TIME VARIATIONS OF (B) ROLL ANGLES, (C) BOARD ORIENTATION STATES, AND (D) BOARD CENTER DISPLACEMENT.

1.85 rad was calculated in rear platform motion relative to front contribute significantly to this gait, implying a purely dynamic platform motion by Eq. (28). Although this type of motion gait. Once again, forward velocity remains fairly constant. 푧 encloses a finite area in the base space, inspection of the 휉 Actual phase lag Δ0 of fitted data, as defined in Eq. (28), was height map of Fig. 6(e) reveals that this type of motion is approximately 0.0562 rad for this gait. associated with negligible kinematic contribution (퐼퐺퐸푂 ≈ 0). A comparison between experimentally obtained and We conclude that this traditional type of gait for sustained reconstructed displacements in the forward direction in the forward motion on the waveboard is purely dynamic. This global frame is presented in Fig. 8. Displacements were experimental evidence supports the original hypothesis made by computed through sequential application of Eq. (19), (8), and Shammas et al. [1] that this type of gait is purely dynamic. (18) for each gait. Reconstructed global displacements closely An alternative gait for forward motion, in which front and match the experimental data for short time intervals, supporting rear platform oscillations are entirely in phase, is presented in the validity of our model. Differences could be due to uncertainty Fig. 7. As expected, we obtain an ellipse with an upward sloping in model parameters (especially mass and moment of inertia) and major axis and a high aspect ratio in the base space, which model assumptions (especially regarding friction). indicates negligible phase lag between front and rear platform Accumulation of error with time is attributed to amplification of motions. The geometric phase space represented by the small net velocity error upon integration. Relatively higher error levels volume enclosed underneath the 휉푧 height function does not associated with reconstructing the alternative gait are associated

FIGURE 8. COMPARISON BETWEEN COMPUTED AND EXPERIMENTAL DATA FOR GLOBAL DISPLACEMENT IN FORWARD DIRECTION FOR TRADITIONAL GAIT (LEFT) AND ALTERNATIVE GAIT (RIGHT).

8 Copyright © 2016 by ASME (a) (b) (c) (d)

FIGURE 9. GAIT FOR COUNTERCLOCKWISE TURNING MOTION OF THE WAVEBOARD AT LOW SPEED. TOP ROW: ANIMATION SEQUENCES. BOTTOM ROW: PLOTS ILLUSTRATING (A) BASE SPACE OF ORIGINAL DATA, AND TIME VARIATIONS OF (B) ROLL ANGLES, (C) BOARD ORIENTATION STATES, AND (D) BOARD CENTER DISPLACEMENT. with larger roll angles violating the aforementioned small angle reconstruction equation. Differences could be used to tune model assumptions to a greater extent, which is evident upon parameters in a future investigation. comparison of Fig. 6(b) and 7(b). A future study would involve computing the momentum A gait for sustained counterclockwise turning motion is using the momentum evolution equation presented in Eq. (23), presented in Fig. 9. Since the time variations of roll angles do not as well as body velocities and body velocity integrals using the follow the form of Eq. (27), the original data, rather than fitted obtained generalized momentum. Through this framework, data, was used to plot the base space in Fig. 9(a). Although the comparisons of output parameters between model and direction of motion in the base space is not specified, it can be experiment corresponding to a given gait could be quantitatively assumed to be counterclockwise, since rear platform motion analyzed. This would allow further experimental evaluation of trails front platform motion by virtue of caster wheel incline the system model and its underlying assumptions, ultimately associated with board directionality. Inspection of the height informing design and control of highly maneuverable robots. maps of Fig. 2 indicates that a counterclockwise motion in the upper right quadrant of the base space results in a significant ACKNOWLEDGMENTS positive kinematic contribution towards forward and angular The authors thank Jin Dai for his assistance operating the displacement, but no significant kinematic contribution in the OptiTrack Motive optical tracking system and Elie Shammas for lateral body direction. We can conclude that this type of gait is his insight towards modeling mixed mechanical systems. not purely dynamic, and that turning motions depend directly on the rider’s motions and potentially any momentum acquired by REFERENCES the system in order to both rotate and maintain forward velocity. [1] Shammas, E.A., Choset, H. and Rizzi, A.A., 2007. Towards a unified approach to motion planning for dynamic CONCLUSION underactuated mechanical systems with non-holonomic In review, height functions corresponding to forward, constraints. The International Journal of Robotics lateral, and rotary motion were obtained. Experimental gait Research, 26(10), pp.1075-1124. reconstruction and curve fitting of base spaces to ellipses were [2] Ostrowski, J., Lewis, A., Murray, R. and Burdick, J., 1994, accomplished for common types of gaits. By superimposing base May. Nonholonomic mechanics and locomotion: the space trajectories of experimental gaits onto height functions, we snakeboard example. In Robotics and Automation, 1994. demonstrated that traditional forward motion on the waveboard Proceedings., 1994 IEEE International Conference on (pp. is purely dynamic, and sustained turning motion contains a 2391-2397). IEEE. kinematic contribution. [3] Shammas, E.A., 2006. Generalized motion planning for Forward displacement in the global frame was computed for underactuated mechanical systems (Doctoral dissertation, two types of gaits. Similarities between reconstructed and Carnegie Mellon University). experimental displacements support our model of the

9 Copyright © 2016 by ASME [4] Shammas, E. and De Oliveira, M., 2012. Motion planning [9] Marsden, J.E. and Ratiu, T., 2013. Introduction to for the Snakeboard. The International Journal of Robotics mechanics and symmetry: a basic exposition of classical Research, 31(7), pp. 872-885. mechanical systems (Vol. 17). Springer Science & Business [5] Dear, T., Hatton, R.L., Travers, M. and Choset, H., 2013, Media. October. Snakeboard motion planning with local trajectory [10] Bloch, A., Baillieul, J., Crouch, P., Marsden, J.E., information. In ASME 2013 Dynamic Systems and Control Krishnaprasad, P.S., Murray, R.M. and Zenkov, D., Conference (pp. V002T33A002-V002T33A002). American 2003. Nonholonomic mechanics and control (Vol. 24). New Society of Mechanical Engineers. York: Springer. [6] Dear, T., Kelly, S.D., Travers, M. and Choset, H., 2015, [11] Ostrowski, J.P., 1996. The mechanics and control of May. Snakeboard motion planning with viscous friction and undulatory robotic locomotion (Doctoral dissertation, skidding. In Robotics and Automation (ICRA), 2015 IEEE California Institute of Technology). International Conference on (pp. 670-675). IEEE. [12] Hatton, R.L. and Choset, H., 2011. Geometric motion [7] Asnafi, A.R. and Mahzoon, M., 2007. Some flower-like planning: The local connection, Stokes’ theorem, and the gaits in the snakeboard’s locomotion. Nonlinear importance of coordinate choice. The International Journal Dynamics, 48(1-2), pp. 77-89. of Robotics Research, 30(8), pp. 988-1014. [8] Kinugasa, K., Ishikawa, M., Sugimoto, Y. and Osuka, K., 2013, September. Modeling and Control of Casterboard Robot. In NOLCOS (pp. 785-790).

10 Copyright © 2016 by ASME