当前位置: 首页 > news >正文

自动驾驶HWP的功能定义

一、功能定义

高速路自动驾驶功能HWP是指在一般畅通高速公路或城市快速路上驾驶员可以放开双手双脚,同时注意力可在较长时间内从驾驶环境中转移,做一些诸如看手机、接电话、看风景等活动,该系统最低工作速度为60kph。

如上两种不同环境和速度段下的自动驾驶功能均需要在超出其限定ODD范围外的场景、系统本身运行故障出现降级、其他车辆可能出现明显故障时对驾驶员进行报警,此时驾驶员在系统所能超控整车的最大时间内做出反应并接管车辆。故此过程中,驾驶员的所有车内表现都要求驾驶员能够在足够的时间内具备及时的接管能力。故对于有限自动驾驶而言,不能允许驾驶员做一些反应时间更长的举动,如中度、重度疲劳或离开驾驶位。

二、HWP相应的主要的功能状态包含如下:

1、待机Passive:

初始化过程,包括在TJP/HWP未激活时,检查TJP/HWP激活条件,确保在ODD范围外的任何条件均无法激活TJP/HWP系统。当检查到TJP/HWP系统激活条件都满足时,通过视觉或听觉的方式提醒驾驶员系统此时可激活。当检查到激活条件有不满足情况时,系统会根据其不满足条件的部分自动筛选并排序,通过仪表或声音提示驾驶员不可激活的原因。由于自动驾驶功能需要搭载高精地图具备导航功能,当系统接收到导航地图发出的前方环境信息及目的地信息,可通过主动推送的方式提醒驾驶员在某一段环境较好的路段打开TJP/HWP功能进行自动驾驶体验。当然,用户也可以手动通过车机通过个性化设置选择关闭TJP/HWP系统。TJP/HWP系统是凌驾于L2级系统待机策略之上的,故两者的待机条件应该以L2级为基础进行设置,区分横向和纵向进行可待机激活状态;

1)满足TJA/ICA激活条件:

  • 所有传感器无故障;
  • 执行器无故障且支持的ADAS附加功能可用(如ESP的VAF功能可用、EPS的转向状态可用);
  • 车辆信息输入正常(如轮速、转角、横摆角等信息);
  • 驾驶员驾驶状态正常(如安全带已系上、车门已关好、引擎盖已关好、档位已挂到D/S档);

2)满足TJP/HWP单独要求激活条件:

  • 检测到高精度地图输入的车辆道路环境处于ODD范围内;
  • 检测到驾驶员激活功能时状态不处于重度疲劳或注意力严重分散状态;
  • 检测到主辅控制器均无故障,且状态正常;

说明:① 对于TJP/HWP单独要求的激活条件而言,其中,检测车辆处于ODD范围内,要求系统搭载较高精度和准确度的高精度地图,要求高精度地图可以实现车道级别的定位。

② 以上环境感知是功能激活的重点项目,对于高精度地图定位感知的环境信息需要融合激光雷达信息进行相应的点云数据重建,以便更为精准的对环境和车道信息均进行探测。

③ 对于自动驾驶控制而言,对于驾驶员接管能力需要提出相应要求,未激活前已经检测到驾驶员重度疲劳或长时间注意力不集中时,应禁止驾驶员激活自动驾驶,当然如果是激活之后才进入重度疲劳或分散时,可以适当缩短报接管的时间。④ 对于自动驾驶而言,要求当控制器故障时,如果已经激活,可以启用备用控制器降级后进行驾驶控制,但是如果在激活之前控制器故障则不能进行激活,以保证安全。

2、激活Active:

当满足如上提出的所有可激活待机条件后,驾驶员通过主动激活或推送的方式进入正常使用TJP/HWP功能时,系统便能实现正常的自动驾驶,执行整个动态驾驶任务,整个控制逻辑中包括如下环境感知、行为决策、横纵向运动控制、执行反馈调节、显示报警等。

说明:1)HWP主要用于高速自动驾驶,TJP主要用于中低速自动驾驶,两者在纵向控制上主要是通过速度进行区分;2)HWP主要用于高速情况下自动驾驶,当TJP控制的自动驾驶由于如下原因导致速度提升至其作用范围外时,TJP需要切换为HWP自动驾驶控制;

工况说明:

  • 本车跟随前车进行TJP跟车控制,本车设置车速(该车速大于TJP运行车速)大于前车车速,前车加速离开后,本车加速到设置车速,此过程中会由TJP直接切换为HWP进行自动驾驶控制;
  • 本车跟随前车进行TJP定速巡航控制,驾驶员通过按键或踩踏油门踏板设置本车车速增加到大于TJP运行车速,本车加速到设置车速,此过程中会由TJP直接切换为HWP进行自动驾驶控制;

工况说明:

  • 本车跟随前车进行HWP定速巡航控制,驾驶员设置本车车速增加到大于前车车速,前车减速制动,本车跟随前车减速制动后其速度小于HWP运行速度范围,此过程中会由HWP直接切换为TJP进行自动驾驶控制;
  • 本车跟随前车进行TJP定速巡航控制,驾驶员通过按键设置本车车速减速到小于HWP运行车速,本车减速到设置车速,此过程中会由HWP直接切换为TJP进行自动驾驶控制;

注意当驾驶员通过踩制动踏板引起的速度变化会直接退出TJP和HWP,整个自动驾驶将会退出;3)对于横向功能而言,由于执行转角或扭矩控制时,需要考虑到由功能安全因素引起的转角或转角速率限制是随速变化的,在某些低速情况下,转角或转角速度会比高速时范围更大。

4)对于安全避撞功能而言,TJP系统为了完成避撞后,如果其减速过程比较紧急使得减速度值超过AEB触发的阈值条件(一般AEB-P部分制动为-3.5m/s2,AEB-M全力制动为-6至-8m/s2),则跟车停止后TJP控制拉起手刹保持车辆不动后直接退出纵向控制,如果该减速度值小于AEB阈值触发条件,则TJP跟车停止后可以跟随前车起步。5)安全避撞功能包含正向避撞和侧向避撞功能两种,正向避撞触发应充分考虑AEB碰撞功能触发条件,侧向避撞应该充分考虑ELK紧急纠偏条件,当以上两种功能触发时,则TJP不再发送制动或转向指令给相关联执行器(此时可认为其处于临时退出状态),以上两种安全性功能执行完毕后,TJP重新介入并进行驾驶控制;

3、驾驶员超越:

这里的驾驶员超越包含了横向超越和纵向超越,其原理均和原来L2级以下超越逻辑保持一致。

纵向超越:当驾驶员踩踏油门踏板时,若该踏板开度达到某个阈值(一般为2%-5%)时,则认为本车满足纵向超越,此时纵向完全由驾驶员控制,本车将被加速到一定速度(该速度小于系统最大运行范围130kph)。当驾驶员松开踏板导致该踏板开度小于某阈值时,则退出纵向控制,TJP/HWP恢复纵向系统控制。

横向超越:当驾驶员转动方向盘时,若该方向盘扭矩大于某阈值(一般为1.5-2Nm)时,则认为本车满足横向超越,此时系统处于临时退出状态,当在一定时间内驾驶员松开方向盘后,系统重新实现对整车的控制,若驾驶员长时间控制方向盘进行转向时,整个横向控制就会不可逆的退出。

4、降级控制Functional Degradation Control:

系统降级是自动驾驶过程中经常会出现的一类可预期故障,在系统工程设计初期就应该对各类系统故障或失效可能引起的原因及后果进行分析,以便在出现类似问题后,启动相关逻辑进行驾驶风险最小化规避。如在激活后,如果TJP/HWP系统检测到本车超出ODD范围,或者系统出现相关故障时,该两系统需要在自

身最大能力范围内对车辆进行继续控制,以便为驾驶员腾出反应时间及接管时间。如果驾驶员无反应或接管意图不够明确,则系统需要进行控制升级,如通过座椅震动或方向盘震动提示驾驶员立即采取强有力的接管措施。对于TJP和HWP而言,其降级控制策略有所不同,对于TJP而言,该系统功能工作速度段是处于60kph以下的,故TJP系统降级时,可启动安全停车逻辑将本车进行靠边刹停,若此时系统处于高速段的自动驾驶控制HWP中,则在系统降级时,HWP控制本车进行减速,并且尽最大努力将车安全的换道后靠边行驶,此换道过程可以通过接受高精度地图进行车道级定位到的应急车道区域,控制本车换道至应急车道或专用停车道。

三、传感器架构定义

自动驾驶设计过程必须要求具备丰富的传感器和足够能力的控制器,其中传感器需要包含星车主系统所必需的毫米波雷达、激光雷达、角雷达、前视摄像头以及融合泊车辅助系统中的环视摄像头、超声波雷达等传感器,另外对于车机交互单元还需要有高精度定位系统(带有惯性导航)、驾驶员监控系统等。

相关文章:

  • 【STM32】STM32学习笔记-DMA数据转运+AD多通道(24)
  • Windows 搭建ninja 编译c++的环境
  • subs 符号函数 在带入数值过程中提高计算速度的方法
  • 部署node.js+express+mongodb(更新中)
  • Visual Studio 2013 “即将退休”
  • 顺序表的实现(C语言)
  • pytest conftest通过fixture实现变量共享
  • Django 10 表单
  • CSS3渐变属性详解
  • 基于Springboot的在线考试系统
  • 内网安全实战防御技术和防御产品
  • CISSP 第9章:安全脆弱性、威胁和对策
  • 在 Mac 上轻松安装和配置 JMeter
  • CMake 中 install 命令用于定义安装规则,指定构建目标(如可执行文件、库等)和文件应该被安装到的位置。
  • 用可视化案例讲Rust编程1. 怎么能学会Rust
  • [rust! #004] [译] Rust 的内置 Traits, 使用场景, 方式, 和原因
  • 2019年如何成为全栈工程师?
  • Docker: 容器互访的三种方式
  • Effective Java 笔记(一)
  • Git同步原始仓库到Fork仓库中
  • magento 货币换算
  • 闭包--闭包之tab栏切换(四)
  • 类orAPI - 收藏集 - 掘金
  • 排序算法学习笔记
  • 扑朔迷离的属性和特性【彻底弄清】
  • 前端面试之闭包
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 通过git安装npm私有模块
  • 微信小程序开发问题汇总
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • 新版博客前端前瞻
  • 学习笔记DL002:AI、机器学习、表示学习、深度学习,第一次大衰退
  • Java总结 - String - 这篇请使劲喷我
  • MPAndroidChart 教程:Y轴 YAxis
  • postgresql行列转换函数
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • 摩拜创始人胡玮炜也彻底离开了,共享单车行业还有未来吗? ...
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • # centos7下FFmpeg环境部署记录
  • # 计算机视觉入门
  • $.each()与$(selector).each()
  • $NOIp2018$劝退记
  • (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (33)STM32——485实验笔记
  • (4)事件处理——(7)简单事件(Simple events)
  • (LeetCode) T14. Longest Common Prefix
  • (Redis使用系列) Springboot 使用redis实现接口幂等性拦截 十一
  • (八)Flask之app.route装饰器函数的参数
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (经验分享)作为一名普通本科计算机专业学生,我大学四年到底走了多少弯路
  • (力扣记录)235. 二叉搜索树的最近公共祖先
  • (十三)Maven插件解析运行机制
  • (四)图像的%2线性拉伸