資料介紹
描述
介紹
天氣監(jiān)測(cè)設(shè)備是提供該地區(qū)有關(guān)溫度、濕度、風(fēng)速、降水、紫外線指數(shù)等大氣信息的有用工具。特定地區(qū)的天氣描述了很多關(guān)于棲息地、氣候條件的信息,并在一段時(shí)間內(nèi)積累了這些數(shù)據(jù)。一定的時(shí)間段可以用來(lái)預(yù)測(cè)未來(lái)的氣候變化。在這個(gè)項(xiàng)目中,我使用了 OLED 顯示屏,顯示溫度(攝氏度)、風(fēng)速(米/秒)、天氣的一般描述和圖形圖標(biāo),通過(guò) API 調(diào)用來(lái)描述天氣。
在職的
1.發(fā)送API請(qǐng)求并獲取Json響應(yīng)
天氣監(jiān)控設(shè)備通過(guò)向服務(wù)器發(fā)送 API 請(qǐng)求以返回 JSON 響應(yīng)來(lái)獲取天氣信息。對(duì)于我的項(xiàng)目,我使用了 weatherbit API 的當(dāng)前天氣 API,因?yàn)樗敲赓M(fèi)的并且非常適合我的要求。
要使用此 API,您首先需要在weatherbit.io上設(shè)置一個(gè)帳戶。創(chuàng)建后,您需要請(qǐng)求一個(gè) API 密鑰,大約需要 30 分鐘才能激活。將 API 密鑰保密以供您自己使用,因?yàn)樗挠猛居邢蕖?/font>
獲取 API 密鑰后,您可以通過(guò)在 Web 瀏覽器上發(fā)送請(qǐng)求(參見(jiàn)文檔)或從postman等工具以結(jié)構(gòu)化方式查看 JSON 格式來(lái)檢查 JSON 響應(yīng)。這是我的 api 請(qǐng)求的示例-
此請(qǐng)求的 JSON 響應(yīng)如下 -
{
"data": [
{
"rh": 91.3,
"pod": "d",
"lon": 73.78869,
"pres": 988.487,
"timezone": "Asia/Kolkata",
"ob_time": "2020-08-05 12:53",
"country_code": "IN",
"clouds": 100,
"ts": 1596631998,
"solar_rad": 30.8,
"state_code": "33",
"city_name": "Marmagao",
"wind_spd": 8.05612,
"wind_cdir_full": "west",
"wind_cdir": "W",
"slp": 994.225,
"vis": 2,
"h_angle": 64.3,
"sunset": "13:42",
"dni": 666.14,
"dewpt": 23.9,
"snow": 0,
"uv": 1.35293,
"precip": 0,
"wind_dir": 269,
"sunrise": "00:47",
"ghi": 308.26,
"dhi": 76.82,
"aqi": 51,
"lat": 15.40927,
"weather": {
"icon": "c04d",
"code": 804,
"description": "Overcast Clouds"
},
"datetime": "2020-08-05:12",
"temp": 25.4,
"station": "VAJJ",
"elev_angle": 20.94,
"app_temp": 26.4
}
],
"count": 1
}
同樣,要獲取您所在位置的天氣信息,您只需更改城市和國(guó)家名稱。
JSON 響應(yīng)(如您在上面看到的)包含大量信息,我們只需要一些信息。為了只從 JSON 中獲取必要的信息,我們必須進(jìn)行解析。
2.解析JSON響應(yīng)
為了解析所需的信息,我使用了 ArduinoJson 庫(kù)。為此,我必須獲取 json 緩沖區(qū)大小并為我想要的屬性創(chuàng)建一個(gè) json 對(duì)象。我已經(jīng)使用ArduinoJson 助手來(lái)計(jì)算緩沖區(qū)大小并獲取我想要顯示的鍵的值。緩沖區(qū)大小和解析程序是通過(guò)將 JSON 響應(yīng)粘貼到 ArduinoJson 助手獲得的。
3. 創(chuàng)建天氣小部件
我創(chuàng)建了這些小部件,因?yàn)樗潜硎井?dāng)前天氣狀況的一種有吸引力的方式,并且在 OLED 顯示屏上具有吸引人的外觀。這些圖標(biāo)中的每一個(gè)都來(lái)自文檔,一些來(lái)自 Google 搜索。下面列出的是我使用過(guò)的天氣圖標(biāo)-
所有圖標(biāo)已被裁剪為小于(或接近)57*57 像素的分辨率,以適應(yīng) OLED 顯示器,并已使用image2cpp工具轉(zhuǎn)換為各自的數(shù)組字節(jié)。圖像的數(shù)組字節(jié)如下所示 -
在合并到主程序之前,我首先測(cè)試了顯示屏上的所有圖標(biāo),以檢查最終圖像的大小和對(duì)比度。結(jié)果如下——
在確保每個(gè)圖標(biāo)都完美顯示后,我已將這些圖標(biāo)分配給它們各自的圖標(biāo)代碼(查看文檔)。例如:200 到 202 之間的代碼顯示“雷暴雨”圖標(biāo),500 到 522 之間顯示“雨”圖標(biāo)等等。
最終執(zhí)行
該草圖需要以下庫(kù),可以從 Arduino IDE 的庫(kù)管理器安裝 - Adafruit 的Adafruit SSD1306 、Adafruit 的Adafruit GFX 庫(kù)、ArduinoJson (版本 5)。
在上傳草圖之前,請(qǐng)確保輸入 weatherbit io 的API 密鑰以及WiFi 路由器的SSID和密碼。
主顯示屏提供從 Weatherbit api 獲得的以下信息-
?
- Arduino UNO驅(qū)動(dòng)的簡(jiǎn)單天氣監(jiān)測(cè)系統(tǒng)
- 使用Arduino構(gòu)建基于物聯(lián)網(wǎng)的天氣監(jiān)測(cè)系統(tǒng)
- 基于SparkCore的天氣監(jiān)測(cè)器 0次下載
- 天氣監(jiān)測(cè)系統(tǒng)
- 帶有藍(lán)牙HC 05的基于Arduino Nano的天氣監(jiān)測(cè)器
- 使用Qubitro和RAK WisBlock進(jìn)行全球天氣監(jiān)測(cè)
- BME680天氣監(jiān)測(cè)裝置開(kāi)源分享
- NodeMCU項(xiàng)目(一)天氣時(shí)鐘
- 基于ZigBee的天氣現(xiàn)象自動(dòng)觀測(cè)分析系統(tǒng) 9次下載
- IIC通信小OLED顯示屏模塊資料匯總 83次下載
- OLED的優(yōu)缺點(diǎn)資料下載
- 正點(diǎn)原子ESP8266獲取網(wǎng)絡(luò)天氣適配戰(zhàn)艦V3 25次下載
- OLED模塊的PCB原理圖免費(fèi)下載 290次下載
- 基于天氣監(jiān)測(cè)的STM32程序 21次下載
- 天氣雷達(dá)的現(xiàn)狀及發(fā)展趨勢(shì) 25次下載
- AWTK 開(kāi)源串口屏開(kāi)發(fā)(11) - 天氣預(yù)報(bào) 270次閱讀
- oled是什么材料 oled是液晶屏嗎 2358次閱讀
- 樹(shù)莓派Pico上使用SSD1306 OLED屏幕 1548次閱讀
- FPGA在OLED上顯示DHT11數(shù)據(jù) 1607次閱讀
- 如何在OLED上實(shí)現(xiàn)字符的顯示 4668次閱讀
- Python如何爬取天氣數(shù)據(jù) 1669次閱讀
- uled和oled的區(qū)別?uled電視有什么優(yōu)點(diǎn)? 2.8w次閱讀
- 石墨烯oled成為柔性顯示屏的小火箭 2851次閱讀
- 分析OLED應(yīng)用領(lǐng)域 OLED主要應(yīng)用在哪里 1.1w次閱讀
- MicroLED技術(shù)尚不成熟,現(xiàn)階段屏下指紋識(shí)別系統(tǒng)只能做在OLED上 2447次閱讀
- OLED技術(shù)新突破 OLED壽命延長(zhǎng)15% 5426次閱讀
- 天氣雷達(dá)原理介紹 6237次閱讀
- oled是什么意思 AMOLED與OLED的主要區(qū)別到底在哪里? 6.2w次閱讀
- 基于Zynq的OLED驅(qū)動(dòng)設(shè)計(jì) 1w次閱讀
- OLED之父鄧青云為你揭開(kāi)OLED的秘密 1.3w次閱讀
下載排行
本周
- 1ADE-12H混頻器規(guī)格書
- 0.28 MB | 1次下載 | 5 積分
- 2AD9984A高性能10位顯示接口英文手冊(cè)
- 0.49 MB | 1次下載 | 5 積分
- 351開(kāi)發(fā)板芯片資料
- 14.95 MB | 1次下載 | 1 積分
- 4用TL431LI-Q1監(jiān)控電流供應(yīng)
- 176.71KB | 1次下載 | 免費(fèi)
- 5十進(jìn)制數(shù)據(jù)轉(zhuǎn)十六進(jìn)制字符_轉(zhuǎn)ASCII碼
- 0.01 MB | 次下載 | 免費(fèi)
- 6使用TRF7970A進(jìn)行NFC主動(dòng)和被動(dòng)點(diǎn)對(duì)點(diǎn)通信
- 926.87KB | 次下載 | 免費(fèi)
- 7LP8864-Q1 LP8864S-Q1 LP8866-Q1和LP8866S-Q1診斷說(shuō)明和故障處理程序
- 577.42KB | 次下載 | 免費(fèi)
- 8將設(shè)計(jì)移植到LP3470A低lq電壓監(jiān)控器,以改善電源監(jiān)控
- 115.28KB | 次下載 | 免費(fèi)
本月
- 1HFSS電磁仿真設(shè)計(jì)應(yīng)用詳解PDF電子教程免費(fèi)下載
- 24.30 MB | 129次下載 | 1 積分
- 2正激、反激、推挽、全橋、半橋區(qū)別和特點(diǎn)
- 0.91 MB | 36次下載 | 1 積分
- 3GBT 4706.1-2024家用和類似用途電器的安全第1部分:通用要求
- 7.43 MB | 20次下載 | 免費(fèi)
- 4在設(shè)計(jì)中使用MOSFET瞬態(tài)熱阻抗曲線
- 1.57MB | 15次下載 | 免費(fèi)
- 5幾張電動(dòng)車充電器電路圖
- 0.23 MB | 9次下載 | 1 積分
- 6AD18學(xué)習(xí)筆記
- 14.47 MB | 8次下載 | 2 積分
- 7H橋中的電流感測(cè)
- 545.39KB | 7次下載 | 免費(fèi)
- 8電機(jī)驅(qū)動(dòng)器電路板布局的最佳實(shí)踐
- 3.03MB | 6次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935113次下載 | 10 積分
- 2開(kāi)源硬件-PMP21529.1-4 開(kāi)關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191360次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183329次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81578次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73804次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65985次下載 | 10 積分
評(píng)論
查看更多