MES机联网4:文档资料
目录信息
MQ接入文档
1、建立连接
mqtt连接地址: 192.168.0.138
mqtt端口: 1883
mqtt用户名:admin
mqtt密码:123456
2、消息主题
2.1 上行topic(设备->平台)
A 服务端订阅的topic(监听所有上行数据),规则 M2M/up/#
B 设备发布的topic,规则 M2M/up/{mac}
2.2 下行topic(平台->设备)
A 设备端订阅的topic,规则 M2M/down/{mac}
B 服务端发布的topic,规则 M2M/down/{mac}
M2M/up/84F3EBB452BB
M2M/down/84F3EBB452BB
3、消息模板定义
名称 |
说明 |
类型 |
备注 |
c |
【code】简写 |
int32 |
通讯指令 |
m |
【message】简写 |
string |
通信内容 |
4、 通讯指令说明
值 |
说明 |
发起 |
1 |
设备发起OTA升级 |
C->S |
2 |
服务端发起OTA升级 |
S->C |
3 |
三色灯变化 |
C->S |
4 |
计数(产量) |
C->S |
5 |
完工(节拍、合格数、不合格数) |
C->S |
6 |
重置计数 |
S->C |
5、消息内容定义
5.1 设备主动升级
设备每次开机或重启后向服务器发送版本消息并携带唯一身份标识,服务器根据该标识判断是否进行OTA升级并将结果告知设备
5.1.1 设备上行报文
名称 |
说明 |
类型 |
备注 |
deviceid |
设备Id |
string |
YD-ZP709 |
mcuver |
设备版本 |
string |
1.0.0 |
mcutype |
设备类型 |
int |
|
报文示例:
{
"c": 1,
"m": {
"deviceid": "YD-ZP709",
"mcuver": "1.0.0",
"mcutype": 1000
}
}
5.1.2 服务器下行报文
名称 |
说明 |
类型 |
备注 |
errcode |
错误码 |
int |
0 : 无 1:查无版本信息 2:版本比对失败 |
url |
升级包网址 |
string |
|
报文示例:
{
"c": 1,
"m": {
"errcode": 0,
"url": "http://192.168.0.138:8601/test.bin"
}
}
5.2 服务器远程升级
需要更新固件时,服务器可远程发送指令告知设备升级。设备收到消息后,走设备主动升级流程
5.2.1 服务器下行报文
{"c":2,"m":""}
5.3 三色灯变化
设备状态变化后主动上报
5.3.1 设备上行报文
名称 |
说明 |
类型 |
备注 |
workshopid |
车间id |
string |
|
lineid |
产线id |
string |
|
deviceid |
设备id |
string |
|
currentstate |
当前三色灯颜色 |
string |
000关灯,001绿灯,010黄灯,100红灯 |
oldstate |
上一个三色灯颜色 |
string |
|
periodsec |
持续时长 |
int |
单位秒 |
报文示例:
{
"c": 3,
"m": {
"workshopid": "WS001",
"lineid": "DZ01",
"deviceid": "YD-ZP709",
"currentstate": "001",
"oldstate": "000",
"starttime": "2025-02-21T00:00:00",
"endtime": "2025-02-21T00:00:30",
"periodsec": 30
}
}
5.4 计数
IO计数为高电平时主动上报
5.4.1 设备上行报文
名称 |
说明 |
类型 |
备注 |
workshopid |
车间id |
string |
|
lineid |
产线id |
string |
|
deviceid |
设备id |
string |
|
productqty |
产量 |
int |
|
报文示例:
{
"c": 4,
"m": {
"workshopid": "WS001",
"lineid": "DZ01",
"deviceid": "YD-ZP709",
"productqty": 1
}
}
5.5 完工
IO结束(合格/不合格)为高电平时主动上报
5.5.1 设备上行报文
名称 |
说明 |
类型 |
备注 |
workshopid |
车间id |
string |
|
lineid |
产线id |
string |
|
deviceid |
设备id |
string |
|
productqty |
产量 |
int |
|
pitchtime |
节拍 |
int |
|
passqty |
合格数 |
int |
|
ngqty |
不合格数 |
int |
|
报文示例:
{
"c": 5,
"m": {
"workshopid": "WS001",
"lineid": "DZ01",
"deviceid": "YD-ZP709",
"pitchtime": 30,
"productqty": 1,
"passqty": 1,
"ngqty": 0
}
}
5.6 服务器重置计数
复位计数信息,包括,产量,合格数,不合格数,节拍
5.6.1 服务器下行报文
{"c":6,"m":""}
数据库设计
数据库名称factory
mst_ota_version OTA版本表 |
||
字段名 |
类型 |
说明 |
Id |
bigint |
主键、自增Id |
ota_name |
varchar(40) |
ota名称 |
ota_version |
varchar(40) |
ota版本号 |
ota_type |
int |
ota类型 |
ota_filename |
varchar(40) |
ota升级文件名 |
remark |
varchar(40) |
备注 |
create_id |
bigint |
创建者ID |
mst_workshop_info车间表 |
||
字段名 |
类型 |
说明 |
Id |
bigint |
主键、自增Id |
workshop_id |
varchar(40) |
车间ID |
workshop_name |
varchar(40) |
车间名称 |
remark |
varchar(40) |
备注 |
create_id |
bigint |
创建者ID |
mst_line_info产线表 |
||
字段名 |
类型 |
说明 |
Id |
bigint |
主键、自增Id |
line_id |
varchar(40) |
产线ID |
line_name |
varchar(40) |
产线名称 |
workshop_id |
varchar(40) |
车间ID |
remark |
varchar(40) |
备注 |
create_id |
bigint |
创建者ID |
mst_device_info 设备表 |
||
字段名 |
类型 |
说明 |
Id |
bigint |
主键、自增Id |
device_id |
varchar(40) |
设备ID
|
device_name |
varchar(40) |
设备名称
|
workshop_id |
varchar(40) |
车间ID |
line_id |
varchar(40) |
产线ID
|
status |
varchar(40) |
当前状态 |
product_qty |
int |
产量
|
pitch_time |
int |
节拍
|
pass_qty |
int |
合格数
|
ng_qty |
int |
不合格数 |
mcu_mac |
varchar(40) |
设备MAC地址 |
mcu_version |
varchar(40) |
设备固件版本 |
mcu_online_time |
datetime |
设备上线时间 |
remark |
varchar(40) |
备注 |
create_id |
bigint |
创建者ID |
mst_device_status_history 设备状态历史表 |
||
字段名 |
类型 |
说明 |
Id |
bigint |
主键、自增Id |
workshop_id |
varchar(40) |
车间ID |
line_id |
varchar(40) |
产线ID |
device_id |
varchar(40) |
设备ID
|
status |
varchar(40) |
状态 |
start_datetime |
datetime |
开始时间 |
end_datetime |
datetime |
结束时间 |
period_sec |
int |
持续时间(秒数) |
mst_device_process_data 完工记录表 |
||
字段名 |
类型 |
说明 |
Id |
bigint |
主键、自增Id |
workshop_id |
varchar(40) |
车间ID |
line_id |
varchar(40) |
产线ID |
device_id |
varchar(40) |
设备ID
|
device_name |
varchar(40) |
设备名称
|
product_qty |
int |
产量
|
pitch_time |
int |
节拍
|
pass_qty |
int |
合格数
|
ng_qty |
int |
不合格数 |
record_datetime |
datetime |
记录时间 |
mst_device_2_user 设备用户关联表 |
||
字段名 |
类型 |
说明 |
Id |
bigint |
主键、自增Id |
device_id |
string |
设备ID
|
user_id |
bigint |
用户自增ID |