欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

构建ESP32水位和重量监控Blynk App

程序员文章站 2022-07-03 09:03:58
背景知识视频教程IoT物联网速成课程高级ESP32适用于Arduino创客的ESP32该项目旨在使用IoT技术开发无线监控,将从传感器获取的数据连接到智能手机。 该项目使用Blynk IoT平台来处理获取的数据。 监视两组传感器数据:(1)水位和(2)重量。 水位监控是自动抽水系统的一部分,如果水位过低,该系统会自动为水箱注水。硬件软件介绍ESP32开发板是与Arduino IDE兼容的Wifi和蓝牙组合开发板。 它已经与天线和射频不平衡变压器,功率放大器,低噪声放大器,滤波器和电源管理...

背景知识视频教程

  • IoT物联网速成课程
  • 高级ESP32
  • 适用于Arduino创客的ESP32

该项目旨在使用IoT技术开发无线监控,将从传感器获取的数据连接到智能手机。 该项目使用Blynk IoT平台来处理获取的数据。 监视两组传感器数据:(1)水位和(2)重量。 水位监控是自动抽水系统的一部分,如果水位过低,该系统会自动为水箱注水。

硬件

软件

介绍

ESP32开发板是与Arduino IDE兼容的Wifi和蓝牙组合开发板。 它已经与天线和射频不平衡变压器,功率放大器,低噪声放大器,滤波器和电源管理模块集成在一起。 整个解决方案占用的印刷电路板面积最少。 该板通过TSMC 40nm低功耗技术与2.4 GHz双模Wi-Fi和蓝牙芯片一起使用,具有最佳的功率和RF性能,安全,可靠并且可扩展到各种应用。

防水超声波距离传感器适用于室外应用,例如汽车倒车传感器,安全警报,工业检查,室外水位感应等。 该传感器的距离测量范围为20cm – 600cm。

超声波传感器的工作原理是,脉冲在时间0传输,并被障碍物或障碍物反射回去。 传感器接收该反射信号并将其转换为电信号。 当回声消失时,可以发送下一个脉冲。 该时间段称为循环周期。 建议的周期应不小于50ms。 如果将10μs宽度的触发脉冲发送到信号引脚,则超声模块将输出八个40kHz超声信号并检测回波。 测得的距离与回波脉冲宽度成正比,可以通过上式计算。 如果未检测到障碍物,则输出引脚将发出38ms的高电平信号。

上方显示了称重传感器和称重传感器模块。 称重传感器放大器是小型分线板,可放大非常小的应变/力测量值,并使您能够轻松读取模拟数据以测量重量。 将放大器连接到微控制器,您将能够读取称重传感器的电阻变化,并且通过一些校准,您将可以获得非常准确的重量测量值。 这对于创建自己的工业规模,过程控制或简单的状态检测非常方便。

称重传感器使用四线惠斯通电桥。

上图为惠斯通电桥。 它是一种电路,用于通过平衡桥式电路的两个分支来测量未知电阻,其中两个分支包括未知组件。 该电路的主要优点是它能够提供极其精确的测量(与简单的分压器相比)。 其操作与原始电位计相似。

库文件

硬件设置

原理图

这是整个系统的示意图

这是系统的实际电路。

这必须是称重传感器的设置,以便在测量特定载荷时它可以正确弯曲。只要可以抬高称重传感器,您就可以放置任何垫片。

软件设置

创建账号

我们建议使用真实的电子邮件地址,因为它将在以后简化操作。

需要一个帐户来保存您的项目,并可以从任何地方的多个设备访问它们。这也是一种安全措施。

创建一个项目

成功登录帐户后,请先创建一个新项目。

选择您的硬件
获取您的身份验证令牌

单击该图标,它将引导您进入项目设置。

身份验证令牌是将硬件连接到智能手机所需的唯一标识符。 您创建的每个新项目都会有自己的身份验证令牌。 创建项目后,您会在电子邮件中自动获得身份验证令牌。 您也可以手动复制它。 单击设备部分,然后选择所需的设备。

添加小部件

现在,在生成身份验证令牌之后,您现在可以通过单击图标来添加窗口小部件,并添加按钮,显示等窗口小部件。

在选择小部件时,您可以拖放所需的小部件,但是如果您是第一次没有在帐户中创建任何项目的能源平衡,请注意您的能源平衡,通常是2000能源平衡。

这是有关Blynk的更多教程和项目。

代码

</>

这用于校准称重传感器。数字0.173代表已知重量,在我的情况下,我使用手机的重量作为已知重量的参考。有关校准称重传感器的更多信息,请单击此链接

</>

这是最终系统的代码。如您所见,除了blynk.run()之外,循环函数上没有其他语句可以处理输出数据。

代码分解

 dist = sonar.ping_cm();     

此函数用于获取距离并将其自动转换为厘米

</>

这是用于将从硬件收集的数据发送到Blynk服务器。

 Blynk.run();

这是一个主要的blynk例程,负责保持连接活动,发送数据,接收数据等。

BlynkTimer timer;

该宏实例允许您以给定的时间间隔定期发送数据,而不会干扰Blynk库例程。

这些是从硬件收集到blynk应用程序的输出数据。

视频演示

详情参阅http://viadean.com/esp32_blynk.html

本文地址:https://blog.csdn.net/jiyotin/article/details/107926235

相关标签: ESP32 Blynk