以下为《隧道管理平台与隧道控制器MQTT通信协议(1)》的无排版文字预览,完整格式请下载
下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。
目的
本流程规定了隧道管理平台与隧道集中控制器之间的相关业务流程,明确两端之间的请求和响应。
版本记录
日期
版本
描述
2019-8-07
V1.0
初始版本
2020-4-
搭建mosquitto环境
本文不在此说明,具体可以参考官网:http://mosquitto.org/
术语定义:
隧道管理平台:提供包括设备接入、设备信息采集、设备状态监测、设备管理的后台支撑系统。采用开源的Mosquitto 作为broker,以下简称MQTT
隧道集中控制器:安装在隧道所中,提供承上启下的通信功能,业务管理功能,用户交互功能。
Mqtt简介
MQTT是IBM开发的一个即时通讯协议,面向移动物联网的轻量级连接传输协议。主要的特点:
A节约网络流量
B断线自动重连
C解决网络粘包问题
D异步IO通讯框架
隧道集中控制器为客户端角色,隧道集中控制器需要事先定义一个全局唯一的设备ID,登陆服务器时提供的session id(设备ID)必须保证全局唯一,否则会被服务器踢掉。
参数设置
参数名称
功能描述
服务器端
设备端
Host:Port
ip地址:端口
42.159.197.200:1883
42.159.197.200:1883
User:Password
用户名:***:password246
TianheUser:password123
clientID
客户唯一标识
唯一ID
设备ID
Publish topic
发布主题
download/allState/callAll (总召唤)
download/control/ctrlAddr
(设备控制指令)
upload/allState/ctrlAddr
(设备状态)
upload/state/ctrlAddr
(隧道集中控制器 上线/离线状态)
Subscribe topic
订阅主题
upload/allState/#
(设备状态)
upload/switchState/change (设备开关状态变化通知)
upload/state/#
(隧道集中控制器 上线/离线状态)
download/allState/callAll (总召唤)
download/control/ctrlAddr(设备控制)
Qos
服务质量
1
1
Heart
心跳间隔时间
5s
5s
HA
高可用选项
无
开启
Persistent
持久化选项
无
开启
LWT
遗愿
无
开启
Clean session
是否清除会话
False
True
SSL
密钥,用于加密
False
False
Connection timeout
连接超时时间
15s
无要求
帧结构与通讯流程
帧结构定义
数据类型使用json进行传输,json数据类型使用嵌套的方式,第一层message表示所有message共有的属性,第二层message代表具体功能的个性属性。
在序列化时要将第二层的message序列化为byte数组赋值给第一层的bean属性,同时给type赋对应的类型。
在反序列化时要先反序列化第一层message得到type,通过MessageType再进行第二层的反序列化得到相应的 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 1-信号灯红灯亮
2-信号灯黄某某
3-信号灯绿灯亮
4-信号灯转向灯亮
5
车道指示器
1-车道指示器正向通行
2-车道指示器反向通行
0-车道指示器禁止通行
6
诱导灯
1-诱导灯闪烁
2-诱导灯全亮
3-诱导灯普通亮
0-诱导灯关闭
7
情报板
情报板内容发布
情报板内容获取
13
隧道广播
广播接通
广播挂断
录音播放
14
消防水泵
1-消防水泵开
0-消防水泵关
示例:
{
"ctrlAddr":"***01" ,//XX邮编+0001
"canIndex":"1",
"controlType":"1"
}
[文章尾部最后300字内容到此结束,中间部分内容请查看底下的图片预览]请点击下方选择您需要的文档下载。
以上为《隧道管理平台与隧道控制器MQTT通信协议(1)》的无排版文字预览,完整格式请下载
下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。