Stabilization and Control of a Spherical Robot on an Inclined Plane

In this study, the dynamics and control aspects of a spherical robot rolling without slipping on an inclined plane are investigated. The planar dynamic model of the robot rolling ahead on an inclined plane is derived using Lagrangian dynamics. Based on the equivalent control method and Lyapunov stability theorem, a decoupled sliding mode control approach is presented for stable control of the planar motion. Utilizing the constrained Lagrange method the three-dimensional dynamics of the robot rolling on an inclined plane are deduced. Based on input-output feedback linearization, we develop a trajectory tracking control algorithm for the three-dimensional motion of the robot. The validity of the proposed controllers is demonstrated through numerical simulations.


INTRODUCTION
Among diverse types of mobile robots, spherical robots have become increasingly attractive over the past fifteen years. Spherical robots utilize the locomotion principle by shifting the position of their center of mass to generate the driving torque for cruising and they are believed to have several benefits in certain applications. Firstly, they have only a single point of contact with the ground, which allows locomotion with minimal frictions and leads to low energy locomotion for the robotic systems. Secondly, the spherical structure of the robotic systems makes it possible for the spherical robots to move even in tightly constrained spaces. Thirdly, the spherical exoskeleton protects the inner driving mechanism and sensory equipment from external shocks and dusts. Moreover, spherical robots are easily made liquid and gas proof. Fourthly, there is no chance for a robotic ball to lose mobility by falling over. This is very critical for other types of mobile robots, such as humanoid robots and rover robots.
Spherical robots will inevitably encounter such situations as climbing slopes and traversing obstacles in a wide range of their engineering applications. The climbing ability has become one of the important indicators for measuring the motion performance of a spherical robot. Halme et al. (1996) analyzed the climbing ability and obstacle surmounting capability of a spherical robot. But they didn't derive the dynamic equations of the climbing motion and stable control of the climbing motion of the spherical robot couldn't be realized as a result. Abbott (2000) derived the planar dynamic model of a two-wheel vehicle, of which the locomotion principle is similar to that of a spherical robot, driving ahead on an incline using Lagrangian dynamics and proposed a nonlinear feedback control scheme to regulate the traveling velocity of the vehicle. Although the vehicle could be controlled to maintain a desired velocity, precise location of the vehicle couldn't be achieved with this velocity regulator. Yue and Deng (2009) deduced a linear state space model for the climbing motion of a spherical robot and presented a LQR controller to regulate the rolling velocity of the robot. As the control development was based on the linear dynamical system obtained by linear zing the nonlinear dynamics governing the climbing motion around a non-equilibrium point, this linear controller possessed poor robustness against systematic parameter perturbations and external disturbances.
According to the above review, stable control of spherical robots on an inclined plane is still rarely covered and has not been well solved, although it plays an important role in many practical exploring applications. This study focuses on practical solutions for stabilization and control of pendulum-driven spherical robots like BYQ-VIII on an inclined plane. BYQ-VIII is a novel spherical robot using a pendulumbased design and the structure of the robot is shown in Fig. 1. The spherical robot has the internal driving unit mounted inside the spherical shell. The steering motion of the robot is controlled by tilting the pendulum and the driving motion is realized by swinging the pendulum indirectly through the internal gimbal. The main contributions of this study include two parts. Firstly, the planar dynamics of the spherical robot on an inclined plane are derived and a variable structure controller is proposed for set point regulation of the planar motion. Secondly, the three-dimensional dynamics of the spherical robot on an inclined plane are deduced and a tracking control algorithm is presented for stabilizing the robot to track a desired trajectory on the inclined plane.

PLANAR DYNAMICS AND CONTROL
Planar dynamics: The robotic system can be greatly simplified by taking advantage of its inherent geometric symmetry. By only considering the performance within the plane of the rolling ahead motion, we can remove the non holonomic constraints normally associated with a rolling sphere. We further reduce complexity by imposing constraint conditions of no slip and no bounce. In order to leave some generality, we assume the planar model to be rolling on an arbitrary incline of  degrees. The idealized planar model for the spherical mobile robot is shown in Fig. 2 and the definition of the model parameters is listed in Table 1.
We assume that the mass of the pendulum link is negligible relative to the shell and eccentric mass and we also model the eccentric mass as a point instead of a rigid body. We impose the assumptions to reduce the system to two coordinates:  for sphere rotation angle and  for pendulum swing angle. Using the Lagrange equations, the dynamics of the planar motion of the spherical robot can be described as: where,  Considering the dynamic equations in (1), two states of equilibrium can be easily derived. Firstly, consider the case in which the robot sits stationary on the slope. In this case, all angular velocities and accelerations reduce to zero. When we enforce this condition upon (1), they reduce to: where, we use the notation that  0 denotes the equilibrium value of . It stands to reason that there exists a limiting value of the slope  after which the robot will be incapable of holding its position. To determine this operational boundary we solve for  o in the above equation. The resulting solution is: Clearly,  must be bounded above and below to ensure an inverse sine operand less than unity: The bounds associated with (4) correspond to stable node bifurcations at which the equilibrium solutions coalesce and disappear. This phenomenon is associated with the dynamic condition of whirling in which the robot unsuccessfully attempts to either remain stationary or climb the slope. The second equilibrium condition can be defined by assuming that the robot maintains a constant velocity over constant slope terrain. This condition can also be satisfied by setting 0. When this condition is enforced upon (1), we can find the equilibrium pendulum angle continues to satisfy (3).
Control design: Consider the following coupling nonlinear systems which can be divided into two subsystems as follows: are nonlinear functions and u is the control input. Then we construct the following linear functions as sliding surfaces for the two subsystems (Lo and Kuo, 1998): where, C 1 and C 2 are positive constants.
We define an intermediate variable Z, which represents the information from subsystem A and incorporate it into s 2 . Therefore, the sliding surface s 2 can be modified as (Lin and Chin, 2006): Here the intermediate variable Z is related to S 1 . For decoupling control, we define Z as: where, Z U : The upper bound of abc(z), 0<Z U <1  z : A positive constant tanh(.) : The hyperbolic tangent function defined as follows: Since Z U is less than one, Z presents a decaying signal. As S 1 decreases, z decreases too. When S 1  0, we have z  0, x 3  0 and then S 2  0 and the control objective is achieved. Differentiating (8), Z . can be calculated as: where, Differentiating (7) and using (10), we can calculate as: The equivalent control U eq can be obtained from = 0, i.e., We further assume the control input u to take the following form: Here u sw is the switching control. In order to construct u sw , we define a Lyapunov function as V = ½ s 2 2 . Using (11) and (13), we can obtain as: We choose the switching control u sw as follows: where,  and k are positive constants.
Theorem 1: Suppose that the system (5) is controlled by the control input described in (12), (13) and (15), then the sliding surface S 2 is asymptomatically stable.

THREE-DIMENSIONAL DYNAMICS AND CONTROL
Kinematic analysis: We assign four coordinate frames. Let ∑ o XYZ be a fixed inertial frame whose XY plane is anchored to the surface of the inclined plane and Z is the vertical position to the surface. Let ∑ B X b Y b Z b be the body coordinate frame whose origin is located at the center of the sphere B. Let ∑ C X c Y c Z c be the internal gimbal coordinate frame, whose center is located at the center of mass of the internal gimbal C. Note that Z c is always parallel to Z b . Let ∑ D X d Y d Z d be the pendulum coordinate frame, whose center is located at point D.
Note that Y d is always parallel to Y c . The variable definition of the robot model is listed in Table 2 and the coordinate system configuration of the robot is shown in Fig. 3.
Let (I, j, k) and (l, m, n) be the unit vectors of the coordinate frames ∑ O and ∑ B respectively. Then the transformation between the two coordinate frames is given by: where, sin(a) and cos(a) are denoted by S a and C a respectively in the remainder of this study and the subscripts represent the angles of the trigonometry. We define v A and ω to denote the velocity and angular velocity of the center of mass of the spherical shell with respect to the inertia frame ∑ O . Then we have: The constraints result from the requirement that the sphere rolls without slipping on the inclined plane, i.e., the velocity of the contact point on the sphere is zero at any instant, v E = 0. Then we can express v A as: Here r BE = -rk. Substituting (20) into (21) gives: The constraints in (22) and (23) are nonholonomic, while the constraint in (24) is holonomic and can be integrated to obtain: Therefore, the configuration of the robotic system can be described by a vector of seven generalized coordinates q = [xs, ys, , , ,  1 ,  2 ] T .

Dynamic model:
We define  s to denote the angular velocity of the spherical shell with respect to ∑ B . Then we have: The kinetic energy of the spherical shell is given by: Substituting (24) and (26) into (27), T s is obtained. The potential energy of the spherical shell is: Then the Lagrangian of the spherical shell is: The center of mass of the internal gimbal coincides with that of the sphere, i.e.: We define  i to denote the angular velocity of the internal gimbal with respect to ∑ C . Then we have: where, R C B is the transformation from ∑ C to ∑ B . Differentiating (30) and using (31), the kinetic energy of the internal gimbal is given by: The potential energy of the internal gimbal is: Then the Lagrangian of the internal gimbal is: The transformation from the center of mass of the sphere to that of the pendulum can be described as: where, is the transformation from ∑ O to ∑ D , is the transformation from ∑ B to ∑ C and is the transformation from ∑ C too ∑ D . Differentiating (35) and we can obtain the kinetic energy for the pendulum as: where, ∈ , , ∈ are the inertia matrix and nonlinear terms, respectively: The nonholonomic constraints can be formed as: We define and consider the following relation: where, q 1 = [x s , y s ] T , q 2 = [, , ,  1 ,  2 ] T . Differentiating (43) yields: Substituting (43) and (44) into (40) and pre multiplying both sides by C T (q) gives: Using the state variable x = [q T , v T ] T , we have: where, We apply the following nonlinear feedback: The state equation simplifies to the form: where, The nonholonomic system in (48) is input-output linearizable if a proper set of output equations are chosen. Consider the following output equations: The necessary and sufficient condition for inputoutput linearization is that the decoupling matrix has full rank (Nijmeijer and Van Der Shaft, 1990). With (49), the decoupling matrix (q) for the system is: where, Jh (q) = ∂h/∂q is the Jacobean matrix? To achieve input-output linearization, we introduce a new state variable z defined as follows: Here is a vector function such that has full rank. It is easy to verify that T(x) is indeed a diffeomorphism. The system under the new state variable z is characterized by: Using the following state feedback: We achieve the input-output linearization as: The zero dynamics of the system is 0 (Slotine and Li, 1991), which is Lagrange stable.
We choose the following output equations for trajectory tracking of the three-dimensional motion: Applying the nonlinear feedback in (53), we can obtain a linear zed and decoupled system in the following form: Here x d and y d are desired values for x s and y s respectively. To stabilize the system in (56) and achieve desired performance, an outer linear feedback loop is designed to place the poles of the system: Here and are desired values for and respectively. The gains k i (i = 1, 2, 3, 4) are real positive constants and are properly chosen to make the following dynamics exponentially stable:

SIMULATION STUDY
Planar motion: We apply the decoupled sliding mode control scheme to the spherical robot to demonstrate its effectiveness. Defining the system state variable x as , , , and the control input u as u = , we can convert the planar dynamics of the robotic system in (1) into the canonical form described by (5) through coordinate transformation. Here: The robot model parameters are selected from Wang (2007) and the controller design parameters are listed in Table 3. We assume the robot to execute a restto-rest maneuver on an incline of 10°. The initial and desired values of the system states are chosen as x 0 = [0, 0,  o , 0] T , x d = [10, 0,  o , 0 ] T respectively. Here  o is the equilibrium pendulum angle defined in (3).
The tracking result of the proposed controller is shown in Fig. 4. We can find that not only the rotation angle of the sphere but also the swing angle of the pendulum can reach their desired values in a short time. Before the robot reaches its desired position, the pendulum angle has already converged to its equilibrium value only after one oscillation. Three-dimensional motion: We develop a numerical simulation to verify the validity of the trajectory tracking control algorithm. The proposed controller is used for the robot to track a straight line y = x on an incline of 10°. The dimensions and inertial parameters of the robot are also selected from Wang et al. (2007). In addition, the initial conditions and control parameters are chosen as listed in Table 4. The tracking performance of the proposed control scheme with different desired forward velocities v f is depicted in Fig. 5 and the controller gains k i (i = 1, 2, 3, 4) remain the same in all these cases. The system response for the desired path is satisfactory as seen from the figure and the robot is able to reach the desired path and stay on the path.

CONCLUSION
In this study, we discuss the stabilization and control problems of a spherical robot on an inclined plane. At first the set point regulation of the planar motion is investigated and a decoupled sliding mode control method is proposed to strictly guarantee the asymptotic stability of the control system. Then we investigate the control algorithm for trajectory tracking of the three-dimensional motion and derive a nonlinear feedback that guarantees input-output stability and Lagrange stability of the overall system. Finally, the simulation results verify the effectiveness of the proposed control schemes. Future research on the proposed methods includes real experiments on the prototype of BYQ-VIII and the generalization of these methods to the motion control of the robot in complex unstructured environments.