2017年11月6日 星期一

super169/hkweather

之前既天文台資料 project, 整左個 docker image, 有興趣可以自己裝黎玩下.

主要目的係比部 MCU 顯示出黎, 做下簡單既天氣資料站.

家陣仲諗緊要乜野資料需要, 同埋每個資料既來源, 睇下點樣可以簡化佢.

初步諗只會有兩個頁面顯示天氣資料:

1) 主頁, 地區天氣資料 (可輸入地區碼)
2) 九天天氣預測 - 來源
  • 天氣圖示
  • 最高/低氣溫
  • 最高/低濕度

另外, 會插上 其他 sensor (例如溫度, 濕度, 光照, 人體, 距離, ....)

資源來源:

  1. http://rss.weather.gov.hk/rss/CurrentWeather.xml
  2. http://www.weather.gov.hk/wxinfo/ts/text_readings_e.htm
  3. http://rss.weather.gov.hk/rss/WeatherWarningSummaryv2.xml
  4. http://rss.weather.gov.hk/rss/SeveralDaysWeatherForecast.xml


各項資料分析 (盡量拆英文網站, 避免中文字撞碼):

即時本港天氣圖示 - 主(1)

src="http://rss.weather.gov.hk/img/pic60.png"

該區現時氣溫 - 主(2)  後備(1)

(1)  HK Observatory 25.1
(2)  Hong Kong Observatory 25 degrees 

該區現時濕度 - 主(2) 

HK Observatory                 25.1       66

紫外線指數/強度 - 主(1)

During the past hour the mean UV Index recorded at King's Park : 2
Intensity of UV radiation : low

今日最高/低氣溫 - 主(2) 

(1) HK Observatory                 25.1       66        25.2 / 21.8

天氣警告(只要颱風及暴雨) - 主(3)

hard code 認呢度既字眼: http://www.weather.gov.hk/m/warndef.htm

九天天氣預測 - 主(4) 圖示補充 準備轉用 

天氣圖示
成篇文咁, 拆到想死, 例如呢幾句野, 大家會點理解, 點決定用邊個圖:
  1. Mainly cloudy with one or two rain patches.
  2. Mainly cloudy. One or two rain patches at first. 
  3. Mainly cloudy with a few rain patches.

最高/低氣溫

Temp range: 23 - 27 C


最高/低濕度

R.H. range: 65 - 85 per Cent

香港天文台資訊

做乜鬼玩玩下 arduino 走去講 香港天文台資訊?

因為  pat pat 痕, 想整個 internet clock, 整好左之後, 見既然上左網, 不如攞埋天氣睇下.
搵左D sample, 可以用 http://wunderground.com, 不過, 唔知個 source 係邊.

既然講香港天氣, 更係搵下香港天文台喇, 年年花香港咁多錢, 點都有D野睇下掛.
而且, 唔知外國既, 有無香港D天氣警號 (例如 8 號風球).
點知, 上網搵下至知, 香港天文台既天氣 資料, 仲停留十幾年前既科技...只係得 RSS.

真係粗口都黎埋, 今時今日, 仲只係預人地用電腦睇, 仲有無落後D呀. 唉, 算喇, 香港....

再去搵下, 原來幾年前已經有人開左個 開放源碼香港天氣計劃 hk0weather.
不過, 佢係用 python,  小弟真係唔識.
而且, 個 OpenData 既 project, 好似重點唔係天氣.
加上自己用 mcu, 就算佢比 JSON 比我, 要拆都仲係煩.

求人不如求己, pat pat 痕多野, 決定自已做算了.


首天, 資料既來原好重要, 既然想睇香港天氣, 就算幾唔準都係, 都係睇番香港天文台先.
暫時睇, 主要會用呢幾個 source 既資料:



PDA Data source:




不過, 之前都講左, 香港天文台比番日既野, 十九幾年前既 RSS, 仲要 data 係夾左做 html 出.
所以, 唔好諗住有好靚既料, 例如: Temperature=29 咁比你, 只可以認位拆舍 html/xml.


本港地區天氣報告 (中文English) - 更新: 每小時的 02 分, 或有特別需要
有香港整體數據, 包括:

  • 氣溫
  • 相對濕度
  • 過 去 一 小 時 平 均 紫 外 線 指 數
  • 紫 外 線 強 度 
  • 各區氣溫
  • 颱 風 消息


香港分區天氣 (中文English) - 更新:

有各區氣象站錄得既數據, 包括:

  • 即時氣溫
  • 即時相對濕度
  • 今日最高/低溫度
  • 即時草溫
  • 今日最低草溫
  • 十分鐘平均風向,風速及最高陣風風速 (多個氣象站)
  • 平均海平面氣壓 (赤鱲角,長洲,天文台,流浮山,坪洲,沙田,石崗,上水,打鼓嶺,大埔,橫瀾島,濕地公園)
  • 十分鐘平均能見度 (中環,赤鱲角,西灣河,橫瀾島)
  • 太陽總輻射量/直接輻射量/漫射輻射量  (滘西洲,京士柏)

九 天 天 氣 預 報 (中文English) - 更新: 11:30, 16:30, 或有特別需要

未來九天天氣預測, 包括: 
  • 風向及風力
  • 天氣情況
  • 氣溫
  • 相對濕 度


只係知道個 url, 但佢會點出, 好多野唔係時時有既, 只可以估估下, 到時執生.


玩玩下都幾火, RSS 真係唔多合用黎拆 data, 好多野都唔知.
比如 Weather 既 condition 會有幾多種唔知, 就唔知要做幾多個 icon 比佢.
天文台就當然唔會有 spec 提供, 估都有排估, 試下拆佢成版 HTML 話者仲易.
暫時用 regular express 拆左兩個 page, 整埋個 service  可以用下:


https://hkweather-tester01-rbhcwiqj1ojo.runkit.sh/c?location=hko

即時天氣, 有氣溫, 濕度, 同埋 UV 指數.  如果有 location 比埋你果區既氣溫.
Location code 係我自己定既, 其實好懶咁將天文台果 26 區既 initial 起既.
比如: TM=屯門, ST=沙田, TMT=大美篤, ....
唔比或者唔存在, 就會出番天文台 HKO.
幾個 data 分別係:

  • pic# : 用黎顯示家陣既天氣既公仔
  • 氣溫
  • 相對濕度
  • 過去一小時紫外線指數
  • 紫外線強度
  • 地區英文區
  • 地區氣溫


遲D可能會去埋 香港分區天氣 攞多D地區資料, 不過, 果版野...真係拆到火都黎埋.


https://hkweather-tester01-rbhcwiqj1ojo.runkit.sh/f

九天天氣預報.