APP下载

基于大数据分析的车辆安全检测系统研究

2022-02-18杨建文周先存

关键词:服务器联网车辆

蒋 庆,陶 峰 ,章 玉,杨建文,周先存

(皖西学院电子与信息工程学院,安徽 六安 237012)

0 引言

随着中国经济社会的发展和人民生活水平的提高,人们对车辆安全及其行驶的要求越来越高.如各种运输车的安全问题不容小觑.以油罐车为例,若在运输过程中出现意外,则发生火灾或爆炸的可能性非常高,一旦事故发生将会带来重大破坏和高昂的经济损失,后果不堪设想.然而,目前一般的车辆危险检测和预警系统已经不能满足高安全、高准确的要求,需要对其进一步地改进[1].

本文对在市面上一些相似系统进行了以下分析:1)过程监控难.由于车辆作业分散,不能集中管理,而且司机素质参差不齐,所以交通部门很难对车辆进行监控,以至不能及时预防和阻止事故发生.2)过程调度难.若在人烟稀少的地方发生事故,司机无法及时通知管理中心,则会导致事态进一步加剧造成更严重的后果.3)无法对历史数据进行分析和总结,无法从事故中获取教训和提取规律来做到未雨绸缪.

针对以上问题,此系统采用了如下的方法:1)项目模块包括多种传感器,能够对不同类型的车辆实行定制化的检测,如油罐车要油浸检测、静电检测、侧翻检测、火灾检测、GPS检测以及温湿度检测等;冷链车则有侧翻检测、火灾检测、GPS检测、温湿度检测等.2)在前端网页上可实时显示检测模块发送来的环境数据,业务后台根据获取的检测数据进行记录和分析,若车辆驶入大数据分析所得出的事故多发地段,则系统会进行自动判断并发出相应预警,且会给出一些解决方案.3)在司机在无法避免事故发生的情况下,该系统可以迅速通知管理中心并及时报警,提供准确位置,避免引起重大伤亡和经济损失.4)在对交通事故产生的各种影响因素进行全面分析的基础上,采取有效的控制措施,使车辆检测更加科学高效[2-6].

1 在系统中的主要应用技术

数据发送算法:数据的发送端对于需要发送的单包数据按照通信协议正确地组装协议报头、有效数据和协议报尾,在每包数据发送后需要立即接收并监听数据接收端反馈回来的结果,若接收正确则继续发送下一包数据,若接收错误则需要重新发送该包数据,从而保证数据通信的正确.发送算法流程如图1所示[7],数据接收算法流程如图2所示.

图1 发送算法流程图

图2 数据接收算法流程

1.1 物联网技术

物联网(internet of things,简称IoT)是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集需要监控、 连接、互动的物体或过程,采集其声、光、热、电、力学、化学、生物、位置等各种需要的信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,从而实现对物品和过程的智能化感知、识别和管理.物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络[8-9].

该系统主要应用物联网技术中的物体识别技术、位置识别技术以及感知技术.物体识别技术以

RFID技术为代表,自动识别车辆的身份信息以加强对运输车辆的监管;位置识别技术则以GPS技术为主,用以对车辆位置跟踪;而感知技术则主要是指传感器,它是用来获取关于物理信息的重要器件,也是构成物联网的基础单元.系统主要应用的传感器包括倾角传感器、速度及加速度传感器、湿度传感器、温度传感器、压力传感器等,用于对车辆运输以及车辆运行状态进行及时检测.GPIO其接脚可以供使用者远程遥控自由使用[10].

1.2 大数据技术

大数据是一种规模大到在获取、存储、管理、分析方面超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低4大特征[11].

该系统主要应用了Hadoop技术和MapReducer技术.Hadoop是一个由Apache基金会所开发的分布式系统基础架构,用户可以在不了解分布式底层细节的情况下开发分布式程序,从而充分利用集群机的威力进行高速运算和存储.Hadoop实现了一个分布式文件系统[12],系统采用其对数据进行分析和处理.MapReduce是一种编程模型,用于大规模数据集(大于1 TB)的并行运算.MQTT(message queuing telemetry transport,消息队列遥测传输)是一种轻量级的IoT协议,将数据作为字节数组传输,通信负载小、流量低,适用于设备和平台保持长时间连接.其特点是可以实现设备间的单播和组播,设备可以在不依赖下发命令服务、推送服务等命令服务的情况下,以应用服务器的方式对其他设备进行管理和控制[13-15].

2 系统结构

基于物联网与大数据分析的车辆安全系统和监测被给出,并在前端展示,系统结构如图3所示.系统分成如下几个部分:本地端、物联网端、大数据端、业务逻辑端.本地端通过GPIO引脚读取相关信息以及通过MQTT协议将数据上传至云服务器;物联网端再通过配置服务器http协议的端口安全组推送至应用平台,让数据及时入库;大数据端通过大量数据呈现数据长远性规律,物联网收集的数据在通过大数据处理后形成危险地段警告,当车辆经过危险地段时,系统会发送短信提醒用户;业务逻辑端则将数据进行可视化.

图3 系统结构图

2.1 本地端

本地端的运行逻辑图如图4所示.本地端通过Arduino单片机系列、针对不同种类车辆的传感器模块和通讯模块组成本地端系统.首先,在网络自检完成后,设备会将设备ID和鉴权密钥发送至后台服务器中的物联网(internet of things,IoT)消息服务器进行设备鉴权.此时IoT消息服务器会根据接收到的设备ID和鉴权密钥与数据库中的权限表中的相应数据进行比对,若匹配则准许此设备接入,否则拒绝.

图4 运行逻辑图

Arduino Nano(Arduino USB接口的微型版本)通过读取传感器上GPIO引脚获取到的相关数据并进行采集,将数据打包后传递给物联网WiFi芯片——ESP8266,通过ESP8266上面连接的WiFi进行远程通信,由传感器对数据进行收集,并由C语言所编写的循环轮询系统对所接收到的数据进行解析.其中接收到的传感器模块需要针对不同类型的车辆进行定制,再通过MQTT协议将数据整合发布到云端.并且在终端上电后会自启动程序代码,在正常运行后会进行网络自检,若发现当前无法连接到网络则会以3 s为周期不断进行重连直至网络连接成功,从而使数据以更快捷高效的方式传递到云服务器.

2.2 物联网端

数据推送的流程时序图如图5所示.在信息上传到物联网开放平台OneNet之后,物联网端通过配置key向OneNet后台推送服务,然后OneNet向数据流接收平台推送服务,oneNet在通过MQTT协议对数据源进行处理后产生数据,再对数据进行签名加密,数据流接收平台在接收到数据后再向OneNet后台推送由“GET URL?msg=x& signature=y”中x生成的一串用于服务器校验的值.在通过MQTT协议打包数据后产生的数据经过切割转化成在http协议里的键值对,最后配置http协议的端口将数据推送到应用平台,利用OneNet影响下的消息推送服务能在服务器空闲或者不繁忙时将消息推送出去的特性,使得用户既能及时收到预警信息,又不会因消息发送过于频繁而被打扰.

图5 数据推送的流程时序图

2.3 大数据端

大数据端的运行逻辑图如图6所示.大数据端主要由Hadoop对数据进行清理和分析,通过MapJoin缓存小数据表到本地端中与大数据表进行比对,并对数据进行处理,再由MapReducer串联的多个Job对数据进行清洗、分离和分析,最后通过Hadoop之间的仲裁机制以及节点之间的响应机制协调多个分布式进程之间的活动.由此实现对车辆当前的种类、所处日期与温度以及对车辆当前该地区事故发生率等进行判断并通过数据进行预测.

图6 运行逻辑图

2.4 业务逻辑端

前端项目采用以Bootstrap框架创建主要底层页面并加以应用layUI框架中的页面组件以达到美化页面的效果,以及使用Echarts和Webscoket数据可视化的效果.后端采用的是SpringBoot框架和shiro安全框架,最后放到服务器中进行运行.

服务器将从MQTT协议的数据传送到云服务器上,并且将数据通过前端数据可视化.在用户登录的模式下,可以查看绑定的车辆车牌号、设备安装的位置以及车辆信息状态.在客服登录的模式下,可以看见受灾车辆信息.后端通过Spring Boot对前端数据进行支撑,使数据可视化,然后对采集到的信息数据进行大数据分析,判断该种车辆是否安全以及是否对车辆发出预警,并且将采集到的数据收集到数据库中.

3 系统测试

3.1 采集模拟测试准备

此测试主要目的是验证软件能否正常将数据发送至后台服务器进行处理,测试准备结果如图7所示.在数据库的表中新增1条设备的鉴权信息,如增加设备ID为770268195,设备鉴权密钥为abcdefghijklmnopqrstuvwxyz.然后打开电脑命令行进行终端运行,软件已成功运行.最后查询在数据库物联网表中是否有设备ID为770268195的状态信息以及在物联网表中是否有模拟数据.

图7 测试准备结果图

图7显示了数据库数据均有该设备的状态信息和传感数据信息,测试软件是成功的.

3.2 系统测试检查

打开前端页面查看采集终端数据是否正常.在打开网页前端后,首先会显示等待设备绑定界面,通过输入设备数字编码,均可绑定监测设备,对不同设备监测数据进行区分(见图8).

图8 前端页面示意图

监测设备对车辆状态进行快速检测,通过前端将检测数据曲线可视化,并点击数据图表可查看历史数据,监测页面如图9所示,前端报警系统如图10所示.

图9 数据流图

图10 前端报警系统展示图

在通过大数据分析后产生的数据刷写的分区列表可以进行数据可视化,在经数据分析后的图如图11和图12所示.

从图11和图12可以看出:车辆在t=10和t=11时事故发生的概率明显增大,可以让司机在对应时段增加注意并在此时间段内增加客服人数,以提升事故响应的效率.

图11 时间-火焰指标六方图

图12 精细化火焰指标图

4 结语

本文将传统的物联网技术结合大数据技术,由于这2种技术互补,所以这在一定程度上对当前一般的车辆危险检测和预警系统进行了改进.本文构建了基于物联网技术的车辆运行安全检测系统,实现了对车辆行驶状况的监控,这在一定程度上避免了交通事故的发生,极大地保护了人们的生命财产安全.

猜你喜欢

服务器联网车辆
“身联网”等五则
《物联网技术》简介
《物联网技术》简介
通信控制服务器(CCS)维护终端的设计与实现
PowerTCP Server Tool
抢占物联网
车辆
冬天路滑 远离车辆
得形忘意的服务器标准
计算机网络安全服务器入侵与防御