Abstract

Bikebot (i.e., bicycle-based robot) is a class of underactuated balance robotic systems that require simultaneous trajectory tracking and balance control tasks. We present a tracking and balance control design of an autonomous bikebot. The external-internal convertible structure of the bikebot dynamics is used to design a causal feedback control to achieve both the tracking and balance tasks. A balance equilibrium manifold is used to define and capture the platform balance profiles and coupled interaction with the trajectory tracking performance. To achieve fully autonomous navigation, a gyrobalancer actuation is integrated with the steering and velocity control for stationary platform balance and stationary-moving switching. Stability and convergence analyses are presented to guarantee the control performance. Extensive experiments are presented to validate and demonstrate the autonomous control design. We also compare the autonomous control performance with human riding experiments and similar action strategies are found between them.

1 Introduction

Bicycle-based robot, here called bikebot, is a representative example of underactuated balance robot. Motion control of underactuated balance robots includes simultaneous trajectory tracking and platform balance. Considering planar motion, a bikebot has three degrees-of-freedom (DOFs), that is, the planar position and the roll motion of the body frame, while the available two control inputs include steering and velocity actuation. One major challenge of control of underactuated balance robots lies in the nonminimum phase, unstable internal subsystem, and its coupled dynamics with trajectory tracking of the external subsystem [1].

Modeling and control of single-track bikebots attracts extensive attention in past decades [26] and several autonomous bikebots have been developed [710]. With limited steering control capability, trajectory tracking and platform balancing are two competing tasks. To deal with the coupled dynamics, an external and internal convertible (EIC) structure of the bikebot dynamics was proposed in Refs. [4] and [6]. Under the EIC-based control, the target profiles of the internal subsystem are captured by the balance equilibrium manifold (BEM). The trajectory tracking control is first designed for the external subsystem, and the designed tracking control input is updated by enforcing the roll motion onto the BEM [11]. The work in Ref. [12] presented the calculation of the feasible motorcycle motion trajectory for aggressive, high-performance maneuvers. The motorcycle dynamics models were used to estimate the maximum velocity profiles for high-performance maneuvers. In Refs. [13] and [14], dynamics model-based motion control was developed for motorcycle aggressive maneuvers. Tire-road interactions play an important role for the motion planning and velocity profile estimation for aggressive maneuvers.

When the bikebot stays stationary or moves at a low speed, the steering-induced balance torque is limited, and it becomes extremely difficult to balance the platform [15,16]. To assist the balance control, various actuation devices have been added and installed on the bicycle platform. Those devices include gyroscopic balancer [3,11,17], reaction wheel [9,18,19], inverted pendulum balancer [20,21], and movable counterweight [5,22], etc. Most of the above-mentioned control designs focus on the platform balance while the trajectory tracking is not among the main tasks. The work in Ref. [19] uses the interconnection and damping assignment passivity-based control method for an autonomous bikebot with an assistive flywheel. In Ref. [23], a backstepping technique and an optimal control method were used for the tracking and balance control of external and internal subsystems, respectively. Simulation results were included to demonstrate the autonomous bicycles.

In this paper, we present a motion and balance control systems design for the autonomous bikebot. The planar motion of the bikebot is built on the kinematics model (with the nonholonomic constraint), while the roll motion is based on the dynamics model. The focus of the control design covers both the bikebot navigation for given trajectories and stationary or low-speed balance tasks. For bikebot navigation, steering and velocity control is the main actuation, while at stationary, a gyrobalancer is primarily used to provide balance actuation. Instead of regulating roll motion to one (upright) position, we present an energy shaping-based orbital stabilization approach for stationary balance control using the gyrobalancer. The main advantage of using the energy-shaping technique [24,25] lies in reduction of the magnitude of the needed gyroscopic balance torque and also relaxed gyrobalancer design constraints [17]. A coordination between the steering/velocity and gyrobalancer controls is also presented. The trajectory tracking control design is mainly built on the EIC structure of the bikebot dynamics and the stability and convergence analyses are presented. Extensive experiments are conducted to demonstrate the performance of the integrated control systems. Although the presented work mainly focuses on the autonomous bikebot, it is of interests to compare the motion control performance by the autonomous controller with the human rider control (e.g., Refs. [26] and [27]). Therefore, we include and discuss experimental comparison of the autonomous bikebot with the human riding performance.

The main contribution of this work lies in the extended EIC-based trajectory tracking and balance control of autonomous bikebots with experimental demonstration. To our best knowledge, few experimental demonstrations have been reported for the control of single-track mobile robots with only steering and velocity control. The experiments in Refs. [7] and [8] showed only the platform balance and trajectory tracking was not among the control tasks. The tracking experiments in Refs. [1822] required assistive devices. Moreover, the comparison between the autonomous design and the rider control confirms similar strategies with the used BEM concept. The autonomous controller design of the bikebot navigation complements the human rider control strategies that were studied in Refs. [2629]. Compared with the previous conference presentation [11,30,31], this work presents a more comprehensive design of bikebot system for both trajectory tracking and stationary balance control. We present a systemic way for stationary control and stationary-moving switching control. Convergence and stability are also guaranteed with additional experiments.

The rest of the paper is organized as follows. We present the bikebot-rider dynamics and introduce the EIC-based control in Sec. 2. Section 3 presents the gyrobalancer-enhanced tracking control, stationary balance, and stationary-to-moving switching. Experimental results and discussion are presented in Sec. 4. Finally, we summarize the concluding remarks in Sec. 5.

2 Bikebot-Rider Dynamics and Control

2.1 System Dynamics.

Figure 1(a) shows the prototype of the autonomous bikebot, and Fig. 1(b) shows the human riding experiment setup. Although the main focus of this work is riderless bikebot control, we present a bikebot-rider dynamic model for human riding performance comparison purpose. Figure 1(c) shows the kinematic configuration of the bikebot and a rider's trunk. When human subjects riding the bikebot, their hands hold the handlebar, and the pitch motion of the human trunk is negligible. Therefore, we only consider the roll motion of the rider trunk.

Fig. 1
(a) The Rutgers bikebot system, (b) human riding experiments with wearable IMUs, and (c) a kinematic schematic of the bikebot-rider systems. The rider trunk is modeled as an inverted pendulum mounted at seat position S.
Fig. 1
(a) The Rutgers bikebot system, (b) human riding experiments with wearable IMUs, and (c) a kinematic schematic of the bikebot-rider systems. The rider trunk is modeled as an inverted pendulum mounted at seat position S.
Close modal

A ground-fixed frame N(X,Y,Z) (with the Z-axis downward) and a bikebot body frame B(x,y,z) are used. The roll and yaw angles of the bikebot are denoted as φb and ψ, respectively. We denote the front and rear wheel contact points as C1 and C2, respectively. The origin of B is located at C2, and frame B is obtained from N first by rotating around the Z-axis by ψ and then by rotating around the X-axis by φb. The human trunk is modeled as a point mass H on a massless rod that is pinned at seat position S. The distance from H to S is denoted as hh, and the trunk roll angle is denoted as φh. The mass center G of the bikebot and point S are located at [lb0hb]T and [ls0hs]T in B, respectively. The bikebot wheelbase length, caster angle, bikebot and human trunk mass are denoted as l, ε, mb, and mh, respectively. lt is the steering trail. The mass moment of inertia of the bikebot along the x-axis passing through G is denoted as Jb.

The bikebot's planar motion is based on the kinematic model, and the bikebot-rider roll motion control is built on the dynamic model. Denoting the velocity of C2 as vr and with the nonholonomic constraint at C2, we calculate the yaw rate as [27]
(1)
where ϕ is the steering angle and cε=cosε(sε=sinε) for ε and other angles. The ground is assumed to be flat and the pitch motion of the platform is neglected. Denoting the planar position of C2 as rC2=[XY]T in N, we obtain the kinematics model of the bikebot motion as
(2)

where rC2(m) denotes the m-th order derivative of rC2,m, and the same notation is used for other variables, input u=[uruψ]T,ur=v¨r and uψ=ψ¨. The reason for taking the third derivative in Eq. (2) is to incorporate balance torque by the yaw angular acceleration.

Let q=[φbφh]T and the equations of roll motion are obtained as [32]
(3)
where τ=[0τh]T and τh is the torque that is applied by the rider along the roll motion direction; see Fig. 1(c). Matrices M(q),C(q,q˙), and G(q) denote the moment of inertia, Coriolis and gravitational effects, respectively. B(q) is the input matrix. The explicit form of these matrices are given in Eq. (4) on the top of the next page with Mh=mbhb+mhhs,Ja=Jb+mbhb2+mh(hs2+hh2)+2mhhshhcφh,Jm=mbhb2+mhhs2, and g =9.8 m/s2 is the gravitational constant.
(4)
Letting u=Rψ1(Ψ+uN) and uN2 as the controlled jerk, we rewrite Eqs. (2) and (3) into the following EIC form
(5a)
(5b)

Remark 1. The inputur=v¨ris the controlled linear jerk (i.e., the derivative of accelerationv˙r). In experimental implementation, the designed input ur is integrated twice to obtain the velocity vr that is the control command for the driving motor. The other inputuψ=ψ¨is the controlled yaw acceleration of the bikebot. The inputuψis first integrated to obtain the controlled yaw angular rateψ˙. Then, by relationship (1) betweenψ˙andϕ, we obtain the controlled steering angle commandϕ=tan1(ψ˙lcφbcεvr). Therefore, control inputuis implemented by the driving and steering actuation in experiments.

2.2 Balance Equilibrium Manifold and Bikebot-Rider Control.

In this subsection, we present the tracking and balance control design using the EIC model by Eq. (5). Given the desired trajectory T:(Xd(t),Yd(t)) in N, the first step is to design a tracking controller for Σext without considering the balance control task. Therefore, we consider
(6)
where rd=[Xd(t)Yd(t)]T and ep=rC2rd. The constants bi>0, i =0, 1, 2 are chosen such that polynomial s3+b2s2+b1s+b0 is Hurwitz. By Eq. (6), the control input is designed as
(7)
Under Eq. (7), we define a nominal external vector field as
(8)
We now consider the roll angle equilibrium, denoted as qe, by setting q˙=q¨=0 in Eq. (5b) under control (7). We define an implicit function of q as F(q,u,τ)=B(q)u+τC(q,0)G(q) and let qe=qe(u,τ) be the solution of the algebraic equation F(qe,u,τ)=0 for given u and τ. The BEM under uext and τ, denoted by E(uext,τ), is defined as
(9)

where x=[rC2Tr˙C2Tr¨C2T]T and α=[qTq˙T]T. The BEM E(uext,τ) is viewed as a time-dependent graph of Σext that is evolved with Next under uext and τ. The value of qe(uext,τ) in E(uext,τ) also depends on x implicitly through control uext.

For internal subsystem by Eq. (5b), we need to stabilize the roll angle to qe. Noting u=[uruψ]T, we plug Eq. (7) into Eq. (5b) and obtain
where u¯int=[uψτh]T and Bij(q) is element of B(q) at the ith row and jth column, i,j=1,2. Note that ur does not appear in the above equation because the first column in B(q) is zero. From the above equation, the balance control of Σint is
(10)
with vint=L¯Next2qea1e˙qa0eq, where constants a0,a1>0,eq=qqe,e˙q=q˙q˙eq˙L¯Nextqe. We approximate q˙e and q¨e by using directional derivatives along Next due to their dependence on the external subsystems and uext, i.e., L¯Nextqe=LNextqe+qet and L¯Next2qe=L¯NextL¯Nextqe. The form of LNextqe is,

where K denotes a collection term of the derivative of G,C,B,τ with respective to variables other than qe, and uN,X and uN,Y denotes the components of control uNext in X and Y dimension. The form of L¯Next2qe is obtained similarly. The overall control of the bikebot-rider system by Eq. (5) combines the controllers in Eqs. (7) and (10) as ur=urext and uψ=uψint, where uψint is the first element of u¯int in Eq. (10).

Remark 2. Although the above-developed control includes the human trunk motion and actuation, the design can be simplified for riderless autonomous control by reducing the roll motion and settingτ=0inEq.(5b). In the following section, we will use the above developments to present the riderless autonomous control to further illustrate the design.

Figure 2 illustrates and summarizes the above EIC-based control scheme. For a given trajectory T, the control system is first to specify the external systems controller uext=[urextuψext]T that is given by Eq. (7). Then, we compute the external vector field Next by Eq. (8) and the BEM by Eq. (9). The final controller is updated by roll stabilization by Eq. (10) and given as ur=urext and uψ=uψint. In Sec. 3, we will discuss the gyrobalancer-enhanced control design.

Fig. 2
The flowchart of the EIC control scheme with gyrobalancer enhancement. The dashed line indicates the design flow and the solid line indicates the control flow.
Fig. 2
The flowchart of the EIC control scheme with gyrobalancer enhancement. The dashed line indicates the design flow and the solid line indicates the control flow.
Close modal

3 Gyro-Balancer Enhanced Control

In this section, we mainly present the gyrobalancer control of bikebot and then discuss how to use the gyrobalancer to assist the stationary bikebot. Finally, the switching strategy between stationary balance and tracking control is briefly discussed.

3.1 Bikebot Model With the Gyro-Balancer.

Figure 3(a) illustrates the gyrobalancer configuration, and Fig. 3(b) shows the schematic of the riderless bikebot with the gyrobalancer. The gyrobalancer's flywheel rotates at high (constant) spinning speed ωs, and the flywheel's pivoting angle is denoted as φw. The gyroscopic torque along the roll motion is calculated as
(11)

where Iz is the mass moment of inertia of the flywheel about its rotating center.

Fig. 3
(a) The configuration of the gyrobalancer setup and (b) a kinematic schematic of the bikebot systems with the gyrobalancer
Fig. 3
(a) The configuration of the gyrobalancer setup and (b) a kinematic schematic of the bikebot systems with the gyrobalancer
Close modal
To simplify the modeling process, the pivoting angular velocity is considered as the input uw=φ˙w and, similar to Eq. (3), the riderless roll dynamics model is obtained as
(12)
where Jt=mbhb2+Jb+0.5Iz(1+sφw2),gψ(φb)=mbhblbcφb,

Together with Eq. (5a), the above dynamics in Eq. (12) satisfies the EIC property.

3.2 Enhanced Tracking Control With the Gyro-Balancer.

We first consider the case that the gyrobalancer control is not used, that is, uw = 0. The control design follows the discussion in Sec. 2.2. Under uext in Eq. (7), the balance equilibrium angle φbe in Eq. (9) satisfies the following relationship
(13)
From Eq. (10), the roll motion stabilization control is chosen as
(14)
with vint=L¯Next2φbea1e˙φba0eφb, where eb=φbφbe,e˙φb=φ˙bφ˙beφ˙bL¯Nextφbe, and constants a0,a1>0. The overall control design combines Eqs. (7) and (14) as
(15)

Remark 3. Under controllerCin Eq. (15), both the position tracking errorepand roll motion erroreφbare shown to exponentially converge to neighborhoods around zero simultaneously. The stability and convergence proofs are obtained by using the EIC properties and a technical assumption about the BEM approximation error in the closed-loop dynamics [4 ]. A similar proof is given inRef. [26 ]and we omit here.

We now derive the gyrobalancer control uw and steering control u¯ψint to further improve the trajectory tracking performance. By the EIC-based design, under uext, the bikebot position converges to the desired trajectory T exponentially. For the balance task, the steering input uψint is different from uψext and thus introduces tracking errors ep. On the other hand, uψint has to drive φb to φbe. The goal of the gyrobalancer control uw is to help balance the platform under u¯ψint. Under uw and u¯ψint, the balancing capability is assumed to be the same as uψint with uw = 0, namely, the right-hand sides of Eq. (12) are the same and thus, we obtain
(16)
If the external control by Eq. (6) is used, we have
By inputs Eqs. (14) and (15), the actual planar motion is then rC2(3)=Ψ+Rψu¯,u¯=[urextuψint]T. The tracking error due to the balance control is
(17)
Using Eq. (13), we obtain an alternative formulation for uψext as
(18)
Substituting uψint in and uψext in Eqs. (18) into (17), we obtain the error perturbation term dp as
(19)
where d0=uψintuψext=gψ1(φb)f(φb)+gψ1(φbe)f(φbe)+gψ1(φb)Jtvψint. Under the new control u¯ψint, we obtain a similar error perturbation d¯p as
(20)

where d¯0=gψ1(φb)f(φb)+gψ1(φbe)f(φbe)+gψ1(φb)Jtvψintgψ1(φb)gw(φb)uw. From Eq. (20), if u¯ψint=uψext, then d¯p=0 and errors ep converge by Eq. (17). However, given Eq. (16) and the restrictive pivoting motion, the magnitude of u¯ψint cannot be arbitrarily chosen.

We design uw and u¯ψint by considering the physical constraints of the gyrobalancer actuation, namely,
(21)
where φwmax,uwmax, and γwmax are, respectively, the maximum pivoting angle, angular velocity, and angular acceleration. By these constraints, we define the upper- and lower-bound functions for uw, that is, fwc(φw)uwfwc+(φw), where
The above bounds are calculated by the pivoting motion kinematics with the constraints in Eq. (21). If |d0|>εd for a given εd>0, we design the rolling torque in the direction of gψ(φb)(uψintuψext) and given constraints fwc+(φw) and fwc(φw), that is,
(22)
where sign(uw)=sign(gw1(φb)gψ(φb)d0). If |d0|εd, we choose uw0=0. From Eq. (16), the steering control u¯ψint is
(23)
The overall control with gyrobalancer assistance is then
(24)
Under controllers C in Eq. (15) and C¯ in Eq. (24), the position tracking errors are denoted as ep and e¯p, respectively. It can be shown that under C¯, the magnitude of the tracking errors is reduced. We first present the following result.

Lemma 1. The error disturbanced¯punder controllerC¯is not greater than that ofdpunder controllerC.

Proof . See Appendix  A.▪

Under C¯, the EIC structure is still held, and thus, as shown in Refs. [4] and [26], the closed-loop errors ep and e¯p asymptotically converge to bounded regions near the origin. Similar to Eq. (17), we obtain the error dynamics for e¯p as
(25)
Defining ex=[epTe˙pTe¨pT]T and e¯x=[e¯pTe¯.pTe¯..pT]T, similar to Ref. [26], we obtain that the magnitudes of dp and d¯p are assumed to be affine functions of ex and e¯x, respectively,
(26)

where k0,k1,k¯0,k¯1>0 are constants. Given the result in Lemma 1, we assume that k¯0k0,k¯1k1. We have the following results about errors ep and e¯p.

Theorem 1. Under controllersCandC¯,ep(t)ande¯p(t)exponentially converge to regions near the origin. Moreover, denoting the error boundsepb(t)ande¯pb(t), i.e., ||ep(t)||epb(t)and||e¯p(t)||e¯pb(t), we obtaine¯pb(t)epb(t)fort0.

Proof . See Appendix  B.▪

From Eq. (16), under C¯ the balancing control effect is the same as that of C. The closed-loop error dynamics of Σint is
(27)

where dφb=φ¨beL¯Next2φbe+a1(φ˙beL¯Nextφbe), which is bounded by the norms of the desired trajectory [4]. Because of the unchanged internal error dynamics by Eq. (27) under C and C¯, the stability and tracking performance for the BEM is the same.

3.3 Stationary Balance With Gyro-Balancer Control.

When the bikebot is stationary, vr = 0 and uψ=0 and we consider balancing the bikebot by using the gyrobalancer. One constraint of the gyrobalancer is the lack of continuously supplied, large balance torque due to its working principle, that is, a constant pivoting rate uw is needed but an increased pivoting angle would reduce the output torque. Therefore, instead of regulating the roll angle at the upright position, we stabilize the platform at a designed orbit to further help avoid saturation of the output balance torque. We define the state variables as ξ=[ξ1ξ2ξ3]T=[φbφ˙bsφw]T. From Eq. (12), the roll motion dynamics reduces to
(28)
where ug=cφwuw,fg(ξ)=mbghbsξ1Jt,gg(ξ)=Izωs+Ixξ2ξ3Jt. The equilibrium of Eq. (28) is ξe=0 under ug = 0. Given IzJbmbhb2 and |ξ2|ωs, Eq. (28) is simplified to
(29)
We plan to stabilize the motion governed by Eq. (29) on an oscillation orbit Ob given by
(30)

where b >0 is constant. Plugging Eqs. (30) into (29), we have ξ˙3=(b+g)mbhb2Izωsbξ˙2=Lξ˙2, where L=(g+b)mbhb2Izbωs. The corresponding orbital trajectory for ξ3 is given by Og:ξ3=Lξ2.

We consider an energy-like function E(ξ)=12mbhb2ξ22+mbhbb(1cξ1). The maximum angle ξ1* on orbit Ob is obtained at ξ2=0. By Eq. (30), if (ξ1,ξ2) is on Ob,E(ξ) is conserved at Ed=mbhbb(1cξ1*). Therefore, define ΔE=E(ξ)Ed and the control law is given as
(31)

where γ=gbIzωs>0, and κ1,κ2>0. We have the following result.

Lemma 2. Under control (31), the system by Eq. (28) converges to the invariant setS(ξ)={ξ|vg(ξ)=0}asymptotically, and the closed-loop trajectories ofξare on orbitsObandOgsimultaneously.

Proof . See Appendix  C.▪

3.4 Stationary-Moving Control Switch Strategy.

Noting that |φ˙b|ωs and |Ixφ˙bsφw|Izωs, the gyroscopic balance torque (11) is simplified as τg=Izωsug. The maximum instantaneous gyroscopic balance torque is then estimated as τgmax=Izωsuwmax. We compare the above gyroscopic balance torque with the steering-induced balance torque. Using the condition φb0 and at constant ϕ, we simplify Eq. (12) and collect all terms related with the steering angle. The steering-induced balance torque is τs=mbhbcφbvrψ˙mbgltlbtanϕcεcφbl=mbcεltanϕ(hbvr2gltlb). It is clear that with increasing steering angle ϕ and velocity vr, τs value grows. It is however difficult to analyze and directly compare the magnitudes of τs and τg from the above calculations. We here illustrate the comparison numerically. Using the bikebot prototype parameters, Fig. 4 illustrates the balance torque τs as varying velocity and steering angle. When velocity vr is small, the value of τs is small. In this case, it is extremely challenging to only use steering actuation to balance the platform.

Fig. 4
Steering-induced balance torque τs as function of velocity vr for the bikebot prototype model under different steering angles ϕ = 5,10,and20 deg
Fig. 4
Steering-induced balance torque τs as function of velocity vr for the bikebot prototype model under different steering angles ϕ = 5,10,and20 deg
Close modal

From the above discussion, for the stationary platform or at low-velocity motion, the bikebot balance is maintained by the gyrobalancer control only, while at large velocity, steering control is mainly used. Therefore, a switching strategy is needed between the gyrobalancer and steering controls. Stability under the switched control follows the design that the state under the current controller is within the region of attraction of the switched target controller. By doing so, the stability of the switched control is guaranteed. For simplicity, velocity magnitude is chosen as the switching condition. The controlled torque is τψ=gψ(φb)uψ=mhblbcεl[vr(secϕ2ϕ˙+φ˙btanϕtanφb)+v˙rtanϕ]. Clearly, to achieve effective steering control, the velocity needs to reach a certain value v1*, at which the bikebot roll motion state is within the region of attraction of the steering control. Similarly, when switching back to stationary balance control the by gyrobalancer, the effective design is to reduce the velocity below v2* at which the steering effect is negligible and the gyrobalancer can safely take over the balance task to stop the bikebot.

4 Experimental Results

4.1 Experimental System.

The bikebot prototype shown in Fig. 1(a) was modified from a mountain bicycle with a set of sensors and actuators. A high-resolution inertial measurement unit (IMU) (model 801; Motion Sense, Inc.) was used to obtain the roll angle φb and yaw angle ψ and their rates. Optical encoders were used to measure the velocity (from the rear wheel) and steering angle. A real-time kinematic (RTK) GPS unit (Novatel, Inc.) was used to obtain the bikebot position. The gyrobalancer was mounted on the rear rack. The flywheel and pivoting motion were each driven by a DC motor with encoders for feedback control; see Fig. 3(a). The steering actuation was driven by a DC motor (with an encoder for position feedback) and the bikebot velocity was driven by the hub motor at the rear wheel. A real-time embedded system (cRIO model 9082; National Instruments, Inc.) was used to collect all measurements and compute the control inputs at a frequency of 100 Hz. The positioning information from the GPS unit was updated at around 20 Hz. Table 1 lists the values of the physical parameters of the bikebot system. The following control gains and parameters were used in implementation: a0=25,a1=180,b0=3,b1=6,b2=10 for the EIC controller; b =1 for the orbital stabilization controller. The gyrobalancer physical constraints were given as: φwmax=π2 rad, uwmax=6 rad/s, εd=2 rad/s2, and γwmax=6 rad/s2.

Table 1

The values of the bikebot physical parameters

mb (kg)mh (kg)Jb (kg m2)Iz (kg m2)hh (m)hb (m)lb (m)hs (m)ls (m)l (m)lt(m)ε (deg)ωs (rpm)
51352.50.0360.300.640.270.850.321.10.06201500
mb (kg)mh (kg)Jb (kg m2)Iz (kg m2)hh (m)hb (m)lb (m)hs (m)ls (m)l (m)lt(m)ε (deg)ωs (rpm)
51352.50.0360.300.640.270.850.321.10.06201500

We conducted human-riding experiments to compare with the autonomous control. As shown in Fig. 1(b), the rider operated the bikebot similar to a regular bicycle with manual steering and regulating the velocity. Trajectory lines were marked on the ground so that the human subjects rode the bikebot to follow the trajectory as closely as possible. A 6DOF force/torque sensor (JR3, Inc.) was installed underneath the bikebot seat to obtain the rider's trunk torque τh. An IMU (model 605; Motion Sense, Inc.) was mounted on the human trunk to obtain the rider trunk roll angle. The embedded system was used to collect and store the motion data at a frequency of 100 Hz. The subjects were experienced bicycle riders, and they rode the bikebot for about 10 min before experiments were recorded. An informed consent form was signed by human subjects and the testing protocol was approved by the Institutional Review Board (IRB) at Rutgers University.

4.2 Experimental Results.

We first present the validation results for the bikebot-rider model by Eq. (3) using human riding experiments. Figure 5(a) shows the trajectory of the bikebot following an “8”-shape trajectory (with a radius of 3 m). The subject rodes the bikebot with a velocity of around 2 to 2.5 m/s. Figure 5(b) illustrates the validation of the two equations in Eq. (3). The plots compare the calculations of term G(q), and the rest of the other terms in the dynamics equation is neglected. We chose this comparison method because the magnitude of G(q) dominates the values of other terms. These results clearly show a close match between the model prediction and the experiments. Figures 5(c) and 5(d) show the bikebot and rider trunk roll angles, respectively. Using the steering angle, human trunk driving torque, and velocity measurements, we computed and plotted the BEM (i.e., φhe and φbe). The actual angles followed closely with these equilibria. We also computed the EIC-based control design, and Figs. 5(e) and 5(f) show these control inputs (i.e., steering angle ϕ and velocity vr) together with the actual human inputs. The velocities labeled “EIC” in Figs. 5(e) and 5(f) were calculated using the system model, and the difference with the rider experiments is due to the modeling errors and variations of human riding behavior.

Fig. 5
(a) Human riding experiments trajectory of following an “8”-shape trajectory (radius of 6 m). (b) Validation of the bikebot-rider dynamics model in Eq. (3). The top plot shows the comparison of the first equation and the bottom plot is for the second equation in Eq. (3). (c) Bikebot roll angle φb and the calculated BEM for φb. (d) Rider trunk roll angle φh and the calculated BEM for φh. (e) Rider-controlled steering angle ϕ and EIC-based controlled ϕ. (f) Rider-controlled bikebot velocity vr and EIC-based vr. These plots were previously presented in Ref. [26].
Fig. 5
(a) Human riding experiments trajectory of following an “8”-shape trajectory (radius of 6 m). (b) Validation of the bikebot-rider dynamics model in Eq. (3). The top plot shows the comparison of the first equation and the bottom plot is for the second equation in Eq. (3). (c) Bikebot roll angle φb and the calculated BEM for φb. (d) Rider trunk roll angle φh and the calculated BEM for φh. (e) Rider-controlled steering angle ϕ and EIC-based controlled ϕ. (f) Rider-controlled bikebot velocity vr and EIC-based vr. These plots were previously presented in Ref. [26].
Close modal

To demonstrate the influence of the moving velocity on trajectory tracking performance, we ran experiments by first regulating velocity vr at a constant value and using only the steering control. Five sets of experiments were conducted: the straight-line, circular, and “8”-shape trajectories (radii 4 and 6 m) under velocity vr=1.7,2.1, and 2.6 m/s. Figure 6 shows an example of tracking results of the straight-line, circular, and “8”- shape (with radius 6 m) trajectories at vr=2.1 m/s. As shown in Fig. 6(a), the position tracking errors are less than 0.15 m for the straight-line tracking. For both the circular (Fig. 6(b)) and “8”-shape (Fig. 6(c)) trajectory tracking, the position errors are less than 0.8 m. Figures 6(d)6(f) show the roll angle tracking results of these three trajectories. The roll angle errors for the straight-line tracking control are plotted over the horizontal position, while for circular and “8”-shape trajectories, they are plotted over the arc-length. It is clear that roll motion followed the calculated BEM closely.

Fig. 6
Bikebot path following results with desired trajectories. Planar positions for (a) straight-line, (b) circular, and (c) “8”-shape trajectories. Bikebot roll angle results for the (d) straight-line, (e) circular, and (f) “8”-shape trajectories. The dashed curves in (d)–(f) represent the calculated BEM values.
Fig. 6
Bikebot path following results with desired trajectories. Planar positions for (a) straight-line, (b) circular, and (c) “8”-shape trajectories. Bikebot roll angle results for the (d) straight-line, (e) circular, and (f) “8”-shape trajectories. The dashed curves in (d)–(f) represent the calculated BEM values.
Close modal

We computed the mean and standard deviation values of the tracking errors under different trajectories and velocities setups. Under each set of those conditions, we repeated four testing runs similar to those shown in Fig. 6 to calculate the statistics. Figure 7 shows the calculated means and standard deviations of the tracking errors (i.e., ||ep|||eφb|). Under the same velocity, the straight-line tracking always has the smallest position errors and roll angle errors, while the errors under the circular tracking are smaller than those under the “8”-shape trajectory. The roll angle reference (i.e., BEM) displays a sudden change when the robot turning direction changes; see Figs. 6(c) and 6(f). This motion requirement can bring a larger tracking error for the “8”-shape trajectory than the circular trajectory. It is clear that the tracking errors for the large-radius trajectory are smaller than those of the small-radius trajectory. With large velocity, both the position and roll motion errors increase. The position tracking error and roll motion error are related to each other, that is, both errors change in the same trend under velocity and trajectory radius variations.

Fig. 7
Bikebot path tracking error distributions (mean values as the centers and one standard deviation value as the major and minor axes of each ellipse). Left: straight-line tracking; middle: circular tracking; and Right: “8”-shape trajectory tracking. In the middle and right subfigures, the “▲” markers at the center indicate the 6-m radius trajectory and circular “•” markers for 4-m radius trajectory.
Fig. 7
Bikebot path tracking error distributions (mean values as the centers and one standard deviation value as the major and minor axes of each ellipse). Left: straight-line tracking; middle: circular tracking; and Right: “8”-shape trajectory tracking. In the middle and right subfigures, the “▲” markers at the center indicate the 6-m radius trajectory and circular “•” markers for 4-m radius trajectory.
Close modal

We further implemented controllers C and C¯ for straight-line and circular trajectories. Figures 8(a) and 8(b) show the position trajectory and the tracking errors, respectively. Figure 8(c) shows the roll angle profiles. Under both controllers, the bikebot successfully followed the straight line. Under C¯, the bikebot reached the desired trajectory in a smoother fashion and with smaller errors than those under C. This is clearly reflected by the control inputs in Figs. 8(e) and 8(d). Without using the gyrobalancer, after crossing the desired trajectory, the bikebot continued to turn (at 86 s in Fig. 8(d)). In contrast, the gyrobalancer helped to generate additional torques to assist balance tasks (e.g., at t =103 s in Fig. 8(e)). Figure 9 shows the results for tracking a circular trajectory. Compared with trajectory under C¯ in Fig. 9(a), a larger steering effect is shown in Fig. 9(b) right after the bikebot entered the circular trajectory (around t =82 s). This sharp turn is also observed from the roll angle in Fig. 9(c). The steering effort to balance the platform was reduced and smoothed by the gyrobalancer. The magnitude of tracking error ||e¯p|| (Fig. 9(d)) is smaller than ||ep|| (Fig. 9(c)). The control inputs under C¯ and C are illustrated in Figs. 9(e) and 9(f), respectively.

Fig. 8
Performance comparison of the two controllers C and C¯ for a straight-line trajectory: (a) The position trajectories in the X–Y plane, (b) position tracking errors, (c) bikebot roll angles under C and C¯, (d) control inputs under C, and (e) control inputs under C¯
Fig. 8
Performance comparison of the two controllers C and C¯ for a straight-line trajectory: (a) The position trajectories in the X–Y plane, (b) position tracking errors, (c) bikebot roll angles under C and C¯, (d) control inputs under C, and (e) control inputs under C¯
Close modal
Fig. 9
Performance comparison of C and C¯ for a circular trajectory: (a) The trajectory under C¯, (b) the trajectory under C. The solid circular dots indicate the starting locations, (c) position tracking errors and roll angle under C, (d) position tracking errors and roll angle under C¯, and (e) and (f) control inputs under C¯ and C, respectively.
Fig. 9
Performance comparison of C and C¯ for a circular trajectory: (a) The trajectory under C¯, (b) the trajectory under C. The solid circular dots indicate the starting locations, (c) position tracking errors and roll angle under C, (d) position tracking errors and roll angle under C¯, and (e) and (f) control inputs under C¯ and C, respectively.
Close modal

We now demonstrate the stationary balance results. Figure 10 shows the phase portraits of the bikebot roll angle (Fig. 10(a)) and the pivoting angle (Fig. 10(b)) when the bikebot was stationary. The bikebot was released at φb(0)=1.2 deg and φ˙b(0)=0 deg/s with φw(0)=0 deg. From the figure, the desired roll angle orbit reached ±2 deg and roll angular rate to ±5 deg/s. From Fig. 10(a), after several periods, the bikebot roll angle was controlled to near the desired rolling orbit around ±2 deg. Once the roll motion reached the desired orbit, the flywheel pivoting motion was also near the pivoting orbit within the range of ±50 deg as shown in Fig. 10(b).

Fig. 10
Gyrobalancer orbital regulation results: (a) Rolling motion on the φb–φ˙b plane and (b)flywheel pivoting motion on the φw–φ˙w plane
Fig. 10
Gyrobalancer orbital regulation results: (a) Rolling motion on the φb–φ˙b plane and (b)flywheel pivoting motion on the φw–φ˙w plane
Close modal

Figure 11 shows the results under the stationary-moving switch control. The bikebot was controlled from stationary to moving and back to stationary again to track a straight-line trajectory. As shown in the figure, the stationary stages were from t =66.2 to 81.6 s and from t =104.7 to 118.5 s. The switching velocities were set as v1*=1.2 m/s and v2*=1.9 m/s. Figures 11(a) and 11(b) show the roll angle φb, velocity vr, and steering angle ϕ and flywheel pivoting angle φw, respectively. Figure 11(c) shows the bikebot planar position, and the position errors are held within 0.4 m. The bikebot was first released at a small φb, and under the gyrobalancer orbital regulation control, the roll motion was within the range of ±1 deg. After vr>v1*, the bikebot moved around vr = 2 m/s, and φw was set to zero, and the platform was stabilized by steering control. From t =104.7 s (i.e., vr<v2*), the bikebot moved into the stationary phase under the gyrobalancer control. After a 5 s transition duration, the roll angle followed a periodical motion, and the steering angle was set to zero.

Fig. 11
“““Switching balancing control result: (a) bikebot roll angle φb and velocity vr and (b) gyropivoting angle φw and steering angle ϕ. The first and the third sections are for the gyro balancer control, and the middle section is for the steering balancing control. (c) Bikebot trajectory on XY plane. The vertical lines indicate the time when the control actuation is switched.
Fig. 11
“““Switching balancing control result: (a) bikebot roll angle φb and velocity vr and (b) gyropivoting angle φw and steering angle ϕ. The first and the third sections are for the gyro balancer control, and the middle section is for the steering balancing control. (c) Bikebot trajectory on XY plane. The vertical lines indicate the time when the control actuation is switched.
Close modal

We further compare the autonomous control results with human riding experiments. The results under controller C (i.e., without using the gyrobalancer) are compared with these under the human steering control. Figure 12 shows comparison results of tracking an “8”-shape trajectory (radius of 6 m) with velocity vr=2.1 m/s. From Fig. 12(a), the control performance under the human rider and the autonomous control is in general similar though the former maintains smaller tracking errors than the latter. Figure 12(b) shows the steering and roll angles under the two types of controllers. It is clear that under autonomous control, the roll motion experienced less oscillation than that under the rider control. The high-frequent steering actuation by the rider might result in small position errors. Figure 13(a) further shows the position comparison of tracking a smaller “8”-shape trajectory (with a radius of 3 m). The motion velocity was selected at a value under which emergency protection can be provided by a human operator immediately to avoid any damage in experiments. Figure 13(b) shows the comparison of velocity and the steering angle profiles under the human riding and controller C. In this case, the tracking errors under C are in general smaller than those under human control. The human balance motor control might be similar to those under C. This observation can be found in the velocity and steering angle comparison plots in Figs. 13(b) and 13(c). The overall velocity and steering actuation trends under human control and C are also similar. Indeed, the results in Ref. [32] have shown that the EIC-based control by Eq. (10) has the same mathematical structure as the human neuro-controller that was empirically built on the human riding experiments.

Fig. 12
Path following (“8”-shape trajectory) comparison of the bikebot control and rider experiments: (a)horizontal position and (b) steering angle ϕ and rolling angle φb
Fig. 12
Path following (“8”-shape trajectory) comparison of the bikebot control and rider experiments: (a)horizontal position and (b) steering angle ϕ and rolling angle φb
Close modal
Fig. 13
Performance comparison of human riding and the controller C to follow an “8”-shape trajectory: (a) The tracking trajectory under a human riding control. The solid circular dot indicates the starting location. (b) Controller inputs under human control and C. (c) Balancing roll angles.
Fig. 13
Performance comparison of human riding and the controller C to follow an “8”-shape trajectory: (a) The tracking trajectory under a human riding control. The solid circular dot indicates the starting location. (b) Controller inputs under human control and C. (c) Balancing roll angles.
Close modal

4.3 Discussion.

In this work, the planar motion of the bikebot is built on the kinematics model (with the nonholonomic constraint), while the roll motion is based on the dynamics model. This paper mainly extends the EIC-based trajectory tracking and balance control of autonomous bikebots with given desired trajectories. The motion control only uses the steering and velocity actuation as the basic design. With an additional gyrobalancer assistive device, the motion is extended to include the stationary balance. The influence of the steering on bikebot dynamics was developed through the balance torque as explained in Ref. [33]. A similar model has been used to analyze and demonstrate that bikebot riders would prefer to use steering actuation than the upper-body leaning motion to overcome any perturbations [26]. For most experimental examples in this work, the bikebot speeds were mild (e.g., 1–3 m/s), and the steering-induced balance torque was not significant compared with these in the high-speed cases.

As we explained previously, the work in Refs. [12] and [13] considered a dynamic model for the motorcycle planar motion, and tire-road interactions are among the important part of the model for aggressive velocity planning. Compared to the dynamic model for planar motion, the kinematic model used in this paper is simple and maintains critical properties such as nonholonomic constraints for relatively mild velocity navigation. The trajectory planning and aggressive maneuvers are not among the main design goals of this work. This is the main difference with the work in Ref. [12]. In order to plan the motion trajectory and maximum velocity profile, we do need to know the tire-road interactions properties (e.g., friction circles, etc.) This would bring complex dynamic model for the bikebot planar motion, such as those in Refs. [1214]. It would be helpful to incorporate the motion planning as part of an extension for future development.

Following the above discussion, the existence of the BEM by Eq. (9) is based on the assumption that the bikebot roll motion can be realized. That implies that the algebraic equation F(q,uext,τ)=B(q)uext+τC(q,0)G(q)=0 has a feasible solution that satisfies the roll motion dynamics under given uext and τ. The solution of this equation depends on the external controller uext. If for a given trajectory, such as a sharp turn, under the designed uext, there is no feasible roll motion and then a revised trajectory-tracking controller or replanning the trajectory is needed. Since the demonstrated experiments took smooth trajectories and reasonable velocity profiles, the control design always found the equilibrium solution of Eq. (9). For a given desired trajectory, we can also design a path-following controller, instead of trajectory tracking control as shown in this paper, by taking a time suspension technique to tune the bikebot velocity with the path-following errors [34]. This approach would help design a feasible velocity profile to follow a given path for the bikebot control.

5 Conclusion

We presented a set of gyroscopic balancer-enhanced control strategies for the autonomous bikebot for simultaneous trajectory tracking and platform balance. The control design was built on the EIC structure of the bikebot dynamics. The balance equilibrium manifold played a critical role to build the interconnection of the trajectory tracking and the balance roll motion profiles. When the platform was stationary, the gyrobalancer mainly provided the balancing torque. A switching strategy between the velocity and steering control laws was proposed to interconnect to the trajectory tracking controller. We presented extensive experiments to validate and demonstrate the autonomous control performance and also compared them with the human riding experiments. It was confirmed that the human riding and autonomous control strategies shared a similar steering and velocity actuation for tracking trajectory and maintaining balance. As an ongoing future work direction, incorporating the bikebot dynamics model and tire-road interactions into the trajectory planning would help design motion controllers for high-performance agile maneuvers.

Funding Data

  • Directorate for Engineering (Award No. 1334389; Funder ID: 10.13039/100000084).

  • National Science Foundation (Award No. 1932370; Funder ID: 10.13039/100000001).

Proof of Lemma 1

From Eqs. (19) and (20), this lemma is equivalent to prove |d¯0||d0|. For the case of |d0|<εd, we have uw0=0, thus |d¯0|=|d0|. Therefore ||d¯p||=||dp||. For the case |d¯0|>εd, we have
(A1)

From the sign and amplitude definition of uw, we conclude the following relationships: sign(d0)=sign(gψ1(φb)gw(φb)uw) and |gψ1(φb)gw(φb)uw||d0|εd<|d0|. Thus, we take the absolute value of Eq. (A1) without changing the form and obtain |d0||d¯0|=|gψ1(φb)gw(φb)uw|>0. This completes the proof.

Proof of Theorem 1

We prove the result through the Lyapunov stability theorem [35]. Using variable ex=[epTe˙pTe¨pT]T, we rewrite the error dynamics by Eq. (17) as
with A=A0I2, where operator ⊗ represents the Kronecker product, In is the n × n identity matrix, and
We consider the Lyapunov candidate function V=exTPex, where positive matrix P=PT6×6 satisfying ATP+PA=I6. Following the stability of the perturbed systems [35] and Eq. (26), we obtain
(B1)
where λ1,λ2>0 are the minimum and maximum eigenvalues of P, respectively. Defining W=V, we write Eq. (B1) as
(B2)
where υ=12(1λ2k12λ2λ1)>0, namely, k1<λ12λ22. Considering W(t)=V(t)λ1||ex(t)|| and by comparison lemma [35], from Eq. (B2), we obtain
(B3)
where λr=λ2/λ1. Similarly, for the error dynamics under controller C¯, we obtain
(B4)

where υ¯=12(1λ2k¯12λ2λ1)>0 and k¯1<λ12λ22. From Eqs. (B3) and (B4), it is straightforward to obtain that both errors exponentially converge to the regions near the origin with bounds 2λr2k0υ and 2λr2k¯0υ¯, respectively. Given ||ex(0)||=||e¯x(0)|| and υ¯υ,eυ¯teυt for any t and k¯0υ¯k0υ, and thus e¯pb(t)epb(t) for t0 given k¯0k0,k¯1k1. This completes the proof. ▪

Proof of Lemma 2

We consider the Lyapunov candidate function as
Obviously, V1(x)0. Taking derivative of V1 and using Eq. (31), we obtain

By LaSalle theory [35], the system states converge to the invariant set S(ξ) asymptotically. In S(x),vg(ξ)=0 and then control input ug=Lbhbsξ1. Plugging the above ug into system dynamics in Eq. (29), we obtain that the closed-loop dynamics for ξ are on orbit Ob and Og. This completes the proof.

References

1.
Han
,
F.
, and
Yi
,
J.
,
2021
, “
Stable Learning-Based Tracking Control of Underactuated Balance Robots
,”
IEEE Robot. Automat. Lett.
,
6
(
2
), pp.
1543
1550
.10.1109/LRA.2021.3056324
2.
Åström
,
K. J.
,
Klein
,
R. E.
, and
Lennartsson
,
A.
,
2005
, “
Bicycle Dynamics and Control
,”
IEEE Control Syst. Mag.
,
25
(
4
), pp.
26
47
.10.1109/MCS.2005.1499389
3.
Beznos
,
A.
,
Formal'sky
,
A.
,
Gurfinkel
,
E.
,
Jicharev
,
D.
,
Lensky
,
A.
,
Savitsky
,
K.
, and
Tchesalin
,
L.
,
1998
, “
Control of Autonomous Motion of Two-Wheel Bicycle With Gyroscopic Stabilisation
,”
Proceedings of International Conference on Robotics and Automation
, Leuven, Belgium, July 6–8, pp.
2670
2675
.10.1109/ROBOT.1998.680749
4.
Getz
,
N.
,
1995
, “
Dynamic Inversion of Nonlinear Maps With Applications to Nonlinear Control and Robotics
,” Ph.D. thesis,
Department of Electrical Enginneering and Computer Sciences, University of California
,
Berkeley, CA
.
5.
Lee
,
S.
, and
Ham
,
W.
,
2002
, “
Self-Stabilzing Strategy in Tracking Control of Unmanned Electric Bicycle With Mass Balance
,”
Proceedings of the IEEE/RSJ International Conference on Robots and Systems
, Lausanne, Switzerland, Sept. 30–Oct. 4, pp.
2200
2205
.10.1109/IRDS.2002.1041594
6.
Yi
,
J.
,
Song
,
D.
,
Levandowski
,
A.
, and
Jayasuriya
,
S.
,
2006
, “
Trajectory Tracking and Balance Stabilization Control of Autonomous Motorcycles
,”
Proceedings of International Conference on Robotics and Automation
, Orlando, FL, May 15–19, pp.
2583
2589
.10.1109/ROBOT.2006.1642091
7.
Tanaka
,
Y.
, and
Murakami
,
T.
,
2009
, “
A Study on Straight-Line Tracking and Posture Control in Electric Bicycle
,”
IEEE Trans. Ind. Electron.
,
56
(
1
), pp.
159
168
.10.1109/TIE.2008.927406
8.
He
,
J.
,
Zhao
,
M.
, and
Stasinopoulos
,
S.
,
2015
, “
Constant-Velocity Steering Control Design for Unmanned Bicycles
,”
Proceedings of IEEE International Conference on Robotics and Biomimetics.
, Zhuhai, China, Dec. 6–9, pp.
428
433
.10.1109/ROBIO.2015.7418805
9.
Chen
,
L.
,
Liu
,
J.
,
Wang
,
H.
,
Hu
,
Y.
,
Zheng
,
X.
,
Ye
,
M.
, and
Zhang
,
J.
,
2021
, “
Robust Control of Reaction Wheel Bicycle Robot Via Adaptive Integral Terminal Sliding Mode
,”
Nonlinear Dyn.
,
104
(
3
), pp.
2291
2302
.10.1007/s11071-021-06380-9
10.
Zou
,
Z.
,
Zhao
,
R.
,
Wu
,
Y.
,
Yang
,
Z.
,
Tian
,
L.
,
Wu
,
S.
,
Wang
,
G.
, et al.,
2020
, “
A Hybrid and Scalable Brain-Inspired Robotic Platform
,”
Sci. Rep.
,
10
(
1
),
18160
.10.1038/s41598-020-73366-9
11.
Wang
,
P.
,
Yi
,
J.
,
Liu
,
T.
, and
Zhang
,
Y.
,
2017
, “
Trajectory Tracking and Balance Control of an Autonomous Bikebot
,”
Proceedings of International Conference on Robotics and Automation
, Singapore, May 29–June 3, pp.
2414
2419
.10.1109/ICRA.2017.7989280
12.
Hauser
,
J.
, and
Saccon
,
A.
,
2006
, “
Motorcycle Modeling for High-Performance Maneuvering
,”
IEEE Control Syst. Mag.
,
26
(
5
), pp.
89
105
.10.1109/MCS.2006.1700047
13.
Yi
,
J.
,
Zhang
,
Y.
, and
Song
,
D.
,
2009
, “
Autonomous Motorcycles for Agile Maneuvers: Part I: Dynamic Modeling
,”
Proceedings of the IEEE Conference on Decision and Control
, Shanghai, China, Dec. 15–18, pp.
4613
4618
.10.1109/CDC.2009.5399495
14.
Yi
,
J.
,
Zhang
,
Y.
, and
Song
,
D.
,
2009
, “
Autonomous Motorcycles for Agile Maneuvers: Part II: Control Systems Design
,”
Proceedings of the IEEE Conference on Decision and Control
, Shanghai, China, Dec. 15–18, pp.
4619
4624
.10.1109/CDC.2009.5399525
15.
Cerone
,
V.
,
Andreo
,
D.
,
Larsson
,
M.
, and
Regruto
,
D.
,
2010
, “
Stabilization of a Riderless Bicycle: A Linear-Parameter-Varying Approach
,”
IEEE Control Syst. Mag.
,
30
(
5
), pp.
23
32
.10.1109/MCS.2010.937745
16.
Zhang
,
Y.
,
Li
,
J.
,
Yi
,
J.
, and
Song
,
D.
,
2011
, “
Balance Control and Analysis of Stationary Riderless Motorcycles
,”
Proceedings of International Conference on Robotics and Automation
, Shanghai, China, May 9–13, pp.
3018
3023
.10.1109/ICRA.2011.5979841
17.
Panzani
,
G.
,
Todeschini
,
D.
,
Corno
,
M.
,
Sette
,
D.
, and
Savaresi
,
S. M.
,
2022
, “
Co-Design and Experimental Validation of a Gyroscopic Stabilizer for Powered Two-Wheelers
,”
IEEE/ASME Trans. Mechatron.
,
27
(
5
), pp.
2484
2494
.10.1109/TMECH.2021.3113290
18.
Kim
,
Y.
,
Kim
,
H.
, and
Lee
,
J.
,
2015
, “
Stable Control of the Bicycle Robot on a Curved Path by Using a Reaction Wheel
,”
J. Mech. Sci. Technol.
,
29
(
5
), pp.
2219
2226
.10.1007/s12206-015-0442-1
19.
Cui
,
L.
,
Wang
,
S.
,
Yang
,
S.
,
Zhang
,
Z.
, and
Jiang
,
Z.-P.
,
2020
, “
Nonlinear Balance Control of an Unmanned Bicycle: Design and Experiments
,”
Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems
, Las Vegas, NV, Oct. 24, pp.
7279
7284
.10.1109/IROS45743.2020.9341150
20.
Seekhao
,
P.
,
Tungpimolrut
,
K.
, and
Parnichkun
,
M.
,
2020
, “
Development and Control of a Bicycle Robot Based on Steering and Pendulum Balancing
,”
Mechatronics
,
69
, pp.
102386
12
.10.1016/j.mechatronics.2020.102386
21.
Keo
,
L.
, and
Yamakita
,
M.
,
2011
, “
Control of an Autonomous Electric Bicycle With Both Steering and Balancer Controls
,”
Adv. Robot.
,
25
(
1–2
), pp.
1
22
.10.1163/016918610X538462
22.
Hara
,
S.
,
Nakagami
,
K.
,
Miyata
,
K.
,
Tsuchiya
,
M.
, and
Tsujii
,
E.
,
2019
, “
Dynamics and Control of Self-Standable Motorcycle
,”
ASME
Paper No. DETC2019-97154. 10.1115/DETC2019-97154
23.
Cui
,
L.
,
Wang
,
S.
,
Zhang
,
Z.
, and
Jiang
,
Z.-P.
,
2022
, “
Asymptotic Trajectory Tracking of Autonomous Bicycles Via Backstepping and Optimal Control
,”
IEEE Control Syst. Lett.
,
6
, pp.
1292
1297
.10.1109/LCSYS.2021.3091917
24.
Shiriaev
,
A. S.
,
Perram
,
J. W.
, and
Canudas-de-Wit
,
C.
,
2005
, “
Constructive Tool for Orbital Stabilization of Underactuated Nonlinear Systems: Virtual Constraints Approach
,”
IEEE Trans. Autom. Control
,
50
(
8
), pp.
1164
1176
.10.1109/TAC.2005.852568
25.
Shiriaev
,
A. S.
,
Freidovich
,
L. B.
,
Robertsson
,
A.
,
Johansson
,
R.
, and
Sandberg
,
A.
,
2007
, “
Virtual-Holonomic-Constraints-Based Design of Stable Oscillations of Furuta Pendulum: Theory and Experiments
,”
IEEE Trans. Rob.
,
23
(
4
), pp.
827
832
.10.1109/TRO.2007.900597
26.
Wang
,
P.
, and
Yi
,
J.
,
2016
, “
Balance Equilibrium Manifold and Control of Rider-Bikebot Systems
,”
Proceedings of the American Control Conference
, Boston, MA, July 6–8, pp.
2168
2174
.10.1109/ACC.2016.7525239
27.
Wang
,
P.
,
Yi
,
J.
, and
Liu
,
T.
,
2020
, “
Stability and Control of a Rider-Bicycle System: Analysis and Experiments
,”
IEEE Trans. Automat. Sci. Eng.
,
17
(
1
), pp.
348
360
.10.1109/TASE.2019.2922068
28.
Moore
,
J. K.
,
2012
, “
Human Control of a Bicycle
,”. Ph.D. thesis,
Department of Mechanical and Aerospace Engineering, University of California
Davis, Davis, CA
.
29.
Cain
,
S. M.
,
2013
, “
An Experimental Investigation of Human/Bicycle Dynamics and Rider Skill in Children and Adults
,” Ph.D. thesis,
Department of Biomedical Engineering, University
of
Michigan, Ann Arbor, MI
.
30.
Wang
,
P.
,
Gong
,
Y.
,
Yi
,
J.
, and
Liu
,
T.
,
2019
, “
An Integrated Stationary/Moving Balance Control of an Autonomous Bikebot
,”
American Control Conference
(
ACC
), Philadelphia, PA, July 10–12, pp.
3273
3278
.10.23919/ACC.2019.8814916
31.
Zhang
,
Y.
,
Wang
,
P.
,
Yi
,
J.
,
Song
,
D.
, and
Liu
,
T.
,
2014
, “
Stationary Balance Control of a Bikebot
,”
Proceedings of International Conference on Robotics and Automation
, Hong Kong, China, May 31–June 7, pp.
6706
6711
.10.1109/ICRA.2014.6907849
32.
Wang
,
P.
, and
Yi
,
J.
,
2015
, “
Dynamic Stability of a Rider-Bicycle System: Analysis and Experiments
,”
Proceedings of the American Control Conference
, Chicago, IL, July 1–3, pp.
1161
1166
.
33.
Fajans
,
J.
,
2000
, “
Steering in Bicycles and Motorcycles
,”
Am. J. Phys.
,
68
(
7
), pp.
654
659
.10.1119/1.19504
34.
Zhang
,
Y.
, and
Yi
,
J.
,
2010
, “
Velocity Field-Based Maneuver Regulation of Autonomous Motorcycles
,”
Proceedings of IFAC Symposium on Mechatronic Systems
, Cambridge, MA, Sept 13–15, pp.
385
392
.10.3182/20100913-3-US-2015.00046
35.
Khalil
,
H. K.
,
2002
,
Nonlinear Systems
, 3rd ed.,
Prentice Hall
,
Upper Saddle River, NJ
.