更新时间:2024-06-24 03:21:36下载pdf
Zigbee 燃气传感器是一个低功耗设备,用于检测在传感器检测范围内是否有燃气泄漏并远程报警用 Zigbee 3.0 标准里的 IAS ZONE 设备来实现。
您现在正在阅览的,是一篇不完全公开的文档,这表示该文档内容的适用性有一定的限制,文档或目录所描述的内容适用于旧版本 SDK、API、工具、平台等。
如果您需要更准确的技术文档,请访问 涂鸦开发者平台,然后自行搜索。
名词 | 解释 |
---|---|
Zigbee SDK | 基于芯科 Zigbee 协议栈经过裁剪、优化后封装的涂鸦 ZigbeeSDK |
Attribute | Attribute (属性)是一个反映物理数量或状态的数据值 |
Cluster | Cluster (群集)是包含一个或多个属性(attribute)的群集 |
EndPoint | EndPoint (端点)是协议栈应用层的入口,即入口地址,也可以理解应用对象存在的地方,它是为实现一个设备描述而定义的一组群集 |
Device Id | Zigbee 中为每一种设备定义的序号 |
弱电设备 | 是指使用电池供电的设备,在 Zigbee 协议中被称为 sleep end device 的设备 |
强电设备 | 是指使用市电或者从市电稳压后的电源供电的设备,在 Zigbee协议中被称为 router 的设备 |
PID | product ID,在涂鸦开发者平台创建的每一个产品都会产生一个唯一的产品编号,关联了产品具体的功能点、APP控制面板、出货信息等所有跟这个产品相关的信息 |
SOC | system on chip,硬件本身无 MCU,控制程序写入联网模块中 |
SDK | Software Development Kit,软件开发工具包,辅助开发某一类软件的相关文档、范例和工具的集合。为了鼓励开发者使用其系统或者语言,许多 SDK 是免费提供的,涂鸦的也是 |
固件 | Firmware,就是写入 EROM(可擦写只读存储器)或 EEPROM (电可擦可编程只读存储器)中的程序。固件是指设备内部保存的设备“驱动程序”,通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作,比如光驱、刻录机等都有内部固件。固件是担任着一个系统最基础最底层工作的软件 |
OTA | 是固件升级的意思,我们是支持 OTA 的 |
产品为基于标准的 Zigbee 3.0 协议
Profile Id | 0x0104 |
---|---|
Device Id | 0x0402 |
endpoint | 描述 |
---|---|
1 | 设备唯一端点 |
Input Clusters(Sever) | Output Clusters(Client) |
---|---|
Basic (0x0000) | OTA (0x0019) |
Power Configuration (0x0001) | |
IAS Zone (0x0500) |
属性填写的目的是网关可以通过 Zigbee 标准读写属性来获取设备的基本信息;
Attributes:
ID | Name | Data Type | Range | Default |
---|---|---|---|---|
0x0000 | ZCLVersion | uint8 - 0x20 | 0x00 - 0xff | 0x03 |
0x0001 | ApplicationVersion | uint8 - 0x20 | 0x00 - 0xff | ie: 0b 01 00 0001 = 1.0.1 即 0x41 为 1.0.1 OTA 功能会用到该版本号,在 OTA 开始阶段,网关会读取 OTA 包的版本号推送给设备。在 OTA 成功重启后,网关会读取版本号来确定是否升级成功。只能往更高的版本升级。 |
0x0002 | StackVersion | uint8 - 0x20 | 0x00 - 0xff | 0x02 |
0x0003 | HWVersion | uint8 - 0x20 | 0x00 - 0xff | 0x01 |
0x0004 | ManufacturerName | string - 0x42 | 0 - 32 bytes | XXX…XXX (长度为16个字节,由 8 字节前缀和 8 字节的PID组成) 0 - 7 bytes:TZ3000 8 - 16 bytes:PID(由产品经理在平台或者自助创建和提供) 默认PID:qgaylqo6 该字段决定了手机 APP 界面的 UI 和功能展现,如果对 PID 没什么要求可用用默认 PID |
0x0005 | ModelIdentifier | string - 0x42 | 0 - 32 bytes | SM0212 该字段为了网关快速识别设备类型用,提升体验 |
0x0007 | PowerSource | enum8 - 0x30 | 0x00 - 0xff | 0x03 |
0xfffd | ClusterRevision | uint16 - 0x21 | 0x0000 - 0xffff | 0x0001 |
Attributes:
ID | name | Data Type | Range | Default |
---|---|---|---|---|
0x0000 | MainsVoltage | uint16 - 0x21 | 0x0000 to 0xffff | 0x03 |
0x0020 | BatteryVoltage | uint8 - 0x20 | 24 – 30(2.4V – 3.0V) | 30 |
0x0021 | BatteryPercentageRemaining | uint8 - 0x20 | 0 – 200(0 – 100%) | 200 |
Attributes:
ID | Name | Data Type | Range | Default |
---|---|---|---|---|
0x0000 | ZoneState | enum8 - 0x30 | All | 0 |
0x0001 | ZoneType | enum16 - 0x31 | All | 0x002B |
0x0002 | ZoneStatus | map16 - 0x19 | All | 0x00 ( Alarm1+bit(0)燃气报警,Alarm1+bit(2)防拆报警,Alarm1+bit(3)低压报警,Alarm1+bit(6)设备故障报警) |
0x0010 | IAS_CIE_Address | EUI64 - 0xF0 | - | - |
0x0011 | ZoneID | uint8 - 0x20 | 0x00 - 0xFF | 0xFF,表示未注册 |
0xFFFD | ClusterRevision | Uint16 - 0x21 | 0x0000 - 0xFFFF | 0x0001 |
Commands:
ID | name | Direction | Description |
---|---|---|---|
0x00 | Zone Status Change Notification | S->C | 上报报警信息 |
0x01 | Zone Enroll Request | S->C | 向网关请求 Zone ID 信息 |
0x00 | Zone Enroll Response | C->S | 网关返回给设备的 Zone ID 请求响应 |
Attributes:
ID | name | Data Type | Range | Default |
---|---|---|---|---|
0x0000 | UpgradeServerID | EUI64 - 0xF0 | — | 0xffffffffffffffff |
0x0001 | FileOffset | uint32 - 0x23 | all | 0x00000000 |
0x0002 | CurrentFileVersion | uint32 - 0x23 | all | 0x21050002 |
0x0006 | ImageUpgradeStatus | enum8 - 0x30 | all | 0x00 |
0x0007 | Manufacturer ID | uint16 - 0x21 | all | 0x1002 |
0x0008 | Image Type ID | uint16 - 0x21 | all | 0x1602 |
0x0009 | MinimumBlockPeriod | uint16 - 0x21 | all | 0x0000 |
0xfffd | ClusterRevision | int16 - 0x21 | 0x0000-0xffff | 0x0001 |
Commands:
ID | name | Direction | Description |
---|---|---|---|
0x00 | Image Notify | S->C | |
0x01 | Query Next Image Request | C->S | |
0x02 | Query Next Image Response | S->C | |
0x03 | Image Block Request | C->S | |
0x05 | Image Block Response | S->C | |
0x06 | Upgrade End Request | C->S | |
0x07 | Upgrade End Response | S->C |
1.组网流程的要求
(1)Beacon request 信道扫描间隔大于 200 毫秒,优先扫描优选信道
(2)扫描时间不超过 30 秒
(3)组网成功后采用 5 秒到 10 秒或者以上的随机延时上报初始报警状态值和初始电量值(100%)
2.设备断电启动流程的要求
(1)设备断电启动后,需和网关同步必要的数据,如电量以及报警状态
3.链路维护的要求
(1)周期 4 小时上报电量信息,电量上报作为心跳包,是判断设备是否离线的依据,如果 12 小时内,无数据和网关交互,网关会判定为设备离线
4.数据上报的要求
(1)如果开启了 APS 层的重传建议把 Disable Default Response 设置成 1,避免太多 ack
(2)重传数据的 Transaction Sequence Number 需要保持一致
(3)重传间隔大于 250 毫秒,重传持续时间建议低于 3 秒
(4)数据上报间隔至少间隔 100 毫秒,防止频繁上报,从而导致 APP 显示错乱
低电提示转换
(1)由于低电提示是底层使用指令提示低电,需要将低电指令报警转化成 Zigbee 电量上报
基于涂鸦 Zigbee SDK 开发:
(1)你只需修改 demo 样例的模块型号和硬件配置即可完成上述功能,包括群组,场景均实现
(2)涂鸦提供完整的烧录,授权,产测流程和软硬件工具
自行开发-非涂鸦 Zigbee 模块:
(1) 需要完整实现上述技术细节
(2)完成设备授权
使用涂鸦完整授权工具授权
通过模块和上位机串口通信授权
串口通信实例代码
自行开发-涂鸦 Zigbee 模块:
(1)只需要实现固件功能细节
(2)购买授权过的涂鸦 Zigbee 模块即可
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈