前言
现在,越来越多的设备采用 ZigBee 技术实现智能控制,而 ZigBee 设备管理及指令传输协议方面需要开发者关注。为了方便开发者快速搭建 ZigBee 网络,并提供基础指令传输,我们介绍 npm 包 commercial-zigbee-device-daemon 的使用方法。
commercial-zigbee-device-daemon 简介
commercial-zigbee-device-daemon 是一个基于 Node.js 平台的 ZigBee 串口网关管理工具,提供 ZigBee 网络初始化及维护、设备发现、属性读写等功能。其特点包括:
- 遵循 ZigBee HA 协议规范,满足 ZigBee 应用要求;
- 支持串口直接通讯,无需额外硬件,可以使用 Raspberry Pi 等树莓派系列产品;
- 开放源代码,可作为底层模块嵌入到其他应用中。
commercial-zigbee-device-daemon 安装
首先需要在系统中安装 Node.js 环境,版本需不低于 v8.0.0。可进入 Node.js 官网下载安装程序进行安装。
在终端输入以下命令进行 npm 包安装:
npm install -g commercial-zigbee-device-daemon
commercial-zigbee-device-daemon 使用
commercial-zigbee-device-daemon 包含两个命令行工具:onebusaway-gtfs 和 onebusaway-gtfs-realtime-exporter。
初始化 ZigBee 网络
在 ZigBee 设备管理中,首先需要初始化 ZigBee 网络。使用以下命令初始化 ZigBee 网络:
commercial-zigbee-device-daemon --reset
其中,参数 -reset 表示在初始化网络前重置现有网络,并在 ZigBee 网络上清除所有设备和相关信息。
发现 ZigBee 设备
在 ZigBee 设备管理中,使用下面命令发现 ZigBee 设备:
commercial-zigbee-device-daemon --search
通过使用上面的命令,ZigBee 网络中所有新设备的基本信息(例如:短地址、MAC 地址、设备类型等)都会被发现。可以使用云端或其他应用开发者编写的代码,对新设备进行控制。
控制 ZigBee 设备
在 ZigBee 设备管理中,可以通过读取/写入属性来控制设备。属性是设备状态或功能的表示。可以使用以下命令来读取一个设备的某个属性:
commercial-zigbee-device-daemon --read [shortAddress] [endpointId] [clusterId] [attributeId]
其中:
- shortAddress 表示设备的短地址;
- endpointId 表示设备的终端端口;
- clusterId 表示要读取的簇 ID;
- attributeId 表示要读取的属性 ID。
使用以下命令来写入一个设备的某个属性:
commercial-zigbee-device-daemon --write [shortAddress] [endpointId] [clusterId] [attributeId] [data]
其中:
- shortAddress 表示设备的短地址;
- endpointId 表示设备的终端端口;
- clusterId 表示要写入的簇 ID;
- attributeId 表示要写入的属性 ID;
- data 表示要写入的数据。
示例代码
以下是使用 commercial-zigbee-device-daemon 控制 ZigBee 设备的示例代码:
-- -------------------- ---- ------- ----- ------ - ------------------------------------------- -- --- ------ -- --------------- -- -- ------ ------ ----- ------- - ---------------- -- -- ------ -- ---------------------- -- - ----- ---- - - ------ ---- -- --------------------------------- ------------------ -- -- ------ ---
总结
commercial-zigbee-device-daemon 是一个开源的 ZigBee 设备管理工具,可以帮助开发者快速搭建 ZigBee 网络,并提供基础指令传输。本文介绍了 commercial-zigbee-device-daemon 的安装、初始化 ZigBee 网络、发现 ZigBee 设备、控制 ZigBee 设备等使用方法。希望本文对 ZigBee 设备管理的开发者们有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/117727