ZigBee模块无线数据通信通用协议Version 1.2.7
浙江瑞瀛网络科技有限公司
版权声明
本文档所包含的所有信息均为浙江瑞瀛网络科技有限公司(以下简称“瑞瀛”或“本公司”)版权所有。未经本公司书面许可,不得向本公司雇员、代理商、合作方或授权许可方以外的任何第三方泄露本文档内容,不得以任何形式擅自复制或传播本文档。若使用者违反本版权保护的约定,本公司有权追究使用者由此产生的法律责任。
版本更新
V1.0.0 2011-01-01 初稿
V1.0.1 2011-03-15 修改了一些笔误
V1.1.0 2011-04-06 根据用户需求重新排列了对象字典
V1.1.1 2011-04-20 对操作范例中的数据进行了解释
V1.1.2 2011-04-22 增加用户自定义参数
V1.1.3 2011-05-17 增加默认参数值和对应AT指令说明
V1.2.0 2011-06-01 完善了数据通信方式的说明
V1.2.6 2011-09-11 对细节进行了补充说明
V1.2.7 2011-12-21 修改模块信息参数以及触发参数使用说明
目录
1. 概述 (4)
1.1. 节点类型 (4)
2. 帧格式 (6)
2.1. 串口帧格式 (6)
2.2. 通用帧格式 (6)
2.3. 应用层数据帧(ADF)格式 (8)
2.3.1. 读(Read)命令帧:ID = 0x20 (8)
2.3.2. 写(Write)命令帧:ID = 0x25 (8)
3. 对象字典(OD)定义 (10)
3.1. 模块信息参数 (10)
3.2. 网络参数 (10)
3.3. 当前时间参数 (12)
3.4. 执行控制参数 (13)
3.5. 应用配置参数 (15)
3.6. 用户自定义参数 (16)
3.7. 虚拟参数 (16)
3.7.1. UART端口映射参数 (16)
3.7.2. 触发参数 (17)
3.7.3. 节点信息参数 (18)
4. 无线通信密码交换过程 (20)
4.1. COO建立网络 (20)
4.2. 节点加入网络 (20)
5. 操作范例 (21)
5.1. UART数据传递 (21)
5.2. 访问本地节点参数 (23)
6. 用户数据的传递方式 (27)
6.1. 写UART端口映射参数 (27)
6.2. 带目的地址的半透传 (29)
6.3. 全透传方式 (31)
7. 参数默认值以及对应AT指令 (33)
7.1. 网络参数 (33)
7.2. 当前时间参数 (33)
7.3. 执行控制参数 (34)
7.4. 应用配置参数 (34)
1.概述
本协议适用于本公司所生产的所有无线通信模块,实现数据在模块之间的传递。
本协议中包含对象字典以及串口控制协议。对象字典将无线模块内的参数和硬件资源标准化,从而可以采用相同的方法来访问和控制模块内部的资源;串口控制协议为用户提供了对模块的控制访问通道,用户设备可以通过串口对无线通信进行控制,完成数据的传递,参数的访问等。
1.1.节点类型
在无线模块组成的网络中,一个无线模块就被称为一个节点。每个无线模块都有唯一的,不重复的8字节的MAC地址。MAC地址的高4字节固定为0x0080E102。因此在对模块进行寻址时,只使用低4字节的MAC地址即可。根据各个节点功能不同,无线网络中的节点分为以下类型:
●协调器(Coordinator,COO)
COO节点是无线网络的逻辑中心点。通常而言,COO在无线网络中充当网关的功能,实现外界与无线网络之间的信息交换。COO节点能够建立并管理一个新的无线网络。COO节点建立一个无线网络之后,就可以接收其他节点加入网络的请求,从而使无线网络扩展开。COO节点一般使用有线电源供电,不需要休眠,并且能够管理休眠节点。其串口参数配置为115200 8 N 1.
●路由节点(ROUTER)
ROUTER节点具备路由能力,具备为网络中其他节点中继、转发数据的能力。ROUTER节点不能建立一个新的无线网络,但是能够加入到一个已经存在的无线网络中。ROUTER节点加入到无线网络中之后,就可以接受其他节点加入网络,从而实现无线网络的扩展。ROUTER节点一般使用有线电源供电,不需要休眠,并且能够管理休眠节点。其串口参数配置为9600 8 N 1.
●休眠节点(ZigBee End Device,ZED)
ZED节点是无线网络中的末端节点,通常使用电池供电,是休眠节点。ZED 不具备路由功能,也无法接受其他节点加入网络。ZED需要通过其他具备休眠节点管理能力的节点(COO或ROUTER)才能加入到无线网络中,并且该节点
被称为ZED的父节点(PARENT)。由于ZED大部分时间是出于休眠状态,因此PARENT节点需要为ZED完成无线数据的缓冲和转发工作。其串口参数配置为9600 8 N 1.
手持节点(Hand-Hold-Unit,HHU)
HHU节点是无线网络中的移动节点,能够搜索并任意加入/离开无线网络。HHU节点一般用于移动的数据采集或网络诊断,不具备路由能力,也无法接受其他节点加入网络,不能管理休眠节点。HHU节点一般使用电池供电,采用间歇工作模式。其串口参数配置为115200 8 N 1.
2.帧格式
2.1.串口帧格式
应用程序通过串口(UART)访问模块时,为了保证通信的正确率,采用以下的帧格式:
1 Byte 1 Variable 1 1
Header Length Payload Check Footer
UART帧由帧头(Header),帧长(Length),有效数据(Payload),校验和(Check),以及帧尾(Footer)五个部分组成。其中,
Header取值为0x2A,Footer取值为0x23;Length取值为Payload的长度(不包括Header,Footer,Check和Length本身),Check取值为Payload 相加值的最低字节。
本协议以下描述的数据帧格式,就是指Payload的格式。
2.2.通用帧格式
通用帧格式是指所有数据都遵守的帧格式,定义如下:
Bytes 2 6 4 4 4 6 2 2 variable
Frame Control Reserved Source
Address
Reserved T arget
Address
Reserved Cluster
ID
Reserved ADF
其中:
Frame Control:取值为0x8841
Reserved:保留字段,可使用0x00填充
Source Address:数据发起的源节点MAC地址低4字节,也可以使用0x00填充。
Target Address:数据发送的目的节点的MAC地址低4字节。几个特殊的目的地址定义如下:
0xFFFFFFFF:全网络广播地址
0xFFFFFFFE:一跳半径内广播地址
0xFFFFFFF0:COO节点的代替地址,只在节点还不知道COO节点