如此簡單 MicroPython - OpenWeatherMap 全球天氣數據平台

by Yungger Chen in Circuits > Microcontrollers

360 Views, 0 Favorites, 0 Comments

如此簡單 MicroPython - OpenWeatherMap 全球天氣數據平台

header.jpg
So Easy MicroPython - OpenWeatherMap, global weather data platform

*** 只須加上 2~3 行以內的指令, 就能讓你的 MCU 變成 IoT 物聯網裝置, 讀取 OpenWeatherMap 平台的全球天氣數據資料***

from MyREST_OWM import myWeather

my_owm = myWeather(YOUR_OWM_KEY)

data = my_owm.read("New York, US")

*** 使用我所設計的 MyREST_OWM 函式庫, 它允許用最簡單快速的方式, 讀取 OpenWeatherMap 平台的全球天氣數據資料, 就像上面的程式碼一樣的簡單了. ***

***在此之前, 您必須先已申請好平台的帳戶與設定好存取資料用的裝置, 作業說明可直接參考平台官網上的說明步驟即可, 在此不在贅述 ***

下載與安裝函式庫

1. 首先, 必須先上傳下面的函式庫到 MCU 板子上:

MyREST_OWM: 專用於存取 OpenWeatherMap 全球天氣數據平台的函式庫

MyWifi: 一個快速讓 MCU 連上 WiFi 無線網路, 成為 IoT 物聯網裝置 (非必要, 若您已有程式可讓它連上網) 2. 執行下面的練習範例, 或撰寫自己的程式碼

***如果您尚不知如何上傳檔案至 MCU 時, 建議您可先參考我的另一篇 "如此簡單 MicroPython - ESP8266/ESP32 MCU 檔案管理".

*** 如果您對 MyWifi 函式庫感到興趣, 或還不知道如何使用它, 您可先參考我的另一篇 "如此簡單 MicroPython - WiFi 無線網路"

範例一:現在的天氣資料

weather_current.jpg

# 連上 WiFi 無線網路, 此 3 行可略, 若您有自己的方式讓 MCU 連上網

from MyWifi import myWifi

my_wifi = myWifi(YOUR_WIFI_SSID, YOUR_WIFI_PWD)

my_wifi.connect()

# 加此 3 行, 就能完成讀取指定城市的天氣資料

from MyREST_OWM import myWeather

my_owm = myWeather(YOUR_OWM_KEY)

print("\n\nWeather by City str", my_owm.read("New York, US"))

範例二:天氣預報資料

weather_forecast.jpg

# 連上 WiFi 無線網路, 此 3 行可略, 若您有自己的方式讓 MCU 連上網
from MyWifi import myWifi

my_wifi = myWifi(YOUR_WIFI_SSID, YOUR_WIFI_PWD)

my_wifi.connect()

# 加此 3 行, 就能完成讀取天氣預報資料, 例如讀取 3 筆資料

from MyREST_OWM import myForecast

my_owm = myForecast(YOUR_OWM_KEY)

print("\n\nWeather by City str", my_owm.read("New York, US", 3))

範例三:空氣污染指數資料

air_pollution.jpg

# 連上 WiFi 無線網路, 此 3 行可略, 若您有自己的方式讓 MCU 連上網
from MyWifi import myWifi

my_wifi = myWifi(YOUR_WIFI_SSID, YOUR_WIFI_PWD)

my_wifi.connect()

# 加此 3 行, 就能完成讀取空污指數資料

from MyREST_OWM import myAirPollution

my_owm = myAirPollution(YOUR_OWM_KEY)

print("\n\nWeather by City str", my_owm.read("50, 50")) # read(lat, lon)

如此而已, 就是這麼簡單, 希望能對你有一點點的幫助 !

find_your_city.jpg
NTP WeatherStation

作者:Yungger 勇哥

如果覺得此文對您有幫助, 也願意鼓勵勇哥的繼續創作, 點此加油一下 😘 😘 !