自动驾驶代客泊车AVP巡航规划详细设计

这篇具有很好参考价值的文章主要介绍了自动驾驶代客泊车AVP巡航规划详细设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目 录

巡航规划详细设计... 1

修改记录... 2

目 录... 3

1 背景... 5

2 系统环境... 6

2.1 巡航规划与其它模块联系... 6

2.2 巡航规划接口说明... 6

3 规划模块设计... 9

3.1 巡航规划架构图... 9

3.2 预处理... 10

3.3 Planner. 10

3.3.1 Geometry planner. 10

3.3.1.1 环境信息更新... 10

3.3.1.2 路径规划... 14

3.3.1.3 速度规划... 20

3.3.2 其他规划器... 23

3.4 后处理... 23

4 要点及风险评估... 23

5 设计评审意见... 24

6 参考资料... 24

  1. 背景

       随着产品的升级迭代,对算法的泛化能力和指标都提出了新的需求。一方面后续需要低成本迁移不同停车场,可能面临更多的人流车流、更多的场景(如双车道、不同弯道、道路情况、不同车库层数等),因此对当前模块的工程通用性和算法的泛化能力都有更高的需求;另一方面,基于降成本以及后续性能及产品效果提升的需求,对当前算法的资源占用、效果指标等也也会有更的要求。

       当前算法模块主要有以下问题。首先是算法架构的可扩展性存在较大的局限。当前算法主要基于matlab/simulink平台开发,没有通用的工程框架,添加新算法或者更新算法非常困难,而且适配其他模块及工具繁琐且工作量巨大、无法做深层次性能优化。其次是当前框架未能较好利用现有开源生态及借鉴别人的工作。Matlab是商业软件,其生态尤其自动驾驶方面的生态较apollo等开源生态有明显的差距,而且部分重要的组件(如图形计算等)无法进行代码生成,导致当前开发经常需要重复造轮子,工作处于一种闭门造车的状态,效率低下。最后是当前算法通用性不够强。当前算法对场景和逻辑等抽象不够,很多场景基于经验公式开发,对于特定的场景使用特定的策略,后续泛化困难。

       当前设计的主要目标是借鉴apollo开源框架进行重构。一方面变更开发语言,使模块能够进行性能的深度调优,并有效地借鉴开源的成果提高效率;另一方面构建统一的工程框架,提升模块的工程通用性,以支撑后续的开发和算法升级;最后,通过将接口与算法与主流平台对齐,后续算法可以逐步更换以提高泛化能力和效果指标。

  1. 系统环境
    1. 巡航规划与其它模块联系

巡航规划主要根据决策状态机、处理过的引导线、边界信息等及底盘的反馈信号,综合对不同场景(如直行、转弯、道闸口等)的处理、对直行及绕障等模式的处理、对路径和速度的生成和优化,最终输出一条轨迹参考线发给控制,进而决定整车运动路径及速度。

    1. 巡航规划接口说明

根据规划的功能,其主要的输入信息应包含如下:

    • 地图及定位信息(目前版本算法主要放在边界信息接口内)
    • 感知障碍物信息(目前版本算法主要放在边界信息接口内)
    • 全局导航信息(目前版本算法主要放到引导线信息接口内)
    • 车身反馈信息(包含速度、加速度、档位等)
    • 预测信息(后续能力提升及泛化需要)
    • 交通规则信息(后续场景升级可能需要)

同时,规划的输出信息主要如下:

    • 规划轨迹(包含路径、速度两大类及衍生信息如曲率、加速度等信息)
    • 本模块的状态信息(主要是异常信息等,后续做产品化安全需要)

下面针对当前算法的接口进行具体说明:

       A)输入接口

            1、DEC  //决策信息(包含状态机、引导线、边界信息)

2、SMC   //车身反馈信息

2、PTP_trajectory_detail //规划的反馈信息(实际未使用)

3、PTP_out    //旧的规划输出接口(实际未使用)

4、PTP_trajectory_head   //规划的车头轨迹(实际未使用)

5、PTP_Inner_Monitor_out        //规划内部信息监控(实际未使用)

  1. 规划模块设计
    1. 巡航规划架构图

巡航规划模块架构图

如图所示,巡航规划模块的整体架构包含三个部分,预处理、规划器(planner)、后处理,其中规划器为主体模块。规划器为各种具体的规划算法的总称。当前的算法主要基于曲率几何推导,因此把其命名为geometry planner。其余为业内主流的一些规划算法,包括lattice、EM、openspace、RRT、reinforce等。下面针对每个模块做概要说明:

预处理:对planner所需的数据进行处理,主要对输入的数据降噪、去毛刺、转换为模块所需要的数据格式及单位转换等。

       Planner:根据地图定位信息、障碍物信息、决策状态机、车身反馈、导航信息等,进行综合考虑,同时结合如平稳、高效、资源占用少等指标,计算出一条优化的轨迹。考虑到模块的拓展性,会在当前算法的基础上根据场景的需求不断增加新算法,比如lattice、EM、openspace、RRT等,补充其能力。目前主要的算法为Geometry planner,主要原理如下:1、通过以当前位置,根据引导线跟随、绕行各障碍物的曲率结合人工驾驶经验,算出下一时刻的行驶曲率和速度。2、再根据下一时刻的曲率、速度等推导下一时刻的位置,并在此基础上重复计算驾驶行为。3、通过上述两个步骤的反复迭代,最终生成一条包含40个点的整体轨迹,并输出给下游。

       后处理:对当前模块的状态进行监控、对算法生成的轨迹等进行评价,同时支持手动调式模式,可以手动生成指定的轨迹输出给下游进行调试。

    1. 预处理(由框架处理)

滤波:针对底盘反馈的速度信号进行2阶滤波及限幅处理,使其降频到3hz左右(经验值),幅度限制在正负70以内,以免出现异常值。

信号转换:将方向盘转角转换为弧度表示,同时通过车速和方向盘转速双重验证,检测输入的方向盘信号是否有效。

    1. Planner
      1. Geometry planner
        1. 环境信息更新

主要包含如下功能:

1、根据之前计算出来的控制量,更新下一时刻的车辆位置信息,供计算后续控制量使用。

2、计算目标线与主车的相对位置,相对角度,供后续计算引导线跟随使用。

3、根据算法估计的状态,更新每一个轨迹点上边界线,障碍物边界等与车的相对位置,供后续计算避障使用。

          1. 车辆位置推算

(xt,yt)

(xt+1,yt+1)

x

y

计算在每个循环推算的时刻,车身的坐标及yaw角。是一种基于运动学的理想位姿迭代。计算关系如下式:

                         xt+1=xt+vx*dt*cosyawrate*dt

                         θt+1=θt+yawrate*dt

其中:vx

为车辆x方向速度,vy

为车辆y方向速度,dt为时间间隔,yawrate为角速度。

        在实际计算过程中,考虑了感知的延时和系统的延时对车辆姿态的影响,因此分别对两种延时进行估计,根据估计参数进行系统姿态延时估算,并将其作为当前初始值。

        另外,在车道线跟随的时候,有的时候可能并不需要车后轴中心在中心线上,尤其是转弯的时候,因此添加对原点位置的平移,使其更符合人的驾驶习惯。

        通过每个时刻计算得到的纵向速度、横向速度、角速度,由上式计算下一个时刻的位置。通过反复计算40次,得到40个时刻的车辆位置,输出到下游。文章来源地址https://www.toymoban.com/news/detail-768330.html

到了这里,关于自动驾驶代客泊车AVP巡航规划详细设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 自动驾驶学习笔记(二十二)——自动泊车算法

    #Apollo开发者# 学习课程的传送门如下,当您也准备学习自动驾驶时,可以和我一同前往:  《自动驾驶新人之旅》免费课程— 传送门 《Apollo开放平台9.0专项技术公开课》免费报名—传送门 文章目录 前言 感知算法 定位算法 规划算法 控制算法 算法调试 总结         见《

    2024年02月03日
    浏览(43)
  • 自动驾驶记忆泊车HAVP功能规范

    1.     功能描述... 4 1.1       信号需求.... 5 1.1.1        输入信号.... 5 1.1.2        输出信号.... 16 1.2       状态机.... 32 1.2.1        状态描述.... 32 1.2.2        状态迁移条件.... 32 1.3       功能流程.... 34 1.3.1        功能逻辑.... 34 1.3.2    HUT交互逻

    2024年02月21日
    浏览(36)
  • 代客泊车对HUT功能交互规范

    目录 1.       版本记录... 7 2.       文档范围和控制... 8 2.1         目的/范围... 8 2.2         文档冲突... 8 2.3         文档授权... 8 2.4         文档更改控制... 8 3.       系统组成... 9 3.1     IPAS系统(环视和超声波雷达)... 9 3.2         融合泊车

    2024年02月14日
    浏览(29)
  • 自动驾驶遥控泊车RPA系统功能规范

    目    录 1.     版本履历... 4 2.     文档使用范围... 4 3.     术语缩写... 4 4.     系统概述... 5 4.1 系统功能说明... 5 4.2 泊车状态说明... 6 5.     产品基本参数... 6 5.1控制器基本参数... 6 5.2全景摄像头基本参数... 7 5.3 超声波传感器基本参数... 7 6.     融合泊车功能

    2024年02月16日
    浏览(32)
  • 代客泊车的环视图鱼眼BEV感知的数据集、基线方法和克服畸变的多任务框架

    点云PCL免费知识星球,点云论文速读。 文章:Surround-view Fisheye BEV-Perception for Valet Parking: Dataset, Baseline and Distortion insensitive Multi-task Framework 作者:Zizhang Wu1 Yuanzhu Gan1 Xianzhi Li2∗ Yunzhe Wu1 Xiaoquan Wang1 Tianhao Xu3 Fan Wang1 编辑:点云PCL 欢迎各位加入免费知识星球,获取PDF论文,欢迎

    2024年02月12日
    浏览(32)
  • 基于智能优化算法实现自动泊车的路径动态规划(Matlab代码实现)

    目录 💥1 概述 📚2 运行结果 🎉3 参考文献 👨‍💻4 Matlab代码 作为一种方便、快捷的交通工具,汽车已成为人们生活和工作的重要组成部分。随着汽车数量的逐年增加,有限的城市空间显得日趋拥挤,车辆平均分配到的停放空间也日趋缩小,车辆泊车入位困难问题在人们生

    2024年02月07日
    浏览(35)
  • 自动驾驶路径规划——路径规划入门须知

    目录 前言  1.无人驾驶关键技术  2.路径规划基本概念与分类 2.1 路径规划基本概念 2.1.1 路径规划需要解决的问题  2.1.2 路径规划——现在的研究  2.2路径规划的分类 2.3路径规划的流程 3.行为决策  声明        这个学期学校开设了相应的课程,同时也在学习古月居机器人学

    2023年04月08日
    浏览(33)
  • 自动驾驶路径规划——轨迹规划(详解插值法)

    目录 前言 1. 轨迹规划 1.1 轨迹规划包括以下几个问题: 2. 三次多项式插值 ​​​​​​3.  过路径点的三次多项式插值 4. 用抛物线过渡的线性插值 过路径点的用抛物线过渡的线性插值 5. 高阶多项式插值 声明        这个学期学校开设了相应的课程,同时也在学习古月居

    2024年01月22日
    浏览(34)
  • 自动驾驶路径规划——Dijkstra算法

    这个学期学校开设了相应的课程,同时也在学习古月居机器人学系列的《基于栅格地图的机器人路径规划指南》,为了巩固知识,方便自己的学习与整理,遂以学习笔记的形式记录。      深度优先搜索( Depth First Search , DFS ) :首先从某个顶点出发,依次从它的各个未被

    2024年01月22日
    浏览(30)
  • 自动驾驶中的决策规划

    参考:  【干货篇】轻舟智航:自动驾驶中的决策规划技术(附视频回放 +PPT 下载) - AIQ 如图所示,  各模块介绍 定位模块主要负责解答的问题是“车现在在哪里”,是在道路上还是在路口,是在高架桥上还是在停车场里。 感知模块则负责解答“车周围有什么”这个问题。

    2024年02月07日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包