天気予報LEDを作ろう!無線LAN実験セットは、インターネットから天気予報を取得して、予報に応じてそれぞれの色のLEDが点滅し、天気予報を教えてくれるキットです。ここでは、このキットの作り方をご紹介します。
天気予報は無料のOpenWeatherMapを利用しています。このサービスで得られる3時間後までの天気予報を、晴れ、曇り、雨、雪に分類しLEDを光らせます。
完成までの作業手順は、大きく4つに分けられます。
- マイコンの配線と組立
- 天気予報を取得するための設定
- mbedマイコンをプログラムするための準備
- マイコンにプログラムを書き込んで動作チェック
マイコンの配線と組立
ブレッドボードにマイコンや無線LANモジュールを刺し、ジャンパーワイヤーで配線していきます。それでは始めていきましょう。
LEDの準備
最初に、わかりやすいLEDから準備していきましょう。まず、ピンとジャックのジャンパーワイヤーを以下のように分けていきます。
- 茶-赤の2本
- オレンジ-黄色の2本
- 緑-青の2本
- 紫-灰色の2本
- 白黒茶の3本(マイコン書き込み機(mbedねこちゃん)とマイコンをつなぐのに使います)
- 赤-黒の9本(余りです。使いません)
ジャンパワイヤーのジャックの方に、LEDの足を刺していきます。
- 赤のLEDの長い方の足を、赤いジャンパワイヤーに刺します。短い足を茶色に刺します。
- 黄色のLEDの長い方の足を、黄色のジャンパワイヤーに刺します。短い足をオレンジに刺します。
- 青のLEDの長い方の足を、青いジャンパワイヤーに刺します。短い足を緑に刺します。
- 白のLEDの長い方の足を、灰色のジャンパワイヤーに刺します。短い足を紫に刺します。
これでLEDの準備は完了です。
マイコンなどをブレッドボードに刺す
マイコン、抵抗、無線LANモジュール、マイコン書き込み機(mbedねこちゃん)を刺していきます。ブレッドボードには、横にa b c...、縦に1 2 3...と、アルファベットと数字が書いてある、それらを使って、穴の位置を特定できます。例えば、一番左上の穴は1a。一番右上の穴は1jというようになります。マイコンやワイヤーを刺す時には、この数字とアルファベットで、刺す場所を指定していきます。最初は難しいですが、徐々に慣れますので、ゆっくり作業してください。
それでは刺していきます。
- マイコンは凹みがあるのが上にくるようにして、左上のピンが1行目のc(1c)に来るように刺します
- 抵抗は片方の足を15eに、もう片方を青いグランドラインに刺します
- 無線LANモジュールは図のように、左上のピンが20bに来るように刺します
- mbedねこちゃんは電源ラインの一番下になるように刺します
電源を配線
マイコンと無線LANモジュールの電源を配線します。
- 茶色のワイヤーで、マイコンの7hと、青いグランドラインとをつなぎます
- 赤のワイヤーで、マイコンの8hと、赤い電源ラインとをつなぎます
- オレンジ色のワイヤーで、無線LANモジュールの20aと、赤い電源ラインとをつなぎます
- 黄色ワイヤーで、無線LANモジュールの20jと、青いグランドラインとをつなぎます
マイコンと無線LANモジュールとを配線
- 紫色のワイヤーで、マイコンの12hと、無線LANモジュールの23jとをつなぎます
- 青色のワイヤーで、マイコンの13hと、無線LANモジュールの27jとをつなぎます
- 緑色のワイヤーで、マイコンの14hと、無線LANモジュールの26jとをつなぎます
13hが26j、14hが27jではなく、上下が入れ替わってつながっているので、注意してつないでくださいね。
こんな感じになります。
書き込み機との配線
マイコンと、マイコン書き込み機(mbedねこちゃん)とをつなぎます。ピンとジャックのジャンパーワイヤーの黒、
書き込み機を顔に例えると、左眉毛の黄色いピンと、マイコンをつないでいきます。
- 白いワイヤーで、まゆ毛の一番左のピンと、マイコンの左側の3bとをつなぎます
- 黒いワイヤーで、まゆ毛の左から2個目のピンと、マイコンの左側の12bとをつなぎます
- 茶色いワイヤーで、まゆ毛の左から3個目のピンと、マイコンの右側の6hとをつなぎます
LEDの接続
- 赤いLEDの赤いジャンパワイヤーを1aに刺します。茶色を15dに刺します。
- 黄色いLEDの黄色のジャンパワイヤーを2a刺します。オレンジを15cに刺します。
- 青のLEDの青いジャンパワイヤーを4a刺します。緑を15bに刺します。
- 白のLEDの灰色のジャンパワイヤーを6a刺します。紫を15aに刺します。
こんな感じになります。
以上で、配線は完了です。
天気予報を取得するための設定
天気予報はOpenWeatherMapという、インターネットのサービスを利用して取得します。無料ですが、ユーザー登録をして、API Keyというサービスを利用するためのパスワードを取得する必要があります。
API Keyの取得
取得の方法は、以下に順を追って説明してありますので、ご覧になって、API Keyを取得してください。
郵便番号で天気予報が取得できるか調べる
API Keyが取得できたらば、天気予報が取得できるか、パソコンかスマホのブラウザでチェックします。
天気予報を調べる時には、通常郵便番号で調べることができます。以下のURLが、天気予報を取得するためのURLです。
zip=の後に郵便番号を入れます。[API Key]はご自身で取得したAPI Keyを入れます。これをブラウザのURLのところに貼り付けて、リターンを押してみてください。
このように表示されれば、郵便番号で天気予報が取得できる地域です。この郵便番号をプログラムで利用するので、メモしておいてください。
以下のように、404となった場合は、郵便番号ではなく都市名で調べる必要があります。
都市名で調べる
上記のページを開いて、天気予報を知りたいところをズームしていきます。
数字が付いている所の都市名が、天気を検索できる都市名となっています。都市名を使って検索する場合には、以下のうになります。
q=の後に、ローマ字の都市名を入力します。これをブラウザのURLにコピーしてエンターを押すと、以下のように天気予報が表示されます。
郵便番号で検索できない場合には、この都市名を使うのでメモしておいてください。
以上で、天気予報を取得するための設定は完了です。
mbedマイコンをプログラムするための準備
mbedマイコンは、インターネット上でプログラムを作り、できたプログラムをダウンロードしてマイコンにコピーするだけで、マイコンにプログラムを書き込んで動作させることができます。
ユーザー登録
先ほどのOpenWeatherMap同様、無料のサービスなのですが、ユーザー登録と、使用するマイコンの登録が必要です。以下のページをご覧になって、ユーザー登録と、マイコンの登録を行ってください。
天気予報プログラムのインポート
以下のページを開いて、天気予報のプログラムをインポートします。
上記の、ページの右側にある[ Import into Compiler ]をクリックします。
mbedのページが表示され、ダイアログが出ます。
[Import]をクリックして、プログラムをご自分のmbedの環境にインポートします。
左上の[main.cpp]をクリックすると、プログラムのソースコードが表示されます。
パラメータの修正
ご自宅の無線LANにつげるための設定と、調べたい天気予報の場所を設定のところを修正します。
無線LANの設定
16行目と、17行目を修正します。
16行目のダブルクォーテーション(")の中に、ご自宅の無線LANのアクセスポイントの名称(SSID)を記入してください。
17行目のダブルクォーテーション(")の中に、ご自宅の無線LANのアクセスポイントのパスワードを記入してください。
天気予報を調べる場所の設定
OpenWeatherMapのユーザー登録の時に、郵便番号でブラウザに天気予報が表示できた方は、18行目のダブルクォーテーション(")の中に、天気予報を調べたい郵便番号に修正してください。
郵便番号で天気予報が検索できなかった方は、地点名を調べたと思いますが、その地点名を、19行目のダブルクォーテーション(")の中に記入してください。
プログラムの修正は以上です。
プログラムのコンパイル
画面の上部中央の[コンパイル]ボタンをクリックすると、プログラムのコンパイルが始まります。
コンパイルが正常に完了すると、マイコンにコピーするファイルがダウンロードされます。「ファイルを保存する」をクリックして、[OK]をクリックして、ファイルを保存してください。
プログラムの書き込み
マイコン書き込みとパソコンとを、USBで接続してください。しばらくすると、MBEDというドライブが追加されます。
このドライブに、先ほどダウンロードしたファイルをコピーすると、マイコンにプログラムが書き込まれる仕組みになっています。
先ほどダウンロードしたファイル、「kc_tenkiyohoLED3.LPC1114.bin」をMBEDドライブにコピーしてください。
書き込み中は、マイコン書き込み機の、左の眉毛(黄色の端子)の右にあるLEDがチカチカ光ります。2〜3秒間チカチカします。
動作の確認
書き込み機の赤い大きなスイッチ(リセットボタン)を押してください。マイコンがリセットされ動作を開始します。
動作を開始すると、LEDが赤→黄色→青→白と点滅し始めます。
その後、赤と黄色のLEDが同時に光ります。この時、マイコンは無線LANモジュールと通信しています。
その後、青と白のLEDが同時に光ります。この時マイコンは、ご自宅の無線LANのアクセスポイントに接続しようとしています。
その後、LEDが一旦消灯します。この時マイコンは、OpenWeatherMapのサーバーから、天気予報を取得しようとしています。
取得できたら、天気予報がLEDの色で表示されます。天気予報は、30分毎にサーバーにアクセスし、更新されます。
オリジナルのデザインで、表示板を飾って完成となります。
コメント