不连续曲线 highcharts_无人车运动规划中常用的方法:多项式曲线
在无人车的运动规划(Motion Planning)过程中,比如在速度规划和路径规划时经常会遇到这样的问题:
- 速度规划:已知当前的速度信息,以及目标的速度信息,需要生成一条平滑的速度曲线,从当前速度到目标速度,同时这个过程中应尽可能保持平顺,避免急加速、急减速;
- 路径规划:已知当前的位姿信息,以及目标的位姿信息,需要生成一条平滑的路径,连接当前位姿到目标位姿,同时这个过程中应尽可能保持平顺,避免在路径跟踪时方向盘打得很猛。
上述两个问题可以归结为:在二维空间中,给定起点和终点状态,计算一条连接两点的平滑曲线。
这里以速度规划为例,介绍用不同的多项式曲线来生成平滑的速度曲线。一般无人车的纵向控制量为加速度,因此,在生成速度曲线的过程中,还需要关注加速度曲线以及加加速度(即加速度的导数)的曲线变化。
如下图所示,在S-V图上,若已知起点和终点的速度状态,如何计算出一条平滑的速度曲线?在不考虑避障的情况,可以用直线连接,也可以用一定的曲线来连接。
速度状态包括:
- s – distance,距离
- v – velocity,速度
- a – acceleration,加速度
- j – jerk,加加速度
根据已知的速度状态信息,可分别采用不同的多项式曲线。
1、一次多项式曲线
在S-V图上,若已知起点和终点的距离、速度,可采用一次多项式曲线。
采用一次多项式曲线拟合,对应的S-vel,S-acc,S-jerk分别如下图所示,可以看到加速度在初始位置是突变的。在实际的车辆控制过程中,一是车辆实际的加速度不可能突变,必然造成实际的车辆加速度跟不上规划的加速度;二是这个过程加速度突变,制动会让车上的人很不爽。
2、三次多项式曲线
在S-V图上,若已知起点和终点的距离、速度、加速度,则可采用三次多项式曲线。
采用三次多项式曲线拟合,对应的S-vel,S-acc,S-jerk分别如下图所示。可以看到加速度是连续变化的,但加加速度在初始位置是突变的。同样在实际的车辆控制过程中,实际的车辆加速度跟不上规划的加速度;二是这个过程加加速度突变,也会让车上的人不爽。
3、五次多项式曲线
在S-V图上,若已知起点和终点的距离、速度、加速度、加加速度,则可采用五次多项式曲线。
采用五次多项式曲线拟合,对应的S-vel,S-acc,S-jerk分别如下图所示。可以看到加速度、加加速度都是连续变化的。因此采用五次多项式曲线来进行拟合,可以使纵向的加速度控制平顺变化。
上面展示用不同多项式来生成速度平滑曲线的方法,在路径规划中同理。
一般在路径规划时采用Frenet坐标系,即使用道路的中心线作为参考线,使用参考线的 切线向量 和 法线向量 建立坐标系。如下图所示,这个S-D坐标系即为Frenet坐标系(有关Frenet坐标系的介绍可见上一篇文章)。
可用不同多项式来生成S-D换道轨迹,在不考虑避障的情况下,通常使横向的加加速度最小化来提高换道时的平顺性。
不连续曲线 highcharts_无人车运动规划中常用的方法:多项式曲线相关推荐
- 无人驾驶汽车系统入门——基于Frenet优化轨迹的无人车动作规划方法
作者简介:申泽邦(Adam Shan),兰州大学在读硕士研究生,主攻无人驾驶,深度学习: 动作规划动作在无人车规划模块的最底层,它负责根据当前配置和目标配置生成一序列的动作.本文介绍一种基于Frene ...
- 无人驾驶汽车系统入门(十九)——分层有限状态机和无人车行为规划
分层有限状态机和无人车行为规划 行为规划又称为行为决策,是无人车规划模块三层(任务,行为,动作)的中间层,本文将介绍行为规划的基本概念,设计核心,同时介绍一种具体的无人车行为规划方法--分层有限状态机 ...
- 无人驾驶汽车系统入门(二十一)——基于Frenet优化轨迹的无人车动作规划方法
动作规划动作在无人车规划模块的最底层,它负责根据当前配置和目标配置生成一序列的动作,我们前面讨论的三次样条插值实际上只是一个简单的路径,而非我们最终能够执行的轨迹,本文介绍一种基于Frenet坐标系的 ...
- 【IEEE2014】EET:基于采样的机器人运动规划中的平衡勘探与开发
EET:基于采样的机器人运动规划中的平衡勘探与开发 摘要: 本文提出了一种用于运动规划的探索/利用树(EET)算法.EET规划者故意用概率的完整性来换取计算效率.这种权衡使EET规划器能够比最先进的基 ...
- 第6章 - 多无人车系统的协同控制 --> 无人车运动原理
第5章 - 二阶多智能体系统的协同控制 --> 连续时间系统编队控制[程序代码] 回到目录 第6章 - 多无人车系统的协同控制 --> 无人车模型分析 文章目录 6.1 无人车运动原理 6 ...
- 核心案例|中原工学院无人机无人车协同规划与智能控制验证平台
项目名称:无人机无人车协同规划与智能控制验证平台 场 地:室内≥6m*6m*3m 关 键 词:多无人机.无人车协同规划.四旋翼无人机室内避障算法验证 核心案例|中原工学院无人机无人车协同 ...
- 数学建模中常用的方法
数学建模中常用的方法:类比法.二分法.差分法.变分法.图论法.层次分析法.数据拟合法.回归分析法.数学规划(线性规划,非线性规划,整数规划,动态规划,目标规划).机理分析.排队方法.对策方法.决策方法 ...
- iOS开发中常用的方法
iOS开发中常用的方法 系统弹窗: 过期方法: UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"确认报价" ...
- Cookie | Cookie的理论基础、Cookie中常用的方法
目录 一:Cookie的理论基础 二:Cookie中常用的方法 一:Cookie的理论基础 (1)cookie怎么生成? ①session的实现原理中,每一个session对象都会关联一个sessio ...
最新文章
- YARN-2.7.3-源码分析系列2:启动脚本原理的分析
- latex参考文献Bib Tex的使用
- 渗透Xen hypervisor
- python-configparser模块
- 2016年3月1日Android实习笔记
- twitter数据集_大数据周报-201925
- padding和卷积的区别_TensorFlow笔记1——20.CNN卷积神经网络padding两种模式SAME和VALID...
- java防止上传恶意文件_从补丁分析到在野利用:揭秘CVE20201464 Windows文件签名验证绕过漏洞疑云...
- js来读写cookie操作
- windbg 修改内存和寄存器指令
- 【Elasticsearch】Elasticsearch如何物理删除给定期限的历史数据?
- python logging使用_[译]Python Logging 使用指南
- 【java笔记】Iterator迭代器 增强for
- dm7达梦7Linux安装包,【达梦】DM7安装部署 2 安装达梦7数据库软件
- 字节跳动实习生转正工资_【有效】字节跳动(头条/抖音)日常实习生内推
- android获取app使用时间,android如何获取系统里各个应用的使用时间
- 《统计学习方法》学习笔记(4)--k近邻法及常用的距离(or 相似度)度量
- 3GPP TS 23501-g51 中英文对照 | 4.2.3 Non-roaming reference architecture
- Docker Volume原理及使用
- Selenium 远程调用 Google Chrome 谷歌浏览器
热门文章
- python pexpect timeout_Python 的 pexpect 模块的问题
- python期末设计作品_期末作品检查
- 别小看这不起眼的电阻,里面有很多学问!
- 五一好礼70份免费送:示波器、开发板、焊台等!
- 关于CPU的12个硬核干货!
- 晶振,数字电路的心脏~
- 电子工程师,学会阅读Datasheet很重要!
- python中的doc_在windows 10上读取python中的.doc文件
- c语言将一个已知头结点的单链表逆序_C语言实现单链表逆序与逆序输出实例
- java中单例设计模式登记式单例类_java23种设计模式-创建型模式之单例模式