# Steering Control Method for an Underactuated Unicycle Robot Based on Dynamic Model

Authors: Hongzhe Jin; Yang Zhang; Hui Zhang; Zhangxing Liu; Yubin Liu; Yanhe Zhu; Jie Zhao
Journal: Mathematical Problems in Engineering
 (2018)

---

## Abstract

This paper proposes a lateral balancing structure based on precession effect of double-gyroscopes and its associated control strategy of the steering for an underactuated unicycle robot. Double-gyroscopes are symmetrically designed on the top of the unicycle robot and utilized to adjust the lateral balance of system. Such design can inhibit the disturbance of the gyroscope system to the pitch angle and is beneficial to maintain the lateral balance in the case of large roll angle fluctuations. Based on the analysis of the dynamics model, the gyroscope precession effects will be caused by the angular velocity of the bottom wheel and the roll angular velocity, i.e., resulting in a torque in the direction of the yaw. Then, a rapid response control strategy is proposed to use the torque to control the steering. Simulation results demonstrate the rationality of the lateral balance structure and the feasibility of the steering control method.


---

## Body

## 1. Introduction

Mobile robots, consisting of sensors and automatically mobile vehicle, are more flexible than other robots. So they are fitted to be used at inaccessible and harmful for people working environment. As one kind of mobile robot, unicycle robots are more flexible due to the single point contact of wheel of robot and ground. Therefore, the unicycle robot has the potential of free movement and moving at narrow spaces.In most studies of unicycle robot, lateral balance has been emphasized with attention. According to the lateral balance methods, the unicycle robot can be classified into horizontal flywheel [1–6], vertical flywheel [7–13], high-speed gyros named Gyrover [14–19] and gyro precession with two gyroscopes [20, 21]. However, most of researches focus on balance control and neglect control of steering. If unicycle robot has steering control, it could realize target tracking and avoid obstacles. Some researchers already started to develop steering control method of the unicycle robot. Y. Isomi and S. Majima proposed a method to control unicycle robot’s yaw without direct force for changing the yaw [22, 23]. They derived the dynamics equation of unicycle robot and showed the yaw rate depends on the angular velocity of wheel and the roll angle. Through combining the solved equation of equilibrium state and Kanayama’s tracking control method, it was proposed that the unicycle robot can track a target trajectory by this control method. In their simulation, it was confirmed that their control method can help unicycle robot obtain desired yaw rate. Gong Daoxiong and Li Xinghui also present the unicycle robot’s yaw rate depending on the roll angle and the angular velocity of the wheel [24]. Through dynamics equation they proposed the theory. Then, they set the roll angle and angular velocity of the wheel to show the rate of the yaw direction achieved in simulation. Zhu Xiao Qing et al. added a horizontal flywheel between vertical flywheel and wheel of the unicycle robot [16, 25]. This unicycle robot uses the horizontal flywheel to control yaw angle with LQR controller.The existing steering control methods for unicycle robot are mainly divided into two categories. One method appended a horizontal flywheel mechanism for yaw angle control. However, the appended horizontal flywheel not only increases the weight of the unicycle robot but also makes the mechanism of unicycle robot complex. For the dynamics and control of the unicycle robot, appended horizontal flywheel will increase the complexity of its dynamic model and disturb the pitch and roll angles because of dynamics coupling. Another method used the dynamics coupling between the roll and yaw angles of the unicycle robot to realize steering control. Nevertheless, roll angle of the unicycle robot is too tiny for steady remaining and to reach a quick response in steering control.This paper proposes a steering control method by regulating the roll angular velocity. According to the gyro precession effect, if a gyroscope has a spinning velocity and gets a precession angular velocity, there will be a gyroscopic torque by the right-hand rule. The steering control method in this paper regards the bottom wheel as a gyro and the roll angular velocity of the unicycle robot is regarded as the precession of the gyro. This can produce a precession torque in the direction of yaw. With a fixed bottom wheel speed, the yaw angle can be regulated by controlling the roll angular velocity of the unicycle robot.The differences between the proposed and existing steering control methods for underactuated unicycle robot are as follows. (1) Existing steering control method is based on the vertical flywheel unicycle robot and the steering control method mentioned in the paper is based on precession effect of double-gyroscopes unicycle robot. (2) Existing underactuated steering control method realized steering by controlling the roll angle and the steering control method mentioned in the paper, by controlling the rolling angular velocity, more appropriate according to the dynamic analysis. Also, both of the control methods are simulated and compared in Section5.The rest of the paper is organized as follows. In Section2, equations proving the motion of the unicycle robot are derived. Section 3 analyses the dynamics of pitch, roll, and yaw, respectively. Section 4 shows the control strategies of static and steering. In Section 5, the control strategies are proved by simulation and compared with the existing method. Conclusion and future work are presented on Section 6.


## 2. Model

### 2.1. Unicycle Robot

Figure1 shows the model of unicycle robot. This unicycle robot’s lateral balance is based on gyro precession. This type of unicycle robot has an excellent controllability on its roll angle. It is helpful for controlling angular velocity of roll.Figure 1
3D model of the unicycle robot.The robot is consisting of two gyroscopes, a gyro precession, a frame, and a bottom wheel. The two gyroscopes have the same spinning velocity but their direction is opposite. Also we use one motor to control 2 of gyro precession to keep 2 of gyro precession the same at angular velocity and opposite at direction. It can inhibit the torque causing by gyro precession at pitch angle.Figure2 shows the coordinate system used to describe the posture of unicycle robot. The posture of the robot is given in terms of the roll angle δ, the pitch angle θ, and the yaw angle φ. Table 1 shows the parameters of the unicycle robot.Table 1
Parameters of the unicycle robot.
Symbol Description M W Mass of the wheel M b Mass of the frame M p 1 , M p 2 Mass of precession frame for left and right M 1, M2 Mass of gyroscopes for left and right R W Radius of the wheel L b Distance of frame’s centre of gravity from centre of wheel L p 1, Lp2 Distance of precession frame’s centre of gravity from frame’s centre of gravity for left and right L 1, L2 Distance of gyro’s centre of gravity from precession frame’s centre of gravity for left and right I W x , I W y , I W z Moments of inertia of the wheel’s centre of gravity about the X,Y,Z axes, respectively I b x , I b y , I b z Moments of inertia of frame about the X,Y,Z axes, respectively I p 1 x , I p 1 y , I p 1 z  Ip2x,Ip2y,Ip2z Moments of inertia of precession frame’s centre of gravity about the X,Y,Z axes, respectively for left and right I 1 x , I 1 y , I 1 z  I2x,I2y,I2z Moments of inertia of gyroscopes’ centre of gravity about the X,Y,Z axes, respectively for left and right φ Yaw angle of the robot δ Roll angle of the robot θ Pitch angle of the body ω Rotating angle of the bottom wheel α 1 ,  α2 Precession angle of precession frame for left and right β 1 , β 2 Spinning angle of gyroscopes for left and right τ W Torque of the bottom wheel τ α Torque of precession system τ β Torque of gyroscope systemFigure 2
Structure map of the unicycle robot.


### 2.2. Equations of Motion

The dynamic equations of the wheel are derived by the Euler-Lagrange formulation. The Euler-Lagrange equation is(1)ddt∂L∂q˙-∂L∂q=QThe L in Euler-Lagrange equation is the Lagrangian function. It is defined as(2)L=K-U,where K is the kinetic energy of the unicycle robot. It can be represented as(3)K=Kw+Kb+Kp1+Kp2+K1+K2,where Kw, Kb, Kp1, Kp2, K1, K2 are kinetic energy of wheel center and frame’s centre of gravity, respectively. Kp1, Kp2, K1, K2 are kinetic energy of precession frame’s centre of gravity for left and right. K1, K2 are kinetic energy of gyro’s centre for left and right.U is the potential energy of the unicycle robot. From Figure2, U can be represented as(4)U=Uw+Ub+Up1+Up2+U1+U2.U w is potential energy of wheel centre. Ub is potential energy of frame’s centre of gravity. Up1 and Up2 are potential energy of precession frame’s centre of gravity for left and right. U1 and U2 are potential energy of gyroscopes’ centre for left and right.Q and q are the generalized forces and generalized coordinates, respectively. For the system, q is selected as(5)q=φ,δ,θ,ω,α,βT.Q is given by(6)Q=0,0,0,τω,τα,τβT.In order to simplify the dynamic equations,cx and sx mean cos⁡x and sin⁡x, respectively. Using the Euler-Lagrange equation, the dynamic equation of the system can be given by(7)Mqq¨+Nq˙,q=Q,whereMq∈R6×6 and Nq˙,q∈R6×1 are the inertia matrix and nonlinear term, respectively.(8)(9)N→=n1n2n3n4n5n6TThe dynamic equations of the unicycle robot are far too lengthy to be shown here due to space limitations. Therefore, the reader is referred to in the Appendix. The dynamic equations are complex for control design and they have strong coupling. In order to derive the control strategy of static and steering, we need to simplify the model. According to the steady motion characters of unicycle robot, the dynamic equations of the system are decoupled and simplified to three parts. They are pitch dynamics, roll dynamics, and yaw dynamics, respectively.


## 2.1. Unicycle Robot

Figure1 shows the model of unicycle robot. This unicycle robot’s lateral balance is based on gyro precession. This type of unicycle robot has an excellent controllability on its roll angle. It is helpful for controlling angular velocity of roll.Figure 1
3D model of the unicycle robot.The robot is consisting of two gyroscopes, a gyro precession, a frame, and a bottom wheel. The two gyroscopes have the same spinning velocity but their direction is opposite. Also we use one motor to control 2 of gyro precession to keep 2 of gyro precession the same at angular velocity and opposite at direction. It can inhibit the torque causing by gyro precession at pitch angle.Figure2 shows the coordinate system used to describe the posture of unicycle robot. The posture of the robot is given in terms of the roll angle δ, the pitch angle θ, and the yaw angle φ. Table 1 shows the parameters of the unicycle robot.Table 1
Parameters of the unicycle robot.
Symbol Description M W Mass of the wheel M b Mass of the frame M p 1 , M p 2 Mass of precession frame for left and right M 1, M2 Mass of gyroscopes for left and right R W Radius of the wheel L b Distance of frame’s centre of gravity from centre of wheel L p 1, Lp2 Distance of precession frame’s centre of gravity from frame’s centre of gravity for left and right L 1, L2 Distance of gyro’s centre of gravity from precession frame’s centre of gravity for left and right I W x , I W y , I W z Moments of inertia of the wheel’s centre of gravity about the X,Y,Z axes, respectively I b x , I b y , I b z Moments of inertia of frame about the X,Y,Z axes, respectively I p 1 x , I p 1 y , I p 1 z  Ip2x,Ip2y,Ip2z Moments of inertia of precession frame’s centre of gravity about the X,Y,Z axes, respectively for left and right I 1 x , I 1 y , I 1 z  I2x,I2y,I2z Moments of inertia of gyroscopes’ centre of gravity about the X,Y,Z axes, respectively for left and right φ Yaw angle of the robot δ Roll angle of the robot θ Pitch angle of the body ω Rotating angle of the bottom wheel α 1 ,  α2 Precession angle of precession frame for left and right β 1 , β 2 Spinning angle of gyroscopes for left and right τ W Torque of the bottom wheel τ α Torque of precession system τ β Torque of gyroscope systemFigure 2
Structure map of the unicycle robot.


## 2.2. Equations of Motion

The dynamic equations of the wheel are derived by the Euler-Lagrange formulation. The Euler-Lagrange equation is(1)ddt∂L∂q˙-∂L∂q=QThe L in Euler-Lagrange equation is the Lagrangian function. It is defined as(2)L=K-U,where K is the kinetic energy of the unicycle robot. It can be represented as(3)K=Kw+Kb+Kp1+Kp2+K1+K2,where Kw, Kb, Kp1, Kp2, K1, K2 are kinetic energy of wheel center and frame’s centre of gravity, respectively. Kp1, Kp2, K1, K2 are kinetic energy of precession frame’s centre of gravity for left and right. K1, K2 are kinetic energy of gyro’s centre for left and right.U is the potential energy of the unicycle robot. From Figure2, U can be represented as(4)U=Uw+Ub+Up1+Up2+U1+U2.U w is potential energy of wheel centre. Ub is potential energy of frame’s centre of gravity. Up1 and Up2 are potential energy of precession frame’s centre of gravity for left and right. U1 and U2 are potential energy of gyroscopes’ centre for left and right.Q and q are the generalized forces and generalized coordinates, respectively. For the system, q is selected as(5)q=φ,δ,θ,ω,α,βT.Q is given by(6)Q=0,0,0,τω,τα,τβT.In order to simplify the dynamic equations,cx and sx mean cos⁡x and sin⁡x, respectively. Using the Euler-Lagrange equation, the dynamic equation of the system can be given by(7)Mqq¨+Nq˙,q=Q,whereMq∈R6×6 and Nq˙,q∈R6×1 are the inertia matrix and nonlinear term, respectively.(8)(9)N→=n1n2n3n4n5n6TThe dynamic equations of the unicycle robot are far too lengthy to be shown here due to space limitations. Therefore, the reader is referred to in the Appendix. The dynamic equations are complex for control design and they have strong coupling. In order to derive the control strategy of static and steering, we need to simplify the model. According to the steady motion characters of unicycle robot, the dynamic equations of the system are decoupled and simplified to three parts. They are pitch dynamics, roll dynamics, and yaw dynamics, respectively.


## 3. Analysis on the Dynamics

### 3.1. Dynamic Model for Pitch Axis

The robot frame and the precession system can be seen as a single body, and the pitch dynamic of the system can be regarded as a wheeled inverted pendulum system. Both of roll angle and yaw angle change are small and can be neglected. The dynamic equations for pitch are derived from Lagrange’s equation as follows:(10)ddt∂L∂q˙1-∂L∂q1=Q1,where q1=(θ,ω)T and Q1=0,τωT. According to (10), the state equation for pitch is as follows:(11)m33m34m43m44θ¨ω¨-n3n4=0τω.The coefficients of4sαcαI1x-4sαcαI1z and cθsαI1z are tinier than others. The coefficient of 2s2αI1x+2c2αI1z is far less than l10 and l1. The coefficient of l11+2s2αI1x+2c2αI1z is far less than l2. These coefficients are ignored. So the simplified dynamic equations about pitch angle are as follows:(12)l10θ¨+cθl2ω¨-MbgLb+2Mp1gL+2M1gLsθ=0(13)cθl2θ¨+l1ω¨-θ˙2sθl2=τω.From (12) and (13), the dynamic equations are as follows:(14)θ¨=Bcos⁡θτω+B2cos⁡θsin⁡θθ˙2-CDsin⁡θB2cos2⁡θ-AD(15)ω¨=Aτω+ABsin⁡θθ˙2-BCcos⁡θsin⁡θB2cos2⁡θ-AD,where coefficients are(16)A=l10B=l2C=MbgLb+2Mp1gL+2M1gLD=l1τ ω represents the torque of the bottom wheel. C is the gravity component of unicycle robot for pitch. In order to balance of pitch, the torque of the bottom wheel τω must relate to pitch angle and pitch angular velocity which control the change of pitch angle stable. When the pitch angle tends to zero, the bottom wheel can keep stable. According to the analysis of the dynamics of pitch axis, the design of detailed control strategy is in next section.


### 3.2. Dynamic Model for Roll Axis

The robot’s frame and the bottom wheel can be seen as a single body, and the roll dynamic of the system can be regarded as a gyroscopic precession system. Both changes of pitch angle and yaw angle are small and can be neglected. The dynamic equations for roll are derived from Lagrange’s equation as follows:(17)ddt∂L∂q˙2-∂L∂q2=Q2,where q2=(δ,α,β)T and Q2=0,τα,τβT. According to (17), the state equation for roll is as follows:(18)m220m260m550m260m66δ¨α¨β¨-n2n5n6=0τατβ.The coefficients of4sαcαI1x-4sαcαI1z are tinier than others. The coefficient of 2s2αI1x+2c2αI1z is far less than l5+l6+2l2. The spinning velocity of gyroscopes is constant value, so β¨=0 and τβ≈0. These coefficients are ignored. So the simplified dynamic equations about roll angle are as follows:(19)l5+l6+2l2δ¨+2β˙α˙cαI1z-MwgRW+MbgLb+MbgRW+2Mp1gL+2Mp1gRW+2M1gL+2M1gRWsδ=0(20)I1x+Ip1zα¨-12δ˙24sαcαI1z-2δ˙β˙cαI1z=τα(21)2sαI1zδ¨+2δ˙α˙cαI1z=0.τ α represents the torque of the precession system. β˙α˙ represents gyroscopic precession moment. The coefficient of sδ represents gravity component of roll. According to (19), the gyroscopic moment provides torque to resist unicycle robot’s gravity component of roll. Besides, the unicycle robot gets an angular acceleration of roll. But gyroscopic moment’s coefficient includes cosine precession angle. It means torque of gyroscopic moment is smaller as precession angle is larger. According to the analysis on the dynamics of roll axis, controlling angular velocity of precession is better than torque of the precession system, and the design of detailed control strategy is in next section.


### 3.3. Dynamic Model for Yaw Axis

For the yaw dynamic of the system, assume the change of the pitch is small and can be neglected. The roll angle is small so thatsin⁡δ and cos⁡δ can be approximated to zero and one, respectively. The bottom wheel and gyroscopes get a constant speed. The dynamic equation for yaw is derived from Lagrange’s equation as follows:(22)ddt∂L∂q˙3-∂L∂q3=Q3,where q3=φ and Q3=0. According to (22), the state equation for yaw is as follows:(23)m11φ¨-n1=0.The coefficients of-4sαcαI1x-4sαcαI1z, I1x are tinier than others. So the simplified dynamic equation about yaw angle is as follows:(24)l8+l7φ¨+ω˙δ˙-l1+l2=0.In the equation,ω˙δ˙ is the gyroscopic precession moment of bottom wheel and the unicycle robot’s roll angle. According to the equation, influence factor for yaw angle includes the angular velocity of bottom wheel and the angular velocity of roll. The angular velocity of bottom wheel should hold on a constant value for balancing of pitch angle. Therefore, the steering control strategy is designed about the angular velocity of roll, and the design of detailed control strategy is in next section.Due to the yaw angle coupling to pitch angle and precession angle, the analysis of these 2 angles is necessary in the steering control method. When angular velocities of yaw and the bottom wheel keep stable, the angular velocity of roll will stable to zero and the roll angle is small for being ignored. The dynamic equation for pitch angle is derived as fallows:(25)ddt∂L∂q˙4-∂L∂q4=Q4,where q4=θ and Q4=0. According to (25), the state equation for pitch is as follows:(26)m33θ¨-n3=0.The coefficients of4sαcαI1x-4sαcαI1z and cθsαI1z are tinier than others. The coefficient of 2s2αI1x+2c2αI1z is far less than l10. These coefficients can be ignored. So the simplified dynamic equation is as follows:(27)l10θ¨-12φ˙2-2cθsθl7+2cθsθl8+2cθsθl9-4cθsθI1x-sθMbgLb+2Mp1gL+2M1gL=0.φ ˙ 2 is the centripetal force for yaw angle’s circle. When the unicycle robot has a yaw angular velocity and the change of pitch angle is stable, the dynamic equation is as follows:(28)θ=arcos⁡MbgLb+2Mp1gL+2M1gLφ˙2l7-l8-l9+2I1xIt means centripetal force for yaw angle’s circle also affects pitch angle. When the unicycle robot has a constant yaw angular velocity, the pitch angle is stable at a constant.Similarly, when the angular velocities of yaw and the bottom wheel keep stable, the angular velocity of roll will stable to zero and the roll angle is small for being ignored. Also the change of pitch is stable. The dynamic equation for precession angle is derived as fallows:(29)ddt∂L∂q˙5-∂L∂q5=Q5,where q5=α and Q5=τα. According to (29), the state equation for precession is as follows:(30)m33α¨-n5=τα.So the simplified dynamic equation is as follows:(31)I1x+Ip1zα¨-12φ˙2-4sαcαc2θI1x+4sαcαs2θI1z-2φ˙β˙sθcαI1z=ταφ ˙ 2 is the centripetal force for yaw angle’s circle. When the unicycle robot has a yaw angle velocity and the change of precession angle is stable and the torque of precession is stable at zero, the dynamic equation is as follows:(32)α=arsin⁡φ˙β˙sθI1zφ˙2c2θI1x-s2θI1zIt means centripetal force for yaw angle’s circle also affects precession angle. When the unicycle robot has a constant yaw angle velocity, the precession angle is stable at a constant.


## 3.1. Dynamic Model for Pitch Axis

The robot frame and the precession system can be seen as a single body, and the pitch dynamic of the system can be regarded as a wheeled inverted pendulum system. Both of roll angle and yaw angle change are small and can be neglected. The dynamic equations for pitch are derived from Lagrange’s equation as follows:(10)ddt∂L∂q˙1-∂L∂q1=Q1,where q1=(θ,ω)T and Q1=0,τωT. According to (10), the state equation for pitch is as follows:(11)m33m34m43m44θ¨ω¨-n3n4=0τω.The coefficients of4sαcαI1x-4sαcαI1z and cθsαI1z are tinier than others. The coefficient of 2s2αI1x+2c2αI1z is far less than l10 and l1. The coefficient of l11+2s2αI1x+2c2αI1z is far less than l2. These coefficients are ignored. So the simplified dynamic equations about pitch angle are as follows:(12)l10θ¨+cθl2ω¨-MbgLb+2Mp1gL+2M1gLsθ=0(13)cθl2θ¨+l1ω¨-θ˙2sθl2=τω.From (12) and (13), the dynamic equations are as follows:(14)θ¨=Bcos⁡θτω+B2cos⁡θsin⁡θθ˙2-CDsin⁡θB2cos2⁡θ-AD(15)ω¨=Aτω+ABsin⁡θθ˙2-BCcos⁡θsin⁡θB2cos2⁡θ-AD,where coefficients are(16)A=l10B=l2C=MbgLb+2Mp1gL+2M1gLD=l1τ ω represents the torque of the bottom wheel. C is the gravity component of unicycle robot for pitch. In order to balance of pitch, the torque of the bottom wheel τω must relate to pitch angle and pitch angular velocity which control the change of pitch angle stable. When the pitch angle tends to zero, the bottom wheel can keep stable. According to the analysis of the dynamics of pitch axis, the design of detailed control strategy is in next section.


## 3.2. Dynamic Model for Roll Axis

The robot’s frame and the bottom wheel can be seen as a single body, and the roll dynamic of the system can be regarded as a gyroscopic precession system. Both changes of pitch angle and yaw angle are small and can be neglected. The dynamic equations for roll are derived from Lagrange’s equation as follows:(17)ddt∂L∂q˙2-∂L∂q2=Q2,where q2=(δ,α,β)T and Q2=0,τα,τβT. According to (17), the state equation for roll is as follows:(18)m220m260m550m260m66δ¨α¨β¨-n2n5n6=0τατβ.The coefficients of4sαcαI1x-4sαcαI1z are tinier than others. The coefficient of 2s2αI1x+2c2αI1z is far less than l5+l6+2l2. The spinning velocity of gyroscopes is constant value, so β¨=0 and τβ≈0. These coefficients are ignored. So the simplified dynamic equations about roll angle are as follows:(19)l5+l6+2l2δ¨+2β˙α˙cαI1z-MwgRW+MbgLb+MbgRW+2Mp1gL+2Mp1gRW+2M1gL+2M1gRWsδ=0(20)I1x+Ip1zα¨-12δ˙24sαcαI1z-2δ˙β˙cαI1z=τα(21)2sαI1zδ¨+2δ˙α˙cαI1z=0.τ α represents the torque of the precession system. β˙α˙ represents gyroscopic precession moment. The coefficient of sδ represents gravity component of roll. According to (19), the gyroscopic moment provides torque to resist unicycle robot’s gravity component of roll. Besides, the unicycle robot gets an angular acceleration of roll. But gyroscopic moment’s coefficient includes cosine precession angle. It means torque of gyroscopic moment is smaller as precession angle is larger. According to the analysis on the dynamics of roll axis, controlling angular velocity of precession is better than torque of the precession system, and the design of detailed control strategy is in next section.


## 3.3. Dynamic Model for Yaw Axis

For the yaw dynamic of the system, assume the change of the pitch is small and can be neglected. The roll angle is small so thatsin⁡δ and cos⁡δ can be approximated to zero and one, respectively. The bottom wheel and gyroscopes get a constant speed. The dynamic equation for yaw is derived from Lagrange’s equation as follows:(22)ddt∂L∂q˙3-∂L∂q3=Q3,where q3=φ and Q3=0. According to (22), the state equation for yaw is as follows:(23)m11φ¨-n1=0.The coefficients of-4sαcαI1x-4sαcαI1z, I1x are tinier than others. So the simplified dynamic equation about yaw angle is as follows:(24)l8+l7φ¨+ω˙δ˙-l1+l2=0.In the equation,ω˙δ˙ is the gyroscopic precession moment of bottom wheel and the unicycle robot’s roll angle. According to the equation, influence factor for yaw angle includes the angular velocity of bottom wheel and the angular velocity of roll. The angular velocity of bottom wheel should hold on a constant value for balancing of pitch angle. Therefore, the steering control strategy is designed about the angular velocity of roll, and the design of detailed control strategy is in next section.Due to the yaw angle coupling to pitch angle and precession angle, the analysis of these 2 angles is necessary in the steering control method. When angular velocities of yaw and the bottom wheel keep stable, the angular velocity of roll will stable to zero and the roll angle is small for being ignored. The dynamic equation for pitch angle is derived as fallows:(25)ddt∂L∂q˙4-∂L∂q4=Q4,where q4=θ and Q4=0. According to (25), the state equation for pitch is as follows:(26)m33θ¨-n3=0.The coefficients of4sαcαI1x-4sαcαI1z and cθsαI1z are tinier than others. The coefficient of 2s2αI1x+2c2αI1z is far less than l10. These coefficients can be ignored. So the simplified dynamic equation is as follows:(27)l10θ¨-12φ˙2-2cθsθl7+2cθsθl8+2cθsθl9-4cθsθI1x-sθMbgLb+2Mp1gL+2M1gL=0.φ ˙ 2 is the centripetal force for yaw angle’s circle. When the unicycle robot has a yaw angular velocity and the change of pitch angle is stable, the dynamic equation is as follows:(28)θ=arcos⁡MbgLb+2Mp1gL+2M1gLφ˙2l7-l8-l9+2I1xIt means centripetal force for yaw angle’s circle also affects pitch angle. When the unicycle robot has a constant yaw angular velocity, the pitch angle is stable at a constant.Similarly, when the angular velocities of yaw and the bottom wheel keep stable, the angular velocity of roll will stable to zero and the roll angle is small for being ignored. Also the change of pitch is stable. The dynamic equation for precession angle is derived as fallows:(29)ddt∂L∂q˙5-∂L∂q5=Q5,where q5=α and Q5=τα. According to (29), the state equation for precession is as follows:(30)m33α¨-n5=τα.So the simplified dynamic equation is as follows:(31)I1x+Ip1zα¨-12φ˙2-4sαcαc2θI1x+4sαcαs2θI1z-2φ˙β˙sθcαI1z=ταφ ˙ 2 is the centripetal force for yaw angle’s circle. When the unicycle robot has a yaw angle velocity and the change of precession angle is stable and the torque of precession is stable at zero, the dynamic equation is as follows:(32)α=arsin⁡φ˙β˙sθI1zφ˙2c2θI1x-s2θI1zIt means centripetal force for yaw angle’s circle also affects precession angle. When the unicycle robot has a constant yaw angle velocity, the precession angle is stable at a constant.


## 4. The Control Strategies Design

For traditional unicycle robots, their controllers are generally separated at lateral and longitudinal and ignored the yaw angle. However, the above dynamic analysis proved that angular velocity of the yaw affects both of lateral balance and longitudinal balance. Also, yaw angle can be controlled by angular velocity of the roll. In this section, there are two control strategies. First is designed for static balance control from the simplified dynamics of the pitch (14), (15) and the roll (19), (20), and (21). Another is steering control, according to the simplified dynamics of the yaw (24).


### 4.1. Static Balance Control

Based on the dynamic analysis of the previous section, the unicycle robot’s pitch angle is balanced by the torque of the bottom wheel and roll angle is balanced by the precession system. The torque of the bottom wheel is to regulate the pitch angleθ and the angular velocity of wheel ω˙. The spinning velocity of gyroscopes keeps a constant value, and angular velocity controller of precession is adaptive for the balance of roll angle according to the analysis of previous section.The input of bottom wheel is as follows:(33)τω=kpθeθ+kDθe˙θ+kpω˙eω˙+kIω˙e~ω˙,where kpθ, kDθ, kpω˙, kIω˙ are controller gains. eθ is the difference between the real-time pitch angle θ and the set angle θr. It is given as(34)eθ=θ-θr.e ω ˙ is the difference between the real-time angular velocity of wheel ω˙ and the set angular velocity ω˙r. Its integration is e~ω˙. It is given as(35)e~ω˙=ω˙-ω˙r.The torque of the bottom wheelτω includes PD controller of the pitch angle θ and PI controller of the angular velocity of wheel ω˙. The set values θr, θ˙r, and ω˙r are 0 to keep unicycle static for longitudinal.The input of angular velocity of precession is as follows:(36)α˙=kPδeδ+kDδe˙δ+kPαeα,where kPδ, kDδ, kPα are controller gains. eδ is the difference between the real-time roll angle δ and the set angle δr. It is given as(37)eδ=δ-δre α is the difference between the real-time precession angle α and the set angle αr. It is given as(38)eα=α-αrThe angular velocity of precession α˙ includes PD controller of the roll angle δ and P controller of the precession angle α. According to the dynamic analysis of roll angle, the torque of precession system has a coefficient cos⁡α. It means the torque of gyro precession system is smaller as precession angle increasing. So a P controller was designed to return the precession angle to zero. And the set values δr, δ˙r, and αr are 0 to keep unicycle static for lateral. The detailed control block diagram is shown in Figure 3.Figure 3
The control diagram of static balance control.


### 4.2. Steering Control

Based on the dynamic analysis of the previous section, the unicycle robot’s yaw angle is related to the angular velocities of roll and bottom wheel. In order to enhance the reaction of steering and the stability of the controller, fast responsive control strategy is opted to steering control.The input of precession angular velocity is as follows:(39)α˙=kPδeδ+kDδe˙δ+kPαeα,where kPδ, kDδ, kPα, eδ, e˙δ, eα are defined as static balance control. The differences are δ˙r and δr. It is given as(40)δ˙r=kDφe˙φwhere kDφ is coefficient of fast responsive control strategy for steering control. e˙φ is the difference between the real-time yaw angular velocity φ˙ and the set yaw angular velocity φ˙r. It is given as(41)e˙φ=φ˙-φ˙rAlso, according to the dynamic analysis of yaw, it is not only related to the angular velocity of roll, but also to the angular velocity of bottom wheel. In the process of steering control, the bottom wheel gets an angular velocity and the set angular velocityω˙ is constant value. The detailed control block diagram is shown in Figure 4.Figure 4
The control diagram of steering control.


## 4.1. Static Balance Control

Based on the dynamic analysis of the previous section, the unicycle robot’s pitch angle is balanced by the torque of the bottom wheel and roll angle is balanced by the precession system. The torque of the bottom wheel is to regulate the pitch angleθ and the angular velocity of wheel ω˙. The spinning velocity of gyroscopes keeps a constant value, and angular velocity controller of precession is adaptive for the balance of roll angle according to the analysis of previous section.The input of bottom wheel is as follows:(33)τω=kpθeθ+kDθe˙θ+kpω˙eω˙+kIω˙e~ω˙,where kpθ, kDθ, kpω˙, kIω˙ are controller gains. eθ is the difference between the real-time pitch angle θ and the set angle θr. It is given as(34)eθ=θ-θr.e ω ˙ is the difference between the real-time angular velocity of wheel ω˙ and the set angular velocity ω˙r. Its integration is e~ω˙. It is given as(35)e~ω˙=ω˙-ω˙r.The torque of the bottom wheelτω includes PD controller of the pitch angle θ and PI controller of the angular velocity of wheel ω˙. The set values θr, θ˙r, and ω˙r are 0 to keep unicycle static for longitudinal.The input of angular velocity of precession is as follows:(36)α˙=kPδeδ+kDδe˙δ+kPαeα,where kPδ, kDδ, kPα are controller gains. eδ is the difference between the real-time roll angle δ and the set angle δr. It is given as(37)eδ=δ-δre α is the difference between the real-time precession angle α and the set angle αr. It is given as(38)eα=α-αrThe angular velocity of precession α˙ includes PD controller of the roll angle δ and P controller of the precession angle α. According to the dynamic analysis of roll angle, the torque of precession system has a coefficient cos⁡α. It means the torque of gyro precession system is smaller as precession angle increasing. So a P controller was designed to return the precession angle to zero. And the set values δr, δ˙r, and αr are 0 to keep unicycle static for lateral. The detailed control block diagram is shown in Figure 3.Figure 3
The control diagram of static balance control.


## 4.2. Steering Control

Based on the dynamic analysis of the previous section, the unicycle robot’s yaw angle is related to the angular velocities of roll and bottom wheel. In order to enhance the reaction of steering and the stability of the controller, fast responsive control strategy is opted to steering control.The input of precession angular velocity is as follows:(39)α˙=kPδeδ+kDδe˙δ+kPαeα,where kPδ, kDδ, kPα, eδ, e˙δ, eα are defined as static balance control. The differences are δ˙r and δr. It is given as(40)δ˙r=kDφe˙φwhere kDφ is coefficient of fast responsive control strategy for steering control. e˙φ is the difference between the real-time yaw angular velocity φ˙ and the set yaw angular velocity φ˙r. It is given as(41)e˙φ=φ˙-φ˙rAlso, according to the dynamic analysis of yaw, it is not only related to the angular velocity of roll, but also to the angular velocity of bottom wheel. In the process of steering control, the bottom wheel gets an angular velocity and the set angular velocityω˙ is constant value. The detailed control block diagram is shown in Figure 4.Figure 4
The control diagram of steering control.


## 5. Simulation

In this section, the controllers will be tested by dynamics simulation and all the data and codes of the simulations are available online (seehttps://github.com/ZhangYang157/01-Codes-and-Data-for-Steering-Control-Method-for-an-Under-actuated-Unicycle-Robot-Based-on-Dynamic-.git) and are included in the supplementary materials (available here). The simulation video for the proposed steering control method is available online (see https://github.com/ZhangYang157/02-supplementary-material-file-for-simulation-video.git). A three-dimensional simulation model of unicycle robot is built in the ADAMS environment. It is shown in Figure 5. The simulation model includes 5 parts. They are ground, gyroscopes, precession, frame, and bottom wheel. Ground is fixed in space. Static friction coefficient between bottom wheel and ground is 0.8 and dynamic friction coefficient is 0.4. According to the control strategies design, the input of the bottom wheel is the torque τω. The input of precession is angular velocity of precession α˙ and the angular velocity of gyro β˙ is constant value. The sampling time is 10 ms. In this section, there are two experiments. Firstly, static balance equilibrium is controlling the unicycle robot stable in place with an interference force. Secondly, steering control method of the unicycle robot is setting the roll angular velocity and giving the angular velocity of bottom wheel a constant value.Figure 5
Simulation model in ADAMS.


### 5.1. Simulation of Static Equilibrium

For the initial state of the simulation, the unicycle robot has a minimal inclination angle for roll and pitch. In the simulation time of 5s, there is a lateral interference force of 10 N (duration is 0.01s). Using the controller of static balance control, Table2 shows the control parameters value of the static control strategy in simulation. Simulation is generated in 8 seconds. Figure 6 shows the graphs of roll and pitch angle in static balance simulation. The unicycle robot gets to stability at start. In time 5s, the roll angle and pitch angle accordingly vary with the lateral interference force. With the static balance control strategy, the unicycle robot was back to stable.Table 2
Static control parameters value of the static control strategy in simulation.
Parameters ω β k p θ k D θ k p ω ˙ k I ω ˙ k P δ k D δ k P α  Value 3000rpm 12 0.3 0.03 0.02 15 1.2 1.5Figure 6
The roll and pitch angle in static equilibrium simulation. (a) The graph of roll angle. (b) The graph of pitch angle.
(a) (b)


### 5.2. Simulation of Steering Control

Based on the static balance equilibrium, the steering control adds an angular velocity of the bottom wheelω˙r, fast responsive control strategy for steering. Table 3 shows the control parameters value of the steering control strategy in simulation. The set bottom wheel angular velocity ω˙r is 50°/s and the coefficient of fast responsive control strategy kDφ is 1.1. Before steering control, the robot is controlled to balance with a given angular velocity of the bottom wheel ω˙r and the set angular velocity φ˙r is zero. When the angular velocity of bottom wheel is stable to 50°/s, the set angular velocity φ˙r is given.Table 3
Parameters value of the steering control strategy in simulation.
Parameters ω ˙ r k p θ k D θ k p ω ˙ k I ω ˙ k P δ k D δ k P α k D φ  Value 50°/s 14 0.5 0.05 0.02 15 1.2 1.5 1.1The simulation experiment also compares the existing under-actuated steering control strategies. As Y. Isomi, S. Majima [22, 23], Gong Daoxiong and Li Xinghui [24] proposed steering control method for unicycle robot; the steering is controlled by the roll angle with the constant speed of bottom wheel. Comparative analysis of the 2 different steering control methods by simulation experiment is next.The set angular velocityφ˙r is ramp and the slope is 0.6°/s2 until φ˙r is 3°/s. In order to increase input stability of φ˙r, there is a low pass filter to the set angular velocity φ˙r before input. Figure 7 shows the set yaw angular velocity of previous filter, the set yaw angular velocity of after filter, the practical yaw angular velocity, the practical yaw angular velocity of existing method, the set yaw angle after filter, the practical yaw angle, and practical yaw angle of existing method. The practical angular velocity of yaw is accurate following the set angular velocity of yaw with a bit of delay at the acceleration. The angle of yaw is increased steadily. Using the coupling of the unicycle robot, the yaw angle is controlled without directly torque for steering. By comparing with existing method, the yaw angle control method proposed in this paper is faster response to yaw angle control command and closer to set yaw angle and yaw angular velocity curves.Figure 7
The yaw angular velocity and the yaw angle in simulation of yaw angle control. (a) The graph of the set yaw angular velocity previous filter, the set yaw angular velocity after filter, the practical yaw angular velocity, and the practical yaw angular velocity of existing method. (b) The graph of set yaw angle after filter, yaw angle, and practical yaw angle of existing method.
(a) (b)Figure8 shows the graphs of practical roll angle, the practical roll angle of existing method, the practical roll angular velocity, and the practical roll angular velocity of existing method. The angular velocity of roll and roll angle get a big fluctuation since the fast responsive control strategy of steering. When the practical angular velocity of yaw steadied at a constant value, the angular velocity of roll becomes stable again. By comparing with existing method, the control method proposed in this paper has relatively large amplitude, but it is stable to the steady state for roll angle and roll angular velocity faster.Figure 8
The roll angle and the roll angular velocity in simulation of yaw angle control. (a) The graph of practical roll angle and practical roll angle of existing method. (b) The graph of practical roll angular velocity and practical roll angular velocity of existing method.
(a) (b)Figure9 shows the graphs of practical pitch angle, the practical pitch angle of existing method, the practical pitch angular velocity, and the practical pitch angular velocity of existing method. The angular velocity of pitch gets a big fluctuation due to the fast responsive control strategy of steering. When the angular velocity of yaw is going to stabilize, the angular velocity of pitch is stable to zero and the pitch angle is stable to a value due to effect of centripetal force as (28). By comparing with existing method, the control method proposed in this paper is more quickly stable to the steady state for pitch angle and relatively large amplitude for pitch angular velocity.Figure 9
The pitch angle and the pitch angular velocity in simulation of yaw angle control. (a) The graph of practical pitch angle and practical pitch angle of existing method. (b) The graph of practical pitch angular velocity and practical pitch angular velocity of existing method.
(a) (b)Figure10 shows the change of practical precession angle, the practical precession angle of existing method, the practical precession angular velocity, and the practical precession angular velocity of existing method. Through controlling the precession angular velocity, the unicycle robot gets to balance with a short while. The angular velocity of precession is the input for balance of roll angle. When the steering control is going to stabilize, the angular velocity of precession becomes stable to zero and the precession angle is stable to a value due to effect of centripetal force as (32). By comparing with existing method, the control method proposed in this paper is more quickly stable to the steady state for precession angle and relatively small amplitude for precession angular velocity.Figure 10
The precession angle and the precession angular velocity in simulation of yaw angle control. (a) The graph of practical precession angle and practical precession angle of existing method. (b) The graph of practical precession angular velocity and practical precession angular velocity existing method.
(a) (b)Figure11 shows the angular velocity of bottom wheel ω˙. At the beginning, the angular velocity of bottom wheel ω˙ becomes stable at 50°/s. ω˙ has a big fluctuation during the angular velocity of yaw φ˙ causing a change. When the angular velocity of yaw φ˙ is steady, ω˙ is stable at 50°/s again. The curve “practical dω/dt of existing method” shows the angular velocity of bottom wheel ω˙ for the yaw angle control method by roll angle. Both of the angular velocities of bottom wheel are stable at 50°/s, but the curve of existing method has higher frequency of oscillation than the control method mentioned in the paper.Figure 11
The angular velocity of bottom wheel in yaw angle control simulation.


## 5.1. Simulation of Static Equilibrium

For the initial state of the simulation, the unicycle robot has a minimal inclination angle for roll and pitch. In the simulation time of 5s, there is a lateral interference force of 10 N (duration is 0.01s). Using the controller of static balance control, Table2 shows the control parameters value of the static control strategy in simulation. Simulation is generated in 8 seconds. Figure 6 shows the graphs of roll and pitch angle in static balance simulation. The unicycle robot gets to stability at start. In time 5s, the roll angle and pitch angle accordingly vary with the lateral interference force. With the static balance control strategy, the unicycle robot was back to stable.Table 2
Static control parameters value of the static control strategy in simulation.
Parameters ω β k p θ k D θ k p ω ˙ k I ω ˙ k P δ k D δ k P α  Value 3000rpm 12 0.3 0.03 0.02 15 1.2 1.5Figure 6
The roll and pitch angle in static equilibrium simulation. (a) The graph of roll angle. (b) The graph of pitch angle.
(a) (b)


## 5.2. Simulation of Steering Control

Based on the static balance equilibrium, the steering control adds an angular velocity of the bottom wheelω˙r, fast responsive control strategy for steering. Table 3 shows the control parameters value of the steering control strategy in simulation. The set bottom wheel angular velocity ω˙r is 50°/s and the coefficient of fast responsive control strategy kDφ is 1.1. Before steering control, the robot is controlled to balance with a given angular velocity of the bottom wheel ω˙r and the set angular velocity φ˙r is zero. When the angular velocity of bottom wheel is stable to 50°/s, the set angular velocity φ˙r is given.Table 3
Parameters value of the steering control strategy in simulation.
Parameters ω ˙ r k p θ k D θ k p ω ˙ k I ω ˙ k P δ k D δ k P α k D φ  Value 50°/s 14 0.5 0.05 0.02 15 1.2 1.5 1.1The simulation experiment also compares the existing under-actuated steering control strategies. As Y. Isomi, S. Majima [22, 23], Gong Daoxiong and Li Xinghui [24] proposed steering control method for unicycle robot; the steering is controlled by the roll angle with the constant speed of bottom wheel. Comparative analysis of the 2 different steering control methods by simulation experiment is next.The set angular velocityφ˙r is ramp and the slope is 0.6°/s2 until φ˙r is 3°/s. In order to increase input stability of φ˙r, there is a low pass filter to the set angular velocity φ˙r before input. Figure 7 shows the set yaw angular velocity of previous filter, the set yaw angular velocity of after filter, the practical yaw angular velocity, the practical yaw angular velocity of existing method, the set yaw angle after filter, the practical yaw angle, and practical yaw angle of existing method. The practical angular velocity of yaw is accurate following the set angular velocity of yaw with a bit of delay at the acceleration. The angle of yaw is increased steadily. Using the coupling of the unicycle robot, the yaw angle is controlled without directly torque for steering. By comparing with existing method, the yaw angle control method proposed in this paper is faster response to yaw angle control command and closer to set yaw angle and yaw angular velocity curves.Figure 7
The yaw angular velocity and the yaw angle in simulation of yaw angle control. (a) The graph of the set yaw angular velocity previous filter, the set yaw angular velocity after filter, the practical yaw angular velocity, and the practical yaw angular velocity of existing method. (b) The graph of set yaw angle after filter, yaw angle, and practical yaw angle of existing method.
(a) (b)Figure8 shows the graphs of practical roll angle, the practical roll angle of existing method, the practical roll angular velocity, and the practical roll angular velocity of existing method. The angular velocity of roll and roll angle get a big fluctuation since the fast responsive control strategy of steering. When the practical angular velocity of yaw steadied at a constant value, the angular velocity of roll becomes stable again. By comparing with existing method, the control method proposed in this paper has relatively large amplitude, but it is stable to the steady state for roll angle and roll angular velocity faster.Figure 8
The roll angle and the roll angular velocity in simulation of yaw angle control. (a) The graph of practical roll angle and practical roll angle of existing method. (b) The graph of practical roll angular velocity and practical roll angular velocity of existing method.
(a) (b)Figure9 shows the graphs of practical pitch angle, the practical pitch angle of existing method, the practical pitch angular velocity, and the practical pitch angular velocity of existing method. The angular velocity of pitch gets a big fluctuation due to the fast responsive control strategy of steering. When the angular velocity of yaw is going to stabilize, the angular velocity of pitch is stable to zero and the pitch angle is stable to a value due to effect of centripetal force as (28). By comparing with existing method, the control method proposed in this paper is more quickly stable to the steady state for pitch angle and relatively large amplitude for pitch angular velocity.Figure 9
The pitch angle and the pitch angular velocity in simulation of yaw angle control. (a) The graph of practical pitch angle and practical pitch angle of existing method. (b) The graph of practical pitch angular velocity and practical pitch angular velocity of existing method.
(a) (b)Figure10 shows the change of practical precession angle, the practical precession angle of existing method, the practical precession angular velocity, and the practical precession angular velocity of existing method. Through controlling the precession angular velocity, the unicycle robot gets to balance with a short while. The angular velocity of precession is the input for balance of roll angle. When the steering control is going to stabilize, the angular velocity of precession becomes stable to zero and the precession angle is stable to a value due to effect of centripetal force as (32). By comparing with existing method, the control method proposed in this paper is more quickly stable to the steady state for precession angle and relatively small amplitude for precession angular velocity.Figure 10
The precession angle and the precession angular velocity in simulation of yaw angle control. (a) The graph of practical precession angle and practical precession angle of existing method. (b) The graph of practical precession angular velocity and practical precession angular velocity existing method.
(a) (b)Figure11 shows the angular velocity of bottom wheel ω˙. At the beginning, the angular velocity of bottom wheel ω˙ becomes stable at 50°/s. ω˙ has a big fluctuation during the angular velocity of yaw φ˙ causing a change. When the angular velocity of yaw φ˙ is steady, ω˙ is stable at 50°/s again. The curve “practical dω/dt of existing method” shows the angular velocity of bottom wheel ω˙ for the yaw angle control method by roll angle. Both of the angular velocities of bottom wheel are stable at 50°/s, but the curve of existing method has higher frequency of oscillation than the control method mentioned in the paper.Figure 11
The angular velocity of bottom wheel in yaw angle control simulation.


## 6. Conclusion

This paper has presented a steering control method for the under-actuated unicycle robot which using precession effect of double-gyroscopes for lateral balance. The proposed method uses the coupling to control the roll angular velocity for steering. The steering control method is proposed through analyzing the dynamic model of the unicycle robot and the fast responsive control strategy is designed with a constant bottom wheel speed. The simulation results demonstrated that the control strategy is effective for steering control. Compared with the existing steering control method, the method mentioned in this paper responds faster to steering commands and tracks the set yaw angle more accurately.Future works focus on the construction of the experimental platform and the improvement of the performance of the steering control method. More comparative experiments with the existing methods will also be conducted. Meanwhile, the proposed control method will be applied to the autonomous navigation of multiunicycle robots.



---

*Source: 5240594-2018-11-18.xml*