美好的一天! 在本文中,我想谈谈ESP模块上设备的实现。 相似设备的主题已经在Internet上公开,但并没有停止相关性。
主意长期以来,我一直在考虑在公寓中实施某种显示和控制系统,但我找不到可出售的传感器的任何应用程序,特别是针对我自己的。 令人困惑的第一件事是存在某个服务器(单独的一块铁),该服务器收集数据,进行处理并将其扔到某处进行查看。 我想拥有一个独立设备的可伸缩系统,最好在一个应用程序就绪的情况下最好与一个应用程序一起使用,这似乎几乎是不可能的(展望未来,我会说有这样一个应用程序,可以针对我们的任务进行灵活配置)。 当然,我想制造一系列的设备。
系统要求- 缺少硬件服务器(“中央单元”)。
- 独立的传感器/控件。
- 传感器必须是无线的。
- 更改传感器的组成和类型时,不应有任何依赖关系(添加新设备来“锯”别人的东西是不必要的)。
- 如果可能,传感器应由电池供电。
- 如有必要,传感器应该能够进行配置,但无需深入研究代码(最好是Web)。
- 通知。 这是一个单独的要求。 我们都习惯于使用手机并立即收到通知。
这不是“愿望清单”的完整列表,但是这些是主要列表。
寻找解决方案创建系统的解决方案稍后出现。 首先,开发了第一个设备,我将在本文中进行介绍。
硬件部分。 ESP-12E和ESP32。 下面描述的所有项目都在第一个模块上实现。 第二个模块有几个商业项目,本文将不考虑。
互联网上有很多关于ESP-12E的文章和论坛,在此我不会重复其优点和缺点。 原则上,所有“堵塞”的发生主要是由于缺乏使用模块和环境的经验。
图1. ESP-12E的照片。软件部分。 ESP的固件是用Arduino IDE编写的。 Blynk应用程序正在手机/平板电脑的侧面运行。 这是用于显示数据的非常方便的构造方法。 该应用程序具有一个云服务器,设备(传感器)在该云服务器上发送数据,Blynk接收并允许显示它(www.blynk.cc)。 以相同的方式,通过设备来组织反馈。 重要的是,单个应用程序可以从多个设备收集和显示数据。

图2.该应用程序的屏幕截图。稍后,我们将发布有关软件的文章,并链接到资源。 我做硬件。 软件实现是由我的同事执行的。
传感器的第一个三重奏1.
OpenWindAir二氧化碳传感器。
基于Wi-Fi模块ESP-12E构建。 使用CO2传感器MH-Z19进行测量。 它广为人知,可让您快速而准确地进行测量。 此外,该设备还具有内置的温度和湿度传感器AM2302。 还支持使用外部传感器,例如,与人员监视系统配合使用。 该设备由PC或5V电源的miniUSB供电。 内置了LED和声音警报(可以从应用程序中关闭后者,或者由时钟使用-以免在晚上醒来)。
2.
LifeOfFlowers用于植物的土壤湿度传感器。
基于Wi-Fi模块ESP-12E构建。 土壤水分的测量是通过将电极插入地面(设备板的一部分)来进行的。 重要的是-电极和整个电路板一样都要上光漆(在这里我不得不做一些测量),这可以防止接触衰减。 除土壤湿度外,该设备还测量湿度和环境温度(AM2302),光照和电池电压。 是的,LifeOfFlowers使用两节AAA电池可使用1至3年(正常运行时间取决于刷新率)。
3.
警告漏水传感器。
基于Wi-Fi模块ESP-12E构建。 使用IP-65外壳随附的电极进行测量。 该设备由两节AAA(或AA)电池供电,工作时间也为1年。 该设备的尺寸仅为55x55x30mm。 首先,您需要将设备放置在潜在危险的地方,这将表明地板上有水存在。 该应用程序还会显示电池的电压,以免忘记及时更换电池。
OpenWindAir-硬件实施在这里,您无法找到电路的装饰,一切都很简单,并且在数据表中。 如果有人需要电路,我可以给。
设备的组成:
ESP8266 ESP-12E-模块本身,负责收集,处理和发送数据。 电源3.3V。
MH-Z19-二氧化碳浓度传感器。 在UART上工作,最高可测量5000ppm,并由5V供电。
AM2302-湿度和温度的测量。 由于传感器位于外壳内部,因此必须输入校准常数,并且测量数据仅供参考。 为了获得更准确的测量结果,使用了一个远程传感器。
1-1462037-8(IM03TS)-继电器,用于切换小电流,以防万一播放。 原则上,这是一件有趣的事情,但是他们尚未提出应用程序(将其输出到与外部湿度传感器相同的外部连接器)。
CP2102-GM-USB-UART。 是的,我们决定制作精美的日志以实时显示信息,事实证明非常方便,您可以在终端中查看数据,查看下载顺序,调试。
LM1117MP-ADJ-适用于3.3V的LDO。
还有一个蜂鸣器,一对按钮和三个LED。 除了CO2浓度阈值外,LED还指示设备加载,连接到接入点(或脱机工作)的过程以及更新过程。
设备实现OTA更新。 我们将固件扔到任何服务器上(在开处方之后),按下按钮,接通电源,固件过程开始。 闪烁(或重新启动)指定的时间后,您可以转到Web界面(该设备显示为访问点)并驱动网络设置-之后一切就绪。
图3.带有组件的电路板的照片。我想写一些有关印刷电路板的形式和功能。 在测试过程中,发现在Wi-Fi的长期运行过程中,模块会加热电路板。 如果机壳内部装有温度和湿度传感器,这将不是至关重要的。 我不得不将ESP模块的馈线和传感器分布在不同的方向,并且还要在板上做一个切口,像设计者一样,在板上仍然插入一个特殊的隔板。 因此,在壳体内部没有空气混合,并且温度和湿度的测量更加可靠。
图4.板上分区的照片。房屋有很多疑问-我想拥有一个美丽的金属,流线型的机身和磨砂的指示带等,但与往常一样,极简主义得以拯救。 案例的形状决定了老式5mm LED的存在,事实证明,这非常方便。 由于它们是凸形的,因此您可以将设备放置在例如架子上,并且指示仍然清晰可见。 盒子本身是用2mm有机玻璃激光切割而成的。
我们提供了几种不同颜色,多种颜色以及不同材质的选择。 看起来很不错。 我什至试图立即按照印刷电路板的顺序从PCB制造它。 目前,我们正在考虑在生产中制造机壳的选择,但到目前为止,这仅在计划中。 我也可以布置模型。
图5.设备照片。计划通常,有计划制造更多的设备(除了这三个设备之外)。 例如,ESP32具有内置的以太网(您只需要物理)和更多的内置ADC,这将使您无需使用多路复用器,就像LifeOfFlowers一样,但稍后会介绍更多。
威胁。 Blynk具有可轻松在PC上部署(检查)的服务器API。 因此,与服务器的绑定消失了。
ZZY。 为了减少负面影响,将文章重命名。 当我们继续使用设备管理房屋时,我将纠正本文。
感谢您的关注!
ZZZY:如您所愿,这是有关软件
geektimes.ru/post/122601的文章的链接。