热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

基于CV2X前向碰撞预警算法的实现

关于C-V2X前向碰撞预警的算法实现,首先需要了解一下前向碰撞预警算法流程图,如下图所示:背景技术:本算法主要是基于V2X

关于C-V2X前向碰撞预警的算法实现,首先需要了解一下前向碰撞预警算法流程图,如下图所示:

背景技术:

本算法主要是基于V2X通信技术,在道路交通中,车辆与车辆之间通过该项技术进行数据交互,将自身的各项基本信息(如位置信息、经度纬度、速度信息、车辆的状态信息)发送给其他车辆,同时也将接收其他车辆的基本信息然后进行算法处理操作,从而有效的避免事故的发生。

技术实现要素:


  1. 主车可以获取自身的相关信息,包括位置信息、航向角信息、速度信息等,并将自身信息通过广播发送给其他车辆。
  2. 筛选出周围有效车辆,并获取其他车辆的基本信息。
  3. 判断周围有效车辆的航向角是否与本车相同,同时也要判断出两车的横向距离差(两车距离的相对宽度)。行驶方向相同,相对宽度控制在一定范围内,即可视为在同一车道上。
  4. 筛选出与主车在同一车道的并且距离最近的车辆。
  5. 根据本车基本信息以及远车的基本信息进行最小安全距离的计算,计算公式如下:

这五个阶段所产生的距离总和为最小安全距离。

     6. 判断最小安全距离是否大于两车的实际距离。

     7. 满足预警条件,判断两车的相对关系分情况进行预警。

判断方向角是否为同向可以采取控制两车的航向角差值控制在某一范围内,例如A车的航向角为65度,B车的航向角为70度,两车的航向角差值的绝对值≤5,我们则认为这两辆车的航向角相同,即行驶方向相同。

如何计算两车的相对宽度,前提是两辆车的航向角相同,如下图所示:

假设车辆A和车辆B为行驶方向相同的车辆,我们想要得到两车位置的相对宽度,如图AC的距离,我们只需要以下3步:


  1. 确定车A和车B的直线距离,即虚线AB的长度,根据车A和车B的经度和纬度信息可以很容易得到车辆的直线距离的长度。
  2. 确定∠2的大小,在图中我们不难发现,∠1和∠2为同一个角的余角,所以∠1和∠2相等,又因为∠1为航向角Heading,所以∠2也为Heading大小。
  3. 确定AC的长度由图很容易得出AC=AB*cos∠2 = AB*cos∠1。

如果我们车A和车B航向角相同,并且相对宽度为2米。我们即可认为两车在同一车道上,满足碰撞的前提条件。

最小安全的距离的计算,假设驾驶员反应的时间为T,制动协调时间为t1,减速增长时间为t2,静止时安全距离为d,根据汽车制动动力学,最小安全距离的计算公式如下:

VS、VF 分别为主车和远车的车速,a为车辆制动安全的加速度,计算出车辆的最小安全距离,然后和车辆的实际距离进行比较,如果最小安全距离大于车辆的实际距离,前向碰撞预警将会触发。

在实际测试中,如果主车和远车在同一车道上行驶,判断条件为:主车的航向角与远车的航向角偏差在一定范围内,并且车辆的相对宽度小于一定的距离。主车行驶速度大于远车的行驶速度,并且主车的相对方位为远车的后方,通过算法计算出的最小安全距离S大于主车和远车的实际距离,算法将会对主车进行预警,如下图所示:

 

如果主车和远车在同一车道上行驶,判断条件为:主车的航向角与远车的航向角偏差在一定范围内,并且车辆的相对宽度小于一定的距离。主车的行驶速度小于远车的行驶速度,并且主车的相对方位为远车的前方,通过算法计算出的最小安全距离S大于主车和远车的实际距离,算法将会对主车进行预警,如下所示:

结论得出在前向碰撞预警算法触发时,算法将会对前车和后车进行同时预警,算法将会对前车提示预警“注意后方车辆”,算法同时对后方车辆提示预警“注意前方车辆慢速行驶”,当实际情况不满足算法触发条件后,前车、后车的预警消息将会同时消失。

更多内容可关注北京大椽科技有限公司官网:www.dachuantek.com 


推荐阅读
  • 本文比较了eBPF和WebAssembly作为云原生VM的特点和应用领域。eBPF作为运行在Linux内核中的轻量级代码执行沙箱,适用于网络或安全相关的任务;而WebAssembly作为图灵完备的语言,在商业应用中具有优势。同时,介绍了WebAssembly在Linux内核中运行的尝试以及基于LLVM的云原生WebAssembly编译器WasmEdge Runtime的案例,展示了WebAssembly作为原生应用程序的潜力。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 生成对抗式网络GAN及其衍生CGAN、DCGAN、WGAN、LSGAN、BEGAN介绍
    一、GAN原理介绍学习GAN的第一篇论文当然由是IanGoodfellow于2014年发表的GenerativeAdversarialNetworks(论文下载链接arxiv:[h ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 无线认证设置故障排除方法及注意事项
    本文介绍了解决无线认证设置故障的方法和注意事项,包括检查无线路由器工作状态、关闭手机休眠状态下的网络设置、重启路由器、更改认证类型、恢复出厂设置和手机网络设置等。通过这些方法,可以解决无线认证设置可能出现的问题,确保无线网络正常连接和上网。同时,还提供了一些注意事项,以便用户在进行无线认证设置时能够正确操作。 ... [详细]
  • JavaScript设计模式之策略模式(Strategy Pattern)的优势及应用
    本文介绍了JavaScript设计模式之策略模式(Strategy Pattern)的定义和优势,策略模式可以避免代码中的多重判断条件,体现了开放-封闭原则。同时,策略模式的应用可以使系统的算法重复利用,避免复制粘贴。然而,策略模式也会增加策略类的数量,违反最少知识原则,需要了解各种策略类才能更好地应用于业务中。本文还以员工年终奖的计算为例,说明了策略模式的应用场景和实现方式。 ... [详细]
  • 本文详细介绍了相机防抖的设置方法和使用技巧,包括索尼防抖设置、VR和Stabilizer档位的选择、机身菜单设置等。同时解释了相机防抖的原理,包括电子防抖和光学防抖的区别,以及它们对画质细节的影响。此外,还提到了一些运动相机的防抖方法,如大疆的Osmo Action的Rock Steady技术。通过本文,你将更好地理解相机防抖的重要性和使用技巧,提高拍摄体验。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文详细介绍了云服务器API接口的概念和作用,以及如何使用API接口管理云上资源和开发应用程序。通过创建实例API、调整实例配置API、关闭实例API和退还实例API等功能,可以实现云服务器的创建、配置修改和销毁等操作。对于想要学习云服务器API接口的人来说,本文提供了详细的入门指南和使用方法。如果想进一步了解相关知识或阅读更多相关文章,请关注编程笔记行业资讯频道。 ... [详细]
  • “你永远都不知道明天和‘公司的意外’哪个先来。”疫情期间,这是我们最战战兢兢的心情。但是显然,有些人体会不了。这份行业数据,让笔者“柠檬” ... [详细]
  • 本文讨论了前端工程化的准备工作,主要包括性能优化、安全防护和监控等方面需要注意的事项。通过系统的答案,帮助前端开发者更好地进行工程化的准备工作,提升网站的性能、安全性和监控能力。 ... [详细]
author-avatar
mobiledu2502879793
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有