電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>艾達(dá)動(dòng)力氣象站

艾達(dá)動(dòng)力氣象站

2022-12-15 | zip | 0.41 MB | 次下載 | 免費(fèi)

資料介紹

描述

幾個(gè)世紀(jì)以來,感知風(fēng)和天氣對人類來說一直很重要。雅典人在公元前一世紀(jì)建造了八面風(fēng)之塔,以紀(jì)念八位風(fēng)神。風(fēng)之塔至今仍矗立在雅典古老的集市或市場中。

多年來,許多重大的天氣事件影響了人類。我們知道這些,因?yàn)樗鼈兊挠绊懸殉蔀闅v史的一部分。由于歷史的大部分內(nèi)容是對一系列戰(zhàn)爭和戰(zhàn)斗的回憶,有趣的是,早期著名的關(guān)于天氣重要性的提法來自中國哲學(xué)家孫祖,他說:“知己知彼, 勝利是有保證的。知地而知天,方能全勝?!?/font>

在很久以后的歷史中,我們知道拿破侖在 1812 年入侵俄羅斯受到阻礙,因?yàn)樵摷竟?jié)的降雪和寒冷天氣比他和他的將軍們計(jì)劃的要早。這與俄羅斯民兵的襲擊相結(jié)合,幫助擊敗了法國人,法國人帶著 500,00 名士兵入侵,只剩下 20,000 名幸存者。一百三十年后,當(dāng)希特勒對蘇聯(lián)的入侵再次被嚴(yán)寒的冬季天氣部分挫敗時(shí),這種情況再次發(fā)生。

在 20 世紀(jì),惡劣的天氣條件帶來了大規(guī)模的人口遷移,包括 1930 年代美國的沙塵暴、整個(gè)世紀(jì)亞洲的多次干旱以及非洲薩赫勒地區(qū)的三個(gè)重要干旱時(shí)期。造成許多人死亡和影響的個(gè)別事件包括 1952 年倫敦的大煙霧事件,該事件在 12 月的五天內(nèi)造成 4,000 人死亡,美國東海岸的許多颶風(fēng)影響,以及幾場值得注意的暴風(fēng)雪。人對環(huán)境的影響也可以從天氣中看到,在最近的事件中,當(dāng)烏克蘭切爾諾貝利的反應(yīng)堆事故釋放出放射性粒子時(shí),被蘇聯(lián)以外的傳感器檢測到,并使用復(fù)雜的天氣傳感器和氣象模型追溯到切爾諾貝利。以類似的方式,當(dāng)?shù)貧庀髢x器被用來幫助估計(jì) 1991 年海灣戰(zhàn)爭期間油井大火產(chǎn)生的煙霧和煤煙的影響。

今天,風(fēng)和其他天氣變量同樣受到關(guān)注,并且可能對我們現(xiàn)代高科技生活方式產(chǎn)生更大的影響。天氣影響廣泛的人類活動(dòng),包括農(nóng)業(yè)、交通和休閑時(shí)間。通常,這些影響涉及氣體和微粒在大氣中的移動(dòng)。現(xiàn)代天氣監(jiān)測系統(tǒng)和網(wǎng)絡(luò)旨在以具有成本效益的方式進(jìn)行必要的測量,以跟蹤這些運(yùn)動(dòng)。這要求將監(jiān)測系統(tǒng)的總生命周期成本降至最低,而做到這一點(diǎn)的一種方法是盡量減少或消除對天氣監(jiān)測系統(tǒng)的維護(hù)。使用固態(tài)系統(tǒng)來測量天氣,包括風(fēng)速和風(fēng)向,對于最大限度地減少設(shè)備維修和成本至關(guān)重要。傳統(tǒng)的天氣監(jiān)測系統(tǒng)由單獨(dú)的傳感器組成,用于測量一個(gè)氣象變量,每個(gè)傳感器都連接到數(shù)據(jù)收集設(shè)備或記錄器。現(xiàn)代技術(shù)允許將多個(gè)傳感器組合成一個(gè)集成氣象站,該氣象站可以永久位于一個(gè)站點(diǎn)或運(yùn)輸?shù)叫枰植刻鞖獾恼军c(diǎn)。

因此,利用 Ada 的所有強(qiáng)大功能以及一系列 BM1383AGLV 壓力-溫度傳感器,我們將構(gòu)建一個(gè)具有各種應(yīng)用的本地化氣象站。

硬件

1. 樹莓派 3B+

眾所周知,樹莓派是一系列小型單板機(jī),樹莓派 3B+ 是該家族的最新版本之一。我選擇它是因?yàn)樗僮骺焖偾乙子谔幚?,而?Ada 內(nèi)置了對 Raspberry Pi 的支持。

pYYBAGOX_ZuAUEtjAAJZcgto0JQ043.jpg
?

但 RPI 的主要問題之一是它無法從其 GPIO 讀取模擬輸入。為了克服這個(gè)問題,我選擇了一個(gè)支持 I2C 的傳感器,這樣我就可以輕松地訪問來自傳感器的數(shù)據(jù)。

2.BM1383AGLV

BM1383AGLV 是一種壓阻式壓力傳感器。它對芯片內(nèi)部的MEMS進(jìn)行溫度補(bǔ)償,因此很容易獲得壓力信息。它由溫度和壓力傳感器組成,并提供 I2C 接口。它可以讀取從 300hPa 到 1100hPa 的壓力和從 -40°C 到 +85°C 的溫度。

pYYBAGOX_Z-ARAnTAADpQ_O3-RE914.png
?

硬件設(shè)置

硬件連接示意圖如下。SDA 引腳連接到 GPIO2,將 SCL 引腳連接到 GPIO3。DRDY 引腳是可選的。如果您在代碼中使用它,請將其拉??至 1。

poYBAGOX_a2AL1WQAAFrUPPq1NU397.png
架構(gòu)
?

?

poYBAGOX_bGAPSGnAAIkO5dxm7A631.jpg
?

?

pYYBAGOX_b-ASwm_AAGA6VFdbkY459.jpg
?

軟件

1. GNAT

GNAT 是 Ada 編程語言的免費(fèi)軟件編譯器,它是 GNU 編譯器集合的一部分。它支持所有版本的語言,即 Ada 2012、Ada 2005、Ada 95 和 Ada 83。

要在 Raspberry Pi 中安裝 GNAT 編譯器,請?jiān)诮K端中輸入以下命令。

sudo apt-get install gnat

2. ADA 代碼

選擇傳感器后,我繼續(xù)搜索任何提供 I2C 支持的 Ada 庫,但我很失望,因?yàn)槲艺也坏健?/font>所以我決定從頭開始為 BM1383AGLV 構(gòu)建一個(gè)庫。

我使用了一些 bash 命令與 I2C 模塊進(jìn)行通信,并且能夠從模塊中讀取數(shù)據(jù)。

i2c檢測

我使用此命令搜索連接的 I2C 模塊

pYYBAGOX_deAWa4aAAGfrO4kh8s841.png
i2c檢測
?

i2cget

我使用這個(gè)命令來讀取存儲(chǔ)在傳感器中的數(shù)據(jù)。

poYBAGOX_d6AKzCQAAGlWnbdeFc000.png
i2cget
?

所以我開始尋找一個(gè)可以執(zhí)行 bash 命令的 Ada 模塊,我找到了Interfaces.C模塊。

使用這段代碼,我能夠在終端中執(zhí)行命令

function System (Cmd : String) return Integer is
function C_System (S : Interfaces.C.char_array) return Integer;
pragma Import (C, C_System, "system");
begin
return C_System (Interfaces.C.To_C (Cmd));
end System;

然后我開始將命令合并到 Ada 代碼中。i2c.adb 文件讀取為

with Interfaces.C;
with Ada.Strings.Fixed;
with GNAT.Expect;
package body i2c is
R,V1: Integer;
W1: String:="i2cset -y -a 1 0x5d 0x12 0x01";
W2: String:="i2cset -y -a 1 0x5d 0x13 0x01";
W3: String:="i2cset -y -a 1 0x5d 0x14 0x9";
R1: String:="i2cget -y -a 1 0x5d 0x19";
R2: String:="i2cget -y -a 1 0x5d 0x1A";
R3: String:="i2cget -y -a 1 0x5d 0x1B";
R4: String:="i2cget -y -a 1 0x5d 0x1C";
procedure write is
function System (Cmd : String) return Integer is
function C_System (S : Interfaces.C.char_array) return Integer;
pragma Import (C, C_System, "system");
begin
return C_System (Interfaces.C.To_C (Cmd));
end System;
pragma Inline (System);
begin
R := System (W1);
DELAY 0.5;
R := System (W2);
R := System (W3);
end write;
procedure read  is
function System (Cmd : String) return Integer is
function C_System (S : Interfaces.C.char_array) return Integer;
pragma Import (C, C_System, "system");
begin
return C_System (Interfaces.C.To_C (Cmd));
end System;
pragma Inline (System);
Com: String:="sudo chmod +x i2c.sh && ./i2c.sh";
begin
V1 := System (Com);
end read;
end i2c;

在職的

現(xiàn)在是檢查工作的時(shí)候了。下載代碼并執(zhí)行以下命令以查看它們是否正常工作。

gprbuild -d aws.gpr -XPrivate_Warnings=FALSE -XModule=MOD_RPI aws.adb

然后你可以在 bin 文件夾中找到一個(gè)可執(zhí)行文件。使用以下命令執(zhí)行它

sudo ./aws

它會(huì)給你這樣的結(jié)果

pYYBAGOX_eWAEN5sAAHKNLf2Fww518.png
?

未來會(huì)怎樣?

我們現(xiàn)在開發(fā)了一個(gè)本地化的氣象站,能夠不時(shí)監(jiān)測天氣變量。將這些變量結(jié)合到現(xiàn)有的機(jī)器學(xué)習(xí)模型中,我們將能夠更準(zhǔn)確地預(yù)測未來幾天的天氣。

有關(guān)更多文檔和詳細(xì)信息,請?jiān)L問GitHub 存儲(chǔ)庫


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)