功能需求文档-前方交通穿行提示&制动FCTS

本文介绍了前方交通穿行提示(FCTA)和前方交通穿行制动(FCTB)的功能原理、工作场景、车速和挡位要求、报警机制以及交互和抑制条件。这两项技术旨在低速行驶时防止碰撞,通过实时监测和预警/制动来保障行车安全。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

功能概述

在这里插入图片描述
前方交通穿行提示(Front Cross Traffic Alert),简称FCTA,其功能表现为在车辆低速前进时,实时监测车辆前部横向接近的其他道路使用者,并在可能发生碰撞风险时发出警告信息

前方交通穿行制动(Front Cross Traffic Braking),简称FCTB,其功能表现为在车辆低速前进时,实时监测车辆前部横向接近的其他道路使用者,并在可能发生碰撞风险时自动启用车辆制动系统使车辆减速,以避免碰撞或减轻碰撞后果

报警区域

在这里插入图片描述
其中:
橙色区域:为报警检测区域
碰撞盒宽度:为车身宽度【不包括外后视镜】;
碰撞盒长度:区分FCTA与FCTB;
——FCTA:6.5m【支持标定】;
——FCTB:FCTB信号发送到ESP响应期间本车的运动距离+ESP响应到执行目标减速度期间本车的运动距离+本车执行目标减速度至完全刹停期间本车的运动距离+预留安全距离【支持标定】

设计运行范围

设计运行范围(ODD)表示功能能够正常运行所依赖的外部条件,例如:道路、交通、天气、光照等,详细定义如下:
在这里插入图片描述

功能场景

十字路口—前方车辆横穿

在这里插入图片描述
场景描述:自车于十字路口处直行通过,此时侧方出现快速车辆接近,存在碰撞风险,此时系统需给予驾驶员提示或执行减速制动

出库过程—前方车辆横穿

在这里插入图片描述

场景描述:自车正在从车位中驶出,此时侧方出现快速车辆接近,存在碰撞风险,此时系统需给予驾驶员提示或执行减速制动

出库【斜列车位】过程—前方车辆横穿

在这里插入图片描述
场景描述:自车正在从斜列车位中驶出,此时侧方出现快速车辆接近,存在碰撞风险,此时系统需给予驾驶员提示或执行减速制动

功能需求

在这里插入图片描述
1.车速范围:1km/h-15km/h
2.挡位要求:D挡
3.报警触发:横穿目标位于检测区域内&横穿目标轨迹与自车轨迹存在交叉点D&交叉点D位于碰撞盒侧边上&TTE≤阈值【FCTA:2.5s;FCTB:1.5s】

交互需求

功能开启/关闭

在这里插入图片描述
1.允许驾驶员选择关闭/预警/预警+制动;
2.首次默认为预警,后续记忆

功能激活

1.FCTA报警:仪表车辆模型前方显示黄色左/右侧横穿动图,文字提示“注意前方左/右侧横穿目标”
2.FCTB报警:仪表车辆模型前方显示红色左/右侧横穿动图,文字提示“注意前方左/右侧横穿目标”,车辆执行减速,同时附加声音报警

功能抑制

当存在以下条件之一时,FCTA/FCTB功能将受抑制:
——安全带未系
——四门两盖打开
——ESP功能关闭
——非D挡
——车速不满足要求【1-15km/h】
——ABS/TCS/ESP/EBD功能激活
——关联系统故障

功能中断/退出

在功能触发过程中,若存在以下条件,FCTA/FCTB功能将中断/退出:
——存在上述抑制条件
——驾驶员关闭设置项

功能故障

1.如果设置项已开启,此时功能故障,文字提示"角雷达类功能故障",同时显示故障指示灯
在这里插入图片描述
2.如果设置项未开启,功能故障,系统不会进行提示,若此时驾驶员点击设置项开关,意图打开,此时进行文字提示“功能故障,无法开启”

性能要求

在这里插入图片描述
备注:同类功能还有RCTA/RCTB,其表现为后方的预警及制动,与FCTA/FCTB策略基本一致

为了实现三个线程循环打印ABC,可以使用Synchronized同步方法和Object的wait()和notify()方法。首先,创建三个线程A、B、C,并设置它们的打印次数为10。然后,通过使用三个对象锁a、b、c来控制线程的执行顺序。A线程首先获得c对象锁,打印A后释放c对象锁,并通过notify()方法唤醒B线程。B线程等待a对象锁,获取到a对象锁后打印B,并释放a对象锁,然后通过notify()方法唤醒C线程。C线程等待b对象锁,获取到b对象锁后打印C,并释放b对象锁,并通过notify()方法唤醒A线程。这样就实现了三个线程循环打印ABC的需求。 以下是一个示例代码: ```java class PrintThread implements Runnable { private static final Object a = new Object(); private static final Object b = new Object(); private static final Object c = new Object(); private String name; public PrintThread(String name) { this.name = name; } @Override public void run() { for (int i = 0; i < 10; i++) { synchronized (name) { try { switch (name) { case "A": synchronized (c) { System.out.print("A"); c.notify(); } name.wait(); break; case "B": synchronized (a) { System.out.print("B"); a.notify(); } name.wait(); break; case "C": synchronized (b) { System.out.print("C"); b.notify(); } name.wait(); break; } } catch (InterruptedException e) { e.printStackTrace(); } } } } } public class Main { public static void main(String[] args) { Thread threadA = new Thread(new PrintThread("A")); Thread threadB = new Thread(new PrintThread("B")); Thread threadC = new Thread(new PrintThread("C")); threadA.start(); threadB.start(); threadC.start(); } } ``` 通过以上代码,三个线程将按照ABCABCABC的顺序循环打印10次。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [多线程交替打印ABC的多种实现方法](https://blog.csdn.net/xiaokang123456kao/article/details/77331878)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [三个线程轮流打印ABC](https://blog.csdn.net/yu1336199790/article/details/118725454)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林沐栖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值