亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

BME280 Nextion Display 上的温度、湿度和压力

组件和用品

Arduino Nano R3
× 1
SparkFun 大气传感器突破 - BME280
× 1
Itead Nextion NX8048T070 - 通用 7.0" HMI TFT LCD 触摸显示器
× 1
SparkFun USB 到串行突破 - FT232RL
× 1

应用和在线服务

Visuino - Arduino 图形化开发环境
Arduino IDE

关于这个项目

有很多显示 将图形用户界面添加到 Arduino 的选项 板。然而,它们中的大多数需要大量的内存和处理时间,并且不适合 Arduino 内存和处理能力有限的板,例如 Arduino UNOArduino Nano .当内存有限且需要高级用户界面时,智能可编程串行下一个显示器 是一个受欢迎的选择。 Itad 提供免费的Graphical Nextion Editor 用于设计显示器的用户界面。

BME280 是一个非常准确的组合温度 , 湿度 , 和 气压 传感器。它可以连接I2CSPI 界面,

可视化 具有完整的 Nextion Display 支持,我一直在为 Nextion 计划一个教程 支持一段时间。我还想为 BME280 制作教程 传感器。最后我决定将它们结合起来,制作一个显示温度的教程 , 湿度 , 和 气压 来自 BME280Scope 的 3 个通道上 (波形 ) Nextion Display 上的组件 .

第 1 步:组件

  • 一个 Arduino 兼容板(我使用 Arduino Nano,因为我有一个,但任何其他都可以)
  • 一个 BME280 传感器模块
  • 一个 Nextion 串行接口智能显示器 (我使用了 NX4024K032_11 但任何其他也应该工作)
  • 4 女-女 跳线
  • 要对显示器进行编程,您还需要一个 5V USB转TTL串口转换器模块

步骤 2:将 Nextion 显示器连接到 USB 串行通信模块

Nextion Display 进行编程 使用 Nextion 编辑器 您需要将它与 USB 转 TTL 串行转换器连接起来 到您的计算机:

  • 连接 Nextion Wires 连接器显示图一 )
  • 如果您的USB转串口模块 是可配置的,请确保将其设置为提供 5V 电源图二 )(在我的情况下,我需要使用电源选择跳线对其进行配置)
  • 连接地线 (黑线 ) 来自 Nextion Display接地引脚 USB转TTL串行转换器模块图二 )
  • 连接电源 (+5V) 线 (红线 ) 来自 Nextion Display 电源(VCC/+5V)引脚 USB转TTL串行转换器模块图二 )
  • 连接 RX 线 (黄线 ) 来自 Nextion DisplayTX 引脚 USB转TTL串行转换器模块图二 )
  • 连接TX 线蓝线 ) 来自 Nextion DisplayRX 引脚 USB转TTL串行转换器模块图二 )
  • 连接USB转TTL串行转换器模块 使用USB 数据线 连接到计算机 (图 3 )

第 3 步:启动 Nextion Editor,并选择 Display Type 和 Orientation

Nextion Display 进行编程 ,您将需要下载并安装 Nextion 编辑器 .

  • 启动 Nextion 编辑器图一 )
  • 菜单 选择 |新建文件 | (图一 )
  • 在“另存为 " 对话框,输入项目文件名,然后选择保存项目的位置(图片 2 )
  • 点击“保存 " 按钮(图片 2 )
  • 在“设置 " 对话框,选择显示类型 (就我而言NX4024K032_11 ) (图 3 )
  • 点击“显示 " 标签显示显示设置图 4 )
  • 选择水平 显示方向(图片 4 )
  • 点击“确定 " 按钮关闭对话框(图 4 )

第 4 步:在 Nextion 编辑器中:添加和配置 Waveform(Scope) 组件

我们需要添加一个 Scope 组件,并将其配置为具有 3 个用于 Temperature 的通道 , 压力 , 和 湿度 :

  • 在“工具箱 " 在左边点击 "Waveform " 组件(图 1 ) 将其添加到设计区域(图片 2 )
  • 调整组件大小以填满显示屏(图片 3 )
  • 在“属性 ” 工具箱中,设置“ch”的值 " 属性到 "3 " (图 3 )
  • 在“属性 ” 工具箱,设置“dir”的值 " 属性为 "从右到左 " (图 4 )

第 5 步:在 Nextion 编辑器中:将项目上传到 Nextion 显示器

  • 点击“上传 " 按钮(图片 1 )
  • 在“上传到 Nextion 设备 ”对话框,点击“Go " 按钮(图片 2 ) 开始上传(图 3 )
  • 上传完成后(图 4 ),点击“退出 " 按钮关闭对话框。

第六步:启动Visuino,选择Arduino Board类型

由于 Arduino Nano 只有一个串口 , 并且需要对 Arduino 进行编程 ,您需要对 Arduino Nano 进行编程 Nextion Display 之前 已连接。

要开始对 Arduino 进行编程,您需要拥有 Arduino IDE 从这里安装:http://www.arduino.cc/。

请注意,Arduino IDE 1.6.6 中存在一些严重错误。

请确保您安装的是 1.6.7 或更高版本,否则本教程将无法运行!

Visuino :https://www.visuino.com 也需要安装。

  • 启动 Visuino 如第一张图
  • 点击“工具Arduino 上的按钮 组件(图 1 ) 在 Visuino
  • 出现对话框时,选择 Arduino Nano图2所示

第 7 步:在 Visuino 中:添加 Nextion Display 组件和 Scope 元素

要控制Nextion Display,我们需要在Visuino中添加Nextion Display组件,然后在it中添加控制Scope的元素:

  • 输入“下一步 “在组件工具箱的过滤器框中,然后选择“Nextion Display " 组件(图 1 ),并将其放在设计区域
  • 点击“工具DisplayNextion1 的按钮 组件(图 2 )
  • 在“元素 " 编辑器选择“Scope(Wave) ”元素,然后点击左边的“”按钮(图2 ) 添加范围 元素(图 3 )

第 8 步:在 Visuino 中:将 3 个通道添加到 Scope 元素,并连接 Nextion Display

接下来我们需要向 Scope 添加通道。

  • 在对象检查器中,单击“...频道”值旁边的“按钮 " Scope1 的子属性 元素(图片1 )
  • 在频道编辑器中选择“频道 ”元素,然后点击3次 在左侧的“”按钮上(图片 2 ) 添加 3 个通道(图片 3 )
  • 关闭“频道 " 和显示 "元素 " 对话框
  • 连接“输出 " DisplayNextion1 的输出引脚 组件到“In "Serial[0] 的输入引脚 "Arduino 的频道 组件(图 4 )

第 9 步:在 Visuino 中:添加和配置 3 个 Map Range 组件

Nextion Display Scope 通道旨在显示 0.0 之间的值 和 1.0 .要显示温度、湿度和压力,我们需要将这些值转换为 0.01.0 范围。我们可以为此使用 Map Range 组件:

  • 输入“地图 “在组件工具箱的过滤器框中,然后选择“地图范围 " 组件(图 1 ),然后删除 3 个 在设计区
  • 选择MapRange1 组件(图 2 )
  • 在对象检查器中展开“输入范围 " 属性(图 2 )
  • 在对象检查器中设置“Max”的值 "输入范围的子属性 " 属性为 "101000 " (图 2 ) (你可能需要设置不同的值,如果你所在位置的气压差异很大)
  • 在对象检查器中设置“Min”的值 "输入范围的子属性 " 属性为 "99000 " (图 2 ) (你可能需要设置不同的值,如果你所在位置的气压差异很大)
  • 选择MapRange2 组件(图 3 )
  • 在对象检查器中展开“输入范围 " 属性(图 3 )
  • 在对象检查器中设置“Max”的值 "输入范围的子属性 " 属性为 "100 " (图 3 )
  • 在对象检查器中设置“Min”的值 "输入范围的子属性 " 属性为 "-20 " (图 3 )
  • 选择MapRange3 组件(图 4 )
  • 在对象检查器中展开“输入范围 " 属性(图 4 )
  • 在对象检查器中设置“Max”的值 "输入范围的子属性 " 属性为 "100 " (图 4 )

第 10 步:在 Visuino 中:将 Map Range 组件连接到 Nextion Display Channels

  • 连接“输出 " MapRange1 的输出引脚 组件到“In "Elements.Scope1.Channels.Channel1 的输入引脚 " DisplayNextion1 的元素 组件(图 1 )
  • 连接“输出 " MapRange2 的输出引脚 组件到“In "Elements.Scope1.Channels.Channel2 的输入引脚 " DisplayNextion1 的元素 组件(图 2 )
  • 连接“输出 " MapRange3 的输出引脚 组件到“In "Elements.Scope1.Channels.Channel3 的输入引脚 " DisplayNextion1 的元素 组件(图 3 )

第11步:在Visuino中:添加并连接BME280组件

我们需要添加一个组件来从 BME280 模块读取数据:

  • 输入“280 “在组件工具箱的过滤器框中,然后选择“压力温度湿度 BME280 I2C " 组件(图 1 ),并将其放在设计区域
  • 我的BME280 模块I2C 地址 118 (0x76 )。如果您的模块具有不同的地址,则需要设置“地址”的值 " 属性(图 2 )
  • 连接“压力(Pa) " PressureTemperatureHumidity1 的输出引脚 组件到“In " MapRange1 的引脚 组件(图 2 )
  • 连接“温度 " PressureTemperatureHumidity1 的输出引脚 组件到“In " MapRange2 的引脚 组件(图 3 )
  • 连接“湿度(%) " PressureTemperatureHumidity1 的输出引脚 组件到“In " MapRange3 的引脚 组件(图 4 )
  • 连接“输出 " PressureTemperatureHumidity1 的输出引脚 组件到“In " I2C 的引脚 Arduino 的频道 组件(图 5 )

第 12 步:在 Visuino 中:添加、配置和连接时钟发生器组件

我们可以按原样使用该项目,但是它会一直非常快速地刷新 Scope。如果 Scope 每秒更新 10 次,则效果会更好。为此,我们将添加一个时钟组件来为传感器的读数和示波器的更新计时。

  • 输入“时钟 “在组件工具箱的过滤器框中,然后选择“Clock Generator " 组件(图 1 ),并将其放在设计区域
  • 在对象检查器中,设置“频率”的值 " ClockGenerator1 的属性 到“10 " (图 2 )
  • 连接“输出 " ClockGenerator1 的输出引脚 组件到“时钟 " PressureTemperatureHumidity1 的输入引脚 组件(图 3 )

第 13 步:生成、编译和上传 Arduino 代码

  • Visuino 中 , 按 F9 或点击图片1上显示的按钮 生成 Arduino 代码,并打开 Arduino IDE
  • Arduino IDE 中 ,点击上传 按钮,编译和上传代码(图片2 )

第 14 步:将 BME280 温度、湿度和压力传感器连接到 Arduino

  • 连接3V3 VCC 电源 (红线 ), 地面 (黑线 ),SDA绿线 ) 和 SCL (黄线 ),到 BME280 模块(图片 1 )
  • 连接地线的另一端 (黑线 ) 接地 Arduino Nano 的引脚 板(图 2 )
  • 连接3V3 VCC电源线的另一端 (红线 ) 到 3V3 Arduino Nano 的电源引脚 板(图 2 )
  • 连接SDA 线的另一端 (绿线 ) 到 SDA/模拟引脚 4 Arduino Nano 板(图 2 )
  • 连接SCL 线的另一端 (黄线 ) 到 SCL/模拟引脚 5 Arduino Nano 板(图 2 )
  • 图 3 显示地面的位置 , 3V3 电源,SDA/模拟引脚 4 , 和 SCL/模拟引脚 5Arduino Nano 的引脚

第 15 步:将 Nextion 显示器连接到 Arduino

  • 断开 Nextion DisplayUSB 到 TTL 串行转换器模块的电线
  • 接地
  • 断开 Nextion DisplayUSB 到 TTL 串行转换器模块的电线
  • 连接地线 (黑线 ) 来自 Nextion Display接地引脚 Arduino Nano图二 )
  • 连接TX 线蓝线 ) 来自 Nextion DisplayRX(D0) 引脚 Arduino Nano图二 )
  • 连接 RX 线 (黄线 ) 来自 Nextion DisplayTX(D1) 引脚 Arduino Nano图二 )
  • 图 4 显示地面的位置 , 5V 电源,RX/数字引脚 0 , 和 TX/数字引脚 1Arduino Nano 的引脚
  • 连接+5V 电源线 (红线 ) 来自 Nextion Display5V 电源引脚 Arduino Nano图 3 )
  • 图 4 显示为红色 地面在哪里 , 5V 电源,RX/数字引脚 0 , 和 TX/数字引脚 1 , Arduino Nano 的引脚(蓝色表示上一步中连接的引脚)

第 16 步:然后玩……

恭喜! 您已完成该项目。

图一 显示连接并通电的项目。正如您在图片和视频中看到的 范围Nextion Display 上 将绘制压力温度 ,以及湿度 来自 BME280 模块 .

图片2 你可以看到完整的Visuino 示意图。

附件是 Visuino 我为本教程创建的项目。您可以在 Visuino 中下载并打开它 :https://www.visuino.com

同一个 zip 中还附有 Nextion Editor Nextion Display 项目 .

FJE6Y04IWE4O3H6.zip


制造工艺

  1. Raspberry Pi 上的简易温度和湿度
  2. 实验室“气象站”
  3. 温湿度数据记录仪
  4. Arduino 温度。使用 3.2 显示的监视器和实时时钟
  5. 玩 Nextion Display
  6. DIY 电压表与 Arduino 和诺基亚 5110 显示器
  7. Sonar 使用 arduino 并在处理 IDE 上显示
  8. 如何使用 DHT11 在 Blynk 上读取温度和湿度
  9. 使用 Nextion Display 构建 Fridgeye 应用程序
  10. 带 GPS 和 TFT 显示屏蔽的 GPS 位置显示
  11. 带有实时时钟的 Arduino OLED 温度显示
  12. Arduboy Clone 与 Arduino Nano 和 I2C OLED 显示器