Terrain Adaptive Odometry for Mobile skid-steer Robots

本文提出一种新颖的方法,通过机器人地形分类改进了履带式移动机器人的里程计精度和可靠性。该方法不依赖人为标记的地形类别,而是直接利用修正系数进行地形分类,增强了机器人的地形适应能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Introduction

This paper proposes a novel approach improving precision and reliability of odometry of skid-steer mobile robots by means inspired by robotic terrain classification (RTC).

Novelty

In contrary to standard RTC approaches, this paper do not provide human labeled discrete terrain categories, but we classify the terrain directly by the values of coefficients correcting the robot’s odometry.

不是应该用terrain type判断correction coefficients吗,这里的意思好像是用correction coefficients来判断terrain type.

Rather than labeling the terrain categories by human means, it is more important to find representation that can be directly exploited by the robot, i.e. find terrain type representation by means essential for the robot. Sometimes, the same terrain type behaves differently under various circumstances (such as pebbles on flat terrain and pebbles on steep or uneven terrain) as well as different terrains can influence robot’s odometry in a very similar way.

Enhanced Odometry Model with Correction Coefficients

首先定义两个parameter:
(1)αl=vl−vl′vl\alpha_{l} = \frac{v_{l} - v_{l}'}{v_{l}} \tag{1}αl=vlvlvl(1) (2)αr=vr−vr′vr\alpha_{r} = \frac{v_{r} - v_{r}'}{v_{r}} \tag{2}αr=vrvrvr(2)

where
vr,vlv_{r}, v_{l}vr,vl——the left and right track velocities measured by internal sensors
vr′,vl′v_{r}', v_{l}'vr,vl——the true velocities of the track gears moving through the coordinate frame

在线求解α\alphaα的两个公式:
(3)θ˙=vr(1−αr)−vl(1−αl)2d\dot{\theta} = \frac{v_{r}(1 - \alpha_{r}) - v_{l}(1 - \alpha_{l})}{2d} \tag{3}θ˙=2dvr(1αr)vl(1αl)(3) (4)alar=−sgn(vl⋅vr)vrvl\frac{a_{l}}{a_{r}} = - \mathrm{sgn}(v_{l} \cdot v_{r}) \sqrt{\frac{v_{r}}{v_{l}}} \tag{4}aral=sgn(vlvr)vlvr(4)

结合这两个方程就可以直接求得α\alphaα, since θ˙\dot{\theta}θ˙ can be measured directly using the vertical axis angular rate sensor.

把上述α\alphaα代入下面两个方程,就可以求得当时的x˙,y˙\dot{x}, \dot{y}x˙,y˙
x˙=vr(1−αr)+vl(1−αl)2cosθ\dot{x} = \frac{v_{r}(1 - \alpha_{r}) + v_{l} (1 -\alpha_{l})}{2} \mathrm{cos} \thetax˙=2vr(1αr)+vl(1αl)cosθ y˙=vr(1−αr)+vl(1−αl)2sinθ\dot{y} = \frac{v_{r}(1 - \alpha_{r}) + v_{l}(1 - \alpha_{l})}{2} \mathrm{sin} \thetay˙=2vr(1αr)+vl(1αl)sinθ

求得x˙,y˙\dot{x}, \dot{y}x˙,y˙之后代入下面两个方程就可以求出position increments,重点是这里引入了一个重要参数CCC

△xk−1k=x˙k−1+x˙k2TsC\triangle x_{k-1}^{k} = \frac{\dot{x}_{k-1} + \dot{x}_{k}}{2} T_{s} Cxk1k=2x˙k1+x˙kTsC △yk−1k=y˙k−1+y˙k2TsC\triangle y_{k-1}^{k} = \frac{\dot{y}_{k-1} + \dot{y}_{k}}{2} T_{s} Cyk1k=2y˙k1+y˙kTsC

These corrected position increments are then used to update the current position.

Regression Function Training

To estimate the correction coefficients as (3) (4),we have chosen a straightforward yet sufficient approach of training a linear regression function C(x;α)C(x; \alpha)C(x;α), which processes features obtained from inertial data (three accelerations and three angular rates at 90 Hz) and outputs the correction coefficient directly.

C(x;α)=∑i=0nαixiC(x; \alpha) = \sum^{n}_{i=0} \alpha_{i}x_{i}C(x;α)=i=0nαixi

where
nnn——the number of features
xix_{i}xi——the feature value
αi\alpha_{i}αi——the corresponding parameter of the regression function

Training of the regression function was performed using normal equations corresponding to minimization of the following cost function in a least squares sense:
J(α)=12m∑k=1m(C(xk;α)−yk)2J(\alpha) = \frac{1}{2m} \sum_{k=1}^{m} (C(x^{k}; \alpha) - y^{k})^{2}J(α)=2m1k=1m(C(xk;α)yk)2
where
mmm——the number of training examples
yky^{k}yk——the correction coefficient obtained from the ground truth trajectory reference for the kthk^{th}kth training example. They were computed by off-line local optimization in such a way to ensure that the trajectory obtained using the proposed model parameterized by these yky^{k}yk coefficients coincides with the reference.

Feature Extraction and Selection

This paper perform feature selection on the following features:

  1. features from the time domain defined as various statistical moments and indicators such as min, max, mean, median, norm, skewness, kurtosis, and number of sign changes over a threshold given by 0.25, 0.5, 0.75 multiples of mean and median
  2. features from the frequency domain computed using FFT and taking into account the magnitudes and frequencies of first three most significant harmonics
  3. features defined as correlation coefficient between the signal samples and more than a hundred of Haar wavelets generated with the corresponding length.

The feature selection was performed off-line as part of the regression function training.

Formally, we are given a training set {x1,y1,...,xK,yK}\left \{ x^{1}, y^{1}, ..., x^{K}, y^{K} \right \}{x1,y1,...,xK,yK} consisting of KKK training samples, where xkx^{k}xk are N-dimensional vectors containing values of features from the feature pool. We denote xjkx_{j}^{k}xjk as the jjj-th feature of the kkk-th sample.

Robotic Platform Description

Plant: skid-steer robot (tracked vehicle)
Inertial Sensor: Xsens MTi-G unit providing calibrated and temperature compensated inertial data at 90 Hz in range of ±300deg/s\pm 300 deg/s±300deg/s and ±50m/s2\pm 50 m/s^{2}±50m/s2 for angular rates and accelerations respectively.
Encoder: providing left and right track velocities at 10 Hz.

Data Collection: The robot was teleoperated during these experiments and tracked using overhead camera and video tracking system we have developed for this purpose.

Evaluation and Testing

  1. First, we had to determine the optimal number of inertial data samples to be used for computing features.
    This way the optimal number of samples was determined to be 98.
    For the real-time on-line implementation this means: each time a new odometry measurement comes (at 10 Hz), from that time-step the last 98 samples of the 6 inertial samples signals (sampled at 90 Hz) are processed to obtained the selected features that form the input to the trained regression. This way one correction coefficient is obtained for each odometry.
  2. Another series of experiments was carried out to determine the optimal number of features to be selected during the proposed feature selection procedure.
    This proved that using only the best 20 features is fully sufficient, most of which were from the group of statictical time domain features. These features proved to be the best for capturing information about changes in motion dynamics corresponding to disturbances to the proposed odometry model caused by the nature of terrain.
  3. To field-test our algorithm and evaluated the desired improvement in precision of navigation, we compared the development of RMSE of position in time of our approach (with respect to the ground truth trajectory) ot the RMSE development of the trajectory obtained using the original uncorrected odometry model.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值