Russian Journal of Nonlinear Dynamics, 2022, vol. 18, no. 5, pp. 899-913. Full-texts are available at http://nd.ics.org.ru DOI: 10.20537/nd221223
NONLINEAR ENGINEERING AND ROBOTICS
MSC 2010: 37N35, 70E60
Motion Control of a Spherical Robot with a Pendulum Actuator for Pursuing a Target
The problem of controlling the rolling of a spherical robot with a pendulum actuator pursuing a moving target by the pursuit method, but with a minimal control, is considered. The mathematical model assumes the presence of a number of holonomic and nonholonomic constraints, as well as the presence of two servo-constraints containing a control function. The control function is defined in accordance with the features of the simulated scenario. Servo-constraints set the motion program. To implement the motion program, the pendulum actuator generates a control torque which is obtained from the joint solution of the equations of motion and derivatives of servo-constraints. The first and second components of the control torque vector are determined in a unique way, and the third component is determined from the condition of minimizing the square of the control torque. The system of equations of motion after reduction for a given control function is reduced to a nonautonomous system of six equations. A rigorous proof of the boundedness of the distance function between a spherical robot and a target moving at a bounded velocity is given. The cases where objects move in a straight line and along a curved trajectory are considered. Based on numerical integration, solutions are obtained, graphs of the desired mechanical parameters are plotted, and the trajectory of the target and the trajectory of the spherical robot are constructed.
Keywords: spherical robot, pendulum actuator, control, equations of motion, nonholonomic constraint, servo-constraint, pursuit, target
1. Introduction
In connection with the development of robotics, one of the important tasks is to control the motion of various robotic structures. One of the universal robotic models is a spherical rolling robot, which can be used not only in the gaming industry, but also in professional and industrial activities, especially in those areas where the use of smart systems without human participation
Received September 29, 2022 Accepted December 23, 2022
Evgeniya A. Mikishanina [email protected]
Chuvash State University
Moskovskii pr. 15, Cheboksary, 428015 Russia
E. A. Mikishanina
is relevant [1-4]. The development of optimal robot control is based on obtaining and analyzing its equations of motion.
The paper considers the problem of controlling the pursuit of a moving target by a spherical robot with a pendulum actuator. A spherical robot is a spherical shell which rolls without slipping and at the center of which an axisymmetric pendulum equipped with a pendulum actuator is installed. The problem of a spherical shell rolling without slipping is a classical nonholonomic problem which has received a fair share of attention in the literature, for example, in [5-13]. There are also papers devoted to the problem of controlling the rolling motion using rotors and gyrostats [14-17]. At first glance, it seems that there is no special novelty in this kind of tasks. However, the use of additional artificial servo-constraints makes it possible to expand the class of tasks under study. Servo-constraints will be considered as alternative ways of motion control.
Unlike nonholonomic constraints that arise when bodies move naturally due to contact, servo-constraints are carried out using control forces of various natures or by changing the inertial properties of systems. For the first time, the concept of servo-constraints appeared in Beghin's dissertation [18], and later the general principles of the use of mechanisms with servo-constraints were systematized in Appel's book [19]. In recent years, systems with servo-constraints have been investigated in the works of A.Azizov [20, 21], M.Teshaev [22, 23], and V.Kozlov [24-26]. These studies were based on the classical concept of servo-constraints in the sense of Beghin. There are also alternative approaches to the definition of servo-constraints [27]. Studies in this direction can also be found in the foreign scientific literature [28-31]. However, most of these works have a common drawback: the physical mechanisms for implementing servo-constraints are either not specified or they are abstract in nature.
In the problem of pursuit of a target by a spherical robot the servo-constraint consists in the fact that the velocity vector of the geometric center of the spherical shell is always directed to the moving target. This idea is the basis of the pursuit method. For the first time such an interpretation of the pursuit method appeared in the work of Kirgetov [32] devoted to the dynamics of flights. In the two-dimensional case, the constraint of aiming at the target by the pursuit method has the form
m = m
m - x(t) V(t) - y(t)'
where M(x(t), y(t)) is the pursuit point and n({(t), n(t)) is the target point that is being pursued. Kirgetov considered this constraint as a rheonomic nonholonomic constraint, which allowed him to apply the methods of nonholonomic mechanics to the problems under consideration. However, the way this constraint is implemented contradicts the definition of a nonholonomic constraint, since a nonholonomic constraint arises naturally as a result of contact. It is more correct to consider this constraint as a servo-constraint that sets the motion program, since it will not be carried out passively, but due to the introduction of a control force. To execute the motion program, the pendulum actuator will generate a control torque.
In this study, when setting up equations of motion, the approach considered in [33, 34] and taken by the author in [35] is used. The problem of controlled motion of a sphere with an axisymmetric pendulum has also been treated in [36-38]. In some cases, the problem of controlled motion of a spherical robot pursuing a target can be reduced to the well-known problem of a spherical robot moving along a given trajectory, which has also been addressed in [34].
The peculiarity of the problem statement in this paper is the simultaneous presence of a sufficient number of kinematic holonomic and nonholonomic constraints, as well as additional
servo-constraints. Based on the joint solution of the Lagrange equations of motion with undetermined multipliers and with control torque and time derivatives from the equations of kinematic constraints and servo-constraints, the equations of motion are obtained. After making a change of variables, the problem with a given control function is reduced to a nonautonomous system of six differential equations. If the objects move in a straight line, the number of equations can be reduced to three equations. The specified servo-constraints make it possible to uniquely determine the first two components of the control torque vector, and the third component is determined from the condition of minimizing the square of the control torque. Numerical solutions are obtained, trajectories and graphs of the desired mechanical parameters are plotted and the control torque is constructed.
2. Mathematical model
A spherical robot consisting of a spherical shell with a pendulum actuator rolls without slipping on a horizontal plane (Fig. 1) and pursues a target that moves at the level of the geometric center of the shell. The pendulum actuator consists of an axisymmetric pendulum of the Lagrange top type, fixed in the center of the shell, and a servo-actuator mounted at the point of attachment of the pendulum. We assume that the pendulum does not rotate about its own symmetry axis. The motion of the system is controlled. To do this, the pendulum actuator creates a control torque.
Choose a fixed coordinate system OXYZ with the OZ-axis directed vertically upwards and with the coordinate vectors a, 3, y. Denote the coordinates of the target and the geometric center of the shell by (£(t), n(t), R) and (X(t), Y(t), R), respectively. The trajectory of the target (£(t), n(t)) is a given function of time. We investigate the possibility of controlling the pursuit of a target by the spherical robot with a pendulum mechanism using the pursuit method with a given control function and minimal control. For minimal control, it is necessary to find such a type of control torque the square of which at any given time takes the smallest possible value.
Let C and Ct denote the geometric center of the spherical shell and the center of mass of the pendulum, respectively. We introduce the following notation:
• R is the radius of the spherical shell;
• Rt = CCt is the distance from the geometric center of the shell to the center of mass of the pendulum;
• m is the mass of the spherical shell;
• mt is the mass of the pendulum;
• I = IE is the central inertia tensor of the spherical shell; E is the unit matrix;
• i = diag(i, i, i + j) is the central inertia tensor of the pendulum;
• V = (X, Y, 0)T is the velocity vector of the geometric center of the spherical shell;
• v = (v1, v2, v3)T is the velocity vector of the center of mass of the pendulum;
• Q = (Q1, Q2, ^3)T is the angular velocity vector of the spherical shell;
• u = (w1, u2, w3)T is the angular velocity vector of the pendulum;
• n is the vector directed from the geometric center of the shell along the symmetry axis of the pendulum.
The no-slip condition at the point of contact P implies that
V = RQ x y. (2.1)
The center of mass of the spherical shell is the point of attachment of the pendulum, so the holonomic kinematic constraint is
V = v — Rtu x n.
Taking into account (2.1), the velocity of the center of mass of the pendulum is
v = RQ x y + Rtu x n. (2.2)
The condition that there be no rotation of the pendulum about its own symmetry axis is
(u, n) = 0. (2.3)
The evolution of the vector n reads
n = u x n.
Conditions (2.1), (2.2) and (2.3) represent the system of kinematic constraints.
According to the pursuit method, the velocity of the geometric center of the spherical shell V should always be directed to the target. Mathematically, this condition is [32]
X Y
£ — X n — Y
We will assume that the robot starts the pursuit from a state of rest. This raises the question of transition from a state of rest to a state in which the system is subject to the servo-constraint. For convenience, we will replace the specified servo-constraint with two servo-constraints
X = f ■ (£ — X), r = f ■ (n — Y), (2.4)
where f = f (t, X, Y, £, n) is a control function, which in general can depend on time t, the coordinates of the geometric center of the shell X, Y and the coordinates of the target £, n.
Since the conditions X(0) = 0, Y(0) = 0 must be fulfilled, the control function must satisfy the condition f (0, X0, Y0, £0, n0) = 0, where X0, Y0 are the coordinates of the initial position of the geometric center of the robot and £0, n0 are the coordinates of the initial position of the target on the reference plane.
The choice of the control function is determined by the formulation and specificity of the pursuit problem. In the general case, the function f can depend on the angular velocity of the sphere O. In the case where f does not depend on O, the solution of this problem reduces to solving the problem of controlling a spherical robot along an arbitrary trajectory, which is addressed in [34]. In order to demonstrate this, we express the angular velocities Q1, Q2 from Eq. (2.4) using (2.1)
Q^-l^-Y), Q2 = /(£-X). (2.5)
The total time derivatives of the functions Q1 and Q2 can be defined uniquely as
f - f2,„ ^ f.
Ql = ~R~{r,~Y)~Rf, = Pl' f - f2 f ■
°2= iî (e"X) + Ee = P2'
(2.6)
where f is the total time derivative.
If f does depend on the angular velocity of the sphere O, the problem generally does not reduce to that considered in [34] and is of interest for future research.
To implement a given program of motion of a spherical robot, the pendulum actuator produces a control torque Q applied at the point C of attachment of the pendulum. The system's motion occurs due to forced oscillations of the pendulum.
3. Equations of motion and first integrals
We can represent the kinetic energy of the system as
T = imV2 + -2m2 + -2mtv2 + i {iu2 +j(u>, n)2).
The equations of controlled motion of the spherical robot with the given kinetic energy and constraints (2.1), (2.2), (2.3) are
d (dT\ i> x
M iân
M l~dv)
IO = RX x y - R^ x Y - Q,
(3.1)
mtV = -V - mt9Y,
d idT\ N V „ X ^
— — = {iu> + ]{U}, n)n) = Rtn x /it + A0n + Q,
dt \ du J
where X = (A1, X2, X3)T, ¡x = ¡i2, ¡i3)T, A0 are the reaction forces acting at the point of contact P and at the point C, Q = (Q1, Q2, Q3)T is the control torque applied at the point C, and g is the acceleration of gravity. The equations were derived based on the approach of [33].
Solving together the equations of motion (3.1) and the time derivatives of the constraints (2.1), (2.2) and (2.3), we obtain a system for the reaction forces
X = mgY + mRQ x y, X = —mtgY — mtRQ x y — mtRtu x n — mtRtu x n, Ao = —(Q, n).
Thus, the system (3.1) will take the form
jQ + aY x (u x n) = —aY x (u x n) — Q, i0u + an x (Q x y) = —mtRtgn x y — n(Q, n) + Q, (3.2)
n = u x n,
where J = I + (m + mt)R2, i0 = i + mtR2, a = mtRtR.
The components of the control torque Q1 and Q2 will be determined from the joint solution of the first two equations of the system (3.1) and the time derivatives of the servo-constraints. The component Q3 can be defined arbitrarily. Thus, the control torque will be defined as
Q = —JP — mtRtR(Y x (u x n) + y x (u x n)), (3.3)
where P = (P1 (t), P2(t), P3(t)) is the vector whose first and second components are defined by relations (2.6) and the third is defined arbitrarily.
Taking into account (3.3), we obtain the equation
A0 = J(P, n) — a(u, y).
The complete system of equations of motion referred to the axes of the fixed coordinate system OXYZ will take the form
X = f ■ (£ — X),
F = f ■ (n — Y),
(i0 + a(n, y))u + an x (P x y) + Jn x (P x n) = —(mtRtg + au2)n x y
n = u x n.
We define the control function f in the form
p = - X)2 + (v - Y)'2, (3-5)
Po = ^o-X0)2 + (%-lo)2 > R-
The parameter f0 is the distance-speed proportionality coefficient. Motion occurs behind the target at p > p0 and in the opposite direction from the target at p < p0, the robot stops at p = = p0, the robot and the target collide at p = R. It is possible to avoid a collision between the robot and the target by selecting an appropriate value of the numeric parameter f0.
2, (3.4)
Thus, the problem of controlled motion of a spherical robot pursuing a target is reduced to solving the closed system of differential equations (3.4) with the given control function (3.5). The system is solvable under the condition
i0 > a,
the fulfillment of which can be guaranteed by an appropriate choice of masses and geometric characteristics [34, 38].
The system of equations (3.4) has the first integrals
(n, n) = 1, (u, n) = 0.
The components of the control torque vector are given by the formulas (3.3), in which the functions P1 and P2 are determined uniquely by the expressions (2.6), and the function P3 can be defined arbitrarily. From the set of possible functions, we define the function P3 in such a way that at each instant of time the square of the vector of the control torque, for all given numerical parameters and initial conditions, takes the smallest value. In other words, we will determine the smallest control by first making a number of simplifications.
4. Parameterization and reduction
The components of the vector n are parameterized by the angles 9 and p:
n = (sin 9 cos p, sin 9 sin p, — cos 9)T.
The angle 9 defines the angle of deviation of the pendulum from the vertical position, and the angle p defines the angle between the axis OX and the projection of the vector n on the reference plane.
The components of the angular velocity of the pendulum are parameterized by the variables ug, u^:
u = (ue sin p + u^ sin 9 cos p cos 9, —ue cos p + u^ sin 9 sin p cos 9, u^ sin2 9)T ,
where
p = uv, 9 = ud.
The coordinates of the center of mass of the shell are
X = £ — p cos ^, Y = n — p sin ^,
where ^ is the angle between the distance vector (the velocity vector of the center of the sphere) and the positive direction of the axis OX.
The reduced system in the new variables is
p = i cos 4 + f sin4 — f0(p — p0), f cos 4 — i sin 4
4 =
p
0 = we,
y =
1
= -
- [(J — a,cos 0)(Pl sin <p — P2 cos <p) + sin 0 (oujq + (a — ?'0 cos + rntRtg)], — a cos 0
1
v sin e
a — J cos 0 .
---(/j cos ^ + 2 sm ¥>) ~~ 2 cos oujquj^
a cos 0
JPo
i0 — a cos 0
P1 = - Ji (jl ~ foip - Po) sin ip - y cos #/} cos if} - £ sin 0)
P'2 = :r{}~ fQ<yP ~ cos ^ + ^psin ^cos ^ ~ ^sin ^
The system (4.1) defines a six-dimensional flow in phase space
M6 = {(p, 4, 0, y, ud, wv) | 4,y,0 e (—n, n]}. The initial conditions for Eqs. (4.1) will be defined as
(4.1)
p(0) = po, 0(0) = <p{0) = arctan -f—, 9(0) = 90, ue(0) = 0, uJO) = 0. (4.2)
i0 — X0
Such a setting of initial conditions will make it possible to implement motion both along a curved and a straight trajectory.
Remark 1. Note that the system (4.1) has singularities at the point 0 = 0, n that are related to the choice of variables. For motion in a straight line this singularity disappears. Therefore, when the spherical robot moves in a straight line, we assume Oq = 0. When the robot moves along a curved trajectory, in order to avoid this singularity, we assume the initial condition 00 to be close to zero. The problem will also be solved by integrating in the original variables.
After algebraic transformations the control torque has the form
Q = —.--- \AP + (Jan + a27) (P, 7) + a,An x 7I, (4.3)
i0 + a(n, 7)
where A = Ji0 — a2, A = a(P, n x 7) — mtRtg(n, 7) + i0u>2.
5. Determination of the control torque and numerical experiments
5.1. Distance estimation
We investigate the distance function p from the geometric center of the spherical robot to the target. The solution of the first equation of the system (4.1) is
t
p = p° + e-'0j « «. 4 + fsin 4)ef • i..
0
If the linear velocity of the body is bounded, vc = \J(2 + fj2 ^ M, then we get
£ cos ^ + n sin ^ = vc cos(0 + cos ^ + vc sin(0 + sin ^ = vc cos 0,
where 0 is the angle from the velocity vector of the geometric center of the spherical robot to the velocity vector of the target, cos(0 + ip) = sin(cf) + ip) = -f.
vc vc
We have
—M ^ £ cos ^ + n sin ^ ^ M
and yt e [0, +rc>)
t
M M ( ft\ ftr. • ,, f , , M ( ft\ M
—— ^ —— f 1 - ) ^ / (£ cos ip + rj sin 0)e/oA ds ^ — (1 - J ^ —.
/0 fo J Jo ^ ' f0
o
We get an estimate
MM Po-^^P^Po + T- Vi G [0, +oo). /0 /0
Obviously, as /0 — p — p0.
The collision will not occur if the parameter /0 is selected according to the condition
M
Po ~ -j- > R /0
or
M
> —n-
In each specific case, the estimate can be obtained more accurately.
5.2. Determination of the control torque
The square of the control torque is
2 (AP1 + an2A)2 + (AP.2 - anxA)2 + J2 (a2 + + 2ai0n3) Pf + 2JAa(P1n1 + P2n2)P3
(i0 + an3)2
We rewrite it as
Q2 - 1
(AP1 + an2A)2 + (AP2 — an1A)2 +
(i0 + an3)2
/ r^-;-,, Aa(P,n, + P9n9) V A2a2(P,n, + P9n9)
+ J\/a,2 + d + 2air.no Po + , 1 * --t-LJ9J-
\ v ^ //72 I ,»2 I Orti
3 3 \ </-' • • 2i//,,//..y a2 + + 2i//,,//;.
The function Q2 takes the smallest value for
Aa(P1 n + P2 n2)
(5.2)
p =__
J {a2 + ¿2 + 2ai0n3)
5.3. Motion along a straight line
Let us direct the axis OX of a fixed coordinate system along a straight line along which the target and the spherical robot are moving, that is, 4 = p = 0. Let the target move along this line according to the law i(t) with velocity i(t). The system (4.1) takes the form
p = i — f0(P — Po), 9 = we,
1
[—(J — a cos e)P2 + sin 9 (aw% + mtRtg)], (5.3)
i0 — a cos 9
The square of the control torque is
= ({Jig ~ a2 cos2 0) P2 - a sin 9 {mtRtg cos 9 + iQuj'j))2 (i0 — acos9)2
Consider a simple case. When the target is moving at a constant velocity i = v^ = const, the distance function has the form
P = Po + ^(l-e-f°t).
Jo v 7
If the target is running away from the robot, that is, v^ > 0, then the distance between the geometric center of the robot and the target monotonically increases, demonstrating asymptotic dynamics:
Vp
t ->■ +00 p ->■ p0 + -T > R- (5.5)
Jo
There will be no collision. If the target moves in a straight line towards the robot and the condition
fo(R — Po) <Vp < 0
is met, then the robot will move in the same direction as the target, running away from it. The function monotonically decreases, demonstrating asymptotic dynamics (5.5). There will be no collision.
If the target moves at the velocity Vp ^ f0(R — P0) < 0, then a collision occurs at time t* =
= -j- In — ^ Therefore, the solution of the problem makes sense only for t G [0, t*].
Numerical experiment 1. The mechanical and geometric characteristics of the robot are defined as follows: R = 0.3 m, Rt = 0.2 m, m = mt = 2 kg, J = 0.48 kg • m2, a = 0.12 kg • m2, i0 = 0.4 kg • m2.
The distance between the target and the spherical robot at the initial time is p0 = 2 m. The target moves in a straight line at the velocity
i = 1.5 sin 0.2t.
Figure 2 shows the dynamics of the function Q2, the distance function p and the graphs of the angle 9 for the parameter values f0 = 1 (red), f0 = 2 (blue), f0 = 12 (green) (according to
condition (5.1) /0 >
10
20
30
(b)
40
50
60
(c)
Fig. 2. For f0 = 1 (red), J = 2 (blue), J = 12 (green), p0 = 2, V(0) = ¥>(0) = 0, 0(0) = 0, ue(0) = 0, (0) = 0: (a) graphs of the angle 0; (b) graphs of the distance function p; (c) graphs of the function Q2
5.4. Motion along a curved trajectory
The mechanical and geometric characteristics of the robot are defined as follows: R = 0.3 m, Rt = 0.2 m, m = mt = 2 kg, J = 0.48 kg • m2, a = 0.12 kg • m2, i0 = 0.4 kg • m2.
Numerical experiment 2. The target moves according to the law (£(t), n(t)), where
£(t) =9 — 8cos 0.1t, n(t) = 8 sin 0.1t cos0.1t.
The distance between the target and the spherical robot at the initial time is p0 = 1 m. Figure 3 shows the trajectories of the target (dot line) and of the geometric center of the robot (solid colored lines), the distance function and the square of the control torque for the parameter values J0 = 0.4 (red) J0 = 1 (blue), J0 = 3 (green). In Fig. 3a, the trajectory of the target starts at the point (1, 0) and the trajectory of the robot starts at the point (0, 0).
Numerical experiment 3. The target moves according to the law (£(t), n(t)), where
£(t) = 4 cos2 0.2t + cos 0.2t — 3, n(t) = 4 sin 0.2t cos 0.2t + sin 0.2t.
The distance between the target and the spherical robot at the initial time is p0 = 2 m. Figure 4 shows the trajectories of the target (dot line) and of the geometric center of the robot (solid colored lines), the distance function and the square of the control torque for the parameter values f0 = 0.8 (red) f0 = 1.5 (blue), f0 = 12 (green). In Fig. 4a, the trajectory of the target starts at the point (2, 0) and the trajectory of the robot starts at the point (0, 0).
30
(b)
30
(c)
Fig. 3. For f0 = 0.4 (red) f0 = 1 (blue), f0 = 3 (green), p0 = 1, V(0) = ^(0) = 0, 0(0) = 0.001, ug(0) = 0, (0) = 0: (a) trajectories of the target (dot line) and the geometric center of the robot (solid line); (b) graphs of the distance function p; (c) graphs of the function Q2
As the value of the parameter f0 increases, the amplitude of the oscillations of the distance function decreases, and the amplitude of the oscillations of the square of the control torque increases.
6. Conclusion
In this work, an algorithm is built to control the motion of the spherical robot with a pendulum actuator by means of servo-constraints to pursue the moving target. To do this, the pendulum actuator forcibly generates the control torque. Since servo-constraints allow only two components of the control torque vector to be uniquely defined, the third component is defined from the condition of minimality of the square of the control torque.
In this paper, the equations of motion of the mechanical system are constructed, an estimate of the distance between the geometric center of the spherical shell and the target p is obtained, and the boundedness of this distance is proved. With a given control with the parameter f0, the expression value \p — p0\ decreases with increasing numerical parameter f0. Thus, we can assume
(b)
(c)
Fig. 4. For f0 = 0.8 (red) f0 = 1.5 (blue), f0 = 12 (green), p0 = 2, V(0) = ^(0) = 0, 0(0) = 0.001, ug(0) = 0, (0) = 0: (a) trajectories of the target (dot line) and the geometric center of the robot (solid line); (b) graphs of the distance function p; (c) graphs of the function Q2
that the controlled motion of the spherical robot with sufficiently large values of the parameter f0 preserves the distance to the target. A general condition for the parameter f0 is also obtained, which allows avoiding a collision of the spherical robot and the target. But in each specific case, a more accurate estimate can be obtained.
The motion of the spherical robot is studied when the target moves in a straight line with constant or variable velocity and when the target moves along a curved trajectory.
Conflict of interest
The author declares that she has no conflicts of interest.
References
[1] Putkaradze, V. and Rogers, S., On the Optimal Control of a Rolling Ball Robot Actuated by Internal Point Masses, J. Dyn. Sys. Meas. Control, 2020, vol. 142, no. 5, 051002, 22 pp.
[2] Climbing and Walking Robots: Towards New Applications, H.Zhang (Ed.), Vienna: InTech, 2007.
[3] Ilin, K.I., Moffatt, H. K., and Vladimirov, V.A., Dynamics of a Rolling Robot, Proc. Natl. Acad. Sci. USA, 2017, vol. 114, no. 49, pp. 12858-12863.
[4] Hernandez, J.D., Barrientos, J., del Cerro, J., Barrientos, A., and Sanz, D., Moisture Measurement in Crops Using Spherical Robots, Ind. Rob., 2013, vol. 40, no. 1, pp. 59-66.
[5] Chaplygin, S.A., On a Ball's Rolling on a Horizontal Plane, Regul. Chaotic Dyn., 2002, vol. 7, no. 2, pp. 131-148; see also: Math. Sb, 1903, vol. 24, no. 1, pp. 139-168.
[6] Borisov, A. V., Kilin, A. A., and Mamaev, I. S., The Problem of Drift and Recurrence for the Rolling Chaplygin Ball, Regul. Chaotic Dyn., 2013, vol. 18, no. 6, pp. 832-859.
[7] Borisov, A. V. and Mikishanina, E.A., Dynamics of the Chaplygin Ball with Variable Parameters, Russian J. Nonlinear Dyn., 2020, vol. 16, no. 3, pp. 453-462.
[8] Bizyaev, I. A., Borisov, A. V., and Mamaev, I. S., Dynamics of the Chaplygin Ball on a Rotating Plane, Russ. J. Math. Phys, 2018, vol. 25, no. 4, pp. 423-433.
[9] Moshchuk, N. K., On the Motion of Chaplygin's Sphere on a Horizontal Plane, J. Appl. Math. Mech., 1983, vol. 47, no. 6, pp. 733-737; see also: Prikl. Mat. Mekh, 1983, vol. 47, no. 6, pp. 916-921.
[10] Bizyaev, I. A., Borisov, A.V., and Mamaev, I. S., Different Models of Rolling for a Robot Ball on a Plane As a Generalization of the Chaplygin Ball Problem, Regul. Chaotic Dyn., 2019, vol. 24, no. 5, pp. 560-582.
[11] Mamaev, I. S. and Vetchanin, E. V., Dynamics of Rubber Chaplygin Sphere under Periodic Control, Regul. Chaotic Dyn., 2020, vol. 25, no. 2, pp. 215-236.
[12] Kilin, A. A., The Dynamics of Chaplygin Ball: The Qualitative and Computer Analysis, Regul. Chaotic Dyn., 2001, vol. 6, no. 3, pp. 291-306.
[13] Schneider, D., Nonholonomic Euler-Poincaré Equations and Stability in Chaplygin's Sphere, Dyn. Syst., 2002, vol. 17, no. 2, pp. 87-130.
[14] Borisov, A. V., Kilin, A. A., and Mamaev, I. S., How to Control Chaplygin's Sphere Using Rotors, Regul. Chaotic Dyn., 2012, vol. 17, nos. 3-4, pp. 258-272.
[15] Gajbhiye, S. and Banavar, R. N., Geometric Modeling and Local Controllability of a Spherical Mobile Robot Actuated by an Internal Pendulum, Internat. J. Robust Nonlinear Control, 2016, vol. 26, no. 11, pp. 2436-2454.
[16] Bolotin, S.V., The Problem of Optimal Control of a Chaplygin Ball by Internal Rotors, Regul. Chaotic Dyn., 2012, vol. 17, no. 6, pp. 559-570.
[17] Borisov, A. V., Kilin, A. A., and Pivovarova, E. N., Speedup of the Chaplygin Top by Means of Rotors, Dokl. Phys., 2019, vol. 64, no. 3, pp. 120-124; see also: Dokl. Akad. Nauk, 2019, vol. 485, no. 3, pp. 285-289.
[18] Béghin, M. H., Etude théorique des compas gyrostatiques Anschutz et Sperry, Paris: Impr. nationale, 1921;
[19] Appel, P., Traité de Mécanique rationnelle: Vol. 2. Dynamique des systèmes. Mécanique analytique, 6th ed., Paris: Gauthier-Villars, 1953.
[20] Azizov, A. G., On the Dynamics of Systems Constrained by Servo-Constraints, Nauch. Trudy TashGU, 1971, no. 397, pp. 3-9 (Russian).
[21] Azizov, A. G., Motion of Controllable Mechanical Systems with Servo-Constraints, J. Appl. Math. Mech., 1990, vol. 54, no. 3, pp. 302-308; see also: Prikl. Mat. Mekh., 1990, vol. 54, no. 3, pp. 366-372.
[22] Teshaev, M., To the Problem of Motion Stabilization of Mechanical Systems Constrained by Ge-omtric and Kinematic Servo-Constraints, Izv. Vyssh. Uchebn. Zaved. Povolzhsk. Region. Fiz.-Mat. Nauki, 2009, no. 4 (12), pp. 27-38 (Russian).
[23] Teshaev, M., On the Design of Reactions of Servo-Constraints of Systems Constrained by Kinematic Constraints, Probl. Mekh., 2005, no. 1, pp. 3-7 (Russian).
[24] Kozlov, V. V., Principles of Dynamics and Servoconstraints, Vestn. Mosk. Univ. Ser. 1. Mat. Mekh., 1989, no. 5, pp. 59-66 (Russian).
[25] Kozlov, V. V., The Dynamics of Systems with Servoconstraints: 1, Regul. Chaotic Dyn., 2015, vol. 20, no. 3, pp. 205-224.
[26] Kozlov, V. V., The Dynamics of Systems with Servoconstraints: 2, Regul. Chaotic Dyn., 2015, vol. 20, no. 4, pp. 401-427.
[27] Tatarinov, Ya. V., Equations of Classical Mechanics in Concise Forms, Moscow: MGU, 2005 (Russian).
[28] Bajodah, A. H., Hodges, D.H., and Chen, Y. H., Inverse Dynamics of Servo-Constraints Based on the Generalized Inverse, Nonlinear Dyn., 2005, vol. 39, no. 1, pp. 179-196.
[29] Chen, Y. H., Mechanical Systems under Servo-Constraints: The Lagrange's Approach, Mechatronics, 2005, vol. 15, no. 3, pp. 317-337.
[30] Altmann, R. and Heiland, J., Simulation of Multibody Systems with Servo Constraints through Optimal Control, Multibody Syst. Dyn., 2017, vol. 40, no. 1, pp. 75-98.
[31] Betsch, P., Altmann, R., and Yang, Y., Numerical Integration of Underactuated Mechanical Systems Subjected to Mixed Holonomic and Servo Constraints, in Multibody Dynamics, J. M. Font-Llagunes (Ed.), Comput. Methods Appl. Sci., vol. 42, Cham: Springer, 2016, pp. 1-18.
[32] Kirgetov, V. I., The Motion of Controlled Mechanical Systems with Prescribed Constraints (Servoconstraints), J. Appl. Math. Mech., 1967, vol. 31, no. 3, pp. 465-477; see also: Prikl. Mat. Mekh., 1967, vol. 31, no. 3, pp. 433-446.
[33] Borisov, A. V. and Mamaev, I. S., Two Non-Holonomic Integrable Problems Tracing Back to Chap-lygin, Regul. Chaotic Dyn., 2012, vol. 17, no. 2, pp. 191-198.
[34] Ivanova, T. B. and Pivovarova, E. N., Dynamics and Control of a Spherical Robot with an Axisym-metric Pendulum Actuator, Nelin. Dinam., 2013, vol. 9, no. 3, pp. 507-520 (Russian).
[35] Mikishanina, E.A., Rolling Motion Dynamics of a Spherical Robot with a Pendulum Actuator Controlled by the Bilimovich Servo-Constraint, Theoret. and Math. Phys., 2022, vol. 211, no. 2, pp. 679-691; see also: Teor. Mat. Fiz., 2022, vol. 211, no. 2, pp. 281-294.
[36] Kilin, A. A., Pivovarova, E. N., and Ivanova, T.B., Spherical Robot of Combined Type: Dynamics and Control, Regul. Chaotic Dyn., 2015, vol. 20, no. 6, pp. 716-728.
[37] Ivanova, T.B., Kilin, A. A., and Pivovarova, E. N., Controlled Motion of a Spherical Robot with Feedback: 1, J. Dyn. Control Syst, 2018, vol. 24, no. 3, pp. 497-510.
[38] Balandin, D. V., Komarov, M. A., and Osipov, G. V., A Motion Control for a Spherical Robot with Pendulum Drive, J. Comput. Sys. Sc. Int., 2013, vol. 52, no. 4, pp. 650-663; see also: Izv. Ross. Akad. Nauk. Teor. Sist. Upr., 2013, no. 4, pp. 150-163.