top of page
時間を読み出して、IoT目覚まし時計
![](https://static.wixstatic.com/media/1d775e_c9e3089a9c224d79967da2293045b299~mv2.png/v1/fill/w_231,h_234,al_c,q_85,usm_0.66_1.00_0.01,enc_avif,quality_auto/1d775e_c9e3089a9c224d79967da2293045b299~mv2.png)
![](https://static.wixstatic.com/media/1d775e_578d8874325e4bb0b35924431d654bd5~mv2.jpg/v1/fill/w_97,h_96,al_c,q_80,usm_0.66_1.00_0.01,enc_avif,quality_auto/1d775e_578d8874325e4bb0b35924431d654bd5~mv2.jpg)
![](https://static.wixstatic.com/media/1d775e_e9b27a10be1a42b18503a2974f80c33f~mv2.png/v1/fill/w_119,h_70,al_c,q_85,usm_0.66_1.00_0.01,enc_avif,quality_auto/1d775e_e9b27a10be1a42b18503a2974f80c33f~mv2.png)
時刻データ
![](https://static.wixstatic.com/media/1d775e_0ff765e2816c4b74b68a49befe65ec65~mv2.png/v1/fill/w_118,h_118,al_c,q_85,usm_0.66_1.00_0.01,enc_avif,quality_auto/1d775e_0ff765e2816c4b74b68a49befe65ec65~mv2.png)
NTPサーバー
インターネットには、正確な時刻を配信しているNTPサーバーというものがあります。今回はこれを利用して、Micro:Bitのメロディ機能と合わせて、IoT目覚まし時計を作りましょう
必要なもの
本プロジェクトに必要なものは以下の通りです。
・Micro:Bit
・Kagabit_IoT
・電源(電池でも可)
・WIFI環境(2.4G)
プログラム
先ずはいつものように、WI-FIに接続します。
![ntp接続.jpg](https://static.wixstatic.com/media/1d775e_3fff20a4edbc48c78a5f06c58e8ec460~mv2.jpg/v1/fill/w_378,h_317,al_c,q_80,usm_0.66_1.00_0.01,enc_avif,quality_auto/ntp%E6%8E%A5%E7%B6%9A.jpg)
接続されたら、時間を読み出します。1秒に1回読み出す作りにしましょう。とりあえず秒を表示してみましょう。現在が何秒なのか表示されます。
![ntp.jpg](https://static.wixstatic.com/media/1d775e_0962dc0c40d34f69a9258425cbc99d0a~mv2.jpg/v1/fill/w_376,h_294,al_c,q_80,enc_avif,quality_auto/ntp.jpg)
次に時間を目覚まし時計を作成します。起きたい時間になったら、メロディを鳴らし続け、Aボタンを押したら停止する動きにしましょう。
起きる時間はBボタンで設定できるようにします。
まずは、以下のように変数を作成します。
前の時刻
現在時刻
起きる時間
の3つの変数を作成しましょう。
![](https://static.wixstatic.com/media/1d775e_a6dd2f7c8ea544979c45b95b6478e224~mv2.jpg/v1/fill/w_255,h_380,al_c,q_80,usm_0.66_1.00_0.01,enc_avif,quality_auto/1d775e_a6dd2f7c8ea544979c45b95b6478e224~mv2.jpg)
最初だけの中で、前の時刻を初期化します。99などあり得ない時間に初期化しましょう。
起きる時間も初期化します。これは0-23までの数字で初期化しましょう。
![](https://static.wixstatic.com/media/1d775e_15533f273cbf4b268d5f5c50ecdcc4ac~mv2.jpg/v1/fill/w_380,h_380,al_c,q_80,usm_0.66_1.00_0.01,enc_avif,quality_auto/1d775e_15533f273cbf4b268d5f5c50ecdcc4ac~mv2.jpg)
ずっとブロックの中は、右のようにプログラミングします。現在時刻と前の時刻を比較しているのは、起きる時間になったら、1回だけメロディを開始するためです。
![](https://static.wixstatic.com/media/1d775e_717616f625424f2e8ef6f949c23ebfa7~mv2.jpg/v1/fill/w_525,h_508,al_c,q_80,usm_0.66_1.00_0.01,enc_avif,quality_auto/1d775e_717616f625424f2e8ef6f949c23ebfa7~mv2.jpg)
ボタンAが押されたときブロックは右のようにプログラミングします。
![](https://static.wixstatic.com/media/1d775e_3da52b38e24a4123afef562514a3f55d~mv2.jpg/v1/fill/w_374,h_193,al_c,q_80,enc_avif,quality_auto/1d775e_3da52b38e24a4123afef562514a3f55d~mv2.jpg)
Bボタンで起きる時間を変更します。24時などあり得ない時間にならないように、工夫しましょう。
わかりやすいように起きる時間をLEDに表示しましょう
![](https://static.wixstatic.com/media/1d775e_bdb4de706f7c4b74a78c774f198d4bcd~mv2.jpg/v1/fill/w_503,h_430,al_c,q_80,enc_avif,quality_auto/1d775e_bdb4de706f7c4b74a78c774f198d4bcd~mv2.jpg)
プログラミングが完成したら、書き込んでみてWI-FIがつながる環境においてください。
設定した起きる時間になったら、メロディがなります。
bottom of page