时间:2022年03月23日 分类:经济论文 次数:
摘要:针对目前市面上的人-车碰撞预警系统大多采取单向预警措施,即行人端不能提前接收到预警信息进而容易引起交通事故的问题,本文设计了一种基于车联网的人-车碰撞双向预警系统.该系统由车载客户端、行人客户端、云服务器、控制管理界面四部分组成.车载客户端与行人客户端主要负责将GPS坐标以及车辆的行驶信息通过无线网络传输到云服务器,接受云服务器转发的相关信息,并根据所设计碰撞预警算法计算预警信息.同时,为了便于整个系统的后台管理,还设计了包括更新数据、记录数据、绘制轨迹等功能的控制管理界面.最后对所设计的系统进行了调试及测试,验证了该人-车碰撞预警系统具有车辆、行人双向预警功能,可以让行人提前获知可能存在的危险并实施预防措施,大大降低人-车碰撞交通事故的发生率.
关键词:车联网;人-车碰撞预警系统;汽车主动安全;碰撞预警
由于汽车碰撞预警系统对提高汽车安全性有着重大意义,因此对该系统的研究一直是国内外研究的热点之一.世界各大汽车生产相关企业都针对碰撞预警系统做了大量的研究.如奔驰的PRE-SAFEBrake系统使用毫米波雷达对碰撞进行检测,利用毫米波雷达检测车辆前方障碍物的位置[1].
当检测到可能有碰撞事故发生时,系统触发相关功能避免碰撞事故发生.菲亚特的CBC系统使用激光雷达对碰撞进行检测.系统正常工作设定的车速范围为5~30km/h,当检测出有碰撞发生的可能性时,系统控制预警及制动系统启动以实现防碰撞功能.综合分析现有人-车碰撞预警系统可知,其大多采用车辆单向的预警方式,且预警的功能比较单一.预警系统大多基于激光雷达、毫米波雷达、超声波、摄像头等传统的测距传感器,成本较高.基于此,本文针对基于车联网的人-车碰撞预警系统进行研究,设计了具有双向预警功能的人-车防碰撞系统.
1系统总体结构
为了降低人车碰撞交通事故发生的概率,本文提出一种具备双向预警功能、基于车联网的人-车碰撞预警系统.通过对系统的双向预警方式的分析[2],制定出该系统的总体架构.
系统包括车载客户端、行人客户端、服务器端和控制管理界面四个部分.其中,行人终端主要由主控制器、GPS模块、蜂鸣器组成.其主控制器通过GPS模块采集行人的位置信息,再将该位置信息与从服务器接收到的数据进行解析处理,并根据处理结果控制蜂鸣器发出预警信号.车载终端设备主要由主控制器、GPS模块、蜂鸣器、CAN模块组成.
车辆端主控制器通过GPS模块和CAN模块分别采集车辆位置和实时车速等信息,然后发送到云服务器处理,并根据处理结果控制蜂鸣器发出预警信号.服务器端则主要负责数据的中转收发.为了便于管理员监控系统的实时运作状态,本文还设计了一个便于操控的PC端控制管理界面.该界面能够实时监控整个系统的工作状况,及时发现异常,并更新、记录数据.
1.1车载终端设计
车载终端设备由树莓派3B主控制器、GPS模块、CAN模块、蜂鸣器模块组成.GPS模块通过串行端口(GPIO15RXD)发送数据到主控制器.而CAN模块则通过SPI引脚(MOSI和MISO)、片选引脚(CS)和中断引脚(INT)与CAN模块连接,实现CAN数据交互.主控制器通过通用输入输出引脚(GIPO23)连接蜂鸣器模块,实现对蜂鸣器的控制.
1.2行人终端设计
行人的终端设备主要由树莓派3B主控制器、GPS模块、蜂鸣器模块组成.主控制器分别为GPS模块和蜂鸣器模块提供5V和3.3V供电.GPS模块通过串行端口(GPIO15RXD)发送数据到主控制器,主控制器上的通用输入输出引脚(GIPO23)连接到蜂鸣器模块,实现对蜂鸣器的控制.
1.3通信架构设计
本文所提出的系统设计核心就是行人、车辆、云服务器三端的通信.选用无线网络通信的方式来实现终端设备之间的信息交互.其中,云服务器作为服务器端,行人、车辆、控制管理界面等终端设备作为客户端,通过编程实现客户端向服务器端发送数据,服务器端将接收到的数据向指定客户端广播.网络通信中需设定IP地址,并为其提供端口号,才能准确无误地接收到从网络发来的数据,同时也向目的地发送数据.完成对IP地址和端口号的设定,需将它们与传输协议关联起来.本系统选用TCP作为传输协议,该传输协议具有可靠连接[3]、错误检查、丢包重发等特点.
1.4控制管理界面程序设计
为了便于系统管理员能够实时监控系统的运作状态,我们设计了控制管理界面.该控制管理界面以图形界面的形式为系统管理员提供相关数据,接收并实现管理员的操作指令.程序编写使用python语言和pyqt模块.控制平台的程序设计包括登录界面、主界面、数据文件和显示界面,同时满足客户端数据更新、记录、轨迹绘制等功能.系统管理员可通过控制平台了解系统的工作状况以及查看行人与车辆终端设备的相关数据与实时人-车轨迹等内容.
2人-车碰撞预警算法设计
2.1安全距离的确定
安全距离是预警系统预警条件的依据,因此确定合适的安全距离至关重要.行人客户端的步行速度远小于车速,因此可设定安全距离为某一定值.
2.2行人相对车辆方位的确定
行人相对于车辆方位主要是通过Python中的Geodesic模块和经纬度信息等求解出行人相对于车辆的方位角α和它们之间的距离d而确定的.方位确定的程序开始运行后,先导入Python相关库Geodesic用于解决GPS数据和地理坐标的处理与转换问题.
由于Geodesic.WGS84.Inverse传入的两组经纬度参数需要以度分秒的形式,而从GPRMC读取的经纬度形式不符合要求,因此需要对经纬度数据进行转换[4],即进行进制变换和小数点移动.转换完成后即可将其传入Geodesic.WGS84.Inverse,读取函数返回值(包含行人和车辆的直线距离以及它们之间的相对方位角等数据).最后根据客户端类型记录返回值.如果客户端是车辆,则记录行人相对于车辆的方位角α和它们之间的距离d.否则,只记录它们之间的距离d.
2.3预警条件
预警条件是本预警系统实现对行人-车辆可能发生的碰撞做出可靠且准确预警的关键.文中设计的预警条件判断流程.其中,根据行人与车辆的位置信息可计算得到行人相对于车辆的方位角α和它们之间的距离d,以及车辆的运动方向θ.通过这些数据分别确定行人和车辆的预警区域.根据不同终端设备确定不同预警条件,即当客户端为行人且车辆位于行人的预警区域内时,预警条件成立,反之不成立.当客户端为车辆且行人位于车辆的预警区域内时,预警条件成立,反之不成立.由于行人和车辆的终端设备所采集的数据和处理程序有所差异。
因此行人和车辆的终端设备预警区域也有所不同,需要分别设计出两种预警区域.对于行人而言,预警区域是以行人为圆心,半径为d1的圆周区域.如果行人-车辆间的距离d
3系统调试
完成对本系统的初步搭建后,为保证系统能够正常工作,同时提高系统的稳定性和准确性,我们对GPS数据、CAN数据、服务器和客户端程序、控制平台等进行了调试.
3.1GPS数据调试
采集GPS数据程序运行后,程序采集数据并将数据打印到界面上.GPS模块包含许多NMEA协议的字段数据.对采集完成的GPS模块数据进行“GPRMC”字段的提取,GPS模块数据和“GPRMC”字段数据.
3.2服务器端程序调试
服务器端程序调试即测试程序能否与客户端建立通信.运行服务器程序后,开始监听客户端连接请求,使用两个客户端接入服务器,完成接入后即可建立通信.调试成功即使两个客户端建立通信并区分出行人端及车辆端.
3.3客户端程序调试
客户端程序调试即测试程序是否能够对可能发生的碰撞进行预警.对行人客户端而言,就是当车辆位于行人的预警区域内时,行人客户端能发出预警.同样对车辆客户端而言,当行人位于车辆的预警区域内时,车辆客户端能发出预警.
3.4控制平台调试
控制平台的调试主要是测试控制平台各功能能否正常工作,包括对更新数据、记录数据、绘制轨迹、打开数据文件等的功能调试.通过对设计的预警系统各重要部分进行调试,发现服务器、客户端、控制平台均能正常工作,达到了预期效果.
4总结
目前市面上汽车搭载的碰撞预警系统大多为单向预警,即行人端无法接收到预警信息.本文设计了一种能够实现双向预警的人-车碰撞预警系统,完成了系统整体架构、硬件、软件、控制管理界面的设计工作;解决了行人端无法获取预警信号的问题[5],使行人在碰撞发生前能提前收到预警信号,做出紧急避险反应,从而较大程度上降低车辆与行人发生碰撞的风险.该双向主动预警的方式是一种避免行人-车辆碰撞事故发生的有效方式,能够大大降低此类事故的发生率.对设计的预警系统进行的测试分析结果证明了该系统的可行性与可靠性.本设计为人-车防碰撞预警系统提供了一种新的方法和思路.
参考文献:
[1]陈勇,黄席樾,杨尚罡.汽车防撞预警系统的研究与发展[J].计算机仿真,2006,23(12):239-243.
[2]党宏社,韩崇昭,段战胜.汽车防碰撞报警与制动距离的确定[J].长安大学学报(自然科学版),2002(6):89-91.
[3]李冉.基于北斗车载终端的主动交通安全预警机制的研究[D].青岛:中国海洋大学,2014.
[4]张雁雁.面向行人防碰撞预警的驾驶员驾驶意图辨识方法研究[D].大连:大连理工大学,2015.
[5]庞日富.一种基于车联网的汽车防碰撞预警系统:CN108615409A[P].2018-10-02.
作者:黄金铭,李飞翔,曹俞,陈永敏,高琳琳,姚建红