Introduction

Because of the increasing present in industrial manufacturing, wheeled mobile robot (WMR) has been an active area of research over the past decades (see [14] and the reference therein). WMRs (such as the one shown in Fig. 1) can be deployed in various places where flexible motion and anti-fatigue capabilities are required on reasonably smooth grounds and surfaces.

Fig. 1
figure 1

Wheeled mobile robot test bed designed in this study

Smooth and stable motion control of WMR has always been an important topic for research because unsmooth movement usually leads to frequent violent vibrations that could cause fatal damage to the physical construction of WMR. It would also affect the control accuracy and mission completion. Much effort has been made in solving the motion control problem of mobile robot. Thus far, various motion control methodologies have been developed, including back-stepping method, adaptive neural network method, and sliding mode control [513]. Special efforts has also been made in reducing the mechanical vibration and shock, the most relevant works include heuristic thinking method or modeling an expert’s actions in WMR [1420]. These approaches are proposed based on fuzzy concepts aiming at avoiding collision with the surrounding environment and minimizing the differences between the reference trajectory and the system output. Song et al. [21] studied the path tracking control of four-wheel steering autonomous vehicles in and proposed a robust and adaptive fault-tolerant tracking control strategy to simultaneously counteract modeling uncertainties, unexpected disturbances, coupling effects, as well as actuator failures. A high-resolution grid map representation illustrated in [22] is adopted to reduce directional constraints on path generation. Park and Kuipers in [23] developed a pose-following kinematic control law applicable to unicycle-type robots, such that the robot can generate intuitive, fast, smooth and comfortable trajectories. The Lyapunov-based feedback control law is derived via singular perturbation. The work of Corrado [24] and Huang [25] devoted to the smooth motion generation are useful results by means of appropriately devised adjusted and normalized command signals. It is noted that, however, most exiting control methods are only verified by numerical simulation, and some of them practically lead to the mechanical chattering (jittering) phenomenon, especially during the starting and ending process.

Biologically inspired approach has proven effective in engineering applications [2629]. Most of the robot locomotion mechanisms have been inspired from the biological/social world (see Fig. 2 [1]). Some interesting efforts on using biologically inspired method for motion control of WMR have also been made [3033].

Fig. 2
figure 2

Locomotion mechanisms used in biological systems

In this paper, we present a bio-inspired SMC strategy to ensure smooth and stable motion control of WMR during the entire operation process. The proposed method is primarily motivated from the famous Chinese saying “haste does not bring success” as frequently exercised in biological/social systems. Inspired by this idea, we propose to replace the fast-starting (traction) curve and sharp-stopping (braking) curve with flat and smooth curves during the traction and the braking phase, thereby avoiding the unstable and oscillating motion of WMR. This idea motivates the utilization of pre-processing the driving/braking commands. Namely, the linear velocity command and angular velocity command fed to the actuation devices are not the ones directly issued by the high level path planning unit, but rather the ones that have been pre-processed with knowledge based fuzzy logic systems. With this method, the WMR is forced to move with stable and graceful speed so as to avoid the undesirable jittering phenomena. As confirmed by theoretical analysis and real-time experiment, this method indeed is effective in reducing motion vibration and achieving smooth trajectory tracking of WMR.

Problem Formulation

Kinematics and Dynamics of WMR

In this study, we consider a WMR with two actuated wheels and one passive supporting wheel as shown in Fig. 3. The robot’s body is symmetrical around the perpendicular axis and the center of mass is at the geometric center of the body. Two rear wheels are independently driven by two DC motors which are fixed to the axis that passes through point P, the intersection of the wheel axis and the axis of symmetry. One of the key functions of the passive wheel is to prevent the robot from tipping over as it moves on a plane, the spacing of driving wheel is 2R, and the diameter of driving wheel is 2r. In this paper we chose point C as the reference point,as marked in Fig. 3, to derive the mathematical model.

Fig. 3
figure 3

Mechanical drawing (left) and physical model (right) of the WMR

As indicated in Fig. 4, the position of the robot in an inertial Cartesian frame {o, x, y} is completely specified by the vector

$$ {\mathbf{p}} \, = \left( {\begin{array}{*{20}c} x \\ y \\ \theta \\ \end{array} } \right) $$
(1)

where (x, y) and θ are the coordinates of the reference point C. Since the robot has a locomotion capability in the plane, the current posture p is indeed a function of time t. The entire locus of the point (x(t), y(t)) is called a path. The WMR presents nonholonomic constraint, which means that it must move in the direction of the axis of symmetry, i.e., the mobile base satisfies the conditions of pure rolling and non-slipping:

$$ - \dot{x}\sin \theta + \dot{y}\cos \theta - d\dot{\theta } = 0 $$
(2)

The coordinates p and q for the WMR are related by a Jacobian matrix J as follows:

$$ {\dot{\mathbf{p}}} = {\mathbf{Jq}} $$
(3)

with

$$ {\mathbf{J}} = \left( {\begin{array}{*{20}c} {\cos \theta } & { - d\sin \theta } \\ {\sin \theta } & {d\cos \theta } \\ 0 & 1 \\ \end{array} } \right),\quad {\mathbf{q}} = \left( \begin{gathered} v \hfill \\ \omega \hfill \\ \end{gathered} \right) $$
(4)

where v and ω represent the linear velocity and angular velocity, respectively, and d stands for the distance between the reference point C and the location of the wheel (left or right), as illustrated in Fig. 3. Note that |v| ≤ V max and |ω| ≤ W max, here V max and W max are the maximum linear and angular velocities of the WMR, respectively.

Fig. 4
figure 4

Schematic representation of WMR

For later control design, we define the tracking error vector s as

$$ {\mathbf{s}} = \left( {\begin{array}{*{20}c} {s_{1} } \\ {s_{2} } \\ {s_{3} } \\ \end{array} } \right) = {\mathbf{T}}_{{\mathbf{e}}} {\mathbf{e}} = {\mathbf{T}}_{{\mathbf{e}}} ({\mathbf{p}} - {\mathbf{p}}^{*} ) $$
(5)

where p * is the desired posture, and

$$ {\mathbf{T}}_{{\mathbf{e}}} = \left( {\begin{array}{*{20}c} {\cos \theta } & { - d\sin \theta } \\ {\sin \theta } & {d\cos \theta } \\ 0 & 1 \\ \end{array} } \right) $$
(6)

The derivative of the generalized error vector s is

$$ {\dot{\mathbf{s}}} = \left( {\begin{array}{*{20}c} {\omega s_{2} - v + v^{*} \cos s_{3} } \\ { - \omega s_{1} + v^{*} \sin s_{3} } \\ {\omega^{*} - \omega } \\ \end{array} } \right) $$
(7)

Now consider the following nonholonomic mobile robot subject to m constraints:

$$ {\mathbf{M}}({\mathbf{p}}){\ddot{\mathbf{p}}} + {\mathbf{V}}({\mathbf{p}},{\dot{\mathbf{p}}}){\dot{\mathbf{p}}} + {\mathbf{F}}({\dot{\mathbf{p}}}) + {\varvec{\tau}}_{d} = {\mathbf{B}}({\mathbf{p}}){\varvec{\tau}} - {\mathbf{A}}^{T} ({\mathbf{p}}){\varvec{\lambda}} $$
(8)

where \( {\mathbf{M}}({\mathbf{p}}) \in \Re^{n \times n} \) symmetric, positive definite inertia matrix, \( {\mathbf{V}}({\mathbf{p}},{\dot{\mathbf{p}}}) \in \Re^{n \times n} \)is the centripetal and coriolis matrix, \( {\mathbf{F}}({\dot{\mathbf{p}}}) \in \Re^{n} \) denotes the surface friction, τ d denotes bounded disturbances, \( {\mathbf{B}}({\mathbf{p}}) \in \Re^{n \times r} \) is the input transformation matrix, \( {\mathbf{A}}({\mathbf{p}}) \in \Re^{m \times n} \) is the matrix associated with the constraints, and \( {\varvec{\lambda}} \in \Re^{m} \) is the vector of constraint forces. The nonholonomic mobile robot (8) can be transformed to the following equation:

$$ \overline{\mathbf{M}} ({\mathbf{p}}){\dot{\mathbf{q}}} + \overline{\mathbf{V}} ({\mathbf{p}},{\dot{\mathbf{p}}}){\mathbf{q}} + {\mathbf{F}}({\mathbf{q}}) + {\varvec{\tau}}_{d} = \overline{\mathbf{B}} ({\mathbf{p}}){\varvec{\tau}} $$
(9)

where \( \overline{\mathbf{M}} = {\mathbf{J}}^{T} {\mathbf{MJ}} \) is a symmetric, positive definite inertia matrix, \( \overline{\mathbf{V}} = {\mathbf{J}}^{T} ({\mathbf{M}}{\dot{\mathbf{J}}} + {\mathbf{VJ}}) \) is the centripetal and coriolis matrix, \( \overline{\mathbf{B}} = {\mathbf{J}}^{T} {\mathbf{B}} \), is the input transformation matrix, \( {\mathbf{q}} \in \Re^{n - m} \) is a velocity vector.

For the WMR under consideration, the corresponding dynamical equations are:

$$ \begin{aligned} \lambda & = - (\dot{x}\cos \theta + \dot{y}\sin \theta )\dot{\theta } \\ {\mathbf{M}}({\mathbf{p}}) & = \left( {\begin{array}{*{20}c} 1 & 0 & {d\sin \theta } \\ 0 & 1 & { - d\sin \theta } \\ {d\sin \theta } & { - d\sin \theta } & I \\ \end{array} } \right), \\ {\mathbf{A}}^{T} ({\mathbf{p}}) & = \left( {\begin{array}{*{20}c} { - \sin \theta } \\ {\cos \theta } \\ 0 \\ \end{array} } \right),\quad {\mathbf{B}}({\mathbf{p}}) = \frac{1}{r}\left( {\begin{array}{*{20}c} {\cos \theta } & {\cos \theta } \\ {\sin \theta } & {\sin \theta } \\ R & { - R} \\ \end{array} } \right) \\ {\mathbf{V}}({\mathbf{p}},{\dot{\mathbf{p}}}) & = \left( {\begin{array}{*{20}c} {d\dot{\theta }^{2} \cos \theta } \\ {d\dot{\theta }^{2} \sin \theta } \\ 0 \\ \end{array} } \right),\quad {\varvec{\tau}} = \left( {\begin{array}{*{20}c} {\tau_{r} } \\ {\tau_{l} } \\ \end{array} } \right) \\ \end{aligned} $$
(10)

Note that τ l and τ r represent the input torque of right and left wheels. The Eqs. (3) and (9) can be regarded as the equation for the complete kinematics and dynamics, respectively.

Practical Tracking Control Problem

Let u be an auxiliary input, then by applying the nonlinear feedback, we can convert the dynamic control problem into the kinematics control problem,

$$ {\varvec{\tau}} = \overline{{\mathbf{B}}} ({\mathbf{p}})^{ - 1} [\overline{{\mathbf{M}}} ({\mathbf{p}}){\mathbf{u}} + \overline{{\mathbf{V}}} ({\mathbf{p}},{\dot{\mathbf{p}}}){\mathbf{q}} + {\mathbf{F}}({\mathbf{q}}) + {\varvec{\tau}}_{d} ] $$
(11)

According to Eq. (10), all the dynamical quantities of the WMR (e.g., \( \overline{{\mathbf{M}}} ({\mathbf{p}}),\;\overline{{\mathbf{V}}} ({\mathbf{p}},{\dot{\mathbf{p}}}),\;{\mathbf{F}}({\mathbf{q}}) \)) are computable. In this paper, the ultimate control objective of the WMR system is to design a SMC such that the actual posture p and generalized velocities q reaches the desired posture p * and velocities q *, respectively,

$$ \mathop {\lim }\limits_{t \to \infty } \left\| {{\mathbf{p}}^{*} (t) - {\mathbf{p}}(t)} \right\| = 0,\quad \mathop {\lim }\limits_{t \to \infty } \left\| {{\mathbf{q}}^{*} ({\mathbf{t}}) - {\mathbf{q}}({\mathbf{t}})} \right\| = 0 $$
(12)

Bio-inspired SMC Design

It is noted that most existing control methods suffer from mechanical vibration, as indicated in Fig. 5, especially during starting and ending process [16]. It is therefore of theoretical and practical importance to explore a solution to this problem.

Fig. 5
figure 5

Mechanical vibration caused by traditional controller (TC)

Motivated by the idea of “second thoughts are the best”, we use the “thoughts” as a metaphor for knowledge based fuzzy networks and regard “second thoughts” as the result of pre-processing. Hence the bio-inspired approach makes it possible to generate velocity commands which are inclined for smooth motion.

As the first step, we establish a bio-inspired model using fuzzy logic system to generate smooth motion rules so as to overcome the jitter problem. Based on the pre-processed (linear and angular) speed commands derived from analytic geometry theory, the smooth control scheme is developed to ensure stable and high precision tracking.

Bio-Inspired Model Based on Fuzzy Logic System

As fuzzy logic system can be used to express in terms of the natural language [34], it also has become a mean of dealing with uncertainties in the control process. Because the behavior of all rule based systems (RBSs) derives from simple regimen, the rules will always specify the actual behavior of the system when particular problem-solving data are entered. The RBS considered in this work consists of a knowledge base and an inference engine (see Fig. 6).

Fig. 6
figure 6

The basic features of a RBS

It should be stressed that a method could be claimed as “bio-inspired” if such method is developed with the inspiration and motivation from social, biological or natural phenomena, principle, concept, traits etc. For our case, we notice that if the fast-starting and sharp-stopping is exploited, the motion of WMR becomes quite unstable and tremendous oscillation occurs as verified by experiment. This is just like the Chinese saying implied “haste does not bring success”. In order to circumvent this issue gracefully, flat curves (as shown in Fig. 7) are of essentiality either for the traction stage or for the brake stage. It can be interpreted by another practical idiom “ride softly then you may get home sooner”. Therefore, inspired by these two useful and valuable social philosophies, we propose the model as expressed in Fig. 7 and named it as “bio-inspired model”.

Fig. 7
figure 7

Bio-inspired model for SMC

Now we describe how blend fuzzy logic reasoning into pre-processing based bio-inspired idea to develop SMC for WMR.

The key step for the pre-processed idea is shown in Fig. 7, which illustrates the ideal relationship between velocity q and posture p, where S start and S end denote the accelerating zone and the deceleration zone, and the line BC denotes the uniform velocity zone. \( {\mathbf{p}}_{n - 1}^{*} \) and \( {\mathbf{p}}_{n}^{*} \) denote the desired postures of starting point and ending point on the n-segment along the path, \( {\mathbf{q}}_{n}^{*} \) represents the desired constant velocity on the n-segment along the path. We define \( {\mathbf{q}}_{\text{bio}}^{*} = (v_{\text{bio}}^{*} ,\omega_{\text{bio}}^{*} )^{T} \) as the input of bio-inspired speed, which is decided by the functions f(p) and g(p). Noting that if the f(p) and g(p) are known and bounded, it will become easier to design the SMC. Therefore, we adopt the Mamadani Fuzzy model to generate f(p) and g(p).

The fuzzy rules are presented as a mapping from the posture errors of starting position and ending position into the required functions f(p) and g(p). Namely, from the linguistic input variables defined by

$$ \begin{aligned} Err{\text{-}}start & = e_{s} = \left\| {{\mathbf{p}} - {\mathbf{p}}_{n - 1}^{*} } \right\| \\ Err{\text{-}}end & = e_{e} \, = \left\| {{\mathbf{p}}_{n}^{*} - {\mathbf{p}}} \right\| \\ \end{aligned} $$
(13)

to the linguistic output variables.

Observation

Any motion of the vehicle consists of the following segments or statuses, as shown in Fig. 7:

  • Acceleration segment (AB)

  • Constant speed segment (BC)

  • Deceleration segment (CD)

  • Starting point (S)

  • Middle point (M)

  • Ending point (E)

Therefore, we can establish the following rules:

  • Model Rule-1:

    • IF “Err-startisSand “Err-end” is “M”

    • THEN f(·) isAand g(·) isC”,

  • Model Rule-2:

    • IF “Err-startis “M” and “Err-end” is “E”

    • THEN f(·) isCand g(·) isD”,

  • Model Rule-3:

    • IF “Err-startis “M” and “Err-end” is “M”

    • THEN f(·) isCand g(·) isC”,

  • Model Rule-4:

    • IF “Err-startisSand “Err-end” is “E”

    • THEN f(·) isAand g(·) isD”.

The membership functions (MFs), depicted in Fig. 8, are bell-shaped and trapezoid. We named the membership functions “Start (S),” “Middle (M),” “End (E),”, “Accelerate (A),” “Constant (C),” and “Decelerate (D),” respectively.

Fig. 8
figure 8

Membership functions

These rules are inspired by the steady performance of organism. Rule-1 implies that if the current posture of robot is close to starting point, but far from the end, the velocity of robot increases with the increase of function f(p), while g(p) remains unchanged. Similarly, Rule-2 refers to the process of deceleration where robot is close to ending point and its velocity decreased with the decrease of function f(p), while g(p) maintains constant. In other words, what we expect is that when robot is located on the acceleration (deceleration) segment such as AB or CD, it would accelerate or decelerate its speed smoothly. Rule-3 is designed for the constant speed segment, marked as BC, where the velocity of robot is kept constant. So f(p) and g(p) are both constant. Rule-4 can deal with the occasion that the posture of robot judged by computation is both close to starting point and ending point, which usually occurs when the traveling path length is too short. Therefore by utilizing the method of partial acceleration and deceleration we establish rule 4 by combining the advantages of Rule-1 and Rule-2.

According to above rules and analysis, we can establish the explicit expressions for the MFs as follows:

Generalized bell-shaped built-in MF

The generalized bell function depends on three parameters a 1 , a 2 , and a 3 as given by

$$ \mu (x;a_{1} ,a_{2} ,a_{3} ) = \frac{1}{{1 + \left| {\frac{{x - a_{3} }}{{a_{1} }}} \right|^{{2a_{2} }} }} $$
(14)

Trapezoidal-shaped built-in MF

The trapezoidal curve is a function of a vector, x, and depends on four scalar parameters b 1 , b 2 , b 3 , and b 4 , as given by

$$ \lambda (x;b_{1} ,b_{2} ,b_{3} ,b_{4} ) = \left\{ {\begin{array}{*{20}c} 0 & {x \le b_{1} } \\ {\frac{{x - b_{1} }}{{b_{2} - b_{1} }}} & {b_{1} \le x \le b_{2} } \\ 1 & {b_{2} \le x \le b_{3} } \\ {\frac{{b_{4} - x}}{{b_{4} - b_{3} }}} & {b_{3} \le x \le b_{4} } \\ 0 & {b_{4} \le x} \\ \end{array} } \right. $$
(15)

According to experience database, we set the specific parameters for each MF as shown in Table 1.

Table 1 Specific parameters for each MF

Finally, the center of area (COA) method is utilized as the defuzzification strategy. We can obtain the specific expressions of f(p) and g(p) shown in the following equation:

$$ f({\mathbf{p}}) = \frac{{\sum\nolimits_{i = 1}^{4} {\gamma_{Ri} (f)f} }}{{\sum\nolimits_{i = 1}^{4} {\gamma_{Ri} (f)} }} $$
(16)
$$ g({\mathbf{p}}) = \frac{{\sum\nolimits_{i = 1}^{4} {\eta_{Ri} (g)g} }}{{\sum\nolimits_{i = 1}^{4} {\eta_{Ri} (g)} }} $$
(17)

where

$$ \begin{gathered} \gamma_{R1} (f) = \lambda_{1} \cap \mu_{2} \cap \mu_{3} \hfill \\ \gamma_{R2} (f) = \lambda_{2} \cap \mu_{2} \cap \mu_{4} \hfill \\ \gamma_{R3} (f) = \lambda_{2} \cap \mu_{1} \cap \mu_{3} \hfill \\ \gamma_{R4} (f) = \lambda_{2} \cap \mu_{1} \cap \mu_{4} \hfill \\ \end{gathered} $$
(18)

and

$$ \begin{gathered} \eta_{R1} (g) = \lambda_{2} \cap \mu_{2} \cap \mu_{3} \hfill \\ \eta_{R2} (g) = \lambda_{2} \cap \mu_{2} \cap \mu_{4} \hfill \\ \eta_{R3} (g) = \lambda_{2} \cap \mu_{1} \cap \mu_{3} \hfill \\ \eta_{R4} (g) = \lambda_{1} \cap \mu_{1} \cap \mu_{4} \hfill \\ \end{gathered} $$
(19)

Figure 9 shows the input–output curves.

Fig. 9
figure 9

Overall input–output curves

Pre-processing for Speed Command

The aim of pre-processing for speed command is to generate new and more favorable movement for the actuation device, so as to effectively avoid the jitter problem. To this end, a bio-inspired “second thoughts” mechanism is proposed to generate the speed commands as follows,

$$ {\mathbf{q}}_{\text{bio}}^{*} = \left( {\begin{array}{*{20}c} {v_{\text{bio}}^{*} } \\ {\omega_{\text{bio}}^{*} } \\ \end{array} } \right) = {\mathbf{q}}_{n + 1}^{*} + \{ [{\mathbf{q}}_{n - 1}^{*} + ({\mathbf{q}}_{n}^{*} - q_{n - 1}^{*} )\alpha ] - {\mathbf{q}}_{n - 1}^{*} \} \beta $$
(20)

where

$$ \alpha = \left\{ {\begin{array}{*{20}c} {\frac{{f({\mathbf{p}})}}{{S_{\text{start}} }}\quad {\mathbf{p}} \in [{\mathbf{p}}_{n - 1}^{*} ,{\mathbf{p}}_{B}^{*} ]} \\ {1\quad {\mathbf{p}} \in [{\mathbf{p}}_{B}^{*} ,{\mathbf{p}}_{n}^{*} ]} \\ \end{array} } \right. $$
(21)
$$ \beta = \left\{ {\begin{array}{*{20}c} {\frac{{g({\mathbf{p}})}}{{S_{\text{end}} }}\quad {\mathbf{p}} \in [{\mathbf{p}}_{n - 1}^{*} ,{\mathbf{p}}_{C}^{*} ]} \\ {1\quad {\mathbf{p}} \in [{\mathbf{p}}_{C}^{*} ,{\mathbf{p}}_{n}^{*} ]} \\ \end{array} } \right. $$
(22)

\( {\mathbf{q}}_{n - 1}^{*} \), \( {\mathbf{q}}_{n}^{*} \) and \( {\mathbf{q}}_{n + 1}^{*} \) denotes the desired constant velocity on (n − 1), n, (n + 1) segment along the path respectively.

It can be readily verified that the above analytical formula (20) is able to describe the bio-inspired behavior of the speed profile as shown in Fig. 7 analytically.

Control Scheme

We are now in position to propose the SMC scheme. To begin with we construct the controller similar to the one proposed by Fierro and Lewis [11] as follows,

$$ {\mathbf{u}} = {\dot{\mathbf{v}}}_{c} + {\mathbf{K}}_{0} ({\mathbf{v}}_{c} - {\mathbf{q}}) $$
(23)

where K 0  = k 0 I, k 0 is a sufficiently large positive constant, and the auxiliary velocity control input v c is given by

$$ {\mathbf{v}}_{c} = \left( \begin{gathered} v^{*} \cos s_{3} + k_{1} s_{1} \\ \omega^{*} + k_{2} v^{*} s_{2} + k_{3} v^{*} \sin s_{3} \\ \end{gathered} \right) $$
(24)

where K = (k 1, k 2, k 3)T is a vector of positive constants. If the desired linear velocity \( v^{*} \) and angular velocity \( \omega^{*} \) are bounded and the \( v^{*} > 0 \) for all t, then the origin s = 0 is uniformly asymptotically stable, and the generalized velocity q satisfies q → v c as t → ∞.

In order to achieve smooth motion control, we modify (24) by replacing \( v^{*} \) and \( \omega^{*} \) with the commands derived from \( {\mathbf{q}}_{\text{bio}}^{*} \) as generated by the “second thoughts” mechanism as defined in Eq. (20). Namely,

$$ {\mathbf{v}}_{c} = \left( {\begin{array}{*{20}c} {v_{bio}^{*} \cos s_{3} + k_{1} s_{1} } \\ {\omega_{bio}^{*} + k_{2} v_{bio}^{*} s_{2} + k_{3} v_{bio}^{*} \sin s_{3} } \\ \end{array} } \right) $$
(25)

The major difference between Eqs. (24) and (25) is that the later one contains the several flexible design parameters and functions such as S start, S end, f(p) and g(p), which are crucial for ensuring smooth and graceful tracking control of the vehicle. One can also observe the difference from the overall control block diagram as given in Fig. 10 as compared with the one given in [12].

Fig. 10
figure 10

The structure of the proposed SMC

Theorem

Consider the WMR with the nonlinear feedback control law and the auxiliary velocity control input are given by Eqs. (23) and (25). If the actual speed command to the actuation device is generated by the second thoughts mechanism as defined in Eq. (20) under the following control conditions:

  1. 1.
    $$ 0 < a < \frac{{(v_{n}^{*} - v_{n - 1}^{*} )f({\mathbf{p}})}}{{v_{n + 1}^{*} - v_{n - 1}^{*} }} $$
    (26)
  2. 2.
    $$ b > 0 $$
    (27)

where a = S start and b = S end are two constants, \( v_{n - 1}^{*} \), \( v_{n}^{*} \) and \( v_{n + 1}^{*} \) stands for the desired constant linear velocity on segment-(n − 1), n, (n + 1), respectively, then the stable and smooth tracking of WMR system (3, 9) is ensured.

Proof

First we introduce a filtered vector variable of the form

$$ {\mathbf{s}}_{c} = \left( {\begin{array}{*{20}c} {s_{4} } \\ {s_{5} } \\ \end{array} } \right) = {\mathbf{q}} - {\mathbf{v}}_{c} . $$
(28)

Therefore we have

$$ \begin{aligned} {\dot{\mathbf{s}}}_{c} & = ({\dot{\mathbf{q}}} - {\dot{\mathbf{v}}}_{c} ) \\ & = ({\dot{\mathbf{v}}}_{c} + {\mathbf{K}}_{0} ({\mathbf{v}}_{c} - {\mathbf{q}})) - {\dot{\mathbf{v}}}_{c} \\ & = - {\mathbf{K}}_{0} {\mathbf{s}}_{c} \\ \end{aligned} $$
(29)

Apparently, the filtered vector variable converges exponentially to zero, ensuring that the velocity of the WMR satisfies q → v c exponentially as t → ∞. Note that by the definition of v c as given in (25), the explicit expression of s c is

$$ {\mathbf{s}}_{c} = \left( {\begin{array}{*{20}c} {v - v_{bio}^{*} \cos s_{3} - k_{1} s_{1} } \\ {\omega - \omega_{bio}^{*} - k_{2} v_{bio}^{*} s_{2} - k_{3} v_{bio}^{*} \sin s_{3} } \\ \end{array} } \right) $$

Choosing Lyapunov function candidate

$$ V = k_{1} (s_{1}^{2} + s_{2}^{2} ) + \frac{{2k_{1} }}{{k_{2} }}(1 - \cos s_{3} ) + \frac{1}{{2k_{0} }}\left( {s_{4}^{2} + \frac{{k_{1} }}{{k_{2} k_{3} v_{bio}^{*} }}s_{5}^{2} } \right) $$

where V ≥ 0, and V = 0 only if s = 0 and s c  = 0. It follows that

$$ \begin{aligned} \dot{V} & = - k_{1}^{2} s_{1}^{2} - \frac{{k_{1} k_{3} }}{{k_{2} }}v_{bio}^{*} \sin^{2} s_{3} - \left( {s_{4}^{2} + k_{1} s_{1} } \right)^{2} \\ & \quad - \frac{{k_{1} }}{{k_{2} k_{3} v_{bio}^{*} }}(s_{5} + k_{3} v_{bio}^{*} \sin s_{3} )^{2} \\ & = - k_{1}^{2} s_{1}^{2} - \frac{{k_{1} k_{3} }}{{k_{2} }}\left[ {v_{n + 1}^{*} + \frac{{g({\mathbf{p}})}}{b}(v_{n - 1}^{*} - v_{n + 1}^{*} ) + } \right. \\ & \left. {\frac{{f({\mathbf{p}})g({\mathbf{p}})}}{ab}(v_{n}^{*} - v_{n - 1}^{*} )} \right]\sin^{2} s_{3} - (s_{4}^{2} + k_{1} s_{1} )^{2} \\ & \quad - \frac{{k_{1} }}{{k_{2} k_{3} v_{bio}^{*} }}(s_{5} + k_{3} v_{bio}^{*} \sin s_{3} )^{2} \\ & \quad \le - \frac{{k_{1} k_{3} }}{{k_{2} }} \cdot \frac{{g({\mathbf{p}})}}{b}\left[ {(v_{n - 1}^{*} - v_{n + 1}^{*} ) + \frac{{(v_{n}^{*} - v_{n - 1}^{*} )f({\mathbf{p}})}}{a}} \right]\sin^{2} s_{3} \\ \end{aligned} $$

According to the bio-inspired model (see Fig. 7), f(p) and g(p) are positive for all p. By using the conditions of Eqs. (26) and (27), it holds that \( \dot{V} \le 0 \). Since the bio-inspired linear velocity \( v_{\text{bio}}^{*} \) and angular velocity \( \omega_{bio}^{*} \) are bounded and \( {\mathbf{q}}_{\text{bio}}^{*} > 0 \) for all t, the generalized velocity q satisfies q → v c as t → ∞. Thus, the equilibrium point s = 0 is uniformly asymptotically stable. Therefore, the WMR system (3, 9) is indeed asymptotically stable.

Remark

The conditions can be easily satisfied by designing the ideal smooth path,

Since the “ideal” speed profile is generated by the bio-inspired second thoughts mechanism, the resultant commands are much smoother and softer than the original speed commands. In other words, in the proposed control scheme, continuous varying rather jump changing speed commands are fed into the actuation unit, which, naturally, leads to more graceful motion control, avoiding the jittering problem. This is also confirmed by the real-time experiment as seen shortly.

Real-time Experiment

The proposed control scheme was evaluated on the field experiment. The test bed as shown in Fig. 14 was developed for this purpose. The hardware structure of the experimental platform of WMR with two actuated wheels is described in Fig. 11, which is composed of upper computer module, positioning module, SMC module, man–machine interaction (MMI) module and hardware circuit module. The specific module functions are as follows:

Fig. 11
figure 11

Control system block diagram

  1. a.

    Upper Computer Module: Take charge of information collection, data processing, path planning, behavior control, analysis and coordination, and decision making.

  2. b.

    SMC Module: Be Responsible for smooth motion control of WMR.

  3. c.

    Positioning Module: Real-time calculation of the robot current coordinates.

  4. d.

    MMI Module: Custom control strategies and show the observed variable parameter in the debugging process.

  5. e.

    Hardware Circuit Module: A platform for the implementation of control algorithms. (see Fig. 12).

    Fig. 12
    figure 12

    Picture of the hardware system based on SMC

Based on reasonable path planning strategies, WMR’s postures were able to be controlled by regulating torques of its driving wheels. In this study, the desired trajectory was illustrated in Fig. 13. To verify the feasibility and advantages of the proposed method, we executed a series of experiment on the wheeled mobile robot test bed as shown in Fig. 14. The proposed SMC and the traditional control are tested. With the consideration of response speed, control accuracy and stability, we counted the mission time, posture error and success rate of WMRs. Based on a large number of field experiments, the control performances were compared and recorded as Table 2.

Fig. 13
figure 13

Path planning strategy

Fig. 14
figure 14

Field experimentation of WMRs

Table 2 Comparison of control performances

By collecting experimental data using wireless-sensor during the operation of the WMR, the real-time tracking process is depicted as in Fig. 15, where the top figure is the tracking process with the traditional control, the bottom figure is the tracking process with the proposed method.

Fig. 15
figure 15

Real-time experiment performances of TC (up) and SMC (down)

The experimental results demonstrate that undesirable jitter phenomenon occurs if the WMR is controlled by traditional methods. The proposed SMC, however, has the ability to avoid such problem and achieve the control goal gracefully. It is evident from large number of experiment that the proposed bio-inspired approach is far more effective than traditional control methods.

Conclusion

In this paper, a bio-inspired SMC for wheeled mobile robot had been proposed with the aid of fuzzy logic reasoning unit. By re-generating the speed commands using the social philosophy “ride softly then you may get home sooner”, the actuation device is fed with a much smoother and softer seed command, so that smooth and graceful tracking had been ensured. Based on the developed platform, the proposed control method was practically implemented and satisfactory performance had been obtained. Both theoretical analysis and experiment verification indicate that the proposed method has been promising for real applications.