PR 記事には広告が含まれています
スポンサーリンク
Translate

ESP-WROOM-02で天気予報LEDができました

スポンサーリンク

image

2015.09.18追加
kohacraftのshopより実験セットを購入いただけるようになりました。作ってみたい方はどうぞ。

こんにちはコハペペです。ESP-WROOM-02を使って自宅の無線LANにマイコンを接続して、インターネットから天気予報を取得することができました。取得した予報によってLEDの色を変えて教えてくれます。
晴れの時はオレンジ、曇りの時はグレー、雨の時は、雪の時は水色になるようにしました。
天気予報はYahooウェザーAPIから取得しています。
YahooウェザーAPIは、世界の各地域ごとに割り振られたID(WOEID)を使って
http://weather.yahooapis.com/forecastrss?u=c&w=xxxxxxxx
にアクセスすると現在の気象情報と予報が得られます。(xxxxxxxxがWOEIDです)
東京駅近辺の天気であれば
http://weather.yahooapis.com/forecastrss?u=c&w=28413961
にアクセスすると天気がわかります。
WOEIDは
woeid.rosselliot.co.nz
に郵便番号を入力すると検索できます。

プログラムでは、ATコマンドというネットワーク機器と通信する命令を使って、YahooウェザーAPIから情報をもらっています。受け取ったデータの中から今後の天気と最低気温、最高気温を抽出しています。
天気に関しては、コンディションコードという番号になっていて、
https://developer.yahoo.com/weather/documentation.html#codes
にあるように0~47まであります。英語なのでよくわかりませんが、コハペペの独断と偏見により適当に、晴れ、曇り、雨、雪に分別して、それぞれの色でLEDを光らせています。

プログラムはこちらからダウンロードできます。(2015.9.6追加 受信の判定にバグがあり修正しました 動作しなかった方ごめんなさい)
19行目の28413961をあなたの知りたい地域の番号に変えてください。
あと、7桁だった場合は、168行目のCIPSEND=72をの72を71に減らしてしてください。(WOEIDは8桁だけかと思ったら7桁もあるんですね。もしWOEIDが9桁だったら1足して73としてください。)

起動の最初は、モジュールのアイドリングとアクセスポイントへの接続など10秒程度時間がかかります(黄色の点滅から徐々に青くなっていきます)。一度天気を取得すると、その後は30分毎にチェックしています。
接続に失敗するとリトライするようになっていますが、黄色の点滅が続くようでしたら、SSIDやパスワード、168行目の値を再確認してください。

マイコンには明るさセンサ(CdS:GL5528)をdp4につないで、暗い時はLEDを暗くするようにしました。

回路図(ブロック図?)
weatherLed