在本文中,我们将探索什么是气压计,以及如何将气压BMP180传感器与Arduino接口。我们还将探讨它的一些重要规范,最后我们将学习如何使用气压读数预测天气。
气压计是什么呢?
气压计是测量大气压力的仪器。大气压力是地球大气所施加的力的大小。地球的大气压是随时变化的,大气压的变化可以预测当地短期的天气状况。
在现代,我们可以通过智能手机,电视,广播等在我们的指尖得到天气预报。但在早期,17世纪左右,天气预报依赖于使用汞等有毒化学元素制作的气压计。
水银气压表是科学家和农民的方便工具。它预测天气相当准确,它帮助科学家对大气进行科学实验,农民知道什么时候在正确的时间种植作物。
后来发明了机械式气压计,它不使用任何液体。幸运的是,我们生活在一个技术先进的时代,气压传感器价格低廉,尺寸也不比我们的拇指指甲大。
气压传感器图示:
现在,你知道气压计是什么以及它的用途了。
规格:
•可测量压力范围从300hPa到1100hPa (1hPa=100Pa),“Pa”表示帕斯卡,“hPa”表示百帕斯卡。
•工作温度从-40到+85摄氏度。
•测量温度范围为0 ~ 65摄氏度。
•典型工作电压3.3V。
•功耗5微安。
现在,让我们来研究电路图。
它是如何工作的
使用Arduino实现的气压BMP180传感器电路其实非常简单,因为它使用了i2C总线,这是两线通信。该芯片采用了3.3V Arduino板载稳压电源。它可以测量当地的大气压力和环境温度。
作者的原型:
该程序还可以计算IDE系列监测仪所观测到的其他参数,如海平面气压和海拔高度等。
在深入编程部分之前,请从以下链接下载库文件:github.com/adafruit/Adafruit_BMP085_Unified.git并将其添加到Arduino库文件夹中。
程序代码:
//----------- 项目由R.Girish ----------------//
# include < Wire.h >
# include < Adafruit_BMP085.h >
Adafruit_BMP085 bmp;
无效的设置()
{
Serial.begin (9600);
如果(! bmp.begin ())
{
系列。println(“找不到有效的BMP085传感器,检查接线!”);
而(1){}
}
}
无效循环()
{
系列。打印(“温度= ");
并同时bmp.readTemperature ());
系列。println(“* C”);
系列。打印(“压力= ");
并同时bmp.readPressure ());
系列。println(“逾越节”);
系列。打印("高度= ");
并同时bmp.readAltitude ());
系列。println(“米”);
系列。print("海平面压力(计算)= ");
并同时bmp.readSealevelPressure ());
系列。println(“逾越节”);
系列。print("真实海拔= ");
并同时bmp.readAltitude (101500));
系列。println(“米”);
以();
延迟(10000);
}
//----------- 项目由R.Girish ----------------//
库文件的链接最初是为BMP085创建的,但它与BMP180兼容。
注意:在编译程序时,IDE会给出一个警告,请忽略它,代码和库工作正常。
如何预测天气?
在电视和广播中播放的天气预报是根据海平面而不是当地的大气压来测量的,这是因为海拔高度会影响一个位置到另一个位置的读数,而在海平面上测量会给出所有气压计的标准值。因此,我们的重点是在海平面的压力水平(计算)串行监测。
大气压力一直在变化,没有一个恒定的值。但是,人们可以通过监测一段时间的读数来确定天气。
看一下读数并记录下来,等半个小时再记录一次,如果读数上升,这意味着天气将是晴天。如果读数下降,我们可以预测一场暴风雨或雨。
所有的气压计都是如此。初始读数和当前读数之间的差异越大,天气状况发生变化的可能性就越大。
您如何校准当前的压力,以确保您的高度是正确的。
这个的性能规格是多少?我能把它用在气象气球上吗?