特點:
1。連接到Wi-Fi,并將數據上傳到網絡(Blynk App和Thingspeak)
2。監測天氣參數,如溫度,壓力,濕度,海拔和紫外線水平等。
4。遠程電池狀態監控
5。使用功能強大的鋰離子電池(3400 mAh)和太陽能電池板(1W)
6。獨立于外部電源
7.可以安裝在遠程站點或地理位置具有挑戰性的環境中
8。由太陽能供電,它是一種環保設備。
第1步:所需的組件和工具
更新05.08.2019
現在您可以從 PCBway 購買單個套件中的PCB和所有組件。
注意:電池和3D打印的外殼不是包含在試劑盒中
使用的組件:
1。 Wemos D1 Mini Pro(Banggood/亞馬遜)
2。 TP 4056充電板(Banggood/亞馬遜)
3。 BME 280傳感器(亞馬遜/Bangood)
4。 BMP280(Banggood/亞馬遜)
5。 DS18B20傳感器(Banggood/亞馬遜)
6。 Switch(Banggood/Amazon)
7。螺釘端子(Banggood)
8。 PCB支架(Banggood/亞馬遜)
9。 18650電池(Aliexpress)
10.18650電池座(Banggood/亞馬遜)
11。太陽能電池板(Banggood)
12。 Straight Headers Pin(Banggood/亞馬遜)
13。 22 AWG電線(Banggood/亞馬遜)
14。氣象站V2.0 PCB(PCBWay)
15。超級膠水(亞馬遜)
16。 3D打印燈絲-PLA(GearBest)
使用的工具:
1。 3D打印機(Creality CR-10)
2。烙鐵(亞馬遜)
3。膠槍(亞馬遜)
4。剝線鉗(亞馬遜)
5。 Wire Cutter(亞馬遜)
第2步:電源
我的計劃是部署天氣站在一個偏遠的地方(我的農舍)。為了連續運行氣象站,必須有一個連續的電源,否則系統將無法工作。為電路提供連續電源的最佳方法是使用電池。但是幾天之后電池汁就會耗盡,去那里充電是非常困難的。因此,提出了一種太陽能充電電路,用于從太陽獲取自由能量,為電池充電并為Wemos板供電。我使用的是18650鋰離子電池。
電池通過TP4056充電模塊從太陽能電池板充電。 TP4056模塊配有電池保護芯片或不帶保護芯片。我會建議購買一個包含電池保護芯片的模塊。
關于TP4056電池充電器
TP4056模塊非常適合為單節3.7V 1 Ah或更高的LiPo電池充電。基于TP4056充電器IC和DW01電池保護IC,該模塊將提供1000 mA充電電流,然后在充電完成時切斷。此外,當電池電壓降至2.4V以下時,保護IC將切斷負載以保護電池免受欠壓。它還可以防止過壓和反極性連接。
步驟3:通過BMP/E280監測溫度和濕度
在早些時候,使用單獨的模擬儀器測量環境溫度,濕度和氣壓等天氣參數:溫度計,濕度計和氣壓計。但今天市場充斥著廉價高效的數字傳感器,可用于測量各種環境參數。最好的例子是DHT11,DHT 22,BMP180,BMP/E280等傳感器。
在這個項目中,我們將使用BMP280/BME280傳感器。
BMP 280 :
BMP280是一款先進的傳感器,能夠以合理的精度非常精確地測量氣壓和溫度。 BME280是博世的下一代傳感器,是BMP085/BMP180/BMP183的升級產品 - 具有0.25米的低海拔噪音和相同的快速轉換時間。該傳感器的優點是它可以使用I2C或SPI與微控制器進行通信。為了簡單方便接線,我建議購買I2C版本板。
BME280:
新型BME280傳感器,一種溫度,氣壓的環境傳感器和濕度。 BME280是博世的下一代傳感器,是BMP280的升級產品。博世的這款精密傳感器是測量濕度的最佳低成本傳感解決方案,精度為±3%,氣壓為±1 hPa絕對精度,溫度為±1.0°C精度。它可以在I2C和SPI中使用。
注意: BME280可以測量濕度,但BMP280不能。 在市場上,BMP280也可以以BME280的名稱獲得。因此,請確保它是BMP280還是BME280。
步驟4:更多傳感器的附加端口
氣象站V2.0電路板有5個額外端口可連接更多天氣傳感器。可以輕松連接以下附加傳感器:
1。 GY-1145傳感器:用于測量紫外線指數
SI1145是一種帶有校準紫外線感應元件的傳感器,可以計算紫外線指數。它可以通過I2C通信(地址0x60)進行通信。您可以將此傳感器與位于電源開關旁邊的電路板中的I2C端口連接起來。
您可以閱讀本文以了解有關此傳感器的更多信息。
您可以從Banggood購買此傳感器。
2。 HDC1080:用于測量溫度和濕度
HDC1080是一款數字濕度傳感器,帶有集成溫度傳感器,可在極低功率下提供出色的測量精度。它還可以通過I2C通信進行通信。
您可以閱讀本文以了解有關此傳感器的更多信息。
您可以從Banggood購買此傳感器。
3。 DS18B20:用于測量溫度
它可以用最少量的硬件和接線來測量溫度。這些傳感器使用數字協議將精確的溫度讀數直接發送到開發板,無需模數轉換器或其他額外硬件。它使用單線協議與微控制器通信。它可以連接在位于Wemos板右側的板上的端口P2中。
您可以閱讀本文以了解有關此傳感器的更多信息。
步驟5:使用外部天線(3dBi)
Wemos D1 mini Pro板具有內置陶瓷天線,可連接外部天線以改善范圍。在使用外部天線之前,必須將天線信號從內置陶瓷天線重新布線到外部插座。這可以通過旋轉小表面貼裝(0603)零歐姆電阻(有時稱為鏈接)來完成。
您可以看到上面的圖片,我是如何做到的。
您還可以觀看由Alex Eamesto制作的視頻來旋轉零歐姆電阻。然后將天線SMA連接器卡入Wemos Pro迷你天線插槽。
步驟6:監控電池電壓
氣象站由18650 Li運行 - 電池,因此監控其狀態非常重要。輸入到Wemos板的最大電壓約為3.2~3.3V,但充滿電的18650電池電壓為4.2V。因此,要測量此電壓,我們必須使用分壓器網絡降低電壓。
Wemos D1 mini已經有一個內部分壓器,將A0引腳連接到ESP8266芯片的ADC。分壓器由220k(R1)和100k(R2)組成。因此,我們必須使用內置的220k電阻添加外部電阻來讀取電池電壓。通過使用100k電阻,我們可以測量電池的最大電壓,但需要一些余量,選擇220k電阻。它在PCB板上命名為R1,位于電池座的正上方。
要選擇分壓器電阻值,您可以使用此在線計算器。
你也可以閱讀這篇關于電池電壓監測的文章。
第7步:暗示深度睡眠模式
心臟在我們的氣象站使用的Wemos板是ESP8266 SOC,它是一個耗電的芯片。我們的目標是使用18650電池運行設備,但對電源的需求通常會使電池操作變得不切實際。
另一個問題是,隨著設備連續運行,很明顯設備將會體驗升溫,因此測量的溫度將高于環境溫度。
從上面可以看出,我們必須降低ESP8266 WiFi芯片的功耗。為此,我們將使用深度睡眠模式,這是ESP芯片最省電的選擇。它允許ESP8266進入休眠狀態并節省電池電量。您可以定期將其喚醒以進行測量并發布。
組件操作模式-----睡眠模式
1。 ESP8266 170 mA -------- 10 uA
2。 CH340 12 mA --------- 50 uA
3。內置LED 3 mA ----------- 0 uA
4。電壓監控器0.006 mA ----- 6 uA
-------------------------------- ---
總計 185 mA ---- 66 uA
如果睡覺 - 喚醒周期為10分鐘,喚醒時間為30秒,能耗預算如下:
喚醒時間為185 mA,持續0.5分鐘= 92.5 mA分鐘
睡眠時間0.066毫安,9.5分鐘= 0.627毫安 - 分鐘
總共10分鐘= 93.13毫安 - 分鐘
因此平均電流消耗為9.3毫安。
步驟8:選擇太陽能電池板
從上一步可以得出結論,平均電流消耗為9.3 mA
全天運行設備所需的電量= 9.3 mA x 24小時= 223.2 mAh
WeMos中使用的線性穩壓器沒有電流增益,因此任何電流在3.3V使用導致相同的cur租用電壓為3.7V或電池所處的任何電壓。
太陽輻射量根據您所在地球的哪個部分而有所不同。要了解您所在地區的太陽曝曬量,您可以使用Global Solar Atlas。通過考慮最少1小時的全日照,我們將選擇太陽能電池板。
因此,我們的目標是在1小時內產生223.2 mAh。
要為3.7V鋰離子電池充電,電壓為5到6V的太陽能電池板就足夠了。
所需的太陽能電池板額定值= 223.2 mA,電壓約為5至6伏。
太陽能電池板額定值= 223.2mA x 5V = 1.1W
太陽能電池板選擇:1W/5V至6V
在這個項目中,我使用了5V,200mA太陽能電池板(99 x 69 mm)
所以a 1W面板應足以在冬季高緯度地區運行項目。
注意: 如果您的位置接收到充足的陽光,則為0.66我在早期版本中使用的W太陽能電池板也可以工作。
步驟9:PCB設計
在切換到PCB布局后,我使用EasyEDA在線軟件繪制了原理圖。
原理圖中添加的所有組件都應該在那里堆疊在彼此的頂部,準備放置和路由。通過抓住其墊片來拖動組件。然后將其放置在矩形邊界線內。
排列所有組件,使板占用最小空間。電路板尺寸越小,PCB制造成本越低。如果該板上有一些安裝孔,那么將它安裝在一個外殼中將是有用的。
現在你必須路由。路由是整個過程中最有趣的部分。這就像解決一個難題!使用跟蹤工具,我們需要連接所有組件。您可以使用頂層和底層來避免兩個不同軌道之間的重疊并縮短軌道。
您可以使用Silk圖層向電路板添加文本。此外,我們可以插入圖像文件,因此我在我的網站徽標上添加了一個圖像,以便在電路板上打印。最后使用銅區域工具,我們需要創建PCB的接地區域。
現在PCB已準備好進行制造。
您可以從PCBWay 立即注冊PCBWay,即可獲得5美元的優惠券。這意味著您的第一筆訂單是免費的,只需支付運費。
當您下訂單時,我將從PCBWay獲得10%的捐款用于我的工作。你的小幫助可能會鼓勵我將來做更多精彩的工作。感謝您的配合。
第10步:PCB制作
完成PCB設計后,我們只需單擊“Gerber輸出”按鈕,保存項目,我們就可以下載用于制造PCB的Gerber文件。
步驟11:組裝PCB
從PCB制造廠收到電路板后,你必須焊接組件。
對于焊接,你需要一個像樣的焊鐵,焊錫,鉗子。
首先,我切斷直的男性和Wemos Board,TP4056,BMP/E 280以及所有端口的母頭引腳。
以下是有關接頭的詳細信息:
1。 Wemos Board - 2 x 8pins Female
2。 BMP280 - 1 x 6針女性
3。 I2C端口 - 1 x 4pins
4。端口P1 - 1 x 4pins
5。端口P2- 1 x 3pins
6。端口P3- 1 x 4pins
7。端口P4- 1 x 3引腳
最好根據組件的高度焊接組件。首先焊接較小高度的元件。
我已經開始焊接電阻器,開關然后移向更大的元件,如接頭引腳,螺釘端子和電池座。
步驟12:添加模塊和電池
組裝插頭引腳后,切換和螺釘端子,是時候將板插入各自的頭部。 PCB上標有清晰的標題,因此不會產生混淆。
首先,我放置TP4056板并焊接所有焊盤。
然后我添加了Wemos板和BME280傳感器。
最后,我將18650電池插入電池座。
步驟13:安裝支架
添加所有零件后,將支架安裝在4個角落。我使用了M3 Brass Hex Standoffs。
使用支座可為焊接接頭和地線提供足夠的間隙。
步驟14:3D打印機殼
為了給出漂亮的商業產品外觀,我為這個項目設計了一個外殼。我使用Autodesk Fusion 360來設計機箱。
機箱有兩部分:
1。主體
2。蓋蓋
主體基本上設計適合氣象站V2.0 PCB(85mm * 83mm)。
蓋子蓋子用于蓋住主體開口。
我用我的Creality CR-10打印機和1.75毫米綠色PLA燈絲打印零件。我花了大約11個小時打印主體,大約3個小時打印頂蓋。
我的設置是:
打印速度:60毫米/秒
層高:0.2mm(0.3也適用)
填充密度:25%
擠出機溫度:200℃
床溫:60 deg C
從Thingiverse下載STL文件
您還可以查看由3KU_Delta設計的機箱。
從下載其設計的STL文件Thingiverse
步驟15:將PCB置于機柜內
首先,將MF十六進制支架插入機箱的四個安裝插槽中。
然后通過對準角落處的四個螺孔將PCB板固定在支架上。
插入四個支架后,由于小的不對中,我很難修復PCB。所以我想修改安裝支架直接固定3M螺釘而不是六角形支架。
步驟16:安裝組件
安裝PCB后,必須安裝BME280模塊和Wemos板。
然后插入跳線JP2。
將SMA連接器插入機箱中提供的孔中。然后用墊圈擰緊螺母。現在通過與SMA連接器正確對齊來安裝天線。
最后,將18650電池放入電池座內。確保必須以正確的極性插入。極性標記在電池座,PCB和電池上。
步驟17:安裝太陽能電池板
將22 AWG紅線焊接到正極端子,將黑線焊接到太陽能電池板的負極端子。
將兩根電線插入主機殼頂部的孔中。
使用超級膠水固定太陽能電池板并按壓一段時間以便正確粘接。
使用熱膠從內部密封孔。
步驟18:3D打印Stevenson屏幕
我早期的外殼設計是一個不錯的外觀,但它不適合氣象站。保持天氣傳感器的理想外殼是史蒂文森屏幕。一個史蒂文森屏幕是一個天氣傳感器的外殼,可以抵御雨水和來自外部的直接熱輻射,同時仍然允許空氣在它們周圍自由流通。
太陽能氣象站V2的Stevenson屏幕由我的朋友Glen設計。它有一個簡單的壁掛支架和一個2部分蓋子,用于隔離太陽能電池板的熱傳遞。我非常感謝他的工作。
您可以從Thingiverse下載.STL文件
提示: 使用 Lacquer Spray噴涂完全組裝的PCB 保護電路板和元件,但你需要在BME280溫度傳感器孔上放一點膠帶,不要阻擋它。
步驟19:與Blynk App接口
步驟1:下載Blynk應用程序
1。對于Android
2。對于iPhone
步驟2:獲取身份驗證令牌
要連接Blynk App和您的硬件,您需要一個驗證令牌。
1。在Blynk App中創建一個新帳戶。
2。按頂部菜單欄上的QR圖標。通過掃描上面顯示的QR碼創建此項目的克隆。一旦檢測到成功,整個項目將立即在您的手機上。
我已經制作了Sol Weather Station應用程序。歡迎您試用!
開始使用它:1。下載Blynk App:http://j.mp/blynk_Android或http://j.mp/blynk_iOS 2.觸摸QR - 代碼圖標并將相機指向下面的代碼3.享受我的應用程序!
3。項目創建完成后,我們將通過電子郵件向您發送Auth Token。
4。檢查您的電子郵件收件箱并找到驗證令牌。
步驟3:為Wemos Board準備Arduino IDE
要將Arduino代碼上傳到Wemos板,你必須遵循這個Instructables
Step-4:Arduino Sketch
安裝上面的庫后,粘貼下面給出的Arduino代碼。
輸入路由器的步驟1,ssid和密碼的驗證碼。
然后上傳代碼。
步驟20:將傳感器數據上傳到ThingSpeak
首先,在ThingSpeak上創建一個帳戶。
然后創建一個新的頻道您的ThingSpeak帳戶。
查找如何創建新通道填充字段1作為壓力,字段2作為溫度,字段3濕度,字段4作為高度,字段5作為蝙蝠電壓。
在您的ThingSpeak帳戶中選擇“頻道”,然后選擇“我的頻道”。
點擊您的頻道名稱。
單擊“API密鑰”選項卡并復制“寫入API密鑰”
打開Solar_Weather_Station_ThingSpeak代碼。
將“WRITE API”替換為復制的“Write API密鑰” “。
你可以看到我的實時信息。
目前,我的電池電壓讀數不一致,因此該字段已被禁用。
步驟21:軟件和庫
要將Wemos D1與Arduino庫一起使用,您必須使用支持ESP8266板的Arduino IDE。如果您還沒有這樣做,可以通過Sparkfun的本教程輕松地為您的Arduino IDE安裝ESP8266板支持。
以下設置更可取:
PU頻率: 80MHz 160MHz
閃存大小: 4M(3M SPIFFS) - 3M文件系統大小4M(1M SPIFFS) - 1M文件系統大小
上傳速度: 921600 bps
庫
在上傳代碼之前安裝以下圖書館:
1。 ESP8266
2。 BMP280
3。 Blynk
您可以通過Sparkfun閱讀本教程來安裝Arduino庫。
在我的早期版本中,Blynk和Thinspeak有兩個單獨的代碼,但是在這個版本中,我們已經編寫了一段代碼。用戶只需為Blynk或Thingspeak注釋掉一行代碼。例如,如果您將其用于Blynk App,則代碼應如下所示:
const String App = “BLYNK”; // alternative is line below
// const String App = “Thingspeak”; // alternative is line above
信用: 我想對Keith Hungerford給予很多贊譽,他指導我讓這個項目更加強大。 BMP280的軟件庫也是由他編寫的。您可以在BMP280省電模式下閱讀他的Instructable。
注意: 在使用深度睡眠功能之前,必須將Wemos D0引腳連接到RST引腳。這可以通過短接跳線JP2來完成。
更新:15.05 0.2019 的
您還可以在他的GitHub頁面上看到 3KUdelta所做的出色工作。在他的V2.3代碼中,他包括著名的Zambretti預報員。我非常感謝他為改進項目所做的辛勤工作。
該軟件使用著名的Zambretti預測模型提供短期預測(4-6小時):
用語言預測4-6小時
語言趨勢
溫度
露點
熱指數
濕度
絕對壓力
相對壓力
電池電壓(V)
步驟22:結論
今天我收到了太陽能電池板并安裝了它。我真的很喜歡這個項目的最終成果。
-
太陽能
+關注
關注
37文章
3415瀏覽量
114292 -
WIFI
+關注
關注
81文章
5299瀏覽量
203882 -
氣象站
+關注
關注
1文章
753瀏覽量
15685
發布評論請先 登錄
相關推薦
評論