ZigBee学习(一)

news2024/11/24 22:32:32

文章目录

  • 一、ZigBee介绍
  • 二、IEEE 802.15.4
    • 2.1 物理层
    • 2.2 MAC层
    • 2.3 如何实现网络和设备寻址
    • 2.4 能量管理
  • 三、ZigBee网络拓扑结构
  • 四、ZigBee配置参数

一、ZigBee介绍

  ZigBee是一种基于IEEE 802.15.4标准的高级通信协议,它被设计用于低速率、低功耗和短距离无线通信,尤其适合于构建低成本、复杂的网络。这使得ZigBee成为智能家居、工业控制、医疗保健、智能农业等领域的理想选择。
以下是关于ZigBee的几个重要特点:

1.低功耗:ZigBee协议拥有非常低的功耗。这使得其在许多基于电池供电的应用中具有重要价值。
2.自组网能力:ZigBee可以自动形成和修复网络,也就是说,无需人工设定,它们可以自动找到可以连接的设备并形成网络。
3.大规模网络:ZigBee 支持非常大规模的网络。这使得ZigBee非常适合用于构建包含大量设备的复杂网络,比如在智能家居中的大量设备控制。
4.通信协议简单:相较于Wi-Fi或蓝牙,ZigBee的通信协议相对简单,因此在相同的硬件条件下,实现ZigBee的成本更低。

二、IEEE 802.15.4

2.1 物理层

该层负责无线电频率的选择,数据的传输和接收,以及无线信号的调制和解调。

物理层的主要功能包括:

1.激活和去激活无线电收发器:物理层控制无线电频率接收器和发射器,确保它们在需要的时候启动,并在不需要的时候关闭以节省功耗。
2.信道选择:物理层可以根据环境和网络配置选择一个特定的无线电信道来通信。
3.能量检测(Energy Detection, ED):物理层可以测量当前信道上的RF能量,以便检测信道是否被占用。
4.链路质量指示(Link Quality Indication, LQI):物理层可以估计接收数据包的质量,以便为网络层提供关于信道质量的反馈。
5.数据的发送和接收:物理层负责将数据从MAC层传输到无线电频道,并从无线电频道接收数据传输到MAC层。
6.调制和解调:物理层将数字数据信号转换为适合无线传输的模拟信号,也就是将数据包转换为无线电波。接收端的物理层则负责将无线电波转换回数据包。

IEEE 802.15.4定义了多个频率带,包括868 MHz、915 MHz和2.4 GHz,每个频率带有多个信道。例如,2.4 GHz频带定义了16个信道,每个信道之间的间隔为5 MHz。每个信道都定义了特定的调制类型,例如2.4 GHz频带使用的是偏移键控(OQPSK)调制。

2.2 MAC层

IEEE 802.15.4标准中的媒体访问控制层(MAC)协议主要负责帧的组成、帧的发送和接收、信道访问机制以及网络连接和丧失连接的处理。以下是MAC层的一些主要职责:

1.帧格式与处理:MAC层定义了一个特定的帧格式,用于数据的发送和接收。这个帧格式包括一些关键的信息,如源地址,目的地址,负载数据等。此外,MAC层还负责处理发送和接收的帧。
2.信道访问机制:MAC层利用 CSMA/CA(载波监听多路访问和碰撞避免)机制来控制设备的信道访问,并尽可能地避免信道冲突。
3.网络和设备的寻址:MAC层为每个设备分配一个唯一的地址,并处理目标设备的寻址过程。
网络连接和丧失连接的处理:MAC层负责处理设备的网络连接过程,例如通过发送和接收请求与应答来形成网络。它还会处理设备的丧失连接状态,例如,当设备离开网络或网络不可用时。
4.能源管理:MAC层也参与到设备的能源管理中,例如,它可以将设备设置为低功耗模式,以节省电池电力。
5.安全:MAC层还可以提供一些安全功能,例如数据的加密与解密,以及通过验证接收帧的完整性来防止数据篡改。

与Internet网络中MAC层有什么不同?

IEEE 802.15.4 MAC层和Internet中的MAC层,也就是以太网(Ethernet)或Wi-Fi(IEEE 802.11)的MAC层之间,存在一些显著的不同。

  1. 用途:IEEE 802.15.4是为低速率、低功耗和短距离无线通信设计的,例如传感器网络、自动化设备等。而Ethernet 和 Wi-Fi 则用于创建高速率、高带宽的有线和无线局域网。
  2. 帧结构:IEEE 802.15.4和以太网的帧结构不同。例如,IEEE 802.15.4的一般数据帧包括一些特定的字段,如帧类型、源地址和目标地址等。而以太网的帧结构包括目标MAC地址、源MAC地址、类型/长度和负载数据等。
  3. 信道访问机制:IEEE 802.15.4使用CSMA/CA来避免在无线通信中的碰撞。然而,以太网使用了稍有不同的CSMA/CD(载波侦听多路访问和碰撞检测)机制,它可以在碰撞发生后再进行碰撞处理,因为以太网通信环境比无线环境下的难度要小。
  4. 网络拓扑:IEEE 802.15.4支持星形和对等网络等多种网络拓扑,以适应不同的应用需求。而以太网或Wi-Fi主要使用星形网络拓扑。
  5. 能效:由于目标应用的不同,IEEE 802.15.4特别关注低功耗设计,因此它包含一些节能功能,例如设备能够按照预定的时间表进入休眠模式。而这在以太网和Wi-Fi中并不常见。
    虽然这两者都在MAC层完成定址、帧处理和网络访问控制等基础功能,但基于其应用场景的差异,设计实现上有显著不同。

2.3 如何实现网络和设备寻址

在IEEE 802.15.4标准中,网络和设备地址的配置通过PAN ID和设备地址两种方式实现。

  1. PAN ID:PAN(Personal Area Network)ID是用于标识特定无线个域网的独特16位标识符。每个网络都有一个唯一的PAN ID,所有在同一个网络中的设备都共享这个PAN ID。这是用来区分不同网络的关键标识。
  2. 设备地址:任何IEEE 802.15.4网络中的设备都有一个唯一的地址。这在标准中被定义为两种类型:
  • 短地址:短地址是一个16位的唯一标识符,用于在PAN内识别设备。这种地址由PAN协调器在设备加入网络时分配,并且只需要在该PAN内保持唯一性。
  • 长地址:长地址是一个64位的全局唯一标识符(EUI-64)。EUI-64地址通常在设备制造时硬编码,并且在全球范围内保持唯一性。

整个寻址过程是这样的:根据数据帧的目标PAN ID和设备地址,MAC层确定数据帧应发送给哪个网络中的哪个设备。发送设备将生成一个MAC层数据帧,其中包括源和目标的PAN ID和设备地址。接收设备通过检查数据帧中的PAN ID和设备地址,确定该数据帧是否目标为其自身。如果是,它将处理数据帧;如果不是,它将忽略该数据帧。

通过这种方式,IEEE 802.15.4网络能够支持设备和网络寻址,以正确地路由和交付数据。

2.4 能量管理

IEEE 802.15.4标准设计了一些特性以支持能源管理和降低功耗。考虑到该标准主要用于低功耗和长待机时间的设备(如传感器网络、家庭自动化系统等),这些特性使设备可以在不影响性能的同时,实现更长的电池寿命。以下是一些主要的能源管理策略:

  1. 睡眠周期:IEEE 802.15.4设备可以在不活动时进入低功耗模式或睡眠模式。这在非接收和非传输时间是十分有用的。设备可以依据预设的时间表或网络协调器的指示进行唤醒和休眠。
  2. 动态能源管理:设备可以根据当前的通信需求动态调整其消耗的功率。例如,当网络流量较低时,设备可以使用较低功率的模式,从而节省电能。
  3. 仅在需求时激活无线电:无线电硬件是设备中电力消耗的主要部分,因此,IEEE 802.15.4设备只在真正需要进行数据传输或接收时才激活无线电硬件。当设备处于闲置或睡眠模式时,无线电设备会被关闭。
  4. 延迟发送和接收:为了进一步降低功耗,设备可以在网络中设置数据包的延迟发送和接收。这意味着设备可以预测何时其他设备将发出数据包,并在此期间处于休眠状态,只在预定的时刻唤醒以接收数据。

三、ZigBee网络拓扑结构

ZigBee网络支持三种基本类型的拓扑结构:星型网络,网状网络和树状网络。

  1. 星型网络:在星型网络中,有一个中心节点或协调器,所有其他设备(称为终端设备)都直接连接到它。这种网络结构易于建立和管理,但其范围受到协调器无线信号范围的限制。
    在这里插入图片描述

  2. 网状网络(Mesh Network):在网状网络中,任何一个ZigBee设备都可以与任何其他设备直接通讯,只要它们在彼此的无线通讯范围内。这使得网络具有最大的灵活性,可以很好地适应物理布局的变化和设备的增减。这种网络的优点是,如果第一条通讯路径出现问题,数据可以自动寻找另一条路径传输,增加了网络的可靠性。

在这里插入图片描述

  1. 树状网络(Tree Network):在树状网络中,协调器位于树的顶部,它负责开始和结束网络通讯。其他设备作为路由器分散在树的中部,并有可能存在终端设备连接到路由器上。这种网络的特点是中心节点更容易控制网络,但如果移除或断开任何中间节点的连接,则下面的所有设备都将断开。
    ZigBee协议的一个关键优点就是容错与自我修复能力,如果在网络中某一设备或组件出现故障或丢失,数据可以重新路由,从其他节点通过。这使得ZigBee网络具有很强的健壮性和可靠性。
    在这里插入图片描述

图片来源:https://www.cnblogs.com/endust/p/12015419.html

四、ZigBee配置参数

配置ZigBee网络时,需要考虑以下重要参数,这些参数将决定网络的性能和行为特性。

1. PAN ID (Personal Area Network Identifier):这是一个独特的网络标识符,可以用于识别特定的ZigBee网络。在一个区域中,多个ZigBee网络可以同时存在,每个网络都有一个不同的PAN ID来区分。
2. Channel:这个参数决定了ZigBee网络在无线电频谱上的工作频带。选择合适的信道可以避免无线电干扰,优化网络性能。
3. Network Address:网络地址用于标识网络中的每个设备。这个地址是唯一的,通常是由协调器在设备加入网络时分配的
4. Encryption Key:用于网络安全的密钥。ZigBee协议支持AES-128位加密,以确保数据的秘密性和完整性。
5. Transmission Power:设备无线电收发的功率级别。这个参数影响数据传输的范围和质量,以及设备的电池寿命。一般来说,功率越大,传输范围越远,但电池寿命可能更短。
6. Sleeping Interval:对于用电池供电并且大部分时间在休眠状态的设备(如传感器),休眠间隔是一个重要参数。设定这个参数可以可以在保持良好通信能力和延长电池寿命之间取得平衡。

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

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

相关文章

带头 + 双向 + 循环链表增删查改实现

目录 源码: List.c文件: List.h文件: 简单的测试: 很简单,没什么好说的,直接上源码。 源码: List.c文件: #include"DLList.h"ListNode* creadNode(LTDataType x) {L…

自己重装Win10系统详细步骤教程

用户不喜欢自己电脑当前的操作系统,想自己重新一款喜欢的Win10系统,但不知道如何操作才能重新安装系统Win10?以下小编带来自己重装Win10系统详细步骤教程,帮助用户们轻轻松松地完成Win10系统的重装,快速体验Win10系统的…

2023.1.21 关于 Redis 主从复制详解

目录 引言 单点问题 分布式系统 主从模式 配置 Redis 主从结构 断开主从关系 切换主从关系 补充知识点一 只读 网络延迟 拓扑结构 一主一从 一主多从 树形主从结构 主从复制的基本流程 数据同步 replicationid offset pzync 运行流程 具体流程 补充知识点二…

JS 将字符串‘10.3%‘ 经过运算加2转换为 ‘12.3%‘

文章目录 需求分析 需求 已知 字符串 a ‘10.3%’,现需将转换为 字符串’12.3%’ 分析 去掉百分号,将字符串转换为数字 const aNumber parseFloat(10.3%); const resultNumber aNumber 2;将结果转换为带百分号的字符串 const resultString re…

〖大前端 - ES6篇①〗- ES6简介

说明:该文属于 大前端全栈架构白宝书专栏,目前阶段免费,如需要项目实战或者是体系化资源,文末名片加V!作者:哈哥撩编程,十余年工作经验, 从事过全栈研发、产品经理等工作,目前在公司…

2024年Java SpringBoot 计算机软件毕业设计题目推荐

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行交流合作✌ 主要内容:SpringBoot、Vue、SSM、HLM…

k8s---pod的水平自动伸缩HPA

HPA:Horizontal Pod Autoscaling是pod的水平自动伸缩。是k8s自带的模块 pod占用CPU的比率到达一定的阈值会触发伸缩机制。 replication controller:副本控制器。控制pod的副本数 deployment controller:节点控制器。部署pod hpa控制副本的…

浅析位运算符(左移、右移、与、或、异或)

C语言是一种很奇妙的语言&#xff0c;它既有高级语言的特点&#xff0c;又有低级语言的特点&#xff0c;支持位运算让它更方便于硬件编程。 一、左移运算符&#xff08;<<&#xff09; 左移运算就是将一个二进制位的操作数按指定位数整体向左移位&#xff0c;移出位被丢…

【力扣】记录一下竞赛分上 Knight

记录一下力扣上 Knight 力扣的题还是相对来说比较简单的&#xff0c;前两个月写的题多一点&#xff0c;后面几乎都是只做了每日一题&#xff0c;感觉正常来说刷个两三个月的题水平就差不多够了&#xff0c;甚至在我才刷半个月的时候就可以做三题了&#xff0c;排名和现在差不多…

手机上菜谱记录簿在哪 用备忘录放大看菜谱更清晰

作为一个热爱生活的现代人&#xff0c;我深知健康饮食的重要性。然而&#xff0c;每当我想亲手为自己和家人烹饪美食时&#xff0c;厨艺的不精常常让我望而却步。好在互联网时代&#xff0c;网上搜罗的各式菜谱成了我的救星。但问题是&#xff0c;每次做菜时都得反复查找&#…

docker运行redis,jdk,nginx

Redis 1.查询redis [rootlocalhost ~]# docker search redis NAME DESCRIPTION STARS OFFICIAL redis Redis is an open source key-value store that… 12620 …

解决vue 2.6通过花生壳ddsn(内网穿透)实时开发报错Invalid Host header和websocket

请先核对自己的vue版本&#xff0c;我的是2.6.14&#xff0c;其他版本未测试 起因 这两天在维护一个基于高德显示多个目标&#xff08;门店&#xff09;位置的项目&#xff0c;由于高德要求定位必须使用https服务&#xff0c;遂在本地无法获取到定位坐标信息&#xff0c;于是…

因谷歌Play Store审核超过7天和联系他们的方式

三种联系他们的方式 1.让他们打电话过来 英语好不好没关系&#xff0c;主要是他们讲着一口浓厚的印度口音英语&#xff0c;很难听懂 2.在线实时聊天沟通 可以选择英文、中文、但是英文肯定容易约上 3.发送邮件 回复太慢了&#xff0c;1-2天回复你一次 传送门&#xff1…

时间轮设计

目录 基本概念 函数定义 函数实现与测试 测试1结果如下 测试2结果如下 基本概念 时间轮 是一种 实现延迟功能&#xff08;定时器&#xff09; 的 巧妙算法。如果一个系统存在大量的任务调度&#xff0c;时间轮可以高效的利用线程资源来进行批量化调度。把大批量的调度任务…

【算法与数据结构】377、LeetCode组合总和 Ⅳ

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;本题明面上说是组合&#xff0c;实际上指的是排列。动态规划排列组合背包问题需要考虑遍历顺序。 d p …

[Python] opencv - 如何使用VideoCapture类进行摄像头视频捕获并显示

VideoCapture类介绍 OpenCV-Python 中的 VideoCapture 类是一个用于捕获视频的类&#xff0c;它可以从摄像头、视频文件或者设备上捕获视频。主要方法有&#xff1a; class VideoCapture:# Functions_typing.overloaddef __init__(self) -> None: ..._typing.overloaddef _…

性能篇:解密Stream,提升集合遍历效率的秘诀!

大家好&#xff0c;我是小米&#xff0c;一个热爱技术分享的小伙伴。今天我们来聊一聊 Java 中的 Stream&#xff0c;以及如何通过 Stream 来提高遍历集合的效率。 什么是Stream&#xff1f; 在开始深入讨论之前&#xff0c;我们先来了解一下什么是 Stream。 Stream 是 Java…

2024-01-19(SpringCloudThreadLocal)

1.Seata的TC服务注册到Nacos注册中心当中 2.Seata为我们提供了AT&#xff0c;TCC&#xff0c;SAGA&#xff0c;XA事务解决方案。 3.XA规范是一种分布式事务处理标准&#xff0c;XA规范描述了全局的TM与局部的RM之间的接口&#xff0c;几乎所有的主流的数据库都对XA规范提供了…

JavaScript递归函数如何匹配上下级id和pid的数据(for...of,foreach.reduce)

目录 一、for...of 二、forEach 三、reduce 递归函数是一种在编程中常用的方法&#xff0c;用于解决一些需要重复操作的问题。在JavaScript中&#xff0c;递归函数可以用来匹配上下级id和pid的数据结构&#xff0c;例如树形结构或者父子关系的数据。 一、for...of 首先…

【网络安全 -> 防御与保护】专栏文章索引

为了方便 快速定位 和 便于文章间的相互引用等 作为一个快速准确的导航工具 网络安全——防御与保护 &#xff08;一&#xff09;.信息安全概述