該項目使用 ThingSpeak、Particle 和 Sentient Things IoT 節(jié)點測量遠程位置的風、雨、溫度、濕度和光線。
該氣象站提供以下功能:
無電地點的可選太陽能
基于Sentient Things 物聯(lián)網節(jié)點的易于重復和可維護的包裝和電子產品
更新固件,帶有微型 SD 卡數據記錄、數據存儲和轉發(fā)以克服通信中斷,以及可選的自動 ThingSpeak 頻道創(chuàng)建
第 1 步 - 將天氣和水平適配器和硼插入物聯(lián)網節(jié)點
項目的第一步是將Sentient Things Weather and Level Adapter和Particle Boron LTE (或類似的基于 Feather 的設備)插入 Sentient Things IoT 節(jié)點上的Adafruit Feather兼容標頭,如下所示:
Sentient Things 物聯(lián)網節(jié)點是一款通用板,帶有兼容 Adafruit 的標頭,旨在成為各種物聯(lián)網項目的基礎。它帶有鉸鏈式防水外殼,并且該板包括以下功能:
作為 Adafruit Feather 標頭的超級集的可擴展標頭
帶鋰聚合物電池充電器的太陽能或市電
可選 3AA/A 二次電池
帶有超級電容備份的實時時鐘和日歷
實時時鐘電源切換能力 - 即時鐘可以像深度睡眠模式一樣關閉電子設備,但功耗更低
256kbit FRAM 內存
微型 SD 卡插槽
三個公開 GPIO、串行和 I2C 的 I/O 接頭(可以通過附加適配器添加更多)
最重要的是,為了讓您的選擇保持開放,它不包括微控制器。幾乎任何與 Feather 封裝兼容的微控制器都可以工作。該項目使用 Particle Boron LTE,但也可以使用各種替代設備,例如Adafruit HUZZAH32 。如果您碰巧有粒子光子或電子,您也可以將它們與轉換為羽毛足跡的適配器一起使用。
第 2 步 - 將溫度和濕度傳感器安裝在太陽輻射防護罩中
將Sentient Things AM2315 溫濕度傳感器組裝到太陽輻射防護罩中。請注意,如果您已經有 AM2315 傳感器,則可以使用它并按照下面描述的引腳分配添加您自己的 RJ45 連接器:
推薦的太陽輻射防護罩非常適合 AM2315 傳感器,如下所示,但其他防護罩也可以使用。
第 3 步 - 將傳感器插入物聯(lián)網節(jié)點
將雨和風天氣計、AM2315 溫度和濕度傳感器和TSL2591 戶外光傳感器 插入 Sentient Things 物聯(lián)網節(jié)點和天氣和水平適配器連接器。AM2315 可以插入任何一個 I/O 連接器,因為它們都包含 I2C 總線。Wind 和 Rain RJ11 連接器標記在 Weather and Level Adapter 和Voltaic Systems 6V 太陽能電池板上,帶延長線插入 6V 連接器。板上標有 6V 太陽能極性。還記得將 FAT 格式的 micro SD 卡插入板上的 micro SD 插槽,以便天氣數據也可以保存在本地。如圖所示,將電纜穿過電纜密封套。
注意:天氣和液位適配器包括一個 MPL3115A2 壓力和高度傳感器,因此不要使壓蓋完全密封,以使外殼內的壓力與外部壓力相等。最后將外殼安裝到外面時,確保壓蓋朝下,以防止水泄漏到外殼中。
第 4 步 - 創(chuàng)建 ThingSpeak 和 Particle 帳戶并注冊您的設備
如果您還沒有,請創(chuàng)建一個ThingSpeak和一個Particle帳戶。ThingSpeak 為非商業(yè)用途提供免費帳戶,Particle 也提供免費服務級別。
ThingSpeak 將用于收集、顯示和分析云中的天氣數據,Particle 提供設備硬件、固件和設備連接。Particle 還提供 Webhooks 云服務(如下所述),用于最小化數據流量。
按照Particle 快速入門指南設置您的 Particle 設備(將其與您的 Particle 帳戶關聯(lián)并在適用時設置 WiFi)。Particle 為設備設置提供了一個方便的 Android 或 iOS 應用程序。如果您使用的是像 Boron LTE 這樣的蜂窩設備,您還需要按照 Particle 的說明注冊您的 SIM 卡。
第 5 步 - 將 Webhooks 添加到您的 Particle 帳戶
ThingSpeak 提供 REST 和 MQTT API 來將數據發(fā)送到 ThingSpeak。ThingSpeak 還提供了一個 Particle/Arduino 兼容庫,以便于使用 API。對于通過 WiFi 或以太網連接且不收取??數據費用的設備而言,該庫是一個絕佳選擇。但是,在蜂窩網絡的情況下,最好不要直接使用 REST,從而最大限度地減少數據流量。最好的方法之一是使用 Particle 的(低開銷)COAP 協(xié)議將數據發(fā)送到 Particle 服務器,并讓 Particle 服務器通過 REST (http) 將數據中繼到 ThingSpeak。這是使用Particle Webhooks完成的。
Sentient Things 固件使用下面代碼部分中列出的 Particle Webhook。登錄到您的 Particle 帳戶控制臺并通過將下面的 JSON 代碼粘貼到自定義模板中并保存來在集成下創(chuàng)建三個 Webhook。
注意:對于創(chuàng)建和更新 ThingSpeak 頻道的 Webhook,您需要將 XXXXXXXXXXXXXXXX 替換為您在 ThingSpeak 上的帳戶配置文件下列出的 16 個字符的 ThingSpeak 用戶 API 密鑰。
第 6 步:對您的粒子設備進行編程并進行測試
下面列出的 Weather 固件用于對您的 Particle 設備進行編程。如果您熟悉基于 Visual Studio Code 的桌面開發(fā)環(huán)境,這可以使用Particle Web IDE或使用Particle Workbench來完成。您可以將以下代碼復制并粘貼到 Particle Web IDE 上的新項目中,或者只需點擊此鏈接即可獲得固件的共享版本。
您可以通過無線方式對您的設備進行編程或刷新(以使用數據為代價),或者您可以按照 Particle 的說明在本地連接到您的計算機以避免蜂窩數據費用。
將您的設備插入物聯(lián)網節(jié)點(如果尚未安裝)并將物聯(lián)網節(jié)點上的 POWER 開關轉到 FBAT 以向 Particle 設備供電。當您的固件第一次使用插入物聯(lián)網節(jié)點的 Particle 設備運行時,它會檢測到這是它第一次運行(通過在 FRAM 中查找“幻數”)并使用 Particle Webhooks 創(chuàng)建一個新的 ThingSpeak 通道你之前創(chuàng)建的。當您訪問 ThingSpeak 時,您應該會看到一個新創(chuàng)建的頻道,如下所示:
固件將從 ThingSpeak 發(fā)回的通道號和通道讀取和寫入密鑰保存在 FRAM 中,以便將來寫入創(chuàng)建的通道。
隨著固件的運行,您應該會看到每分鐘都會將天氣數據發(fā)布到 ThingSpeak。
固件會打印串行調試消息,因此如果您遇到問題,第一步是將 Particle 設備的 USB 輸出連接到您的計算機并監(jiān)控串行輸出。如果您的計算機上安裝了Particle CLI ,您將看到 Particle 設備作為 COM 端口。粒子 CLI 命令:
particle serial monitor --follow
是連接和查看 Particle 設備的串行調試輸出的便捷方式。
請注意靠近代碼頂部的以下代碼段:
//********CHANGE BELOW AS NEEDED**************
// Set to true and enter TS channel ID and keys AND change firstRunTest to use an existing TS channel
// Set to false if you wish to create a new TS channel the first time the code runs
bool useManualTSChannel = false;
const char *manualTSWriteKey = “XXXXXXXXXXXXXXXX”;
const char *manualTSReadKey = “XXXXXXXXXXXXXXXX”;
const int manualTSChannel = 895141;
// Change this value to force hard reset and clearing of FRAM when Flashing
// You have to change this value (if you have flashed before) for the TS channel to change
const int firstRunTest = 1122124;
//********CHANGE ABOVE AS NEEDED**************
你可以改變
bool useManualTSChannel = false;
至
bool useManualTSChannel = true;
并添加您自己的 ThingSpeak 密鑰和頻道號以使用現(xiàn)有頻道。
注意:還需要更改“magic number”
const int firstRunTest = 1122124;
設置為不同的值,以便固件檢測到它首次運行以創(chuàng)建新通道或使用現(xiàn)有通道。
第 7 步:安裝您的氣象站并分析數據
氣象站風速計最好安裝在遠離地面高的建筑物的地方。選項包括建造自己的桅桿或使用三腳架將儀表和其余傳感器安裝在屋頂上。
ThingSpeak 在網絡上以實時圖表顯示您的天氣數據方面做得非常出色。也可以使用 MATLAB 分析和顯示您的數據。
訪問MathWorks 的 ThingSpeak 氣象站進行現(xiàn)場演示:
-
太陽能
+關注
關注
37文章
3529瀏覽量
116059 -
氣象站
+關注
關注
1文章
775瀏覽量
16198 -
物聯(lián)網節(jié)點
+關注
關注
0文章
5瀏覽量
4578
發(fā)布評論請先 登錄
FRAM MCU助力便攜式氣象站數據收集
分享一個太陽能WiFi氣象站的設計方案
分享一個不錯的太陽能WiFi氣象站V2.0的項目
應用于戶外太陽能氣象站中的溫濕度傳感器
溫濕度傳感器在戶外太陽能氣象站中的應用
太陽能氣象站的應用、特點及功能
便攜式氣象站價格多少?市場前景如何?
關于太陽能氣象站

評論