一种保证无人车在三维地形上安全行驶的运动规划方法转让专利
申请号 : CN202110295008.5
文献号 : CN113044029B
文献日 : 2022-03-15
发明人 : 熊光明 , 赵明珠 , 杨天 , 于全富 , 龚建伟
申请人 : 北京理工大学
摘要 :
权利要求 :
1.一种保证无人车在三维地形上安全行驶的运动规划方法,其特征在于:包括如下步骤:
步骤一、得到车辆在地形面上的投影位姿采用三维激光点云表示地形环境,地形面S由地图坐标系M下表示的N个数据点组成,即pi为第i个数据点;为了分析在pi位置处的车辆位姿,利用主元分析法获取该处地形曲面的法向量,并将法向量作为新位姿的z轴向量 以两平面交线方向上的单位向量作为新位姿的x轴向量 所述两平面为以原位姿y轴向量 勾法向的平面,以及以新位姿z轴向量 为法向的平面;最终以三个单位轴向量 构成的旋转矩阵和pi的位置构成了车辆在地形面上的投影位姿;
步骤二、在步骤一得到的点云数据pi基础上,对前方的地面进行分析,从而判断生成的路径是否可用;
通过分析路面粗糙度来判断地形是否有典型障碍物或过大的起伏;所述的路面粗糙度与传统意义上的粗糙度不同,离散地形面S上任意一点pi处的粗糙度的求取方法为:利用车辆感知模块获取以pi为球心rplane为半径的球内的所有数据点,记为Bplane(pi),并结合Bplane(pi)中的数据点用主元分析法求出pi处的法向量ni;采用半径rplane的球体内的数据点做平面拟合,采用半径rres的球体内的数据点做粗糙度值计算,所述rplane大于rres;
利用车辆感知模块获取以pi为球心rres为半径的球内的所有数据点,记为Bres(pi);Bres(pi)内每个点到拟合平面的符号投影距离为其中pj为Bres(pi)中的数据点;
pi点处的粗糙度ρi定义为:
根据车辆尺寸定义一个最大路面粗糙度值ρmax,当地形上一点处的粗糙度值ρi>ρmax时,则认为该处的路面粗糙度值不满足通行条件,规划的路径不可经过此处;
当ρi≤ρmax时,还需分析地面形状来判断pi处地形是否能满足车辆静态稳定性要求;获得pi处车辆投影位姿后,求取相应的车辆欧拉角,为了使车辆能够在该处保持静态稳定性,需要使车辆侧倾角ψ与俯仰角θ在一定阈值范围内,即:|ψ|≤ψmax
θmin≤θ≤θmax
其中,ψmax是最大侧倾稳定角阈值,θmin、θmax分别是最小俯仰角阈值和最大俯仰角阈值;
从而保证车辆不会发生侧向移动、侧向翻转和纵向翻转;
步骤三、路径规划:生成三维参考路径,再根据参考路径生成车辆能够跟踪的最终路径;
1)、生成三维参考路径
通过构建搜索图并使用A*搜索得到连接起始点和目标点的一系列离散节点,该过程整体算法框架与传统A*算法相同,但节点扩展方法与二维平面上不同;
节点扩展方法为:先在当前节点的切平面上生成多个平面子节点,所述平面子节点以Δθ为间隔均匀地分布在父节点nparent四周;每一个平面子节点距离父节点的距离dj由这一方向上的曲面曲率决定,依据地形面曲率决定扩展距离,能够在比较平坦的地方以大步长扩展,而在地面凸起或凹陷的地方谨慎地使用小步长;地形面在任一方向上的曲率采用近似的方式计算,在地形面上求出θj方向上距父节点距离为dmax处位置的法向量,用所述法向量与父节点处的法向量夹角作为θj方向上的曲率;
得到切平面上的平面子节点后,将平面子节点投影到地形面上并利用步骤二的可通行性判断方法进行判断,将满足路面粗糙度通行条件的节点放入子节点集合中;通过欧式距离计算每一个子节点的代价值和启发值;此时生成一系列位于地形面上的、连接起始点和目标点的、位于无碰撞区域的稀疏离散节点(T0,T1,…,Tn‑1),每一个节点Ti均由一个6自由度位姿表示;
将所述稀疏离散节点构建成光滑连续的曲线;首先对节点进行平滑,对节点ni进行平滑操作的方法为:节点ni‑1、ni、ni+1构成三角形,ni‑1ni+1确定一条直线,节点ni在直线ni‑1ni+1上的投影点为E,由ni向E移动必定会使路径ni‑1 ni ni+1变短;取直线Eni的中点为点F,判断F点投影到地形上位置处是否满足路面粗糙度可通行条件,若满足,则将中间点F作为新的节点ni;若不满足,则取Fni的中点为新的F点,再次进行判断;即经过不断靠近节点ni的多次二分法,找到满足粗糙度的中心点;再对邻近的下一个节点ni+1进行同样的平滑操作;对除了两端节点之外的节点都进行一遍平滑操作,即完成了一个平滑循环周期;此时离散路径{ni}的总长会减少,经过多次平滑循环周期后,直至所有节点都无法再调整或路径总长几乎不变时,整个迭代平滑算法结束,输出平滑后的离散节点;
在离散节点基础上利用插值法生成连续的参考路径曲线;为避免出现龙格现象,采用分段函数来进行插值;为了保证曲线的曲率连续,每一段曲线要求至少二阶可导,因而选用三次参数方程表示,利用高斯消元法求解得到曲率连续的三维参考路径;
2)、根据三维参考路径生成车辆能够跟踪的最终路径为了满足车辆运动学约束,使用基本运动单元作为子节点;车辆本身位于由4个车轮所决定的平面上,因此在局部小范围内可以认为车辆在切平面上运动;以弧长为参数的车辆运动学方程为:
其中(x,y)为切平面上的位置,φ为车辆航向,′表示对弧长的导数,δ为前轮偏角,κ(s)为曲率;以曲率κ(s)作为控制量,为了增大曲线自由度,以五次弧长多项式表示曲率κ(s),生成运动基元:
2 3 4 5
κ(s)=κ0+bs+cs+ds+es+fs其中b、c、d、e、f为待求解的未知参数,κ0为初始曲率;
添加路径平滑度目标函数,采用非线性优化的方式求解未知参数;定义路径平滑度目标函数:
其中sf为运动基元长度;最小化该目标函数得到平均曲率较小的曲线;对以弧长为参数的运动学方程积分得到任意末点状态为:其中x0、y0、φ0为车辆的初始状态。结合端点状态约束条件就可构成具有等式约束的非线性优化问题,决策变量为五次多项式系数(b,c,d,e,f)和路径总长sf,对非线性优化问题进行求解得到运动基元;
将搜索图边的代价值Jedge设计为节点距离、地面粗糙度、车辆倾斜程度、转向代价四项指标的加权和;
为了减少节点扩展数量,提高搜索效率,利用参考路径提供的引导信息设计启发值;当路径搜索算法扩展到子节点ni时,先将ni投影到三维参考路径上得到投影点np,子节点ni到目标点的真实距离表示为ni到参考路径的投影距离再加上投影点np到目标点间的参考线长sref,将子节点ni到目标点的真实距离作为启发参考之一;由于参考路径光滑连续,参考路径切向信息也作为启发参考,则启发值定义为:h=wl·(||ni‑np||2+sref)+wheading·Δθ其中,wl、wheading分别是距离项和航向项的权重,Δθ是当前子节点航向和参考线上投影点处的切向的差值;最终A*算法中的代价值为启发值和真实代价值的加权组合:f=wg·g+wh·h
其中,wg和wh分别为代价值和启发值的权重,g为到达当前子节点所经过的所有Jedge之和;
基于建立的运动基元和设计的代价值扩展节点;在车辆当前节点的切平面上选取运动基元末端状态作为候选子节点,将切平面上的候选子节点投影到地形面上,对投影处既进行路面粗糙度层面上的可通行性检查,还结合车辆静态稳定性检查地面形状可通行性,当两个通行性都满足时,将候选子节点加入子节点集;当目标点被扩展后,完成路径规划;
步骤四、速度规划:初始速度曲线生成和速度曲线平滑安全约束包括:侧滑约束、地面接触约束和侧翻约束;性能约束包括:驱动力约束、平滑度、时间效率和任务约束;
首先根据安全约束生成一个初始的速度曲线Vf,所述速度曲线能够保证车辆在行驶过程中的安全性;对车辆进行动力学分析后,分别求出地面接触约束、侧滑约束和侧翻约束所决定的最大速度曲线Vtouch、Vslide和Vrollover,并取Vtouch、Vslide和Vrollover和预先设置的任务约束速度曲线Vtask中的较小值作为初始最大速度Vupper;然后利用迭代速度规划算法生成初始速度曲线,开始迭代前使用初始最大速度初始化Vf,并使用预设的初始速度v0和终点速度vf来固定Vf的端点,迭代时不会修改两个端点处的速度;当要修改第i个点处的速度曲线时,首先求得第i‑1个点处的最大加速度amax,然后再根据运动学关系由vi‑1和amax推导得到vi,再计算第i个点处的最小加速度amin,并由vi+1和amin反推vi;当修改后的速度曲线和修改前的速度曲线几乎没有变化时,则迭代算法停止并返回Vf作为初始速度曲线;
对初始速度曲线进行平滑处理,将速度曲线平滑问题建立为最优控制问题进行求解;
为了提高速度曲线的平滑度,在优化条件中限制速度曲线的加速度和加速度变化率;同时加入时间效率优化目标,达到速度曲线平滑与时间消耗之间的平衡;
所以速度曲线平滑优化问题定义为:在满足起点和终点的速度、加速度约束和安全约束的条件下,求解使车辆加速度、加速度变化率与行驶时间消耗三者的加权和最小化的速度曲线;采用直接配置点法将问题离散化,将初始速度曲线作为初值,采用非线性优化求解器IPOPT进行求解;最终得到的结果就是满足车辆行驶稳定性且较快的速度曲线。
2.如权利要求1所述的一种保证无人车在三维地形上安全行驶的运动规划方法,其特征在于:所述三维参考路径生成时,在节点扩展时,根据运用需求,保证在车辆前进方向进行节点扩展。
说明书 :
一种保证无人车在三维地形上安全行驶的运动规划方法
技术领域
背景技术
量研究资金和研究精力,无人车辆的运动规划技术研究也取得了丰硕成果。但目前针对越
野环境、非平坦路面场景尚没有成熟的运动规划解决方案,如在以越野环境为主的军用领
域,无人车辆仍然以遥控或是半自主的形式为主。越野环境相较于城市环境最大的差异在
于地形丰富多变,给运动规划带来的难度也大大增加。
也有一些运动规划方法和理论考虑了越野环境中的一些地形特性,但这些方法仍然存在考
虑不完备、难以找到解、求解效率低等缺陷。无人车辆在越野环境、非平坦路面场景中的运
动规划技术仍然是当前研究的难点和热点。
发明内容
分为四部分,地形环境表示与位姿投影方法是后续操作的基础。地形可通行性判别算法考
虑到路面粗糙度与地面形状对可通行性的影响,保证车辆静态稳定性。三维地形路径规划
包括参考路径生成和可跟踪路径生成两个步骤。速度规划包括初始速度曲线生成和速度曲
线平滑两个步骤。
主元分析法获取该处地形曲面的法向量,并将法向量作为新位姿的z轴向量 以两平面交
线方向上的单位向量作为新位姿的x轴向量 所述两平面为以原位姿y轴向量 为法向的平
面,以及以新位姿z轴向量 为法向的平面;最终以三个单位轴向量 构成的旋转矩
阵和pi的位置构成了车辆在地形面上的投影位姿;
用车辆感知模块获取以pi为球心rplane为半径的球内的所有数据点,记为Bplane(pi),并结合
Bplane(pi)中的数据点用主元分析法求出pi处的法向量ni;采用半径rplane的球体内的数据点
做平面拟合,采用半径rres的球体内的数据点做粗糙度值计算,所述rplane大于rres;
定性,需要使车辆侧倾角ψ与俯仰角θ在一定阈值范围内,即:
这一方向上的曲面曲率决定,依据地形面曲率决定扩展距离,能够在比较平坦的地方以大
步长扩展,而在地面凸起或凹陷的地方谨慎地使用小步长;地形面在任一方向上的曲率采
用近似的方式计算,在地形面上求出θj方向上距父节点距离为dmax处位置的法向量,用所述
法向量与父节点处的法向量夹角作为θj方向上的曲率;
式距离计算每一个子节点的代价值和启发值;此时生成一系列位于地形面上的、连接起始
点和目标点的、位于无碰撞区域的稀疏离散节点(T0,T1,…,Tn‑1),每一个节点Ti均由一个6
自由度位姿表示;
1ni+1上的投影点为E,由ni向E移动必定会使路径ni‑1nini+1变短;取直线Eni的中点为点F,判
断F点投影到地形上位置处是否满足路面粗糙度可通行条件,若满足,则将中间点F作为新
的节点ni;若不满足,则取Fni的中点为新的F点,再次进行判断;即经过不断靠近节点ni的多
次二分法,找到满足粗糙度的中心点;再对邻近的下一个节点ni+1进行同样的平滑操作;对
除了两端节点之外的节点都进行一遍平滑操作,即完成了一个平滑循环周期;此时离散路
径{ni}的总长会减少,经过多次平滑循环周期后,直至所有节点都无法再调整或路径总长
几乎不变时,整个迭代平滑算法结束,输出平滑后的离散节点;
选用三次参数方程表示,利用高斯消元法求解得到曲率连续的三维参考路径;
车辆运动学方程为:
(s),生成运动基元:
问题进行求解得到运动基元;
点ni到目标点的真实距离表示为ni到参考路径的投影距离再加上投影点np到目标点间的参
考线长sref,将子节点ni到目标点的真实距离作为启发参考之一;由于参考路径光滑连续,
参考路径切向信息也作为启发参考,则启发值定义为:
既进行路面粗糙度层面上的可通行性检查,还结合车辆静态稳定性检查地面形状可通行
性,当两个通行性都满足时,将候选子节点加入子节点集;当目标点被扩展后,完成路径规
划;
束所决定的最大速度曲线Vtouch、Vslide和Vrollover,并取Vtouch、Vslide和Vrollover和预先设置的任
务约束速度曲线Vtask中的较小值作为初始最大速度Vupper;然后利用迭代速度规划算法生成
初始速度曲线,开始迭代前使用初始最大速度初始化Vf,并使用预设的初始速度v0和终点速
度vf来固定Vf的端点,迭代时不会修改两个端点处的速度;当要修改第i个点处的速度曲线
时,首先求得第i‑1个点处的最大加速度amax,然后再根据运动学关系由vi‑1和amax推导得到
vi,再计算第i个点处的最小加速度amin,并由vi+1和amin反推vi;当修改后的速度曲线和修改
前的速度曲线几乎没有变化时,则迭代算法停止并返回Vf作为初始速度曲线;
时加入时间效率优化目标,达到速度曲线平滑与时间消耗之间的平衡;
的速度曲线;采用直接配置点法将问题离散化,将初始速度曲线作为初值,采用非线性优化
求解器IPOPT进行求解;最终得到的结果就是满足车辆行驶稳定性且较快的速度曲线。
地形面上车辆的静态稳定性,在路径规划中提高车辆安全性。
有更高的搜索图构建效率,且更适合三维地形路径规划。
侧翻约束、地面接触约束、驱动力约束等安全相关约束,比起平面路径的速度规划方法更能
保障车辆的行驶安全。
附图说明
具体实施方式
车辆在运动中的行驶稳定性,需要利用本发明的考虑三维地形的运动规划方法,进行合理
的运动规划,运动规划的过程如图2所示。本例中车辆属于阿克曼转向车辆。
=1,2,…,N。车辆位姿表示方法如图3所示,为了分析在pi位置处的车辆位姿,利用主元分
析法获取该处地形曲面的法向量,并将其作为新位姿的z轴向量 然后以原位姿y轴向量
为法向的平面和以新位姿z轴向量 为法向的平面二者交线方向上的单位向量作为新位姿
的x轴向量 最终以三个单位轴向量 构成的旋转矩阵和pi的位置构成了车辆在地
形面上的投影位姿。
义上的粗糙度不同,离散地形面S上任意一点pi处的粗糙度的求取方法如图4所示。利用车
辆感知模块获取以pi为球心rplane为半径的球内的所有数据点,记为Bplane(pi),并结合Bplane
(pi)中的数据点用主元分析法求出pi处的法向量ni。采用半径rplane的球体内的数据点做平
面拟合,采用半径rres的球体内的数据点做粗糙度值计算,其中rplane大于rres。
障碍物,根据车辆尺寸定义一个最大路面粗糙度值ρmax,当地形上一点处的粗糙度值ρi>ρmax
时,则认为该点处的路面粗糙度值不满足通行条件,规划的路径不可经过此处。
持静态稳定性,需要使车辆侧倾角ψ与俯仰角θ在一定阈值范围内,即:
式如图5所示,先在当前节点的切平面上生成N个平面子节点,这些平面子节点以Δθ为间隔
均匀地分布在父节点nparent四周。每一个平面子节点距离父节点的距离dj由这一方向上的
曲面曲率决定,依据地形面曲率决定扩展距离,能够在比较平坦的地方以大步长扩展,而在
地面凸起或凹陷的地方谨慎地使用小步长,比起定步长的方式具有更高的搜索图构建效
率。地形面在某一方向上的曲率采用近似的方式计算,在地形面上求出θj方向上距父节点
距离为1m处位置的法向量,用其与父节点处的法向量夹角(图5中的Δφj)作为θj方向上的
曲率。得到切平面上的子节点后,将其投影到地形面上并利用可通行性判断方法进行判断,
此处只有满足路面粗糙度通行条件的节点才会放入子节点集合中,每一个子节点的代价值
和启发值均采用欧式距离计算。实际应用时不用在整个圆周上都生成子节点,而是要根据
运用需求,如不允许倒车时,则可以根据当前航向设定一个角度范围,保证只向车前方扩展
节点。此时生成的是一系列位于地形面上的、连接起始点和目标点的、位于无碰撞区域的稀
疏离散节点(T0,T1,…,Tn‑1),每一个节点Ti均由一个6自由度位姿表示。
滑操作方式如图6所示。节点ni‑1、ni、ni+1构成三角形,首先找到待调整节点ni在边ni‑1ni+1上
的投影点E,由ni向E移动必定会使路径ni‑1nini+1变短。取直线Eni的中点为点F,判断F点投影
到地形上位置处是否满足路面粗糙度可通行条件,若满足,则将中间点F作为新的节点ni;
若不满足,则取Fni的中点为新的F点,再次进行判断。即经过不断靠近节点ni的多次二分法,
找到满足粗糙度的中心点。之后再对邻近的下一个节点ni+1进行同样的平滑操作,对除了两
端节点之外的节点都进行一遍平滑操作,即完成了一个平滑循环周期。此时离散路径{ni}
的总长会减少,经过多次平滑循环周期后,直至所有节点都无法再调整或路径总长几乎不
变时,整个迭代平滑算法结束,输出平滑后的离散节点。
导,因而选用三次参数方程表示,利用高斯消元法求解得到曲率连续的三维参考路径。
路径。
车辆运动学方程为:
(s),生成运动基元:
问题进行求解得到运动基元。图7为求解出的运动基元示例,包括了前进和后退。其中步长
‑1
为1.5m、最大曲率为0.2m 。
法得到。车辆倾斜代价Jslope则惩罚那些让车辆有倾斜现象的路径,定义为:
为代价值。w1、w2、w3、w4分别为相应指标的权重。
得到投影点np,子节点ni到目标状态的真实距离可以表示为ni到参考线的投影距离再加上
投影点np到目标点间的参考线长sref,。由于参考路径是由分段三次参数曲线表示的,找投
影点时需要先确定将会投影到哪一段曲线上Ci(t)上,然后利用
续,其切向信息也可以作为启发参考,于是启发值定义为:
位姿后,对投影处既进行路面粗糙度层面上的可通行性检查,还结合车辆静态稳定性检查
地面形状可通行性,当两个通行性都满足时,将候选子节点加入子节点集。当目标点被扩展
后,完成路径规划。
约束包括安全约束和性能约束两种。安全约束包括:侧滑约束、地面接触约束和侧翻约束。
性能约束包括:驱动力约束、平滑度、时间效率和任务约束。
向由右手系定义得到 区别于曲线的副法向量γ。车辆沿固定曲线行驶时,其速
度方向与路径切向方向α一致,向心加速度方向沿曲线主法向方向β,重力加速度方向为图9
中的z方向。车辆力平衡方程为:
表示无风时的空气阻力,Cw为与空气阻力系数、空气密度、迎风面积、车辆质量有关的常数。
等式右边的两项分别为线性加速度力和向心加速度力,κ为路径曲率。车辆坐标系下各个轴
上的力表示为
系数κβ·n<0时,最大速度限制为:
速度的临界侧翻条件:
的最大速度曲线Vtouch、Vslide和Vrollover,并取Vtouch、Vslide和Vrollover和预先设置的任务约束速
度曲线Vtask中的较小值作为初始最大速度Vupper。然后利用迭代速度规划算法生成初始速度
曲线,开始迭代前使用Vupper初始化Vf,并使用预设的初始速度v0和终点速度vf来固定Vf的端
点,迭代时不会修改两个端点处的速度。当要修改第i个点处的速度曲线时,首先求得第i‑1
个点处的最大加速度amax(由驱动力约束式4.6和侧滑约束式4.12计算得到),然后再根据运
动学关系由vi‑1和amax推导得到vi,再计算第i个点处的最小加速度amin,并由vi+1和amin反推
vi。当修改后的速度曲线和修改前的速度曲线几乎没有变化时,则迭代算法停止并返回Vf作
为初始速度曲线。
度曲线的平滑度,在优化条件中限制速度曲线的加速度和加速度变化率,强调曲线整体平
滑度会降低速度曲线的时间效率,车辆会行驶的十分缓慢,为了平衡这个问题,还得加入时
间效率优化目标。所以速度曲线平滑优化问题可以定义为:在满足起点和终点的速度、加速
度约束和安全约束的条件下,求解使车辆加速度、加速度变化率与行驶时间消耗三者的加
权和最小化的速度曲线。采用直接配置点法将问题离散化,将初始速度曲线作为初值,采用
通用的非线性优化求解器IPOPT进行求解。最终得到的结果就是满足车辆行驶稳定性且较
快的速度曲线。
和最终规划出的路线,虽然车辆起始位置正前方存在一条更短的通路,但由于该通路上存
在不符合路面粗糙度可通行条件的点,所以判断无法通过该通路,于是规划算法寻找了另
一条较长的路径,同时在路径上还避开了不满足车辆静态稳定性的地形面,保证了车辆的
安全性和稳定性。速度规划情况如图12所示,在多重约束与曲线平滑方法的作用下,得到最
下方较为平滑的优化结果,该优化结果在保证车辆安全的条件下,能够使车辆行驶更加平
稳且速度较快。可以看出,利用本发明提出的运动规划方法就能够保证在三维地形中使车
辆安全且平稳快速地到达目的位置。
围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明
的保护范围之内。