项目描述:
智慧环卫IOT项目,该项目为东莞市东城智慧环卫项目,主要的业务流程如下:由硬件服务供应商提供的设备信息(主要分车辆和除臭设备),通过MQTT协议将除臭设备PLC和车载设备的实时数据(如温度、压力、异常气体、车速、经纬度等)上传到平台,本平台对其进行监控和统计。本项目拥有的模块包括视频监控、车辆管理、司机管理、站点管理、实时监控、设备告警、报表管理、用户管理、权限管理等。
项目职责:
底层数据对接
搭建消息接收器adapter主服务: 该服务用于处理设备上传数据,写入iotdb或mysql
搭建车辆设备协议解析器jt808-adapter: 该服务主要对车辆数据进行协议解析(netty),并将解析完成数据丢到emq
完成对设备自动注册于发现,实现车辆与除臭设备在离线等
视频监控:
参与视频直播的后台开发工作: 通过ffmpeg将rtsp转码成rtmp并推流到nginx-rtmp,前端选择对用的rtmp播放器进行播放
参与历史视频模块开发: 将历史视频转化成mp4格式,通过websoket实时推送给前端播放(目前还在迭代中)
业务模块:
负责地图监控、大屏展示等:这些数据展示需要一定的实时性,因此采用websocket进行推送。
设备告警: 设备告警分为实时告警和历史告警!区别是实时告警为用户未处理的告警!当设备的某个参数超过某个阈值时,触发实时告警,当用户处理完成,变为历史告警
报表管理:主要负责一部分报表的实现,通常采用定时任务异步统计数据来实现报表功能
技术描述:
1、消费端使用消息中间件EMQ处理底层PLC或车载设备数据的推送,使用了共享订阅和负载均衡来抗衡设备数据上传的并发;
2、设备在离线使用redis做缓存,防止实时数据频繁访问数据库,照成系统崩溃
3、采用新型时序数据库IOTDB来高效存储时序的数据;
4、使用WebSocket实现大屏实时数据的监控