# Practical Stabilization of Uncertain Nonholonomic Mobile Robots Based on Visual Servoing Model with Uncalibrated Camera Parameters

Authors: Hua Chen; Bingyan Chen; Baojun Li; Jinbo Zhang
Journal: Mathematical Problems in Engineering
 (2013)

---

## Abstract

The practical stabilization problem is addressed for a class of uncertain nonholonomic mobile robots with uncalibrated visual parameters. Based on the visual servoing kinematic model, a new switching controller is presented in the presence of parametric uncertainties associated with the camera system. In comparison with existing methods, the new design method is directly used to control the original system without any state or input
transformation, which is effective to avoid singularity. Under the proposed control law, it is rigorously proved that all the states of closed-loop system can be stabilized to a prescribed arbitrarily small neighborhood of the zero equilibrium point. Furthermore, this switching control technique can be applied to solve the practical stabilization problem of a kind of mobile robots with uncertain parameters (and angle measurement disturbance) which appeared in some literatures such as Morin et al. (1998), Hespanha et al. (1999), Jiang (2000), and Hong et al. (2005). Finally, the simulation results show the effectiveness of the proposed controller design approach.


---

## Body

## 1. Introduction

For the last few decades, the problem of control of nonholonomic systems has been studied by many researchers and has attracted a continuously increasing attention in the control community. As pointed out in [1], such a class of nonlinear systems cannot be stabilized to a point with pure smooth (or even continuous) state-feedback control. Therefore, the stabilization problem of nonholonomic systems is still extremely challenging. Up to now, there have been a lot of control methods to stabilize such systems: continuous time-varying feedback control laws [2–4], hybrid feedback control laws [5–7], and discontinuous feedback control laws [8–11].Recently, based on the visual servoing feedback model, a new robust control issue is considered in [12] for uncertain nonholonomic mobile robots with uncalibrated camera parameters. In [13], an adaptive sliding mode controller is designed to stabilize a class of uncertain dynamic mobile robots in the presence of parametric uncertainties of the camera system. In addition, the dynamic feedback robust regulation problem and the dynamic feedback tracking control problem have been addressed with unknown depth information and visual parameters of a fixed camera in [14, 15], respectively. However, these results have a common defect: it may be somewhat unrealistic to assume that some parameters of the camera system are unknown while others are known. And these above existing approaches [2–15] are invalid when we deal with the robust stabilization problem for such nonholonomic mobile robots with assuming that all the camera parameters are unknown.In addition, as shown in [16, 17], the unicycle robot model has dynamic linearizable feedback, based on which some control problems for nonholonomic system have been solved in the recent research literatures. For example, in [18], the unicycle model can be transformed into two double integrators by using dynamic feedback linearization; then a new class of distributed nonlinear controllers for leader-following formation control of unicycle robots without global position measurements has been proposed. But there exists singularity of the transformed model caused by the nonholonomic constraint of the mobile robot; how to avoid appearance of singularity is the major difficulty of designing the control law. And in [19], the problem of stabilization for nonholonomic single chained systems has also been considered in the framework of nonregular feedback linearization.This paper considers the practical stabilization problem for a class of nonholonomic mobile robots based on visual servoing feedback with uncalibrated visual parameters. A new switching controller is presented in the presence of parametric uncertainties. Our main contributions can be summarized in the following three respects.(1)
The new design method is directly based on the original system model without using any transformation of coordinates or inputs; it is valid to avoid appearance of  singularity. Under the proposed switching controller, it is rigorously proved that all the states of closed-loop system can be stabilized to a prescribed arbitrarily small neighborhood of the zero equilibrium point.(2)
Compared with other results on the same subject (visual servoing feedback control of nonholonomic mobile robots) [12–15], it is more realistic to suppose that all the parameters of the camera system are unknown.(3)
The switching controller design method can be easily used to solve the practical stabilization problem of a kind of nonholonomic mobile robots with uncertain parameters and angle measurement disturbance raised by [20–23] and references therein.The structure of this paper is as follows: Section2 gives a statement of some motivating examples and the problem considered in this paper. A proper assumption and a lemma are also presented in this section. Section 3 gives our main results including switching controller design, stability analysis (proof), and an application. Section 4 provides an illustrative numerical example and the corresponding simulation results of the proposed methodology. Finally, a conclusion is shown in Section 5.


## 2. Motivating Examples and Problem Statement

### 2.1. Motivating Examples

A class of nonholonomic wheeled mobile robots is shown in Figure1. The two fixed rear wheels of the robot are controlled independently by motors, and a front castor wheel prevents the robot from tipping over as it moves on a plane. Assume that the geometric center point and the mass center point of the robot are the same, the radii r are identical for all the wheels, and the distance 2R between the fixed wheels is a known positive constant. Its kinematic model can be described by the following differential equations [24]:
(1)x˙=vcosθ,y˙=vsinθ,θ˙=ω,
where (x,y) is the position of the mass center of the robot moving on the plane.  v is the forward velocity, ω is the steering velocity, and θ denotes its heading angle from the horizontal axis. v and ω are usually regarded as control inputs.Figure 1
Nonholonomic wheeled mobile robot.As pointed out in [22], system (1) represents the modeling of the robot in the ideal case. A realistic description of the robot motion in the presence of uncertainties will give rise to far more complex equations requiring involved analysis and synthesis tools. Some results of dealing with such model with uncertain parameters or angle measurement disturbance have been presented; for example, the so-called parking problem of the following system has been addressed with a hybrid feedback control law in [21]
(2)x˙=p1*vcosθ,y˙=p1*vsinθ,θ˙=p2*ω,
where p1* and p2* are (unknown) positive parameters determined by the radius of the rear wheels and the distance between them. In addition, Jiang [22] has derived a robust state-feedback controller to drive the states of (2) to the origin with exponential convergence, and in [23], Hong et al. have proposed a finite-time stabilizer for such uncertain system.As for system (3), considering the control problem of system (1) with angle measurement disturbance (see [22] and references therein),
(3)x˙=vcos(θ+ϵ),y˙=vsin(θ+ϵ),θ˙=ω,
where ϵ is a small bias in orientation. As indicated in [20], the second-order approximation of system (3) near the origin is given by
(4)x˙ι=(1-ϵ22)v,y˙ι=θιv+ϵv,θ˙ι=ω,
where (xι,yι,θι) represents the state of the above locally approximate model. It was mentioned in [20] that the adaptive control design is applicable to (4) to solve the adaptive regulation of (4) and thus provides a local solution to the parking problem of the robot in the presence of angle measurement errors. And in the literature [22], a switching control strategy has been proposed to globally exponentially regulate all trajectories of system (4) to the equilibrium (0,0,-ϵ).But to our knowledge, the stabilization problem of system (3) still remains open up to now. Furthermore, it is the first time to consider the practical stabilization problem for the system containing uncertain parameters and angle measurement disturbance, simultaneously, that is, driving the following system to a prescribed arbitrarily small neighborhood of the equilibrium point (0,0,0):
(5)x˙=p1*vcos(θ+ϵ),y˙=p1*vsin(θ+ϵ),θ˙=p2*ω.
As in [22], we can assume that
(6)0<pimin≤pi*≤pimax,i=1,2,|ϵ|≤ϵmax,
where pimin, pimax, and ϵmax are all known positive constants.In this paper, as an example of application, our switching control method to be presented later for the visual feedback model can be easily used to solve the practical stabilization problem of system (5).


### 2.2. Problem Statement

Generally, for system (1), the state (x,y) can be got from the encoders of motors and other sensors such as ultrasonic sensors ND infrared sensors. However, in the objective world and engineering fields, it is difficult to implement such schemes. Here, the camera shown in Figure 2 is used to measure the position (x,y); its image position is noted as (xm,ym).Figure 2
Nonholonomic wheeled mobile robot under a fixed camera.As mentioned in [12–15], we also consider that the movement of the mobile robot (1) can be measured by using a pinhole camera fixed to the ceiling (as shown in Figure 2). Assuming that the camera plane, the image plane, and the robot plane are parallel. There are four coordinate frames, namely, the inertial frame X-Y-Z, the camera frame x-y-z, the image frame u-o1-ν, and the attached robot frame X1-P-X2. Point C is the crossing point between the optical axis of the camera and X-Y plane. Its coordinate relative to X-Y plane is (cx,cy). The coordinate of the original point of the camera frame with respect to the image frame is defined by (Oc1,Oc2). And (x,y) is the coordinate of the mass center P of the robot with respect to X-Y plane.The pinhole camera model can be expressed as [12]
(7)(xmym)=(α100α2)R(x-cxy-cy)+(Oc1Oc2),
where α1 and α2 are positive constants, which are dependent on the depth information, focal length, and scalar factors along u axis and v axis, respectively, of the camera system. Here,
(8)R=(cosθ0sinθ0-sinθ0cosθ0),
where θ0 denotes the angle between x-axis and y-axis with a positive anticlockwise orientation.From (1), (7), and (8), by using a simple derivation, the image-based kinematical equation of the robot can be obtained
(9)x˙m=α1vcos(θ-θ0),y˙m=α2vsin(θ-θ0),θ˙=ω.In the field of visual servoing feedback of robots, usually the camera parametersα1, α2 and the angle θ0 can be got by calibration. But this process will take a lot of time, which implies that it is impossible to use this method in high requirement of real time. Therefore, it is necessary to consider how to design a control law in the case of dealing with these uncalibrated parameters.In this paper, we consider the robust practical stabilization problem of visual servoing feedback model (9) when α1, α2, and θ0 are all unknown parameters.Assumption 1.
α
1, α2, and θ0 are bounded, and the bounds of which are known positive constants
(10)0<αimin≤αi≤αimax,i=1,2,0<θ0min≤θ0≤θ0max<π4.Remark 2.
It is noted that the above assumption is not rigorous because it is not difficult to estimate the bounds of the depth information, focal length, and scalar factors of the camera in advance. As for the angleθ0, seen in Figure 2, we can always assume that it falls within a certain range.
Next, we will introduce the following lemma that is needed for our controller design later.Lemma 3 (see [25]).
For a first-order system(11)η˙=u-,
where η,u-∈R1 are state variable and control input, respectively. Taking a continuous, fractional control law
(12)u-=-ksgn(η)|η|β,
where k>0, β∈(0,1) are design parameters. Then the closed-loop system η˙=-ksgn(η)|η|β is finite-time stable at the zero equilibrium point.Proof.
See [25].Remark 4.
As illustrated by system (8) in [25], the piecewise control law is continuous everywhere and locally Lipschitz everywhere except for the origin. Therefore, for every initial condition in ℝ∖{0}, the closed-loop system has a unique solution in forward time.
The control task is to present a switching controller for system (9) such that (xm,ym) converges to a prescribed arbitrarily small neighborhood of zero, and θ(t)≡0 after a finite time.


## 2.1. Motivating Examples

A class of nonholonomic wheeled mobile robots is shown in Figure1. The two fixed rear wheels of the robot are controlled independently by motors, and a front castor wheel prevents the robot from tipping over as it moves on a plane. Assume that the geometric center point and the mass center point of the robot are the same, the radii r are identical for all the wheels, and the distance 2R between the fixed wheels is a known positive constant. Its kinematic model can be described by the following differential equations [24]:
(1)x˙=vcosθ,y˙=vsinθ,θ˙=ω,
where (x,y) is the position of the mass center of the robot moving on the plane.  v is the forward velocity, ω is the steering velocity, and θ denotes its heading angle from the horizontal axis. v and ω are usually regarded as control inputs.Figure 1
Nonholonomic wheeled mobile robot.As pointed out in [22], system (1) represents the modeling of the robot in the ideal case. A realistic description of the robot motion in the presence of uncertainties will give rise to far more complex equations requiring involved analysis and synthesis tools. Some results of dealing with such model with uncertain parameters or angle measurement disturbance have been presented; for example, the so-called parking problem of the following system has been addressed with a hybrid feedback control law in [21]
(2)x˙=p1*vcosθ,y˙=p1*vsinθ,θ˙=p2*ω,
where p1* and p2* are (unknown) positive parameters determined by the radius of the rear wheels and the distance between them. In addition, Jiang [22] has derived a robust state-feedback controller to drive the states of (2) to the origin with exponential convergence, and in [23], Hong et al. have proposed a finite-time stabilizer for such uncertain system.As for system (3), considering the control problem of system (1) with angle measurement disturbance (see [22] and references therein),
(3)x˙=vcos(θ+ϵ),y˙=vsin(θ+ϵ),θ˙=ω,
where ϵ is a small bias in orientation. As indicated in [20], the second-order approximation of system (3) near the origin is given by
(4)x˙ι=(1-ϵ22)v,y˙ι=θιv+ϵv,θ˙ι=ω,
where (xι,yι,θι) represents the state of the above locally approximate model. It was mentioned in [20] that the adaptive control design is applicable to (4) to solve the adaptive regulation of (4) and thus provides a local solution to the parking problem of the robot in the presence of angle measurement errors. And in the literature [22], a switching control strategy has been proposed to globally exponentially regulate all trajectories of system (4) to the equilibrium (0,0,-ϵ).But to our knowledge, the stabilization problem of system (3) still remains open up to now. Furthermore, it is the first time to consider the practical stabilization problem for the system containing uncertain parameters and angle measurement disturbance, simultaneously, that is, driving the following system to a prescribed arbitrarily small neighborhood of the equilibrium point (0,0,0):
(5)x˙=p1*vcos(θ+ϵ),y˙=p1*vsin(θ+ϵ),θ˙=p2*ω.
As in [22], we can assume that
(6)0<pimin≤pi*≤pimax,i=1,2,|ϵ|≤ϵmax,
where pimin, pimax, and ϵmax are all known positive constants.In this paper, as an example of application, our switching control method to be presented later for the visual feedback model can be easily used to solve the practical stabilization problem of system (5).


## 2.2. Problem Statement

Generally, for system (1), the state (x,y) can be got from the encoders of motors and other sensors such as ultrasonic sensors ND infrared sensors. However, in the objective world and engineering fields, it is difficult to implement such schemes. Here, the camera shown in Figure 2 is used to measure the position (x,y); its image position is noted as (xm,ym).Figure 2
Nonholonomic wheeled mobile robot under a fixed camera.As mentioned in [12–15], we also consider that the movement of the mobile robot (1) can be measured by using a pinhole camera fixed to the ceiling (as shown in Figure 2). Assuming that the camera plane, the image plane, and the robot plane are parallel. There are four coordinate frames, namely, the inertial frame X-Y-Z, the camera frame x-y-z, the image frame u-o1-ν, and the attached robot frame X1-P-X2. Point C is the crossing point between the optical axis of the camera and X-Y plane. Its coordinate relative to X-Y plane is (cx,cy). The coordinate of the original point of the camera frame with respect to the image frame is defined by (Oc1,Oc2). And (x,y) is the coordinate of the mass center P of the robot with respect to X-Y plane.The pinhole camera model can be expressed as [12]
(7)(xmym)=(α100α2)R(x-cxy-cy)+(Oc1Oc2),
where α1 and α2 are positive constants, which are dependent on the depth information, focal length, and scalar factors along u axis and v axis, respectively, of the camera system. Here,
(8)R=(cosθ0sinθ0-sinθ0cosθ0),
where θ0 denotes the angle between x-axis and y-axis with a positive anticlockwise orientation.From (1), (7), and (8), by using a simple derivation, the image-based kinematical equation of the robot can be obtained
(9)x˙m=α1vcos(θ-θ0),y˙m=α2vsin(θ-θ0),θ˙=ω.In the field of visual servoing feedback of robots, usually the camera parametersα1, α2 and the angle θ0 can be got by calibration. But this process will take a lot of time, which implies that it is impossible to use this method in high requirement of real time. Therefore, it is necessary to consider how to design a control law in the case of dealing with these uncalibrated parameters.In this paper, we consider the robust practical stabilization problem of visual servoing feedback model (9) when α1, α2, and θ0 are all unknown parameters.Assumption 1.
α
1, α2, and θ0 are bounded, and the bounds of which are known positive constants
(10)0<αimin≤αi≤αimax,i=1,2,0<θ0min≤θ0≤θ0max<π4.Remark 2.
It is noted that the above assumption is not rigorous because it is not difficult to estimate the bounds of the depth information, focal length, and scalar factors of the camera in advance. As for the angleθ0, seen in Figure 2, we can always assume that it falls within a certain range.
Next, we will introduce the following lemma that is needed for our controller design later.Lemma 3 (see [25]).
For a first-order system(11)η˙=u-,
where η,u-∈R1 are state variable and control input, respectively. Taking a continuous, fractional control law
(12)u-=-ksgn(η)|η|β,
where k>0, β∈(0,1) are design parameters. Then the closed-loop system η˙=-ksgn(η)|η|β is finite-time stable at the zero equilibrium point.Proof.
See [25].Remark 4.
As illustrated by system (8) in [25], the piecewise control law is continuous everywhere and locally Lipschitz everywhere except for the origin. Therefore, for every initial condition in ℝ∖{0}, the closed-loop system has a unique solution in forward time.
The control task is to present a switching controller for system (9) such that (xm,ym) converges to a prescribed arbitrarily small neighborhood of zero, and θ(t)≡0 after a finite time.


## 3. Main Results

In this section, the main results will be presented. To better understand the idea of design, it is useful to first give a careful analysis. Considering system (9) when θ(t)≡π/4, it is easy to obtain
(13)dymdxm=α2α1tan(π4-θ0).
Solving it yields
(14)ym(t)=ym(0)+α2α1(xm(t)-xm(0))tan(π4-θ0),
which implies a line on the Xm-Ym plane. Similarly, for the case θ(t)≡-π/4, we have
(15)dymdxm=-α2α1tan(π4+θ0).
Solving it yields(16)ym(t)=ym(0)-α2α1(xm(t)-xm(0))tan(π4+θ0),
which also implies a line on the Xm-Ym plane. By (14) and (16), a good switching controller is expected to drive the robot (9) to an arbitrarily small neighborhood of (0,0,0) according to Figure 3.Figure 3
The trajectories(xm,ym) of system (9) under the switching controller.The main idea is introduced as follows to show how to design a switching controller for system (9). In every step of the switching process, we always let the angle θ(t)≡-π/4 or π/4 after some finite time by designing the control input ω and simultaneously design v to drive |xm(t)|(|ym(t)|) to a small positive constant while |ym(t)|(|xm(t)|) is bounded;   their bounds are   smaller and smaller. Finally, there must exist a finite time 0<T<+∞ such that |xm(T)|≤ε, |ym(T)|≤ε for any arbitrarily small ε>0 given in advance. Then after that, we can let (xm(t),ym(t)) remain motionless (v=0) and drive θ(t) to zero in a finite time by designing ω.The following theorem and its proof will present our switching controller design and stability analysis.


### 3.1. Controller Design and Stability Analysis

Theorem 5.
For any given arbitrarily smallε>0 and positive constants αimin, αimax, θ0min, and θ0max satisfying Assumption 1, take the following switching controller.Step 1 (0).
For allT0≥0, if |xm(T0)|≤ε and |ym(T0)|≤ε, let
(17)v=0,ω=-k0sgn(θ)|θ|β0,
where k0>0, β0∈(0,1) are design parameters. If  θ(t)≡0 then let v=ω=0 and stop. Otherwise, go to Step 2 (2j-1), where  j is introduced as a counter, denotes the number of cycles of the switching algorithm beginning with j=1.  For example, in the first round, j=1; in the second round, j=2, and so on.
For more clarity,  it should be forewarned,  in every round of this control algorithm(j=1,2,3,…),  the switching process consists of three steps (Step 1 (0), Step 2 (2j-1), Step 3 (2j)).Step 2 (2j-1).
For allT2j-10≥0, if |xm(T2j-10)|>ε, let
(18)v=0,ω=-k2j-1,1sgn(θ-π4)|θ-π4|β2j-1,
where k2j-1,1>0, β2j-1∈(0,1) are design parameters. When θ(t)≡π/4 after some finite time, then let
(19)v=-k2j-1,2xm,ω=0,
where k2j-1,2>0 is a design parameter. Then, there exists 0≤T2j-1<+∞ such that |xm(T2j-1)|≤ε, and if |ym(T2j-1)|≤ε, go to Step 1 (0), else if |ym(T2j-1)|>ε, go to the next step.Step 3 (2j).
Let(20)v=0,ω=-k2j,1sgn(θ+π4)|θ+π4|β2j,
where k2j,1>0, β2j∈(0,1) are design parameters. When θ(t)≡-π/4 after some finite time, then let
(21)v=k2j,2ym,ω=0,
where k2j,2>0 is a design parameter. There exists 0≤T2j<+∞ such that |ym(T2j)|≤ε as t≥T2j, and if |xm(T2j)|≤ε, go to Step 1 (0), else if |xm(T2j)|>ε, let j:=j+1 and go to Step 2 (2j-1).
Then, for any initial value(xm(0),ym(0),θ(0)), the state (xm(t),ym(t)) of system (9) can be driven into a prescribed arbitrarily small neighborhood of the origin Dε≜{(xm,ym)∈ℝ2∣|xm|≤ε,|ym|≤ε} and stay within it in a finite time; meanwhile, θ(t) can be stabilized to zero.Proof.
Firstly, for convenience sake, we introduce a positive numberε0 satisfying
(22)ε0≤ε·min{1-1/tan2(θ0min+(π/4))3(1+α2max/α1min(tanθ0min+(π/4))),·minmin1-1/tan2(θ0min+(π/4))3(1+α1max/α2min(tanθ0min+(π/4)))}.
Suppose(xm(0),ym(0))∈Dε; it is clear that (xm(t),ym(t)) will stay within Dε since v=0 in Step 1 (0). According to Lemma 3, there exists a finite time 0<T<+∞ such that θ(t)≡0, for all t≥T. Therefore, after t>T, the control law v=ω=0 ensures that
(23)(xm(t),ym(t))≡(xm(0),ym(0))∈Dε,θ(t)≡0.
In the case of(xm(0),ym(0))∉Dε, we can use the switching controller which consists of Step 2 (2j-1)~Step 3 (2j) again and again, and this control process can be described as follows.
In the first round (i.e.,j=1), if |xm(0)|>ε, then in   Step 2 (2j-1),   from (18) and Lemma 3, there exists a finite time T1,1 such that
(24)xm(T1,1)=xm(0),ym(T1,1)=ym(0),ym(T1,1)=ym(0)55θ(t)≡π4,∀t≥T1,1,
and for t≥T1,1, from (19), we have
(25)x˙m=-k1,2α1xmsin(θ0+π4),y˙m=-k1,2α2xmcos(θ0+π4).
By solving (25) directly, one has
(26)xm(t)=xm(T1,1)e-k1,2α1(t-T1,1)sin(θ0+π/4)=xm(0)e-k1,2α1(t-T1,1)sin(θ0+π/4),ym(t)=α2α1tan(θ0+π/4)xm(0)e-k1,2α1(t-T1,1)sin(θ0+π/4)+ym(0)-α2α1tan(θ0+π/4)xm(0).
Let
(27)p≜α2α1tan(θ0+π/4),q≜α1α2tan(θ0+π/4).
Then from Assumption 1, we have
(28)0<p≤α2maxα1min(tanθ0min+π/4)≜pmax,0<q≤α1maxα2min(tanθ0min+π/4)≜qmax.
According to (26) and (27), there exists T1,1<T1<+∞ such that
(29)xm(T1)=δ0,ym(T1)=pδ0+ym(0)-pxm(0),
where δ0 is a given small constant satisfying that |δ0|≤min{ε0,ε}. Suppose that |ym(T1)|>ε; then go to  Step 3 (2j).
Similarly, in   Step3 (2j),   from (21)-(22) and Lemma 3, we have
(30)ym(t)=ym(T2,1)e-k2,2α2(t-T2,1)sin(θ0+π/4)=ym(T1)e-k2,2α2(t-T2,1)sin(θ0+π/4),xm(t)=-α1α2tan(θ0+π/4)×ym(T1)e-k2,2α2(t-T2,1)sin(θ0+π/4)+xm(T2,1)+α1α2tan(θ0+π/4)ym(T1)=-qym(T1)e-k2,2α2(t-T2,1)sin(θ0+π/4)+xm(T1)+qym(T1).
According to the above equations, there existsT2,1<T2<+∞ such that
(31)ym(T2)=δ1,xm(T2)=-qδ1+xm(T1)+qym(T1),
where δ1 is a given small constant satisfying that |δ1|≤|δ0|. Substituting (29) into the above formula, one has
(32)ym(T2)=δ1,xm(T2)=-qδ1+(1+pq)δ0+q(ym(0)-pxm(0)).
If |xm(T2)|>ε, let j=2,  then the closed-loop system continues to go to  Step 2(2j-1).
From here, we obtained the  general conclusion forj=2,3,4,…, there always exist corresponding 0<T2j-1<+∞ and 0<T2j<+∞ such that
(33)xm(T2j-1)=δ2j-2,ym(T2j)=δ2j-1,(34)ym(T2j-1)=pδ2j-2+(1+pq)×∑k=1j-1‍(-1)j-1-k(pq)j-1-k(δ2k-1-pδ2k-2)+(-1)j-1(pq)j-1(ym(0)-pxm(0)),(35)xm(T2j)=-qδ2j-1+(1+pq)×(δ2j-2+∑k=1j-1‍(-1)j+kpj-1-kqj-k(δ2k-1-pδ2k-2))+(-1)j-1pj-1qj(ym(0)-pxm(0)),
where δj is a given small constant and satisfies that |δj|≤|δj-1|, for all j. By using (33), we have
(36)|xm(T2j-1)|≤ε,|ym(T2j)|≤ε,∀j.
On the other hand, from Assumption1, (27), and (28), one has
(37)0<1tan2(θ0max+π/4)≤pq=1tan2(θ0+π/4)≤1tan2(θ0min+π/4)<1.
Then from (34), one can obtain
(38)|ym(T2j-1)|≤pε0+(1+pq)(1+p)ε0×∑k=1j-1‍(pq)j-1-k+(pq)j-1|ym(0)-pxm(0)|≤pε0+(1+pq)(1+p)ε01-pq+(pq)j-1|ym(0)-pxm(0)|.
Because|ym(0)-pxm(0)| is bounded and 0<pq<1, there must exist J1<+∞ such that
(39)|ym(T2j-1)|≤pε0+2(1+p)ε01-pq+ε0=(1+p)(1-pq+2)ε01-pq≤3(1+p)ε01-pq,j≥J1.
By using (22), (27), (28), and (37), one has
(40)ε0≤ε·min{1-pq3(1+p),1-pq3(1+q)}.
Hence,
(41)|ym(T2j-1)|≤ε,j≥J1.
Similarly, from (35), we have
(42)|xm(T2j)|≤qε0+(1+pq)×(ε0+(1+p)ε0∑k=1j-1‍pj-1-kqj-k)+pj-1qj|ym(0)-pxm(0)|≤qε0+(1+pq)(1+(1+p)q1-pq)ε0+q(pq)j-1|ym(0)-pxm(0)|.
As the same with (41), there must exist J2<+∞ such that
(43)|xm(T2j)|≤qε0+2(1+(1+p)q1-pq)ε0+ε0≤(1+q)(1-pq+2)ε01-pq≤3(1+q)ε01-pq,j≥J2.
Applying (40) again, we have
(44)|xm(T2j)|≤ε,j≥J2.
Therefore, combining (36), (41), and (44), it is obvious that there must exist J=max{J1,J2}<+∞ and a finite time TJ such that
(45)|xm(TJ)|≤ε,|ym(TJ)|≤ε,j≥J,
which means that (xm(t),ym(t)) can be driven into the region Dε sooner or later; then go to Step 1 (0). And this completes the proof of Theorem 5.


### 3.2. An Example of Application

In this subsection, we will design a controller for system (5) by applying the switching control method proposed in Theorem 5.Theorem 6.
For any given arbitrarily smallε00>0 and positive constants pimin, pimax, and ϵmax satisfying (6), suppose
(46)ϵmax<φ<π4-ϵmax
takes   the following switching controller.Step 1 (00).
For allT00≥0, if |x(T00)|≤ε00 and |y(T00)|≤ε00, let
(47)v=0,ω=-l0sgn(θ)|θ|γ0,
where l0>0, γ0∈(0,1) are design parameters.  If  θ(t)≡0, then let v=ω=0 and stop. Otherwise, go to Step 2 (2n-1).Step 2 (2n-1).
If|x(T2n-10)|>ε00, for all T2n-10≥0, let
(48)v=0,ω=-l2n-1,1sgn(θ+φ-π4)|θ+φ-π4|γ2n-1,
where l2n-1,1>0, γ2n-1∈(0,1) are design parameters. When θ(t)+φ≡π/4 after some finite time, then let
(49)v=-l2n-1,2x,ω=0,
where l2n-1,2>0 is a design parameter. Then, there exists 0≤T2n-1<+∞ such that |x(T2n-1)|≤ε00, and if |y(T2n-1)|≤ε00, go to Step 1 (00), else if |y(T2n-1)|>ε00, go to Step 3 (2n).Step 3 (2n).
Let(50)v=0,ω=-l2n,1sgn(θ+φ+π4)|θ+φ+π4|γ2n,
where l2n,1>0, γ2n∈(0,1) are design parameters. When θ(t)+φ≡-π/4 after some finite time, then let
(51)v=l2n,2y,ω=0,
where l2n,2>0 is a design parameter. There exists 0≤T2n<+∞ such that |y(T2n)|≤ε00, and if |x(T2n)|≤ε00,  go to Step 1 (00), else if |x(T2n)|>ε00, let n:=n+1 and go to Step 2 (2n-1).
Then, for any initial value(x(0),y(0),θ(0)), the state (x(t),y(t)) of system (5) can be driven into a prescribed arbitrarily small neighborhood of the origin Dε00≜{(x(t),y(t))∈ℝ2∣|x(t)|≤ε00,|y(t)|≤ε00} and stay within it; meanwhile, θ(t) can be stabilized to zero in a finite time.Remark 7.
The proof of Theorem6 is similar to that of Theorem 5 and thus is omitted. In fact, system (5) can be rewritten   as
(52)x˙=p1*vcos(θ+φ-(φ-ϵ)),y˙=p1*vsin(θ+φ-(φ-ϵ)),θ˙=p2*ω.
Since ϵ denotes a small bias in orientation, it is not rigorous to assume that |ϵ| has a small upper bound less than π/8, that is, ϵmax≤π/8. Then from (6) and (46), one has
(53)0<φ-ϵmax≤φ-ϵ≤φ+ϵmax<π4.
Let
(54)α1=α2=p1*,θ0=φ-ϵ,
and note that it is also valid to use finite-time control technique (Lemma 3) for θ-subsystem in spite of the uncertain parameter p2*. Hence, system (52) can be seen as a special case of our visual servoing model (9).


## 3.1. Controller Design and Stability Analysis

Theorem 5.
For any given arbitrarily smallε>0 and positive constants αimin, αimax, θ0min, and θ0max satisfying Assumption 1, take the following switching controller.Step 1 (0).
For allT0≥0, if |xm(T0)|≤ε and |ym(T0)|≤ε, let
(17)v=0,ω=-k0sgn(θ)|θ|β0,
where k0>0, β0∈(0,1) are design parameters. If  θ(t)≡0 then let v=ω=0 and stop. Otherwise, go to Step 2 (2j-1), where  j is introduced as a counter, denotes the number of cycles of the switching algorithm beginning with j=1.  For example, in the first round, j=1; in the second round, j=2, and so on.
For more clarity,  it should be forewarned,  in every round of this control algorithm(j=1,2,3,…),  the switching process consists of three steps (Step 1 (0), Step 2 (2j-1), Step 3 (2j)).Step 2 (2j-1).
For allT2j-10≥0, if |xm(T2j-10)|>ε, let
(18)v=0,ω=-k2j-1,1sgn(θ-π4)|θ-π4|β2j-1,
where k2j-1,1>0, β2j-1∈(0,1) are design parameters. When θ(t)≡π/4 after some finite time, then let
(19)v=-k2j-1,2xm,ω=0,
where k2j-1,2>0 is a design parameter. Then, there exists 0≤T2j-1<+∞ such that |xm(T2j-1)|≤ε, and if |ym(T2j-1)|≤ε, go to Step 1 (0), else if |ym(T2j-1)|>ε, go to the next step.Step 3 (2j).
Let(20)v=0,ω=-k2j,1sgn(θ+π4)|θ+π4|β2j,
where k2j,1>0, β2j∈(0,1) are design parameters. When θ(t)≡-π/4 after some finite time, then let
(21)v=k2j,2ym,ω=0,
where k2j,2>0 is a design parameter. There exists 0≤T2j<+∞ such that |ym(T2j)|≤ε as t≥T2j, and if |xm(T2j)|≤ε, go to Step 1 (0), else if |xm(T2j)|>ε, let j:=j+1 and go to Step 2 (2j-1).
Then, for any initial value(xm(0),ym(0),θ(0)), the state (xm(t),ym(t)) of system (9) can be driven into a prescribed arbitrarily small neighborhood of the origin Dε≜{(xm,ym)∈ℝ2∣|xm|≤ε,|ym|≤ε} and stay within it in a finite time; meanwhile, θ(t) can be stabilized to zero.Proof.
Firstly, for convenience sake, we introduce a positive numberε0 satisfying
(22)ε0≤ε·min{1-1/tan2(θ0min+(π/4))3(1+α2max/α1min(tanθ0min+(π/4))),·minmin1-1/tan2(θ0min+(π/4))3(1+α1max/α2min(tanθ0min+(π/4)))}.
Suppose(xm(0),ym(0))∈Dε; it is clear that (xm(t),ym(t)) will stay within Dε since v=0 in Step 1 (0). According to Lemma 3, there exists a finite time 0<T<+∞ such that θ(t)≡0, for all t≥T. Therefore, after t>T, the control law v=ω=0 ensures that
(23)(xm(t),ym(t))≡(xm(0),ym(0))∈Dε,θ(t)≡0.
In the case of(xm(0),ym(0))∉Dε, we can use the switching controller which consists of Step 2 (2j-1)~Step 3 (2j) again and again, and this control process can be described as follows.
In the first round (i.e.,j=1), if |xm(0)|>ε, then in   Step 2 (2j-1),   from (18) and Lemma 3, there exists a finite time T1,1 such that
(24)xm(T1,1)=xm(0),ym(T1,1)=ym(0),ym(T1,1)=ym(0)55θ(t)≡π4,∀t≥T1,1,
and for t≥T1,1, from (19), we have
(25)x˙m=-k1,2α1xmsin(θ0+π4),y˙m=-k1,2α2xmcos(θ0+π4).
By solving (25) directly, one has
(26)xm(t)=xm(T1,1)e-k1,2α1(t-T1,1)sin(θ0+π/4)=xm(0)e-k1,2α1(t-T1,1)sin(θ0+π/4),ym(t)=α2α1tan(θ0+π/4)xm(0)e-k1,2α1(t-T1,1)sin(θ0+π/4)+ym(0)-α2α1tan(θ0+π/4)xm(0).
Let
(27)p≜α2α1tan(θ0+π/4),q≜α1α2tan(θ0+π/4).
Then from Assumption 1, we have
(28)0<p≤α2maxα1min(tanθ0min+π/4)≜pmax,0<q≤α1maxα2min(tanθ0min+π/4)≜qmax.
According to (26) and (27), there exists T1,1<T1<+∞ such that
(29)xm(T1)=δ0,ym(T1)=pδ0+ym(0)-pxm(0),
where δ0 is a given small constant satisfying that |δ0|≤min{ε0,ε}. Suppose that |ym(T1)|>ε; then go to  Step 3 (2j).
Similarly, in   Step3 (2j),   from (21)-(22) and Lemma 3, we have
(30)ym(t)=ym(T2,1)e-k2,2α2(t-T2,1)sin(θ0+π/4)=ym(T1)e-k2,2α2(t-T2,1)sin(θ0+π/4),xm(t)=-α1α2tan(θ0+π/4)×ym(T1)e-k2,2α2(t-T2,1)sin(θ0+π/4)+xm(T2,1)+α1α2tan(θ0+π/4)ym(T1)=-qym(T1)e-k2,2α2(t-T2,1)sin(θ0+π/4)+xm(T1)+qym(T1).
According to the above equations, there existsT2,1<T2<+∞ such that
(31)ym(T2)=δ1,xm(T2)=-qδ1+xm(T1)+qym(T1),
where δ1 is a given small constant satisfying that |δ1|≤|δ0|. Substituting (29) into the above formula, one has
(32)ym(T2)=δ1,xm(T2)=-qδ1+(1+pq)δ0+q(ym(0)-pxm(0)).
If |xm(T2)|>ε, let j=2,  then the closed-loop system continues to go to  Step 2(2j-1).
From here, we obtained the  general conclusion forj=2,3,4,…, there always exist corresponding 0<T2j-1<+∞ and 0<T2j<+∞ such that
(33)xm(T2j-1)=δ2j-2,ym(T2j)=δ2j-1,(34)ym(T2j-1)=pδ2j-2+(1+pq)×∑k=1j-1‍(-1)j-1-k(pq)j-1-k(δ2k-1-pδ2k-2)+(-1)j-1(pq)j-1(ym(0)-pxm(0)),(35)xm(T2j)=-qδ2j-1+(1+pq)×(δ2j-2+∑k=1j-1‍(-1)j+kpj-1-kqj-k(δ2k-1-pδ2k-2))+(-1)j-1pj-1qj(ym(0)-pxm(0)),
where δj is a given small constant and satisfies that |δj|≤|δj-1|, for all j. By using (33), we have
(36)|xm(T2j-1)|≤ε,|ym(T2j)|≤ε,∀j.
On the other hand, from Assumption1, (27), and (28), one has
(37)0<1tan2(θ0max+π/4)≤pq=1tan2(θ0+π/4)≤1tan2(θ0min+π/4)<1.
Then from (34), one can obtain
(38)|ym(T2j-1)|≤pε0+(1+pq)(1+p)ε0×∑k=1j-1‍(pq)j-1-k+(pq)j-1|ym(0)-pxm(0)|≤pε0+(1+pq)(1+p)ε01-pq+(pq)j-1|ym(0)-pxm(0)|.
Because|ym(0)-pxm(0)| is bounded and 0<pq<1, there must exist J1<+∞ such that
(39)|ym(T2j-1)|≤pε0+2(1+p)ε01-pq+ε0=(1+p)(1-pq+2)ε01-pq≤3(1+p)ε01-pq,j≥J1.
By using (22), (27), (28), and (37), one has
(40)ε0≤ε·min{1-pq3(1+p),1-pq3(1+q)}.
Hence,
(41)|ym(T2j-1)|≤ε,j≥J1.
Similarly, from (35), we have
(42)|xm(T2j)|≤qε0+(1+pq)×(ε0+(1+p)ε0∑k=1j-1‍pj-1-kqj-k)+pj-1qj|ym(0)-pxm(0)|≤qε0+(1+pq)(1+(1+p)q1-pq)ε0+q(pq)j-1|ym(0)-pxm(0)|.
As the same with (41), there must exist J2<+∞ such that
(43)|xm(T2j)|≤qε0+2(1+(1+p)q1-pq)ε0+ε0≤(1+q)(1-pq+2)ε01-pq≤3(1+q)ε01-pq,j≥J2.
Applying (40) again, we have
(44)|xm(T2j)|≤ε,j≥J2.
Therefore, combining (36), (41), and (44), it is obvious that there must exist J=max{J1,J2}<+∞ and a finite time TJ such that
(45)|xm(TJ)|≤ε,|ym(TJ)|≤ε,j≥J,
which means that (xm(t),ym(t)) can be driven into the region Dε sooner or later; then go to Step 1 (0). And this completes the proof of Theorem 5.


## 3.2. An Example of Application

In this subsection, we will design a controller for system (5) by applying the switching control method proposed in Theorem 5.Theorem 6.
For any given arbitrarily smallε00>0 and positive constants pimin, pimax, and ϵmax satisfying (6), suppose
(46)ϵmax<φ<π4-ϵmax
takes   the following switching controller.Step 1 (00).
For allT00≥0, if |x(T00)|≤ε00 and |y(T00)|≤ε00, let
(47)v=0,ω=-l0sgn(θ)|θ|γ0,
where l0>0, γ0∈(0,1) are design parameters.  If  θ(t)≡0, then let v=ω=0 and stop. Otherwise, go to Step 2 (2n-1).Step 2 (2n-1).
If|x(T2n-10)|>ε00, for all T2n-10≥0, let
(48)v=0,ω=-l2n-1,1sgn(θ+φ-π4)|θ+φ-π4|γ2n-1,
where l2n-1,1>0, γ2n-1∈(0,1) are design parameters. When θ(t)+φ≡π/4 after some finite time, then let
(49)v=-l2n-1,2x,ω=0,
where l2n-1,2>0 is a design parameter. Then, there exists 0≤T2n-1<+∞ such that |x(T2n-1)|≤ε00, and if |y(T2n-1)|≤ε00, go to Step 1 (00), else if |y(T2n-1)|>ε00, go to Step 3 (2n).Step 3 (2n).
Let(50)v=0,ω=-l2n,1sgn(θ+φ+π4)|θ+φ+π4|γ2n,
where l2n,1>0, γ2n∈(0,1) are design parameters. When θ(t)+φ≡-π/4 after some finite time, then let
(51)v=l2n,2y,ω=0,
where l2n,2>0 is a design parameter. There exists 0≤T2n<+∞ such that |y(T2n)|≤ε00, and if |x(T2n)|≤ε00,  go to Step 1 (00), else if |x(T2n)|>ε00, let n:=n+1 and go to Step 2 (2n-1).
Then, for any initial value(x(0),y(0),θ(0)), the state (x(t),y(t)) of system (5) can be driven into a prescribed arbitrarily small neighborhood of the origin Dε00≜{(x(t),y(t))∈ℝ2∣|x(t)|≤ε00,|y(t)|≤ε00} and stay within it; meanwhile, θ(t) can be stabilized to zero in a finite time.Remark 7.
The proof of Theorem6 is similar to that of Theorem 5 and thus is omitted. In fact, system (5) can be rewritten   as
(52)x˙=p1*vcos(θ+φ-(φ-ϵ)),y˙=p1*vsin(θ+φ-(φ-ϵ)),θ˙=p2*ω.
Since ϵ denotes a small bias in orientation, it is not rigorous to assume that |ϵ| has a small upper bound less than π/8, that is, ϵmax≤π/8. Then from (6) and (46), one has
(53)0<φ-ϵmax≤φ-ϵ≤φ+ϵmax<π4.
Let
(54)α1=α2=p1*,θ0=φ-ϵ,
and note that it is also valid to use finite-time control technique (Lemma 3) for θ-subsystem in spite of the uncertain parameter p2*. Hence, system (52) can be seen as a special case of our visual servoing model (9).


## 4. Simulations

In this section, the switching controller proposed in Theorem5 is used to show how to stabilize the state (xm(t),ym(t),θ(t)) of the uncertain visual feedback system (9) into a prescribed arbitrarily small neighborhood of the zero equilibrium point. We will demonstrate the effectiveness of our methods by a numerical example.In the following simulation, we assume thatε=0.05, ε0=0.04, δj=0.02, (for all j∈{1,2,3,…}), αimin=1, αimax=2, (i=1,2), θ0min=0.2, θ0max=0.6, α1=α2=1.5, and θ0=0.5. According to Theorem 5, we can choose design parameters k0=k2j-1,1=k2j-1,2=k2j,1=k2j,2=1,  β0=β2j-1=β2j=0.5, for all j. The initial condition of system (9) is (xm(0),ym(0),θ(0))=(-0.8,1.2,0.5).Figures4–7 show some simulation results with MATLAB. Figure 4 shows that the state variable (xm,ym) can be driven into the region Dε step by step by using the switching controller Step 1 (0)~Step 3 (2j) in Theorem 5. When t≥33 s, one has |xm(t)|≤ε and |ym(t)|≤ε. While θ(t) is always switched between π/4 and -π/4, and finally,  θ(t)≡0 as t≥40 s.Figure 4
State variables.Figure 5
Control inputv.Figure 6
Control inputω.Figure 7
Position state(xm,ym).Figures5−6 show the responses of the switching control inputs v and ω as time passes. And as shown in Figure 7, by a three-dimensional simulation image, we can more clearly see how the position state (xm(t),ym(t)) enters into the prescribed arbitrarily small neighborhood of the zero Dε step by step.


## 5. Conclusion

In this paper, a switching controller is presented for the practical stabilization problem of a class of nonholonomic mobile robots based on visual servoing model with uncalibrated camera parameters. The best innovation of this paper is that the controller design is based on the less strict hypothesis (assuming that all the camera parameters are unknown) compared with the previous results [12–15], which is more practical in real world implementations. In addition, the new design method is directly based on the original system model without any local change of coordinates or feedback; it is valid to avoid   appearance of   singularity.



---

*Source: 395410-2013-06-13.xml*