Structure Design and Dynamical Modelling of a Spherical Robot Driven by Omnidirectional Wheels

In this paper, our work focused on designing a novel spherical robot driven by omnidirectional wheels and developing an under-actuated dynamical model for the system. The robot consists of four parts: the running spherical shell (1P), the supporting platform (1P), the driving omnidirectional wheels (3P) and the bearing ball wheels (3P). Considering the noholonomic constrains aroused from the contacts of the shell with the omnidirectional wheels, and the shell with ground, we derived a dynamical model for the system by Chaplygin dynamics. The model illustrated that the robot was an under-actuated system of six DOF (degree of freedom) and three driving-torque inputs. finally, we performed an inverse dynamics simulations of S-curve trajectory to show the effectiveness of the model.


Introduction
Spherical robot is a kind of mobile mechanical system typically consisting of a rolling shell and an enveloped driving mechanism.Due to the unique structure, spherical robot has some promise use in the fields of entertainment, wild detection and military patrolling, etc.  Driving method (or actuating mechanism) is a critical problem in developing a spherical robot.In tradition, there are two means to drive a spherical robot.
The first one is the eccentric moment driving mean.In this mean, the actuating mechanism of the spherical robot drives the COG(center of gravity) of the system deviating from the vertical sphere center line, and hence the sphere shell could run on ground.For example, in [1], A.Halme proposed a spherical robot with a single wheel set on the bottom of the spherical shell.When the wheel rolls along the inner surface of the shell, he believed, the eccentric moment would break the system's balance, so the robot shell began running accordingly.In [2], Ranjan Mukhejee presented a spherical robot driven by four moving masses.Mukhejee gave the argument when the four masses move along their individual leadscrews on the sphere diameter, the COM(center of mass) of the robot system should be alternated and consequently the shell would begin to roll.There are similar structures being proposed in [3]- [4].In [5], J Alves considered a four wheels vehicle to drive his spherical robot.Alves suggested that the running vehicle on the bottom of the shell could give birth of sufficient moment to drive the robot to run.In [6], Zhan exploited an omnidirectional steering wheel and incorporate with a longitudinal driving wheel to drive a spherical robot.Zhan addressed that the cooperating rotations of the two wheels could guarentee the shell to run in all direction.Similar to Zhan, in [7], Wang also discussed a spherical robot of two omnidirectional wheels on two orthogonally axis.In [8], Sun suggested a two DOF pendulum in his spherical robot.Sun argued that the pendulum could be driven to swing on all sides, thus the robot certainly might run in omnidirection.In [9], Zhao presented a spherical robot with two coaxial eccentric masses.Zhao believed when the two masses run with different acceleration and velocity, the robot should move all direction accordingly.The similar structure was also proposed in [10].
The second one is the angular momentum driving mean.In this mean, the spherical robot usually configures with a high speed rotating rotor inside the sphere shell.Because the external friction torque between the running shell and the ground is commonly small, with the principle of the angular momentum conservation, the sphere shell would rotate in the direction reverse to that of the running rotor.Furthermore, by changing the speed and direction of the rotating rotor, the omnidirectional motion of the spherical robot could be easily get.For instance, in [11], Toshiaki Otani developed a spherical robot driven by a three axis mechanical gyroscope.The robot's gyroscope was fixed on a gimbal inside the sphere, and when it rotated with high speed, he believed, there would be a torque that can drive the sphere shell.Likewise, in [12], V.Joshi proposed a spherical robot driven by double rotors which shared the similar principle with the robot in [11].
As mentioned above, there are two kinds of driving means having been used in the existing spherical robot.However, comparing to the angular momentum driving mean(the latter), the spherical robot that use the eccentric moment driving mean(the former) has exhibited a lot of MATEC Web of Conferences 153, 02003 (2018) https://doi.org/10.1051/matecconf/201815302003ICMME 2017 advantages, for instance, more flexibility of the steering, lower speed of the driving mechanism etc,.Specifically, the use of the technique of omnidirectional wheels in the driving mechanism of a spherical robot, just like which in [9] and [10], further highlights this point.As a conclusion, developing a novel structure of the driving mechanism system by utilizing the omnidirectional wheels become an attracting area in the field of the spherical robot research.
This paper deals with an innovating spherical robot driven by three inner omnidirectional wheels.The paper is arranged as follow: at first, we show the mechanical structure of the proposed spherical robot in detail; and next, we develop a dynamical model for the robot system by using Chaplygin equation; and at the end, we consider a S-curve trajectories of the spherical robot system and perform an inverse dynamics simulations to validate the effectiveness of the proposed model.

General scheme
In [9]~ [10], the omnidirectional wheel were used in the spherical robots successfully.However, their design one wheel contacting with the shell, which might weaken the driving capability of the system, so we use three omnidirectional wheels to improve our system's performance.Our spherical robot approximately consists of two parts: a sphere shell and a support platform.The structure of the system is shown in Fig. 1~Fig.2.
As it is seen in Fig 1~Fig 2, the three omnidirectional wheels are symmetrically assigned on the upper half part of the inner platform.Additionally, it is noteworthy that, for preventing the three wheels from leaving the internal surface of the sphere shell, we exploit an elastic support for each of the omnidirectional wheel.
Moreover, for ensuring the stability of our system, we exploit three free-running ball wheels on the bottom of the shell to bear the platform.Similarly, the ball wheels are also mounted on the platform via an elastic support.
As for the actuators, three thin motors are used to drive the three omnidirectional wheels to rotate relative to the inner sphere support platform.

Working principle
The working principle of the proposed spherical robot can be summarized as follow: The motors drive the three omnidirectional wheels to run with a given law.Simultaneously, the running wheels would synthesize a couple to propel the shell to roll via the contacting friction.And hence, we can conclude if we regulate the rotation speed and direction of the wheels, we could drive the sphere shell in all direction.
After the omnidirectional wheels being driven, because the three wheels are all mounted on the inner support platform, there should be a reaction couple acting on the platform by the omnidirectional wheels.With the bearing action of the three free running ball wheels, the reaction couple would drive the support platform to rotate about the geometric center of the shell.
If we configure the COG of the support platform in different position (that can be done by putting auxiliary weights on the platform), the support platform could work either as a rotor of high speed rotating or a pendulum of low speed swinging.

Dynamical model
In this section, we will develop a dynamical model for the robot system by using Chaplygin equation.

Coordination settings
We represent the supporting platform as 1 B , and the sphere shell as 2 B , and the omnidirectional wheels as i B ( 3, 4,5  i  ).The coordinates of the robot are set as: O  e e e {0}is the global coordinate system fixed on the ground; O  e e e {1} is the coordinate system of the inner supporting platform 1 B and its origin is the geometric center of the sphere shell 2 O  e e e {2}is the coordinate system of the shell 2 B and its origin is the same as{1} O  e e e { i } ( 3, 4,5  i  ) is the coordinate system of the omnidirectional wheel i B and the origin locates at its geometric center.

Noholonomic constrains
We suppose the robot runs on a horizontal plane, then the angular velocity of 1 B can be given as: where ( ) ) is the th i base vector of coordinate{ } j .sin( ) Similarly, the angular velocity of 2 B can be given as: B , their angular velocity should be calculated as: where ) denotes the rotation transform matric from the coordinate { } i to { } j , and i q ( 7,8,9 i  ) denotes the angular rate of i B ( 3, 4,5 i  ), respectively.We assume the robot runs on a plane without slipping, so the velocity of the point P is straightforward satisfied: where (0) R is the position vector of P in coordinate{0}.
If we assume (0) and considered the first two items in Equ.(4), we would get two noholonomic constrains as: ( ) where l is the distance between the geometer center of 2 B and the geometer center of i B ( 3, 4,5 i  ).Similar to the presumption of that the shell running on ground, here we also assume i B ( 3, 4,5  i  ) all run on the inner surface of 1 B without slipping, then we will get the other noholonomic constrains: ) (6 3) 4 (6 5 ) (4 ) 3 In ( 7)~( 9), x , y denote the longitudinal and the lateral velocity of the geometric center of 2 B , respectively; j g ( 1, 2,3, ,18 j  ) is the function of i q ( 1, 2,3, 4,5 i  ).

Velocities of the COM
We set the velocity of the geometric center of 2 B as: Under the principle of the relative motion, we will get respectively the velocity of i B ( , 1, 2, ,5 i j  ) as: (1)   (1) where ( )   i Ci l ( 1,3,4,5  i  ) is the position vector in coordinate { } i from the center of 2 B to that of i B ; (1)   oi l ( 3, 4,5  i  ) is the position vector in {1} from the geometric center of 2 B to the geometric center of i B ( 3, 4,5 i  ).

Generalized forces
The external force acting on our spherical robot consist of the driving torque of i B ( 3, 4,5  i  ) and the gravity.
We consider the COM of 1 B and i B ( 3, 4,5  i  ) in the coordinate{1} , which is represented as: If we defined 1 (1)  [3] i C h R l (where ( ) [3]  is the 3rd item of the vector  ), we will get h is the function of i q ( 2,3 i  ).
Moreover, if we investigate the first time derivative of h , then we will get: ) denotes the explicit function of i q ( 2,3 i  ) and j m ( 1,3,4,5 j  ).
With (18), we define Again, according to (7)~( 9), we define a transform matric as follow: Consequently, with ( 19)and(20), the generalized forces of the system can be calculated as

Dynamical model
Considering the following form of Chaplygin equation , , where T is the kinetic energy and T is the kinetic energy by substituting noholonomic constrains into T ; , constrain; q  and q  are the generalized coordinates of the system;  and  are the numbers of the independent generalized coordinates and the noholonomic constrains; Q  is the th  generalized force of the system.

C q q
, and 6 1 ( )   G q denote the inertia, centripetal-Coriolis, and gravity terms;  q and q are two kinds of generalized coordinates, which are defined as: T q q q q q  q .Equation ( 23) indicates the spherical robot is explicitly an under-actuated system with six independent velocities, and for more detail: The longitudinal displacementand lateral displacement ( x , y ) of the geometric center of 1 B , and the yaw angle ( 4 q ) of 1 B are all under-actuated; There are totally three driving inputs in the three joints i q ( 7,8,9 i  ), therefore we could regulate control-force inputs i  ( 7,8,9   i  ) of the three joints to control the trajectory ( x , y , 4 q ) of the sphere shell.

Inverse dynamics simulations
In order to prove the reliability of the proposed model (see Equ. ( 25)), here we consider the derived dynamical model, an perform inverse dynamics of S-curve trajectory for the spherical robot.
Table 1 shows the physical parameters which would be used in the numerical simulation.Note that we obtain the parameters from the measurement of a virtual bicycle prototype in Solidworks.


Step 1: trajectory planning We plan the motion trajectory of the geometric center of the sphere shell 2


Step 2: motion state calculating We investigate the first three items of the dynamical model (Equ.(23)) where T a q q q   q , and 3 1 1 ( , )    F q q denotes the first three items of the vector   ( , ) ( )    C q q q G q , and ( ) ) is the corresponding component of ( ) D q .Then we will get From (25), we can calculate angular rotational rate a  q by the numerical time integration.Subsequently, with the derived a  q , we further examine the (5)~(9), then we get i q ( 1,2,3,5,6 i  ).
Similarly, by integration of i q ( 1,2,3,5,6 i  ), we will obtain i q , definitely. Step 3: driving torque calculating Similar to Step 2, we furtherly investigate the remain three items of the dynamical model(Equ.(23)), and then we will obtain: where   Figure 3 shows the desired trajectory of the inverse dynamics simulation.Moreover, considering the results in Fig 3~Fig 6, we investigate the comparison between the kinetic energy of the system and the work of the external forces.
Figure 7 examines two kinds of kinetic energy: T1 is get by the current velocity and T2 is by the previous velocity and the elementary work.Figure 8 shows the difference between the increment of the kinetic energy and the elementary work.As seen in Fig 7~Fig 8, while calculated by use of different variable, the two kinetic energy are coincident, and concretely, their difference is less than 10 -2 (see Fig 8(a)).The results show the fact that our dynamical model (Equ.( 23)) completely obey the law of conservation of energy, thus to a certain extent, we verify reliability of our derivation.

Conclusions and future work
As a summary, one of the contribution of this research is that we proposed a novel spherical robot that can be driven by three omnidirectional wheels inside a sphere shell.Another contribution of the research might be that we explored the dynamical model for the system.Our derivation illustrates that the spherical robot is explicitly a noholonomic and under-actuated system, which consist of six independent velocities and three control-torque inputs.With the inverse dynamics simulations of an S-curve trajectory, we validated that the feasibility of our structure scheme of the robot system and the reliability of our dynamical model.
However, currently in our research, there definitely is lack of physical porotype experiments to provide further support for our theoretical analysis, therefore our next work should concentrate on the development a principle prototype so as to perform the presented motion trajectory of the robot system.

Figure 2 .
Figure 2. The schematic diagram of our spherical robot.

Figure 3 .
Figure 3.The planning trajectory of the COM of the shell.

Figure 4
Figure 4 demonstrates the driving angular velocity and angular acceleration of the omnidirectional wheels.

Figure 4 .
Figure 4.The state of the omnidirectional wheel Figure 5 shows the velocity constrains of the support platform and the sphere shell.

Figure 6 Figure 6 .
Figure6shows the driving torques and the powers of the three omnidirectional wheels.

Figure 7 .
Figure 7.The comparison of two kinds of kinetic energy.
difference of the increment of the kinetic energy and the elementary work

Figure 8 .
Figure 8.The kinetic energy Vs the elementary work.