0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样用Internet控制ESP8266

454398 来源:工程师吴畏 2019-07-29 14:23 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

概述

尽管ESP8266 WiFi模块的主要目的是将互联网连接引入我们的小型DIY项目,但我相信到目前为止我们还没有完全利用ESP8266 WiFi模块的功能,即一个真正的IoT物联网)项目。

我想通过互联网实际控制ESP8266,让ESP8266项目更进一步。在这个过程中,我们将学习如何通过互联网控制连接到ESP8266 WiFi模块的一个GPIO引脚的LED(仅用于演示工作)来控制ESP8266,即ESP8266的另一个网络未连接到

这与WiFi控制的LED项目有什么不同?

非常好题。这个项目和早期的项目实际上有两个不同之处。第一个区别是ESP8266 WiFi模块是如何控制的。在之前的项目中,我通过WiFi网络控制ESP8266,即通过与ESP8266连接到同一网络的计算机或电话控制ESP8266。

来到这个项目,目的是是通过互联网控制ESP8266,即通过互联网连接从世界任何地方的计算机或电话控制。

第二个区别是ESP8266 WiFi模块的配置方式。如果你还记得,我特别提到ESP8266 WiFi模块必须用AT命令固件刷新,我们将通过上传到Arduino的程序控制ESP8266。

但是,在这个项目中,我将直接将代码上传到ESP8266 WiFi模块的ROM中(现有的程序或固件将被删除)。

现在我们已经看到了差异,让我们继续进行项目的电路图和电路设计

电路图

以下电路用于通过互联网控制ESP8266。让我们先看一下这些组件,然后详细解释电路的设计。

怎样用Internet控制ESP8266

下图显示了电路图中使用的ESP8266 WiFi模块的引脚。有关实际引脚图,请参阅开始使用ESP8266和ARDUINO 项目。

必需的组件

Arduino UNO(作为USB转串口转换器

ESP8266(ESP-01)WiFi模块

滑动开关(SPDT开关)

按钮

1KΩ电阻(1/4瓦)

2.2KΩ电阻(1/4瓦)

330Ω电阻(1/4瓦)

LED

连接电线

迷你面包板

注意:

Arduino UNO用作USB转串口转换器。所以,我已经从Arduino UNO Board中移除了ATmega328p微控制器。如果您有专用的USB转串口转换器(USB转TTL),那么您将不需要Arduino。

此外,我已经制作了一个简单的ESP8266分线板一个名为 DIY PCB FOR ESP8266 的早期项目。它包含与ESP8266 WiFi模块相关的所有重要组件。我将在此项目中使用相同的电路板。

电路设计

将ESP8266的VCC和GND连接到Arduino的3.3V和GND。 CH_PD引脚也连接到3.3V电源。按钮连接在复位引脚和GND之间。

ESP8266 WiFi模块的TX引脚连接到Arduino的TX引脚,ESP8266的RX引脚连接到连接到Arduino的RX引脚,但通过一个由两个电阻(1KΩ和2.2KΩ)组成的分压器。

LED连接到ESP8266的GPIO2引脚。最后,GPIO0引脚连接到SPDT开关的极点(滑动开关的中心端子)。开关的一个投射端子连接到GND,另一个投射端子保持打开,但可以用于GPIO连接。

代码

必须将以下程序上传到ESP8266 WiFi模块。它将设置WiFi连接并创建一个简单的HTML页面,可以使用ESP8266的IP地址进行访问。

注意:

在将代码上传到ESP8266之前,请确保在Arduino Boards部分中选择了“Generic ESP8266 Module”。

有关如何将程序上传到ESP8266的更多信息,请参阅ESP8266和Arduino项目入门。

在代码中输入WiFi网络的详细信息。

我已将ESP8266 WiFi模块的静态IP地址分配为“192.168.1.254”。在确认没有其他具有此IP地址的设备后,我选择了此地址。分配静态IP地址时,请确保相同。

除静态IP地址外,还必须提供其他信息,如默认网关和子网掩码。您可以通过在Windows的命令提示符下键入“ipconfig”来找到它。

工作

要上传代码,将GPIO0引脚滑动到编程模式(将GPIO0连接到GND),然后按RESET开关。在Arduino IDE中选择正确的板和端口后,上传代码。

上传代码后,将开关滑动到正常模式并按一下RESET按钮。打开串行监视器。在那里,您可以看到WiFi连接的详细信息。

您还可以看到ESP8266 WiFi模块的IP地址。由于我分配了一个静态IP地址,我会得到相同的。如果您已选择不分配静态IP地址,则使用路由器分配的地址。

在代码中,我在端口255创建了服务器。所以,服务器的URL将是http://192.168.1.254:255 。

在连接到同一WiFi网络的计算机或手机中打开网络浏览器并输入以上内容提到的URL。将打开一个简单的HTML页面,其中包含少量文本和链接。下图是已打开URL的手机的屏幕截图。

您可以点击指向的特定链接在本地控制LED,即在WiFi网络内。

如何通过互联网控制ESP8266?

现在是通过互联网控制ESP8266 WiFi模块的技巧部分。有两种方法可以实现这一目标。一种方法是使用端口转发,我将在此项目中使用,另一种方法是使用专用的远程服务器,如ThingSpeak或aREST。

我已经设置我的ESP8266 WiFi模块的静态IP地址,下一步是继续进行端口转发。

从任何浏览器打开路由器页面并使用路由器登录详细信息登录。转到路由器的Port Forwarding页面(取决于路由器,在我的情况下是我的WAN设置)。

启用端口转发并提供本地服务器IP地址等必要的详细信息( ESP8266的静态IP地址),端口号等,并保存设置。

现在,转到具有高级安全设置的Windows防火墙并添加新的入站规则。选择“端口”的规则类型并指定端口号。

打开任何Web浏览器并搜索“我的IP地址是什么”。它会生成路由器的WAN IP地址。请记下来。

现在,从另一台计算机(任何未连接到与ESP8266相同的WiFi网络的计算机),键入您刚才记下的IP地址端口号。例如,如果您的IP地址是183.92.192.58且端口号是255,则在任何Web浏览器中键入“183.92.192.58:255”。您现在将获得用于控制LED的HTML页面。

重要说明:

建议不要使用端口转发,因为它会将计算机打开到外部,并且很容易受到病毒或恶意软件的攻击。《/span》

此外,还有许多ISP(Internet服务提供商)不允许端口转发。

另一种方法是使用ThingSpeak或aREST等专用安全服务器。

下一个项目,我将向您展示如何使用其中一种服务从互联网上控制ESP8266。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Internet
    +关注

    关注

    0

    文章

    401

    浏览量

    38732
  • ESP8266
    +关注

    关注

    51

    文章

    972

    浏览量

    49958
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    ESP32/ESP8266开发板单向多对一ESP-NOW无线通信

    本实验通过ESP-NOW无线通信协议实现多个ESP32/ESP 8266开发板向ESP32开发板发送数据。例如可以应用于从多个远程传感器上收
    的头像 发表于 03-30 10:14 297次阅读
    <b class='flag-5'>ESP</b>32/<b class='flag-5'>ESP8266</b>开发板单向多对一<b class='flag-5'>ESP</b>-NOW无线通信

    ESP32/ESP8266开发板单向一对多ESP-NOW无线通信

    通过ESP-NOW无线通信协议实现ESP32开发板向多个ESP32/ESP 8266开发板发送数据。
    的头像 发表于 03-13 09:23 373次阅读
    <b class='flag-5'>ESP</b>32/<b class='flag-5'>ESP8266</b>开发板单向一对多<b class='flag-5'>ESP</b>-NOW无线通信

    ESP8266系列】WT8266-S3模组规格书

    概述ESP-07S(WT8266-S3)Wi-Fi模块是由启明云端科技开发的、低功耗高性价比的嵌入式无线网络控制模块。可满足智能电网、楼宇自动化、安防、智能家居、远程医疗等物联网应用的需求。该模块
    的头像 发表于 02-05 18:04 326次阅读
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S3模组规格书

    ESP8266系列】WT8266-S5模组规格书

    概述ESP-12F(WT8266-S5)WiFi模块是由启明云端科技开发的、低功耗高性价比的嵌入式无线网络控制模块。可满足智能电网、楼宇自动化、安防、智能家居、远程医疗等物联网应用的需求。该模块核心
    的头像 发表于 02-05 18:03 532次阅读
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S5模组规格书

    ESP8266系列】WT8266-S6模组规格书

    ESP-12S(WT8266-S6)Wi-Fi模块是由启明云端科技开发的、低功耗高性价比的嵌入式无线网络控制模块。可满足智能电网、楼宇自动化、安防、智能家居、远程医疗等物联网应用的需求。该模块核心
    的头像 发表于 02-05 18:03 476次阅读
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S6模组规格书

    ESP8266系列】WT8266-S1模组产品介绍

    WT8266-S1WiFi模块是由启明云端科技开发的、低功耗高性价比的嵌入式无线网络控制模块。可满足智能电网、楼宇自动化、安防、智能家居、远程医疗等物联网应用的需求。该模块核心处理器ESP8266
    的头像 发表于 01-29 18:22 796次阅读
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S1模组产品介绍

    ESP8266系列】WT8266-S6模组产品介绍

    ESP-12S(WT8266-S6)Wi-Fi模块是由启明云端科技开发的、低功耗高性价比的嵌入式无线网络控制模块。可满足智能电网、楼宇自动化、安防、智能家居、远程医疗等物联网应用的需求。该模块核心
    的头像 发表于 01-29 18:22 554次阅读
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S6模组产品介绍

    无需安装!在浏览器里就能玩转ESP32/ESP8266,这个神器绝了!

    无需安装!在浏览器里就能玩转ESP32/ESP8266,这个神器绝了!【往期精选】十年嵌入式最深的痛,不是Bug,而是抓不到日志!vivo宣布原生支持HomeAssistant生态设备接入(含
    的头像 发表于 01-10 10:01 1767次阅读
    无需安装!在浏览器里就能玩转<b class='flag-5'>ESP</b>32/<b class='flag-5'>ESP8266</b>,这个神器绝了!

    【瑞萨RA6E2地奇星开发板试用】使用`RA6E2`驱动 `ESP8266 WiFi模块`,调试AT指令。

    使用RA6E2驱动 ESP8266 WiFi模块,调试AT指令。 1. 需求描述 使用RA6E2驱动 esp8266 WiFi模块,串口调试助手显示 esp8266WiFi模块响应数
    发表于 12-25 10:08

    晶科鑫 | 国产26MHz晶振匹配Espressif(乐鑫) ESP8285/ESP8266芯片案例

    【应用】国产26MHz频率晶振应用于物联网WIFI物联网模块(串口转WiFi模块),Espressif(乐鑫)ESP8285/ESP8266芯片匹配测试OKESP8285其实是ESP8266的升级版
    的头像 发表于 11-21 15:37 5096次阅读
    晶科鑫 | 国产26MHz晶振匹配Espressif(乐鑫) <b class='flag-5'>ESP</b>8285/<b class='flag-5'>ESP8266</b>芯片案例

    ESP8266ESP32开发板常见的2种下载方式

    ESP32和ESP8266是性价比很高而且使用较为广泛的的Wi-Fi模块,在物联网(IoT)领域的DIY项目中可以首先考虑这2款产品。 两款芯片都属于32位处理器。ESP32是低功耗双核80MHz
    的头像 发表于 11-10 20:30 1570次阅读
    <b class='flag-5'>ESP8266</b>和<b class='flag-5'>ESP</b>32开发板常见的2种下载方式

    ESP8266ESP32开发板常见的2种下载方式

    协议,完整的 TCP/IP 协议栈以及蓝牙协议栈。用户可以使用这两款模块为现有的设备添加WIFI联网功能或蓝牙(ESP32),轻松的构建独立的网络控制器和远程控制监控设备。 ESP8266
    发表于 10-24 18:04

    请问一下我想用ESP8685直接替换ESP8266而不用写程序,可以让ESP8685直接通过之前ESP8266的外挂的flash运行程序吗

    请问一下我想用ESP8685直接替换ESP8266而不用写程序,可以让ESP8685直接通过之前ESP8266的外挂的flash运行程序吗
    发表于 09-17 12:06

    ESP8266】进入透传模式后,数据间隔怎么调整,

    01.TCP客户端ESP8266透传模式发送数据是10ms发送一次,(连续发送) 02.TCP服务器接收到的数据是200ms左右接收一次,数据未丢失,但是更新不及时; 03.通过TCP调试助手已
    发表于 09-15 10:16

    STM32+esp8266连接机智云,上传温湿度数据并控制继电器开关(平台配置、代码生成、代码移植)

    本教程将详细介绍如何将STM32微控制器与ESP8266Wi-Fi模块连接到机智云平台,实现温湿度数据的上传与继电器的远程控制。通过此过程,您将学会如何配置机智云平台,烧录ESP8266
    的头像 发表于 07-15 18:54 1639次阅读
    STM32+<b class='flag-5'>esp8266</b>连接机智云,上传温湿度数据并<b class='flag-5'>控制</b>继电器开关(平台配置、代码生成、代码移植)