esp8266实现远程控制
要开始使用IoT(物联网),您的设备需要Internet连接。 基本的Arduino微控制器默认情况下不具有Internet连接,因此您需要在其中添加以太网,Wi-Fi屏蔽或适配器,或者购买具有内置Internet连接的Arduino。 除了复杂性之外,这两种方法都增加了成本,并消耗了已经非常宝贵的Arduino闪存RAM来占用程序空间,这限制了您的操作范围。
另一种方法是使用运行成熟的操作系统(如Linux)的Raspberry Pi或类似的单板计算机 。 Raspberry Pi 在许多IoT用例中都是一个不错的选择 ,但是当您真正想要做的只是读取传感器并将读取的数据发送到云中的服务器时,Raspberry Pi通常会显得过高。 Raspberry Pi不仅可能增加项目的成本,复杂性和功耗 ,而且还运行了需要修补的完整操作系统,并且与简单的微控制器相比,其攻击面要大得多。 在物联网设备和安全性方面 ,越简单越好,因此您可以花更多的时间进行制作,而花更少的时间来修补已完成的工作。
当ESP8266 Wi-Fi芯片在2014年几乎没有英文文档的情况下上市时,制造商社区对此很感兴趣,但并没有完全理解其全部潜力。 由于其低成本(2美元)和一个充满活力的社区,它热爱挑战,制造商Swift找到了使用ESP8266对其Arduino进行Wi-Fi启用的方法 。 随着他们越来越多的合作,他们意识到ESP8266可以用作独立的微控制器, 而无需每两个月使用Arduino快速前进。 社区很快将ESP8266支持添加到Arduino IDE ,使ESP8266像Arduino一样易于编程。 作为一个低成本微控制器的Wi-Fi的推动者和微控制器本身,ESP8266Swift成为地板蜡和甜食漫顶在知道这些厂商。
ESP8266到底是什么? ESP8266是Espressif Systems生产的32位RISC CPU。 默认情况下,它的时钟频率为80MHz,并具有64KB的指令RAM,96KB的数据RAM,并支持多达16MB的外部闪存。 与运行在16MHz的Arduino UNO相比,这些规格令人印象深刻,它只有2KB的SRAM,32KB的闪存,1KB的EEPROM,而且价格要贵几倍。 另一个很大的不同是,ESP8266的工作电压为3.3伏,而大多数Arduino的工作电压为5伏。 在将现有的Arduino知识和项目扩展到ESP8266时,请注意这一电压差,以防止产生魔术烟雾。
尽管芯片相同,但是许多开放式硬件制造商已经开发出了令人眼花 with 乱的具有独特功能的模块和电路板 ,因此请明智地选择。 最大的不同是裸露的引脚数,程序存储的闪存RAM大小以及形状因数。
如下图所示,将ESP8266放在地图上的模块是ESP-01 ,如下图所示,您可以在其中看到ESP8266芯片,闪存RAM芯片和内置Wi-Fi天线。
![托管ESP8266 MCU的E-01模块的顶部。 Top side of the E-01 module hosting an ESP8266 MCU.](https://i-blog.csdnimg.cn/blog_migrate/78d80dc2df78487e5436a23e20e71cc0.jpeg)
托管ESP8266 Wi-Fi芯片的ESP-01模块的顶部。 这张照片经CC-BY-SA 4.0授权。
ESP-01的价格为2美元,仅比您的缩略图略大,似乎是ESP8266和IoT世界入门的理想选择,但它确实存在一些限制。 首先,您需要一个USB到串行转换器对其进行编程。 接下来,您需要3.3伏电源为其供电。 它也不是面包板友好的,因此您需要使用跳线或适配器。 最后,仅暴露了两个GPIO引脚,这使该设备有用,但不如具有更多可用功能的Arduino有用。 总的来说,ESP-01是一款非常紧凑的设备,适用于完成的项目,但是有更好的入门和原型开发板。
为了入门和制作原型,我建议使用NodeMCU或WeMos D1系列。 这些价格低于6美元的设备通过提供内置的USB到串行连接,(主要是)面包板友好以及暴露了大多数(如果不是全部)可用的ESP8266 GPIO引脚,来弥补ESP-01的局限性。
NodeMCU最初很引人注目,因为它带有专用固件,可让您使用Lua脚本语言对其进行编程。 对于像我这样顽固的Arduino爱好者,您还可以使用Arduino IDE及其类似C的编程语言。 就(主要是)面包板友好性而言,NodeMCU具有几种版本 ,其外形尺寸略有不同。 就我个人而言,我喜欢NodeMCU v2,因为它足够窄以适合面包板,您可以在两侧使用一排面包板销。 v1和v3版本较宽,其中NodeMCU需要并排跨越两个面包板。 判断NodeMCU是否为v2的一种简单方法是确认USB串行芯片是方形CP2102(下图),而较宽的版本通常使用矩形CH340G。
![NodeMCU开发板 NodeMCU development board](https://opensource.com/sites/default/files/cp2102.jpg)
NodeMCU开发板 ,基于ESP8266 Wi-Fi芯片。 这张照片经CC-BY-SA 4.0授权。
WeMos还制造了几个基于ESP8266的板。 D1复制了Arduino Uno外形尺寸,这使您可以重用许多现有的Arduino屏蔽板。 D1 mini和D1 mini pro像NodeMCU一样适用于面包板,但是两者都比NodeMCU小。 与NodeMCU相比,尺寸更紧凑的GPIO引脚更少,但是这些型号本身具有丰富的屏蔽 。
ESP8266有什么用? 简而言之,很多。 您可以将传感器连接到它,并在ESP8266本身运行的Web服务器上显示数据,或者将数据记录在云中或MQTT消息代理中 。 换一种方式,您可以在ESP8266上附加一个显示器来跟踪天气 , 飞机或其他所需的东西。 其他示例包括使用Amazon Alexa进行家庭自动化以及向电视广播 。 有关更多想法,请查看Hackaday和YouTube 。
总的来说,我发现ESP8266与我的Raspberry Pis和Arduinos一起是我的制造商工具包的完美补充。 鉴于其低成本和充满活力的用户社区,您将每天看到新的令人兴奋的用例。
您是否尝试过ESP8266? 我很想在下面的评论中听到您的经历。
翻译自: https://opensource.com/article/17/2/internet-microcontroller-board-esp8266
esp8266实现远程控制