ZigBee技术与实践教程(无线传感网技术第三天)

2024-03-10 22:44

本文主要是介绍ZigBee技术与实践教程(无线传感网技术第三天),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.MAC层规范

在IEEE802系列标准中,OSI参考模型的数据链路层进一步划分为逻辑链路控制子层和介子访问子层两个子层。MAC子层使用物理层提供的服务实现设备之间的数据帧传输,而LLC在MAC 层的基础上,在设备之间提供面向连接和非连接的服务,。MAC层就是用来解决如何共享信道问题的。MAC子层提供两种服务:

1.MAC层数据服务,作用是保证MAC协议数据单元在物理层数据服务中的正确收发。

2.MAC 层管理服务,作用是维护一个存储MAC子层协议状态相关信息的数据单元。

MAC子层功能包括八个方面:

  1. 如果设备是协调器,那么就需要产生网络信标。
  2. 信标的同步。
  3. 支持个域网络(PAN)的关联和取消关联操作。
  4. 支持无线信道通信安全。
  5. 使用多路访问载波侦听冲突检测(CSMA/CA)机制访问物理信道。
  6.  支持时槽保障机制
  7. 支持不同设备的MAC层间可靠传输。
  8. 协调器产生并发送信标帧,普通设备根据协调器的信标帧与协调器同步。

关联操作是指一个设备加入到一个特定的网络中时像协调器注册以及身份认证过程。

时槽保证机制与时分复用机制相似但是它可以动态的为有收发请求的设备分配时槽。使用时槽保护机制需要设备之间的时间同步,在在个人无限区域网中时间按同步是通过超帧机制实现的。

2.超帧

在个人无限区域网中可以都采用超帧为周期性组织LR-WPAN(低速无限个域网)内设备间的通信,超帧是指一种用来组织网络通信时间分配的逻辑结构。超帧的时间分配由网络协调器定义,主要包括活跃时段和非活跃时段。网络中所有的通信都必须须在活跃时段进行,而在非活跃时段设备可以进入休眠期达到省电。

超帧活跃时段分为三个阶段:

  1. 信标帧发送时段
  2. 竞争访问时段
  3. 非竞争访问时段

3数据传输模型

LR-WPAN(低速无限个域网)中存在三种数据传输模式;

  1. 设备发送数据给协调器
  2. 协调器发送数据给协调器
  3. 对等设备之间传输数据

星状网络拓扑结构中存只在前两种数据传输方式(因为数据只在协调器和设备之间传输),而点对点有拓扑结构中包含三种数据传输方式。

在低速无线个域网中有两种通信模式:

  1. 信标使能通信
  2. 信标使不能通信

PAN 协调器周期的广播超帧以标识超帧开始。

4MAAC 层帧结构

MAC帧的结构设计作用是用最低复杂度实现在多噪声无线信道环境下的可靠数据传输。

MAC 层帧格式:帧头+数据帧+校验帧

每个帧都由帧头+负载+帧尾三部分组成。

帧头由控制信息、帧序列号、地址信息组成。

帧负载具有可变长度具体内容由帧类型所决定。

在MAC子层中设备地址有两种:

  1. 16位(2B)短地址时设备与PAN协调器关联时由协调器分配的网内系内协调地址。
  2. 64位(8B)的扩展地址地址是全球唯一的地址,在设备进入网络之前就分配好了的。

5.MAC层的帧分类

无限个人区域网络共定义了四种类型的帧:

  1. 信标帧
  2. 数据帧
  3. 确认帧
  4. MAC 命令帧

(1)信标帧:

(2)数据帧

(3)确认帧

(4)命令帧

这篇关于ZigBee技术与实践教程(无线传感网技术第三天)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/795768

相关文章

Python pandas库自学超详细教程

《Pythonpandas库自学超详细教程》文章介绍了Pandas库的基本功能、安装方法及核心操作,涵盖数据导入(CSV/Excel等)、数据结构(Series、DataFrame)、数据清洗、转换... 目录一、什么是Pandas库(1)、Pandas 应用(2)、Pandas 功能(3)、数据结构二、安

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

破茧 JDBC:MyBatis 在 Spring Boot 中的轻量实践指南

《破茧JDBC:MyBatis在SpringBoot中的轻量实践指南》MyBatis是持久层框架,简化JDBC开发,通过接口+XML/注解实现数据访问,动态代理生成实现类,支持增删改查及参数... 目录一、什么是 MyBATis二、 MyBatis 入门2.1、创建项目2.2、配置数据库连接字符串2.3、入

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

springboot自定义注解RateLimiter限流注解技术文档详解

《springboot自定义注解RateLimiter限流注解技术文档详解》文章介绍了限流技术的概念、作用及实现方式,通过SpringAOP拦截方法、缓存存储计数器,结合注解、枚举、异常类等核心组件,... 目录什么是限流系统架构核心组件详解1. 限流注解 (@RateLimiter)2. 限流类型枚举 (

2025版mysql8.0.41 winx64 手动安装详细教程

《2025版mysql8.0.41winx64手动安装详细教程》本文指导Windows系统下MySQL安装配置,包含解压、设置环境变量、my.ini配置、初始化密码获取、服务安装与手动启动等步骤,... 目录一、下载安装包二、配置环境变量三、安装配置四、启动 mysql 服务,修改密码一、下载安装包安装地

电脑提示d3dx11_43.dll缺失怎么办? DLL文件丢失的多种修复教程

《电脑提示d3dx11_43.dll缺失怎么办?DLL文件丢失的多种修复教程》在使用电脑玩游戏或运行某些图形处理软件时,有时会遇到系统提示“d3dx11_43.dll缺失”的错误,下面我们就来分享超... 在计算机使用过程中,我们可能会遇到一些错误提示,其中之一就是缺失某个dll文件。其中,d3dx11_4

Linux下在线安装启动VNC教程

《Linux下在线安装启动VNC教程》本文指导在CentOS7上在线安装VNC,包含安装、配置密码、启动/停止、清理重启步骤及注意事项,强调需安装VNC桌面以避免黑屏,并解决端口冲突和目录权限问题... 目录描述安装VNC安装 VNC 桌面可能遇到的问题总结描js述linux中的VNC就类似于Window

在Java中使用OpenCV实践

《在Java中使用OpenCV实践》用户分享了在Java项目中集成OpenCV4.10.0的实践经验,涵盖库简介、Windows安装、依赖配置及灰度图测试,强调其在图像处理领域的多功能性,并计划后续探... 目录前言一 、OpenCV1.简介2.下载与安装3.目录说明二、在Java项目中使用三 、测试1.测

MyBatis-Plus 自动赋值实体字段最佳实践指南

《MyBatis-Plus自动赋值实体字段最佳实践指南》MyBatis-Plus通过@TableField注解与填充策略,实现时间戳、用户信息、逻辑删除等字段的自动填充,减少手动赋值,提升开发效率与... 目录1. MyBATis-Plus 自动赋值概述1.1 适用场景1.2 自动填充的原理1.3 填充策略