当前位置:网站首页>无线传感器网络--ZigBee和6LoWPAN
无线传感器网络--ZigBee和6LoWPAN
2022-07-07 13:26:00 【madkeyboard】
ZigBee拓扑结构
三种结构:星形、树形和网状拓扑结构。
星形拓扑是最容易实现的拓扑,但是由于ZigBee协调器的限制,不适合大规模的网络,一旦协调器出现故障,那么整个网络都会受到影响
树形结构更加灵活,其部署不受协调器限制,还可以通过ZigBee路由器采用子设备来扩展范围。实现路由协议容易,每个设备只需要维护一个树表但是中途结点出现故障也没有可替代的路由
网状拓扑比树形拓扑更加灵活,每个设备之间都可以直接通信,并且当中途的路由失效时,可以选择其他路由进行替代。

在通常情况下,ZigBee网络是混合式网络结构,一个ZigBee的终端设备只能跟其父节点进行通信,不涉及网络通信的转发功能

ZigBee地址分配方案
- Cskip:
- Cm:每个父设备可以拥有子设备的总数
- Rm:每个父设备可以拥有路由器总数
- Lm:网络的最大深度
- d:设备的实际网络深度
上面的4个参数都存放在ZigBee协调器的网络信息库内。路由器设备能接受的终端设备数量按该公式计算:
MaxEndDevices = MaxChildren - MaxRouters = Cm - Rm下图是Cskip计算现有网络中任何分支可能存在后继节点总数的方法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LhP2HSLV-1656730641139)(C:\Users\14645\AppData\Roaming\Typora\typora-user-images\image-20220702094304486.png)]
在任何ZigBee网络中,网路节点的最大数目为65535.
Cskip(d)通常作为地址偏移量分配给路由器和它的终端设备
给路由器Rn分配地址的方式:Rn = R1 + (n - 1)x Cskip(d)
ZigBee管理机制
- 地址管理
管理机制包括地址管理、描述管理、设备和服务的发现与绑定
ZigBee网络既可以使用64位扩展地址又可以使用16位网络地址,但是为了解决多个对象共享一个物理地址的问题,需要使用端点寻址的概念。
下图有两个ZigBee设备A和B,A中的终端1通过IEEE 802.15.4标准请求设备A和B建立无线通信信道,但是有个问题,B如何识别终端1是和湿度传感器通信的,ZigBee规范定义了一个子级寻址模式—端点,因此通信的发起端指定了与其建立通信的端点,ZigBee设备中的ZigBee协议栈就可以轻松地确定目标对象

- 描述管理
描述管理是ZigBee规范的通信基础,由信息、信息格式和处理动作方面的协议构成,定义了确保系统内合作的处理动作协议,让不同的组件能够创建互操作分布式应用。
如下图所示,描述ID长8位,标识当前描述的属性。
公有描述ID的范围为0x0000 - 0x7FFF,私有描述ID的范围oxbf00 - 0xFFFF


ZigBee绑定
两个不用设备的端点间的逻辑关系。
通过下图看看为什么需要绑定。四种情况中,有些开关是一对多,有些又是多对一,采用传统的方法去实现会做大量的重复工作。

采用绑定机制提高效率。协调器一直处于工作状态,所以用于存储绑定表,记录两项内容:1.开关1的端点和原地址,以及灯1和灯2的端点和匹配的地址;2.开关2的端点和地址,以及灯3的端点及匹配的地址。如果开关1需要启动灯1和灯2,那么开关1就向协调器发送指令和它自己的地址。协调器收到指令就搜索绑定表,找出灯1和灯2的地址,然后协调器把指令的目标地址替换成灯1和灯2的地址,并且自动发送出去,最后开关1就能控制灯1和灯2.

6LoWPAN和无线传感器网络
6LoWPAN使IPv6能直接基于IEEE 802.15.4低功率WSN进行工作,让无线节点更易于接入因特网
WSN应用于因特网的优势:
- 使用基于IP协议的现有网络架构,可以实现互操作
- 无线设备可以很容易地连接到因特网上而不需要网关
- 可以使用HTTP、SNMP和DPWS等已建立的应用协议和数据模型
- 使用传输协议对具有不可靠连接的网络提供一定的可靠性
协议栈
LoWPAN层在MAC层和IPv6之间,功能:IPv6头的压缩、IPv6载荷的分片、UDP头的压缩

配置实例
每个LoWPAN由一个边界路由器,若干LoWPAN路由器和若干主机(H)组成,在因特网上还有一个远程服务器

- LoWPAN连接因特网上需注意的问题
- 6LoWPAN的应用要让数据包尽可能的小,防止把数据包分成若干个IPv6包
- 端到端应用协议应该利用UDP和紧凑载荷格式以适应6LoWPA节点的使用
- 防火墙和网址转换
- IPv4互联
- 安全问题
让数据包尽可能的小,防止把数据包分成若干个IPv6包
- 端到端应用协议应该利用UDP和紧凑载荷格式以适应6LoWPA节点的使用
- 防火墙和网址转换
- IPv4互联
- 安全问题
边栏推荐
- Vertex shader to slice shader procedure, varying variable
- The difference between full-time graduate students and part-time graduate students!
- Implementation of crawling web pages and saving them to MySQL using the scrapy framework
- Do not use memset to clear floating-point numbers
- Android -- jetpack: the difference between livedata setValue and postvalue
- 有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?
- It's different for rich people to buy a house
- Configure mongodb database in window environment
- Summary of knowledge points of xlua hot update solution
- Nacos一致性协议 CP/AP/JRaft/Distro协议
猜你喜欢

The rebound problem of using Scrollview in cocos Creator

Keil5 does not support online simulation of STM32 F0 series

The difference between full-time graduate students and part-time graduate students!

Super simple and fully automated generation super signature system (cloud Xiaoduo minclouds.com cloud service instance), free application in-house test app distribution and hosting platform, maintenan

Iterator and for of.. loop

LeetCode3_ Longest substring without duplicate characters

unnamed prototyped parameters not allowed when body is present

TS as a general cache method
Introduction of mongod management database method

webgl_ Graphic transformation (rotation, translation, zoom)
随机推荐
【数字IC验证快速入门】22、SystemVerilog项目实践之AHB-SRAMC(2)(AMBA总线介绍)
VS2005 strange breakpoint is invalid or member variable value cannot be viewed
【数字IC验证快速入门】24、SystemVerilog项目实践之AHB-SRAMC(4)(AHB继续深入)
numpy--数据清洗
Stm32f103c8t6 PWM drive steering gear (sg90)
[deep learning] semantic segmentation experiment: UNET network /msrc2 dataset
It's different for rich people to buy a house
[Data Mining] Visual Pattern Mining: Hog Feature + cosinus Similarity / K - means Clustering
LeetCode3_ Longest substring without duplicate characters
【数字IC验证快速入门】29、SystemVerilog项目实践之AHB-SRAMC(9)(AHB-SRAMC SVTB Overview)
When opening the system window under UE4 shipping, the problem of crash is attached with the plug-in download address
Detailed explanation of unity hot update knowledge points and introduction to common solution principles
The significance of XOR in embedded C language
【数字IC验证快速入门】18、SystemVerilog学习之基本语法5(并发线程...内含实践练习)
How to release NFT in batches in opensea (rinkeby test network)
Simple understanding and application of TS generics
Android -- jetpack: the difference between livedata setValue and postvalue
Getting started with webgl (2)
Write a ten thousand word long article "CAS spin lock" to send Jay's new album to the top of the hot list
Function: JS Click to copy content function