本网页已闲置超过3分钟,按键盘任意键或点击空白处,即可回到网页

基于ESP8266的天气预报显示器
发布时间:2021-08-14
分享到:
基于ESP8266的天气预报显示器
发布时间:2021-08-14
分享到:

下面文章我将介绍我的新项目,天气预报显示器。早些时候,我也设计过这个产品,当时它使用 0.96寸OLED 显示器来显示天气参数。之前方案的主要问题是显示器的尺寸非常小,当你读取参数时,您的眼睛必须非常的靠近它,才能看清具体的数字。这就是为什么我总是想将它升级成大屏彩色显示器的原因。

在下面的教程中,我将向您展示如何使用 ESP8266 单片机和 2.8寸 触摸屏显示器制作天气预报显示器。该设备通过 WLAN从检索本地化的天气信息,然后将其显示在显示模块上。

小部件显示以下内容:

1. 当前时间与日期

2. 当日天气信息,如温度、压力、湿度和降雨量。

3.未来7天预测

第 1 步:所需零件和工具

使用的零件:

1. Wemos D1 Mini Pro

2. 2.8寸 TFT 显示屏

3. 电线

4. USB 数据线

使用的工具 :

1. 3D 打印机

2. 电烙铁

3.线切割机

4. 剥线钳

第 2 步:准备电线

我原本的打算是将天气显示电路放置在 3D 打印外壳内。但是我要使用的3D打印外壳里面的空间非常小而紧凑,几乎没有空间将 Wemos 板和连接线放在外壳内。

因此,我们必须选择细线来连接显示单元和 Wemos Board。最后,我选择了30AWG单股线。

使用钳子剪出14根等长的电线。

然后使用剥线钳剥去电线的绝缘层。

第 3 步:将电线焊接到显示单元

TFT 显示器具有预焊接的直头针,可将其安装到面包板或任何PCB板上。你有两个焊接方案的选项:

1.将排针从 PCB 上拆下,然后将电线焊接到焊盘上

2.直接焊接到排针

在焊接之前,在所有排针的引脚上涂抹少量助焊剂。然后在烙铁头上使用少量焊料对头针进行镀锡。镀锡是必需步骤,有了这个步骤,镀锡的过程就会更加容易,导线和排针引脚之间的结合更牢固。

最后,将电线焊接到所有的排针和引脚,如上图所示。

第 4 步:3D 打印

这个网站上的模型使我眼前一亮,我在 Autodesk Fusion 360 中修改了外壳设计。所有部件的尺寸均由游标卡尺测量,然后在设计过程中考虑到相同的尺寸。

外壳有3个部分:

1. 外壳本体

2. 后盖

3. 底盖

Thingiverse下载 STL 文件

我使用 Creality CR-10 Mini 3D 打印机和 1.75 毫米白色 PLA 灯丝打印零件。

可以参考我的设置:

打印速度:60 毫米/秒

层高:0.2mm

填充密度:20%

挤出机温度:210 摄氏度

床温:60 摄氏度

第 5 步:安装显示器

在这一步中,您有两个选择

1. 首先将显示器安装到外壳中,然后将电线焊接到 Wemos 板上

2. 先将显示器和Wemos板接线,然后再安装到机箱中

第 6 步:接线图

接线图非常直观。您必须按照原理图将 TFT 显示模块 (ILI9341) 引脚与 Wemos 引脚连接起来,示意图如上所示。

VIN -> 3.3V

GND -> GND

CS -> D1

RESET -> RST

DC -> D2

SDI -> D7

SCK - D5

LED -> D8

SDO -> D6

T_CLK -> D5

T_CS -> D3

T_DIN -> D7

T_DO -> D6

T_IRQ -> D4

第 7 步:制作电路

首先,下载原理图,然后打印输出。它在焊接的过程中非常方便,您也将节省大量时间。但是需要注意的是,连接中的任何错误都可能损坏显示模块或 Wemos 板。在这个项目的制作过程中,由于连接错误,我炸坏了我的显示器。

第 8 步:为 ESP8266 开发板准备 Arduino 编译环境

ESP8266 模块不是 Arduino-IDE 的一部分,所以我们需要先安装它。下面是安装步骤,供参考。

1. 启动 Arduino IDE 并打开 Preferences 窗口。

2.在 Arduino IDE 的 File>Preferences>Additional Boards Manager URLs 字段中输入https://arduino.esp8266.com/stable/package_esp826...。您可以添加多个 URL,用逗号将它们分开。

3. 用 OK 按钮关闭此窗口。从工具 > 开发板菜单打开开发板管理器,然后选择正确的 ESP8266 开发板。

4. 现在您可以选择 LOLIN(WEMOS) D1 R2 & mini。将 CPU 频率设置为 80MHz,Flash Size 设置为“4MB (FS:3MB OTA:~512KB)”以及“COM”端口。

第 9 步:下载代码和数据库

您可以从以下链接下载 Arduino 代码和数据库。

Arduino代码:

https://github.com/ThingPulse/esp8266-weather-stat...

数据库:

1. Daniel Eichhorn 

2. ESP8266 WeatherStation

3. Daniel Eichhorn

4. ThingPulse XPT2046 Touch

下载库后解压缩它并在
Sketch > Include Library > Manage Libraries 在您使用的 Arduino Library Manager 安装。

第 10 步:获取 OpenWeatherMap API 密钥

气象站实时数据来自OpenWeatherMap网站。所以你必须获得 OpenWeatherMap API Key。

现在您可以在第一列中选​​择免费选项。申请免费选项不需要任何费用,但是足以满足我们的要求。使用免费计划的唯一限制是您每分钟只能接线60次。

现在点击获取“API 密钥”,然后通过填写您的凭据创建一个新帐户。

记下下一步代码中所需的 API 密钥。

第 11 步:上传软件

设置 Arduino IDE 并安装所有数据库后,我们可以将代码上传到 ESP8266 板。

首先,您必须解压缩在前面步骤中下载的代码,然后将其保存在 PC 或笔记本电脑上的某个位置。去掉文件夹名称中的master,最终名称为“esp8266-weather-station-color”

然后打开文件夹并点击“ esp8266-weather-station-color.ino 

在其中一个选项卡中,IDE 打开settings.h。浏览文件并调整两个配置参数。它们都直接记录在文件中。

现在您已准备好上传代码,只需点击上传按钮即可。

第 12 步:安装

安装好显示单元和电路板后,我们可以使用两个盖板来装箱。外壳设计有非常紧密的间隙,您不需要任何胶水或螺丝来固定盖子。

将盖子与外壳中的插槽对齐,然后将把四周都压压平整,您就完成了。较小的盖子用于底座部分,较大的盖子用于显示部分的背面。

                                       第 13 步:测试

如果您成功的将代码上传到 ESP8266,您会立即通过搜索 WiFi 网络连接在首页上看到显示。将设备连接到您的 WiFi 路由器后,它将从网络更新时间和天气数据。

现在,您将能够在 TFT 显示屏上看到所有天气信息以及所有其他参数。您可以使用触控笔或用手指触摸在不同页面之间切换。

https://www.instructables.com/ESP8266-Weather-Widget-V20/

加入微信技术交流群

技术交流,职业进阶

关注与非网服务号

获取电子工程师福利

加入电路城 QQ 交流群

与技术大牛交朋友

讨论