Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

daimapi/vws

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

13 Commits

Repository files navigation

衛道中學氣象站-空氣盒子 VWS AirBox

CodeFactor GitHub last commit (branch) GitHub Created At GitHub branch status

基於esp32打造的空氣盒子 氣象站 thingspeak 網站

簡介 Introduction

  • 具備測量 pm1、pm2.5、pm10、濕度、溫度、大氣壓儀器及本體鋰電池電壓監測

  • 於每日世界協調時 00:00, 06:00, 12:00, 18:00 將資料上傳 thingspeak 資料庫

  • 18650 鋰電池供電

配備與細節 Specs

esp32 NodeMCU

  • 空氣盒子主控板

  • 屬性 :

    項目屬性 單位
    工作電壓 $3ドル.3$$ $$V$$
    WiFi頻段 $2ドル.4$$ $$GHz$$
    通訊鮑率 $9600ドル$$ $$bps$$
  • NodeMCU-32S 核心开发板

  • datasheet

pms5003t

  • pm1pm2.5pm10溫度濕度監測

  • 使用UART交互接口

  • pms.sleep() 下仍消耗不少電,成為 deepsleep 下的主要耗電者

  • 機器端接口為2.0排針

  • 屬性 :

    項目屬性 值(thingspeak上傳倍率) 單位
    交互電壓 3.3 $$V$$
    工作電壓 5 $$V$$
  • 攀藤 PMS5003T 粉塵溫濕度二合一感測器

  • datasheet

BMP280

迷你DC-DC四段升壓板

  • 鋰電池供電模組

  • 使用5V(開開)降壓模式

  • 鋰電池沒電(輸入低於 2.5V 時)時自動切斷

  • 屬性 :

    項目屬性 單位
    輸入電壓範圍 2.5 ~ 5 $$V$$
    輸出電流 1 $$A$$
    輸出電壓(設為) 5 $$V$$
    空載輸入端電流 1 $$mA$$
  • 迷你DC-DC四段升壓板

佈線圖與引腳定義 Wiring Diagram and Pin Define

alt text alt text

麵包板號 項目屬性 esp32-pin 設備 設備-pin
30 bmp280供電 3V3 bmp280 VCC
26 電壓監測 GPIO34 360kohm*2 麵包板上排負極軌
17 PMS5003t接地 GND PMS5003t GND
12 esp32供電 VIN(5V) 升壓板 +5V
15 外部喚醒接口 GPIO15 按鈕(s1) 麵包板下排正極軌
19 PMS5003t UART GPIO16 (RX2) PMS5003t TX
20 PMS5003t UART GPIO17 (TX2) PMS5003t RX
24 esp32接地 GND 升壓板 麵包板上排負極軌
25 bmp280 SDA GPIO21 (I2C-SDA) bmp280 SDA
28 bmp280 SCL GPIO22 (I2C-SCL) bmp280 SCL
30 bmp280 接地 GND bmp280 GND

使用方法 How to use

設定

  • 程式內未含token.h標頭檔,請自行創建txt檔複製以下文字,填入各項資訊並將檔名改為token.h,否則程式將出現編譯錯誤。

    #define CHANNEL_ID 1231233 // ur channel id
    #define CHANNEL_WRITE_API_KEY "KKKKKKKKKKKK" // ur CHANNEL_WRITE_API_KEY
    #define ssid "213123" // ur ssid
    #define pw "" // ur password (沒有就填"")
  • 插入一個電池電壓大於2.5V的18650電池,以 2.1mm DC 電源插頭連接

喚醒

  • 喚醒方式分為以下三種:

    1. 硬體重置(CPU & RTC reset):

      • 第一次上電,或按下 EN 鈕時觸發

      • 觸發時啟動各硬體並聯網,擷取數據並同步RTC時鐘,但不傳送資料

    2. RTC時鐘喚醒:

      • 於每日世界協調時 00:00, 06:00, 12:00, 18:00 (即台灣時間 02:00, 08:00, 14:00, 20:00 ) 自動喚醒

      • 觸發時啟動各硬體並聯網,擷取數據並傳送資料,但只於 01:00 ~ 02:59同步RTC時鐘

    3. 外部喚醒:

      • 觸發時啟動各硬體並聯網,擷取數據並同步RTC時鐘,傳送資料

    喚醒後啟動 PMS5003t 及 bmp280 並讀取電池電壓,連線後等待 PMS5003t 風扇運轉滿 30 秒並讀取數據,上傳後同步RTC時鐘再進入深度睡眠等待下次時鐘喚醒

  • 喚醒時將嘗試連線200秒,如無法連接則將跳過所有需要網路的工作( RTC 同步、傳送資料到 thngspeak 等)

讀取

  • 上傳至 thingspeak 網站,以折線圖標示

  • 部分資料單位倍率如下:

    項目屬性 值(thingspeak上傳倍率) 單位
    氣壓 $$\times{10^{-1}}$$ $$hpa$$
    溫度 $$\times{10^{-1}}$$ $$\degree{C}$$
    空氣品質 $$\times{1}$$ $$\mu{g/m^3}$$
    濕度 $$\times{10^{-1}}$$ $$%$$
    電池電壓 $$\times{10^{-1}}$$ $$V$$

維護

  • 主控板上的 micro USB 接口已經插了一條 USB 線,即通訊介面為 USB-A 公頭,連接手機後可用 USB terminal app 監控設備狀況,連接 Arduino IDE 亦可上傳程式

  • 鋰電池輸出電壓範圍在 2.7 到 4.2V 間,升壓板最低輸入電壓為 2.5V,應在鋰電池電壓低於 2.7V 時更換並充電,以免造成過放

About

VWS AirBox

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

AltStyle によって変換されたページ (->オリジナル) /