VFO Path following Control with Guarantees of Positionally Constrained Transients for Unicycle-Like Robots with Constrained Control Input

The Vector-Field-Orientation (VFO) method is a control design concept which was originally introduced for the unicycle kinematics to solve two classical control tasks corresponding to the trajectory tracking and set-point control problems. A unified solution to both the tasks was possible by appropriate definitions of the so-called convergence vector field. So far, there has not been a version of the VFO control law for the third classical control task concerning the path following problem, which is particularly meaningful in the context of practical applications. The paper fills this gap by presenting a novel VFO path following controller devised for robots of unicycle-like kinematics with the amplitude-limited control input. Opposite to most path following controllers proposed in the literature, the new control law utilizes the recently introduced level curve approach which does not employ any parametrization of a reference path. In this way, the proposed solution is free of main limitations resulting from the need of unique determination of the shortest distance from a robot to the path. In contrast to other solutions, a formal analysis of the closed-loop dynamics presented in this paper provides sufficient conditions which guarantee constrained transients of robot motion with the position confined to a prescribed subset around a reference path. Theoretical results have been validated by numerical examples and experimentally verified with utilization of a laboratory-scale differentially driven robot.


Introduction
The path following (PF) problem belongs to the collection of classical control tasks defined for mobile robots [6]. Unlike in the trajectory tracking problem, the PF task does not impose time constraints on the robot motion apart from a geometry determined by a reference path. Numerous solutions to the PF problem have been proposed in the literature with applications to various structures of robotic vehicles [1, 2, 7, 16-19, 28, 29], in particular to the nonholonomic wheeled robots of unicycle-like kinematics [6, 12-14, 25, 27]. Essential geometry of planar motion for any single-body nonholonomic vehicle can be generically described by a unicycle kinematic model. As a consequence, applicability of control laws devised for the unicycle model can be relatively easily extended to more complex kinematics by employing the cascadelike control approach -see, e.g., [20,22,23].
All the available control laws solving the PF problem can be divided into two general groups: those employing some parametrization of a reference path (usually by using an arc-length parametrization), and these not using any path parametrization but instead applying the so-called level curve approach. The first group originates from the classical concept [29], where the parametrization combined with a projection (orthogonal [29] or non-orthogonal [15]) of a current robot position on the path allow one to uniquely select the current point on a reference path in correspondence to which all the path following errors may be determined. Successful application of this approach in the most popular version with the orthogonal projection requires determination of the shortest distance to a path, which is generally a nontrivial issue and is valid only locally in a sufficiently small neighborhood of a reference path. Locality, in turn, imposes conservative limitations on the initial robot position with respect to the path.
Algorithms from the second group employ a completely different idea, where a reference path is defined implicitly as a set of reference points satisfying some scalar equation. Evaluating this equation for the points taken from the reference set gives the zero value, while for the points outside the reference set -a non-zero value. This non-zero value is treated as a signed measure of a robot distance to the reference set. In this way, the need of computations of the shortest distance to a path is avoided. Simplicity of practical implementation of the control laws applying the level curve approach makes them particularly attractive for the robotics community. However, to the authors' best knowledge, so far only few controllers have been proposed and applied to robotic vehicles using this concept. It has been utilized in [5] in the context of the VTOL aerial vehicles, while its application to the unicycle-like wheeled robot has been presented in [26] (see also [30]) on a kinematic level, and in [8] considering both kinematics and dynamics of a vehicle. Worth to mention also works [4] and [20] presenting applications of the level curve approach to the coordinated multiple unicycles and to the N-trailer robots, respectively. This paper presents a novel solution to the PF problem for unicycle-like kinematics formulated in the VFO (Vector Field Orientation, [9]) framework and utilizing the level curve approach for definition of a reference set. The main contribution of this work relies on an introduction of a newly devised version of the VFO control law specialized to the (positionally constrained) PF problem, not addressed so far in any of the previous works devoted to the VFO control method. The proposed solution can be applied to a wider class of reference paths than those admitted in [8], and guarantees the absence of any unstable closedloop equilibria in contrast to the method presented in [26]. Formal stability guarantees provided in the paper explicitly take into account control input limitations imposed on a robot (not addressed in [26]). Moreover, we determine sufficient conditions guaranteeing that position of a robot remains in a prescribed neighborhood of a reference path during the whole transient stage of the control process. This utility, not considered by the authors of works [26] and [8], may have an essential practical meaning for motion control applications in the cluttered environments. Finally, the new proposition complements a family of the VFO control laws, introduced so far for the tracking task and the stabilization problem, see [9,21].
Notation For the sake of concise notation, we will apply a short notation sα ≡ sin α, cα ≡ cos α in the whole text. By symbol · we will denote the standard Euclidean norm.

Vehicle Model and Control Input Constraints
Let us consider the unicycle-like mobile robot presented in Fig. 1 which can be described by kinematicṡ where defines the vehicle configuration, while u = [u 1 u 2 ] ∈ U ⊂ R 2 is a control input comprising the angular velocity u 1 of a vehicle body and the longitudinal velocity u 2 of the so-called guidance point P .
In the field of wheeled mobile robots, kinematics (1) usually corresponds to the differentially-driven locomotion where the two wheels of the robot from Fig. 1 are independently driven by two actuators. A relation joining robot-body (pseudo) velocities in vector u with angular velocities = [ω r ω l ] of the robot right and left wheels, respectively, comes from the well-known equation where r w > 0 and b > 0 denote the wheel radius and the wheels base, respectively, shown in Fig. 1. From now on, we will assume that control input u ∈ U is subject to constraints resulting from a prescribed maximal admissible angular velocity ω m > 0 of a robot wheel. As a consequence, we postulate that angular velocities of the robot wheels should satisfy Condition (4) where the coefficient σ ∈ R \ {0} and an analytical form of the scalar function f (p d ) are the design terms. In contrast to the classical parametrized form, a reference path has been implicitly defined by Eq. 5 as a zero-level curve of some function F : The sign of coefficient σ in Eq. 5 will determine a desired motion direction along a reference path in a global frame, that is, either the clockwise/counter-clockwise or the right/left direction (see definition (7)). For the reference set (5) we assume what follows.

A1. For any bounded
is at least twice differentiable with respect to its arguments, that is, there exist bounded partial derivatives where 0 < m ≤ m < ∞ are the lower and upper bounds of the function gradient norm, respectively. A3. A reference longitudinal velocity along a reference path is restricted to the form where ζ d determines a desired motion strategy along a reference path, i.e., forward motion for ζ d := +1 or backward motion for ζ d := −1. Note that a definition of a non-constant velocity u 2d would require some parametrization of u 2d along a reference path. Since the level curve approach avoids parametrization of a path, we restrict further considerations to the case proposed in Eq. 6.
Reference orientations tangent to the reference path determined by set (5) will be defined as where Atan2 (·, ·) : R × R → [−π, π) is a fourquadrant inverse tangent function. Note that the signs of coefficients σ used in definition (5) and ζ d introduced in Eq. 6 both determine the resultant quadrants in which the reference angle (7) is defined.
Remark 1 One assumes that the upper bound ω m introduced in Eq. 4 is large enough to ensure that a reference path can be perfectly followed with the reference longitudinal velocity (6) without velocity saturation of any of the robot wheels. That is, one assumes that for all t ≥ 0 holds All the subsequent considerations implicitly assume satisfaction of inequality (8).

Control Problem Formulation
Following the idea suggested in [30], we will treat F (p) as a positional measure of the path following error. It seems justified because F (p) is zero if and only if p ∈ S d , while a sign of a value of F (p) for p ∈ S d depends on a side on which the robot position stays relative to the reference path. 1 Let us define the path following error as follows where function ρ : R → [−π, π) confines the orientation error to the range [−π, π), while the form of θ d (p) results from Eq. 7.

Definition 1 (Positionally Constrained PF Problem)
The objective is to find a bounded feedback control law u = u(q) for kinematics (1) satisfying velocity limitations (4), which guarantees boundedness and asymptotic convergence of error (9) in the sense where D * F ⊂ D F ⊂ R is some prescribed positional subset.
In contrast to the conventional PF problem, Definition 1 imposes a requirement of a positionally constrained robot motion determined by the prescribed subset D * F . This functionality can be especially useful for control applications in the cluttered environments. In the next section, we will propose a solution to the above stated problem employing the VFO approach.

General Form of the VFO Control Law
A general structure of the VFO control law for unicycle kinematics (1) can be derived upon the Vector Field Orientation methodology presented in [9]. According to this methodology, one postulates the existence of the so-called convergence vector field which has a meaning of a generalized velocity with angular component h θ and longitudinal component For every configuration q the convergence vector field determines an instantaneous desirable direction of motion and orientation for a robot to reach the goal, which can be represented by a reference point, a reference trajectory, or (as in the current case) a reference path. Particular forms of vector field (11) have to be independently defined for particular control problems; they determine a desirable transient behavior and steady motion for a robot. In the VFO methodology, one aims to find a control law which guarantees tracking of the convergence vector field by the configuration velocity of the unicycle. It can be expressed by the postulateq(t) = h(q(t), ·). By substituting forq the particular terms from the right-hand side of Eq. 1, the formulaq(t) = h(q(t), ·) gives three postulated scalar equations, namely u 1 = h θ , u 2 cθ = h x , and u 2 sθ = h y . Multiplying the latter two equations by cθ and sθ, respectively, and adding them by sides gives a postulated equation for the second control input in the form u 2 = h x cθ +h y sθ . Thus, a general form of the VFO control law can be written as follows (see [9]): The control components u VFO 1 and u VFO 2 have clear geometrical interpretation corresponding to a generalization of control in polar coordinates, according to which the former is called the orienting control while the latter is called the pushing control (for more details see [9]).
It is worth to emphasize that the general form of the VFO control (12) is valid regardless of the control problem under consideration, i.e., the point stabilization, the trajectory tracking, or the path following. The only difference comes from a definition of the convergence vector field (11) which must be specialized for a particular control task. So far, definitions of the vector field (11) have been proposed for two control tasks, i.e., for stabilization and tracking (see [3,9]). In the next section, we will complement the available definitions with a new one specialized for the path following problem.
Hereafter, by saying about the nominal control applied into kinematics (1) we will understand the substitution u := u n u VFO (13) with u VFO defined by Eq. 12. By referring to the nominal control (indicated by the subscript n) we will understand the control conditions in which no control input constraints of the robot are taken into account.
To address the control input constraints, we will apply the input scaling procedure presented in Section 3.3.

Definition of the Convergence Vector Field
We are going to define the convergence vector field (11) for the case of the PF Problem. To this aim, let us introduce two mutually orthogonal vectors w ⊥ (p) R w(p) (14) where R = 0 1 −1 0 is a rotation matrix of angle − π 2 , while F x and F y are the partial derivatives defined in assumption A1.
We propose to define a longitudinal component of the convergence vector field as follows (16) where I 2×2 is the identity matrix, k p > 0 is a design parameter, velocity v d results from Eq. 6, whereas is a normalized vector of the negative gradient of function F (p), well defined for all p ∈ D (see assumptions A1-A2).
In order to define the angular component h θ of the vector field (11), let us introduce the auxiliary orientation angle where the operator 2 Atan2c (·, ·) : R × R → R is a continuous counterpart of the four-quadrant function Atan2 (·, ·) : R × R → [−π, π), and the auxiliary orientation error Following [9] and [21], we propose to define h θ (q) k a e a (q) +θ an (q) (20) where k a > 0 is a second design parameter, whilė is the nominal feedforward term. The nominal time derivativesḣ xn andḣ yn used in Eq. 21 result from the following equatioṅ where (omitting the arguments for the sake of compactness) The time derivatives indexed by subscript n and defined by Eqs. 23 and 24 indicate that they are computed upon velocitiesẋ andẏ obtained from kinematics (1) driven by the nominal control input u = u n = u VFO (see Eq. 13), that is, without taking into account any control input constraints. This notational distinction is crucial for proper analysis of the closed-loop dynamics after considering control input constraints using a scaling procedure proposed in Section 3.3.
Remark 2 According to definition (16) and due to assumption A3 one can easily verify that Thus, the vector field (16), and consequently the auxiliary angle (18) with nominal time derivative (21), are well determined if only ∇F (p) = 0. The latter condition is satisfied for all p ∈ D under assumption A2.
Remark 3 Parametric synthesis of the VFO controller involves selection of only two positive values for parameters k p and k a . Previous experience with the VFO controllers devised for the trajectory tracking and set-point control tasks, see [9,22], may suggest selection of k p and k a according to a simple design rule: k a > k p , and in particular k a = 2k p . Selection of k p shall result from a compromise between a desirable rigidity of the controller on one hand, and dominant practical limitations on the other hand, caused usually by the presence of a measurement noise in a feedback loop or by the time delays affecting a control loop. Based on the previous experience, one may suggest to take (at least initially) k p ∈ [1, 5].

Control Input Scaling
The nominal control law (13) does not take into account control input limitations resulting from the prescribed condition (4). Satisfaction of constraint (4) can be guaranteed by application of the so-called Velocity Scaling Block (VSB) utilized, e.g., in [9,22]. The working principles of the VSB can be explained as follows. Assume that the nominal control input u n = [u 1n u 2n ] has been computed for kinematics (1) according to Eq. 13. An action of the VSB is determined as a post-processing of the nominal control input by taking where u s is a scaled control input, ς(t) is a scaling function defined as while velocities n = [ω rn ω ln ] are obtained by applying (3), that is, It is worth to emphasize that scaled control input u s applied into kinematics (1) ensures, by construction, satisfaction of constraint (4), simultaneously preserving an instantaneous nominal motion curvature, that is, u 1s /u 2s = u 1n /u 2n , see [9]. The latter property assures a well predictable transient motion of a robot despite reaching the control input limitations. Location of the Velocity Scaling Block in a resultant control system has been clarified by the block scheme in Fig. 2. According to definition (26), it is evident that for ω m > 0 and for any bounded nominal control u n there exists a lower bound The lower bound ς defined above will be utilized in the stability analysis in Section 3.4.

The Main Result
The main result of the paper can be formulated by the following theorem.

Theorem 1
The VFO control law (25), with the nominal term (12) determined for the convergence vector field defined by Eqs. 16 and 20, applied into kinematics (1) by taking u(t) := u s (t) (25) = ς(t)u VFO (t) (12) if the initial errors satisfy for the bounds r f and r a taken as a one of two alternative pairs of values with r * 1 and r * 2 being positive roots of respective equations Remark 4 The two pairs, (p1) and (p2), of bounds r f and r a determine different conservativeness degrees of the proposed solution. In particular, the pair (p1) admits the initial positional error from the whole prescribed set D * F , but it confines the admissible initial error |e a0 | to the range not exceeding the value of r * 1 which is always less than π/2 rad (since φ is finite upon assumptions A1-A3). On the other hand, the upper bound r * 2 in the pair (p2) is, in general, not limited by the value of π/2 rad (generally admitting larger initial error |e a0 |), but at the expense of the more conservative bound r f imposed on the positional error (with the term e 2 a0 in the denominator). Two above pairs of the upper bounds have been intentionally provided to allow for more flexible usage of the proposed solution in various practical circumstances. Namely, if the initial errors do not meet constraints for the upper bounds from pair (p1), one can alternatively check satisfaction of the constraints for the pair (p2). For example, prescribing r F = 2.8, φ = 9.4, and μ = 0.5 (cf. conditions of example SimII in Section 4), and postulating |e a0 | = 1.5 rad, the pair (p1) returns r f = 2.8, r a ≈ 1.21 rad while (p2) gives r f ≈ 1.92 and r a ≈ 1.93 rad. Thus in this particular case, the auxiliary initial error e a0 does not satisfy constraints imposed by (p1), but the Positionally Constrained PF Problem can still be resolved upon (p2) if only the initial positional error |e F (p(0))| < 1.92.
Next, we are going to analyze closed-loop dynamics of the positional error component e F (p) ≡ F (p), see Eq. 9. The set D * F defined by Eq. 30 imposes a limit on an admissible domain of the positional error, that is, for which the pair (e F , e a ) = (0, 0) is the only equilibrium, and point e a = 0 of dynamics (37) is globally exponentially stable according to Eq. 33. Now, one can treat the term e a in Eq. 36 as a perturbing input, whereė F = −ς k p ∇F e F for e a = 0. We will proceed further considerations independently for the two alternative pairs (p1) and (p2) of bounds r f and r a introduced in Theorem 1. They will be subsequently presented in the next two paragraphs, followed next by a continued common analysis. In the sequel, we will utilize the concept of input-tostate stability [32] which has been shortly recalled in Appendix E.
Analysis Concerning the Pair (p1) Let us define a positive definite function One can estimate a time derivative of V 2 (e F ) as follows: where ν ∈ (0, 1) is a majorization constant, the bounds m, m, and constant ς result from assumption A2 and Eq. 28, respectively, while δ a c 2 (sup t≥0 |e a (q(t))|) = c 2 |e a0 | > 0 for |e a0 | < π 2 (41) has been determined upon (34). According to Eq. 40, one observes thatV 2 ≤ 0 if the term W (e F , e a ) is non-positive. In particular, one may conclude thaṫ where is a function of class K upper bounded by (see Eq. 34) As a consequence of Eq. 42, one concludes that dynamics (36) is locally ISS (Input-to-State Stable, see Appendix E) with respect to input e a satisfying for all t ≥ 0, where β(·, ·) is a function of class KL, while = χ(|e a |) In the light of constraints determined by Eqs. 35 and 41, the ISS result (45) is valid locally for the initial positional error (cf. Appendix E) and the supremum (34) of the perturbing input satisfying According to the form of Eq. 43 and recalling definition from Eq. 41, the inequality (48) can be rewritten as |e a0 | which gives the resultant condition where r * 1 < π/2 is a positive root of equation Since r/ cos 2 r is a monotonic function, and r F k p mν v d m > 0 is a finite constant, a positive root of Eq. 51 will be always less than π/2 satisfying the second inequality postulated in Eq. 49.

Analysis Concerning the Pair (p2) Let us define an auxiliary time-dependent function
which is a solution of the differential equatioṅ f a (t) = −ςk a f a (t) for the initial condition f a (0) e a0 . Thus, by comparing (54) with (31) one observes ∀ t ≥ 0 f a (t) = e a (q(t)). (55) For all t ≥ 0, the function (56) is positive definite, V 2 (0, t) ≡ 0, and for the K-class functions A time derivative of V 2 (e F , t) can be estimated as follows: where we have utilized equality (55), while the bounds m and m result from assumption A2. Recalling the form of coefficient μ (see Eq. 56), and utilizing the fact e 2 a ≥ s 2 e a = 1 − c 2 e a , one may proceed the above estimation by writinġ where ν ∈ (0, 1) is a prescribed majorization constant. According to Eq. 59, one observes thatV 2 ≤ 0 if the term W (e F , e a ) is non-positive. In particular, one may conclude thaṫ is a function of class K upper bounded by (see Eq. 34) According to Eq. 60, one may conclude that dynamics (36) is locally ISS (Input-to-State Stable, see Appendix E) with respect to input e a satisfying |e F (p(t))| ≤ max β(|e F (p(0))|, t);γ sup t≥0 |e a (q(t))| (34) = max{β(|e F (p(0))|, t);γ(|e a0 |)} for all t ≥ 0, where β(·, ·) is a function of class KL, while γ (|e a |) = α −1 1 [α 2 (χ(|e a |))] Due to constraint (35), the ISS result (63) is valid locally for the initial positional error (cf. Appendix E) and the supremum (34) of the perturbing input satisfying where the form of r f in the above inequality has been taken from Eq. 65. Because both the left-and righthand sides of the above inequality depend on |e a0 |, one has to resolve it with respect to |e a0 |. As a consequence, the resultant condition on the initial auxiliary error takes the form where r * 2 is a positive real root of equation Since μ > 0 (cf. Eq. 56), there will be only a single positive root of Eq. 67 according to the Descartes' Sign Rule. As a consequence of Eq. 63, one concludes uniform boundedness of positional error e F (p(t)), which is confined to the set D * F for all t ≥ 0 if initial errors |e F (p(0))| and |e a (q(0))| satisfy conditions (65) and (66), respectively. Due to definition (9), one concludes uniform boundedness of e(q(t)) . Furthermore, the ISS property reflected by inequality (63) implies satisfaction of the following asymptotic gain relation: lim sup t→∞ |e F (p(t))| ≤ γ lim sup t→∞ |e a (q(t))| (64) = v d m(1+μe 2 a0 ) 3/2 k p mν lim sup t→∞ |e a (q(t))| (33) = 0. (68) Hence, one concludes that the equilibrium (e F , e a ) = (0, 0) of cascade dynamics (36)- (37) is locally asymptotically stable for any initial condition (e F (p(0)), e a (q(0))) from the set (−r f , r f ) × (−r a , r a ) with r f and r a determined by Eqs. 65 and 66, respectively.
Continued Common Analysis Now, upon (52) and (68), together with definitions (9) and (5), one may conclude that where D(p, S d ) In view of Eq. 69, and according to definitions (18) and (16), one obtains θ a (p) what, in the light of Eq. 33 together with definition (9), implies e θ (t) t→∞ −→ 0. Finally, by recalling definitions (25), (16), (20), (21), and (6), one may observe that both |e F (p)| < ∞ and assumption A3 imply h(p) < ∞, and (as a consequence) boundedness of u 2 (q). Next, |u 2 (q)| < ∞ together with |e a (q)| < ∞ and h(p) < ∞ imply (under assumptions A1 and A2) boundedness of h θ (q), and (as a consequence) boundedness of u 1 (q). Moreover, for (e F , e a ) → (0, 0) the following relations hold true: u 1 →θ d and Remark 5 Worth to stress that values of bound r a are expressed in radians, however a value of bound r f is dimensionless because the error |e F (p)| = |F (p)| does not correspond, in general, to the Euclidean distance. The error |e F (p)| can be treated rather as a some (nonlinear) function of such a distance. On the other hand, by construction of function F (p), see Eq. 5, it is possible to scale the values of this function and its slope by selecting an appropriate absolute value of coefficient σ . As a consequence, by intentional selection of |σ | one may influence the resultant size of the prescribed set D * F and the corresponding geometrical neighborhood around a reference path expressible in metric units.

Remark 6
In the case when the initial error |e a (q(0))| does not satisfy any of the upper bounds imposed by (p1) and (p2) in Theorem 1, one may initially apply (within some finite time interval t ∈ [0, T ]) the preparatory control u n (q) := [h θ (q) 0] with h θ (q) defined by Eq. 20, in order to preliminarily decrease the auxiliary orientation error to an acceptably small value |e a (q(T ))| < r a with r a taken either from (p1) or (p2), while keeping simultaneously the robot position fixed at p(0). Next, one can switch to the VFO control law (25) for the initial error |e a0 | := |e a (q(T ))| satisfying conditions of Theorem 1.

Numerical Examples
Results of two numerical examples, SimI and SimII, have been presented to illustrate efficiency of the proposed control law for various motion scenarios. The following common values have been selected for the controller parameters, reference velocity, and kinematic parameters of the robot: k p = 1.0, k a = 2.0, v d = 0.08 m/s, r w = 0.02 m, b = 0.145 m. The Velocity Scaling Block has been implemented using ω m = 7.5 rad/s, which corresponds to the maximal robotbody velocities |u 1 | max = 2.07 rad/s and |u 2 | max = 0.15 m/s.

Example SimI
The first example concerns following the so-called super-elliptic path represented by a zero-level curve of function (see Fig. 3a) where the positive coefficient σ determines the desired (reference) motion along the path in the counterclockwise direction. Function (71)  In the test SimI, the forward reference motion strategy has been assumed by taking ζ d = +1 (see Eq. 6). The initial robot configuration has been selected as q(0) = [0 − 0.5 0] . Results of the control process are presented by the plots in the left column in Fig. 3.
Analyzing the plots in Fig. 3 one can observe fast and non-oscillatory movement of the robot and fast transients of the path following errors asymptotically vanishing toward zero, despite relatively flat surface F (p) in a neighborhood of the prescribed initial configuration. Transient evolution of particular errors can be additionally assessed upon the plot presented in Fig. 4, where the exponential rate of convergence can be clearly observed. Worth noting is the boundedness Finally, it is worth to emphasize that the above control performance has been obtained despite relatively large values of the initial errors, that is, for |e a (q(0))| ≈ 3.05 rad and |e F (p(0))| ≈ 0.85. These numbers can be confronted with the estimates determined by pairs (p1) and (p2) in Theorem 1, which in this case have been computed as follows

Example SimII
In the second example, we have considered the Sshaped path represented by a zero-level curve of the following function (see Fig. 5b) where the negative coefficient σ determines the desired (reference) motion along the path from the left-to-right direction. In this case, the function (72) is unbounded from above and from below, but for any finite position p the values of function (72)  Thus, the properties of function (72) allows limiting the admissible set of positions p to any bounded subset D of R 2 required by assumption A1.
In the test SimII, the backward reference motion strategy has been assumed by taking ζ d = −1 (see Eq. 6). The initial robot configuration has been selected as q(0) = [0 − 0.5 0.5] . Results of the control process are presented by the plots in the left column in Fig. 5.
Upon the plots in Fig. 5 one can again observe fast and non-oscillatory transients of the path following errors asymptotically vanishing toward zero. A single discontinuity point seen at the very beginning of timeplot of error e θ indicates that the auxiliary orientation angle converges in this case to θ d only in the sense of modulo 2π (see Eq. 70). A fast convergence rate for particular errors after a first 10 s of a transient stage can be observed upon the logarithmic plot presented in Fig. 6. Again, the control signals satisfy control input limitations in the whole control time-horizon, while one can see that the VSB modifies the control inputs until about 10 s of the simulation (see the plot of ς(t)). Also in this case, the above control performance has been obtained despite relatively large values of the initial errors, that is, for |e a (q(0))| ≈ 1.86 rad and |e F (p(0))| ≈ 1.27. These numbers can be confronted with the estimates determined by pairs (p1) and (p2) from Theorem 1, which in this case have been computed as follows , r a ≈ 1.93 rad by taking r F = 2.8 and ν = 0.9. Note that the above values of upper bounds r a and r f are substantially less conservative relative to those obtained in example SimI thanks to the symmetrical shape of function (72) with respect to its zero-level curve (see Fig. 5). In this case, the initial errors satisfy conditions determined by pair (p2).

Description of the Experimental Setup
The proposed VFO control law has been verified experimentally on the laboratory testbed with the differentially driven mobile robot MTracker presented in Fig. 7. The robot is equipped with the on-board mini PC computer (Intel Atom processor, 2 GB of RAM), working under Linux operating system, and the DSP processor (TMS320F28335). The robot control system has a cascade structure with two independent PI velocity control loops closed around the wheel actuators and implemented on the DSP processor. The VFO control law has been implemented on the PC computer which computes the commanded wheel velocities for the inner regulation loops with sampling frequency of 100 Hz. Robust localization of the robot has been  (1)) with the estimate of the robot configuration obtained from the exteroceptive Optitrack vision localization system. The block scheme shown in Fig. 7 illustrates implementation details of the control system.

Results of the Experiments
The experimental scenario has been prepared to show the control performance in the case where a reference path results from a concatenation of two zero-level curves of the fifth-degree polynomial functions joining three prescribed via points The reference path is represented by a resultant function where with particular coefficients, w ji , j = 0, . . . , 5, i = 1, 2, chosen to satisfy boundary conditions  In the experiments, the following values of parameters have been used: k p = 1, k a ∈ {2, 4}, v d = 0.15 m/s, and ω m = 10 rad/s. Figure 8 presents the results obtained for the initial robot configuration q(0) located very far from the reference set with large initial auxiliary error |e a (q(0))| ≈ 2.96 rad. Worth to emphasize the nonoscillatory and fast transient motion stage, together with boundedness of the control signals. Any substantial effect of switching from the first level curve f 1 (p) = 0 to the second level curve f 2 (p) = 0 is not visible in the plots of particular signals. Figure 9 shows the additional results of a robot motion for two different initial configurations and two values of the controller parameter k a . A smooth robot motion with fast transients can be observed also in these scenarios.
Remark 7 A concatenation of splines in Eq. 74 is admissible for ranges of variable x which yield bounded partial derivatives ∂f i /∂x. If it is needed to force a motion with unbounded partial derivative with respect to x, one can cope with this problem by designing an alternative spline for this case with swapped variables x and y in Eq. 75. In general, it is also possible to concatenate two splines expressed in different ways, that is, in the form like (75) and with swapped variables.

Conclusions
In the paper, we have proposed and experimentally verified the novel VFO control strategy which solves the path following task for unicycle kinematics with the amplitude-limited control input. The sufficient conditions have been derived for initial errors which guarantee positionally constrained transients of the robot confined to a prescribed neighborhood of a reference path. By utilizing the level curve approach the need of a reference path parametrization has been avoided. Formal considerations provided in the paper indicate that the proposed VFO control system does not generate any additional unstable equilibria characteristic for the control system previously proposed in [26], and it concerns a wider set of reference paths than those admitted in [8].
The new solution proposed in this paper complements a set of VFO control laws available in the literature so far. As a direct consequence of the VFO methodology, the proposed control strategy inherits all the benefits characteristic for the VFO control laws like fast, non-oscillatory, and easily predictable transients in the closed loop system, and intuitive interpretation of all the control components leading to a very simple parametric synthesis of the controller. Thanks to application of the Velocity Scaling Block, which acts as a post-processing procedure of the nominal control law, one guarantees a simple solution to the path following problem in the presence of velocity constraints imposed on a robot motion.
In the paper, the VFO controller has been formulated for the generic kinematics of the unicycle. By employing the cascade control approach, application of the method can be relatively easily extended for more complex kinematics of the car-like vehicles and the non-Standard N-Trailer robots, see [22] and [20], respectively.
Namely, e F (9) =Ḟ = F xẋ + F yẏ (1) = F x u 2 cθ + F y u 2 sθ (29) = ς (h x cθ + h y sθ )(F x cθ + F y sθ) ≡ ςζ d h ce a (F x cθ + F y sθ) (77) = ςζ d h ce a [F x (cθ a ce a + sθ a se a ) +F y (sθ a ce a − cθ a se a ) ( Recalling definitions (16) and (17) one may write: Upon the above equations one can easily verify (by direct computations) that Substituting the latter formulas to the right-hand side of Eq. 78 yields the equation of the form (36).

Appendix C
By recalling (22), (23), and (24) one may express the nominal time derivativesḣ xn (q) andḣ yn (q) as follows: h xn (q) = u 2n H x (q),ḣ yn (q) = u 2n H y (q) where particular forms of H x (q) and H y (q) result from the combination of right-hand sides of Eqs. 23 and 24 in 22. Now, one may write ςθ an (q) (21) =  .