怎么使用esp8266WiFi模块,js连接mqtt,实现简单的智能家居控制?

怎么使用esp8266WiFi模块,js连接mqtt,实现简单的智能家居控制?,第1张

如果您是想通过esp8266WiFi模块的MQTT协议来实现智能家居控制的话,可以了解一下支持MQTT协议的esp8266WiFi模块,比如SKYLAB的WG219/WG229以及WG231。

MQTT WiFi模块

MQTT 最初由 IBM 于上世纪 90 年代晚期发明和开发。它最初的用途是将石油管道上的传感器与卫星相链接。顾名思义,它是一种支持在各方之间异步通信的消息协议。异步消息协议在空间和时间上将消息发送者与接收者分离,因此可以在不可靠的网络环境中进行扩展。虽然叫做消息队列遥测传输,但它与消息队列毫无关系,而是使用了一个发布和订阅的模型。在 2014 年末,它正式成为了一种 OASIS 开放标准,而且在一些流行的编程语言中受到支持(通过使用多种开源实现)。

物联网设备选择MQTT协议的原因分析

物联网 (IoT) 设备必须连接互联网。通过连接到互联网,设备就能相互协作,以及与后端服务协同工作。互联网的基础网络协议是 TCP/IP。MQTT(消息队列遥测传输) 是基于 TCP/IP 协议栈而构建的,已成为 IoT 通信的标准。

MQTT 是一种轻量级的、灵活的网络协议,致力于为 IoT 开发人员实现适当的平衡:

1、这个轻量级协议可在严重受限的设备硬件和高延迟/带宽有限的网络上实现。

2、它的灵活性使得为 IoT 设备和服务的多样化应用场景提供支持成为可能。

WG219

WG219是一款基于ESP8266芯片方案的小尺寸低功耗低成本串口WiFi模块,符合80211b / g / n 无线模块标准,支持UART-WiFi -以太网数据传输。专为移动设备和物联网应用设计,可将用户的物理设备连接到WiFi无线网络上,进行互联网或局域网通信,实现联网功能。

WG229

WG229是一款基于ESP8266芯片方案的小尺寸低功耗低成本串口WiFi模块,符合80211b / g / n 无线模块标准,支持UART-WiFi -以太网数据传输。专为移动设备和物联网应用设计,可将用户的物理设备连接到WiFi无线网络上,进行互联网或局域网通信,实现联网功能。另外WG229仅需要通过出串口使用AT指令控制,就能满足大部分的网络功能需求。WG229高性能、低功耗、低成本、支持串口透传等特性,使得WG229在高集成、低功耗自动化和传感器解决方案的理想解决方案,WG229和LCS6260 Pin对Pin兼容,可替代ESP8266方案的ESP-12F。

支持MQTT协议的IoT UART接口WiFi模块也都是支持对接云端服务的。LCS6260支持对接阿里云、涂鸦云,WG219/WG229/WG231支持对接阿里云。

MQTT 协议 因为其轻量、灵活等特点成为了当今世界上最受欢迎的物联网协议,它已经广泛应用于车联网、智能家居、物流、即时聊天应用和移动消息推送等领域,连接了数以亿计的设备,并且每时每刻都有无数设备开始使用和接入 MQTT 协议。MQTT 协议为这些设备提供了稳定、可靠的通信基础,这些设备庞大的接入数量也向 MQTT 协议规范提出了挑战, MQTT 50 的诞生便是为了更好地满足这一需求。

MQTT(消息队列遥测传输)最初由 IBM 于上世纪 90 年代晚期发明。它最初的用途是将石油管道上的传感器与卫星相链接,所以 MQTT 从诞生之初就是专为受限设备和低带宽、高延迟或不可靠的网络而设计,它使用了发布订阅模型,在空间和时间上解耦了消息的发送者与接收者,并且基于 TCP/IP 提供稳定可靠的网络连接,拥有非常轻量的报头以减少传输开销,支持可靠消息传输,可以说天生就满足了物联网场景的各种需求。在 MQTT 311 发布并成为 OASIS 标准的四年后,MQTT 50 正式发布,这是一次重大的改进和升级,它的目的不仅仅是满足现阶段的行业需求,更是为行业未来的发展变化做了充足的准备。2019 年 3 月,MQTT 50 成为了新的 OASIS 标准。

面对迅速增长的设备数量和层出不穷的需求,OASIS MQTT 技术委员会需要从繁杂的需求中提取出通用部分,将其纳入标准规范,并且尽可能不增加开销或降低易用性,在不增加不必要的复杂性的前提下提高性能和易用性。

最终,OASIS MQTT 技术委员会为 MQTT 50 添加了大量的全新功能与特性,50 成为 MQTT 有史以来变化最大的一个版本。在这里,我们将列举一些比较重要的特性:

完整的新属性列表包含在协议标准的附录C,您可以访问以下网址了解详情: >两者虽然都是从传统的Pub/Sub消息系统演化出来的,但是进化的方向不一样,以下是几个比较突出的点:
Kafka是为了日志收集的场景,抛弃exact once的语义而支持at least once以便得到更高的可扩展性。
MQTT是为了物联网场景而优化,不但提供多个QoS选项(exact once、at least once、at most once),而且还有层级主题、遗嘱等等特性。
说白了都是传统消息系统(老爸)的子嗣,只是与不同的场景(老妈)结合的产物。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/13491549.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-17
下一篇 2023-08-17

发表评论

登录后才能评论

评论列表(0条)

保存