《視聯(lián)網(wǎng)物模型數(shù)據(jù)描述要求》_第1頁
《視聯(lián)網(wǎng)物模型數(shù)據(jù)描述要求》_第2頁
《視聯(lián)網(wǎng)物模型數(shù)據(jù)描述要求》_第3頁
《視聯(lián)網(wǎng)物模型數(shù)據(jù)描述要求》_第4頁
《視聯(lián)網(wǎng)物模型數(shù)據(jù)描述要求》_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

T/ZAITSXXXX—XXXX

視聯(lián)網(wǎng)物模型數(shù)據(jù)描述要求

1范圍

本文件規(guī)定了視聯(lián)網(wǎng)物模型的整體結(jié)構(gòu)、基礎(chǔ)描述、資源描述、描述文件等。

本文件適用于視聯(lián)網(wǎng)物聯(lián)設(shè)備與服務(wù)等數(shù)據(jù)模型的設(shè)計開發(fā)及驗收。

2規(guī)范性引用文件

下列文件中的內(nèi)容通過文中的規(guī)范性引用而構(gòu)成本文件必不可少的條款。其中,注日期的引用文件,

僅該日期對應(yīng)的版本適用于本文件;不注日期的引用文件,其最新版本(包括所有的修改單)適用于本

文件。

T/ZAITSXXX《視聯(lián)網(wǎng)物模型總體技術(shù)要求》

3術(shù)語和定義

GB/T33745—2017、T/ZAITSXXX《視聯(lián)網(wǎng)物模型總體技術(shù)要求》界定的以及下列術(shù)語和定義適用

于本文件。

物模型規(guī)范語言thingspecificationlanguage

基于JSON對設(shè)備模型的功能結(jié)構(gòu)、數(shù)據(jù)規(guī)格進行描述的規(guī)范語言,具備人類閱讀友好以及機器可解

析執(zhí)行的特性。

設(shè)備名稱devicename

設(shè)備歸屬產(chǎn)品下的設(shè)備唯一標識。

直連設(shè)備directlyconnecteddevice

泛指直接與物聯(lián)平臺建立物聯(lián)網(wǎng)絡(luò)連接的設(shè)備。

4縮略語

下列縮略語適用于本文件。

JSON:JavaScript對象標記語言(JavaScriptObjectNotation)

MQTT:消息隊列遙測傳輸(MessageQueuingTelemetryTransport)

TSL:物模型規(guī)范語言(ThingSpecificationLanguage)

5物模型整體結(jié)構(gòu)

物模型基本結(jié)構(gòu)應(yīng)符合T/ZAITSXXX《視聯(lián)網(wǎng)物模型總體技術(shù)要求》。模型文件概要、模型配置信

息、設(shè)備資源集合、設(shè)備能力集合展開后的物模型整體結(jié)構(gòu)示意圖見圖1,視聯(lián)網(wǎng)設(shè)備物模型舉例見附

錄B。

1

T/ZAITSXXXX—XXXX

物模型

(Thing)

模型文件概要模型配置信息模型資源集合

(schema)(profile)(resources)

資源1資源XX

...

(resource_1)(resource_xx)

功能1功能XX

...

(function_1)(function_xx)

屬性集合事件集合服務(wù)集合

(properties)(events)(services)

屬性1事件1服務(wù)1

(property_1)(event_1)(service_1)

.........

屬性XX事件XX服務(wù)XX

(property_xx)(event_xx)(service_xx)

圖1物模型整體結(jié)構(gòu)示意圖

6物模型基礎(chǔ)描述

物模型規(guī)范語言

物模型規(guī)范語言的核心是元數(shù)據(jù)和參數(shù)定義,屬性(Property)、事件(Event)以及服務(wù)(Service)

通過元數(shù)據(jù)定義功能接口。

元數(shù)據(jù)

6.2.1概述

在物模型JSON結(jié)構(gòu)中,元數(shù)據(jù)關(guān)鍵字為“dataType”,其結(jié)構(gòu)包含數(shù)據(jù)類型和數(shù)據(jù)規(guī)格,元數(shù)據(jù)字

段描述如表1,JSON舉例見附錄A。

表1元數(shù)據(jù)字段描述表

參數(shù)類型描述是否必須備注

typeString數(shù)據(jù)類型是—

specsObject數(shù)據(jù)規(guī)格否—

6.2.2整型(number)

整型數(shù)據(jù)規(guī)格如表2,JSON舉例見附錄A。

2

T/ZAITSXXXX—XXXX

表2整型規(guī)格表

參數(shù)類型描述是否必須備注

取值區(qū)間(閉區(qū)間),數(shù)組第一個值為取值最小值,

rangeNumber[2]第二個值為取值最大值,number最大取值區(qū)間-是—

9007199254740991~9007199254740991

unitString單位,可以為空字符串,最大長度為64否—

unitNameString單位描述,可以為空字符串最大長度128否—

stepNumber步長否—

6.2.3浮點型(float)

浮點型數(shù)據(jù)規(guī)格如表3,JSON舉例見附錄A。

表3浮點型規(guī)格表

參數(shù)類型描述是否必須備注

取值區(qū)間(閉區(qū)間),數(shù)組第一個值為最小值,第

rangeDouble[2]二個值為最大值,最大取值區(qū)間-是—

9007199254740991.0~9007199254740991.0

unitString單位,可以為空字符串,最大長度為64否—

unitNameString單位描述,可以為空字符串,最大長度128否—

stepString步長,浮點型字符串,可以為空字符串否—

6.2.4文本類型(text)

文本類型數(shù)據(jù)規(guī)格如表4,JSON舉例見附錄A。

表4文本類型規(guī)格表

參數(shù)類型描述是否必須備注

字符串最大長度,整型值,必須大于0,最大取

lengthNumber是—

值65535

6.2.5布爾型(bool)

布爾型數(shù)據(jù)規(guī)格如表5,JSON舉例見附錄A。

表5布爾型規(guī)格表

參數(shù)類型描述是否必須備注

0值含義,最大長度為255,如“關(guān)”,對應(yīng)布爾設(shè)備上報或下發(fā)

0String型的false,由于JSON的Key必須為字符串類型,是給設(shè)備的值為整

所以在JSON描述中使用字符串“0”型0

1值含義,最大長度為255,如“開”,對應(yīng)布爾設(shè)備上報或下發(fā)

1String型的true,由于JSON的Key必須為字符串類型,是給設(shè)備的值為整

所以在JSON描述中使用字符串“1”型1

6.2.6時間類型(date)

時間類型的數(shù)據(jù)規(guī)格無內(nèi)容,該類型值為UTC時間戳數(shù)值字符串,單位為毫秒,數(shù)值不大于

3093527951999999(例如“1710129281000”)。JSON舉例見附錄A。

6.2.7枚舉類型(enum)

枚舉類型數(shù)據(jù)規(guī)格如表6,EnumItem類型結(jié)構(gòu)如表7,JSON舉例見附錄A。

表6枚舉類型規(guī)格表

參數(shù)類型描述是否必須備注

3

T/ZAITSXXXX—XXXX

listArray<EnumItem>枚舉值列表,列表元素結(jié)構(gòu)參見表7是—

表7EnumItem結(jié)構(gòu)表

參數(shù)類型描述是否必須備注

valueNumber枚舉值,值范圍-2147483647~2147483647是—

descriptionString枚舉值描述,最大長度為255是—

6.2.8數(shù)組類型(array)

數(shù)組元素可以是不包括數(shù)組類型在內(nèi)的任意元數(shù)據(jù)類型,且所有元素類型應(yīng)相同。其數(shù)據(jù)規(guī)格如表

8所示,ArrayItem結(jié)構(gòu)如表9,JSON舉例見附錄A。

表8數(shù)組類型數(shù)據(jù)規(guī)格表

參數(shù)類型描述是否必須備注

sizeNumber數(shù)組最大長度,取值范圍[1-65535]是—

itemArrayItem數(shù)組元素規(guī)格是—

表9ArrayItem結(jié)構(gòu)表

參數(shù)類型描述是否必須備注

數(shù)據(jù)類型,格式參考“元數(shù)據(jù)JSON描述”章節(jié)下所

dataTypeObject是—

有數(shù)據(jù)類型的定義

6.2.9對象類型(object/struct)

對象類型的數(shù)據(jù)規(guī)格描述為列表形式,列表元素為對象類型子元素,其數(shù)據(jù)規(guī)格如表10,JSON舉

例見附錄A。

表10對象類型子元素數(shù)據(jù)規(guī)格表

參數(shù)類型描述是否必須備注

identifierString屬性標識符,結(jié)構(gòu)體下唯一是由數(shù)字、字母、下劃線組成

引用編號,結(jié)構(gòu)體下唯一,協(xié)議中使用,取值范

refNumber是—

圍1-65535

nameString屬性名稱,最大長度為64是—

descriptionString屬性描述,最大長度為255是—

requiredString是否必選,true:必選,false:可選是—

數(shù)據(jù)類型,格式參考“元數(shù)據(jù)JSON描述”章節(jié)

dataTypeObject是—

下所有數(shù)據(jù)類型的定義

參數(shù)結(jié)構(gòu)

物模型事件和服務(wù)的輸入輸出參數(shù)JSON結(jié)構(gòu)保持統(tǒng)一,其結(jié)構(gòu)關(guān)鍵字包含參數(shù)標識符、參數(shù)名稱、

參數(shù)引用編號、描述信息、數(shù)據(jù)類型以及是否必填,關(guān)鍵字描述如表11,JSON舉例見附錄A。

表11輸入輸出參數(shù)字段表

參數(shù)類型描述是否必須備注

參數(shù)標識符,當前輸入或輸出參數(shù)列表下

identifierString是由數(shù)字、字母、下劃線組成

唯一,最大長度128

nameString輸出參數(shù)名稱,最大長度64是—

descriptionString描述,最大長度255否—

默認事件(property)、默認

是否必選,取值列表(true:必選,false:

requiredString是服務(wù)(get/set),該字段不做

可選)

強校驗

數(shù)據(jù)類型,格式參考“元數(shù)據(jù)JSON描述”

dataTypeObject是—

章節(jié)下所有數(shù)據(jù)類型的定義

4

T/ZAITSXXXX—XXXX

7物模型資源描述

資源(Resources)

設(shè)備資源信息字段描述如表12,JSON舉例見附錄A。

表12設(shè)備資源信息字段描述表

參數(shù)類型描述是否必須備注

由數(shù)字、字母、下劃

identifierString資源標識符,全網(wǎng)唯一,最大長度64是

線組成

引用編號,當前模型下唯一,協(xié)議中使用,

refNumber是—

取值范圍[1-65535]

nameString資源名稱,最大長度64是—

descriptionString資源描述,最大長度255否—

indexArray<String>多資源時的資源編號列表是—

functionsArray<Object>功能列表,格式參考表13是—

功能(Functions)

設(shè)備功能字段描述如表13,其中Category類型字段描述如表14,JSON舉例見附錄A。

表13設(shè)備功能字段描述表

參數(shù)類型描述是否必須備注

由數(shù)字、字母、下劃

identifierString功能標識符,全網(wǎng)唯一,最大長度64是

線組成

引用編號,當前模型下唯一,協(xié)議中使

refNumber是—

用,取值范圍[1-65535]

nameString功能名稱,最大長度64是—

descriptionString功能描述,最大長度255否—

功能版本,格式為

versionStringVx.xxx.xxxxxx.x.xxxxxx(如:是—

V2.000.000001.T.240102)

categoryCategory隸屬類目,結(jié)構(gòu)參看Category定義是—

propertiesArray<Object>功能屬性列表,格式參考表15是—

eventsArray<Object>功能事件列表,格式參考表16是—

servicesArray<Object>功能服務(wù)列表,格式參考表17是—

表14Category類型字段描述表

參數(shù)類型描述是否必須備注

categoryKeyString一級類目,最大長度64是由數(shù)字、字母、下劃線組成

categoryDescriptionString一級類目描述,最大長度255否—

subCategoryKeyString二級類目,最大長度64是由數(shù)字、字母、下劃線組成

subCategoryDescriptionString二級類目描述,最大長度255否—

屬性(Properties)

功能中各屬性格式定義保持統(tǒng)一,描述字段如表15,JSON舉例見附錄A。

表15屬性描述字段表

參數(shù)類型描述是否必須備注

由數(shù)字、字母、下劃

identifierString屬性標識符,當前功能下唯一,最大長度64是

線組成

5

T/ZAITSXXXX—XXXX

引用編號,當前模型下唯一,協(xié)議中使用,取值范

refNumber是—

圍[1-65535]

nameString屬性名稱,最大長度64是—

descriptionString屬性描述,最大長度255否—

權(quán)限,取值列表(r:只讀,rw:讀寫,p:僅上報,

accessString是—

rp:只讀+上報,rwp:讀寫+上報)

requiredString是否必選,取值列表(true:必選,false:可選)是—

數(shù)據(jù)類型,格式參考“元數(shù)據(jù)JSON描述”章節(jié)下

dataTypeObject是—

所有數(shù)據(jù)類型的定義

事件(Events)

功能中各事件格式定義保持統(tǒng)一,描述字段如表16,JSON舉例見附錄A。

表16事件描述字段表

參數(shù)類型描述是否必須備注

事件標識符,當前功能下唯一,模

型需定義默認事件property,用于

identifierString是由數(shù)字、字母、下劃線組成

客戶端屬性上報,支持批量上報,

最大長度64

nameString事件名稱,最大長度64是—

descriptionString事件描述,最大長度255否—

事件類型,取值列表(info:信息、

typeStringalert:告警、error:故障,fire:是—

緊急)

事件等級,用戶自定義,默認取值

levelNumber否—

0

是否必選,取值列表(true:必

requiredString是—

選,false:可選)

methodString方法,最大長度512是—

outputDataArray<Object>輸出參數(shù)規(guī)格列表,格式參考表11是—

服務(wù)(Services)

功能中各服務(wù)格式定義保持統(tǒng)一,描述字段如表17,JSON舉例見附錄A。

表17服務(wù)描述字段

參數(shù)類型描述是否必須備注

服務(wù)標識符,產(chǎn)品下唯一,每個模型有

identifierString是只支持數(shù)字、字母、下劃線

2個默認服務(wù),最大長度64

nameString服務(wù)名稱,最大長度64是—

descriptionString服務(wù)描述,最大長度255否—

該字段主要用于描述服務(wù)返

回在平臺的處理方式;

異步:通過消息中間件返回,

請求方需要訂閱,適合服務(wù)

服務(wù)類型,取值列表(async:異步,

callString是處理時間需要較長時間的場

sync:同步)

景;

同步:直接通過調(diào)用返回

(如:HTTPResource返回),

適合服務(wù)處理較短的場景;

requiredString是否必選,true:必選,false:可選是—

methodString服務(wù)方法,最大長度255是—

inputDataArray<Object>輸入?yún)?shù)規(guī)格列表,格式參考表11是—

outputDataArray<Object>輸出參數(shù)規(guī)格列表,格式參考表11是—

6

T/ZAITSXXXX—XXXX

8物模型描述文件

概述

物模型描述文件應(yīng)在設(shè)備開發(fā)階段內(nèi)嵌到設(shè)備中,并提前報備至預(yù)接入的物聯(lián)平臺或允許物聯(lián)平

臺在線報備后使用。

文件大小

物模型描述文件應(yīng)小于2MB。多份物模型文件應(yīng)打包為zip格式的壓縮包文件,且大小應(yīng)小于10MB。

文件組成結(jié)構(gòu)

物模型描述文件中包含框架版本、模型配置信息和設(shè)備資源集合,文件組成結(jié)構(gòu)描述如表18。

表18物模型文件組成結(jié)構(gòu)

參數(shù)類型描述是否必須備注

schemaString文件框架版本,例如:“4.0”是—

profileObject模型配置信息描述,結(jié)構(gòu)請參考表19是—

resourcesArray<Object>設(shè)備資源集合,列表元素結(jié)構(gòu)參考表12是—

模型配置信息

模型配置信息各字段描述如表19。其中Category類型字段描述如表20,NodeType類型字段描述

如表21,AuthType類型字段描述如表22,ProtoType類型字段描述如表23,LinkType類型字段描述如

表24,ProtoTSLType類型字段描述如表25。

表19物模型配置信息字段

參數(shù)類型描述是否必須備注

versionString產(chǎn)品模型版本,如v1.0.0是—

productIdString產(chǎn)品ID,全網(wǎng)唯一,最大長度64是

nameString產(chǎn)品名稱,最大長度64是—

descriptionString產(chǎn)品描述,最大長度255否—

模型來源,由模型導(dǎo)出的物聯(lián)平臺填寫,

sourceString否—

最大長度255

categoryCategory隸屬類目—

nodeTypeNodeType設(shè)備類型是—

authTypeAuthType設(shè)備認證方式是—

protoTypeArray<ProtoType>接入?yún)f(xié)議類型,如:MQTT是—

linkTypeArray<LinkType>設(shè)備入網(wǎng)方式是—

protoTSLTypeArray<ProtoTSLType>物模型協(xié)議類型是—

表20Category類型字段描述

參數(shù)類型描述是否必須備注

categoryKeyString一級類目,最大長度64是應(yīng)由字符和數(shù)值組成

categoryDescriptionString一級類目描述,最大長度255是—

subCategoryKeyString二級類目,最大長度64是—

subCategoryDescriptionString二級類目描述,最大長度255是應(yīng)由字符和數(shù)值組成

表21NodeType類型字段描述

7

T/ZAITSXXXX—XXXX

參數(shù)類型描述是否必須備注

應(yīng)包含:直連設(shè)備;網(wǎng)關(guān);

idNumber設(shè)備類型ID是

透傳子設(shè)備;非透傳子設(shè)備

descriptionString描述,最大長度255是—

表22AuthType類型字段描述

參數(shù)類型描述是否必須備注

應(yīng)包含:一型一密;一機一

idNumber認證類型ID是

descriptionString描述,最大長度255是—

表23ProtoType類型字段描述

參數(shù)類型描述是否必須備注

idNumber協(xié)議類型ID是—

descriptionString描述,最大長度255是—

表24LinkType類型字段描述

是否必

參數(shù)類型描述備注

應(yīng)包含:以太網(wǎng);Wi-Fi;蜂窩

idNumber連接方式ID是(2G/3G/4G/5G);LoRaWAN;私有

LoRa;NB;BLE;ZigBee等

descriptionString描述,最大長度255是—

表25ProtoTSLType類型字段描述

參數(shù)類型描述是否必須備注

應(yīng)包含:二進制協(xié)議(binary),

idNumber物模型協(xié)議類型ID是

JSON協(xié)議等

descriptionString描述,最大長度255是—

8

T/ZAITSXXXX—XXXX

附錄A

(資料性附錄)

視聯(lián)網(wǎng)物模型基礎(chǔ)描述JSON舉例

A.1物模型基礎(chǔ)描述舉例

A.1.1元數(shù)據(jù)

元數(shù)據(jù)JSON舉例:

{

/*數(shù)據(jù)類型*/

"type":"array",

/*數(shù)據(jù)規(guī)格*/

"specs":{}

}

A.1.2整型

整型JSON舉例:

{

/*數(shù)據(jù)類型*/

"type":"number",

/*數(shù)據(jù)規(guī)格*/

"specs":{

/*取值范圍*/

"range":[1879048192,1895825407],

/*增長或減少的步長*/

"step":0,

/*單位*/

"unit":"",

/*單位名稱*/

"unitName":"無"

}

}

A.1.3浮點型

浮點型JSON舉例:

{

/*數(shù)據(jù)類型*/

"type":"float",

/*數(shù)據(jù)規(guī)格*/

"specs":{

/*取值范圍*/

"range":[-150.0,100.0],

/*增長或減少的步長*/

"step":"0.1",

/*單位*/

"unit":"℃",

/*單位名稱*/

"unitName":"攝氏度"

}

}

9

T/ZAITSXXXX—XXXX

A.1.4文本類型

文本類型JSON舉例:

{

/*數(shù)據(jù)類型*/

"type":"text",

/*數(shù)據(jù)規(guī)格*/

"specs":{

/*預(yù)留*/

"rule":"",

/*文本最大長度*/

"length":64

}

}

A.1.5布爾型

布爾型JSON舉例:

{

/*數(shù)據(jù)類型*/

"type":"bool",

/*數(shù)據(jù)規(guī)格*/

"specs":{

/*false值含義描述*/

"0":"關(guān)",

/*true值含義描述*/

"1":"開"

}

}

A.1.6時間類型

時間類型JSON舉例:

{

/*數(shù)據(jù)類型*/

"type":"date"

}

A.1.7枚舉類型

枚舉類型JSON舉例:

{

/*數(shù)據(jù)類型*/

"type":"enum",

/*數(shù)據(jù)規(guī)格*/

"specs":{

/*枚舉值列表*/

"list":[

{

/*枚舉值*/

"value":0,

/*枚舉值含義描述*/

"description":"失敗"

},

{

/*枚舉值*/

"value":1,

10

T/ZAITSXXXX—XXXX

/*枚舉值含義描述*/

"description":"成功"

}

]

}

}

A.1.8數(shù)組類型

數(shù)組類型JSON舉例:

{

/*數(shù)據(jù)類型*/

"type":"array",

/*數(shù)據(jù)規(guī)格*/

"specs":{

/*數(shù)組最大長度*/

"size":"24",

/*數(shù)組元素規(guī)格*/

"item":{

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論