Different Kinematic Path Following Controllers for a Wheeled Mobile Robot of (2,0) Type

In the paper a comparative study of selected kinematic path following controllers for a wheeled mobile robot of (2,0) type has been presented. The control strategies are based on one of two approaches to the path parameterization—either the Serret-Frenet frame with an orthogonal projection or the Serret-Frenet frame with a non-orthogonal projection of a robot on the desired path. The complete control system for the wheeled mobile robot consists of two parts, a kinematic controller and a dynamic controller, because of a presence of nonholonomic constraints. The behaviour of the presented algorithms is demonstrated through computer simulations.

just to mention platforms for transport operations, planetary exploration, automatic cleaning, museum tours etc. Thus robust control algorithms for such robotic objects are needed. There are numerous papers related to control algorithms for wheeled mobile robots published in the literature. Three basic types of tasks realized by mobile platforms can be distinguished: -point stabilization, -trajectory tracking (the robot has to follow a desired curve which is time-parametrized), -path following (the task of the robot is to follow a curve parametrized by a curvilinear distance from a fixed point).
While realizing a trajectory tracking task the robot needs to be in a particular position at a prespecified time and thus the robot could be pushed to its performance limits. In contrary, a path following task requires the robot to converge to a geometric curve with any feasible speed profile. This is why a path following problem bypasses the limitations of the trajectory tracking task. The objective of the paper is to review different path following algorithms for a unicycle-type wheeled mobile robot and verify their robustness properties with respect to noise and velocity constraints.
The considered type of a problem corresponds to e.g. automatic wall following or driving on a road while trying to maintain the distance between vehicle chassis and the side of the road constant.
Many solutions of the path following problem for the unicycle are dedicated to that particular type of a mobile platform. In the approach presented in [1] the position of the virtual vehicle to be tracked is simply defined by the orthogonal projection of the robot on the path. Such an approach is valid locally, only near the path. The another approach described in [2] overcomes initial condition constraints imposed on the robot by controlling explicitly the rate of progression of a virtual target. The consequence of this approach is that the amount of path following errors that have to converge to zero is increased by one comparing to the previously mentioned approach. The method proposed in [3] solves the problem of the bounded path curvature. It neither requires the computation of a projection of the robot position on the path, nor does it need to consider a moving virtual target to be tracked. Morin-Samson algorithm [4] uses the kinematic equations of the robot derived with respect to the Serret-Frenet frame transformed into a canonical form called the chained form. Some of the algorithms available in the literature also deal with obstacles avoidance, e.g. [5][6][7], or allow to realize a formation path following task, see e.g. [8,9].
More general approaches to designing kinematic control strategies may be applied for various nonholonomic mobile robots, e.g. one presented in [10]. However a generality of the proposed algorithm was achieved at the expense of the occurence of an undesirable chattering phenomenon. Usually better results are obtained when using algorithms dedicated to particular types of wheeled mobile robots.
In the paper different kinematic path following algorithms-which use the kinematic model of the robot expressed with respect to the Serret-Frenet frame-are compared: Samson algorithm [11], Morin-Samson algorithm [4], Soetanto-Lapierre-Pascoal algorithm [2] and two proposed alternative discontinuous algorithms. The first discontinuous algorithm results from the attempt of linearisation and decoupling of the equations describing the dynamics of path following errors, while the latter one is a modification of Samson algorithm.

The Mathematical Model of the Robot
There are five classes of wheeled mobile robots introduced in [12]. The proposed classification is based on two indices-a degree of mobility σ m and a degree of steerability σ s , see Table 1. The robots of (3,0) type have full mobility in the plane, which means that they are able to move in any direction without any reorientation, while the other have a restricted mobility. In the article considerations will be restricted to type (2,0) robots. Such robots have no steering wheels, but either one or several fixed wheels with a common axle, [13]. The wheeled mobile robot of (2,0) type, also called a unicycle, was depicted in Fig. 1. (x, y) represents coordinates of the characteristic point M relative to the inertial frame X 0 Y 0 and θ is a robot's orientation. The point M is located in the middle of the wheel axle of the vehicle. R is the radius of the robot's wheel and d is a half the width of the mobile platform. The motion of the unicycle can be described by generalized coordinates q m ∈ R n and generalized velocitiesq m ∈ R n . The assumption that the robot is moving on a plane without slippage of its wheels is made. It is equivalent to an assumption that the momentary velocity at the contact point between each wheel and the motion plane is equal to zero. This implies the existence of l (l < n) independent nonholonomic constraints expressed in Pfaffian form where A(q m ) is a full-rank matrix of (l × n) size. Since due to Eq. 1, the platform velocity is in a null space of A(q m ), it is always possible to find a vector of special auxiliary velocities η ∈ R m , m = n − l, such thaṫ where G is an n × m full rank matrix satisfying the relationship AG = 0. The Eq. 2 is called the kinematics of the nonholonomic mobile platform. For the unicycle the Eq. 2 has the following form ⎛ where auxiliary velocities η 1 and η 2 are scaled rotation velocities of the unicycle's wheelsφ 1 andφ 2 : One can use notations where v is the linear velocity of the robot and where ω denotes angular velocity of the robot.
Using the symbols v and ω the kinematic model of the considered wheeled mobile robot can be described by the equations

The Dynamic Model
To obtain the model of the unicycle's dynamics, the d'Alembert Principle has to be evoked where: M(q m ) inertia matrix of the mobile platform, A(q m ) matrix of nonholonomic constraints for the platform, λ vector of Lagrange multipliers, B(q m ) input matrix, τ vector of controls.
Matrix A(q m ) is Pfaffian matrix for the platform, see Eq. 1, while B(q m ) describes which state variable is directly controlled by the actuator. The model (8) can be also expressed using auxiliary velocities η. For this purposeq m is computed q m = G(q m )η +Ġ(q m )η (9) and the vector of Lagrange multipliers is eliminated, using a condition G T A T = 0, by left-sided multiplying the mobile platform equations by G T matrix. After substitutingq m the Eq. 8 transforms into with M * = G T MG (11) and The considered dynamic model of the wheeled mobile robot of (2,0) type is very simple as elements of the inertia matrix are constant, nevertheless introducing dynamic model allows to observe an influence of the inertia of the robot on the realization of a desired task.

Description of the Robot Relative to a Desired Path
To describe the position of the robot relative to a desired path, different approaches may be applied. The one of the most commonly used approaches is based on the Serret-Frenet framewhich consists of vectors tangent, normal and binormal to a curve-moving along a desired path. The robot moving on a plane is considered so the Serret-Frenet frame consists only of vectors tangent and normal to the path. The path P is characterized by a curvature κ(s), which is the inversion of the radius of the circle tangent to the path at a point characterized by the parameter s which is a curvilinear distance from the fixed point, i.e. from the beginning of the path. The desired orientation of the mobile platform satisfies the equatioṅ The sign on the right side of the Eq. 13 depends on the direction of moving along a desired curve (negative when the Serret-Frenet frame moves in the clockwise direction, positive otherwise).

The Serret-Frenet Frame with an Orthogonal Projection of a Robot on the Path
In this approach it is assumed that the robot has to follow a virtual target which is its orthogonal projection on the desired curve, see -the curvature κ(s) is bounded from above (the desired path cannot be too much curved), -the robot cannot move too far from the path (the Serret-Frenet parametrization is local), see for a detailed explanation e.g. [14]. The position of the point M relative to an inertial frame is equal to t 0 = q 1 1 , while its position relative to the Serret-Frenet frame is equal to t 1 = r 1 1 . The relationship between t 0 and t 1 can be described by the matrix equation where Therefore the following equation holds After differentiating and transforming the Eq. 16, one has The Eq. 17 could be multiplied by R T on the left sidė The transformation from the inertial frame X 0 Y 0 to the Serret-Frenet frame is equal to thus the velocity of point M relative to the Serret-Frenet frame can be calculated as follows Using the relationships and as the reference vehicle is moving along a desired path in the direction of X axis of the Serret-Frenet frame, the Eq. 18 can be rewritten as ⎛ Finally one can obtain equations forl andṡ To avoid singularity l = ± 1 κ(s) one has to ensure that during the control process an inequality |l κ(s)| < 1 holds, which means that the parametrization is local. In addition, the orientation error is determined and its derivativė For the unicycle the kinematic model expressed with respect to the Serret-Frenet frame with an orthogonal projection of a robot on the path is given by the following system of equations (29) The model described by the Eq. 29 can be transformed into the three-dimensional chained systeṁ using the change of coordinates and control variables The presented transformation into the chained system is local, |θ| < π 2 .

The Serret-Frenet Frame with a Non-orthogonal Projection of a Robot on the Path
The similar reasoning can be carried out for the case when the position of the virtual target is defined by the non-orthogonal projection of the actual vehicle on the path (see Fig. 3). In that situation there are three path following errorsan orientation error and two distance errors, one in the direction of the X axis and second in the direction of Y axis of the Serret-Frenet frame. The velocity of r 2 is equal tȯ From Eq. 33 one gets ⎛ and thuṡ There is no singularity related to distance errors in Eqs. 38-39. Thus a path parametrization based on the Serret-Frenet frame with a non-orthogonal projection of a robot on the path is not local.
For the unicycle the kinematic model expressed with respect to the Serret-Frenet frame with a non-orthogonal projection of a robot on the path is given by the following system of equations ⎧ ⎪ ⎨ ⎪ ⎩ṡ (40)

Control Problem Statement
The control problem for the considered robot is as follows: Design a control law τ such that the wheeled mobile robot of (2,0) type with a fully known dynamics follows a desired path and path following errors converge to zero.
The desired path has to be admissible, i.e. it can be realized without slippage of robot's wheels. It is assumed that the desired path is a smooth curve which has two smooth and bounded derivatives relative to s variable.
The complete model of a nonholonomic system consisting of kinematics and dynamics has a structure of two cascaded equations. To find a control law for such a cascade system, one may use the backstepping-like procedure [15]: -kinematic controller η r -generates a 'velocity profile' which ensures the realizability of a path following task in such a way that nonholonomic constraints are satisfied; the kinematic controller does not take into account the dynamics of the object, -dynamic controller τ -its task is to regulate real velocities η towards the reference control η r .

Path Following for a Unicycle-Kinematic Control
There are different approaches to formulation of a path following task. The robot's motion can finish by stopping on a path or it may be continuous, cyclic. In this paper the latter approach is adopted. It is assumed that a direction of a movement along the desired curve is opposite to the clockwise direction, this means thaṫ Hence the equations describing path following errors for a case of an orthogonal projection of a robot on the path have a form as beloẇ and in a case of a non-orthogonal projection are equal tȯ

Samson Control Algorithm
Path following errors for the unicycle can be expressed as followṡ where u = ω − κ(s) cosθ 1−κ(s)l v is a new control for the second equation. Samson kinematic control law [11] for the systems (44)-(45) is equal to The systems (44)-(45) with a closed-loop of the feedback signal (46) is asymptotically stable. That can be shown using the following Lyapunov function and Barbalat lemma, see for details e.g. [16].

Discontinuous Control Algorithm-First Proposal
The following discontinuous control law for the system (42) where v c = const, k 1 , k 2 > 0. The initial orientation errorθ(0) can not be equal to zero. The system (42) with a closed-loop of a signal (48) has the forṁ The inequality |l κ(s)| < 1 resulting from the restrictions imposed on the desired path is satisfied when l(0) satisfies this inequality since the timederivative of l is non-increasing.
The expression −k 1 l sinθ is undefined for (l,θ) = (0, 0). Therefore the proposed algorithm is applied in a modified version with to be a small positive number, e.g. = 0.001.

Discontinuous Control Algorithm-Second Proposal
The another proposed kinematic path following algorithm for the system (42) is a modification of the Samson algorithm [11].
In practice this algorithm is used in the following form where is a small positive number.

Morin-Samson Control Algorithm
For the kinematic equations expressed with respect to the Serret-Frenet frame with an orthogonal projection of the guidance point on a path which are transformed into the 3-dimensional chained system (30), the following control law is proposed [4] In general u 1 does not have to be constant. It is sufficient if it is a bounded differentiable time function whose derivative is bounded and which does not tend to zero as t tends to infinity. What is more, if the following inequality holds with κ max = max s |κ(s)|, then the constraint |l κ(s)| < 1 is satisfied along any solution to the controlled system.

Proof
The system containing only state variables z 2 and z 3 is considered. Such a system can be written in the below matrix forṁ where z c = z 2 z 3 T and a matrix is equal to The system (55) will be asymptotically stable if all eigenvalues of the matrix have negative real part, i.e. the characteristic polynomial of the matrix p(λ) = det(λI 2 − ) = λ 2 + |u 1 |k 2 λ + u 2 1 k 3 (57) must by Hurwitz polynomial. That condition is fulfilled for k i > 0. Then consider the Lyapunov function For a positive coefficient k 3 the proposed Lyapunov function is non-negative The time-derivative of V calculated along a system's solutioṅ is non-positive. Thus V is non-increasing and converges to some limit value V lim ≥ 0. This implies that the variables z 2 and z 3 are bounded. If it is assumed that the control signal u 1 is bounded, the second derivative of V is a sum of bounded functions. ThereforeV is uniformly continuous. From Barbalat lemma one may conclude thatV tends to zero which implies that z 2 tends to zero and thusθ → 0. The time- is the sum of two terms which tends to zero and a third which is uniformly continuous since its derivative is bounded. Using the fact that v 2 z 2 tends to zero and the extension of Barbalat's lemma [1], one may conclude thatv 2 z 2 → 0. Thus v 2 u 1 k 3 z 3 tends to zero, too. As the linear velocity of the robot v does not tend to zero and u 1 , k 3 are constant, lim t→∞ z 3 must be equal to zero which means that V lim = 0 and l → 0. Moreover the following inequality holds which leads to Finally one has |l κ max | < 1.

Soetanto-Lapierre-Pascoal Control Algorithm
The control algorithm proposed in [2] for the system (43) is equal tȯ where the following assumptions have been made It guarantees the convergence of y 1 , s 1 andθ to zero.

Proof Consider the Lyapunov function
in non-positive. This means that lim t→∞ V(t) = V lim and s 1 , y 1 and (θ − δ) are bounded.V is uniformly continuous because its derivative is bounded as sum of bounded functions. By Barbalat's lemmaV tends to zero. Therefore s 1 → 0 and (θ − δ) → 0. Differentiating (θ − δ) with respect to time giveṡ Hencė is the sum of two terms which tend to zero and third term which is uniformly continuous. As v 2 (θ − δ) tends to zero, the extension of Barbalat's lemma tells us thatv 2 (θ − δ) also tends to zero which implies that the term γ y 1 v 3 sinθ−sin δ θ−δ → 0. The linear velocity v does not tend to zero when t tends to infinity and γ is constant. The expression sinθ−sin δ θ−δ could be rewritten in the following way which for (θ − δ) → 0 tends to cos δ. If only δ does not tend to kπ 2 , the the whole term sinθ−sin δ θ−δ does not tend to zero. Under this assumption y 1 tends to zero. This implies that V given by the Eq. 67 also tends to zero. From the assumption that δ(0, v) = 0 and the convergence of y 1 to zero, δ → 0 which leads toθ → 0.

Dynamic Control
The exact linearisation algorithm would be applied for a task of dynamic control of the unicycle. To the model (10) the following control is plugged where ω 1 is a new input for the linearised system. Then the system (10) with a closed-loop of the feedback signal (72) has a foṁ η = ω 1 .
(73) ω 1 is chosen to be equal to with K m = K T m > 0. Then the equation describing the dynamics of errorṡ is asymptotically stable.

Simulations
The simulations were carried out to illustrate the behaviour of the wheeled mobile robot of (2,0) type with the presented controllers and the dynamic model of the robot was simulated. The initial position of the platform was equal to (x 0 , y 0 , θ 0 ) = (1.5, 0, π 3 ) for all algorithms except Soetanto-Lapierre-Pascoal algorithm and (x 0 , y 0 , θ 0 ) = (5, 1, π 3 ) for Soetanto-Lapierre-Pascoal algorithm. The desired path was the circle described by the equations where R = 2 m. The simulation time was set for 25 s for all algorithms except Soetanto-Lapierre-Pascoal algorithm and for 50 s for SLP algorithm.
Simulations were carried out in ideal conditions, i.e. without modelling any kind of a distortion, and in the case when the robot's orientation was distorted by a Gaussian white noise with a variance σ 2 . For the wheeled mobile robot of (2,0) type the parameter that has the biggest influence on the control is the orientation-this is why θ was chosen to be noised. It was assumed that σ = 0.1 which may be treated as the total measurement inaccuracy of devices at the level of approximately ±5 degrees. Separate simulations with the white noise added to velocities of wheels to verify the influence of a motor quality on the realization of the path following task by the presented algorithms were carried out as well. In that case a noise variance was chosen to be equal to 0.1. To illustrate the influence of an inertia on the performance of the different control strategies in the perturbed cases two graphs have been combined together-the one when only the kinematic model was simulated and the second when the dynamical model was simulated.
Some additional simulations which take into account velocity constraints were carried out as well. The velocity constraints imposed on the robot are chosen as and the matrix K m in the dynamic controller is equal to 50 · I 2 . The results of the simulations have been presented in Figs. 4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20                 Samson algorithm seems to be the most noiserobust among presented algorithms. For the noised orientation the path circled by the robot in XY plane is almost the same as the desired path-it is shifted a bit. Little worse results were obtained for the noised velocity of wheels case because the robot followed a circle-shaped path with a bigger radius than the radius of the desired path.
The discontinuous control algorithms work properly in ideal conditions and are characterized by a fast convergence of path following errors to zero without an occurrence of oscillations in the courses of the variables l andθ during the transient phase. However they are not noise-robust, even for a relatively small value of noise variance. It means that they cannot be used in practical applications where one has to take into account the probabilistic nature of the physical world. Thus it is recommended to design rather continuous control algorithms for the path following task instead of discontinuous ones.
Soetanto-Lapierre-Pascoal algorithm does not perform sufficiently well for the noised orienta-  The main difference between Morin-Samson and Samson algorithms is that before Morin-Samson algorithm could be used, two nonlinear transformations of the robot's kinematics have to be computed, while for Samson algorithm one transformation is enough. Morin-Samson algorithm does not work properly for the noised orientation. However when one detaches the object's dynamics and controls the robot only at the kinematic level, Morin-Samson algorithm works just a little worse than Samson algorithm. That issue has to be deeply investigated in the future.
What is more, the path following task is realized correctly by the considered wheeled mobile robot when the presented algorithms are modified by adding velocity constraints. Introducing such constraints slows down the convergence of path tracking errors to zero, but does not disrupt the realization of the task.

Conclusions
In the paper different kinematic path following algorithms for the wheeled mobile robot of (2,0) type have been presented. For the two of the presented algorithms the proofs of their convergence have been performed.
The choice of the path parametrization is of a great importance in the path following task. The significant constraint of the parametrization which uses the Serret-Frenet frame with an orthogonal projection of the robot on the desired path is its local character. Therefore if the initial position of the robot is too far from the path, the robot has to at first get closer to the desired path before it can start the realization of the path following task. In contrary the approach using the Serret-Frenet frame with an non-orthogonal projection does not have such a drawback but it has a bigger amount of path following errors to be brought to zero and the designing of the control law may be more difficult.
The study showed that the impact of the noise on the realization of the path following task might be huge. This is why when using model-based control one has to measure the robot's posture as precisely as possible and ensure as high motor's quality as possible. The article is not comprehensive and only a selected group of algorithms which are based on the Serret-Frenet frame attached to a path was tested. In the future the other types of path following algorithms could be investigated taking into account their noise robustness. The extension of this work could be a study of the robustness properties of path following algorithms which deal with obstacles avoidance.