Skip to main content

数据类型详解

SagooIOT遵循ICA数据标准,提供了7种数据类型,分别为:整数型、浮点型、枚举型、布尔型、字符串、时间型和JSON对象,各数据类型的详细定义如下:

整数型

类型结构
整数型最小值最大值单位单位维度

【定义】 32位有符号整型int32。

【格式说明】 最小值、最大值:整数类型数据的取值范围,仅支持整型数值。 单位维度、单位:单位维度表示单位所属的类别,通常一个单位维度下会包含一个或者多个不同单位。例如,单位维度『长度』,其中包含: 毫米(mm),厘米(cm),米(m),千米(km)等。

【应用场景举例】 如下数据表示,环境温度可以在-20~55摄氏度(℃)的范围内变化。

数据名称数据类型最大值最小值单位单位维度
环境温度整数类型-2055摄氏度(℃)温度

浮点型

类型结构
浮点类型最小值最大值浮点精度单位单位维度

【定义】 带小数的浮点类型,float类型(单精度)或者double类型(双精度)。

【格式说明】 浮点精度:分为单精度(float)和双精度(double)。 最小值、最大值:浮点类型数据的取值范围。 单位维度、单位:单位维度表示单位所属的类别,通常一个单位维度下会包含一个或者多个不同单位。例如,单位维度『电流』,其中包含: 毫安(mA),安(A)等。

【应用场景举例】 如下数据表示,插座的电流值可在0~16安之间变化,数值有效小数位为0.1,可表示为8.1A,12.3A。

数据名称数据类型最大值最小值浮点精度单位单位维度
插座电流浮点型016双精度安(A)电流

枚举型

类型结构
枚举型枚举值1:枚举值名称1;枚举值2:枚举值名称2...枚举值n:枚举值名称n

【定义】 有限变量值的集合,每个变量值只限于列举出来的值的范围内,通常适用于模式功能

【格式说明】 枚举值:仅支持整型(不超过2位即0-99),最多支持定义25个枚举值。 枚举值名称:表示枚举值代表的意义。

【应用场景举例】 如下数据表示,电风扇风速分为0:低档,1:中档,2:高档,可以在3个档位间切换。

数据名称数据类型枚举值
风速档位枚举值0:低档1:中档2:高档

布尔型

类型结构
布尔型0(False):状态描述1(True):状态描述

【定义】 只有真、假两种状态的二值型变量,通常适用于开关功能。

【格式说明】 0:表示False状态,例如开关的关闭状态。该状态的描述可定义,例如,关闭、停止、撤防。 1:表示True状态,例如开关的开启状态。该状态的描述可定义,例如,打开、启动、布防。

【应用场景举例】 如下数据表示,电灯开关有两个状态,0表示关灯,1表示开灯。

数据名称数据类型布尔值
电灯开关布尔型0:关灯1:开灯

字符串

类型结构
字符串最大字符串字节长度

【定义】 字符串组成的一段文本。

【最大字符串字节长度】 字符串最大的字节长度,最大值为255。

【应用场景举例】 如下数据表示,设备日志,用字符串来记录设备运行状态,但字符串不能超过100个字节。

数据名称数据类型最大字符串字节长度
设备日志字符串100字节

时间型

类型数据类型
时间型long整型(毫秒)

【定义】 long整型,表示从(1970年01月01日0:00:00)开始计算的毫秒数。

JSON对象(结构体)

类型结构
JSON对象属性参数(2..N)数据类型

【定义】 由2个或者2个以上属性参数组合而成,用来表示多个属性相互紧密关联,同时存在才有意义的数据类型,例如颜色RGB,HSV等。

【格式说明】 属性参数:属性参数可以对应于不同的数据类型,但不能是结构体类型。(结构体类型数据不支持嵌套)

【应用场景举例】 如下数据表示,灯的颜色用RGB表示,其中Red,Green,Blue三个参数要同时存在才能准确描述一种颜色。

数据名称数据类型属性参数数据类型及结构
数据类型最小值最大值单位维度单位
灯的颜色JSON对象Red整数型0255
Green整数型0255
Blue整数型0255