第1步:構建氣象站的部件
要創建氣象站,我首先需要收集以下項目:
材料
NodeMCU ESP8622電路板
DHT22溫度/濕度模塊
小型穿孔板
5伏太陽能電池
黃色LED
1安培太陽能充電器控制器
三節AA 3.7伏鋰離子充電電池
三節AA電池座
0.9-5伏至5伏升壓增壓器模塊
各種電線
各種1/2英寸樺木
1英寸鉸鏈和螺絲
白色油漆
木膠
抽屜旋鈕
工具
烙鐵
表鋸
斜切鋸
鉆孔按下:
1英寸鉆頭
1/8英寸鉆頭
5 mm鉆頭
釘槍
熱膠槍
螺絲刀
步驟2:讓氣象站運行
在互聯網上進行了一些搜索之后,我在Losant.com上找到了一個非常好的教程,介紹如何構建這樣的設備ESP8266和DHT22溫度/濕度模塊。 (您可以在e-Bay上花幾美元買一臺DHT22)
經過一番研究,我決定使用NodeMCU ESP8266板
一旦我將所有各個部分聚集在一起,我就按照教程中有關如何將NodeMCU連接到DHT22的說明進行操作。然后我插入提供的程序代碼,將我的NodeMCU連接到電源并觀察它的生命。
在我成功的鼓舞下,我想對Losant提供的程序進行一些小改動:
我想添加一點心跳LED讓我知道電路板正在工作。我還想將數據發送速率降低到10秒(原始程序設置為2秒),以便在我想用電池運行電路板時節省電量。我偶爾會發現NodeMCU板會在幾個小時后“凍結”,因為我發現WiFi連接每隔一段時間就會掉線,所以我希望電路板每小時左右重新啟動一次作為“刷新”機制。采用Losant開發的原始代碼,我將其修改為:
/**
* Example for sending temperature and humidity
* to the cloud using the DHT22 and ESP8266
*
* Copyright (c) 2016 Losant IoT. All rights reserved.
* Modifications by Small Workshop Chronicles
* https://www.losant.com
*/ #include “DHT.h”
#include
#include
#include
#include #define DHTPIN 4 // what digital pin the DHT22 is conected to
#define DHTTYPE DHT22 // There are multiple kinds of DHT sensors DHT dht(DHTPIN, DHTTYPE); // WiFi credentials.
const char* WIFI_SSID = “”;
const char* WIFI_PASS = “”; // Losant credentials.
const char* LOSANT_DEVICE_ID = “”;
const char* LOSANT_ACCESS_KEY = “”;
const char* LOSANT_ACCESS_SECRET = “”; WiFiClientSecure wifiClient; 《立方厘米= 1》 《立方厘米= 1》 《立方厘米= 1》 LosantDevice device(LOSANT_DEVICE_ID); void connect() { // Connect to Wifi.
Serial.println();
Serial.println();
Serial.print(“Connecting to ”);
Serial.println(WIFI_SSID); // WiFi fix: https://github.com/esp8266/Arduino/issues/2186
WiFi.persistent(false);
WiFi.mode(WIFI_OFF);
WiFi.mode(WIFI_STA);
WiFi.begin(WIFI_SSID, WIFI_PASS);
此代碼需要注意的關鍵事項:
我添加了一個名為timeTotal在每個循環周期中遞增1。當計數達到30000時,系統重新啟動。
每次通過digitalWrite命令通過WiFi發送數據時,LED都會閃爍。
我更改了循環中的timeSinceLastRead值檢查以10000毫秒發送數據,而默認值為2000毫秒(或10秒對2秒)
一旦我得到了編譯并加載到我的NodeMCU的代碼,然后我將一個白色LED連接到電路板的D1端口,并將所有東西連接到電源。
每10秒鐘看一次LED閃爍是一個非常好的跡象。
現在電路板還活著,我需要它與互聯網交談。 Losant提供的主要服務之一是來自物聯網設備的云托管數據。它們提供了一系列非常容易設置的儀表板小部件,您可以將它們與您的設備一起使用。
回顧他們的教程我設置了一個Losant帳戶,設置了設備ID和密鑰(我有插入我的程序代碼并重新編譯回NodeMCU)并在我發送的溫度數據上創建了一些儀表板小部件。
好的一點是,嵌入這些儀表板小部件也很容易進入任何網站。
哦,順便問一下,有人對我門外的溫度感到好奇嗎?
然后,我建立了我的第一個物聯網設備。
目前只有幾個電子鉆頭坐在面包板上,依靠外部電源,但我的最終目標是將它放在一個更合適的家中,以便我的新創造更適合生活在元素之外,沒有任何地方可以插入果汁。
第3步:采取網格的氣象站
雖然我很開心事情結果如何,為了給電臺加電,我仍然需要將它連接到USB電源。由于我想讓氣象站位于室外,我需要找到一種方法來保持其通電,而無需將其插入墻上插座。
由于NodeMCU只需要5伏特運行,它確實使它成為電池耗盡的理想選擇。如果它可以用電池運行,那么這也意味著電池本身可以用太陽能電池充電。
考慮到這一點,我去了我的電子樂高盒子并拿出以下物品:
5伏太陽能電池
1安培太陽能充電器控制器
三節AA 3.7伏鋰離子充電電池
三節AA電池座
0.9-5伏至5伏升壓升壓模塊
各種電線
通過這些部件,我可以很容易地組裝一個可以通過太陽能電池為3.7伏鋰電池充電的電路。當電池正在充電時,太陽能電池也為NodeMCU供電。當太陽沒有出來時,電池通過5伏轉換器模塊為NodeMCU供電。
我開始將電線連接到太陽能電池的負極和正極端子,然后焊接另一端的太陽能電池。連接到太陽能充電器控制器的輸入端子。
幸運的是,輸入連接標記在充電器的電路板上。
一旦太陽能電池連接到控制器,我就連接了將電池座連接到控制器板上的電池端子。
雖然我懷疑一個3.7伏的電池可能已經足夠了,但我決定將三個電池座并聯在一起,以便擁有盡可能多的存儲容量可用于NodeMCU - 如果有任何延長的時間段,沒有充足的陽光。此外,如果其中一個電池發生故障,這也會給系統增加一些冗余。
我事先已經確認太陽能充電器非常樂意為3節電池充電。在我將所有東西永久連接在一起之前。
在連接電池和太陽能電池的情況下,最后一步是將5伏轉換器連接到充電控制器。再次通過將電線連接到轉換器的負極和正極端子,然后將導線的另一端焊接到充電器控制器的負載輸出端子來完成。
這樣,太陽能電源為了確保NodeMCU的建立。
為了確保在連接NodeMCU之前一切正常,我首先安裝電池并將整個裝置放在陽光下。
如果一切都正確連接,我應該看到控制器上的紅色狀態LED亮起 - 這表明電池正在充電。幾個小時后,LED變為綠色,表示電池已充滿電。
同樣,5伏轉換器也顯示紅色LED,表明它正在工作。
對我來說幸運的是,一切都在第一次嘗試時亮起來了!
成功刷新,然后插入NodeMCU并讓它開始記錄外面的天氣 - 安全在知道該設備將由于太陽而持續供電。
但是,一旦太陽下山,電池只持續了大約6個小時,第二天我就無法讓它們充足電以保持NodeMCU的運轉。
經過一些額外的研究我發現NodeMCU在運行時有點費力,即使它沒有做任何實際的工作。
顯然,這是這些設備的常見問題。但他們確實碰巧擁有所謂的深度睡眠模式,它可以讓你有效地為NodeMCU供電一段時間,讓它醒來做任務再重新入睡。
這種深度睡眠模式是通過組合編程代碼來調用休眠模式和將復位引腳連接到NodeMCU上的D0引腳的硬件配置來實現的。
復位引腳用于發送向D0引腳發出信號以觸發喚醒命令。
這確實造成了一些問題,但是我已經在我的代碼中分配了D0引腳以使我正在使用的LED閃爍表明系統正在運行。為了解決這個問題,我能夠將D4引腳分配為我的LED的閃爍引腳,
然后我刪除了我在程序中的延遲代碼,并在其位置上實現了一個命令來放置NodeMCU每隔30分鐘進入深度睡眠狀態。
基本上,該程序現在將做的是:
登錄Losant網站
發送一陣數據約1分鐘
進入睡眠狀態30分鐘
醒來再做一遍。
回到我的原始程序,我把它更改為此(更改表明LED指向D0并且更多的睡眠調用以“新代碼”的注釋突出顯示):
我也改變了LED連接從D0引腳到NodeMCU上的D4引腳。
然后我將復位引腳連接到D0引腳。
最后,與NodeMCU的連接看起來像上圖所示的電路圖。
一次我做了必要的布線更改并將新代碼上傳到NodeMCU,我將NodeMCU插回太陽能充電器電路。
事實證明這更成功。
在實施睡眠模式的情況下,NodeMCU每小時僅真正開啟2分鐘,這使得太陽能充電器有足夠的時間在睡眠周期內為電池充電,并最大限度地減少了夜間的電力消耗,因此NodeMCU是
現在我已經整理了我的氣象站的電子設備了,現在我需要為我的氣象站找出一個合適的外殼,這樣它才能在這些元素中存活下來。
步驟4:為物聯網氣象站構建史蒂文森屏幕
現在,我已經制定了電子解決方案,下一步就是安置一切在一個耐候的外殼仍然允許車站進入外面的空氣,以確保準確的讀數。
基本上我需要建造的是史蒂文森屏幕。
引用維基百科的史蒂文森屏幕是:
“。..。..史蒂文森屏幕或儀器避難所是保護氣象儀器免受降水影響的避難所或外殼來自外部源的直接熱輻射,同時仍然允許空氣在它們周圍自由流通。[1]它構成標準氣象站的一部分。史蒂文森屏幕保存儀器,可能包括溫度計(普通,最大/最小),濕度計,干濕度計,露點,氣壓計和溫度計。史蒂文森屏幕也可稱為棉花區域避難所,儀器避難所,溫度計避難所,熱屏幕或溫度計屏幕。其目的是提供一個標準化的環境,其中測量溫度,濕度,露點和大氣壓。..。..“
簡而言之,它是一個盒子,里面有孔或槽,可以讓空氣進來,但防雨。
我正在研究史蒂文森如何篩選我發現這些屏幕通常是簡單的盒子,有雙百葉窗邊。我的屏幕計劃是盡可能簡單地構建它,同時保持對元素的必要保護。
最后,我碰巧在Weather for Schools網站上找到了一個簡單的天氣盒的計劃。
在查看說明之后,我意識到,通過一些小的修改,這對我想做的事情很有效。
為了開始構建我首先剪出了基本的形狀通過我在上面的切割圖中使用我已經鋪設的1/2英寸廢棄樺木來確定切割出的碎片。
當我切出側面碎片時,我還切了一個一端是15度角。
一旦屏幕的部分被切掉,我就拿起我的卷尺,并在兩側和門片中間每2英寸標記一個點。
然后我在我標記的每個位置鉆了一個1英寸的孔,
這些孔將充當通風孔,以便讓空氣流到氣象站傳感器。
接下來,我將史蒂文森屏幕的兩側貼在后面,用一些釘子和木頭膠釘。
然后我在背部的頂部鉆了一個1/8英寸的孔來做作為懸掛屏幕的安裝點,當它準備安裝時。
隨著側面和背面的連接,我將史蒂文森屏幕的底部連接到側面和背面,但首先我需要鉆一個小的底部中心有5mm的孔。
這個洞的原因是給我一些方法來直觀地指示氣象站何時傳輸數據。您可能還記得,我編程NodeMCU在發送數據時閃爍LED,
我的計劃是將LED安裝到史蒂文森屏幕的底部,以便我可以直觀地判斷傳輸何時發生。
我在底部中心鉆了一個洞,在底部角落之間標記了兩條對角線,然后鉆出了兩條線在中間相交的洞。
鉆完孔后,底部用膠水和釘子釘固定在屏幕上。
最后,我把史蒂文森屏幕的頂部與我用的方式完全相同。在底部,我需要首先在頂部中心鉆一個洞,以便讓太陽能電池的電線通過。
鉆孔后,頂部連接到兩側,史蒂文森屏幕后面帶著一些膠水和布拉德釘子。
現在屏幕的主體已經構建完畢,我花了時間給屏幕一個白漆的外套。建議使用白色,這樣太陽光線就可以從史蒂文森屏幕上反射出來而不會直接影響到盒子的內部溫度。
我關注的下一件事就是門。我希望能夠打開門,以便我可以輕松檢查氣象站的狀況或進行任何維護,如更換電池。
為了使門易于打開,我決定安裝一個小木抽屜拉,我碰巧坐在我的垃圾箱里。
為了安裝門拉,我在門頂中央標記了一個點并鉆了1個/那個位置有8英寸的孔。
然后我把門拉進了鉆孔。
然后我用一些螺絲將鉸鏈安裝在史蒂文森屏幕的底部安裝了門。
一旦鉸鏈的一半連接到底部,我就連接了另一半鉸鏈到門的底部邊緣。
一旦我安裝了鉸鏈,我就對門進行了測試,以確保我可以很容易地打開和關閉門。
那個,史蒂文森的畫面基本完成。
第五步:全部放在一起
該過程的最后一步是將氣象站的電子設備安裝到Stevenson屏幕本身。
首先我開始通過收集我在建造太陽能電池時使用的所有各種電子樂高氣象站的電路。
我開始安裝時首先將電線連接到太陽能電池板的正極和負極端子。
一旦焊料冷卻后,我就在焊點上涂上少量熱膠,以便為焊點提供一些天氣保護。
然后我將一些熱膠涂在史蒂文森屏幕的頂部,將連接到太陽能電池板的電線穿過屏幕頂部,并將太陽能電池板連接到屏幕頂部。
安裝太陽能電池板后,下一步是連接太陽能充電器控制器板。正如我前面提到的,連接控制器板只需將正極和負極導線從太陽能電池接線到控制器上的輸入端子,將電池座焊接到電池端子,最后將5伏轉換器焊接到輸出端控制器的終端。
隨著電子設備全部接線,然后將它們安裝到史蒂文森屏幕中,方法是用熱膠將它們固定在屏幕背面。
當我安裝組件時,我確保在Stevenson屏幕的底部留出足夠的空間,以便安裝NodeMCU和傳感器。
在安裝NodeMCU之前,我首先將LED安裝到屏幕底部,并用一些熱膠將其固定到位。
最后,我將一些熱膠涂在NodeMCU和傳感器模塊的背面,并將其安裝到Stevenson屏幕的背面。
我將LED焊接到NodeMCU板,將NodeMCU插入5伏轉換器并安裝鋰電池。
運氣好的話,氣象站應該正常運轉。
在包裝之前,我在所有暴露的電子表面上涂上一層熱膠涂層,以起到防風雨的作用。
隨之而來的 - 氣象站已經安裝完畢,史蒂文森屏幕已準備就緒。
為了安裝史蒂文森屏幕,我選擇了一個可以獲得相當大的空氣流動的地方,同時在白天提供足夠的直射陽光以保持電池充電。
到目前為止,氣象站工作得很好,并且自從我在大約6個月前安裝它以來一直保持通電狀態。
最后,整個車站花了我大約15美元建造 - 考慮從商店購買類似氣象站和無線互聯網連接的成本,這是非常便宜的,我最終學習關于IOT設備如何工作的一點點!
-
太陽能
+關注
關注
37文章
3530瀏覽量
116132 -
氣象站
+關注
關注
1文章
775瀏覽量
16220 -
NODEMCU
+關注
關注
13文章
289瀏覽量
22439
發布評論請先 登錄

解密交通氣象站:數據驅動的交通氣象服務革新

智慧校園:氣象站引領氣象知識科普
自動氣象站的工作原理與應用
綠色校園,智慧氣象:走進我們的氣象站
自動超聲波氣象站:智慧氣象的重要組成部分
多功能便攜式氣象站,監測氣象變化
校園內環境監測氣象站
交通氣象站:實時監測道路氣象環境

車載小型氣象站:實時、準確地監測氣象
區域生態自動氣象站:數據監測與傳輸

基于啟揚IMX8MPlus核心板的自動氣象站應用解決方案

評論