自动泊车的自动驾驶控制算法

1. 自动泊车系统

自动泊车系统(AutomatedParkingASSiSt,APA)利用车辆搭载的传感器感知车辆周边环境,扫描满足当前车辆停放的障碍物空间车位或线车位,并通过人机交互(HumanMachine Interface,HMI)获取驾驶员对目标车位的选择或自动确定目标车位,自动规划泊车路径,通过控制器向车辆执行机构发送横向及纵向运动控制指令,最终实现车辆安全、准确、高效地泊入目标车位,如图1所示。

为实现上述自动泊车功能,一般将APA系统分为车位扫描、路径规划以及决策控制三个模块,对各模块功能描述如下:

(1)车位扫描模块:利用车辆配置的传感器对障碍物边界(车、路沿等)形成的障碍物边界车位和有车位线标记的线车位进行识别和扫描,输出车位地图信息和车辆定位信息。同时按照车位类型对上述两类车位进行区分,又可分为平行车位、垂直车位及倾斜车位三种类型。

目前主流APA系统主要是通过配置的超声波雷达和摄像头传感器实现车位扫描,两种类型的APA系统对比如表1所示。

由表1可以看出,超声波雷达只能对障碍物边界进行测距,对车位线无法识别,而采用360°全景式摄像头弥补了线车位无法识别扫描的缺点,并且通过对图像信息的分析处理能提供更丰富的障碍物类型等信息。因此,在超声波雷达和摄像头融合的APA系统中,对线车位的识别率大幅增加,即车位检出率得到提高。另外,将3609全景式影像(AroundViewMonitor,AVM)与APA系统在人机交互方面进行融合设计,为用户在泊车过程中提供全景式视角,用户能通过全景式影像界面直接选择泊车的目标车位,包括空旷区域自选车位、APA系统扫描出多个可泊车位供自选等场景,提升了用户的体验感与参与感。

(2)路径规划模块:根据车位扫描模块输出的地图信息,结合车辆运动学模型,对车辆泊入目标车位的路径进行规划。

(3)决策控制模块:根据车位扫描模块提供的地图信息以及路径规划模块提供的路径信息对车辆进行运动控制,使车辆按照路径规划的轨迹进行跟踪,实现车辆安全准确泊入。决策控制模块需同时对车辆的横向运动和纵向运动进行控制。

2.APA硬件架构

目前市场上典型的APA硬件架构如图2所示,主要包括传感器、集成控制器、人机交互(HMI)及执行机构。

APA系统通常配置12个超声波雷达,其中包含4个长距离超声波雷达,实现对车身两侧障碍物距离的探测:8个短距离超声波雷达,实现对车前和车后障碍物距离的探测,如图3所示。

同时,APA系统与AVM系统共用4个高清鱼眼摄像头,实现车辆前后左右四处视角图像的采集以及360О全景式影像的获取,如图4所示。

3. APA泊车控制算法设计

3.1 APA算法功能需求分析

自动泊车系统APA开启后,利用配置的传感器(超声波雷达、360О环视摄像头)自动搜索周边环境中的可停车位,在驾驶员确认目标车位后,APA自动进行路径规划并通过决策控制模块对车辆横、纵向运动进行控制,包括方向盘转角、档位、车速等方面,控制车辆自动泊入目标车位。结合使用场景和功能控制过程,对APA算法的功能需求分析如下:

(1)系统适用车速较低(一般在5km/h以下)的工况。

(2)车辆能够实现包括平行车位、垂直车位以及倾斜车位三种类型车位泊车入库功能。

(3)泊车过程中APA系统能够通过对EPS、ESP、EMS、TCU、EPB、VCU的控制实现对车辆横、纵向运动的控制。

(4)驾驶员可以利用HMI对APA功能的开启和关闭进行控制。

(5)在整个泊车过程中,涉及用户操作部分由HMI明确提示,形成良好的人机交互。

3.2 APA控制系统接口确定

根据APA算法功能需求和硬件架构,确定APA控制系统输入/输出接口及信号如图5所示。

3.3 APA平行泊车控制算法设计

3.3.1 扫描车位校验模块

扫描车位校验模块主要对环境感知模块扫描识别后输出的车位进行校验。结合传感器输出的车位信息(B点坐标)和车身参数,以车辆泊入过程安全无碰撞为约束条件,实时计算当前车辆能够成功泊车入库的最短泊车空间距离(L)。将当前车辆实际可泊入车位尺寸进行比较,若满足可泊入条件,则将当前识别出的车位进行输出,否则继续寻找可泊车位。以平行泊车为例,泊车过程如图6所示。

车辆无碰撞轨迹连续最短泊车空间为:

式中:r为车辆后悬距离:Rmin为内侧轮最小转弯半径:d为车宽:By为待校验车位B点y坐标:l为车头到后轴距离。

经校验后的可泊车位信息经坐标转换传输给控制决策模块,一方面,可以用于AVM显示,利用HMI提示实现驾驶员对可泊车位的选择:另一方面,可用于路径规划,便于后续的算法处理和车辆运动控制。

3.3.2 泊车初始位置校验模块

泊车初始位置校验模块主要对扫描车位校验模块输出的车位进行二次校验。基于车辆当前位置和需要泊入车位的位置,以两圆相切理论为规划约束对当前车位是否可泊入进行校验,如图7所示。

R2圆弧通常设置为车辆最小转弯半径,以两圆相切和车辆参数为约束,计算出允许泊车的初始位置范围为(Px,Py)。将当前车辆位置与(Px,Py)进行比较,如在范围内,则说明当前车位满足可泊入条件,否则继续寻找可泊入车位。

3.3.3 泊车路径规划模块

在利用HMI接口实现最终泊车车位的选择后,车辆在控制决策系统的控制下逐渐停稳。基于两圆相切原理,泊车路径规划模块主要完成车辆当前位置即预备倒车起始位置,到泊车终点目标位置的局部路径规划,形成圆弧-圆弧组合形式的泊车路径,如图8所示。

3.3.4 轨迹跟踪控制模块

轨迹跟踪控制模块基于泊车路径规划模块输出的拟合泊车路径,生成车辆横向控制及纵向控制的目标值,即方向盘转角、档位、车位、加速度等输出信号,同时根据车辆实时反馈的状态信号进行修正控制,保证车辆实时准确地跟踪规划轨迹。

3.3.5 泊车状态控制模块

泊车状态控制模块的主要功能是进行泊车状态逻辑的控制,需要根据HMI、车辆与车位的相对位置关系、驾驶员的操作等信息动态调整和反馈。

泊车主要状态包括:

(1)0FF,泊车功能关闭:

(2)Standby,泊车功能开启准备:

(3)ParkingSpaceSearc一,寻找车位:

(4)ParkingSpacehppearA,车位有效:

(5)hStuParkinghAAiAt,辅助泊车:

(o)ParkingFiniA一,泊车完成:

(7)Fail,泊车失败。

3.3.6 HMI交互显示模块

HMI交互显示模块的功能是根据hPh的运行状态,与驾驶员进行交互,包括车位扫描结果的显示、泊入目标车位的选择等。

4.结语

本文结合主流的自动泊车硬件平台,对自动泊车控制系统进行了设计。基于车辆配置确定控制算法接口,结合车辆实际泊车过程确定控制算法流程,环境感知模块利用超声波雷达和摄像头传感器进行车位扫描,路径规划模块主要采用圆弧-圆弧方式进行局部路径规划,控制决策模块根据规划路径进行跟踪和执行器控制。整个控制算法设计合理有效,为自动驾驶研究奠定了一定的基础。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/60038.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

windows环境搭建ELK

目录 资源下载(8.9.1) ES安装、注册、使用 Kibana安装、注册、使用 Logstash安装、注册、使用 Filebeat安装、使用(如果只有一个数据流,则不需要使用filebeat,直接上logstash即可) 资源下载&#xff0…

arcmap 在oracle删除表重新创建提示表名存在解决放啊

sde表创建是有注册或者是关联关系存在的 按照以下步骤删除表的数据 select t.* from sde.TABLE_REGISTRY t where table_name like IRR%; DELETE from sde.TABLE_REGISTRY where table_nameIRRIGATION_TYPE; select t.* from sde.LAYERS t where table_name like IRR%; DELET…

WebSocket--技术文档--架构体系--《WebSocket实现原理以及关键组件》

WebSocket产生背景 简单的说,WebSocket协议之前,双工通信是通过多个http链接来实现,这导致了效率低下。WebSocket解决了这个问题。下面是标准RFC6455中的产生背景概述。 长久以来, 创建实现客户端和用户端之间双工通讯的web app都会造成HTT…

配置开启Hive远程连接

配置开启Hive远程连接 Hive远程连接默认方式远程连接Hive自定义身份验证类远程连接Hive权限问题额外说明 Hive远程连接 要配置Hive远程连接,首先确保HiveServer2已启动并监听指定的端口 hive/bin/hiveserver2检查 HiveServer2是否正在运行 # lsof -i:10000 COMMA…

docker 搭建rknn转换环境

文章目录 下载rknn搭建docker 环境进入镜像并挂载运行代码 下载rknn https://github.com/rockchip-linux/rknn-toolkit2 搭建docker 环境 进入到docker 的文件目录下 docker build -t run:v3 . -f Dockerfile_ubuntu_18_04_for_cp36 进入镜像并挂载 docker run -it -v /ho…

详解 ElasticSearch Kibana 配置部署

默认安装部署所在机器允许外网 SSH工具 Putty 链接:https://pan.baidu.com/s/1b6gumtsjL_L64rEsOdhd4A 提取码:lxs9 Winscp 链接:https://pan.baidu.com/s/1tD8_2knvv0EJ5OYvXP6VTg 提取码:lxs9 WinSCP安装直接下一步到完成…

elementUi中的el-table表格的内容根据后端返回的数据用不同的颜色展示

效果图如下&#xff1a; 首先 首先&#xff1a;需要在表格行加入 <template slot-scope"{ row }"> </template>标签 <el-table-column prop"usable" align"center" label"状态" width"180" ><templ…

LeetCode——最大子数组和(中等)

题目 给你一个整数数组 nums &#xff0c;请你找出一个具有最大和的连续子数组&#xff08;子数组最少包含一个元素&#xff09;&#xff0c;返回其最大和。 子数组 是数组中的一个连续部分。 示例 1&#xff1a; 输入&#xff1a;nums [-2,1,-3,4,-1,2,1,-5,4] 输出&#x…

ELK安装、部署、调试 (二) ES的安装部署

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎&#xff0c;基于RESTful web接口操作ES&#xff0c;也可以利用Java API。Elasticsearch是用Java开发的&#xff0c;并作为Apache许可条款下的开放源码发布&#xff0c;是当前流行的企业…

C. Divisor Chain Harbour.Space Scholarship Contest 2023-2024 (Div. 1 + Div. 2)

Problem - C - Codeforces 题目大意&#xff1a;给出一个数k&#xff0c;每次操作可以选择当前k的一个因数x&#xff0c;并令kk-x&#xff0c;要求令k变成1&#xff0c;且相同的x 出现次数不超过2&#xff0c;最大操作次数1000 2<k<1e9 思路&#xff1a;因为每个数的l…

Linux 桌面上的 Firefox 面临着大问题

导读毫无疑问&#xff0c;无论是在桌面、笔记本电脑还是移动设备上&#xff0c;浏览器都是任何操作系统中最重要的应用之一。 如果没有一个功能强大、快速且稳定的浏览器&#xff0c;操作系统的实用性将大幅度降低&#xff0c;以至于我相当确定&#xff0c;如果一个操作系统没有…

十年JAVA搬砖路——软件工程概述

软件工程是一门关注软件开发过程的学科&#xff0c;它涉及到软件的设计、开发、测试、部署和维护等方面。软件工程的目标是通过系统化的方法和工具&#xff0c;以确保软件项目能够按时、按预算和按要求完成。 **• 软件工程的7个基本概念&#xff1a; ** **1. 软件生命周期&…

在阿里云请求发短信接口去掉证书验证

composer require alibabacloud/dysmsapi-20170525 2.0.23 cURL error 60: SSL certificate problem: unable to get local issuer certificate (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://dysmsapi.aliyuncs.com/?PhoneNumbers 两种方法 第一…

Mysql的page,索引,Explain Type等基本常识

Mysql的基本问题 Mysql 为什么建议使用自增id&#xff1f; 因为id&#xff08;主键&#xff09;是自增的话&#xff0c;那么在有序的保存用户数据到页中的时候&#xff0c;可以天然的保存&#xff0c;并且是在聚集索引&#xff08;id&#xff09;中的叶子节点可以很好的减少插…

MATLAB算法实战应用案例精讲-【概念篇】构建数据指标方法

目录 前言 几个相关概念 算法原理 什么是数据指标体系?

WebGL非矩阵变换

目录 平移 示例代码&#xff1a; 齐次坐标矢量的最后一个分量w 旋转 p的坐标&#xff0c;可得等式 R1&#xff1a; 使用r、α、β来表示点p的坐标&#xff0c;可得等式 R2&#xff1a; 利用三角函数两角和公式&#xff0c;可得等式 R3&#xff1a; 最后&#xff0c;将…

下岗吧,Excel

ChatGPT的诞生使Excel公式变得过时。通过使用 ChatGPT 的代码解释器你可以做到&#xff1a; 分析数据创建图表 这就像用自然语言与电子表格交谈一样。我将向大家展示如何使用 ChatGPT 执行此操作并将结果导出为Excel格式&#xff1a; 作为示例&#xff0c;我将分析并创建美国…

阿里云效和阿里在线idea使用

阿里云效 https://flow.aliyun.com/all?page1 阿里在线idea&#xff1a;https://ide.aliyun.com/ 在云效中创建的项目可以在在线idea 打开 运行中的项目 设置ssh 设置以后可以使用云效率的代码构建来构建代码 设置 添加自有云或者体验5h

元素居中的方法总结

目录 垂直居中 行内元素垂直居中 单行文本垂直居中 1.line-height: 200px; 多行文本垂直居中 1.tablevertical-align:middle 块级元素垂直居中 1.display: flex;align-items: center; 2.使用position top margin-top 水平居中 行内元素水平居中 1.text-align:cente…

uniapp 滚动到指定元素的位置(锚点)

需求&#xff1a;在页面中&#xff0c;不管位于何处&#xff0c;点击按钮页面滚动到对应的标题位置。 最简单有效的方式&#xff08;直接复制改数据就行&#xff09; 使用 scroll-view 标签的属性&#xff1a;scroll-top(距离值 num) 或 scroll-into-view(子元素的id,不能以…