APP下载

基于Web 技术的新能源汽车状态监测平台开发

2022-11-01赵宇航龚元明

农业装备与车辆工程 2022年10期
关键词:服务器端车载远程

赵宇航,龚元明

(201620 上海市 上海工程技术大学 机械与汽车工程学院)

0 引言

随着新能源汽车保有量的持续增长,老旧车辆不断增多,事故频率明显提高,新能源汽车的安全性、可靠性也被高度重视。目前新能源汽车远程监测平台主要集中在数据的收集与简单的故障报警功能,数据处理的实时性等方面还有待提高。通过对新能源汽车运行数据的监测,可以科学调整新能源汽车行业的支持政策。

本文提出一种基于Web 技术的新能源汽车远程监测系统。车载终端以STM32F407ZGT6 为主控制器,利用CAN 总线网络、以太网技术、GPS 定位技术、GPRS 无线通信技术,将汽车各参数实时传输到云服务器端并进行数据解码与存储,远程监测平台调取云服务器端数据进行实时监测,通过人机界面显示实时诊断结果,帮助车主与企业全面了解车辆运行情况以及对车辆精准定位。通过GPS定位功能快速定位车辆地点,通过大数据判断新能源汽车易损部件,帮助新能源汽车生产商提高产品质量,提供设备管理功能可以查看设备基本信息及历史记录。

1 远程监测平台设计

1.1 整体架构

该平台由车载终端模块、云服务器端、远程监测平台3 部分组成。车载终端模块集成了GPS模块、GPRS 模块以及稳压电源模块。数据采集部分是由车载终端通过CAN 总线采集并读取汽车各项参数,如车速、累计里程、电池电压、电流、温度、SOC 等数据;数据传输部分通过GPRS 外置模块,并根据车载终端与云服务器端的通信协议,实现车载终端和云服务器之间的双向通信,起到及时、快速、准确传输数据的作用;数据处理部分根据协议对数据传输部分传来的数据进行解析,并保存至MySQL 数据库进行存储及管理;远程监测平台定时调用数据库中数据并显示在界面上,以达到实时更新的目的。

1.2 功能设计

远程监测平台的服务器与客户端采用B/S 的架构模式,服务器端负责接受并解析车载终端模块发送过来的数据,再将数据保存至数据库中,并且负责根据客户端请求,将响应结果发送至请求端。客户端通过人机界面将车辆实时信息呈现给用户并提供登录与注册、权限管理、车辆管理、通信管理、实时数据显示、地图显示和系统设置等功能。

2 车载终端

车载终端由主控芯片STM32F407ZGT6、GPS定位模块、GPRS 无线通信模块、CAN 功能模块、电源模块组成,可以实现数据采集、数据上传、GPS 定位等功能,是一种典型的嵌入式设备。硬件整体结构图如图1 所示。

主控芯片是车载终端中最重要的一部分,采用 STM32F407ZGT6 系列的微处理器,具有2 个CAN2.0 的接口,能够实现多路的CAN 通信。4 个高速USART 接口,能够实现主控制器和GPRS 无线通信模块之间的串行通信。1 个10 M/100 M 的以太网控制器,能够实现以太网通讯。拥有的I/O 口达到140 个,有利于后期功能的扩展。主控制器内部集成有2 路CAN 控制器,所以要实现CAN 通信,还需要一款CAN 收发器,本文选用的是英飞凌公司的 TLE6250GV33 芯片。

CAN 通信模块承担着车内网络数据与外界交换的任务,选用的是具有高速CAN 收发功能的TLE6250GV33 芯片,该芯片对高速差分模式下的数据传输进行优化,适用于汽车和工业等领域,具有传输速率优异、灵活设置外部供电、优异的EMC(电磁兼容)性能、较宽的温度范围和过热保护等优点。

以太网模块选用微芯科技的LAN8720A 芯片,该芯片自带的 RMII 接口和2 对数据差分线接口分别连接着以太网控制器IO 口和RJ45 的网线接口,起到了电平转换和数据传输的作用,具有传输速率高、支持全双工与半双工模式、支持低功耗的电源管理架构的优点。

GPRS 无线通信模块和GPS 卫星定位模块选用了国内芯讯通无线科技的一款集成GPS 导航技术的SIM908 模块。SIM908 是集成GPRS 与GPS 功能为一体的开发板,提供GPS 实时定位功能。通信过程是,首先CAN 收发器接收到的车内数据,再经过主控制器内部的协议转换后,最后通过GPRS将数据发送到互联网服务器上,实现远程定位监测功能,具有良好的稳定性和可靠性;

电源模块给各个模块提供稳定的电流供电,并对数据采集功能的实现起关键作用。电源模块的设计是输入端为 24 V 直流电,再在电源输入接口处加了一个PMOS 管,用于防止反接,保护整个后级电路。整个电源模块有3 个降压稳定芯片,分别为3.3,5,12 V。5 V 和12 V 采用的是 LM2596 系列稳压器,能够以出色的线路和负载调节率驱动3 A 负载,3.3 V 采用的是LM1117 系列稳压器,为部分模块提供稳定低电压。

3 云服务器

3.1 概述及分类

云服务器作为车载终端和监测平台的通信媒介,不仅负责接收解析车载终端数据,而且负责处理监测平台请求,并将响应结果发送至请求端。其中,云服务器又分为业务服务器与web 服务器,业务服务器主要处理数据接收、数据处理和数据保存,web 服务器主要负责远程监测平台的数据调用与显示,以及根据汽车位置数据匹配地图,并且当管理人员登录监测平台时能查看到汽车所在地图位置和所有运行信息。

业务服务器设计是使用Visual Studio 2015 为开发工具,基于C#语言编写的Windows 窗体应用程序,软件操作便捷,可以实时显示接收到的车载设备采集的汽车运动数据、实时位置数据、整车异常信息等并存储于MySQL 数据库中。

web服务器端采用 IntelliJ IDEA 集成开发环境,基于java 语言,采用前后端分离方式,后端使用Spring Boot 架构,导入Mybatis-Plus 依赖。其中,Spring Boot 不仅继承了 Spring 框架原有的优秀特性,而且还通过简化设置来进一步简化了Spring 应用的整个搭建和开发过程。Mybatis-Plus 是Mybatis的增强工具,自动封装CRUD 方法,提高效率,简化操作,最后,将后端的代码打包并部署在云服务器上。

3.1.1 业务服务器

业务服务器主要是指对车载终端发送的数据进行解析与保存的过程。云服务器基于 TCP/IP 协议,采用C/S 结构设计与车载终端实现长连接,相比于 UDP 通信,TCP 传输数据更加可靠,传输数据之前,车载设备和业务服务器端应建立连接,并以字节流的数据形式在网络上传输。然后通过TCP Socket 通信方式实现网络进程之间的通信,并利用自定义协议格式将车载设备数据通过GPRS 模块发送至云服务器。Socket 通信流程过程,如图 2 所示。

3.1.2 Web 服务器

Web 服务器主要是指监测平台与云服务器数据交互与处理的过程。云端服务器与远程客户端采用B/S 架构,其中服务端是在云端服务器上嵌入Web 服务器来实现的,并将用户浏览器作为客户端使用,并通过JSON 格式的数据实现两者的数据交互。在通信过程中,线程使用HTTP 协议中的Http URLConnection 方法进行请求/响应,云服务器收到请求后,将请求数据封装成JSON 格式,通过HTTP 协议响应到远程监测平台,再对接收到的JSON 格式的数据进行解析,将数据显示在远程监测平台界面上。

3.2 数据库设计

数据库是为了存储车载终端采集汽车运行数据、实时的位置数据等,便于后期完成增删改查等操作,并且由于MySQL 数据库具有开源、操作方便、体积小、可靠性高、支持多线程等优点,所以选择采用 MySQL 关系型数据库系统,版本为8.0。此外,为了高效管理车载终端数据,在数据库中建立了用户账户表、角色权限关系表、用户账户权限关系表、设备信息表和历史记录表。

设备信息表即车载设备信息表,包括设备号、车速、油门开度、刹车开度、电机转速、电机温度、电池总电压、电池总电流等汽车运行数据。用户信息表包括用户名、邮箱、手机号、密码、注册时间、账号状态,用于方便管理用户登录信息,保证信息安全性。用户信息表结构见表1。

表1 用户信息表Tab.1 User information

定位信息表主要包含设备号、经度、纬度、车速等信息,方便用户进行车辆状态查询。车辆运行数据可实时上传至服务器并存储到数据库,用于动态追踪车辆的行车轨迹路线。定位信息表结构见表2。

表2 定位信息表Tab.2 Location information

4 远程监测平台

远程监测平台采用前后端分离方式,前端使用Vue+Element-UI 框架。Vue 是一套用于构建用户界面的渐进式框架,减少不必要的DOM 操作,提高渲染效率,而且方便与第三方库或既有项目整合。Element-UI 是一套UI 组件库,使开发者减少样式设计开发时间,专心于平台功能实现。

远程监测平台的操作流程是,首先通过注册与登录进入监测系统主机界面,然后通过与web 服务器通信,获取汽车的状态数据与地理位置,实现远程监测功能。远程监测平台功能如下:

(1)登录与注册

登录模块由用户名、密码构成,注册功能由用户名、密码、手机号、邮箱、车牌号构成。

(2)权限管理

监测平台分为管理员用户与普通用户,管理员账号可以查看所有车辆的数据、普通用户只可以查看自己车辆的数据。管理员可以分配用户的使用权限、可查看的页面。

(3)车辆管理

录入车主用户名、电话、邮箱、车牌号、汽车型号等信息,后期手机号修改以及车牌号添加与修改,需要管理员手动维护。

(4)通信管理

车载终端定时将数据传输至服务器端,服务器端将数据解析并保存至数据库。

(5)实时数据显示

监测平台实时数据显示界面可以显示车速、累计里程、地理位置、电池电压、电流、温度、SOC等信息。实时存储并显示在电子地图上。

(6)地图显示

监测平台的地图显示界面可以实时显示汽车位置,并可以通过点击显示车辆实时数据。

(7)系统设置

提供系统使用帮助、界面样式选择。

5 平台测试

5.1 通信延迟测试

首先通过单台多次测试验证系统的可行性,结果如图3 所示;其次多台客户端测试验证其在多设备条件下运行情况,结果如图4 所示。

5.2 数据交互测试

车辆管理模块进行增删改查测试,完成对数据的修改操作。数据显示模块和地图显示模块进行实时数据测试,按照预先设计好的1 000 ms 延迟,实现了对数据的刷新;同时定位数据也能以标注的方式在地图上显示。

由上述测试可得,本文设计的车辆监测系统达到测试要求,并且满足实际使用需求,实现了设计目标。

6 结语

本文设计并实现了基于Web 的新能源汽车监测平台,该平台由登录与注册、权限管理、车辆管理、通信管理、实时数据显示、地图显示和系统设置7 大功能模块组成,并通过验证,确定了该系统的准确性、可靠性、稳定性,未来还可以为厂商技术升级提供数据支持以及更好推动新能源汽车的发展。

猜你喜欢

服务器端车载远程
一种车载可折叠宿营住房
远程求助
远程工作狂综合征
Linux环境下基于Socket的数据传输软件设计
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
奔驰S级48V车载电气系统(下)
远程诈骗
SA2型76毫米车载高炮多视图
基于Qt的安全即时通讯软件服务器端设计
基于Qt的网络聊天软件服务器端设计