ZigBee中Cluster和Attribute的概念

http://blog.sina.com.cn/s/blog_6170d88d0100to62.html

【综述】

1.引用ZigBee联盟的说法

Cluster: is a container for one or more attributes. (一个或更多属性的集合)

Attribute: a data entity which represents a physical quantity or state.(反映物 理特性或状态的一个数据实体)

2.我们的观点

Cluster是逻辑设备之间的事务关系,Attribute则是某种事务关系的具体特例;也就是说 Cluster定性,Attribute定量。

【相关问答】

Guest:

请问,attribute这个词怎么理解? 温度 等等? 

ZigBee会友:

在温度这个cluster里面,attribute就是具体的温度值。“属性”attribute是“事务” cluster里面分的具体情况,就像C语言的swich ,case 语句里的用法。

Guest:

请问“事务”又是个什么概念?是不是就是一个事件?我理解cluster是属性的集合? 

ZigBee会友:

cluster的确是属性的集合,和一般提到的事件不一样,在网络理解为事务关系更贴切, Endpoint之间依据“事务关系”(cluster)通讯。

Guest:

一个endpoint对应一个application?比如一个switch对应“开关”这个application? 

ZigBee会友:

你的这种提法不规范,一个endpoint是一个逻辑设备,可以包含多个Cluster,每个 Cluster包含不同的属性(开、关是“灯控制” Cluster对应不同情况的attribute)。

Guest:

这样理解可以吧:profiles 理解为联合国宪章条款,cluster 是伊朗核问题,attribute 就是谈判, cluster是在遵守profile的情况下制定的?

ZigBee会友:

profiles 是面向具体应用的公约准则,cluster 此应用涉及到的事务关系,attribute 就是某事务可以预料的各种情况。

Guest:

问一个问题:规定240个endpoint是指一个node上还是整个cluster呢,也就是说一个 cluster最多允许有240个endpoint还是240*240个endpoint呢?

ZigBee会友:

协议中的说法指一个node。 endpoint、node、cluster是三个概念 :node是物理设备, endpoint是逻辑工作端,cluster是大家通讯的事务关系(属性的集合)。另外,网络拓扑 结构中提到的cluster是集群树,包括家长(parent)及其子女(child)。

Guest:

我想问问,配置文件到底是什么?协议中好像说是设备描述符和簇描述符和服务类型 (KVP或MSG)。难道profile是设备描述符和簇描述符和服务类型(KVP或MSG)的集合?

ZigBee会友:

Profile也可以翻译成配置文件,实质上大家公认的在某个方面应用的公共准则(对逻 辑设备及其接口的描述集合)。

Guest:

那Profile是如何划分的, 根据实际location 还是app的相关性分得?

ZigBee会友:

根据应用相关性。

Guest:

cluster是不是指一个应用?事务是service 是吗 ,比如 KVP service 类型, 是吧?把它和 multicast 往一起混,就乱了。谢谢!

ZigBee会友:

总之profile是面向应用的公约或准则;具体包括多种事务关系;每种事务关系又分多 种情况。

Guest:

协议上的nwk_addr_req() 标注是cluser ID0x00,后面还有如clusterID 0x01的, clusterID不是应该是不固定吗?!

ZigBee会友: clusterID和cluster一一对应,不同的cluster当然用不同的clusterID 。

Guest:

哦!可能我对cluster的理解有问题!我觉得cluster就是在绑定时产生的,所以 clusterID应该是随机的。为什么协议里primitive也会有clusterID呢?!而且不同的 primitive有不同的 固定的clusterID呢?!

ZigBee会友:

primitive是一个广泛意义上的名次,泛指行为和操作,primitive和clusterID没有必 然的对应关系。

Guest:

ClusterID=0x21 Bind_req(SrcAddress,SrcenEp,clusterID,DstAddress,DstenEp ) 那ClusterID=0x21什么意思!?

ZigBee会友:

就是约定好的某事务对应的事务号,双方以此建立对应关系(邦定关系)。比如端设备 一的开关控制端设备三的灯,五个参数对应关系:(端设备一SrcAddress,开关SrcenEp,灯 控制clusterID, 端设备三DstAddress,灯DstenEp)。现在理解吗?

Guest:

这我理解!那个cluserID=0x21,我不清楚!为什么是固定的!

ZigBee会友:

cluserID=0x21表示“灯控制”灯控制这个cluser cluserID=0x20表示“电流”这个cluser

Guest: 我对cluser的理解正确吗!?就是在绑定的时候,产生的!? 那难道每个primitive都 有一个clusterID?

ZigBee会友: 当然了每个邦定都围绕着一个cluser ,邦定三个要素:source、cluser、destGuest: 我就是不明白,为什么把primitive跟cluster扯上关系?

ZigBee会友: primitive就是“原语”,和cluster没有必然的联系,就是某种行为的说法,描述逻辑 设备之间的操作和行为时偶然和某个cluster扯上关系,在描述设备内部工作实体之间的操 作和行为时就没有了。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值