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

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

3天内不再提示

基于ESP8266的简易气象站的制作

454398 来源:工程师吴畏 2019-08-26 10:13 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

第1步:你需要什么: -

对于这个可以指导的所有你需要的是一个微控制器,它可以是Arduino或raspberry pi或者我用过ESP8266。我使用的是基于ESP8266的Node MCU,如果你使用的是arduino,你将需要ESP WiFi模块。

硬件组件: -

NodeMCU(美国链接)

LCD显示屏。 x 1(美国链接)

面包板。 x 1(美国链接)

瞬时开关x 1(美国链接)。

220欧姆电阻x 1.(美国链接)

10k欧姆电位器x 1(美国链接)。

软件: -

Ardunio IDE。

RemoteMe.org(注册)。

步骤2:在RemoteMe上设置变量: -

在此步骤我们将设置变量,将数据发送到我们的微控制器。首先访问RemoteMe.org并按照以下步骤操作: - (请参阅上面的图片以便更好地理解)

在网站上,前往“ Applications ”并创建一个帐户,如果您还没有帐户。

接下来,转到“变量”(它位于菜单的左侧)。

在“变量”选项中,将有一个空白页面,右上角有“添加”选项。点击它。将出现一个弹出窗口。

在弹出窗口中填写变量的名称。这取决于你想要什么(订阅者计数,查看计数或天气信息)。

现在选择服务器类型“远程”,该组依赖于您想要的YouTube或天气数据。

如果您选择“ YouTube ”,则需要在YouTube上找到的频道ID,到YouTube并搜索您想要的频道,打开它并在网址中复制代码。 (查看图像以供参考)

现在,在“远程模式”选项中,选择您希望订阅者计数或视图计数的内容。并提交数据。它将创建一个变量。同样为您想要的其他数据创建更多变量。

查看图片了解详情,了解更多信息。

步骤3:在RemoteMe上设置设备: -

完成变量后,转到“ Devices ”选项。它位于“ Variables ”之上。在这里你必须创建一个新设备。

要创建新设备,请选择右上角的选项。

从下拉列表中选择“新网络设备”下方菜单。将出现一个弹出窗口。

首先选择您正在使用的设备类型。 (对于Arduino和NodeMCU,请选择arduino)

将设备命名为YouTube/Weather,无论您想要什么。

提供一个设备ID,它可以是任何东西,但对于第一个设备给‘1’。

现在提交。将出现一个新设备。

单击设备上的汉堡菜单。 (由3条水平线表示)并选择“代码生成器向导”。

现在选择Variables,Select all并单击Next。

输入您的WiFi名称和密码。在令牌菜单中选择令牌。单击Next。

打开调试选项并单击下一步。

在这里,您可以看到Arduino的代码。它将自动生成,您可以下载它。

继续下一步。

第4步:编码: -

下载的代码现在可以上传到微控制器。要使代码生效,您需要一些可以从库管理器安装的库。

安装库: -

转到 》》 草图 》》 包含库 》》 管理库。

在搜索栏中输入库的名称。 (ESP8266WiFi,ESP8266WiFiMulti& RemoteMe)

安装库。

现在您可以上传代码并打开串行监视器来观看数据。

下面我提供了一些代码,稍加编辑以使结果更具体。您可以下载代码,添加您的WiFi名称和必填字段中的密码。还要添加上一步(‘1’)中使用的设备ID。

手动添加令牌转到 RemoteMe 》》 应用程序》》 令牌。复制令牌并将其粘贴到代码上。上传并检查串口监视器的结果。

注意: - 要使用arduino IDE对ESP板进行编程,您必须设置IDE,如果您不知道,可以检查这个 教程 。

步骤5:在LCD上显示数据: -

现在您已成功在“串行监视器”上显示数据,您可以继续在LCD屏幕上显示数据,以便项目更加便携。

请仔细按照以下步骤操作: -

首先将NodeMCU板(ESP8266)放在面包板上,将其‘3.3v’连接到‘面包板的+ ve’轨道和‘Gnd’到‘ - ve’轨道。

连接MCU旁边的按钮,并通过‘220 ohm’电阻将其一个引脚连接到面包板的“-ve”轨道。并将相同的引脚连接到MCU的‘D2’引脚。将按钮的另一个引脚连接到面包板的‘+ ve’导轨。

现在连接面包板上的LCD并仔细按照连接进行操作。

VSS 》》面包板的-ve rail。

VDD 》》 + ve rail。

V0 》》电位器的中间端子。 (将另外两个端子连接到-ve和+ ve)

RS 》》 D2

RW 》》 -ve rail。

E 》》 D3的MCU

D4 》》 D5

D5 》》 D6

D6 》》 D7

D7 》》 D8

A 》》 + ve导轨板通过220欧姆电阻器

K 》》 -ve rail

我知道这有点令人困惑,但请查看图片以获得更好的主意。

完成后,连接就绪,现在只需要上传代码。

需要编辑代码才能使用LCD。

让我们编辑前面的代码: -

#define WIFI_NAME “WiFi Name”

#define WIFI_PASSWORD “WiFi Password”

#define DEVICE_ID 1

#define DEVICE_NAME “Device Name”

#define TOKEN “Add Token”

#define btn D1 //Declare a button variable for push button

#include

#include

#include

#include

#include //including library to use LCD

LiquidCrystal lcd(D2, D3, D5, D6, D7, D8); //mapping LCD pins to ESP‘s pins

/* Variables to store data from RemoteMe */

int16_t i, i1, i2, temp, pres;

int32_t subs, views;

String hr; //Only needed if you want to display time.

long lastDebounceTime = 0, debounceDelay = 50; //To eliminate button bouncing.

ESP8266WiFiMulti WiFiMulti;

RemoteMe& remoteMe = RemoteMe::getInstance(TOKEN, DEVICE_ID);

void onSubscribersChange(int32_t i)

{

subs = i; //Storing subscriber data in variable ’subs‘

}

void onViewsChange(int32_t i)

{

views = i; //Storing views in variable ’views‘

}

void onWeatherChange(int16_t i1, int16_t i2,String s1,String s2)

{

temp = i1; //storing temperature

pres = i2; //Storing Pressure

}

/*New functions to display the stored data*/

void youtube()

{

//Display YouTube info.

Serial.printf(“Subscribers : %d ”, subs);

Serial.printf(“Views : %d ”, views);

lcd.clear();

lcd.printf(“Subscribers : %d”, subs);

lcd.setCursor(0,1);

lcd.printf(“Views : %d”, views);

lcd.setCursor(0,0);

}

void weather()

{

//Display weather info.

Serial.printf(“Temparature : %d °C ”, temp);

Serial.printf(“Pressure : %d Pa ”, pres);

lcd.clear();

lcd.printf(“Temperature : %d”, temp);

lcd.setCursor(0,1);

lcd.printf(“Pressure : %d”, pres);

lcd.setCursor(0,0);

}

void setup()

{

Serial.begin(9600);

lcd.begin(16, 2);

pinMode(btn, INPUT);

WiFiMulti.addAP(WIFI_NAME, WIFI_PASSWORD);

while (WiFiMulti.run() != WL_CONNECTED)

{

delay(100);

}

remoteMe.getVariables()-》observeInteger(“Subscribers” ,onSubscribersChange);

remoteMe.getVariables()-》observeInteger(“Views” ,onViewsChange);

remoteMe.getVariables()-》observeSmallInteger2Text2(“Weather” ,onWeatherChange);

remoteMe.sendRegisterDeviceMessage(DEVICE_NAME);

Serial.print(“Connected.。.”);

lcd.print(“Connected.。.”);

}

void loop()

{

int btn_state = LOW; //button state is initially set LOW

static int flag = 0; //flag is set 0

btn_state = digitalRead(btn); //button input is read.

if((millis() - lastDebounceTime) 》 debounceDelay)

{

if((btn_state == HIGH) && (flag == 0)) //if button is pressed & flag is 0

{

weather(); //show weather data

flag = 1; //set flag to 1

}

else if((btn_state == HIGH) && (flag == 1)) //if button is pressed & flag is 1

{

youtube(); //show YouTube info

flag = 0; //set flag to 0

}

lastDebounceTime = millis();

}

remoteMe.loop();

}

因此,在进行更改后,您可以将代码上传到电路板,您应该看到LCD上显示“已连接。..”以及串行监视器。

从下面下载代码: -

第6步:测试: -

代码启动并运行后,您可以测试一切是否正常。

当ESP板连接到网络时,LCD将显示“已连接。..”

按此按钮将显示天气(温度和压力信息),再按一次将显示YouTube用户和总计观点。

您可以编辑代码以显示其他信息,如时间,天气状况等。

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

    关注

    1

    文章

    841

    浏览量

    16904
  • ESP8266
    +关注

    关注

    51

    文章

    966

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

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

    便携式气象站:移动场景下的气象“感知官”

    便携式气象站:移动场景下的气象“感知官”柏峰【BF-BQX】在野外勘探的深山里,在赛事保障的运动场上,在农业生产的田垄间,精准、实时的气象数据往往是决策的关键。传统固定式气象站受限于安
    的头像 发表于 11-14 09:13 112次阅读
    便携式<b class='flag-5'>气象站</b>:移动场景下的<b class='flag-5'>气象</b>“感知官”

    超声波气象站:精准监测的技术新选择

    超声波气象站:精准监测的技术新选择 柏峰【BF-CSQX】在气象监测技术持续升级的背景下,超声波气象站凭借无机械损耗、高灵敏度、强环境适应性等核心特性,逐渐取代传统机械气象站,成为
    的头像 发表于 10-24 10:12 452次阅读
    超声波<b class='flag-5'>气象站</b>:精准监测的技术新选择

    小型自动气象站:精细化气象监测的技术革新与应用拓展

    小型自动气象站:精细化气象监测的技术革新与应用拓展 柏峰【BF-QX】随着气象服务向“精细化、精准化、智能化”升级,传统气象观测站点密度不足、覆盖范围有限的问题日益凸显。小型自动
    的头像 发表于 10-23 10:53 251次阅读
    小型自动<b class='flag-5'>气象站</b>:精细化<b class='flag-5'>气象</b>监测的技术革新与应用拓展

    超声波自动气象站技术方案

    超声波自动气象站技术方案 柏峰【BF-CSQX】一、项目背景与需求分析 1.1 项目背景 传统机械转动式气象站存在部件磨损、易受恶劣天气影响(如风沙堵塞、雨雪结冰)、维护成本高等问题,难以满足现代化气象监测对数据精准性、连续性及
    的头像 发表于 10-16 14:18 176次阅读
    超声波自动<b class='flag-5'>气象站</b>技术方案

    景区负氧离子气象站

    气象站
    pingao141378
    发布于 :2025年10月14日 14:06:19

    北斗自动气象站: 护航无网区的 “气象信使”

    北斗自动气象站: 护航无网区的 “气象信使”柏峰【BF-BDQX】在沙漠深处的油田、高原无人区的牧区,或是地震灾后的通信中断地带,一种能摆脱网络依赖的气象设备正持续传递着关键数据 —— 它就是北斗自动
    的头像 发表于 09-08 11:35 870次阅读
    北斗自动<b class='flag-5'>气象站</b>: 护航无网区的 “<b class='flag-5'>气象</b>信使”

    防爆工业气象站:工业场景的 “气象监测中枢”

    防爆工业气象站:工业场景的 “气象监测中枢”柏峰【BF-FB】在石油化工、煤矿开采、天然气处理等高危工业场景中,一个容易被忽视却关乎安全生产的问题始终存在:如何在易燃易爆环境下
    的头像 发表于 08-26 12:00 383次阅读
    防爆工业<b class='flag-5'>气象站</b>:工业场景的 “<b class='flag-5'>气象</b>监测中枢”

    光伏实验气象站的技术架构与应用实践

    光伏实验气象站的技术架构与应用实践 柏峰【BF-GFQX】在光伏产业快速发展与新能源科研不断深入的背景下,光伏实验气象站作为获取精准气象数据与光伏性能参数的核心设备,其技术先进性直接决定了科研成果的可靠性与工程应用的实效性。
    的头像 发表于 08-19 08:57 1914次阅读
    光伏实验<b class='flag-5'>气象站</b>的技术架构与应用实践

    ESP8266烧录与机智云一键配网教程

    网。器件:ESP8266+烧录器千万不要插反了噶,刚插进去,会有蓝色闪一下,木问题的哦。需要下载的文件固件及烧写工具:(代码来源于B:配网与实验演示_哔哩哔哩_
    的头像 发表于 05-24 11:04 1566次阅读
    <b class='flag-5'>ESP8266</b>烧录与机智云一键配网教程

    给孩子一堂自然课:气象站如何让科学触手可及?

    气象站
    奕帆科技
    发布于 :2025年05月06日 14:57:01

    解密交通气象站:数据驱动的交通气象服务革新

    在当今数字化时代,数据成为了推动各行业变革的核心动力,交通气象领域也不例外。交通气象站作为交通气象服务的关键设施,正借助数据的力量实现着革新,为交通出行与顺畅提供着更强大的支持。 交通气象站
    的头像 发表于 03-27 15:36 457次阅读
    解密交通<b class='flag-5'>气象站</b>:数据驱动的交通<b class='flag-5'>气象</b>服务革新

    智慧校园:气象站引领气象知识科普

    在科技飞速发展的当下,智慧校园建设不断深入,各类创新元素融入校园生活,为师生带来全新体验。其中,气象站作为智慧校园的存在,正悄然引领着气象科普的新风尚。 校园气象站不再是传统意义上简单的气象
    的头像 发表于 02-08 15:29 528次阅读

    自动气象站的工作原理与应用

    自动气象站是现代气象观测网络的重要组成部分,它通过集成传感器、数据采集与处理系统、通讯设备等技术手段,实现了对大气环境参数的实时监测和高效数据传输。以下是对自动气象站的工作原理与应用的详细探讨
    的头像 发表于 12-18 13:56 1198次阅读

    绿色校园,智慧气象:走进我们的气象站

    在蔚蓝天空与葱郁绿意的交相辉映下,我们的校园不仅是一片知识的沃土,更是绿色生.态与智慧科技融合的典范。在这片充满活力的土地上,一座现代化的气象站悄然矗立,它不仅是我们探索自然奥秘的窗口,更是绿色校园
    的头像 发表于 12-10 11:58 665次阅读