当前位置: 首页 > news >正文

Zigbee物联网应用

相信还是有很多爱好者对于zigbee这个技术还是比较陌生的,我最初接触到zigbee这个词而,实际上是在小米的智能插座的介绍页面上看到的,后来呢进行百度进行了解,知道原来是一种无线通信技术,当时我就很费解,为什么不是使用wifi呢?而且对于小米来说,原来的策略都是使用wifi、蓝牙,怎么就突然弄出个zigbee这个东西呢?我带着这些问题进行了一次研究,也和大

家分享一下,看看对与不对和大家也探讨一下。

Zigbee是2008年由zigbee联盟发布的一个低功耗、短距离、低速率、大连接的个域网无线通信技术,它基于IEEE802.15.4无线通信标准,通过以上这几点特性就能看出小米为什么选择它,这几项特性无一不指向智能家居领域,另外也可能是一种商业手段,喜欢小米多数是技术宅,对这些参数和技术比较痴迷,所以搞一套比较流行的技术给大家玩玩,这也从官网上体现了,zigbee的产品貌似只有这么几个,现在又在追捧蓝牙5.0mesh网络的智能家居,不论他们选择哪种组网方式,其核心还是不变的,适用于智能家居,了解完了小米后我又进行了对zigbee的应用领域进行了一番了解。

私信我获取1V1嵌入式学习规划,现在还送100G精选学习资料。

Zigbee的这几个特性,使得很快在物联网领域走红,亚马逊推出的智能家居系统,基于zigbee,智能工业领域基于zigbee,智能医疗、智能消防、智慧农牧场、等等都有zigbee的应用场景,下面给大家详细介绍一下zigbee在智能消防中的角色。

所需材料,STM32网关一个,esp8266,2G模块(报警使用),zigbee模块若干,分别连接火焰传感器、烟雾传感器、继电器、阀门控制器、雨滴传感器、报警灯、扬声器。先让网关通过wifi连接到云端,可以对火焰、烟雾、继电器等传感器的状态进行获取,我们可以通过手机或者电脑实时的查看被监测区域的状态,同时还可以对其参数进行阈值的设置,烟雾高于多少报警,火焰高于多少报警等。Zigbee若干的模块就是用来数据财采集,继电器控制的,网关会收到来自各个zigbee模块发送来的数据,如果超过人为设置的阈值则判断为起火,网关首先发送报警短信或电话请求,会向各个zigbee发送火灾信息,这时zigbee各个模块会进行不同的动作,烟雾、火焰传感器继续测值,发送频率加快,继电器断开其他使用电源的电器,阀门控制器打开,自动洒水灭火,雨滴传感器判断是否洒水成功,报警灯开始闪烁,扬声器进行报警。火势好转后,停止一切操作,恢复最初的状态,这就是一套智能消防的装置工作流程。

细心的小伙伴可能已经发现,这套流程不仅仅适用于消防,换不同的传感器就变成不同的应用场景,这里面最大的便捷就是不需要使用连线,都是使用无线传输,这样对我们的应用场景扩大的很多,这一切都是源于zigbee自身的特性,我们在物联网中最常见的智能家居对于zigbee来说就是小case,大家一定会考虑,所说的低功耗有没有具体的数据值,这里给大家一个参数,两节五号电池,可以使用6~12个月,对于智能居家的场景不是频繁使用,我们多数愿意使用纽扣电池来减小产品的体积,在条件恶劣的场景下,我们才使用大一些的锂电池进行供电。

对于当今物联网采用的无线传输方案无非就那么几种,loar和NB属于一个系列,蓝牙和zigbee属于一个系列,对于我们学习来讲,更倾向于学习zigbee和蓝牙,因为这是目前需求量最大消费类电子普遍使用的方案,而且你会发现,不论你学会了哪一个其他无线通信技术都是换汤不换药很容易上手,其应用场景也是根据环境和预算而定的,同一种应用场景不论用哪种技术都是可以达到一样的效果,现在介绍的zigbee就是一种即适合学习又适合使用的一种技术,喜欢的小伙伴,可以在百度搜索物联网来进行进一步的探究。

for (i = 0; i < 8; i++)

{

SetData((data >> i) & 0x1);

SetClockHigh();

for (j = 0; j < 5; j++);

SetClockLow();

for (j = 0; j < 5; j++);

}

相关文章:

  • Hive 多数组合并 CONCAT_WS
  • Deno完整教程
  • 海外众筹是什么
  • flink理论干货笔记(7)及spark论文相关思考
  • react native 使用阿里字体图标库
  • 本地部署docker实践
  • 【cocos2dx】记录问题,粒子不会通过setOpacity调整整体透明度
  • Docker部署可能遇到的问题
  • Java配置41-搭建Kafka服务器
  • VSCode中ESLint插件修复+配置教程
  • 来!PyFlink 作业的多种部署模式
  • 电脑重装系统后Win11安全中心无法打开如何解决
  • ue4打包出现问题解决[Callstack] 0x00007ffa47e6474c KERNELBASE.dll!UnknownFunction []
  • 【Matlab】状态空间模型的极点配置法 place() 函数
  • Chrome常用插件收集整理
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • JavaScript 奇技淫巧
  • Java读取Properties文件的六种方法
  • Octave 入门
  • webpack入门学习手记(二)
  • yii2中session跨域名的问题
  • 关于springcloud Gateway中的限流
  • 简单实现一个textarea自适应高度
  • 微服务入门【系列视频课程】
  • 智能合约开发环境搭建及Hello World合约
  • 终端用户监控:真实用户监控还是模拟监控?
  • 最简单的无缝轮播
  • k8s使用glusterfs实现动态持久化存储
  • 国内开源镜像站点
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • ​无人机石油管道巡检方案新亮点:灵活准确又高效
  • # Java NIO(一)FileChannel
  • # Swust 12th acm 邀请赛# [ K ] 三角形判定 [题解]
  • # 透过事物看本质的能力怎么培养?
  • #HarmonyOS:Web组件的使用
  • #includecmath
  • $L^p$ 调和函数恒为零
  • (2)MFC+openGL单文档框架glFrame
  • (ctrl.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“
  • (安全基本功)磁盘MBR,分区表,活动分区,引导扇区。。。详解与区别
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (附源码)springboot 校园学生兼职系统 毕业设计 742122
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (使用vite搭建vue3项目(vite + vue3 + vue router + pinia + element plus))
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • (转) SpringBoot:使用spring-boot-devtools进行热部署以及不生效的问题解决
  • (转)母版页和相对路径
  • (转载)跟我一起学习VIM - The Life Changing Editor
  • (转载)微软数据挖掘算法:Microsoft 时序算法(5)
  • *2 echo、printf、mkdir命令的应用
  • .NET : 在VS2008中计算代码度量值
  • .NET Core中Emit的使用
  • .Net8 Blazor 尝鲜
  • .NET委托:一个关于C#的睡前故事