技术框架:springCloud + springBoot + Maven + mybatis
系统介绍:主要是车、TBOX的交互。核心功能为车辆远控、TBOX注册、TBOX登录、OTA升级、车辆行程、驾评等,整个项目主要涉及三个部分,TSP平台、APP、GATEWAY;
1. 东风小康APP:旨在为车主提供车联网服务,比如远控功能,可远程操作开启/关闭发动机,解锁/上锁车窗等功能;
2. 东风小康TSP平台:旨在对客户、车辆、TBOX、SIM卡等信息的管理,包括可对TBOX进行OTA升级等一系列的功能模块;
3. GATEWAY:主要是用于TBOX的交互,比如,我们可以采集TBOX的 CAN数据信息;采集车辆点火熄火信息;采集TBOX的报警信息(防盗,异动,碰撞等);通过TBOX注册,登录,记录TBOX、SIM、VIN的绑定关系等;
主要工作:
1. 负责提供APP远控接口(APP通过MQ将远控指令下发至网关,网关组装成TBOX可识别的probuf协议,下发至TBOX端,TBOX端在60s之内返回给网关远控的结果,网关将结果记录并返回给APP端显示);
2. 负责APP的行程(主要是将成对的点火熄火匹配,形成行程,再将这段行程中的GPS信息描绘成行程轨迹),具体实现逻辑可当面表述;
3. 负责APP的驾评(主要对每一段行程进行某些行为的统计,比如每段行程中急加速和急减速的次数,未系安全带的次数等);
4. 负责TSP的OTA升级(先上传升级包;然后添加升级任务,选择要升级的设备和升级包;接着将升级任务下发至网关,网关经过一系列逻辑判断,下发至TBOX;随后TBOX经过对升级包的检验等操作返回至网关升级状态;最后网关再将升级结果返回至TSP平台);
5. 负责TSP数据可视化(主要是展示APP的活跃用户数,车辆的活跃数等基础指标,以及操作行为的指标,比如发动机指令,寻车指令等。这些数据基本都是来源于APP埋点数据,以及Tbox上报的车辆状态数据,通过ETL,将最终的数据写入至mysql),ETL的过程是:APP埋点,TBOX将数据分为不同的topic写入kafka,大数据通过flume将kafka的数据写入HDFS中,并通过crontab定时执行spark任务,spark从HDFS中读取到数据之后进行清洗,并写入hive和mysql中。