An Estimator for the Kinematic Behaviour of a Mobile Robot Subject to Large Lateral Slip

: In this paper, the effects of wheel slip compensation in trajectory planning for mobile tractor-trailer robot applications are investigated. Firstly, a kinematic model of the proposed robot architecture is marked out, then an experimental campaign is done to identify if it is possible to kinematically compensate trajectories that otherwise would be subject to large lateral slip. Due to the close connection to the experimental data, the results shown are valid only for Epi.q, the prototype that is the main object of this manuscript. Nonetheless, the base concept can be usefully applied to any mobile robot subject to large lateral slip.


Introduction
In recent years, autonomous navigation applied to mobile robots is a rising trend. Within this field, trajectory planning and control is one of the most studied themes. Along with the growth of the mobile robotic fields of application, new and better performance is required from robots. In particular, off-road capabilities, quick manoeuvring at high speed, and particular locomotion architectures require a deep understanding of how the robot dynamically behaves to develop proper trajectory planning and control.
Lateral and longitudinal wheel slips are two of the most common phenomena to be faced in order to compensate undesired robot behaviour. Many of the existing works in mobile robotics overcome these issues assuming pure rolling conditions of the wheels, neglecting, therefore, wheel slip [1][2][3][4][5]. These issues are instead largely studied in the automotive field due to similar interest in handling control [6,7]. Wheel slip is almost impossible to be measured directly; therefore, in most of the cases, it has to be estimated. Thus, many slip estimation approaches have been proposed [8], such as sliding mode control [9,10], motor current sensing control [11], Kalman [12,13] or particle filter [14,15] based estimations, IMU-based slip estimation [16], and vision-based estimation [17]. All these methods have advantages and limitations reported in depth in the literature. Generally speaking, the best-performing solutions require a structured environment (i.e., vision-based systems) or intensive computation load in order to model, estimate, and control the robot correctly. Therefore, it is not always possible to meet the requirements of the various solutions, either because it is not possible to setup in advance the work environment, because the control unit is not capable to manage the slip compensation complexity, or maybe because it is already overburdened by other heavy tasks. For this reason, this paper proposes a very simple approach based on adjusting kinematics parameters to compensate the large lateral wheel slip. A vaguely similar approach was adopted in a couple of cases among tracked robots in order to correlate the complex tracks interaction with the soil with a simpler wheel-ground contact [18,19].
The idea behind this approach is to characterise the mobile robot through an experimental campaign with the aim of finding a simple correlation between the ideal and expected kinematic trajectory and the measured one. Then, by means of the experimental correlation between the desired and observed behaviour, it is possible to adjust some robot control reference input signals with the aim of obtaining a trajectory closer to the kinematic one by compensating undesired handling behaviours due to dynamic phenomena. The experimental correlation between key parameters, such as the yaw rate and path curvature radius, should be simple enough to be easily and quickly computed by any robot control unit. This approach is strongly related to the robot (and the environment) that has been characterised. However, if a good identification is done, it is possible to obtain a very simple correlation between parameters that can be easily used to compute the required corrections.
This paper briefly introduces a kinematic model of the mobile robot that is then used to fit the experimental results. Post-processing the data, a correlation between the theoretical and experimental results is found and used to compensate the divergence between the two.

Kinematic Model
This section summarises the theoretical background of the study. Initially, the robot is briefly presented, then the kinematic model is derived.

Robot Architecture
This study focus on Epi.q (Figure 1), the last model of a family of modular surveillance UGV [20]. It is composed of two practically identical modules linked together by a 2 DOF (relative yaw and relative roll rotations) joint. Its most notable feature is the architecture of its hybrid legged-wheeled locomotion unit ( Figure 2): the unique design is an underactuated epicyclic gearing system driven by a single electric motor coupled to the sun gear; depending on the forces acting on the wheels and the carrier, the motor imposes a rotation motion to the wheels, to the carrier or both of them [21]. Hence, this locomotion unit enables to overcome little obstacles using the carrier as a legged rotating unit. While this locomotion unit enables interesting behaviour, during more conventional navigation, all wheels of the same unit are constrained to spin at the same speed due to the nature of the gearing system. This inevitably leads to a very evident phenomenon of large lateral wheel slip during curved trajectories, even at low speed.
This drawback can be addressed in several ways to obtain the desired trajectories, compensating the divergences from the kinematic model. The authors have proposed an initial attempt to dynamically model the behaviour of a robot with a similar architecture [22]. In this study, however, a different approach, purely based on kinematic models, is taken.

Kinematic Model
The kinematic model is based on the following hypothesis:

•
The model is purely kinematic.

•
The model considers only planar motion on a flat surface; out-of-plane motions are neglected.

•
The locomotion units are simplified considering a single equivalent wheel per side with the axis passing through the centre of mass of the module. Figure 3 represents the kinematic module, where (x n , y n , ϕ n ) is the pose of the n-th module (n = 1 for the front module, n = 2 for the back one), δ is the relative yaw rotation between the front and rear module, i is the track of the module, a = 0.132 m and b = 0.139 m are the distances between the central joint and the front and rear modules respectively, and v n is the longitudinal speed of the n-th module in its reference frame. The geometric relations between the modules impose the following constraints: 1 (1) Moreover, two additional holonomic constraints can be defined: .
The velocity in the world reference frame of each module is defined as: . . . .
Hence, the kinematic system can be defined as: The relation of . δ as a function of v 1 and . ϕ 1 can be obtained differentiating Equations (1)-(3) in time and substituting the results in Equation (5). With some manipulation, it is possible to get: Thus, the kinematic model can be explicitly written as: Considering that each module behaves as a skid steering robot, it is possible to rewrite the latter relations in an alternative form considering the two following relations: . Therefore: v 1R v 1L are easily related to the motor angular speeds ω 1R and ω 1L by knowing the wheel radius r wheel = 32mm and the transmission ratio of the gearing system τ advancing = 4.1.

Experimental Setup
This section delineates the main points of the experimental setup required to study the behaviour of the robot while performing curve trajectories. As already introduced, Epi.q was the robot used in this study. Its front module motors were velocity controlled to achieve the desired curved trajectory, while, for these tests, the rear motors were disabled; therefore the robot behaved similarly to a tractor-trailer system instead of two independent active modules linked together. Relevant on-board measurements, such as motor angular speed, were transmitted in real-time to a PC, where they were logged. The visual-based tracking system, described in depth in [23] and summarised in the following section, was used to track the actual trajectory of the robot. Several tests at different motor speeds were performed and then used to compare the actual trajectory with the theoretical one.

Tracking Method
As can be seen in Figure 4, two ArUco markers, a set of open source square fiducial markers, designed for the fast processing of high quality images [24][25][26], were fixed to the robot (one per module), while one was fixed to the ground at an arbitrary location. The camera recording the tests was free to move in the environment; its position only affects the accuracy of the measure. The test recordings were then post-processed by a custom marker-tracking algorithm that first searched for a set of markers and then estimated the homogeneous transformation T C n , a representation of the pose of the n th marker in the camera reference frame. The poses (x 1 , y 1 , ϕ 1 ) and (x 2 , y 2 , ϕ 2 ) of the two moving markers were then estimated with respect to the marker fixed to the ground, representing the world reference frame, by applying a concatenation of homogeneous transformations such as T 0 n = T C n T 0 C = T C n T C 0 −1 . With this approach, the camera can move freely, and the tracking results could still cohere to the desired reference frame. As anticipated, the camera position only influenced the accuracy of the measure, since the system used just a single camera; therefore, the picture depth estimation was noisy.  Table 1 collects the test performed with the robot together with the kinematic inputs and the main parameter used as comparisons, such as the curve radiuses and the estimated track between the wheels. The theoretical radius R th was computed using the kinematic relation R th = v 1 . ϕ 1 , which is the expected curve radius if the mobile robot behaviour is purely kinematic. The radiusR is the radius of the trajectory curve estimated from the experimental data collected by the vision-based tracking system. As expected, the estimated radius was always larger than the theoretical one, reflecting the under-steering behaviour due to the large lateral wheel slip. The estimated trackî, instead, was obtained fitting the tracked trajectory with the kinematic model described in the previous section, where the same kinematic input v 1R and v 1L that have been logged experimentally have been used as input to the model. By recalling the model described before, this trend can be interpreted as that the virtual axle used in the model is wider than the actual track in order to mathematically represent the under-steering behaviour of the robot.R andî are two different way to represent the robot under-steering tendency with a basic difference: R is purely based on the fitting of the measured trajectory with a circle, whileî is obtained fitting the whole kinematic model shown before using the measured kinematic input in order to match as close as possible the robot behaviour.  Figure 5 depicts a comparison between the various trajectories taken into account for each test. Figure 5a shows a comparison of the measured trajectory and the resulting curves of the two kinematic models when the measured input data are used. The difference between the two kinematic models and the actual measured data can be interpreted as the lack of dynamic phenomena modelling, such as robot inertia, wheel longitudinal, and lateral slip. By making a comparison between the two kinematic models instead, the results described before are again evident: the kinematic model with the estimated track lengthî ("Fit Kin.") has a more under-steering behaviour compared to the kinematic model with the actual track length ("Th. Kin."). Since the fitted kinematic model is a better approximation of the actual robot trajectory, it could be said that a kinematic model with virtual wheels with a slightly increased track lengthî could partially compensate unmodelled dynamic behaviours better than the kinematic model with the actual track length. Figure 5b shows a comparison between two circles and the steady-state part of the measured trajectory: the actual trajectory is not an exact circle, but the two circles approximate it, one better than the other. Again, it appears from the results that the kinematic circle of radius R th is smaller and a worse approximation of the actual data than the circle with the estimated radiusR. This figure depicts more clearly that, if a purely steady-state comparison is made, the perfectly circular kinematic trajectories could be a good approximation of the real one.  Figure 6 highlights the latter statements even better; the figure shows the instantaneous curvature radius of the two kinematic models over time, and how the two curves reach a steady-state very close to the value of the radius of the circle described before. The theoretical kinematic model tends toward R th = v 1 . ϕ 1 , while the kinematic model with the corrected track lengthî tends to the value ofR, the radius of the best-fitting circle. As described before, the virtual track length that better fits the experimental trajectorieŝ i is always larger than the robot actual track length i = 0.286 m to mathematically describe the under-steering behaviour of the robot that, otherwise, the theoretical kinematic model could not represent. Figure 7, in particular, illustrates that there is a strong correlation betweenî and the front module yaw rate . ϕ 1 : the quicker the robot turns, the higher the fitted virtual length is, or, from another point of view, the quicker the robot turns, the more evident the dynamic effects on the handling, such as under-steer and wheel slip, become more relevant.

Results
where p 1 = 0.049 m s and p 0 = 0.286 m are the coefficients of the linear function. This very simple relation could be used to predict and, therefore, partially compensate the unmodelled dynamic effects of the kinematic model. It is important to state that this particular relation holds only for working scenarios identical, or at least very similar, to the experimental setup. Unfortunately, this simple approach has as a downside the limitation of being valid only in tested and specific scenarios. Nevertheless, a robot working in a well-known and uniform environment could benefit from this approach.
The latter equation can be rewritten in order to explicitly show the relation betweenî and the radius R by recalling that R = v 1 / . ϕ 1 : Due to its simplicity, the relation can also be easily rewritten as: Hence, depending on the case and the known and unknown parameters, it is possible to compute, using a simple linear equation, the correction parameters that could compensate for undesired behaviour in a robot.

Conclusions
In this paper, a simple and computationally efficient solution is proposed to predict, estimate, and compensate complex dynamic behaviour, such as significant lateral slip, which highly influences the mobile robot handling employing an experimental kinematic characterisation. Compared to the commonly used approaches to similar issues, the results shown herein are highly dependent on a particular robot and a particular environment. The fitting method behaves sufficiently well at lower speeds and yaw rates, but when velocities increase, or more generally, when the dynamic phenomena are more relevant, the robot handling behaviour diverges from a purely kinematic one in a manner that is not easily compensated by the proposed fitting method. However, its simplicity makes its application feasible to any kind of kinematic architecture of mobile platforms where the wheels transversal slip is significant. Moreover, its computational efficiency allows its implementation at low-power, low-performance, or overburdened control units. As a future work, the validity of the proposed method can be tested on other machines of the class of eight-wheeled mobile articulated robots developed at Politecnico di Torino (such as the Agri.q rover for precision agriculture, or even the Rese.q snake rescue robot). Prior to a proper identification of the virtual track, in fact, the methodology can be used both to estimate the actual trajectories of the robot modules and, above all, to enhance the precision of a robot's motion planning with a consequent improvement of the robot's control within its workspace.