[关闭]
@my943813636 2018-08-14T07:31:14.000000Z 字数 4551 阅读 606

众智新农 数据模型

1.2 数据模型定义

1.2.1.数据采集值 dcPoint

  1. {
  2. "id": 12, //采集值ID
  3. "type": 3, //采集值类型
  4. "name": "土壤湿度&水中", //采集值名称
  5. "value": 100, //采集值
  6. "status": -1, //采集设备的状态
  7. "configWarn": false, //用户是否具有修改告警配置的权限
  8. "alarmType":1 //当前的告警类型:0-没有告警,非0-告警的类型
  9. }

1.2.2.可操作设备 device

  1. {
  2. "id": 1, //设备id
  3. "type": 2, //设备类型
  4. "name": "电动阀", //设备名称
  5. "status": -1, //设备状态
  6. "operable": true //用户是否具有操作设备的权限
  7. "dcPoints" : //设备关联的采集值列表
  8. [
  9. ${dcPint},
  10. ......
  11. ]
  12. }

1.2.3.灌溉任务 irriTask

  1. {
  2. "createDate": 13123, //任务创建时间
  3. "startDate": 2142131, //任务开始时间
  4. "stopDate": 1232114, //任务的结束时间
  5. "expDuration": 2324, //用户设置的执行时间
  6. "status": 4, //任务当前的状态
  7. "result": //任务运行的结果。
  8. {
  9. "code": 1, //任务结果枚举值
  10. "msg": "设备断线异常停止" //任务结果说明
  11. }
  12. "createUser": //创建该任务的用户
  13. {
  14. "uid" : 1, //用户ID
  15. "headmage" : "http://.../1.png", //用户头像
  16. "username" : "测试" //用户名称
  17. },
  18. "stopUser": //停止该任务的用户(任务自动结束时为空)
  19. {
  20. "uid" : 1,
  21. "headmage" : "http://.../1.png",
  22. "username" : "Hide"
  23. }
  24. }

1.2.4.灌溉任务统计信息 irriTaskStatistic

  1. {
  2. "waitingNum”:2, //当前正在等待运行的任务数量
  3. "runningNum”:1, //当前正在运行的任务数量
  4. "finishTime”:123123, //任务预计完成时间
  5. }

1.2.5.灌溉区 irriArea:

  1. {
  2. "id": 1, //灌溉区ID
  3. "name": "nm" //灌溉区名称
  4. "valves": //阀门列表
  5. [
  6. ${device},
  7. ......
  8. ],
  9. "devices": //普通设备列表
  10. [
  11. ${device},
  12. ......
  13. ],
  14. "dcPoints": //采集值列表
  15. [
  16. ${dcPoint},
  17. ......
  18. ],
  19. "latestIrriTask":${irriTask} //最近一次的灌溉任务
  20. }

1.2.6.农田 farmland

  1. {
  2. "id”:1, //农田ID
  3. "name”:”大棚1”, //农田名称
  4. "irriAreas”: //灌溉区列表
  5. [
  6. ${irriArea},
  7. ......
  8. ],
  9. "devices": //普通设备列表
  10. [
  11. ${device},
  12. ......
  13. ],
  14. "dcPoints": //采集值列表
  15. [
  16. ${dcPoint},
  17. ......
  18. ],
  19. }

1.2.7.农田摘要信息 farmlandOutline

  1. {
  2. "id”:1 //农田ID
  3. "name”:”大棚1 //农田名称
  4. ...... //其它信息待定
  5. }

1.2.8.水肥一体化系统 irriAndFerSys

  1. {
  2. "pump”:${device} //水肥一体化系统中的水泵
  3. "dcPoints": //采集值列表
  4. [
  5. ${dcPoint},
  6. ......
  7. ]
  8. }

1.2.9.气象站 weatherStation

  1. {
  2. "id”:1, //气象站ID
  3. "name”:”气象站”, //气象站名称
  4. "dcPoints": //采集值列表
  5. [
  6. ${dcPoint},
  7. ......
  8. ],
  9. }

1.2.10.智慧农业系统 iaSystem

  1. {
  2. "id”:1, //系统ID
  3. "name”:”我的葡萄园”, //系统名称
  4. "mode”:1, //系统工作模式
  5. "permision”:1, //用户对智慧农业的配置权限
  6. "irriTaskStatistic”:${irriTaskStatistic}, //灌溉任务统计信息
  7. "weatherStation”:${weatherStation}, //气象站信息
  8. "dcPoints": //采集值列表
  9. [
  10. ${dcPoint},
  11. ......
  12. ],
  13. "irriAndFerSys”:${irriAndFerSys}, //水肥一体化系统
  14. "devices": //普通可操作设备列表
  15. [
  16. ${device},
  17. ......
  18. ],
  19. "farmlandOutlines”: //农田摘要信息列表
  20. [
  21. ${farmlandOutline},
  22. ......
  23. ],
  24. "cameraPreviews”: //摄像头预览信息列表
  25. [
  26. ${cameraPreview}
  27. ],
  28. }

1.2.11.采集值历史记录 sensorHistoryData

  1. {
  2. "sensorId”:1, //传感器ID
  3. "dataType”:1, //采集值类型
  4. "startDate”:111111, //开始日期
  5. "endDate”:222222, //结束日期
  6. "data”:
  7. [
  8. //number
  9. ]
  10. }

1.2.12.传感器采集值阈值告警配置 thresholdAlarmConfig

  1. {
  2. "alarmType”:1, //告警类型:1-上限预警,2-下限预警......
  3. "threshold”:100, //阈值
  4. }

1.2.13.传感器采集值超过阈值告警 thresholdAlarm

  1. {
  2. "id”:1, //告警的ID
  3. "status”:1, //告警的状态:1-存在,2-已经消除
  4. "level”:1 //告警的级别
  5. "sensorId”:1, //告警对应的传感器ID
  6. "dataType”:1, //告警对应的采集值类型
  7. "alarmType”:1, //告警的类型:1-预警上限,2-预警下限...
  8. "occurTime”: //告警产生的时间
  9. "endTime”: //告警消除的时间
  10. "endReason”: //告警消除的原因
  11. "threshold”: //告警产生时的阈值
  12. "sensorOwner”: //告警对应的传感器的安装位置
  13. {
  14. "type”:1 //挂接该传感器的对象的类型
  15. "iaSystemId”, //智慧农业系统ID
  16. "farmlandId”, //农田ID
  17. "areaId”, //灌溉区ID
  18. "opDevId”, //可操作设备ID
  19. }
  20. }

1.2.14.消息 message

  1. {
  2. "id”:1, //消息的ID
  3. "type”:1, //消息类型
  4. "title”:”小知识”, //消息的标题
  5. "content”:”巴拉巴拉”, //消息的详情
  6. "isRead”:true, //用户是否已经阅读该消息
  7. "createData”:123123, //消息的创建时间
  8. "extension”: //消息的拓展信息。
  9. {
  10. //不同的消息类型,有不同的拓展信息
  11. }
  12. }

1.2.15.WEB网页消息 webMessage

  1. {
  2. "url”:”HTTP://1.1.1.1/index.html” //URL路径
  3. }

1.2.16.温湿度超过阈值告警消息 thresholdAlarmMessage

仅说明${message}的extension字段内容

  1. ${thresholdAlarm}

1.2.17.摄像头能力集合 camera_capability

  1. camera_capability:
  2. {
  3. "name”:”value”, //功能名称和是否支持该功能标识
  4. ......
  5. }

1.2.18.摄像头 camera

  1. "camera":
  2. {
  3. "id”:1, //摄像头ID
  4. "name”:”123”, //摄像头名称
  5. "sn”:11111, //摄像头序列号
  6. "hls”:”http://......” //HLS协议直播流地址
  7. "hlsHD”:”http://......” //HLS协议直播流地址,高清
  8. "rtmp”:”http://......” //rtmp协议直播流地址
  9. "rtmpHD”:”http://......” //rtmp协议直播流地址,高清
  10. "capability”:$camera_capability //摄像头能力集
  11. }

1.2.19.摄像头预览信息 cameraPreview

  1. "cameraPreview":
  2. {
  3. "id”:1,
  4. "name”:”123123”,
  5. }

1.3.常量定义

1.3.1.设备类型

设备类型名称 设备类型枚举值
首部控制器/田间控制器 0
电动阀 1
电磁阀 2
水泵 3
风机 4
卷帘机 5
生长灯 6
加热器 7
除湿器 8
脉冲电磁阀 9
土壤湿度传感器 64
土壤温度传感器 65
土壤温湿度传感器 66
空气湿度传感器 67
空气温度传感器 68
空气温湿度传感器 69
光照强度传感器 70
二氧化碳传感器 71
空气温湿度和光照强度三合一传感器 72
悬挂式空气温湿度传感器 73

1.3.2.设备操作类型

启动设备 1
停止设备 2

1.3.3.采集值类型

采集值类型 采集值类型枚举值
土壤温度 1
土壤湿度 2
空气温度 3
空气湿度 4
CO2浓度 5
光照强度 6
蓄电池电压 7
蓄电池在连接太阳能板时的电压 8
太阳能板电压 9
DTU信号强度 10
单板温度 11

采集值取值范围说明:
温度 取值范围-1000到1000,单位0.1摄氏度
湿度 取值范围0到1000,单位0.1 %RH
CO2浓度 取值范围0-5000,单位
光照强度 0-200000
单板电压 0-600
DTU信号强度 0-32
非法采集值 固定为0x7fffffff

1.3.4.任务状态

等待中 1
启动中 2
运行中 3
停止中 4
结束 5

任务运行结果
0 成功
1 开启阀门失败
2 开启水泵失败
3 关闭水泵失败
4 关闭阀门失败
100 用户取消
101 用户取消但是开启阀门失败
102 用户取消但是开启水泵失败
103 用户取消但是关闭水泵失败
104 用户取消但是关闭阀门失败

任务操作类型:
1 添加
2 删除

1.3.5.智慧农业系统工作模式

1 手动模式
2 自动模式

告警类型:
1

1.3.6.消息类型

1 普通消息,无extension
2 网页消息,extension中带有URL路径
3 告警消息

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注