车联网远程监控系统设计与实现
2020-05-18李坤
李坤
摘 要
随着现代交通的快速发展, 我国车辆数目呈不断上升趋势, 各种问题也日益突显, 且很难有效控制。本项目基于万物互联愿景的提出,采用4G无线通信技术、卫星定位技术和计算机技术,线上实时监控与分析处理,提高生产效率和人工智能程度,促进车联网技术的快速发展。本项目选用一个4G车载终端,结合北斗/GPS卫星双模定位,根据双模做到精确定位,通过CAN总线实时获取车辆运行数据,利用4G无线通信技术将车辆运行数据上传至通信服务器,并且对定位数据进行分析处理,然后通过车联网监控平台显示车辆实时位置,实现对车辆的远程监控。随着现代汽车往大数据方向发展,我们采用Hbase存储车辆上传的海量运行数据,并且Hbase对于大数据量的查询效率较高,采用MySQL数据库存储车辆的一些基本信息,比如车牌号、终端号等等,通信服务器采用Netty高性能网络框架进行设计与开发,以此来开发一个车联网监控平台,获取车辆实时位置,实现车辆运动状态的实时监测。
关键词
北斗/GPS;车载终端;Hbase;MySQL;Netty高性能网络框架
中图分类号: TP277 文献标识码: A
DOI:10.19694/j.cnki.issn2095-2457 . 2020 . 08 . 40
0 引言
伴随着“互联网+”热潮的不断推动,传统行业正在慢慢向信息化转型升级,使得“互联网+”这股热潮不断的和各个行业结合,数据种类也日益增多,更进一步地促进人们的生产生活。在现代化车辆管理中,通过采用4G智能车载终端,实现远程车辆的智能动态监控和管理[1]。文献[2]与文献[3]提出了一种基于车联网的数据采集与监控系统,实现了对汽车的监控和管理。文献[4]提出了一种车联网信息采集终端,可以采集和上传车辆视频信息和设备信息。文献[5]确保系统的稳定和安全,采用基于北斗的车辆远程监控系统的设计与实现,选择MINA作为网络传输框架,实现了车辆监控和轨迹查询功能。文献[6]采用大数据技术,提出了车辆监控系统的优化与实现,依托大数据处理技术,将远程车辆实时上传的运行数据存储与分析,大大提高了监控系统的性能。文献[7]提出了一种基于车联网的GPS导航系统,利用嵌入式开发技术、GPS卫星定位技术、GPRS无线通信技术,实现了车辆定位查询、语音导航等功能。文献[8]与文献[9]提出基于Netty的终端通信系统设计,采用Netty的异步非阻塞、基于事件驱动等特性设计开发了高性能网络通信应用程序,提高了终端通信系统的并发处理能力。
综上所述,智能車载终端采用北斗/GPS双模卫星定位技术,数据中心Hbase数据库用来存储车辆上传的海量数据,采用Netty高性能网络框架设计终端通信服务系统,车联网监控平台采用MySQL存储车辆的基本信息,通过调用百度地图在页面实时显示车辆经纬度、车速、地址等等。
1 系统功能与总体结构设计
1.1 系统功能
车联网远程监控系统能够实时采集和显示车辆行驶过程中的数据,可以有效监控车辆的经纬度、车速、地址,并且在车联网远程监控平台上显示出来。为了实现对车辆的远程监控,远程监控系统应具备以下几个部分:
(1)数据的获取与远程传输功能:该系统可以远程采集车辆运行过程中的实时数据,并且能够通过4G通信技术来接收终端通信服务器下发的控制指令,实现固件更新、报警等功能。
(2)数据存储与分析功能:系统能够实现对车辆实时运行数据的存储与分析。由于车辆每隔几秒钟就会上传数据到通信服务器,这样就会产生大量的运行数据,因此系统应该具有大数据分析与处理能力,选择一个高性能、高可用的网络框架显得尤为重要。
(3)数据显示功能:系统能够提供对存储数据的图表显示功能,能够提供一个大数据展示页面,实时地动态显示不同区域车辆的信息,它可以调用百度地图来显示车辆的具体位置和历史轨迹。
1.2 系统架构设计
为了实现车联网远程监控系统的相关功能,将远程监控系统分为车载终端、数据中心与远程客户端三部分。车载终端实时获取车辆经纬度、车速、地址等数据,将收集到的数据上传到数据中心的通信服务器,通信服务器存储与分析车辆上传的数据。远程客户端通过浏览器发送HTTP请求来获取数据中心里面存储的数据,然后将响应的数据显示在页面中。系统架构设计,如图1所示。
2 系统设计
2.1 车载终端
车载终端采用模块化设计,具体包括微处理器模块、电源模块、4G无线通信模块、北斗/GPS双模卫星定位模块、CAN总线接口模块。微处理器模块能够采集各模块传输的数据和解析控制命令,以及提供各模块的初始化配置。北斗/GPS双模卫星定位模块可以实时采集运行车辆的经纬度、车速、地址,并通过4G无线通信模块将采集的数据上传到数据中心的通信服务器。4G无线通信模块也可以接受通信服务器下发的控制指令,并将指令传递给微处理器模块。
2.2 数据中心
MySQL是目前最流行的关系数据库管理系统,它将数据信息存储在行级的不同表中,这样不仅提高了速度,还增加了可维护性与灵活性。然而,随着数据量的增加,MySQL的查询效率也随之将低,因此,我们选用MySQL数据库来存储车辆的一些基本信息,例如车牌号、车身颜色、终端号、终端类型、创建时间等信息。Hbase是一个NoSQL数据库,它的列可以动态增减,如果列为空,则不存储数据,节省了一定的存储空间。HBase使用高可用性的HDFS文件系统,这样可以保证其具有较高的容错性,HBase作为MapReduce作业数据源和数据接收器,可以提供快速随机访问海量结构化数据。因此,我们采用HBase数据库来保存车载终端上传的大量运行数据,而且面对庞大的数据,它的查询效率比较高。Netty是一个NIO框架,它的应用场景是能够与服务器通信,它的底层协议是TCP协议,面向客户端的高并发应用,或者是大量数据持续传输的应用[10-11]。Netty的并发处理能力主要体现在以下两点:首先,Netty利用Java语言的多线程特性来实现更多的并发连接请求;其次,Netty使用selector选择器来实现多路复用,一个Selector通常由一个线程处理,但具体实施可以使用多个线程。
2.3 远程客户端
2.3.1 数据库设计
车联网监控平台采用MySQL关系型数据库保存一下基本信息,而车辆的实时数据通过Hbase数据库读取并显示在页面中。其中,MySQL数据库具体包括用户信息表、角色表、车辆配置表、车载终端版本表以及平台操作日志表。
2.3.2 功能实现
用户通过浏览器访问车联网监控平台,平台用户由管理员设置账号和密码,登录车联网监控平台时,用户需要输入用户名和密码,为了增加平台的安全性,用户还需要输入正确的验证码,登录成功后便可以进入车联网监控平台。用户登录成功之后,可以通过浏览器访问车联网监控平台的主要功能,通过调用百度地图在页面中实时显示车辆的具体位置(经纬度信息),点击地图上的红色标记点会弹出一个信息框,信息框具体展示车辆的车牌号、终端号、车速、经纬度以及详细地址,支持根据车牌号和终端号查询车辆信息。
3 结论
本文设计并实现了车联网远程监控系统,该系统由车载终端、数据中心和远程客户端组成。智能车载终端采用北斗/GPS双模卫星定位技术,数据中心Hbase数据库用来存储车辆上传的海量数据,采用Netty高性能网络框架设计终端通信服务系统,车联网监控平台采用MySQL存储车辆的基本信息,车辆的实时数据通过Hbase数据库读取并显示在页面中。该系统通过车载终端采集的车辆实时运行数据上传至数据中心,数据中心存储并分析车辆上传的数据,然后用户可以通过浏览器实时查看车辆经纬度、车速、地址等数据。最后,对系统功能和性能测试,系统各个模块能够正常工作,适应了车载终端的远程升级需要,该系统可以实现对车辆运行状态的实时监控,具有良好的实用性和可靠性。
参考文献
[1]BOJAN B, MARINA Z. Business Process Re-Engineering of a Maritime Car Terminal: Changing from Inbound to Outbound Intermodal Node in Finished Vehicle Logistics (FVL)[J].Polish Maritime Research, 2018: 54-61.
[2]刘霖筠.基于车联网的新能源汽车数据采集系统开发[D].北京:北京交通大学,2017.
[3]耿黄政,郭雄.一种新能源汽车远程监测平台设计[J].科技与创新,2019(11):53-55.
[4]张宇,赵利,蔡成林,等.基于4G的车联网信息采集终端的设计与实现[J].现代计算机,2019(20):70-72.
[5]宋勇.某于北斗的车辆监控系统的设计与实现[D].成都:电子科技大学,2012.
[6]曾宪宇.基于大数据技术的车辆监控系统的优化与实现[D].长春:吉林大学,2016.
[7]安恒亮.基于車联网的车载终端中GPS导航系统的研究和设计[D].西安:长安大学,2016.
[8]顾振德,刘子辰,龙隆等.基于Netty的IoT终端通信服务系统设计[J].计算机应用于软件,2019(4):135-139.
[9]张艳军,王剑,叶晓平,等.基于Netty框架的高性能RPC通信系统的设计与实现[J].工业控制计算机,2016(5):11-15.
[10]刘志博,邓中亮.基于 MINA 的定位终端通信设计与实现[J].软件,2017(1):1-5.
[11]厉美霞.基于JT_T808协议的车辆监控系统的设计与优化[D].长沙:湖南大学,2017.