cbd.md 21 KB

虫情测报灯http协议

通信描述

对接采用 HTTP 协议,由接收方写接口来接收 http post 数据(需从 request 的 body (字节流类型)中取数据,取到之后进行 json 解析)。

对接说明

设备数据、图片数据说明

  1. 设备数据默认是 30 分钟上传一次数据,图片是在设备工作时间段内 20 分钟上传一次。如果设备处于温控、雨控状态,不拍照但数据正常上传。
  2. 温控、雨控:温控是为了冬季保护电池;雨控是为了防止设备进水而设计,发生时设备进入待机不再工作和拍照。
  3. 图片数据中的为图片链接,需要下载保存到本地。建议不要直接保存图片链接到数据库,以防失效,下载后的链接存入数据库。
  4. 设备数据包含:设备号、SIM 卡号、境温湿度、工作状态、经纬度、电压等。
  5. 图片数据包含:不识别(原图链接、设备号),识别(设备号、原图链接、识别后的图片链接、害虫名称和数量)。
  6. 设备收集时间+加热时间 等于设备拍照时间。
  7. 设备数据格式不可变,如有需求请联系销售经理。
  8. 接口安全问题:可以针对传输方 IP 做限制,不是传输方的 IP 不让其调用接口。
  9. 接口设置是我们这边进行配置,您只需要把接口发给对接人员。

设备对接说明

  1. 图片和设备数据为相互独立的两种数据。
  2. 需要提供两个接口接收数据(一个用于接收数据,一个用于接收图片)。
  3. 如果对接完成后设备未收到数据与图片,请先检查所提供的接口是否有问题,再联系对接人员。
  4. 先进行接口测试,没问题后才能发正式数据。
  5. 设备上线后会自动发送 data 数据。
  6. 接口设置是我们这边进行配置,您只需要把接口发给对接人员。

设备数据报文结构

{
  "topic": "/yfkj/cbd/pub/867435052203452",
  "payload": {
    "cmd": "data",
    "ext": {
      "hst": "100",
      "ds": "1",
      "gs": "0",
      "dver": "1.F.4(144)HK",
      "hs": "0",
      "shake_sec": "1",
      "tpl": "5",
      "dat_f": "30",
      "tph": "70",
      "lat": "037.0167465",
      "st": "20",
      "tt": "8",
      "lng": "122.0813903",
      "vbat": "26.103",
      "imei": "867435052203452",
      "htim": "10",
      "collt": "10",
      "et": "0",
      "iccid": "89860491102192155079",
      "dtype": "3",
      "batStatus": "0",
      "dnds": "0",
      "hrt": "31",
      "proj": "DCCBD-2_HK",
      "gps": "2",
      "ts": "1",
      "ws": "0",
      "vs": "144",
      "shake": "1",
      "current": "0.0",
      "ah": "72.0",
      "at": "29.0",
      "stamp": "20230725183835",
      "lamp": "0",
      "rps": "0",
      "upds": "0",
      "lps": "1",
      "tps": "0",
      "csq": "20"
    }
  }
}

字段说明

属性字段 含义或表示的内容
imei 通讯板唯一 ID
iccid 物联网卡的 iccid 号,用于查询物联网卡的套餐、流量信息等
csq 信号强度
lat 纬度
lng 经度
dtype 设备类型 (测报灯设备类型为 3)
ws 工作状态:0: 待机,1: 工作
dver 设备固件版本
vbat 电压
st 时控开始时间:0-23 单位(h),当设备设置以时控模式开始工作时,该字段为开始工作时间
et 时控结束时间:0-23 单位(h),当设备设置以时控模式开始工作时,该字段为结束工作时间
tps 温控:0: 正常,1: 保护 (设备进入温控状态)
lps 光控:0: 正常,1: 保护 (检测到白天,光控模式下白天不工作,所以保护)
rps 雨控:0: 正常,1: 保护 (设备进入雨控状态时,是不进入工作拍照的)
collt 收集时间:1-30 单位(分钟)
current 功率:单位(mA)
hrt 加热仓实时温度(℃)
hst 加热仓设定温度:70-200(℃)
at 环境温度(℃)
ah 环境湿度(℃)
stamp 时间 20180301211805(时间字符串: 2018/03/01/21:18:05)
dat_f 数据上传时间间隔,单位:分钟 (默认上传时间为 20 分钟)
turnon 开机次数,每次重启加 1
htim 加热时间:1-30 分钟
batStatus 电压状态 0: 正常 1: 欠压
tt 光控定时时间 1~10 (当设备处于光控状态时,该字段为设备工作时间)
shake 震动开关: 0: 关,1: 开
shake_sec 震动时间:1~20 (步长:100ms)
ts 定时模式: 0: 光控,1: 时控 (设备工作状态,光控默认工作时间为天黑后8小时,时控可以设置工作时间范围)
upds 上仓门状态 1: 打开,0: 关闭
dnds 下仓门状态 1: 打开,0: 关闭
lamp 灯管/工作状态 0: 工作 1: 未工作
fuse_voltage 保险丝电压
ds 设备开关状态 0: 关机 1: 开机
gps 定位说明, 0-手动定位, 1-GPS 定位, 2-基站定位
gs 通道状态 1:落虫,0:排水
hs 加热状态
tpl 低温保护值
tph 高温保护
proj 版本号
vs 内部版本号

设备下线消息
设备默认配置了遗愿消息,当设备异常下线时,会发布异常下线设备的遗愿消息。

{
  "payload": {
    "cmd": "offline",
    "ext": {
      "imei": "867435052203452"
    }
  },
  "topic": "/yfkj/cbd/offline/867435052203452"
}

注意:设备离线会发送一条设备下线消息,设备上线后发送正常数据。

图片传输
对接采用 HTTP 协议 由接收方写接口来接收 http post 数据(需从 request 的 body(字节流类型)中取数据,取到之后进行 json 解析)。图片需要下载保存到本地,不要直接保存图片链接到数据库。

带害虫识别图片传输案例
参数案例 1

{
  "Image": "https://bigdata-image.oss-cn-hangzhou.aliyuncs.com/Basics/cbd/866547058605406/2023/5/30/192.168.1.106_01_20230414142111449_ALARM_INPUT.jpg",
  "Result": "158,1#260,5#21,1",
  "Result_image": "https://bigdata-image.oss-cn-hangzhou.aliyuncs.com/ResultB/cbd/866547058626857/2023/6/28/192.168.1.117_01_19700119100324405_ALARM_INPUT.jpg",
  "imei": "866547058604524"
}

参数案例 2

{
  "Result": "0",
  "Result_image": "0",
  "Image": "https://bigdata-image.oss-cn-hangzhou.aliyuncs.com/Basics/cbd/861551058865106/2023/8/29/861551058865106-20230829234037.jpg",
  "imei": "861551058865106"
}

不带害虫识别图片传输案例

{
  "Image": "http://www.yfzhwlw.com/pyftp/ftp_file/ykm_cbd/868956048817419/192.168.1.100_01_20200623233048184_ALARM_INPUT.jpg ",
  "imei": "867435052203452"
}

参数说明

字段名 描述
接口地址 http://xxxxxxxxxx/xxxxx
接口方式 Post
imei 设备序列号
Image 拍照图片(图片链接,建议下载保存到本地)
Result_image 识别结果图片(图片链接,建议下载保存到本地)
Result 昆虫种类及数目(如模型未识别到害虫,Result_imageResult 数据为 0)

虫情测报灯mqtt协议

简述

本文档主要用于阐述物联网自动虫情测报灯与服务器端进行交互的通讯细节,其中包括物联网自动虫情测报灯与服务器之间使用的通信协议和交互通讯协议两部分。

适用范围

适用于【通用物联网自动虫情测报灯】与服务器之间的通讯。

对接说明

  1. 数据上传频率

    • 设备数据默认是每30分钟上传一次。
    • 图片数据在设备工作时间段内每20分钟上传一次。如果设备处于温控或雨控状态,不会拍照,但会正常上传设备数据。
  2. 温控、雨控说明

    • 温控:为了冬季保护电池。即使供电系统是市电,在这种温度条件下,并不会发生虫情,因此设计为系统待机,不再拍照,符合节能降耗的思想。
    • 雨控:为了防止设备进水而设计,发生雨控时进入待机状态,不再工作和拍照。
  3. 图片保存

    • 图片数据中的链接需要下载并保存到本地。保存时不要直接保存图片链接到数据库,因为图片链接可能会失效。应将下载后的图片保存到本地,并将本地路径存入数据库。
  4. 设备数据内容

    • 包含设备号、SIM卡号、环境温湿度、工作状态、经纬度、电压等。
  5. 图片数据内容

    • 不识别:包含原图链接和设备号。
    • 识别:包含设备号、原图链接、识别后的图片链接、害虫名称和数量。
  6. 设备拍照时间

    • 设备收集时间 + 加热时间 = 设备拍照时间。
  7. 数据格式

    • 设备数据格式不可变,不能按接收方增加或减少字段。如有需求请联系销售经理。
  8. 接口安全

    • 可以针对传输方IP做限制,非传输方IP不允许调用接口。传输方IP可以联系对接人员提供。
  9. 数据独立性

    • 图片和设备数据为相互独立的两种数据。

相关主题

  • 所有上行通信的主题/yfkj/cbd/pub/<imei>
  • 所有下行通信的主题/yfkj/cbd/sub/<imei>
  • 离线消息主题/yfkj/cbd/offline/<imei>

查询状态报文结构

MQTT 下发查询

{
  "cmd": "read",
  "ext": "data"
}

定时数据上报和查询的回复报文

{
  "cmd": "data",
  "ext": {
    "hst": "110",
    "ds": "1",
    "gs": "0",
    "dver": "1.7.4(140)HK",
    "hs": "0",
    "shake_sec": "1",
    "tpl": "5",
    "dat_f": "30",
    "tph": "70",
    "lat": "041.0501403",
    "st": "21",
    "tt": "8",
    "lng": "111.0030517",
    "vbat": "24.15",
    "imei": "867038039304375",
    "htim": "20",
    "collt": "10",
    "et": "1",
    "iccid": "89860492192090447636",
    "dtype": "3",
    "batStatus": "0",
    "dnds": "0",
    "hrt": "24",
    "proj": "DCCBD-2_HK",
    "gps": "2",
    "ts": "1",
    "ws": "0",
    "vs": "140",
    "shake": "1",
    "current": "0.0",
    "ah": "30.0",
    "at": "25.0",
    "stamp": "20210810092758",
    "lamp": "0",
    "rps": "0",
    "upds": "0",
    "lps": "1",
    "tps": "0",
    "csq": "31"
  }
}

字段说明

字段名 描述
imei 通讯板唯一 ID
iccid 物联网卡的 iccid 号,用于查询物联网卡的套餐、流量信息等
csq 信号强度
lat 纬度
lng 经度
dtype 设备类型 (测报灯设备类型为 3)
ws 工作状态 0:待机,1:工作
dver 设备固件版本
vbat 电压(单位:V)
st 时控开始时间:0-23(当设备设置以时控模式开始工作时,该字段为开始工作时间)
et 时控结束时间:0-23(当设备设置以时控模式开始工作时,该字段为结束工作时间)
tps 温控:0-正常,1-保护(1:设备进入温控状态,不进入工作拍照)
lps 光控:0-正常,1-保护(1:设备进入光控状态,检测到白天,光控模式下白天不工作)
rps 雨控:0-正常,1-保护(1:设备进入雨控状态时,不进入工作拍照)
collt 收集时间:1-30 分钟
current 功率:单位 mA
hrt 加热仓实时温度(℃)
hst 加热仓设定温度:70-130(℃)
at 环境温度(℃)
ah 环境湿度(%RH)
stamp 时间戳(格式:YYYYMMDDHHmmss)
dat_f 数据上传时间间隔 单位:分钟(默认上传时间为 20 分钟)
turnon 开机次数,每次重启加 1
htim 加热时间:1-30 分钟
batStatus 电压状态 0-正常 1-欠压
tt 光控定时时间 1~10(当设备处于光控状态时,该字段为设备工作时间)
shake 震动开关:0-关,1-开
shake_sec 震动时间:1~20(步长:100ms)
ts 定时模式:0-光控,1-时控(设备工作状态,光控默认工作时间为天黑后 8 小时,时控可以设置工作时间范围)
upds 上仓门状态 1:打开,0:关闭
dnds 下仓门状态 1:打开,0:关闭
lamp 灯管/工作状态 0:工作 1:未工作
fuse_voltage 保险丝电压
ds 设备开关状态 0:关机 1:开机
hs 加热状态
tpl 低温保护值
tph 高温保护
proj 版本号
vs 内部版本号

下发设置

{
  "cmd": "paramconf",
  "ext": {
    "hst": 110,
    "collt": 10,
    "et": 6,
    "datt": 20,
    "shake_sec": 1,
    "tpl": 5,
    "shake": 1,
    "tph": 70,
    "ts": 1,
    "st": 20,
    "htim": 20,
    "tt": 8,
    "ds": 0,
    "vt": 4
  }
}

字段说明

字段名 描述
hst 加热温度 75-130℃
collt 收集时间 1-30 分钟
et 结束时间:0~23(字符串)
datt 数据上传间隔:1-60 分钟
shake 震动开关:0-关 1-开
shake_sec 震动时间:100~5000 ms
tph 高温保护 50~80℃
ts 定时模式:0:光控 1:时控
st 开始时间:0~23(字符串)
htim 加热时间:1~30 分钟
tt 光控定时时长:1~10 小时
ds 设备开关状态 0:关机 1:开机
vt 版本类型: 1 - 1.0, 4 - 4.0

下发控制命令
下发重启

{
  "cmd": "reboot"
}

下发升级 STM32

{
  "cmd": "update"
}

拍照

{
  "cmd": "takephoto"
}

遗愿消息

设备默认配置了遗愿消息,当设备异常下线时(客户端断开前未向服务器发送 DISCONNECT 消息),会发布异常下线设备的遗愿消息。注意:设备离线会发送一条设备下线消息,设备上线后发送正常数据。

离线消息主题

/yfkj/cbd/offline/
报文结构

{
  "cmd": "offline",
  "ext": {
    "imei": "868575028xxxxxx"
  }
}

图片传输

对接说明
HTTP 协议:对接采用 HTTP 协议,由接收方写接口来接收 HTTP POST 数据(需从 request 的 body (字节流类型)中取数据,取到之后进行 JSON 解析)。
图片保存:图片需要下载保存到本地。保存时不要直接保存图片链接到数据库,因为图片链接可能会失效。应将下载后的图片保存到本地,并将本地路径存入数据库。
带害虫识别图片传输案例
参数案例 1

{
  "Image": "http://www.yfzhwlw.com/pyftp/ftp_file/ykm_cbd/868956048817419/192.168.1.100_01_20200623233048184_ALARM_INPUT.jpg",
  "Result_image": "http://www.yfzhwlw.com/result_pyftp/ftp_file/ykm_cbd/868956048817419/192.168.1.100_01_20200623233048184_ALARM_INPUTresult.jpg",
  "Result": "62,1",
  "imei": "867435052203452"
}

参数案例 2

{
  "Result": "0",
  "Result_image": "0",
  "Image": "https://bigdata-image.oss-cn-hangzhou.aliyuncs.com/Basics/cbd/861551058865106/2023/8/29/861551058865106-20230829234037.jpg",
  "imei": "861551058865106"
}

不带害虫识别图片传输案例

{
  "Image": "http://www.yfzhwlw.com/pyftp/ftp_file/ykm_cbd/868956048817419/192.168.1.100_01_20200623233048184_ALARM_INPUT.jpg ",
  "imei": "867435052203452"
}

参数说明

字段名 描述
imei 设备序列号
Image 拍照图片(图片链接,建议下载保存)
Result_image 识别结果图片(图片链接,建议下载保存)
Result 结果字符串,用“种类 1,种类 1 数目#种类 2,种类 2 数目…”表示,如 “10,1#12,2”,表示种类 10 的数目是 1,种类 12 的数目是 2