辅助驾驶功能开发-功能算法篇(2)-ACC-状态机跳转设计

news2024/12/26 23:16:38

1、ACC状态介绍

ALOD_MODE

(ACC状态)

状态说明
OFF

ACC关闭状态,此时ACC图标不显示,且其他相关信号都发默认值。此状态下车辆完全由驾驶员控制。

PassiveACC已由驾驶员开启,但有抑制条件(如安全带、车门)满足,驾驶员无法激活ACC。此状态下车辆完全由驾驶员控制。
Stand-By

待机状态,ACC已由驾驶员开启,且在该状态下驾驶员随时可通过按键激活ACC。此状态下车辆完全由驾驶员控制。

ActiveControl

激活状态,ACC正进行纵向控制跟随前方车辆或巡航控制。

BOM(BrakeOnlyMode)

ACC先前处于ActiveControl,如果某些退出条件满足且ACC正在制动过程中,为保证安全,BOM将承接于Active状态,将减速度执行下去,直至退出BOM状态至PassiveStandby状态。

Override

当驾驶员主动踩油门踏板加速,进入Override并允许驾驶员接管。

Stand-active

ACC控制自车跟停前车时,在自车静止的前三秒以内处于Stand-active,该状态下ACC能在前车驶离时自动跳转至ActiveControl跟随前车起步。该状态下ESC应使车辆保持静止状态。

Stand-wait

Stand-active状态下持续3秒后跳转至Stand-wait。该状态下需驾驶员确认(点油门/Res+)才能进入ActiveControl
驾驶员能在踩刹车且车辆静止的前提下通过按Res+Standby进入StandWait
该状态下ESC应使车辆保持静止状态。

Temporary Failure

ACC发生临时故障。此状态下车辆完全由驾驶员控制。

Permanent Failure

ACC发生永久故障。此状态下车辆完全由驾驶员控制。

2、ACC状态跳转框图及详细跳转逻辑

序号切换前切换后切换条件
1IntialOFF初始化完成
2

OFF/Passive/StandBy/Active/BOM/Stand-Wait/Stand-Active

Permanent Failure

满足可逆故障,DTC列表

3

OFF/Passive/StandBy/Active/BOM/Stand-Wait/Stand-Active

Temporary Failure

满足不可逆故障,DTC列表

4OFFStandBy

ACC主开关短按AND
无临时/永久故障

5StandByOFF

ACC主开关短按OR LIM主开关短按

6StandByActive

驾驶员按SET/-RES/+AND
立即解除条件为假AND
软解除条件为假

7StandByStand-wait

驾驶员按SET/-或RES/+AND

立即解除条件为假AND
软解除条件为假AND
车辆制动(驾驶员踩制动踏板/AVH激活)为真

8ActiveOFF

LIM主开关短按OR
ACC开关长按

9ActiveStandBy

立即解除条件为真OR
软解除条件为真且CDD未进行制动

10ActiveOverride

驾驶员主动加速为真

11ActiveStand-Active

车辆静止AND
满足停车条件

12ActiveBOM

软解除条件为真AND
CDD
进行制动

13BOMOFF

LIM主开关短按OR
ACC开关长按

14BOMStandBy

BOM结束条件OR
立即解除条件为真

15Stand-ActiveOFF

LIM主开关短按OR
ACC开关长按

16Stand-ActiveStandBy

软解除条件为真OR
(立即解除条件为真AND驾驶员踩制动踏板为假)

17Stand-ActiveOverride

驾驶员主动加速为真

18Stand-ActiveStand-wait

Stand-Active时间超过3s

19Stand-ActiveActive

驾驶员未踩制动踏板AND
不满足停车条件AND
静止状态激活(驾驶员按RES/+键或轻踩油门)

20Stand-WaitOFF

LIM主开关短按OR
ACC开关长按

21Stand-WaitStandBy软解除条件为真OR
(立即解除条件为真AND驾驶员踩制动踏板为假)
22Stand-WaitStand-Active

驾驶员未踩制动踏板AND
当前工况允许起步为假AND
静止状态激活(驾驶员按RES/+键或轻踩油门)

23OverrideOFF

LIM主开关短按OR
ACC开关长按

24OverrideStandBy

立即解除条件 OR
软解除条件 OR
驾驶员主动加速超时(15min)

25OverrideActive

驾驶员主动加速为假

26Temporary FailureOFF

临时故障消失

27Temporary FailurePermanent Failure

满足不可逆故障

立即解除条件

1) 驾驶员踩制动踏板

2) ESP功能开关关闭

3) EPB激活驾驶员拉手

4) 车速高于解除车速上限170km/h

5) AEB功能激活

6) TCU油温过高

软解除条件

1) 主驾驶员安全带未系

2) 四门两盖有开启

3) 发动机关闭(非启停关闭)

4) 变速箱进入手动模式

5) 换挡杆未在前进挡

6) TCS激活(2s

7) VDC激活(100ms

8) HDC激活(400ms

9) ABS激活(300ms

10) 主开关短按

BOM结束条件

1) 驾驶员主动加速

2) 前方没有目标

3) CDD退出工作

4) 轮缸无制动力

5) 进入Brake-Only mode超时

6) 车辆停止

进入停车条件(需全部满足)

1) 有前车

2) 自车车速小于1m/s

3) 相对距离小于4m

4) 相对速度小于km/s

3、ACC状态与仪表盘警示灯交互关系

ACC_Mode_HMI图标含义
0x0: OFF modeN/AACC功能未开启

0x1: Passive mode

0x2: Stand-By mode

ACC功能开启但未激活

0x5: Override

0x7: Stand Wait

ACC StandActive模式/Override模式

0x3: Active-Control mode

0x4: Brake-Only mode

0x6: Stand Active

ACC功能激活且正在纵向控制

0x8: Temporary Failure

0x9: Permanent Failure

ACC功能故障

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

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

相关文章

chatgpt赋能python:Python制作录屏软件,让你的屏幕动作不再错过

Python制作录屏软件,让你的屏幕动作不再错过 作为一名Python工程师,你可能有很多需要记录屏幕操作的场景,比如演示软件或者录制教学视频。那么,有没有一款Python制作的录屏软件来满足你的需求呢?答案是肯定的&#xf…

K-means聚类算法原理、步骤、评价指标和实现

1、聚类 聚类与分类不同,聚类分析分通过分析大量含有一定规律但杂乱数据,得到数据间内在的逻辑,将杂乱的数据按照所得的数据规律划分成不同的种类。K-measn、DBSCAN和层次是当前广泛使用的三种聚类方法。以下对三种方法进行分析,…

Mybatis 如何实现返回多个结果集——详测版

文章结构 本文介绍一个在 Mybatis 中不常见的操作,但是可能有些朋友刚好需要用到,Mybatis 如何实现返回多个结果集 什么情况会返回多个结果集: 存储过程多个 select 语句 具体过程如下(作者实测:跟着观战就完事了&a…

chatgpt赋能python:Python:一个强大、适用广泛的编程语言

Python:一个强大、适用广泛的编程语言 作为一种高级编程语言,Python 可以轻松地完成许多计算机编程任务。它是一种协作和代码重用的语言,Python旨在提高生产力并减少缺陷。 对于那些想要学习编程语言的人来说,Python 是非常适合…

Class源码

介绍 如果想要在程序运行阶段访问某个类的所有信息,并支持修改类的状态或者行为的话,肯定会用到反射,而反射靠的就是Class类。 通过Class类可以获取类的实例,构造方法,字段,成员方法,接口等信…

网络编程知识点总结(3)

socket 服务器的开发步骤和代码实现 1.创建套接字 socket()函数 int socket(int domain, int type, int protocol); domain: 指明所使用的协议族,通常为 AF_INET,表示互联网协议族(TCP/IP 协议族)AF_INET IPv4因特网域. AF_INET6 IPv6 因特网域 AF_U…

屏幕录制安卓应用被发现在监视用户

据 ESET 的研究人员称,一款在 Google Play 商店中下载量超过 50,000 次的屏幕录像机应用程序被发现使用设备的麦克风悄悄地录制音频并窃取文件,这表明它可能是间谍活动的一部分。 iRecorder 是一个合法的应用程序,于 2021 年 9 月可用&#…

chatgpt赋能python:Python动态函数介绍

Python动态函数介绍 Python是一种高级编程语言,它支持动态函数。动态函数就是在Python中可以在运行时创建函数。这意味着编程者可以在编写代码时不必事先定义所有函数,而是可以通过Python函数来创建函数。 Python动态函数的一个好处是可以轻松地编写可…

chatgpt赋能python:Python动态列表介绍

Python动态列表介绍 Python是一种常用的高级编程语言,它支持多种数据结构,其中包括列表。以Python中的列表为例,本文将详细介绍Python动态列表的特点和用途。 Python中的列表 在Python中,列表就是一组由逗号分隔,放…

基于PyQt5的图形化界面开发——队列动画演示

目录 0. 前言1. 了解队列2. 代码实现3. 效果演示其他PyQt5文章 0. 前言 本文使用PyQt5制作图形化界面演示数据结构中的队列操作,与上一节队列动画相对应 基于PyQt5的图形化界面开发——队列动画演示 操作系统:Windows10 专业版 开发环境:P…

javascript基础十六:Ajax 原理是什么?如何实现?

一、是什么 AJAX全称(Async Javascript and XML) 即异步的JavaScript 和XML,是一种创建交互式网页应用的网页开发技术,可以在不重新加载整个网页的情况下,与服务器交换数据,并且更新部分网页 Ajax的原理简单来说通过XmlHttpRequ…

Linux编辑器,开机重启,用户注销,用户管理 常用命令

Linux 实操篇- Vi 和Vim 编辑器 vi 和vim 的基本介绍 Linux 系统会内置vi 文本编辑器 Vim 具有程序编辑的能力,可以看做是Vi 的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。 代码补完、编译及错误跳转等方便编程的功能特…

环境感知算法——4.RandLA-Net基于SemanticKITTI训练

1.前言 RandLA-Net(Random Sampling and Local Feature Aggregator Network)是一种处理点云数据的神经网络结构,采用随机采样(Random Sampling, RS)以降低点云密度并减少计算量。尽管随机采样可能会丢掉一些有用的信息…

【 STM32实例 】 智能小车的红外循迹

文章目录 前言一、硬件选择与连接1. STM32F103C8T6最小系统板2. L298N双路电机驱动3. 红外循迹模块 二、环境配置1. Device2. Output3. C/C4. Debug 三、项目管理与代码实现1. 项目结构2. 工程管理3. 具体文件xunji.cxunji.hmain.c 总结项目源码 前言 这篇文章我主要讲的是让基…

chatgpt赋能python:Python加颜色代码-提高代码可读性和吸引力的简单技巧

Python加颜色代码 - 提高代码可读性和吸引力的简单技巧 在编写Python代码时,您可能已经注意到,有时候需要强调某些部分,以使其更易于阅读和理解。这时候,您可以使用加颜色代码来增强代码的可读性和吸引力。在本文中,我…

Opencv项目实战:基于dlib的人脸关键点检测

文章目录 一、项目简介二、环境配置2.1、dlib人脸检测器:dlib.get_frontal_face_detector()2.2、dlib关键点定位工具:shape_predictor_68_face_landmarks.dat 三、项目实战 一、项目简介 该项目基于dlib模块提供的人脸检测器以及关键点定位工具完成。首…

大数据:hive数据库的操作语法,数据表,内部表,external外部表,数据导入导出load,insert

大数据: 2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开 测开的话,你就得学数据库,sql,oracle,尤其sql要学&#x…

chatgpt赋能python:关于Python中打开文件的语句详解

关于Python中打开文件的语句详解 在Python中,打开文件是一项常见的任务,可以用于读写文件和进行日志记录。本文将介绍Python中打开文件的语句,并提供一些实用技巧,以便方便地管理文件。 为什么需要打开文件? 在计算…

【动态规划】通配符匹配与正则表达式匹配

文章目录 一、通配符匹配1.1 思路分析1.2 初始化处理1.3 代码1.4 优化 二、正则表达式匹配2.1 思路分析2.2 初始化设置2.3 代码 一、通配符匹配 题目描述: 给你一个输入字符串 (s) 和一个字符模式 ,请你实现一个支持 ‘?’ 和 ‘*’ 匹配规则的通配符…

如何在Github上免费部署网站

如何在Github上免费部署静态网站 背景一、新建仓库(github账号的需要注册)二、下载仓库三、将内容上传到远程仓库里四、启动Page服务 背景 部署网站需要服务器,但是如果你只是部署静态网站就可以蹭Github上的免费服务器。因为发现现在的过程…