arduino读取水位传感器的数据显示在基于i2c的1602a上_使用NodeMCU、Thingspeak和传感器远程天气跟踪...
时间:2022-08-07 06:00:00
背景知识视频教程
通过构建实际应用程序来掌握Arduino - 国外课栈viadean.com
温度在任何方面都起着重要作用。 例如,在准备食物或食物时,温度非常重要,因为温度会影响食物的质量、味道和新鲜度。 另一个例子是,温度在葡萄酒和啤酒产中,温度在最终产品的质量中起着重要作用。
气压对水化学和天气条件有重要影响。 较高的气压可支撑晴天、晴天和有利的天气条件,但较低的气压水平会导致阴雨和多云。 这个大气参数已经用于预测天气状况已有数百年的历史了。
本教程在线测量或监测大气压和温度。
硬件
软件
ESP8266 NodeMCU
NodeMCU是开发板,可以有Espressif Non-OS SDK的ESP8266和基于ESP-12模块的硬件运行。 该设备具有4MB的闪存,80MHz约50个系统时钟k的可用RAM和片上Wifi收发器。
ESP8266可用作外部Wifi模块,使用标准AT命令集固件(串行)UART也可以通过使用提供的任何微控制器连接)SDK编程新固件直接用作支持Wifi微控制器。
数字温度传感器
它广泛用于测量化学溶液、矿山或土壤等硬环境中的温度。传感器的管口非常坚固,也可以购买防水选件,从而简化了安装过程。 它可以从-55°C到 125°C宽范围温度,精度达到±5°C。 每个传感器都有一个唯一的地址,只需要MCU一个引脚可以传输数据,所以在不影响单片机多点数字引脚的情况下测量温度是一个不错的选择。
如何工作
传感器采用1-Wire通信方法。 只需使用上拉电阻将数据引脚连接到微控制器,而另外两个引脚则用于供电。 不使用总线时,上拉电阻器用于保持线路处于高状态。 传感器测得的温度值将存储在传感器内的2字节寄存器中。 可以通过1-wire该方法按顺序发送数据读取数据。
气压高度传感器
传感器非常适合各种天气传感器,甚至可以I2C和SPI中使用。 该传感器具有高精度、低成本的特点,高达±1 hPa精确的压力测量和高达±1.0°C理想的温度解决方案。由于高度和压力测量的压力变化非常准确,传感器和高度计的精度可以使用±1米。
Thingspeak
ThingSpeak它是一个物联网云平台,您可以将传感器数据发送到云。您也可以使用它MATLAB或者其他软件分析和可视化数据,包括制作自己的应用程序。
ThingSpeak包含一个Web服务(REST API),可让您在云中收集和存储传感器数据并开发物联网应用程序。 它可以与Arduino,Raspberry Pi和MATLAB一起使用(有预制库和API),但它应该与所有类型的编程语言一起使用,因为它使用REST API和HTTP。
使用本教程Arduino代码上的API密钥将Thingspeak与Arduino集成在一起API必须先打开密钥Thingspeak账户。描述了以下过程。Thingspeak设置过程。
软件设置
在Thingspeak创建帐户
前往http://Thingspeak.com
然后单击注册。
填写必要的信息,然后单击继续。
只需选择并使用此电子邮件Mathworks帐户,然后单击继续。
验证您的电子邮件,然后单击继续。
输入用户名和密码。单击继续。
只需单击确定。
选择您计划如何使用它Thingspeak,然后单击确定。
单击新频道,创建自己的频道。
输入频道名称和字段名称,然后单击保存频道。
接下来是单击API密钥以获取API密钥。
生成新写入API密钥按钮上方的密钥是我们将在代码中使用的API密钥。
Arduino IDE上的ESP8266 NodeMCU设置
打开您的Arduino IDE,然后单击文件,然后单击首选项。并将以下链接复制到其他板管理器中URL。
http://arduino.esp8266.com/stable/package_esp8266com_index.json
然后单击确定。
接下来是单击工具,然后转到工具 Board:然后单击 Board Manager”。
输入搜索栏ESP8266,然后单击安装。
硬件设置
代码
库文件
Arduino代码
注意: 在Thingspeak帐户中将“ API将密钥更改为您自己的密钥API并将密钥 WIFI-SSID”和“ WIFI-PASSWORD发送给自己的Wifi网络的SSID和PASSWORD。
代码分解
这部分代码是我们的SPI总线分配给NodeMCU引脚的地方。计时器设置为15秒。但是你可以改变计时器,但最小间隔是15秒,因为Thingspeak每15秒更新一次数据。
我们开始串行通信,并将波特率设置为115200 bps,然后检查工作是否正常。然后调用connectWifi()函数。
在此代码中,我们开始读取获得的数据,并将其存储在温度和压力变量中。然后在串行监视器中显示温度和压力值。
我们检查这个代码是否可以连接到Thingspeak服务器,然后将数据发送到服务器。在物联网中,我们在字段1和字段2中显示温度数据。
这个代码是我们的计时器,myPeriodic等于15。因此,在循环可以再次运行之前,我们有15秒的计时器。
此代码是connectWifi()函数。在此代码中,我们连接设备Wifi,并检查是否可以连接。
参阅
使用NodeMCU、Thingspeak跟踪传感器远程天气跟踪 - 国外课栈viadean.com