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

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

3天内不再提示

使用Arduino UNO的气象站的制作

454398 来源:wv 2019-10-25 10:17 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:项目列表

1。屏幕:OLED,1.3英寸显示屏SH1106,I2C白色– PID:18283

2.传感器:数字湿度和温度传感器DHT22 ---- PID:7375

3.连接:跳线---- PID:10316或10318或10312(取决于长度),也可以使用22 AWG实心线---- PID:22490

面包板---- PID:10686或10698或103142(取决于大小)

4。电源:此电缆只能与计算机USB端口连接,该电缆还用于IDE和Arduino板之间的数据传输。电缆,A到B,M/M,0.5M(1.5FT)---- PID:29862

或者您可以用它为板子供电:5V 2A AC/DC适配器---- PID:10817。

步骤2:相对介绍

屏幕介绍:1.3英寸OLED显示屏白

1。您可以找到显示基本设置和说明的文档:http://www.ett.co.th/prod2017/OLED%201.3%20I2C%20ENG.pdf

传感器简介:湿度和温度传感器DHT22 1.您可以找到显示说明的文档:https://www.sparkfun.com/datasheets/Sensors/Temperature/DHT22.pdf

步骤3:连接电路

DHT22传感器将串行数据发送到引脚2。因此,从左侧连接第二个引脚,“ SDA”引脚应连接到引脚2。

对于SSH1106显示屏,它使用模拟引脚进行传输。屏幕的电路将是Arduino的“ A5”的“ SCL”引脚,而Arduino的“ A4”的“ SDA”引脚。当像素位置数据连续传输时,程序中的显示功能每次在每次从传感器读取数据时都会触发一次命令。

传感器和屏幕均可使用3.3V通电Arduino作为直流电源输入。要供电,我们需要将两个“ VCC”引脚都连接到Arduino的“ 3.3V”。并且“ GND”引脚可以简单地连接到Arduino板上的“ GND”引脚。

使用USB A到B电缆,将Arudino连接到计算机。

步骤4:为Olikraus的SSH1106屏幕准备编译

“ u8glib”。

Adafruit的DHT22传感器准备“ DHT传感器库”。您应该下载两个库:DHT22传感器库:https://github.com/adafruit/DHT-sensor-library

U8glib:https://github.com/adafruit/DHT-sensor-library

并在IDE中使用“管理库”将其解压缩。在线管理库的说明:https://github.com/adafruit/DHT-sensor-library

第5步:DHT22传感器串行端口的测试代码

DHT22传感器串行端口的测试代码(位于DHT22库中》》示例):

(您可以跳过这一部分。)

这只是为了测试DHT22传感器是否正常读取数据。

#include

#include

#include

#include

#include

#define DHTPIN 2

#define DHTTYPE DHT22

DHT dht(DHTPIN,DHTTYPE);

void setup(){

Serial.begin(9600);

Serial.println(F(“ DHT22测试!”));

dht.begin();

}

无效循环(){

///在两次测量之间等待几秒钟。

delay(2000);

///读取温度或湿度大约需要250毫秒!

//传感器的读数也可能长达2秒“过时”(它的传感器非常慢)

float h = dht.readHumidity();

//以摄氏度(默认)读取温度

float t = dht.readTemperature();

//以华氏温度(isFahrenheit = true)读取温度

float f = dht.readTemperature(true);

//检查是否有任何读取失败并且提早退出(重试)。

如果(isnan(h)|| isnan(t)|| isnan(f)){

Serial.println(F( “无法从DHT传感器读取!”));

return;

}

//计算华氏热指数(默认值)

float hif = dht.computeHeatIndex(f,h);

//以摄氏度计算热量指数(isFahreheit = false)

float hic = dht.computeHeatIndex(t,h,false);

Serial.print (F(“湿度:”));

Serial.print(H);

Serial.print(F(“%Temperature:”));;

Serial.print(T);

Serial.print(F(“°C”));

Serial.print(F);

Serial.print(F(“°F Heat index:”));

Serial.print(HIC);

Serial.print(F(“°C”));

Serial.print(HIF);

Serial.println(F( “°F”));

}

//编译程序后,单击工具》》串行监视器以检查数据。

//测试程序结束。

步骤6:项目代码

#include

#include

#include

#include

#include

#define DHTPIN 2

#define DHTTYPE DHT22

#include“ U8glib。 h“

U8GLIB_SH1106_128X64 u8g(U8G_I2C_OPT_NONE);

DHT传感器(DHTPIN,DHTTYPE);

void draw(void){

u8g.setFont(u8g_font_unifont);

float h = sensor.readHumidity();

//以摄氏度(默认)读取温度

浮点t = sensor.readTemperature();

//检查是否有任何读取失败并提早退出(重试)。

if(isnan(h)|| isnan(t)){

u8g.print(“ Error。”);

for(;;) ;

return;

}

u8g.setPrintPos(4,10);

u8g.print( “温度(C):”);

u8g.setPrintPos(4,25);

u8g.print(t);

u8g.setPrintPos(4,40);

u8g.print( “湿度(%):”);

u8g.setPrintPos(4,55);

u8g.print(h);

}

无效设置(void){

u8g.setRot180();

Serial.begin(9600);

sensor.begin();

}

无效循环(void){

//图片循环

u8g.firstPage();

do {

draw();

} while(u8g.nextPage());

//经过一段时间的延迟后重新生成图片(2000年);

}

//主程序结束。

步骤7:说明

然后,初始化Arduino板的引脚电路。因为传感器库需要数据来声明对象。

而且,您可以使用称为“ Serial.print()”的功能通过数字引脚2监视输出数据来测试传感器的数据。由于数据传输的频率大约每2秒读取一次(0.5 Hz),因此在Arduino IDE中进行编程时,我们需要将循环函数内部的延迟设置为大于2秒。因此,循环函数内部有一个“ delay(2000)”。这样可以确保数据经常刷新。在“绘制”功能中,从串行数据端口获取数据,然后使用“ readHumidity”和“ readTemperature”功能将它们放入浮点数。

使用打印功能打印出湿度和温度在“ u8glib”文件中。您可以通过更改“ setPrintPos”功能中的数字来调整位置。打印功能可以直接显示文本和数字。

要设置硬件,请给串行端口10秒钟的延迟。然后调用传感器的begin函数。根据我的电路,我的屏幕是颠倒的。因此,我还包括了“ setRot180”功能来旋转显示。

Arduino开发板的循环功能是主要功能。每次刷新传感器时,它都会不断调用draw函数以显示文本和数据。

屏幕如下所示:

您可以从计算机和电源上断开Arduino UNO的连接。它使用5V DC电源适配器连接到其2.1mm电源插孔。它将程序存储在其驱动器中,并在通电后可以再次连续运行该程序。

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

    关注

    190

    文章

    6515

    浏览量

    195991
  • 气象站
    +关注

    关注

    1

    文章

    841

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

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

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

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

    光伏自动气象站技术架构与发电效率保障应用

    光伏自动气象站技术架构与发电效率保障应用 柏峰【BF-GFQX】光伏自动气象站以“精准辐照感知、发电效率评估、运维智能辅助”为核心技术特征,融合光伏专用气象监测与发电性能分析功能,成为光伏电站高效运营的关键技术装备。
    的头像 发表于 10-15 17:29 1603次阅读
    光伏自动<b class='flag-5'>气象站</b>技术架构与发电效率保障应用

    景区负氧离子气象站

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

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

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

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

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

    智慧农业气象站技术方案

    智慧农业气象站技术方案 柏峰【BF-QX】随着农业现代化进程的加速,传统农业正逐步向智慧农业转型。气象条件对农业生产具有至关重要的影响,精准的气象监测与预测能够帮助农户合理安排农事活动,有效降低
    的头像 发表于 08-21 09:05 545次阅读
    智慧农业<b class='flag-5'>气象站</b>技术方案

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

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

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

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

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

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

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

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

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

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

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

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