徹底明白Zigbee術(shù)語(yǔ)——群集(Cluster)、端點(diǎn)(EndPoint)等
在學(xué)習zigbee協(xié)議棧的時(shí)候經(jīng)??吹綉贸绦?、zigbee設備對象(ZDO)、節點(diǎn)、設備、端點(diǎn)、群集、屬性、綁定、尋址等一下zigbee 術(shù)語(yǔ),不知道這些zigbee術(shù)語(yǔ)是表示什么,是如何定義的,是如何區分的,是如何劃分的以及他們之間有什么聯(lián)系,一切的一切全不知道。網(wǎng)上也有很多 zigbee術(shù)語(yǔ)的講解,不知道是自己的理解能力有問(wèn)題,還是本身這個(gè)就是很難理解,太過(guò)于抽象呢?
一、屬性
屬性Attribute是一個(gè)反映物理數量或狀態(tài)的數據值,比如開(kāi)關(guān)值(On/Off)、燈的狀態(tài)值(On/Off)、溫度值、百分比等等
二、群集,或稱(chēng)為簇
群集Cluster是包含一個(gè)或多個(gè)屬性(attribute)的群集。簡(jiǎn)單的說(shuō),群集就是屬性的集合。每個(gè)群集都被分配一個(gè)唯一群集ID且每個(gè)群集最多有65536個(gè)屬性。比如一個(gè)群集包含了不同情況下的開(kāi)關(guān)、不同情況下的燈、不同情況下的溫度值、不同情況下的百分比等等
三、設備描述
設備描述Device DescripTIon是指一個(gè)大型目標應用的一部分,包括一個(gè)或多個(gè)群集
四、端點(diǎn)
端點(diǎn)EndPoint是協(xié)議棧應用層的入口,即入口地址,也可以理解應用對象(ApplicaTIon Object)存在的地方,它是為實(shí)現一個(gè)設備描述而定義的一組群集。每個(gè)Zigbee設備可以最多支持240這樣的端點(diǎn),端口0用于整個(gè)Zigbee設備的配置和管理,應用程序可以通過(guò)端點(diǎn)0與Zigbee堆棧的其他層通信,從而實(shí)現對這些層的初始化和配置。附屬在端點(diǎn)0的對象被稱(chēng)為Zigbee設備對象(ZDO)。端點(diǎn)255用于向所有端點(diǎn)的廣播,端點(diǎn)241~254是保留端點(diǎn)。
五、配置文件
配置文件Profile可以理解為共同促進(jìn)交互式應用的多個(gè)設備描述項的集合。定義了屬性ID與群集(簇)ID,使之看起來(lái)就像設備的某種特性,以家庭智能控制系統為例,燈配置文件設定了遠程控制設備的群集OnOffDRC含有一種屬性OnOff,且該屬性為無(wú)符號8位值,值0xFF意味著(zhù)“ 開(kāi)”,0x00為“關(guān)”,0xF0則為無(wú)效。通常,配置文件也為設備定義了,哪些群集是強制托管,哪些群集是可選擇的。另外,配置文件還定義了一些可選擇的zigbee協(xié)議托管服務(wù)。每一個(gè)應用都對應一個(gè)配置文件(Profile),配置文件內容包括:設備ID(Device ID)、群集ID(Cluster ID)、屬性ID(Attribute ID),及AF(應用框架)使用何種服務(wù)類(lèi)型等信息。在zigbee協(xié)議中,一個(gè)配置文件中允許最多2^16個(gè)設備,2^8個(gè)群集,每個(gè)群集支持最多 2^16個(gè)屬性。
六、節點(diǎn)
節點(diǎn)Node也可以理解為一個(gè)容器,包含一組zigbee設備,分享一個(gè)無(wú)線(xiàn)信道。每個(gè)節點(diǎn)有且只有一個(gè)無(wú)線(xiàn)信道。一個(gè)節點(diǎn)除了64位的IEEE地址,16位的網(wǎng)絡(luò )地址,每個(gè)節點(diǎn)還提供了8位應用層入口地址(端點(diǎn):EndPoint),對應于用戶(hù)應用對象。
節點(diǎn)一Z1:開(kāi)關(guān)控制裝置
節點(diǎn)二Z2:燈裝置
事件(Event):開(kāi)關(guān)2控制燈4的亮滅,開(kāi)關(guān)1控制燈組1~3的亮滅
群集(Cluster):不同情況下開(kāi)關(guān)的狀態(tài)和燈的狀態(tài)
端點(diǎn)(EndPoint):開(kāi)關(guān)和燈
屬性(Attribute):開(kāi)關(guān)和燈都有兩種屬性:開(kāi)和關(guān)
七、綁定(Bindling)
Zigbee定義了一個(gè)稱(chēng)為端點(diǎn)綁定的特殊過(guò)程。綁定即在源節點(diǎn)的某個(gè)端點(diǎn)(EndPoint)和目標節點(diǎn)的某個(gè)端點(diǎn)之間創(chuàng )建一條邏輯鏈路。綁定可以發(fā)生在兩個(gè)或多個(gè)設備之間。協(xié)調器節點(diǎn)維護一個(gè)基本上包括兩個(gè)或多個(gè)端點(diǎn)之間的邏輯鏈路的綁定表。
在綁定表中,包含如下信息,源節點(diǎn)和目標節點(diǎn)的IEEE地址、端點(diǎn)號、群集號。對于可以建立綁定關(guān)系的兩個(gè)節點(diǎn),它們的群集的屬性必須一個(gè)選擇“輸入”,另一個(gè)選擇“輸出”,而且群集號必須相等,只有這樣,它們彼此才能建立綁定。如果目標設備的擴展地址是已知的,則調用 zb_BindDeviceRequest()函數可以創(chuàng )建一個(gè)綁定條目。
八、尋址(Addressing)
在Zigbee網(wǎng)絡(luò )中,使用兩種地址:一種是64位的IEEE地址,也叫物理地址,64位地址在所有zigbee設備之中是唯一的,其中包含一個(gè)由 IEEE分配、也是全球唯一的24位制造商特定組織標識符OUI(OrganizaTIonally Uqique IdenTIfier)。另一種是16位的網(wǎng)絡(luò )地址(NWK Address),當設備加入zigbee網(wǎng)絡(luò )時(shí),從允許其加入的父設備上獲取16位網(wǎng)絡(luò )地址。該地址在zigbee網(wǎng)絡(luò )中唯一,用于數據傳輸和數據包路由。在zigbee中,數據包可以單點(diǎn)傳送(unicast),多點(diǎn)傳送(multicast)或者廣播傳輸(broadcast),所以必須有地址模式參數。一個(gè)單點(diǎn)傳送數據包只發(fā)送給一個(gè)設備,多點(diǎn)傳送數據包則要傳送個(gè)一組設備,而廣播數據則要發(fā)送給整個(gè)網(wǎng)絡(luò )的所有節點(diǎn)。當應用程序需要將數據包發(fā)送給網(wǎng)絡(luò )上的一組設備時(shí),還可以使用組尋址方式(Group Addrssing)。
評論