接入配置
config.json 是 driver-box 用于实现设备接入的描述文件。通常情况下用户只需完成该文件的编写,便可实现设备接入。
该文件的主体结构如下所示:
{ "deviceModels": [ { "name": "circuit_breaker-2", "modelId": "65a641ce06a7d4709b5b31b9", "description": "", "devicePoints": [
], "devices": [
] } ], "connections": {
}, "protocolName": "modbus"}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| deviceModels | array | 必填 | 物模型配置。 用于定义特定通讯协议类型 protocolName的物模型及其接入设备列表 |
| connections | object | 必填 | 连接配置,不同类型的插件配置各不相同 |
| protocolName | string | 必填 | 协议插件名称,有效范围: |
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 必填 | 设备模型名称,又可称为物模型名称 |
| modelId | string | 必填 | 物模型 ID |
| description | string | 可选 | 设备模型描述 |
| devicePoints | array | 必填 | 设备点表配置 |
| devices | array | 必填 | 设备列表 |
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 必填 | 点位名 |
| description | string | 可选 | 点位描述 |
| valueType | string | 必填 | 点位值类型,有效范围:int、float |
| readWrite | string | 必填 | 点位读写类型,有效范围:
|
| unit | string | 可选 | 点位单位,例如:℃、m、s、m³ |
| reportMode | string | 必填 | 点位上报模式,有效范围:
|
| scale | float | 可选 | 点位值系数换算。 读操作时,会将从设备读取到的值乘以 scale 得到最终值。例如:scale=0.1,则从设备读取到的值为10,则最终值为1。 写操作时,将设定值除以 scale 得到设备可写入的值。例如:scale=0.1,设置点位写入值为1,则最终值为10。 |
| decimals | float | 可选 | 保留小数位数,仅针对valueType=float的点位有效。例如:decimals=2,则最终值为1.00。 当decimals=0时,表示不保留小数。 当decimals=1时,表示保留一位小数。 当decimals=2时,表示保留两位小数。 当decimals=3时,表示保留三位小数。 当decimals=4时, |
| - | - | 可选 | 插件扩展点表配置。不同类型的插件会在上述配置的基础上额外添加新的配置项。例如:Modbus插件在配置中添加了slaveId、timeout等配置项。 |
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| sn | string | 必填 | 设备序列号 |
| description | string | 选填 | 设备描述 |
| ttl | string | 选填 | 设备离线阈值,超过该时长没有收到数据视为离线。 示例:
|
| connectionKey | string | 必填 | 设备连接标识 |
| driverKey | string | 选填 | 设备驱动标识 |
| properties | object | 选填 | 设备属性。通常用于配置设备的保留属性或连接相关信息。 |
保留属性
保留属性是 driver-box 为设备提供的扩展信息配置能力。这类属性的业务逻辑交由用户实现,driver-box 只作配置的持久化。
目前开放的保留属性如下:
- _area:设备所处的区域信息
- _parent_sn:父级设备 SN
- _system_id:设备所属的系统 ID
- modbus
- bacnet
- mqtt
- http server
- http client
- tcp server
- tcp client