Wei LI, Qiang ZHAN
a Robotics Institute, Beihang University, Beijing 100083, China
b Ecole Centrale de Pe′kin, Beihang University, Beijing 100083, China
KEYWORDS Kinematics;Lyapunov methods;Neurodynamics;Nonholonomic systems;Spherical mobile robot;Trajectory tracking
Abstract Spherical mobile robot has compact structure,remarkable stability,and f lexible motion,which make it have many advantages over traditional mobile robots when applied in those unmanned environments,such as outer planets.However,spherical mobile robot is a special highly under-actuated nonholonomic system,which cannot be transformed to the classic chained form.At present,there has not been a kinematics-based trajectory tracking controller which could track both the position states and the attitude states of a spherical mobile robot. In this paper, the four-state(two position states and two attitude states)trajectory tracking control of a type of spherical mobile robot driven by a 2-DOF pendulum was studied.A controller based on the shunting model of neurodynamics and the kinematic model was deduced, and its stability was demonstrated with Lyapunov's direct method. The control priorities of the four states were allocated according to the magnif ication of each state tracking error in order to f irstly ensure the correct tracking of the position states.The outputs(motor speeds)of the controller were regulated according to the maximum speeds and the maximum accelerations of the actuation motors in order to solve the speed jump problem caused by initial state errors, and continuous and bounded outputs were obtained. The effectiveness including the anti-interference ability of the proposed trajectory tracking controller was verif ied through MATLAB simulations.
Spherical mobile robot (spherical robot in short) is a fully enclosed robot which envelopes all its mechanisms, control system, and batteries in a ball-shaped outer shell. Spherical robot has very compact structure and f lexible motion, for example, it can move freely in a narrow tunnel a little bigger than its diameter. Especially, it has remarkable stability as a roly-poly, and even when it collides with obstacles or falls down from a high place, it can regain balance soon. Those characteristics make spherical robot very suitable to land and work in those unmanned environments such as outer planets.It is well known that landing and moving on outer planets are very tricky problems for a traditional wheeled robot,because it needs to land and move on smooth surfaces to avoid turnover. Once the robot turns over, it cannot continue its motion and work until other robots or astronauts come to provide assistance.
From the view point of control,spherical robot is a special type of nonholonomic system which cannot be converted to chained form,1and hence nonholonomic control methods developed for chained system cannot be applied to control spherical robot, so new methods are needed. Furthermore,spherical robot is a highly under-actuated system which can use only two control inputs to realize f ive position and pose states. The rolling control of a sphere on a plane has been investigated before the control of spherical robots. Li and Canny2proposed a theoretical algorithm for path planning between two conf igurations of a sphere with rolling constraint,but it cannot be applied to spherical robot.Because a sphere in geometry can roll along any axis passing through its center at any time, but spherical robots can only roll in certain directions at a specif ic moment because of the limit of the internal mechanism and the nonholonomic constraint.
Previous research on the motion control of spherical robots can be divided into two types: open-loop control and closedloop control. Open-loop control is often used to validate the mathematical model of spherical robot or test the robot's motion performance. Halme, et al.3established a dynamic model for the rolling-ahead motion of a spherical robot, and open-loop control was used without considering its nonholonomic characteristics. Zhan, et al.4deduced a dynamic model of a spherical robot with the Lagrange method and used open-loop control to test its motion performance. Tomik,et al.5fabricated a spherical robot moving on a plane, and the position was open-loop controlled. Open-loop control was also used in Refs.6-9to validate the model or test the motion performance of spherical robots. For spherical robot SPHERICLE, Bicchi, et al.10developed its kinematic model,demonstrated its complete controllability, and discussed its motion planning on a plane. A simplif ied planar dynamic model was also established,but they did not propose any feedback controller. Joshi, et al.11,12deduced a simple path planning algorithm for a spherical robot, and its kinematic model was established with Euler parameters,while its controllability was demonstrated with Chow's Theorem. Morinaga,et al.13proposed a strategy composed of two trivial and one nontrivial maneuvers to solve the motion planning problem of a spherical robot actuated by two rotors placed on two orthogonal axes. Mukherjee, et al.14presented two motion planning strategies for the reconf iguration of a spherical robot,and used the open-loop control approach to complete the motion. Javadi and Mojabi15established a dynamic model of a spherical robot,and open-loop control was also used to complete the motion. However, open-loop control cannot eliminate the inf luence of external interference. Hence, closedloop control is needed for precise control of spherical robots.
The closed-loop control problem of spherical robot includes such branches as point stabilization, path following,and trajectory tracking, which have been extensively investigated by researchers in the past. Otani, et al.16considered the point stabilization problem of a spherical robot with a novel driving mechanism equipped with a gyro. Two feedback controllers were proposed to stabilize the position and attitude of the spherical robot to desired values.One controller was based on kinematics,and the other on dynamics.The point stabilization problem was also investigated in Refs.17-19. Point stabilization control can make a robot reach the target point from the initial point and maintain stability, but it cannot control the motion of the robot.
Path following and trajectory tracking are the basis of the motion control of spherical robots. Zheng, et al.20designed a controller for the path following of spherical robot BHQ-1,which was divided to two steps:f irstly select the desired velocity from its kinematics model, and then transform the velocity to torque based on dynamics. This controller can deal with paths with changing curvature and jump discontinuities.Focusing on the simultaneous converges of position and pose,Cai,et al.21proposed a real-time fuzzy guidance scheme for the path following control of spherical robot BHQ-1. However,they did not take trajectory tracking problems into account.Compared with trajectory tracking control, path following control only ensures that a robot's position can reach the desired path after stabilization and move along that path.
Trajectory tracking has been studied in Refs.18,22-28. Urakubo, et al.22deduced a dynamic model for a spherical robot and designed a feedback controller to make the robot move along a straight line. The controller could make the angular velocity of the spherical robot track desired values. Hence,the robot could complete the expected movement by designing the desired value of the angular velocity. Kayacan, et al.23established highly coupled motion equations of a spherical robot based on kinematics and dynamics using the Euler-Lagrange method. The equations were simplif ied by decoupling the rolling motion around both the transversal and longitudinal axes. Then, a closed-loop controller was designed to make the robot roll over linear and curvilinear trajectories.Kayacan, et al.24proposed a neuro-fuzzy controller combined with a learning algorithm for the velocity control of a spherical robot,but the robot was simplif ied to a 2D circle because only the rolling-ahead motion was considered. Roozegar, et al.25also used a simplif ied 2D model to study the motion control of a spherical robot on an inclined plane. The proposed controller was based on dynamics and synthesized by a fuzzy controller and a PID controller, which could make the robot go uphill, downhill, or stabilize at a specif ied point. In order to solve the trajectory tracking problem of spherical robot BHQ-2, Zhan, et al.26established its dynamic model with a simplif ied Boltzmann-Hamel equation and designed a trajectory tracking controller using the back-stepping method.Two position states and one attitude state could be tracked by the controller. Cai, et al.27proposed a control method based on the kinematic model of spherical robot BHQ-1 to solve the two-state trajectory tracking problem, but only the position of the robot could be controlled. Muralidharan,et al.18established a smooth global trajectory tracking control law for the position variables of a spherical robot,and simulation results showed that the robot could converge to the desired trajectory. Yu, et al.28investigated the dynamics and control of spherical robot BYQ-VIII rolling on an inclined plane. A decoupled sliding-mode control approach based on the Lyapunov stability theorem was proposed for stable control of the planar motion, and a trajectory control algorithm only for position was developed.
Trajectory tracking control plays an important role in the practical applications of spherical robot,because it is the basis to independently implement tasks in unmanned environments.Since the inside equipment (such as cameras) of the robot needs a stable platform,it is very important to control the pose of the robot when it tracks a desired trajectory. Trajectory tracking controllers proposed in Refs.18,23,27can only track the position states, but the attitude states are not controlled.When a robot moves along a desired path, if it swings with a big amplitude, it is not acceptable for practical applications.Refs.22,26,28took the control of pose into account, but controllers were based on dynamic models. Dynamic model depends on the structure of a robot, and thus it is diff icult to apply a controller based on dynamic model to other spherical robots with different models or structures. However, a controller based on kinematic model has generality and can be used by other spherical robots with different structures or models.To the best of our knowledge,there has not been a trajectory tracking controller based on the kinematic model of a spherical robot that can track both the position and attitude states.
In this paper, a four-state trajectory tracking controller based on the kinematic model of a type of spherical robot driven by a 2-DOF pendulum (Fig. 1) is proposed to track two position states and two attitude states simultaneously. The remainder of the paper is structured as follows. In Section 2,the structure and the kinematic model of a type of spherical robot driven by a 2-DOF pendulum are presented.In Section 3,a novel controller for four-state tracking control based on the shunting model is proposed,and its Lyapunov stability is analyzed.Simulation results for both linear and circular trajectory tracking are provided in Section 4.In Section 5,conclusions of the paper are given.
Pendulum-driven spherical robot is a typical spherical mobile robot actuated by a 2-DOF pendulum. As illustrated in Fig. 1, a pendulum-driven spherical robot usually has two motors and a heavy pendulum attached to the horizontal shaft of the robot by a link. One motor can drive the pendulum rotate around axis Xbso as to make the robot move forward or backward by the gravity torque. Another motor can make the pendulum rotate around axis Yb,and the motion combination of the two motors can make the robot veer.Therefore,the motion of the pendulum-driven spherical robot can be realized by the control of two motors.
Fig. 1 Structure of pendulum-driven spherical robot.
The kinematics of a pendulum-driven spherical robot can be modeled on the basis of the following assumptions: (i) the spherical shell is rigid, and the thickness can be neglected;(ii) the spherical robot rolls without slipping on a plane; (iii)rotations of the spherical robot around the vertical axis are ignored.
The ZYX Euler angle is used to describe the pose of the spherical robot as illustrated in Fig. 2. There are three righthand coordinate frames: OXYZ, O′X′Y′Z′, and ObXbYbZb,which respectively correspond to the reference frame, the frame f ixed to the geometrical center of the spherical robot and parallel to the reference frame, and the frame f ixed on the shell of the robot.
Suppose that the ZYX Euler angle is denoted by (ψ, β, φ)and the position of the spherical robot is denoted by the position of its geometric center (x, y). Then, the spherical robot's conf iguration can be described by a vector p, p=[x, y, ψ, β,φ]T. The kinematic model is expressed as
where J is the Jacobian matrix, u is the actuation velocity of the spherical robot, and u=. The Jacobian matrix can be deduced as
where R is the radius of the spherical robot.
It is worth noting that there is a singularity problem in the system. When the attitude angle β reaches π/2 or -π/2, the horizontal shaft will be perpendicular to the ground. At that time,the robot will rotate like a gyroscope,but it cannot move forward.However,angle β of a real robot cannot reach π/2 or-π/2 due to the dimension limit of the horizontal shaft. Thus we limit the range of β in the kinematic model to(-π/2,π/2)to avoid the singularity problem.
Fig. 2 Euler angles and coordinate frames of BHQ-1.
In this section,we propose a four-state trajectory tracking controller for pendulum-driven spherical robot based on Lyapunov's direct method and a biological neurodynamic model,shunting model.
In 1952, Hodgkin and Huxley29proposed a biological neuron model (H-H model), which is an electrical input-output membrane voltage model. On the basis of the H-H model, Grossberg30developed the shunting model that can be described by
where ζ is the neural activity, f(t) and g(t) are the excitatory input and inhibitory input of the neuron, respectively, A is the passive decay rate, and B and D are respectively the upper and lower bounds of the neural activity. Moreover, A, B, and D are all nonnegative constants.
Among the f ive states of a spherical robot,φ represents the roll angle when the robot moves.In tracking control,it is the least important state. Therefore, four of the f ive states are chosen for the trajectory tracking control of the pendulum-driven spherical robot. The four-state trajectory tracking problem can be described by
where
Therefore, the tracking error is got as
For the four states to be controlled, we set the trajectory tracking priorities to them in order to ensure that the spherical robot moves at least along the correct path, that is to say, the control of ψ and β is below the control of x and y.This priority allocation is achieved by the magnif ication of each state error.The tracking error after the magnif ication is given as
where F is the magnif ication matrix def ined as
The schematic diagram of the real-time four-state trajectory tracking control process is given in Fig. 3, which contains a control law using the shunting model based on the kinematic model of the pendulum-driven spherical robot.
The control law to deal with the four-state trajectory tracking is proposed as
where G+denotes the generalized inverse of matrix G, and Vs=[Vsx, Vsy, Vsψ, Vsβ]Tis the function of the shunting model, which is described as
where f and g are two functions def ined as
In order to analyze the Lyapunov stability of the control law,the following Lyapunov function candidate is considered:
where Γ is a positive def inite function, and Γ ≥0. Thus, the time derivative of Γ can be written as
Fig. 3 Proposed controller scheme for pendulum-driven spherical robot.
The f irst term of the above function can be calculated as
Substituting the control law u in Eq. (9) to Eq. (16), we obtain
The second term of Eq. (15) can be calculated under the assumption of B=D as the following:
Therefore, we f inally obtain the expression of Eq. (15) as
Functions f and g are def ined as
and when Ex<0, we have
Therefore, the system with the novel control law is stable according to the Lyapunov stability theory, because the time derivative of the Lyapunov function candidate Γ is nonpositive.
The generated control signals still cannot be directly applied to control the motors, because the rotations of the motors have the limitations of maximum angular velocity and maximum angular acceleration, and the angular velocities of the motors should be continuous. In order to solve the speed jump problem caused by an initial state error, we utilize several limit functions to restrict the control signals.
For the control system,assuming the sampling period is Δt,we can get a discrete time sequence as
where
The real control signal for motor 1 at time tican be described as
Similarly, we can get the real control signal for motor 2 at time tias
In this section, simulation results implemented by MATLAB are provided to verify the effectiveness of the controller. We take two typical trajectories into account: a linear trajectory and a circular trajectory.
We def ine the linear path as
and the four states to be tracked as
For a clear observation of the eff iciency of the control law,the initial conf iguration of the robot is set as
which is deviated from the desired trajectory.
There are seven parameters to be def ined: three for the shunting model (A, B, and D) and four for the magnif ication matrix of state errors (fx, fy, fψ, and fβ). The parameters in the shunting model can be chosen in a wide range according to the characteristics of the shunting model, which are chosen as
On the basis of those parameters, an optimization algorithm is proposed to f ind the best choice of the magnif ication matrix. Since ensuring the correctness of the path is the most important task for trajectory tracking, we def ine the optimal function as the mean of the distance between the actual path and the expected path, that is,
In order to speed up the optimization calculation, we only consider the following constraints and value ranges of the four factors:
However, we should consider not only the average error between the expected path and the actual path, but also other factors, such as the maximum error, the smoothness, and the stability of the function curves for every state. Based on the results of the optimization function, we have tested multiple sets of data, and f inally selected the following parameters:
Trajectory tracking simulation results are shown in Fig. 4,where the desired trajectory is represented by circles, the real trajectory is represented by a solid line,and the initial position is represented by an asterisk. Fig. 5 shows the tracking errors of the four states. Fig. 6 shows the simulation results of the angular velocities of the two motors. The tracking error of the position is shown in Fig. 7, which is calculated by
Fig. 4 Tracking a linear trajectory.
Fig. 5 Tracking errors for a linear trajectory.
Fig. 6 Motors' speeds for a linear trajectory.
Fig. 7 Tracking error of the position for a linear trajectory.
Fig. 8 State φ for a linear trajectory.
As demonstrated in Figs. 4 and 5, the robot converges to the desired trajectory, and the tracking errors are all convergent toward a quasi-stable state around zero. The range of variation is small in terms of practical applications, especially for x and y.
In Fig.6,the continuity of the angular velocities of the two motors can be observed. The tracking error of the position of the robot is less than 3.5 cm, which can be observed in Fig. 7.Moreover, we can see from Fig. 8 that the attitude angle φ is also well controlled,and the robot moves steadily,because this state is coupled with other well-controlled states.
We def ined the circular path as
and the four states as
Fig. 9 Tracking a circular trajectory.
Fig. 10 Tracking errors for a circular trajectory.
where Rpathis the radius of the desired circular trajectory.The initial conf iguration of the robot is set to deviate from the desired trajectory as the following in order to clearly observe the eff iciency of the control law:
In the same way of linear trajectory tracking, we f inally def ined the parameters as follows:
Fig. 11 Motors' speeds for a circular trajectory.
Fig. 12 Tracking error of the position for a circular trajectory.
Fig. 13 State φ for a circular trajectory.
Fig. 14 Tracking errors for a linear trajectory with interference.
The results of the trajectory tracking simulation are shown in Fig.9,where the desired trajectory is represented by circles,the real trajectory is represented by a solid line,and the initial position is represented by an asterisk.Fig.10 shows the tracking errors of the four states. Fig. 11 shows the simulation results of the angular velocities of the two motors. The tracking error of the position is shown in Fig. 12. As explained in Section 3.2,Fig.13 shows that the attitude angle φ is well controlled to make the robot move forward steadily.
As demonstrated in Figs. 8 and 9, the robot converges to the desired trajectory, and the tracking errors are all convergent toward a quasi-stable state around zero. The range of variation is small in terms of practical applications, especially for x, y, and β. From Fig. 10, the continuity of the angular velocities of the two motors can be observed. The tracking error of the position of the robot is less than 3 cm, which can be observed in Fig. 11.
Fig. 15 Tracking errors for a circular trajectory with interference.
From the above simulation results, it can be found that the proposed controller can be used to track both a linear trajectory and a circular trajectory. In order to test the antiinterference ability of the controller,we add noise to the tracking errors fed back to the controller as the following:
where δ follows a normal distribution with an average of 0 and a standard deviation of 0.1. Simulations of the controller's inputs with noise are implemented for both linear and circular trajectory tracking, and the tracking errors of the four states are shown in Fig. 14 and Fig. 15, respectively. It can be observed that the tracking errors can still be kept in the same range no matter there's noise or not in the controller's inputs by comparing Fig. 5 and Fig. 10 with Fig. 14 and Fig. 15,respectively.
Moreover,because the controller is based on kinematics, it could be applied to the control of other spherical robots with different structures or different kinematic models.
(1) This paper proposed a four-state trajectory tracking controller for a type of spherical robot driven by a 2-DOF pendulum based on its kinematic model and shunting model with two position states and two attitude states being tracked simultaneously. The stability of the control law was demonstrated with Lyapunov's direct method. For the four states controlled, in order to ensure that the control of ψ and β is under the control of x and y,a priority matrix was def ined to f irstly ensure the correctness of the position. Simulation results for tracking both a linear trajectory and a circular trajectory verif ied the effectiveness of the proposed controller.
(2) The speed jump problem of the controller caused by initial state errors was solved.The outputs of the controller can change suddenly under the effect of initial state errors, so they cannot be used directly to control the motors.According to the maximum speeds and the maximum accelerations of the actuation motors,the outputs of the controller were regulated, and continuous and bounded outputs were obtained.
(3) The anti-interference ability of the proposed controller was verif ied by simulations.Simulation results showed that the trajectory tracking errors could be kept in the same range after noise being added to the controller's inputs.
CHINESE JOURNAL OF AERONAUTICS2019年6期