嵌入式通信协议----Zigbee

news2024/11/22 16:41:34

一、简介

1.概念

       Zigbee 是一种广泛用于连接物联网(IoT)设备的无线通信协议。它基于 IEEE 802.15.4 标准,使用低功耗数字无线电来创建个人区域网络(PAN)。Zigbee 网络的特点是数据速率低、功耗低、覆盖范围短,非常适合家庭自动化、智能照明和工业控制系统等应用。Zigbee 支持网状网络,使设备能够通过中继节点传输数据,从而增加了网络的可靠性和覆盖范围。

2.特点

  • 低功耗:Zigbee设备非常节能,适合电池供电的设备,可以使用多年而无需更换电池。
  • 低数据速率:适用于传输小数据包的应用,如传感器数据和控制命令,数据速率通常在20kbps到250kbps之间。
  • 短距离通信:典型的通信范围在10到100米之间,适合家庭或小型办公环境。
  • 网状网络:支持Mesh网络拓扑结构,设备可以通过中继其他设备的数据,从而扩展网络覆盖范围和增强可靠性。
  • 高安全性:采用128位AES加密,确保数据传输的安全性和隐私性。
  • 自组网功能:设备可以自动加入网络并配置,大大简化了网络的部署和扩展。
  • 低成本:硬件和实现成本较低,适合大规模部署。
  • 互操作性:Zigbee联盟制定了统一的标准,确保不同厂商的设备能够互操作。
  • 多种工作频段:主要工作在2.4GHz频段,也支持868MHz(欧洲)和915MHz(北美)频段,适应不同地区的频谱要求。

3.优缺点

优点:

①低功耗

②覆盖范围广

③安全性高

④灵活性和可拓展性

⑤低成本

缺点:

①底数据速率

②短距离通信

③干扰问题

④网络管理复杂

⑤延迟高

⑥兼容性差

4.应用

①家庭自动化

②工业自动化

③能源管理

④智能楼宇

⑤智慧物流

5.重要概念

通信频道(Channel):ZigBee 可选 16 个物理通道,即 CH11~CH26。

局域网 ID(PanID):用于判断自身所属的网络的标识。可互相通信的节点,PanID 必 须像相同,且必须保证在同一工作区域内的相邻网络的 PanID 不同。

物理地址(MAC):模块的 MAC 地址,为 64 位,也叫 IEEE 地址,不可修改的全球唯 一标识。

本地网络地址(16 位网络地址):用于区分网络中各个节点的节点短地址,在同一 PanID 下,本地网络地址必须是唯一的,引入短地址的目的是为了提高 ZigBee 的通信效率。

目标网络地址(16 位网络地址):当前的通信目标地址(仅在单播时有用)。

发送模式:单播模式就是单个发送者和单个接收者之间的通信;广播模式就是一个发送 者和多个接收者之间的通信。

二、Zigbee模块

        使用E180-Z5812SX是成都亿佰特基于TELINKTLSR8258无线SOC设计生产的一款小体积、低功耗、高可靠性、工作在2.4GHz 频段的ZIGBEE 模块,芯片自带高达48Mhz的32位高性能MCU发射功率最高可达到12dBm其最低周期休眠电流2uA。GPIO控制:本地/远程的 GPIO 电平控制,2个IO口可选择。其参数如下图所示

        标准 ZigBee 网络协议包括协调器。路由器和终端节点,而建立一个 ZigBee 网络除了必 须要有协调器之外,仅需加上路由器或终端节点即可。

        在启动标准 ZigBee Pro 网路通信前, 如果没有建立存储跳转路径的路由表,则节点无法通信,所以必须通过发送网络报文查找节 点建立路由表。当节点之间没有数据传输时,同样需要定时地发送网络报文检查节点是否异 常。由此可见,ZigBeePro 不仅启动速度慢,而且定时发送网络报文占用大量的带宽。 采用的 ZigBee 模块在 ZigBee 协议栈的基础上开发了 FastZigBee 透传对等网络协议, 其混合网络也和标准 ZigBee 网络一致。其网络拓扑如图所示。

FastZigBee 节点类型: FastZigBee 设备分为终端设备(Target)和路由设备(Router),且网络可通过 ZigBee 网 关(ZigBee 转 Wi-Fi)接入互联网。(与标准 ZigBee 协议相比少了协调器) 。

三、配置方法

1.恢复出厂配置的方法

        在使用 ZigBee 前,先将其恢复出厂状态,通信器模块连接电源后,正常工作时 D201 灯 (蓝色)闪烁(500ms 周期)。 先按下 Z_DEF 按钮不松开的情况下,按下 Z_RST 按钮,(此时 D201(蓝色)熄灭), 先松开 Z_RST,此时 D201(蓝色)快速闪烁一下,再以 500ms 周期闪烁,最后松开 Z_DEF 按钮,即完成恢复出厂设置。如下图

2、使用配置软件进行配置

先安装配置软件,WirelessCfg_V1.3.8.01208 软件,如图:

选择好安装路径按下一步即可完成安装,过程简单,这里就不贴图示意了,安装完成后 会在桌面生成一个快捷方式,如下图所示。

四、透传实验

        需要准备的步骤

1. 硬件连接及设置: 进行连接并设置好拨动开关,注意,将 Micro USB 线连接主控 USB_SWD 接口和电脑 USB 端口。使用前先将 ZigBee 模块恢复出厂。

2.程序准备 将开发板烧录入 ZigBee_Test.hex 文件,特别注意,程序中串口 1 的波特率是 57600bps, 串口 2 的波特率也是 57600bps。

3.调试软件准备 准备好调试助手,有两个软件,一个是本章安装的 ZigBee 配置软件,一个是我们在串 口实验中已经使用过的的串口调试助手,如图所示。

①打开 WirelessCfg 软件,初始的界面如图所示。其中红框为笔者电脑连接的串口 号,用户根据自己的硬件选择对应的端口号。 

②下面介绍如何使用该配置软件

1、先选择“设备连接”选项卡,默认选项卡

2、选择“串口设备”选项卡,默认选项卡

3、选择“设备类型”选项卡,默认选项卡

4、依据设备连接选择串口号,注意是 ST-LINK 的虚拟串口号。

5、选择波特率,修改为 57600,默认为 115200,切记!!!

6、打开串口

7、连接设备 

注意一定要按照这样的步骤顺序进行,如下图所示。注意图中的序号即为步骤顺序 

正确连接,并读取到设备的信息的提示如下图 所示。 

当正确连接并读取到设备类型时,选择“设备配置”选项卡,可查看到设备的配置信息, 通过双击左边的“本地设备”列表,可重新获取模块的配置信息,根据实际应用修改模块的 参数后,点击“保存配置”即完成模块的配置,如图所示。

        注意,前面讲了,如果两个 ZigBee 模块要通信,至少要确保 PanID 一致,通信频道一 致,这样才在一个网络里,才能进行通信。如果是单播通信,则目标地址需要设置为对方的 本地地址。 通过调节模块信息框右边的滑动栏,找到需要修改的项目。

1、修改 PAN ID

2、修改本地地址

3、修改目标网络地址

4、点击保存配置

5、自动弹出配置保存成功,点击确定,会自动刷新配置信息

如图所示。注意一定要保存配置,配置才会生效。 

根据上面提到的方法,我们将两个模块配置为单播通信。将本地网络地址和目标网络地 址交叉设置,其它参数保持相同即可,如图所示。 

        这样这两个模块就可以进行通信了。 打开开发板连接的电脑(两台)上的串口调试助手,设置波特率为 57600,并按下开发 上的复位按钮。开发板下载的 ZigBee_Test 固件会自动打印信息,如图所示。 

在上图中注意发送框内写上对应模块的本地地址。点击串口调试助手的发送,可 以看到发送的信息显示在对方的接收框内。如下图所示。 

 这样就完成了两个开发板之间的 ZigBee 单播通信。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1862728.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Mybatis-plus学习|性能分析插件、条件构造器、代码自动生成器

性能分析插件 我们在平时的开发中,会遇到一些慢sql。测试!druid…. MP也提供性能分析插件,如果超过这个时间就停止运行! 1、导入插件 该插件只允许在开发和测试环境中使用,故先设置开发环境为开发模式 在MP配置类中注册这个插件&#xff0…

微软专家分享 | AIGC开发者沙龙上海站来啦!

为了向技术开发者、业务人员、高校学生、以及个体创业人员等AI技术关注者们提供更深入的行业洞察、技术交流平台和创新思维的启发,AIGC开放社区联合微软Reactor特别组织了一系列城市巡回沙龙分享活动。在上海站中,我们有幸邀请到多位微软专家进行深入的主…

车辆数据的提取、定位和融合 精确车辆定位(其三.一 共十二篇)随机复合

第一篇: System Introduction 第二篇:State of the Art 第三篇:localization 第四篇:Submapping and temporal weighting 第五篇:Mapping of Point-shaped landmark data 第六篇:Clustering of landma…

A股周一走势历史罕见,你知道是为什么吗?

今天的A股,让人历史罕见,你知道是为什么吗?盘面出现2个重要信号,一起来看看: 1、今天大盘低开低走,跌懵了,两市板块全部在等待翻红,这让人历史罕见。 2、盘面出现2个重要信号&#x…

virutalBox安装debian并配置docker环境

下载镜像 https://gemmei.ftp.acc.umu.se/debian-cd/current/amd64/iso-cd/debian-12.5.0-amd64-netinst.iso 虚拟机安装 如何在Virtual Box 上安装Debian系统_virtual box debian iso netinst-CSDN博客 启动命令行模式 如何设置Debian图形启动或命令行界面启动&#xff1…

实验室信息化管理系统LIMS直击实验室管理痛点,提升效率与规范

实验室信息化管理系统LIMS直击实验室管理痛点,提升效率与规范 在实验室管理的实践中,您是否也面临过以下挑战:如何高效协调和管理多个检测项目?如何让管理经验与检测数据有效积累?如何应对项目监控与管理的复杂性&…

C语言数据结构-分析期末选择题考点(一)

昔我往矣,杨柳依依 今我来思,雨雪霏霏 契子✨ 有道是:得选择题者得天下。临近考试,便总结一下数据结构选择题的常考题型吧,以及预测一下考点,一来是为了备考,二来可以水文。祝各位老铁 “挂柯南…

数据结构-线性表的链式表示

目录 前言一、线性表的链式表示和实现1.1 线性表的表示1.2 基本操作的实现1.3 线性表的链式表示的优缺点 总结 前言 本篇文章主要介绍线性表的链式表示 一、线性表的链式表示和实现 1.1 线性表的表示 线性表的链式表示又称为链式存储结构或链式映像 链式存储定义&#xff1…

1.2 DataX 数据同步工具详细教程

DataX 是阿里巴巴开源的一款高效的数据同步工具,旨在实现多种异构数据源之间的高效数据同步。以下是对 DataX 的详细介绍: 架构 DataX 的架构主要包括以下几个核心组件: DataX Core:负责任务调度、插件加载、日志管理等核心功能…

达梦数据库(DM8)替换授权dm.key遇到的错误, lic info is different between dm.key and sysinfo.

1、报错贴图 2、报错日志提示 version info: security lic info is different between dm.key and sysinfo. 原因说明:dm.key授权与服务器的硬件环境不匹配引起的报错,如:cpu、操作系统版本有关。

C++——布隆过滤器

目录 布隆过滤器的提出 布隆过滤器的概念 布隆过滤器的基本原理和特点 布隆过滤器的实现 布隆过滤器的插入 布隆过滤器的查找 布隆过滤器的删除 布隆过滤器的优点 布隆过滤器的缺陷 布隆过滤器使用场景 布隆过滤器的提出 在注册账号设置昵称的时候,为了保证…

word文档怎么加密?电脑文件加密的详细步骤【分享4个】

为了保护Word文档不被未经授权的人员访问或修改,我们通常会采用加密的方式来增加其安全性。那么Word文档怎么加密?电脑文档安全成为了大家所关心的话题。 本文针对不同的情况,本文分享了4种电脑文件加密的方法,每一种加密方法都比…

数据分析必备:一步步教你如何用matplotlib做数据可视化(12)

1、Matplotlib 3D线框图 线框图采用值网格并将其投影到指定的三维表面上,并且可以使得到的三维形式非常容易可视化。plot_wireframe()函数用于此目的 import matplotlib.pyplot as plt import numpy as np import math import seaborn as sns plt.rcParams[font.s…

ArkTS自定义组件

一、自定义组件基本结构 // 定义自定义组件 ButtonCom.ets Component export struct BtnCom{State msg: string "按钮";build() {Row(){Text(this.msg).onClick(() > {this.msg "测试"})}} } // 引入自定义组件 import {BtnCom} from "./Butto…

MySQL——联表查询JoinON详解

Join 对比(7种) 代码演示: -- 查询参加了考试的同学(学号,姓名,科目编号,分数) SELECT * FROM student SELECT * FROM result/* 1. 分析需求:分析查询的字段来自哪些表&…

Ubuntu安装NVIDIA驱动

目录 安装gcc 安装NVIDIA驱动 检查nvidia显卡型号 根据显卡型号下载对应的驱动 安装命令 如何卸载 安装gcc 安装显卡驱动需要使用gcc,输入命令检查是否有gcc gcc --version 如果有版本号弹出,说明已经有gcc环境了,没有的则运行以下…

【高校科研前沿】四川大学刘超研究员为一作在《Geophys. Res. Lett.》发表团队成果:植被形态影响河床泥沙输运

文章简介 论文名称:Plant morphology impacts bedload sediment transport 第一作者及单位:刘超(研究员|四川大学水利水电学院) 通讯作者及单位:Yuqi Shan(四川大学灾后重建与管理研究所) 文…

Kafka基本架构

「kafka设计思想」 一个最基本的架构是生产者发布一个消息到Kafka的一个Topic ,该Topic的消息存放于的Broker中,消费者订阅这个Topic,然后从Broker中消费消息,下面这个图可以更直观的描述这个场景: 「消息状态&#x…

C++初学者指南-2.输入和输出---文件输入和输出

C初学者指南-2.输入和输出—文件输入和输出 文章目录 C初学者指南-2.输入和输出---文件输入和输出1.写文本文件2.读文本文件3.打开关闭文件4.文件打开的模式 1.写文本文件 使用&#xff1a; std::ofstream&#xff08;输出文件流&#xff09; #include <fstream> // 文…

2024.6.25力扣刷题记录-周赛403

目录 一、3194. 最小元素和最大元素的最小平均值 二、3195. 包含所有 1 的最小矩形面积 I 三、3196. 最大化子数组的总成本 四、3197. 包含所有 1 的最小矩形面积 II 博主在比赛时只过了前两题。剩下跟着灵神做&#xff0c;来自视频&#xff1a; 【状态机 DP【力扣周赛 403…