概述
自动泊车路径规划概述
- 自动泊车路径规划概述
- 1.路径规划问题的一些概念
- 1.1 状态空间
- 1.2 环境
- 1.3 目标点
- 1.4路径和轨迹
- 1.5 全向性
- 1.6 可行性
- 1.7 路径规划
- 2.路径规划方法简介
- 2.1 从几何到可行的路径规划
- 2.2 基于基本运动或者基本曲线的路径规划
- 3.基于基本运动自动泊车问题描述
- 3.1 自动泊车问题的特殊性
- 3.2 车辆模型
- 3.3 环境模型
- 3.4 基础运动
- 3.5 垂直停车操作
- 参考文献
自动泊车路径规划概述
1.路径规划问题的一些概念
首先让我们定义路径规划的上下文:特定的几何形状的机器人R在一个环境W中移动。
1.1 状态空间
R 拥有几个方向的自由度(如它的位姿和航向),而这几个自由度的状态可以衍生为R的状态,所有可能的状态组成的空间称为一个状态空间C。
1.2 环境
一般情况下,环境W分为障碍空间和自由空间,机器人R必须在自由空间F运动。
1.3 目标点
机器人在运动之后需要到达的一个在环境W或者状态空间C中的点。
1.4路径和轨迹
机器人的运动对应一系列的状态,如果这些状态有时间戳,我们称为轨迹,没有叫做路径。一个安全的路径或轨迹,组成他的所有的状态都必须是安全的。
1.5 全向性
机器人的全向性是指机器人在一个状态c,能够到达它的所有临近状态,通俗一点讲就是机器人能够到达他附近所有的区域。车辆不具有全向性,是因为它无法进行侧向移动。
1.6 可行性
非全向性是汽车的众多动态约束中的一种,而这些约束引出了可行性路径的概念。也就是一个可行性路径必须满足它所有的动态约束。
1.7 路径规划
基于上述的所有定义,路径规划的目的就是找到一条从当前状态到目标状态可行的安全的轨迹。
2.路径规划方法简介
2.1 从几何到可行的路径规划
这种类型的路径规划一般分为两个步骤。
- 首先获得一条从起点到终点的几何路径,这一步骤可通过Voronoi图、人工势场法、A*或者Dijstra等方法。
- 然后考虑机器人的动态约束,去调整之前的几何路径,从而获得可行的轨迹。
这类算法的优点在于它适用性很广,能够适用与各种场景和各种机器人。
缺点则是,即使生成的路径是可行的,但是看起来非常的不自然或不可预期。
2.2 基于基本运动或者基本曲线的路径规划
这种类型的路径规划方法通过基本运动或者基本曲线来生成轨迹,他们之间的不同点在于基本运动的定义,基本运动可以是以恒定速度在恒定时间的运动,也可以连续光滑的曲线。这些曲线可以是圆弧直线、贝塞尔曲线、样条曲线等等。
这类方法的优势在于规划出的轨迹是自然的,并且满足汽车动力学约束可行的。但是,如何在状态空间C去搜索这样一个路径变地更加困难,原因在于基本运动和基本曲线在状态空间中没有直接的数学表示。如何去解决这个困难,比较流行的方法有概率路径规划[Ahuactzin et al., 1991; Overmars, 1992; Sekhavat et al., 1996]、快速随机数法[La Valle and Kuffner, 1999;La Valle, 2006].
3.基于基本运动自动泊车问题描述
3.1 自动泊车问题的特殊性
自动泊车路径规划的特殊性在于,基于泊车车位的类型,我们知道我们需要寻找的是那种操作路径。
3.2 车辆模型
(1)
x
˙
=
S
c
o
s
(
θ
)
dot{x} = Scos(theta)tag{1}
x˙=Scos(θ)(1)
(2)
y
˙
=
S
s
i
n
(
θ
)
dot{y} = Ssin(theta)tag{2}
y˙=Ssin(θ)(2)
(3)
θ
˙
=
S
t
a
n
(
Θ
)
L
dot{theta} = Sfrac{tan(Theta)}{L} tag{3}
θ˙=SLtan(Θ)(3)
Note:
- 车辆的状态由它的位姿(x,y, θ theta θ)表示,这个位置对应的是车辆后轮中心的位置
- S代表车辆的线速度, Θ Theta Θ代表车辆的前轮转角
- L代表前后轮的轴距
3.3 环境模型
环境模型做了一些简化:
- 停车位是平行与马路的矩形区域
- 马路是两条平行线内的区域
基于以上假设,环境模型可以由三个参数表示:停车位的长度d,宽度w和马路宽度W。坐标系的原点定在停车位停车位置,这样车辆的最终的坐标都会在原点。
3.4 基础运动
我们定义基础运动如上图3所示,是在一段时间内,对车辆进行车速和转角的控制,控制变量是对时间的函数。这个运动模型可以由数学表达式(4)和(5)表示,其中涉及到有六个参数:
- λ lambda λ: 运动的持续时间
- γ gamma γ: 前轮转角方向改变的时间
- S m a x S_{max} Smax: 车辆的最大速度
- Θ m a x Theta_{max} Θmax: 车辆最大的前轮转角
- β beta β: 从0加速到 S m a x S_{max} Smax的时间
-
α
alpha
α: 从0达到
Θ
m
a
x
Theta_{max}
Θmax的时间
(4) S ( t ) = S m a x × { t / β 0 ≤ t < β 1 β ≤ t < λ − β ( λ − t ) / β λ − β ≤ t < λ S(t)=S_{max}times \ begin{cases} t/beta &0leq t <beta \ 1&beta leq t <lambda-beta \ (lambda-t)/beta& lambda-beta leq t <lambda tag{4} \ end{cases} S(t)=Smax×⎩⎪⎨⎪⎧t/β1(λ−t)/β0≤t<ββ≤t<λ−βλ−β≤t<λ(4)
(5) Θ ( t ) = Θ m a x × { t / α 0 ≤ t < α 1 α ≤ t < γ − α ( γ − t ) / α γ − α ≤ t < γ + α − 1 γ + α ≤ t < γ − α ( t − λ ) / α λ − α ≤ t < λ Theta(t)=Theta_{max}times \ begin{cases} t/alpha &0leq t <alpha \ 1&alpha leq t <gamma-alpha \ (gamma-t)/alpha& gamma-alpha leq t <gamma +alpha tag{5} \ -1&gamma +alpha leq t < gamma - alpha \ (t - lambda)/alpha & lambda - alpha leq t < lambda end{cases} Θ(t)=Θmax×⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧t/α1(γ−t)/α−1(t−λ)/α0≤t<αα≤t<γ−αγ−α≤t<γ+αγ+α≤t<γ−αλ−α≤t<λ(5)
图4显示了不同的
γ
gamma
γ可以获得不同的基础运动。综合车辆模型和基础运动模型,我们可以将二者对应起来:
(6)
(
Δ
x
,
Δ
y
,
Δ
θ
)
=
M
(
λ
,
γ
,
S
m
a
x
,
Θ
m
a
x
,
α
,
β
)
(Delta x,Delta y,Delta theta) = M(lambda,gamma,S_{max},Theta_{max},alpha,beta) tag{6}
(Δx,Δy,Δθ)=M(λ,γ,Smax,Θmax,α,β)(6)
这个运动模型还可以用动力学模型表示:
(7)
(
Δ
x
,
Δ
y
,
Δ
θ
)
T
=
∫
t
=
0
λ
(
x
˙
,
y
˙
,
θ
˙
)
T
d
t
(Delta x,Delta y,Delta theta)^T = int_{t=0}^{lambda}(dot{x},dot{y},dot{theta})^T dt tag{7}
(Δx,Δy,Δθ)T=∫t=0λ(x˙,y˙,θ˙)Tdt(7)
3.5 垂直停车操作
如图5所示,垂直停车操作可以分为三步骤:
- 第一步,调整车头朝向
- 第二步,向前运动,使车尾部朝向垂直车位
- 第三步,后退泊入
这样路径规划就变成了寻找3个基本运动的问题。
参考文献
C. Pradalier, S. Vaussier and P. Corke Path planning for a Parking Assistance System: Implementation and Experimentation
最后
以上就是心灵美小蝴蝶为你收集整理的自动泊车路径规划概述自动泊车路径规划概述参考文献的全部内容,希望文章能够帮你解决自动泊车路径规划概述自动泊车路径规划概述参考文献所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复