International Journal of Advanced Robotic Systems Fuzzy Vector Field Orientation Feedback Control-based Slip Compensation for Trajectory Tracking Control of a Four Track Wheel Skid-steered Mobile Robot Regular Paper

which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Abstract Skid‐steered mobile robots have been widely used in exploring unknown environments and in military applications. In this paper, the tuning fuzzy Vector Field Orientation (FVFO) feedback control method is proposed for a four track wheel skid‐steered mobile robot (4‐TW SSMR) using flexible fuzzy logic control (FLC). The extended Kalman filter is utilized to estimate the positions, velocities and orientation angles, which are used for feedback control signals in the FVFO method, based on the AHRS kinematic motion model and velocity constraints. In addition, in light of the wheel slip and the braking ability of the robot, we propose a new method for estimating online wheel slip parameters based on a discrete Kalman filter to compensate for the velocity constraints. As demonstrated by our experimental results, the advantages of the combination of the proposed FVFO and wheel slip estimation methods overcome the limitations of the others in the trajectory tracking control problem for a 4‐TW SSMR.


Introduction
In recent years, many mobile robotic system applications have been developed. Several types of system have been designed and manufactured based on the locomotion systems of robots. With a 4-TW SSMR, there is no steering mechanism and the direction of motion is changed by turning the left and the right side tracked wheels at different velocities. Because of complex wheel-ground interactions and kinematic constraints, the path tracking control of the mobile robot makes it difficult to obtain an accurate experimental result.
In the literature, there are several approaches to solving the path tracking problems of a mobile robot. For example, a combination of kinematic and torque control frameworks using a backstepping technique to join robot kinematics into dynamics allows us to apply approaches from a model-dependent computed torque method (CTM) to a robust sliding mode control (SMC) method [1]. In [2], the adaptive SMC is designed for an uncertain dynamic model with parametric uncertainties associated with the camera system. Another type of controller for an autonomous mobile robot is the stable tracking control method which is proposed based on an error model of the kinematic model [3]. Although there are many interesting features to all these control methods, they are difficult to tune, in contrast to the flexibility of the fuzzy logic control (FLC). The fuzzy logic controller for the path tracking of a wheeled mobile robot is presented in [4]. A fuzzy adaptive tracking control method for wheeled mobile robots is proposed, where unknown slippage occurs and violates the nonholonomic constraint in the form of statedependent kinematic and dynamic disturbances [5]. In [6], a pseudo-static friction model is used to capture the interaction between the wheels and the ground, and an adaptive control algorithm is designed to simultaneously estimate the wheel/ground contact friction information and control the mobile robot's trajectory as desired.
In previous work, the novel Vector Field Orientation (VFO) feedback control method was developed for a Differentially Driven Vehicle (DDV), a Threecycle Mobile Robot and a 4-WD SSMR in [7][8][9]. Also in [10], the extended VFO control method for a mobile vehicle was proposed to compensate for skid-slip phenomena.
In a mobile robot's field of operation, wheel slip limits traction and braking ability, especially for a four trackwheel differentially skid-steered mobile robot (4-TWD SSMR). Accurate estimation of slip is essential to obtaining the precise position of a mobile robot operating in unstructured terrain. Several approaches to slip estimation have been developed. For example, using a sliding mode observer (SMO) as a means to estimate slip parameters based on the kinematic model of a skidsteering vehicle is proposed in [11]. In another study, a novel method combining an optical flow algorithm with a sliding mode observer to estimate the slip parameters of a SSMR is introduced [12]. However, in order to validate the proposed method, it needs to be tested on more complex trajectories and longer travelling distances. Reference [13] proposes an experimental slip model for exact kinematic modelling and the parameters of this model are determined based on experimental analysis.
The contribution of this paper is the combination of the proposed FVFO and novel wheel slip compensation methods for the trajectory tracking of a mobile robot. First, the tuning fuzzy Vector Field Orientation (FVFO) feedback control method is proposed for a 4-TW SSMR. While the stable tracking control in [3] and conventional VFO feedback control methods in [7][8][9][10] do not perform well over a wide range of operating conditions because of the fixed gains used, the FVFO used the FLC to tune parameters of the VFO method. That is the flexibility of the proposed method, thanks to which we are able to obtain more precise trajectories. Second, in the field of mobile robotics, wheel slip limits the traction and braking ability of the robot; the methods in [11][12][13] retain these limitations when the robot is travelling on different ground surfaces with different and longer trajectory shapes. In this paper, we propose a novel method for online wheel slip estimation based on a discrete Kalman filter to compensate for the velocity constraints. The experimental results show that the combination of the proposed FVFO and novel wheel slip compensation methods overcomes the limitations of the others in the trajectory tracking control problem. This system can be enhanced by using trajectory tracking control for a 4-TW SSMR. The experiment is performed on the NT -Hazard Escape -1 ® , as shown in Figure 1. This paper is organized as follows: Section 2 introduces the experimental NT -Hazard escape -1 mobile robot setup. Section 3 proposes a tuning fuzzy Vector Field Orientation (FVFO) feedback control method for a mobile robot. The implemented extended Kalman filter and slip estimation are designed in Section 4. The experimental results, including analysis and evaluation, are discussed in Section 5. Finally, Section 6 presents the conclusion.

The experimental NT-Hazard escape -1 mobile robot setup
The NT -Hazard escape -1 mobile robot, with four NTtrack wheels, considered in this study, has been applied in a disaster area, has been used to run through and observe rough terrain including a construction site and has run up stairways. A robot with small actuators was created for the first time in Korea, providing the robots with various functions. Each of the eight motors operates and functions independently. The robot can easily lift 2 tracks even when fully loaded. The robot can move whilst maintaining its central balance like a tank. In addition, the RS232C is supported and enabled by an embedded board and computer which operate through wireless telecommunication. The dimensions of the mobile robot are shown in Figure 2.  For research purposes, an experimental mobile robot was designed. The system configuration is represented by the element component configuration shown in Figure 3, while a real photograph of the experimental system is displayed in Figure 4. Using these figures, the AHRS (AHRS -03 -300) was mounted on the top centre of the robot on a base platform. The AHRS specifications are shown in Table 1. Two incremental encoders (E40H-8-1024-3-N-5) were installed on the robot's front left and front right track wheels. A notebook model ASUS U36S was used to collect data from the sensors through an AVR 128-pro board and also performed all the algorithms in real-time. Here, the software control algorithm for the system was coded in the programming language C# (using the Microsoft Visual Studio 2008 version). During the experiment, the measurement sampling frequency for the AHRS and incremental encoders was set to 20Hz. The robot was programmed to follow desired trajectories on concrete terrain. Based on the measurements from these two sensors, the robot position values are derived using a Kalman Filtering technique and then the trajectory tracking controllers are applied to drive the robot along desired trajectories.  implemented simultaneously using measurements from the AHRS sensor and encoders. They are introduced in the next sections.

The VFO feedback control method
The stable tracking control (STC) method is introduced in [3][4], based on an error model of the kinematic model. The linear velocity output vc and the angular velocity output ωc of the control law are:  are the desired linear and angular velocities of the mobile robot ; Kx , Ky and K  are all positive constants ; and bx e , by e and b e  are three instantaneous error variables associated with the body frame. In this work, the VFO control feedback method is applied to high-level closed-loop control of the robot's position [7][8][9][10]. The kinematics modelling of the 4-TW SSMR can be expressed as In the VFO strategy the trajectory tracking control problem is divided into two subtasks: convergence of position and orientation to the desired values. The vehicle is driven by the pushing control vB with a careful pushing strategy, while the orienting control w is responsible for matching the vehicle's heading vector with the position convergence vector. Such tasks are accomplished with the help of the choice of a proper convergence vector field, which defines the instantaneous convergence direction and orientation of the vehicle. The control position errors T p x y e [e ,e ]  are defined as: are the desired and actual positions of the mobile robot. The convergence vector field is defined as h   defines the convergence direction and orientation of the * q sub-state, and o h defines the convergence orientation of the  variable. For VFO tracking control, the positional component of the convergence vector field is defined as a linear combination of the control position errors and feedforward terms as follows: where p K is a design parameter, * d q  is the desired velocity vector.
Using kinematics modelling (2), the simultaneous attenuation of both the position and orientation errors during a transient stage requires highly oscillatory vehicle movement, which usually does not occur in practice [10].  (6) as: where A tan 2c(.,.) :      is a continuous version of the four-quadrant function A tan 2(.,.) : [ , )        (refer to the appendix in [7]). The auxiliary orienting variable is now introduced as: Since the third component, which is the convergence orientation, is: where a K is a design parameter, and Using the principles of the VFO method, the VFO feedback control law is: where vc and ωc are the linear and angular velocity outputs from the VFO controller. The left and right angular speed inputs L R [ , ]   are computed using vc and ωc by using the Jacobian matrix as follows: where r is the radius of the tracked wheel and L is the distance between the left and right sides of the robot.

The tuning fuzzy VFO feedback control method
From Equations (5) and (8), it can be seen that the position and orienting components of the convergence vector field are similar to a PD control, but the derivative parameter is fixed at one. The p K and a K are considered to be proportional parameters. However, the conventional VFO feedback control does not offer reasonable performance over a wide range of operating conditions because of the fixed gains used. That is why fuzzy logic has to be chosen to tune the proportional parameters p K and a K of the VFO feedback control automatically. This is called the fuzzy VFO feedback control method (FVFO). Based on the definition of the control position errors , Equation (5) can be rewritten as where the p K in Equation (5) is separated into two components px py K ,K corresponding to ex and ey, respectively. Then the three parameters px K , py K and a K are tuned by using three fuzzy tuners. The detailed fuzzy VFO scheme is shown in Figure 6.  Figure 6 it can be seen that there are three fuzzy tuners for the three output parameters px K , py K and a K . Two input signals are needed for each fuzzy tuner [14]; the absolute error |e| and derivative error |de|, such as    There are three outputs from the three fuzzy tuners: kpx, kpy and ka with the outputs having ranges from 0 to 1. Singleton membership functions are then used for the fuzzy output partitions. Figure 9 shows five membership functions (VS, S, M, B, VB) corresponding with the five output states (very small, small, medium, big, very big), respectively. Because the same properties of the three output parameters px K , py K and a K are used as proportional parameters, fuzzy rules are composed generally as follows, using the above fuzzy sets of input and output variables: where n is the number of fuzzy rules; Ai, Bi and Ci are the i th fuzzy sets of the input and output variables used in the fuzzy rules. Ai, Bi and Ci are also the linguistic variable values of the input and output signals in the fuzzy tuners. The rules of the fuzzy tuners are designed as shown in Table 2. The MAX-PROD formula is chosen as the main strategy for the implication process:

kpx,kpy,ka
where (e)  , (de)  are membership values with respect to input variables ; i out  is the membership value with respect to the output variable at the i th rule. The centroid defuzzification method is used to convert the aggregated fuzzy set to a crisp output value. In this case, because the membership functions for the fuzzy output partitions are in Singleton form, the outputs of fuzzy tuners are calculated as: where i out y is the output value of the i th rules which can be determined in Figure 9; the output of the fuzzy tuner out y is kpx, kpy or ka. Then, these output values of the fuzzy tuners are substituted into Equation (16) to compute the proportional parameters px K , py K and a K in Equations (8) and (13)  We define a navigational reference frame N(X,Y,Z) and robot body frame B(x,y,z) as shown in Figure 10  After subtracting the constant offset and local gravity vector, the acceleration and angular rate models can be described by [15]: where the true acceleration vector, the true angular rate vector of the vehicle in the B frame, the acceleration white noise and the angular rate white noise are where N B C and q  are the transformation matrix from the B frame to the N frame and transformation matrix of the Euler angles, as given by the following matrices: where c cos ,s sin ,t tan          and the same notation convention is used for angles  and .

Velocity constraints
In the 4-TW SSMR, the motors that power the wheels on each side are geared internally to ensure that the velocity of the two adjacent wheels on each side are synchronized and thus have the same velocity at ground contact. We define L R v ,v as the left and right linear velocities of the robot, thus, we have: where 1x v , 2x v , 3x v and 4x v are the centre linear velocities for the front-left, rear-left, front-right and rear-right wheels, respectively, as shown in Figure 11. The longitudinal wheel slips of the left and right wheels L R ,   are defined as ratios of the wheel velocities and centre velocities [16], as follows  Because of the symmetric mechanical structure of the robot, it can be assumed that the centre of mass (COM) of the robot is located at the centre of the geometry (COG) of the body frame. The AHRS coordinate is located at the COG of the body frame in the B frame, as shown in Figure 10. Using two wheel encoders (one for each side of the vehicle), we obtain the AHRS velocity vector in the B frame. From (26), using two wheel encoder measurements and estimated slip parameters, we obtain the longitudinal velocity Bx v as: Based on [16], since the four tracked wheels of our robot are always in contact with the ground and since the AHRS is fixed on the robot platform, the velocity constraints By v , Bz v in the y-axis and z-axis directions for the AHRS device can be simplified to equal zero. The noises in the longitudinal velocity vBx can be expressed as the sum of the noise of the left and right wheels' angular speeds ωL and ωR as measured by the encoders. It is assumed that the noises for ωL and ωR have a normal distribution with a zero mean Gaussian and corresponding variances, and there is no cross-correlation between the noise of ωR and of ωL [17]. The noise variance of the longitudinal velocity vBx can be expressed as:  (21) in discretetime form, then we obtain the process model as: X(k) f(X(k 1),u(k), w(k), T) X(k 1) T * g(X(k 1),u(k), w(k)) where the AHRS input signals at the k th sampling time are Including the wheel encoder measurement noise and ground topography, the measurement model is rewritten in discrete-time form as: where n(k) represents measurement noises. We assume that the measurement noises n(k) are independent, zeromean and Gaussian white noise, i.e., n(k)~N(0, R). The covariance matrix of the measurement noise is:

Slip estimation (KFλ) method
In order to determine wheel slip parameters to compensate for the velocity constraints and their variance values in Section 4.1.2, a discrete Kalman filter, denoted by KFλ, is designed. By giving vBx in the body frame B and yaw rate , the wheel centre velocities along the xaxis for the left and right side's wheels are calculated by By substituting (33) into (25), we have: We define the unknown parameters: Substituting (36) into (35), the relationship between the angular speed from the encoders and unknown parameters is described as: The slip estimation based on the discrete Kalman filer (KFλ) is now established. We assume that the slip process is a random process and then the unknown parameter process can be modelled in discrete-time form is the process state vector at time k step, is a process noise vector, and k  is the state transition matrix which is defined as: From Equation (37), a measurement model can be written which relates to the encoder measurement noises as:    is the angular speed vector from two encoders at time step k,  is the measurement noise vector and H (k)  is the measurement matrix, which is calculated as: where Bxv (k), (k)


are the estimation values of the linear and angular velocities of mobile robot in the body frame, which are computed as:  (42) and (43)) are calculated by using the current state X (k) and X (k 1)  of the EKFx in Section 4.2. Similarly, the current estimated slip values in Equation (44) are used to compute the longitudinal velocity Bx v (k) in (27) and its noise variance value in (28) in order to perform the EKFx. After these analyses, there are two Kalman filters running concurrently; this is called a dual estimation algorithm [18][19]. As illustrated in Figure 12, the top EKFx generates state estimates and requires ˆ( k 1)   for the measurement update, the bottom KFλ generates slip state estimates and requiresX(k 1)  for the measurement update. Table 3 describes the dual estimation process using mathematical equations [20][21].

and the update step for KFλ is
where Q  and R (k)  are the process and measurement covariance matrices of w (k)  and n (k)  , respectively.
o The prediction step for EKFx is ˆˆX (k / k 1) X(k 1) Tg(X(k 1),u(k),0)       T T X X P(k / k 1) F (k)P(k 1)F (k) W(k)QW (k)     and the update step for EKFx is Q is the process covariance and the detailed calculations of X F (k) , W(k) and X H (k) are described in the Appendix.

Experimental results
In this section, experiments were performed to prove the effectiveness of the combination of the proposed FVFO and slip compensation methods for the robot's position in a real-time application. The system was performed on concrete terrain in an outdoor environment. The experiments involve two scenarios: The mobile robot is controlled along a desired trajectory with two curves in two cases: without and with slip compensation.  Scenario 2: The mobile robot is controlled along a desired circular trajectory with a 2-m radius in two cases: without and with slip compensation.

The use of the FVFO method for mobile robot without slip compensation
In this section, the proposed FVFO method is performed in two scenarios without slip compensation. Additionally, the stable tracking control method (STC) and the conventional VFO feedback control were applied in order to compare them with the FVFO results.
In the first scenario, the output trajectories of the three methods are shown in Figure 13 are and compared to the desired trajectory. The response of STC is quite different from the desired response, while those of VFO and FVFO are close to the desired response. The linear and angular velocities of the three methods, shown in Figures 14 and  15, are also close to the desired velocities despite the mechanical vibrations and sensor noises.

The use of the FVFO method for a mobile robot with slip compensation
In Section 5.1, although the FVFO method reduced more position errors than the STC and VFO method, the system error is still significant. In the field of mobile robotics, wheel slippage limits the traction and braking ability of the robot, and causes large position errors in path tracking control. In this section, the system is performed again with slip compensation.    It is clear from the above results that slip compensation is very effective in the field of mobile robotics. For the first scenario, the robot follows the desired trajectory, which has two curves. For the first curve, the angular speed of the right wheels is greater than that of the left wheels. Then, the traction phenomenon occurs on the right side while the braking phenomenon appears on the left. Consequently, the right wheel slip value is positive and the left wheel slip value is negative. Similarly, for the right rotation in the second curve, the right wheel slip value is negative and the left wheel slip value is positive. Furthermore, when the robot travels along the straight segment, less force is needed to drive the robot and the left and right wheel slips are close to zero. Figure 23 illustrates the estimated slip parameters of the left and right wheels for the three methods. For the second scenario, the robot follows the desired circular trajectory counterclockwise. The angular speed of the right wheels is always larger than that of the left wheels. Consequently, the right wheel slip value is always positive and the left wheel slip value is always negative, as shown in Figure 26. All types of the estimated slip parameters in both scenarios are consistent. Tables 4 and 5

Conclusions
This paper presents experiments into a method of controlling the 4-TW SSMR along a desired trajectory based on estimated feedback control signals from an extended Kalman Filter, which uses measurements from an AHRS and two incremental encoders. In this paper, we proposed a combination of the proposed FVFO and novel wheel slip compensation methods for the trajectory tracking of a mobile robot. The extended Kalman filter is utilized to estimate the positions, velocities and orientation angles, which are used for feedback control signals in the FVFO method, based on an AHRS kinematic motion model and velocity constraints. Experimental results show the advantages of the combination of these two methods, which are effective at overcoming the limitations of the others in the trajectory tracking control problem for a 4-TW SSMR, e.g. the commercialized Hazard Escape I ® mobile robot.

Acknowledgments
This work was supported by the 2011 Research Fund of University of Ulsan.