1. Introduction
Today, the robotics industry is developing with high intensity and speed. Robots are divided into two general categories: arm and mobile. Stationary robotic arms have been considered in the industry due to their high capability. They can do repetitive tasks with high accuracy. Despite this advantage, their main weakness is the lack of movement. To perform tasks with wide access space, mobile robotic puzzle is used [
1,
2,
3,
4,
5]. Among the applications of the planet robotic arm, we can mention the military robot lamb load robot, guard robot, and probe robot [
6]. Two-wheeled mobile robots are a subset of non-holonomic mechanical systems. If the position of the moving parts depends on each other, the motion constraint is called holonomic. Otherwise, it is called non-holonomic. Non-holonomic mobile robots are controlled by a number of actuators less than the degrees of freedom [
7,
8]. Motion control and tracking are determined by the type of constraint. So far, many methods have been proposed to control the robot. Interaction between the skilled arm and the moving arm, the presence of holonomic and non-luteal feeds, and the nonlinear function are among the features of the mobile robotic arm that control. Model-based control has been considered as the basis of control methods and plans, in which, assuming the system model, the control law is presented [
9]. In this regard, workplace separation control is introduced in [
10] and nonlinear feedback control is presented in [
11]. In both methods, the effect of external disturbance is not seen. There are many problems in implementing model-based controllers. One of the most important issues is the dependence on the exact model of the system. As the exact model is not available, it has uncertainty. The control of the controller or the uncertainty of the dynamic parameter is not mediated and the perturbation of the thorn is even raised. In addition, the complexity of the model makes the design of the controller difficult.
To deal with this problem, robust and adaptive control methods have been applied. Adaptive tracking control resistant to parametric uncertainty and external perturbation was presented in [
12,
13,
14,
15]. The control loop configuration involves two parts, kinematic and adaptive control. Adaptive tracking control of the workspace path in the presence of uncertainty and perturbation was presented in [
16], which does not require a torque sensor to estimate external perturbations. In both methods, perturbation was considered as a linear combination of several parameters. Adaptive robust control to control robot ether movement with holonomic and non-holonomic constraints was proposed in [
17], in which parametric uncertainty and external perturbation were considered. Adaptive energy movement control was performed with output feedback for the skilled mobile arm in [
18], which is resistant to parametric and dynamic uncertainty. Moreover, to prevent sliding in the force control ring, a non-holonomic constraint between the wheels and the ground was employed.
Sliding mode control is used as an effective method for the robust control of nonlinear systems. The problem with this method is the high frequency of the control signal, which stimulates unmodulated dynamics [
19,
20,
21,
22]. In the adaptive sliding mode control based on the backstepping method, the adaptive backstepping control is used to deal with the parametric uncertainty and the sliding mode method is used to deal with the limited disturbance. In contrast, fuzzy control has received more attention in recent years due to its ability to deal with uncertainty and simple design. The advantage of the fuzzy control method over conventional control methods is the ability to use language rules to employ experienced people [
23]. Fuzzy control, as a model-free method, is simply used to control complex systems [
24]. The ability to deal with fuzzy system uncertainties is improved by the law of adaptation [
25]. In this respect, Lyapunov’s direct method is used to design adaptive fuzzy control [
26]. The fuzzy system is also used as a nonlinear system estimator in adaptive fuzzy control [
27].
In [
28], adaptive neuro-fuzzy control was presented to control the skilled arm on a sloping surface that is resistant to external disturbance. Adaptive force/neuro-fuzzy position control was introduced for the cooperation of skilled mobile arms, in which several robots work together to move an object with an unknown geometry and the physical model with unknown dynamics is robust. In [
29], adaptive fuzzy control of a wheeled robot is a combination of kinematic control and adaptive fuzzy control that models the dynamics of the system considering the motors. Moreover, a control method has been presented based on an adaptive agate network for open and moving bodies. The control output is composed of two parts, the linear control component and compensating fit, which was intended to deal with uncertainty and turbulence [
30,
31,
32]. Most of the previous designs have a complex structure full of companions and depend on the system model. Type-2 systems are much stronger than fuzzy type-1 and have better performance [
33,
34,
35,
36]. These systems have been widely used in control engineering and in increasing the accuracy of the controller. Therefore, in this article, for the first time, a type-2 fuzzy system is utilized in the sliding mode control structure for a mobile manipulator robot. The novelties in this paper are as follows:
Two-stage control design for mobile manipulator system
Stability analysis of the control system
Use trapezoidal type-2 fuzzy sets combined with sliding mode control
The control scheme proposed in this article consists of two sections: kinematic and dynamic control. The purpose of kinematic control is to calculate the optimal speed for the robot so that the robot can follow the desired path accurately (instantaneous position control). The purpose of the dynamic control is to track the desired speed provided by the new type-2 adaptive fuzzy design (instantaneous speed control). The innovation here lies in compensating for the type-2 fuzzy system approximation error for free convergence of the desired path in the presence of uncertainty. The features of this control are simplicity in design, proper performance in tracking the desired path in the presence of certainty science, and the guarantee of stability. This control method includes type-2 fuzzy sliding mode control and adaptive linear control. The mortal sliding gain control law brings the system state vector closer to the equilibrium point, and the adaptive linear control law ensures convergence to the desired target. Control rules are durable against finite perturbation.
2. Mathematical Modeling
The wheeled mobile robotic arm consists of two parts: the skilled arm and movable wheel. The moving body has two active wheels and one inactive wheel [
19,
22]. Side and top views of the robot are presented in
Figure 1a,b, respectively. The axle of the active wheels is located in the same direction. The axis of the wheels is located at a distance
from the center of the mass and
is the distance between each wheel and the centerline as displayed in
Figure 1. In robot modeling, the inactive multi-directional front wheel is omitted.
The represents the base coordinate system and the coordinate system is connected to the moving body. is selected as the midpoint of the line connecting the two active wheels and the axis is perpendicular to the line connecting the two active wheels.
The state vector is represented by
, where
and
are the coordinates of the
point in the base coordinate system,
is the angle of the
axis relative to the
axis and the variables
and
represent the right and left wheel rotation angles, respectively. Due to the position of the wheels and the assumption of complete rotation for them, the moving wheel drive in this robot has three movement constraints. The first non-holonomic constraint that prevents the wheels from moving along the
axis is defined as follows
The other two constraints are related to the speed of the body and the speed of the wheels, which create non-sliding conditions for the wheels to roll completely along the
axis, namely:
By connecting two rotating interfaces to the moving body at point
P, a complete mobile gaming system is created. Its state vector is defined as follows:
The variables
and
are the angle of the first interface with respect to the
and the angle of the second interface with respect to the
, respectively. This can be written:
According to Equation (4), there is a new state vector,
, that establishes the following equations:
where “
m” is the dimensions of moving coordinates and is therefore equal to 3, and “
k” is the state vector dimension of the system and is therefore equal to 7. Finally,
N is the dimensions of the new state vector, which is equal to 4.
where
.
The mechanical model of the robot is obtained using the Euler–Lagrange method. The Lagrangian
is defined as the difference between the kinetic energy and the potential energy of the system. Considering the torque of the motors as the input of the robot, we have the following equation,
By solving the Euler–Lagrange equations, the dynamics of the robot become:
where
is inertia matrix,
is Coriolis force and centrifugal force,
is the gravitational force,
is the momentum of motion,
is the momentum of external turbulence, and
are robot constraints. The matrix
maps the torque vector to the variables of the joint space and the robot torque vector includes
the torque applied to the right wheel,
the torque applied to the left wheel,
the torque applied to the first rotating joint of the arm, and
the torque applied to the second rotational joint of it.
Multiplying the sides of Equation (6) in
, the following equation is obtained,
For this robot, the matrices , , and in Equation (10) are independent of the variables and , so we can write , , and where .
Based on
, the above equation becomes simpler.
Note 1: The matrix is symmetric and positive definite.
Note 2: The matrix is nonsymmetric.
The robot state space model
is expressed as Equation (17).
3. Automatic Controller Design
In this paper, we have tried to control the state vector for the robot so that the robot follows the desired path . According to Equation (11), the state vector must be adjusted and controlled to follow the desired path. To achieve this goal, two kinematic controls and dynamic controls have been used.
Kinematic control is a control rule for Equation (5) whose output is vector. This vector is adjusted so that the state vector converges to the desired path . Dynamic control creates the input signal so that the state vector converges to vector. The novelty of this paper is to provide a new dynamic control, which will be discussed in the following sections.
3.1. Kinematic Control
The kinematic control is a loop in the overall control system and is included in most wheeled robot control designs. The error vector is defined as given in Equation (18).
where
is the desired path that the robot should follow.
The goal of the controller is to satisfy .
Due to the fact that the moving body has movement constraints, its control also requires a separate method. Thus, the error vector is divided into the moving body error vector
and the arm error vector
.
where
and
. Moreover, the robot velocity vector of the robot
is divided into two state vectors of the velocity of the wheels of the moving body
and the velocity vector of the rotational joints of the arm
.
in which
and
.
The method utilized in [
24] was used to control the moving body. The method used in this study is model-free neuro-fuzzy controller (NFC). This study was performed in order to optimize the parameters and to simplify the design of power system stabilizers (PSSs). According to the results obtained in this study, it has been observed that the mentioned method has a better performance. The velocity of a moving body is defined as Equation (21).
where
is the size of linear velocity and
is angular velocity. The body velocity
is related to the wheel speed
as,
The error vector in the device connected to the moving body is described in Equation (23).
It is suggested in the method given in [
24] that control laws track the path desired by the moving body.
where
and
are the desired linear velocity and angular velocity for the robot body and
are constant coefficients. It must be the case that
to ensure stability. Now, by placing the relations (22) and (21) in (20), the kinematic control of the moving body is rewritten as Equation (25).
Besides, for tracking, the desired path is suggested by the joints of the robot arm of the following control law,
According to Horowitz,
must be established to ensure stability [
37].
Now, according to Equations (25) and (26), the kinematic control is obtained as Equation (27), where
is the output vector of the control system.
3.2. Dynamic Control
Fuzzy systems have been used in various fields for many years. In type-1 fuzzy systems, the membership degree of fuzzy sets is a scalar number. However, in type-2 (general) fuzzy systems, this membership degree is itself a fuzzy set. By considering the fuzzy set of membership degree as an interval, the interval type-2 fuzzy system was introduced. The presence of uncertainty in systems and the inability to define accurate fuzzy membership functions led to the superiority of type-2 fuzzy system over type-1.
This control plan must meet the conditions of
to convergence
. For this purpose, the robot velocity error vector is defined as Equation (28).
The fuzzy control scheme consists of 4 interval type-2 fuzzy systems of the Mamdani type. Each fuzzy system has 4 inputs that are included. The membership function was designed for inputs as following equations (see
Figure 2).
where
represents the input number. The output membership functions are defined as follows.
where
represents the fuzzy system number. The adaptive linear control signal is denoted by
and and
is the control signal from the fuzzy sliding mode controller.
The control strategy is such that the control of the fuzzy sliding mode takes the robot velocity state to a certain neighborhood of the desired state vector. In the optimal state neighborhood, adaptive linear control ensures convergence to the optimal state. For this purpose, each fuzzy system consists of 2 rules.
Using the Mamdani inference system [
38], single fuzzy generator, and non-fuzzy center averaging, the output signal of the fuzzy system is obtained as Equation (33).
where
,
,
,
. In the following subsections, we examine fuzzy sliding mode control and adaptive linear control.
Figure 2 shows the membership function of the type-2 fuzzy system’s input.
3.3. Type-2 Fuzzy Sliding Mode Control
To design a fuzzy sliding mode controller, the robot model was considered as Equation (34).
where
and
. Proportionally integral is suggested for the sliding surface.
where
is an integral coefficient and must be
according to the Horowitz criterion for convergence. The mode path in the tracking coordinate device must be directed to the sliding surface. A certain positive function can be proposed as Equation (35).
If the condition
can be guaranteed, then
can be guaranteed. By derivative of Equation (36),
Therefore, the following condition must be met to converge.
where
is a positive constant. By placing the derivative of (37) in Equation (38),
Now, substituting Equation (34) into Equation (39) so that the controller output appears in the equations,
The limitation of the system state variables is demonstrated. Suppose
is limited, i.e.,
where
is a positive constant. Taking
, the sliding mode control is calculated as Equation (42).
where
is the sign function. In order to reduce the control signal vibration, the fuzzy form of the sign function was used.
If by applying a constraint, the output of the controller exceeds the maximum torque value, the controller is practically out of the circuit, and only the maximum torque is applied.
To create
, 4 interval type-2 fuzzy systems of the Mamdani type are used. Each of them is single input single output. The membership function was designed for inputs as given by the following equations.
where
represents the input number. The output membership functions are defined as follows,
where
represents the fuzzy system number. Each fuzzy system has the following form.
Both
and
are type-1 fuzzy number. Using the Mamdani inference system [
34], single fuzzy generator, and non-fuzzy center averaging, the output signal of the fuzzy system is obtained as Equation (47).
where
,
.”
3.4. Adaptive Linear Control
To define the adaptive linear control, the following vector is defined.
The goal of the controller is
. Assuming that there is no perturbation, Equation (48) is modified as Equation (49).
With linearization of (48) around the equilibrium point
,
where
,
,
and
, as recommended for the following control law:
By applying the control law (51) to Equation (50), we obtain:
Assuming
and
, Equation (52) is simplified as follows:
Assuming
and
is Horowitz matrix,
is also established. According to the kinematic control
is also achieved. So, with the above assumptions,
is established. Suppose that control of (53) in the equilibrium point sets the velocity vector convergence conditions for model of (49).
Equation (54) can be rewritten as a linear combination of parameters as follows:
where
is the regression matrix and
is the parameter matrix. The law of adaptive linear control is presented as follows:
By applying (52) to model of (56), we get:
Using the previous relations, we can write Equation (58) as follows:
A certain positive function
can be suggested as follows:
Derived from (59), we have:
With simplification, the above equation becomes:
So, it is obtained
by zeroing
, so the adaptation law can be written as Equation (63).
is proved according to Lyapanov theory. Given that
, at all times, we have:
Thus, and are limited. It can also be claimed that is limited by being limited. So, all system state variables are also limited, implying that the stable system is of limited input-output type.
4. Simulation Results
In this section, to evaluate the performance of the adaptive fuzzy control scheme, the proposed control law is applied to the wheeled mobile arm and its performance is compared with the robust adaptive control (RAC) method of [
3]. The kinematic and dynamic parameters of the robot are given in
Table 1 and
Table 2, respectively. In
Table 1, It is assumed that the mass of the link is spread uniformly along its length. The parameters of kinematic and dynamic controllers are given in
Table 3 and
Table 4, respectively. In order to ensure stability according to the Horowitz criteria as described in
Section 3, it must be the case that
established in the kinematic controller. The constant parameters of the controllers are obtained following the trial-and-error method to achieve the desired performance in the simulation. The initial value of the zero adaptive parameters is selected and the fuzzy controller parameters are comparatively calculated from expressed equations. The proposed control is continuous and usually the data collection time in the digital control is specified for the digital control. The robot corresponding to the proposed design has a suitable data collection frequency of 200 Hz. The robot at the beginning of the movement is
. According to the previous equations, the optimal path can be written as follows:
where
and
and the initial values of path (68) are
,
,
,
and
. Perturbation is defined as follows:
Figure 3a shows the performance of controllers in tracking with a moving body. Both controllers perform well. The magnitude of the tracking error to check the performance of the proposed controller is plotted in
Figure 3b. The size of the body position tracking error starts from 2 m and in the presence of uncertainty, it converges to zero asymptotically, which shows the ability of the fuzzy system to overcome uncertainty. The tracking performance of the two controllers for the angle of the second joint of the arm is compared in
Figure 4. As can be seen, the two controllers are quickly converged to the desired path with the help of the same kinematic control with a small error. The magnitude of the second arm joint position tracking error to plot the performance of the proposed controller (AFC) is plotted in
Figure 5. The magnitude of the error starts from 2 radians and converges to zero in the presence of uncertainty, which shows the ability of the fuzzy system to overcome uncertainty.
Figure 6 shows the error rate of the robot speed tracking by two controllers. In this comparison, the proposed controller (AFC) performed much better than the RAC, and the tracking error rate was asymptotically converged to zero. The control signals of AFC and RAC are compared in
Figure 7 and
Figure 8 and the superiority of the proposed method can be seen.
Initially, due to the type-2 fuzzy sliding mode operation in the control loop, we have the signal chattering, but with the passage of time and the activation of adaptive linear control, the signal vibration also decreases. Moreover, considering that, in this method, the law of linear control matching when the error range is small is activated, there are no rapid changes in the matching parameters, so with the jump of the control signal, the installation is reduced in another way. The control effort of the RAC in the initial moments is large, which creates a problem for the robot’s motions, but this problem has been solved despite the limiting function in the proposed scheme. One of the ways to challenge a control system is by applying a disturbance to the controlled system.
Figure 8 shows the performance results of both control systems in facing this challenge.
In
Figure 9, at point
x = 1 m, a wind disturbance force of 1 N/m is applied in the right direction, and at point
x = 2 m, a force of 0.5 N/m is applied to the robot in the left direction. As can be seen, the proposed control system has a better performance and has guided the robot to the desired path at a faster speed. In order to further compare the performance of the proposed method with other methods, as presented in
Table 5, two measures of root mean squares error (RMSE) and step response time are calculated. As can be seen in
Table 5, the proposed control system has shown a much better performance than the methods presented in [
29,
30] in both the RMSE and the step response time (response speed) as measurement criteria.