物模型是阿里云物聯網平臺為產品定義的數據模型,用于描述產品的功能。本文介紹物模型相關概念和使用限制。
功能說明
物模型是物理空間中的實體(如傳感器、車載裝置、樓宇、工廠等)在云端的數字化表示,從屬性、服務和事件三個維度,分別描述了該實體是什么、能做什么、可以對外提供哪些信息。定義了物模型的這三個維度,即完成了產品功能的定義。
功能類型 | 說明 |
屬性(Property) | 用于描述設備運行時具體信息和狀態。 例如,環境監測設備所讀取的當前環境溫度、智能燈開關狀態、電風扇風力等級等。 屬性可分為讀寫和只讀兩種類型。讀寫類型支持讀取和設置屬性值,只讀類型僅支持讀取屬性值。 |
服務(Service) | 指設備可供外部調用的指令或方法。服務調用中可設置輸入和輸出參數。輸入參數是服務執行時的參數,輸出參數是服務執行后的結果。 相比于屬性,服務可通過一條指令實現更復雜的業務邏輯,例如執行某項特定的任務。 服務分為異步和同步兩種調用方式。 |
事件(Event) | 設備運行時,主動上報給云端的信息,一般包含需要被外部感知和處理的信息、告警和故障。事件中可包含多個輸出參數。 例如,某項任務完成后的通知信息;設備發生故障時的溫度、時間信息;設備告警時的運行狀態等。 事件可以被訂閱和推送。 |
物聯網平臺支持為產品定義多組功能(屬性、服務和事件)。一組功能定義的集合,就是一個物模型模塊。多個物模型模塊,彼此互不影響。
物模型模塊功能,解決了工業場景中復雜的設備建模,便于在同一產品下,開發不同功能的設備。
例如,電暖扇產品的功能屬性有電源開關、檔位(高、中、低)和室內溫度,您可以在一個模塊添加前2個屬性,在另一個模塊添加三個屬性,然后分別在不同設備端,針對不同物模型模塊功能進行開發。此時,該產品下不同設備就可以實現不同功能。
物聯網平臺已提供默認模塊,您可根據需要新增自定義模塊。每個產品中默認模塊和自定義模塊總個數不能超過200個。
2021年01月01日(不含當日)之前已定義的產品功能,歸類于物模型默認模塊。
使用說明
物聯網平臺通過定義一種物的描述語言來描述物模型模塊和功能,稱為TSL(Thing Specification Language)。
物模型模塊下定義的功能不需要同時包含屬性、服務和事件,按需配置即可。
物模型TSL文件格式為JSON。您可在物聯網平臺控制臺產品詳情頁面,單擊功能定義頁簽,單擊物模型TSL,查看或導出JSON格式的TSL。相關字段說明,請參見物模型TSL字段說明。
物聯網平臺支持單個和批量添加物模型。批量導入時,您可自定義物模型TSL文件,編寫要求,請參見下文限制說明。
限制說明
物模型功能定義限制,請參見產品與設備的物模型功能定義。以下為批量導入物模型TSL文件時的使用限制。
使用方法 | 限制說明 |
單個物模型TSL文件 | 文件后綴名為 有效字符,指JSON格式內容中,除換行和對齊字符之外的字符。 |
多個物模型TSL文件 |
|