基於arduino的氣象站

2022-08-05 11:54:12 字數 2369 閱讀 6055

bmp180的簡介:

• 壓力範圍:300~1100hpa(海拔 9000 公尺~-500

公尺)• 電源電壓:

1.8v~3.6v(vdda), 1.62v~3

.6v(vddd)

• 尺寸:

3.6mmx3.8x0.93mm

• 低功耗:5μa,在標準模式

• 高精度:低功耗模式下,解析度為

0.06hpa(0.5

公尺)• 高線性模式下,解析度為

0.03hpa(0.25

公尺)• 含溫度輸出

• i2c 介面

• 溫度補償

• msl

.5ms

• 待機電流:

憑個人觀點,相比於溫濕度感測器dht11,實現的功能可能會更多一些,但不知道,兩者哪個精度會高一點。dht11是數碼訊號輸入,bmp系列是模擬訊號輸入,但是我發現利用公式測算的海拔高度altitude時鐘為負值,不知道這是什麼情況,暫時且用fabs函式套上,轉換為絕對值。

年前tb了乙個bmp180的感測器,想用arduino獲得實現的可能。當然bmp085也可以,我才用的庫就是bmp085的庫,當時網路上找不到bmp180的庫,甚至動用了某工具。還有,最近在國內似乎連不上arduino的庫管理器,於是我從github那獲得了庫檔案,鏈結在此:這個庫比較早,而且bmp085已經停產了,其中計算海拔的方法粗在錯誤)這個是專門用於bmp180的,不妨兩個都試一下,而且不用自己去推算海拔,有自己封裝的函式,直接就可以用了)

注意,利用以上公式求的是絕對海拔,誤差較大;相比之下,可以計算相對海拔,其計算原理下文詳細介紹。

接線方式:

arduino bmp180

----------------------vin vcc

gnd gnd

scl a5

sda a4

**:

1 #include 2 #include 3

sfe_bmp180 pressure;

4double baseline; //

baseline pressure56

void

setup()717

serial.println();

18 serial.println("

bmp180感測器初始化成功");

19}20else

2125 baseline =getpressure();

26 serial.print("

海平面氣壓: ");

27serial.print(baseline);

28 serial.println("百帕"

); 29}

3031

void

loop()

3253 delay(1000

);54}55

56double

getpressure()

5776

else serial.println("

error retrieving pressure measurement\n");

77}78else serial.println("

error starting pressure measurement\n");

79}80else serial.println("

error retrieving temperature measurement\n");

81}82else serial.println("

error starting temperature measurement\n");

83 }

工作原理:

1、首先感測器會進行一次重啟,之後才會正常工作;

2、內部先進行10次大氣壓的測量,然後計算平均值,作為基準壓強(baseline);

3、先測一次溫度,然後再測大氣壓,若大氣壓的值較為穩定則利用內部的封裝函式,直接求得(至於封裝函式是怎麼樣的就不去深究了),若大氣壓不穩定就會一直等待穩定的時候,因此不管怎麼設定delay,時間間隔都會有偏差;

4、輸出列印。

總結:**在example中就有只是將多個示例結合為乙個整體**。

目前只在arduino上進行搭建,未來還會繼續增加溫濕度感測器dht11;由於對軟串列埠、串列埠通訊等方面的不了解,無法在esp8266上實現一旦時機成熟最終會整體移植到esp8266、樹莓派上。

基於nb iot和arduino的氣象站(三)

這一篇介紹nb iot模組的使用。我使用的nb模組為基於移遠bc 95設計的開發板nb101,為穀雨公司產品。選用這款產品是因為這個公司自己有乙個簡單易用的雲透傳平台,可以將nb模組的資料透傳到任意支援socket連線的裝置上。nb101包含了天線射頻 供電 sim卡座 esd防護電路等電路。接上電...

基於nb iot和arduino的氣象站(四)

前幾篇分開記錄了氣象站上的溫濕度 紫外線 pm2.5 gps感測器和nb iot模組的使用。這一篇記錄如何把所有硬體整合到一起。設計了一塊專用pcb電路板,連線所有硬體,避免了複雜的導線連線,電路板上所有元件緊湊排布,盡可能減小了裝置體積 同時,我們設計了防水外殼。前面幾篇已經記錄了單個感測器的示例...

小型綜合氣象站介紹

未來10天 3月9 18日 江淮南部 江漢南部 江南大部 華南北部 貴州等地累計降水量有30 60公釐,其中江南西部 華南北部及貴州東部等地的部分地區有70 90公釐,局地超過100公釐 新疆北部 西北地區東部 華北大部 東北地區 黃淮等地累計降水量有2 6公釐,部分地區10 20公釐 上述大部分地...