张宾 王辰 梅娟
基金项目:无锡城市职业技术学院2021校级科研(专项)课题;项目编号:WXCY-2021-KY-10。
作者简介:张宾(1989— ),男,江苏徐州人,工程师,硕士;研究方向:物联网应用技术。
摘要:随着我国经济的迅速发展,人民的生活水平不断提高,我国汽车保有量逐年增多,交通事故和车辆故障时有发生,由此引起的二次交通事故也屡见不鲜。文章利用物联网技术、电子信息技术设计了基于智能三角警示牌的告警系统,该系统能够将事故和故障车辆位置信息、占用车道情况实时准确地展示给后车,提醒后车主动避让,有效降低二次交通事故发生的概率和事故发生后的损失。
关键词:智能三角警示牌;告警系统;二次交通事故
中图分类号:TP311.5 文献标志码:A
0 引言
随着我国经济的迅速发展,人民的生活水平不断提高,我国汽车保有量逐年增多,交通事故和车辆故障时有发生。根据国家统计局的统计数据[1],近些年我国交通事故相关情况如图1所示,2017—2021年,我国民用汽车保有量和机动车驾驶人员均逐年上升,而因汽车造成的交通事故数量、傷亡人数及直接经济损失虽有波动,但都处在较高的水平,给人们的生命财产安全带来了比较大的影响。从事故原因的角度分析,因事故现场的人员、车辆、抛洒物及救援设备等因素造成的二次交通事故,相比一次事故给人身和财产安全带来的伤害往往更大[2],因此对二次事故的处理和预警应更为重视。现行道路交通安全法规定,在车辆无法移动时,需要将三角警示牌放置于相应位置以提醒后续车辆谨慎驾驶,但总有驾驶员因各种原因没能及时发现三角警示牌和事故车辆,造成二次交通事故,对人民的生命财产安全造成重大损失。综上,亟需有效手段提高三角警示牌的警示效果,降低二次交通事故发生的概率和二次事故发生后的损失。
1 国内外研究现状
美国交通部在2017年推出了一项名为“安全驾驶计划”的项目,该计划将使用车辆上的传感器数据(如雷达、激光雷达、摄像头等)以及其他信息源的数据(如GPS数据、天气预报和道路状况等)对可能影响行车安全的因素进行分析,并根据数据分析的结果开发预警系统。加州大学伯克利分校的研究人员使用机器学习算法来检测和预测二次事故,并在实际道路上进行了测试。密歇根州立大学的研究人员则开发了一种基于车辆传感器数据的二次事故预警系统,并在真实道路上进行了测试。以色列的Mobileye公司开发了一种基于摄像头的二次事故预警系统,可以检测到其他车辆周围的障碍物并发出警报。Uber公司也正在开发一种基于车辆传感器数据的二次事故预警系统,以帮助驾驶员避免潜在的危险。
国内,林谋有等[3]就高速公路二次交通事故成因和特点进行了分析,并对二次事故预警指标确定及二次事故预警指标范围设置进行了研究。李晓敏等[4]通过问卷调查、资料查询等途径,分析了导致高速公路二次交通事故的主要原因,并建立了一套二次交通事故智能预防系统。沈旭东等[5]提出了基于摄像头识别技术和传感器技术的二次交通事故预警系统。
国外主要通过采集周围车辆和环境信息来判断二次交通事故风险,技术难度较大,成本比较高。国内也有通过摄像头等手段来检测二次事故的预警系统,一方面成本高,另一方面视频识别的可靠性和准确性也是要考虑的因素。因此,如何实现成本低、可靠性高的二次交通事故预警系统需要进一步的研究。
2 基于智能三角警示牌的告警系统
为提高三角警示牌的警示效果,有效降低二次交通事故的风险,本文设计了以下基于智能三角警示牌的二次事故告警系统。
2.1 系统构成
本文设计的二次交通事故告警系统包括智能三角警示牌、后台服务和终端应用系统,如图2所示。
各模块的具体作用如下:
(1)智能三角警示牌。由通信模块、定位模块和配置模块构成,在三角警示牌放置后,采集放置的经纬度坐标数据,由配置模块配置故障影响的车道信息,通过通信模块将上述信息发送至后台服务模块。
(2)后台服务。由数据接收处理模块、数据存储模块和数据接口模块构成,数据接收处理模块接收智能三角警示牌发送的数据并对其进行处理,生成告警事件数据,由数据存储模块将告警事件数据存入数据库。数据接口模块提供告警事件相关数据的RESTful查询接口。
(3)应用系统。由告警管理系统、手机告警App和其他相关应用构成。告警管理系统用于展示和管理生成的告警信息,手机告警App用于展示前方告警信息,并在接近告警位置时进行告警提示。同时,后台服务模块提供了告警数据的相关接口,其他业务部门可以根据需求开发自己的应用,如交管部门、保险部门等。
2.2 模块设计
2.2.1 智能三角警示牌
该模块采用乐鑫科技的ESP32单片机作为控制核心,集成了通信模块、定位模块和配置模块。
定位模块采用基于位置的服务(Location Based Services,LBS)基站定位和全球导航卫星系统(Global Navigation Satellite System,GNSS)定位融合的技术,其中GNSS支持北斗和GPS定位。定位模块的定位精度由环境决定,LBS在城区基站密度高的地方精度能够达到50 m,而在郊区基站密度低的地方误差甚至能够达到5 000 m[5],GNSS在室外环境下定位精度在m级。因此,在本文的应用场景中,智能三角警示牌在露天环境下,采用GNSS定位,在隧道、高架下或路两边有高山、高楼阻挡等与GNSS卫星连接不畅的环境下,采用LBS定位技术。
由于LBS和GNSS的定位精度都无法准确定位到具体的车道,而事故占用影响的车道对于后方车辆是非常重要的信息,因此本文设计的智能三角警示牌中添加了配置模块,通过拨码的方式手动配置事故占用影响的车道。
通信模块采用成熟稳定的4G DTU模块,能够使用2G/3G/4G无线蜂窝移动网络进行远距离的数据传输,可以将ESP32单片机采集的位置信息、车道信息和时间信息通过串口数据转换为IP数据透傳至服务器上。发送的数据采用json格式封装,具体格式如下所示:
{
"id": 2,
"longitude": 120.18163,
"latitude": 31.60806,
"laneno":"2,3",
"time": 1685980834000
}
其中id字段为三角警示牌的唯一ID,用于标识不同的三角警示牌;longitude和latitude分别是经度和纬度,laneno表示占用的车道信息,如果同时占用多个车道,车道号之间用“,”分隔,time字段是自1970年1月1日(00:00:00 GMT)以来的时间,单位是ms,表示该条数据发送的时间。上述数据发送时间间隔为5 s。
2.2.2 后台服务
后台服务主要包括数据接收处理、数据存储、数据接口等部分,实现三角警示牌发送数据的接收、处理、存储和发布功能。
数据接收模块对智能三角警示牌发送的json数据进行接收和解析,应用的关键技术包括Netty框架、Apache Kafka流处理平台以及FastJson解析库等。Netty是一个异步事件驱动的网络应用程序框架,基于非阻塞IO(Non-blocking IO,NIO)技术封装了JDK的NIO,使用起来更加方便,且具备高并发、传输快、封装好、适配强、效率高等优点,适用于处理大量高并发的数据。为了防止出现数据浪涌尖峰时来不及处理导致的数据丢失,本文采用Apache Kafka消息队列作为数据缓冲区,Netty收到的消息先存入消息队列,然后通过消息处理线程取出,由FastJson库将其解析成Java对象再做后续处理。
数据存储模块实现将上述java对象存储到数据库表中,数据接口模块用于从中查询某坐标附近的告警事件数据。考虑到此场景下的读取数量远大于写入数量,故将相对复杂耗时的操作在写入数据库时实现,从而降低获取数据时的复杂度和耗时。数据接口的核心应用是查询距离某个经纬度坐标一定范围内的所有告警事件数据,为降低查询时间本文采用以下设计。
(1)数据库表索引设计。为加快查询速度,数据库表在设计中通常采用索引技术,因数据库中以浮点数做索引通常比整数索引更慢,需要更多的存储空间和计算资源,且由于浮点数精度问题,也可能导致数据不准确或不一致。所以,本文以0.001°为单位,将经纬度转换为整数作为索引,在此情况下距离误差范围在111 m×111 m以内,能够满足获取附近智能三角警示牌告警事件的需求,同时数据库中也存储浮点型的经纬度数据,能够精确定位智能三角警示牌的具体位置。
(2)附近智能三角警示牌告警事件经纬度坐标查询设计。一般情况下,为获取数据库表中距离某经纬度坐标一定距离的所有经纬度坐标,需要遍历表中所有数据并计算距离,根据计算结果筛选符合条件的数据,这样的处理方法在数据库表中数据量比较大时会消耗大量时间。本文在前述索引设计的基础上,将需要查询经纬度坐标以0.001°为单位转换成整数,将距离转换为经纬度差值,上述查询需求即可转换为简单的对数据库表带索引字段的条件查询,且精度能够满需求。
数据存储模块采用MyBatis-Plus实现,它是一个基于MyBatis的增强工具,能够简化数据库操作,提高开发效率。数据接口模块利用EasyOpen实现,EasyOpe是一个简单易用的接口开放平台,平台封装了常用的参数校验、结果返回等功能,开发者只需实现业务代码即可。它的所有接口只提供一个URL,通过参数来区分不同业务。
2.2.3 应用系统
应用系统模块主要包括告警管理模块、手机告警App以及其他应用等。告警管理模块采用B/S架构,用于管理和展示智能三角警示牌生成的告警事件,方便交通管理部门用户跟踪告警事件的状态,提供列表、GIS等形式直观的告警事件展示和管理页面,同时还具备新告警事件的弹窗提示等功能。支持告警事件历史记录查询:告警管理模块能够保存所有的告警事件记录,并支持根据时间、区域等多种条件进行查询和筛选,便于交管部门统计分析事故发生规律特点,为交通管理安全改善措施提供数据支撑。
手机告警App模块用于向终端用户提醒前方告警事件具体信息。在用户打开手机告警App后,该App会调用数据接口模块提供的接口,查询附近一定距离范围内的告警事件信息,并标注在App中的GIS地图上。同时,手机告警App会判断当前的导航路径是否会经过某一告警位置,如果会经过,则在距离该位置一定距离时发出声光告警,提示用户谨慎驾驶,及时采取避让措施。
除以上应用以外,有其他需求的用户还可以通过调用数据接口模块提供的在线接口,开发满足自己需求的应用,本文设计的应用架构有较强的可扩展性。
3 结语
交通安全是国家和社会的重要问题,其中二次交通事故的发生会给当事人和周围的人带来更大的危害和损失。本文利用现行主流的物联网技术、电子信息技术设计了基于智能三角警示牌的告警系统,该系统能够将故障车辆位置信息、占用车道情况实时准确地展示给后方驾驶人员,提醒后车主动避让,能够有效降低二次交通事故发生的概率,减少二次事故造成的损失。
参考文献
[1]中华人民共和国国家统计局.年度数据查询[EB/OL].(2023-05-25)[2023-07-06].https://data.stats.gov.cn/adv.htm?m=advquery&cn=C01.
[2]余青原.高速公路交通事故救援中二次追尾事故成因及预防措施研究[J].消防技术与产品信息,2016(5):40-43,35.
[3]林謀有,刘国满,盛敬,等.高速公路二次交通事故预警指标研究[J].公路与汽运,2015(6):53-56.
[4]李晓敏,徐勇,朱其祥,等.高速公路二次交通事故的预防系统研究[J].现代信息科技,2020(6):50-52.
[5]沈旭东,楼泽宇,卢玫.二次交通事故预警设备设计研究[J].山东交通科技,2021(5):103-105.
(编辑 沈 强)
Research on traffic accident warning system based on intelligent warning triangle
Zhang Bin, Wang Chen, Mei Juan
(Wuxi City College of Vocational Technology, Wuxi 214000, China)
Abstract: With the rapid development of Chinas economy and the improvement of peoples living standards, the number of cars in China is increasing year by year. Traffic accidents and vehicle malfunctions occur from time to time, and secondary accidents caused by them are also common. This project uses Internet of Things (IoT) technology and electronic information technology to establish an alarm system based on intelligent triangular warning signs. The system can accurately and real-timely display fault vehicle location information and lane occupancy to subsequent vehicles, reminding them to actively avoid collision. It can effectively reduce the probability of secondary accidents and the losses incurred after secondary accidents occur.
Key words: intelligent warning triangle; warning system; secondary accident