数据类型

更新时间:2024-01-25 09:55:45下载pdf

本文介绍标准指令集和状态集的常见数据类型和取值解读。其中常见数据类型如下:

数据类型 说明 示例
Boolean 非真即假的二值型变量。 开关功能,取值为
Integer 适用于可线性调节类型的数据。 温度调节,温度范围 20-40℃。
Enum 有限集合值。 工作档位,低档中档高档
String 字符串类型。 参考下文。
JSON 一个对象的 JSON 格式,会有对应对象属性的说明解释。 参考下文。

传输类型

指令和状态的传输分为三种类型:

  • 可下发可上报:指令数据可以下发给设备,设备数据可以上报给云端。
  • 只上报:数据只支持从设备上报给云端。
  • 只下发:数据只支持从云端下发给设备。

取值示例

Integer 类型示例

取值示例说明

{
	"min":11,
	"unit":"s",
	"scale":0,
	"max":86400,
	"step":1
}

取值约束说明

  • min:最小取值。示例值:11。

  • max:最大取值。示例值:86400。

  • unit:数值的单位。示例值:s 。

  • scale:数据将以 10 的指数转换进行传输。示例值:0,表示 10 的 0 次方,即 1。

  • step:数据增量间距(即步长),与 scale 一起决定传输的数据量。示例值:step=5、scale=1,则表示传输的数据为 step*10 ^ scale=5*(10 ^ 1)=50。

    code 名称 数据类型 取值约束
    cur_voltage 当前电压 Integer {“unit”:“V”, “min”:0, “max”:5000, “scale”:2, “step”:5}

    假设查询设备状态得到的值是 {"cur_voltage": 2230},那么用户可读值为 2230/(10 ^ 2)= 22.3V,即电压是 22.3 伏特。

取值约束范围

标准指令集在指定的取值范围约束为参考范围,实际每个设备有特定的具体取值约束范围。

String 类型示例

取值示例说明

{
	"maxlen":255
}

取值约束说明

maxlen:值最大长度。示例值:255。

Enum 类型示例

取值示例说明

{
	"range":[
		"1",
		"2",
		"3",
		"4",
		"5"
	]
}

取值约束说明

range:枚举取值限定范围。示例为 12345